better-supabase 0.5.1 → 0.6.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 +187 -46
- package/dist/access-sql-B0dF-SoF.js +181 -0
- package/dist/{actor-DaJjqD5R.d.ts → actor-CQTlc1Hh.d.ts} +1 -1
- package/dist/adapter-Bc1o3zyy.js +1106 -0
- package/dist/agents-CVHGd7It.d.ts +94 -0
- package/dist/ai-cache-CBWs1W0k.js +80 -0
- package/dist/ai-cache-DaDu_G5L.d.ts +64 -0
- package/dist/ai-chat-7amvXjmQ.d.ts +590 -0
- package/dist/ai-chat-B24UI962.js +743 -0
- package/dist/ai-files-CSPNswUY.js +319 -0
- package/dist/ai-sdk/agents/index.d.ts +74 -0
- package/dist/ai-sdk/agents/index.js +159 -0
- package/dist/ai-sdk/batches/index.d.ts +74 -0
- package/dist/ai-sdk/batches/index.js +180 -0
- package/dist/ai-sdk/cache/index.d.ts +38 -0
- package/dist/ai-sdk/cache/index.js +127 -0
- package/dist/ai-sdk/chat/index.d.ts +2 -0
- package/dist/ai-sdk/chat/index.js +246 -0
- package/dist/ai-sdk/embeddings/index.d.ts +3 -0
- package/dist/ai-sdk/embeddings/index.js +2 -0
- package/dist/ai-sdk/files/index.d.ts +61 -0
- package/dist/ai-sdk/files/index.js +111 -0
- package/dist/ai-sdk/index.d.ts +145 -0
- package/dist/ai-sdk/index.js +174 -0
- package/dist/ai-sdk/mcp/index.d.ts +102 -0
- package/dist/ai-sdk/mcp/index.js +362 -0
- package/dist/ai-sdk/memory/index.d.ts +67 -0
- package/dist/ai-sdk/memory/index.js +175 -0
- package/dist/ai-sdk/react/index.d.ts +2 -0
- package/dist/ai-sdk/react/index.js +3 -0
- package/dist/ai-sdk/react/server.d.ts +6 -0
- package/dist/ai-sdk/react/server.js +7 -0
- package/dist/ai-sdk/workflow/index.d.ts +249 -0
- package/dist/ai-sdk/workflow/index.js +575 -0
- package/dist/ai-sdk/workflow/react/index.d.ts +20 -0
- package/dist/ai-sdk/workflow/react/index.js +66 -0
- package/dist/ai-sdk/workflow/react/server.d.ts +10 -0
- package/dist/ai-sdk/workflow/react/server.js +12 -0
- package/dist/ai-tasks-Cd1HMFvB.d.ts +131 -0
- package/dist/announcements-CiyOs-xP.js +107 -0
- package/dist/announcements-ZRGnScWI.d.ts +72 -0
- package/dist/api-keys-rCGtKaZA.d.ts +156 -0
- package/dist/assistant-DwdpDH1q.d.ts +147 -0
- package/dist/astro/index.d.ts +86 -0
- package/dist/astro/index.js +93 -0
- package/dist/attributes-5dYul0u0.js +13 -0
- package/dist/auth-link-BjFPqwLz.d.ts +97 -0
- package/dist/auth-link-DrDX9KOT.js +114 -0
- package/dist/authorization-BFCqamMs.d.ts +172 -0
- package/dist/before-route-CnR0C0Jr.js +30 -0
- package/dist/bind-Bu_ZNa3W.d.ts +62 -0
- package/dist/bind-l4kAvYSv.js +97 -0
- package/dist/block-events-CrT8r7Fe.js +76 -0
- package/dist/block-fields-GFkxl4dP.js +49 -0
- package/dist/block-fields-SJ6fEf3o.d.ts +31 -0
- package/dist/block-helpers-CKtbFcRv.d.ts +37 -0
- package/dist/block-helpers-DWHxHsEQ.js +190 -0
- package/dist/block-hooks-BmjMyXTa.js +114 -0
- package/dist/block-hooks-plbZ0AbJ.d.ts +107 -0
- package/dist/{kit-transport-DJlHQUBU.js → block-transport-BLr-ZgLc.js} +11 -7
- package/dist/block-transport-DvaoPuZ9.d.ts +48 -0
- package/dist/blocks/agents/index.d.ts +3 -0
- package/dist/blocks/agents/index.js +123 -0
- package/dist/blocks/ai-cache/index.d.ts +3 -0
- package/dist/blocks/ai-cache/index.js +3 -0
- package/dist/blocks/ai-chat/index.d.ts +31 -0
- package/dist/blocks/ai-chat/index.js +5 -0
- package/dist/blocks/ai-chat/react/index.d.ts +77 -0
- package/dist/blocks/ai-chat/react/index.js +387 -0
- package/dist/blocks/ai-chat/react/server.d.ts +16 -0
- package/dist/blocks/ai-chat/react/server.js +14 -0
- package/dist/blocks/ai-files/index.d.ts +14 -0
- package/dist/blocks/ai-files/index.js +3 -0
- package/dist/blocks/ai-providers/index.d.ts +7 -0
- package/dist/blocks/ai-providers/index.js +211 -0
- package/dist/blocks/ai-tasks/index.d.ts +3 -0
- package/dist/blocks/ai-tasks/index.js +203 -0
- package/dist/blocks/announcements/index.d.ts +3 -0
- package/dist/blocks/announcements/index.js +3 -0
- package/dist/blocks/announcements/react/index.d.ts +31 -0
- package/dist/blocks/announcements/react/index.js +86 -0
- package/dist/blocks/announcements/react/server.d.ts +6 -0
- package/dist/blocks/announcements/react/server.js +7 -0
- package/dist/blocks/api-keys/index.d.ts +35 -0
- package/dist/blocks/api-keys/index.js +334 -0
- package/dist/blocks/attachments/index.d.ts +210 -0
- package/dist/blocks/attachments/index.js +222 -0
- package/dist/blocks/audit/index.d.ts +366 -0
- package/dist/blocks/audit/index.js +714 -0
- package/dist/blocks/billing/index.d.ts +265 -0
- package/dist/blocks/billing/index.js +400 -0
- package/dist/blocks/comments/index.d.ts +200 -0
- package/dist/blocks/comments/index.js +207 -0
- package/dist/blocks/connectors/index.d.ts +3 -0
- package/dist/blocks/connectors/index.js +164 -0
- package/dist/blocks/data-lifecycle/index.d.ts +251 -0
- package/dist/blocks/data-lifecycle/index.js +353 -0
- package/dist/blocks/entitlements/index.d.ts +14 -0
- package/dist/blocks/entitlements/index.js +25 -0
- package/dist/blocks/flags/index.d.ts +226 -0
- package/dist/blocks/flags/index.js +282 -0
- package/dist/blocks/inbox/index.d.ts +6 -0
- package/dist/blocks/inbox/index.js +499 -0
- package/dist/blocks/inbox/react/index.d.ts +2 -0
- package/dist/blocks/inbox/react/index.js +225 -0
- package/dist/blocks/inbox/react/server.d.ts +10 -0
- package/dist/blocks/inbox/react/server.js +12 -0
- package/dist/blocks/index.d.ts +65 -0
- package/dist/blocks/index.js +77 -0
- package/dist/blocks/jobs/index.d.ts +297 -0
- package/dist/blocks/jobs/index.js +1051 -0
- package/dist/blocks/knowledge/index.d.ts +3 -0
- package/dist/blocks/knowledge/index.js +3 -0
- package/dist/blocks/memory/index.d.ts +8 -0
- package/dist/blocks/memory/index.js +289 -0
- package/dist/blocks/notifications/index.d.ts +297 -0
- package/dist/blocks/notifications/index.js +425 -0
- package/dist/blocks/notifications/react/index.d.ts +44 -0
- package/dist/blocks/notifications/react/index.js +67 -0
- package/dist/blocks/notifications/react/server.d.ts +6 -0
- package/dist/blocks/notifications/react/server.js +7 -0
- package/dist/blocks/onboarding/index.d.ts +3 -0
- package/dist/blocks/onboarding/index.js +64 -0
- package/dist/blocks/onboarding/react/index.d.ts +28 -0
- package/dist/blocks/onboarding/react/index.js +78 -0
- package/dist/blocks/onboarding/react/server.d.ts +7 -0
- package/dist/blocks/onboarding/react/server.js +7 -0
- package/dist/blocks/organizations/index.d.ts +241 -0
- package/dist/blocks/organizations/index.js +400 -0
- package/dist/blocks/outbox/index.d.ts +3 -0
- package/dist/blocks/outbox/index.js +266 -0
- package/dist/blocks/profiles/index.d.ts +40 -0
- package/dist/blocks/profiles/index.js +28 -0
- package/dist/blocks/push/index.d.ts +185 -0
- package/dist/blocks/push/index.js +258 -0
- package/dist/blocks/settings/index.d.ts +89 -0
- package/dist/blocks/settings/index.js +104 -0
- package/dist/blocks/sso/index.d.ts +198 -0
- package/dist/blocks/sso/index.js +1297 -0
- package/dist/blocks/usage/index.d.ts +4 -0
- package/dist/blocks/usage/index.js +233 -0
- package/dist/blocks/waitlist/index.d.ts +117 -0
- package/dist/blocks/waitlist/index.js +132 -0
- package/dist/blocks/webhooks/index.d.ts +304 -0
- package/dist/{webhooks → blocks/webhooks}/index.js +468 -148
- package/dist/blocks/workflow-builder/index.d.ts +21 -0
- package/dist/blocks/workflow-builder/index.js +5 -0
- package/dist/blocks/workflow-builder/react/index.d.ts +47 -0
- package/dist/blocks/workflow-builder/react/index.js +119 -0
- package/dist/blocks/workflow-builder/react/server.d.ts +8 -0
- package/dist/blocks/workflow-builder/react/server.js +11 -0
- package/dist/blocks/workflows/index.d.ts +3 -0
- package/dist/blocks/workflows/index.js +3 -0
- package/dist/blocks/workflows/react/index.d.ts +47 -0
- package/dist/blocks/workflows/react/index.js +137 -0
- package/dist/blocks/workflows/react/server.d.ts +8 -0
- package/dist/blocks/workflows/react/server.js +11 -0
- package/dist/{index-SaTsEfGP.d.ts → bucket-Cl46E3jS.d.ts} +134 -91
- package/dist/{simplify-_0oUKqCd.js → build-BXIzE6Xv.js} +222 -124
- package/dist/{channel-FQW-CnGR.d.ts → channel-_2Mx1Oyu.d.ts} +2 -2
- package/dist/channels-CkgQ_X60.js +114 -0
- package/dist/chat-sdk/index.d.ts +303 -0
- package/dist/chat-sdk/index.js +733 -0
- package/dist/chat-sdk/react/index.d.ts +2 -0
- package/dist/chat-sdk/react/index.js +3 -0
- package/dist/chat-sdk/react/server.d.ts +3 -0
- package/dist/chat-sdk/react/server.js +2 -0
- package/dist/claims-DDBQT6BK.js +61 -0
- package/dist/{claims-BAf6c7is.js → claims-PqzCxaTD.js} +39 -2
- package/dist/cli/bin.js +1 -1
- package/dist/cli/{codemod-DqV7612m.js → codemod-Bl_tQpHn.js} +105 -2
- package/dist/cli/config-B9HkL8nF.js +2 -0
- package/dist/cli/config-DU7EJImt.js +49 -0
- package/dist/cli/config-NiPxAmUF.js +1077 -0
- package/dist/cli/{dist-xn4wlboc.js → dist-DRAVaE6w.js} +111 -1
- package/dist/cli/{doctor-C_A-KEAz.js → doctor-B4JOm_ox.js} +991 -317
- package/dist/cli/{env-DmKv_G4A.js → env-CJLbUVPB.js} +1 -1
- package/dist/cli/{env-jIFUADLY.js → env-qXgyMV6r.js} +2 -2
- package/dist/cli/fresh-import-BeYf9I3x.js +40 -0
- package/dist/cli/gen-BGLb_zou.js +3100 -0
- package/dist/cli/gen-DAH8FM2W.js +2 -0
- package/dist/cli/index.d.ts +44 -5
- package/dist/cli/index.js +7 -7
- package/dist/cli/{init-DMa6M7hV.js → init-BIIwclPg.js} +242 -27
- package/dist/cli/{introspect-BKlaIu_M.js → introspect-DNUTuNvb.js} +5 -5
- package/dist/cli/{io-k41_z-jT.js → io-DI1mTdSA.js} +12 -3
- package/dist/cli/{keys-ByKHnvP9.js → keys-BGCnnb-s.js} +8 -6
- package/dist/cli/{ohash-D7bG_EOb.js → ohash-BjQY1cBb.js} +1 -1
- package/dist/cli/{openapi-Cp5Fyta-.js → openapi-BlRJ18s3.js} +2 -2
- package/dist/cli/{project-B_GeXyHh.js → project-DZRaBaY7.js} +11 -6
- package/dist/cli/read-sets-CETOSFx4.js +223 -0
- package/dist/cli/{run-Bo_NLT5n.js → run-DNWxHynX.js} +33 -23
- package/dist/cli/{seed-CUlqWh-8.js → seed-DQzqT7LP.js} +8 -6
- package/dist/cli/{skills-LJJIhLFR.js → skills-QQs4q68J.js} +3 -2
- package/dist/cli/sql-D0GUtUPp.js +536 -0
- package/dist/cli/{config-CPVpXP5I.js → supabase-toml-B-bIukQF.js} +72 -942
- package/dist/cli/typegen-version-DeFbtzYI.js +8 -0
- package/dist/cli/{version-BCtlgDQx.js → version-hr88OZG0.js} +1 -1
- package/dist/client/index.d.ts +3 -2
- package/dist/client/index.js +11 -71
- package/dist/client/native/index.d.ts +228 -0
- package/dist/client/native/index.js +361 -0
- package/dist/client-CI0Z2zWX.js +277 -0
- package/dist/cloud-event-BnmD5fb9.js +46 -0
- package/dist/cloud-event-C1JCc1bH.d.ts +50 -0
- package/dist/{compiler-BXH_aZ7N.d.ts → compiler-DY_wkj4R.d.ts} +2 -2
- package/dist/compose-BIBNgAnq.js +53 -0
- package/dist/composite-Bt1YK3Ke.d.ts +146 -0
- package/dist/composite-DhE66P5u.js +130 -0
- package/dist/config/index.d.ts +6 -4
- package/dist/config/index.js +5 -5
- package/dist/{config-Bv7gvfzC.d.ts → config-D44Y7PAv.d.ts} +406 -214
- package/dist/{config-DreERlKo.js → config-Dn7F5k9A.js} +62 -14
- package/dist/connector-Dv8kK0MO.d.ts +107 -0
- package/dist/connectors-hkLCwyEz.d.ts +120 -0
- package/dist/context-BCrWe7ow.d.ts +237 -0
- package/dist/credentials/index.d.ts +31 -0
- package/dist/credentials/index.js +168 -0
- package/dist/cron-DVPUg5k3.js +145 -0
- package/dist/csv-CPAzEmB6.js +25 -0
- package/dist/db-exception-CnWcYPxL.js +15 -0
- package/dist/{define-cNKzqwL_.js → define-B-TVjC25.js} +784 -227
- package/dist/{define-Bp_BZa5h.d.ts → define-CJJkkr1-.d.ts} +353 -61
- package/dist/edge/index.d.ts +69 -11
- package/dist/edge/index.js +191 -75
- package/dist/elysia/index.d.ts +59 -0
- package/dist/elysia/index.js +62 -0
- package/dist/embeddings-4ZvFzjsU.js +127 -0
- package/dist/embeddings-C9KGQnXt.d.ts +68 -0
- package/dist/{refresh-CFPX0Qft.d.ts → ended-jLfvw8h-.d.ts} +20 -2
- package/dist/{entitlements-BiJZ4t49.d.ts → entitlements-DHrY2UDZ.d.ts} +16 -7
- package/dist/entitlements-DRl6ZJUm.js +24 -0
- package/dist/envelope-DqnYGRw7.js +47 -0
- package/dist/{errors-DtwXa6b8.js → errors-B11Duf73.js} +82 -13
- package/dist/errors-DLjJHPLK.js +44 -0
- package/dist/escape-like-DHfx6jRr.js +7 -0
- package/dist/escape-like-ImTK0ps_.d.ts +15 -0
- package/dist/eve/index.d.ts +220 -0
- package/dist/eve/index.js +504 -0
- package/dist/eve-gT2Fpjut.d.ts +151 -0
- package/dist/events/index.d.ts +4 -3
- package/dist/events/index.js +9 -50
- package/dist/events-DWDhx77e.d.ts +549 -0
- package/dist/executor-Bq28caBo.js +718 -0
- package/dist/executor-C-R4pucm.js +83 -0
- package/dist/executor-CaWigTyR.d.ts +148 -0
- package/dist/executor-D14tGopJ.d.ts +36 -0
- package/dist/{executor-Cghdstwu.d.ts → executor-DbvExCFC.d.ts} +7 -1
- package/dist/{sql-Coh6n4cC.js → executor-De1Of3m3.js} +210 -11
- package/dist/executor-DvsBbNBS.d.ts +261 -0
- package/dist/expo/index.d.ts +79 -0
- package/dist/expo/index.js +129 -0
- package/dist/expo-sqlite/index.d.ts +58 -0
- package/dist/expo-sqlite/index.js +104 -0
- package/dist/field-errors-BFOa7WhB.d.ts +99 -0
- package/dist/field-errors-VF1yb8yI.js +13 -0
- package/dist/framework-CONDyPYx.js +51 -0
- package/dist/framework-DuVb4Xa8.d.ts +25 -0
- package/dist/gateway-C1ssRHnf.d.ts +130 -0
- package/dist/graph-BGyLLFLX.js +265 -0
- package/dist/h3/index.d.ts +59 -0
- package/dist/h3/index.js +55 -0
- package/dist/h3/v1/index.d.ts +63 -0
- package/dist/h3/v1/index.js +49 -0
- package/dist/history-BZih6SFP.js +64 -0
- package/dist/hono/index.d.ts +56 -7
- package/dist/hono/index.js +97 -45
- package/dist/{react-C_s7kiNz.js → hooks-1BTCJsiw.js} +104 -133
- package/dist/http-Cv4T29xh.js +40 -0
- package/dist/http-DdYadv-o.js +126 -0
- package/dist/image-url-pIVlO6R1.js +41 -0
- package/dist/{impersonation-BgSHAYLf.js → impersonation-DcqaTBHx.js} +21 -6
- package/dist/inbox-i7E1ppo6.d.ts +384 -0
- package/dist/index-ACiNPN4Z.d.ts +74 -0
- package/dist/{index-DgILJRXj.d.ts → index-Bepi-Hgg.d.ts} +91 -28
- package/dist/index-BkWT_uBO.d.ts +51 -0
- package/dist/index-BpFYMsi0.d.ts +53 -0
- package/dist/{index-C7f8cOBM.d.ts → index-Bxih3l0u.d.ts} +2 -2
- package/dist/index-CaxrMD1A.d.ts +1 -0
- package/dist/index-ClmjK_o-.d.ts +55 -0
- package/dist/index-CtuakVRc.d.ts +267 -0
- package/dist/index-D48jVS-N.d.ts +246 -0
- package/dist/index-DDrYaUcq.d.ts +138 -0
- package/dist/index-DQh4VCc9.d.ts +98 -0
- package/dist/{live-D9W2M5aO.d.ts → index-DunNRdnT.d.ts} +136 -38
- package/dist/index.d.ts +65 -18
- package/dist/index.js +42 -14
- package/dist/invalidate-BBqhpxyB.d.ts +19 -0
- package/dist/json-CEnpTHlZ.js +16 -0
- package/dist/json-schema-CvER4kgT.js +502 -0
- package/dist/keys-4MnkWTTh.js +35 -0
- package/dist/kit-B5tid-q5.d.ts +60 -0
- package/dist/kit-Fm-Fv7q5.js +78 -0
- package/dist/knowledge-BXBbT0Tr.d.ts +176 -0
- package/dist/knowledge-CDmiMLew.js +255 -0
- package/dist/lint/index.d.ts +1 -1
- package/dist/lint/index.js +37 -0
- package/dist/list/index.d.ts +3 -2
- package/dist/list/index.js +1 -444
- package/dist/{index-fag8VJZ2.d.ts → list-query-BRt-zDF7.d.ts} +20 -12
- package/dist/list-query-gl808ac1.js +459 -0
- package/dist/{live-CdJBOc4f.js → live-CTAZQkwl.js} +99 -14
- package/dist/logger-DWVYUmwi.d.ts +18 -0
- package/dist/mcp/index.d.ts +38 -11
- package/dist/mcp/index.js +82 -46
- package/dist/mcp/sdk/index.d.ts +105 -0
- package/dist/mcp/sdk/index.js +126 -0
- package/dist/message-CaKlqdsX.js +219 -0
- package/dist/message-CfDoR0Y6.d.ts +94 -0
- package/dist/messages-B9-5887d.js +715 -0
- package/dist/messages-DYP0sUTe.d.ts +59 -0
- package/dist/mfa-Daak8ukG.d.ts +54 -0
- package/dist/modules-DpPwzC7E.d.ts +192 -0
- package/dist/modules-dxrVK3ID.js +228 -0
- package/dist/nestjs/index.d.ts +68 -0
- package/dist/nestjs/index.js +164 -0
- package/dist/next/client/index.d.ts +35 -0
- package/dist/next/client/index.js +36 -0
- package/dist/next/image/index.js +3 -24
- package/dist/next/index.d.ts +150 -51
- package/dist/next/index.js +261 -107
- package/dist/node/index.d.ts +4 -0
- package/dist/node/index.js +210 -0
- package/dist/node-headers-AO06VhqH.d.ts +24 -0
- package/dist/node-headers-C71zNQHe.js +55 -0
- package/dist/nuxt/index.d.ts +60 -0
- package/dist/nuxt/index.js +64 -0
- package/dist/onboarding-BZGHYJks.d.ts +62 -0
- package/dist/openapi/index.d.ts +1 -1
- package/dist/openapi/index.js +3 -3
- package/dist/orpc/index.d.ts +70 -11
- package/dist/orpc/index.js +73 -24
- package/dist/otel/index.d.ts +7 -7
- package/dist/otel/index.js +87 -57
- package/dist/outbox-Cq7pPYvl.d.ts +161 -0
- package/dist/{plugin-o144f322.d.ts → plugin-FGY8UhYm.d.ts} +30 -10
- package/dist/plugin-tfXW1-qO.js +45 -0
- package/dist/plugins/actor/index.d.ts +2 -2
- package/dist/plugins/actor/index.js +3 -3
- package/dist/plugins/rules/index.d.ts +11 -4
- package/dist/plugins/rules/index.js +40 -13
- package/dist/plugins/soft-delete/index.d.ts +5 -4
- package/dist/plugins/soft-delete/index.js +10 -5
- package/dist/plugins/tenant/index.d.ts +2 -2
- package/dist/plugins/tenant/index.js +18 -11
- package/dist/plugins/timestamps/index.d.ts +5 -3
- package/dist/plugins/timestamps/index.js +6 -4
- package/dist/plugins/validation/index.d.ts +2 -2
- package/dist/plugins/validation/index.js +10 -6
- package/dist/{pool-C9voM4Kw.d.ts → pool-CAu2nLrL.d.ts} +2 -2
- package/dist/postgres/index.d.ts +4 -4
- package/dist/postgres/index.js +1 -2
- package/dist/{postgrest-CruYKAvV.d.ts → postgrest-BLVdEnfe.d.ts} +13 -3
- package/dist/powersync/index.d.ts +43 -0
- package/dist/powersync/index.js +199 -0
- package/dist/powersync/react/index.d.ts +87 -0
- package/dist/powersync/react/index.js +108 -0
- package/dist/{problem-BW1KhzSG.js → problem-BreOl8b8.js} +14 -3
- package/dist/{problem-Blxe8S31.d.ts → problem-DD8LZFjc.d.ts} +21 -3
- package/dist/provider-BH5UWZJ6.d.ts +113 -0
- package/dist/provider-Di3sRutW.js +57 -0
- package/dist/query/index.d.ts +4 -2
- package/dist/query/index.js +4 -3
- package/dist/{query-CCbo44lG.js → query-BQ-NaZon.js} +141 -24
- package/dist/{queue-BYUCjr59.d.ts → queue-CLJurhdy.d.ts} +258 -83
- package/dist/react/index.d.ts +11 -7
- package/dist/react/index.js +7 -3
- package/dist/react/native/index.d.ts +116 -0
- package/dist/react/native/index.js +130 -0
- package/dist/react/server.d.ts +28 -10
- package/dist/react/server.js +22 -5
- package/dist/react/session.d.ts +2 -2
- package/dist/react-4ZqkP8da.js +79 -0
- package/dist/react-F80mF4-t.js +409 -0
- package/dist/react-router/index.d.ts +83 -0
- package/dist/react-router/index.js +89 -0
- package/dist/react-topic-seAWjL3_.js +38 -0
- package/dist/{read-set-DQFt1N_Y.js → read-set-DuKWC9Mj.js} +67 -25
- package/dist/realtime/index.d.ts +4 -5
- package/dist/realtime/index.js +144 -82
- package/dist/refusal-CeJWxmkH.js +61 -0
- package/dist/refusal-D1rgbzNq.d.ts +15 -0
- package/dist/replicas-CwrYp5Zj.js +94 -0
- package/dist/{view-Bn6HNKUe.js → resolve-D_IcnvFd.js} +248 -240
- package/dist/{impersonation-BmePsuxz.d.ts → resolve-KW8nCeL6.d.ts} +29 -69
- package/dist/{resource-mqfJW4YF.js → resource-BsvzCMlX.js} +4 -4
- package/dist/{resource-DNRFP7KR.d.ts → resource-D6Uc7Sk7.d.ts} +5 -5
- package/dist/respond-BUgsXNgk.js +91 -0
- package/dist/respond-DoBijysA.d.ts +93 -0
- package/dist/result-D7y2fT87.d.ts +282 -0
- package/dist/{result-BKiliPY7.js → result-DzUbqgdW.js} +27 -2
- package/dist/run-state-CPo-1X2B.d.ts +12 -0
- package/dist/run-state-CgBKzYMW.js +13 -0
- package/dist/search-CUWCRYKL.js +9 -0
- package/dist/server/index.d.ts +143 -22
- package/dist/server/index.js +46 -14
- package/dist/{respond-BR1fJWOB.d.ts → server-CeVeeXwz.d.ts} +224 -85
- package/dist/session-ChiXDZdZ.d.ts +72 -0
- package/dist/shared-CBxosKK3.js +75 -0
- package/dist/{shared-D1dRUrAg.js → shared-CxWmcyqB.js} +2 -1
- package/dist/shared-DDSjEGDR.d.ts +11 -0
- package/dist/sign-in-BCV5S2WZ.d.ts +49 -0
- package/dist/sign-in-Cb1mwv6X.js +86 -0
- package/dist/{signers-Cc6r98SW.d.ts → signers-4y62_VIi.d.ts} +13 -9
- package/dist/simplify-DDO0j0LI.js +83 -0
- package/dist/solid/index.d.ts +131 -0
- package/dist/solid/index.js +344 -0
- package/dist/solid-start/index.d.ts +75 -0
- package/dist/solid-start/index.js +58 -0
- package/dist/{spec-pins-C3oc-Tdp.js → spec-pins--j6mTok4.js} +8 -1
- package/dist/{spec-pins-CqorWDnO.d.ts → spec-pins-C89s6DyW.d.ts} +7 -0
- package/dist/sql/index.d.ts +313 -212
- package/dist/sql/index.js +34872 -6579
- package/dist/ssr/index.d.ts +6 -5
- package/dist/ssr/index.js +3 -3
- package/dist/{standard-D7r6dMUu.js → standard-BK0cqJ7y.js} +4 -3
- package/dist/{standard-J4YgMOLm.d.ts → standard-CYsm7xpT.d.ts} +1 -1
- package/dist/stats-D_AD9GGu.js +1123 -0
- package/dist/storage/index.d.ts +5 -5
- package/dist/storage/index.js +1027 -368
- package/dist/store-BdH5ruDx.js +66 -0
- package/dist/store-CGjgWu5n.d.ts +68 -0
- package/dist/streams/index.d.ts +76 -0
- package/dist/streams/index.js +77 -0
- package/dist/streams/redis/index.d.ts +52 -0
- package/dist/streams/redis/index.js +185 -0
- package/dist/stripe-BMj5LtsT.js +38 -0
- package/dist/stripe-D04h-QBT.d.ts +136 -0
- package/dist/{support-wHnK6zp-.js → support-BivNqSpK.js} +32 -11
- package/dist/{support-view-B8SlToQX.d.ts → support-view-33Oi07TT.d.ts} +1 -1
- package/dist/svelte/index.d.ts +114 -0
- package/dist/svelte/index.js +344 -0
- package/dist/sveltekit/index.d.ts +116 -0
- package/dist/sveltekit/index.js +106 -0
- package/dist/tags-B99_U9Pp.js +39 -0
- package/dist/tags-Cx-LnIQP.d.ts +30 -0
- package/dist/tanstack-db/index.d.ts +71 -0
- package/dist/tanstack-db/index.js +72 -0
- package/dist/tanstack-start/index.d.ts +75 -0
- package/dist/tanstack-start/index.js +95 -0
- package/dist/tee-CoEppCER.js +101 -0
- package/dist/{template-TxrGI5jR.js → template--jDkl3UP.js} +34 -13
- package/dist/template-CwO38Do8.d.ts +6 -0
- package/dist/temporal-BJGitm-h.js +79 -0
- package/dist/{temporal-required-CAt4Dc9Z.js → temporal-required-BVvW7SYJ.js} +3 -2
- package/dist/tenant-I1TEZ_BX.js +27 -0
- package/dist/tenant-icPeuUBN.d.ts +17 -0
- package/dist/testing/index.d.ts +315 -41
- package/dist/testing/index.js +1046 -79
- package/dist/timing-CyTQPubY.js +92 -0
- package/dist/ttl-Hr34gRu8.js +12 -0
- package/dist/{types-Dnf_wRDz.d.ts → types-6BdhkmZe.d.ts} +111 -45
- package/dist/types-BI-0Sl2v.d.ts +359 -0
- package/dist/types-C05bxW-W.d.ts +220 -0
- package/dist/types-DGs5L0VN.d.ts +192 -0
- package/dist/types-TaiEeBGA.d.ts +156 -0
- package/dist/usage-CrvrL2vw.d.ts +177 -0
- package/dist/user-change-XzvgafU4.js +130 -0
- package/dist/vault-CSO7ss5C.d.ts +50 -0
- package/dist/vercel-connect/index.d.ts +47 -0
- package/dist/vercel-connect/index.js +119 -0
- package/dist/{verify-Ce49ETPz.js → verify-DL41hbvY.js} +85 -13
- package/dist/verify-DPuWngD4.d.ts +172 -0
- package/dist/{version-DOYTYwHP.js → version-Bvv6aLjZ.js} +1 -1
- package/dist/view-BeFcRV6G.js +99 -0
- package/dist/{view-CbgObAeb.d.ts → view-DbxLNu8L.d.ts} +22 -5
- package/dist/vue/index.d.ts +141 -0
- package/dist/vue/index.js +362 -0
- package/dist/watch-DI34G86j.d.ts +60 -0
- package/dist/watch-Xuxrvxq-.js +122 -0
- package/dist/{wire-D2dT86vi.js → wire-DtZQ4sdE.js} +15 -5
- package/dist/workflow-builder-DJ1oHn8g.js +398 -0
- package/dist/workflow-sdk/builder/index.d.ts +85 -0
- package/dist/workflow-sdk/builder/index.js +250 -0
- package/dist/workflow-sdk/index.d.ts +14 -0
- package/dist/workflow-sdk/index.js +3 -0
- package/dist/workflow-sdk/world/index.d.ts +107 -0
- package/dist/workflow-sdk/world/index.js +702 -0
- package/dist/workflow-sdk-B3yLD6Br.d.ts +98 -0
- package/dist/workflow-sdk-C2WJ_G2O.js +173 -0
- package/dist/workflow-sdk-world-D-prir6O.js +1397 -0
- package/dist/workflows-B0j9WKPu.d.ts +185 -0
- package/dist/workflows-wu1WWBn7.js +216 -0
- package/package.json +461 -20
- package/schemas/ai-message-v1.json +258 -0
- package/schemas/config-v1.json +1074 -140
- package/schemas/doctor-report-v1.json +20 -1
- package/schemas/snapshot-v2.json +8 -0
- package/skills/better-supabase/SKILL.md +41 -12
- package/skills/better-supabase/references/frontend.md +96 -0
- package/skills/better-supabase/references/plugins.md +10 -6
- package/skills/better-supabase/references/troubleshooting.md +2 -1
- package/skills/better-supabase-api/SKILL.md +76 -22
- package/skills/better-supabase-api/references/adapters.md +207 -0
- package/skills/better-supabase-api/references/ai.md +125 -0
- package/skills/better-supabase-api/references/expo.md +65 -0
- package/skills/better-supabase-api/references/powersync.md +35 -0
- package/skills/better-supabase-api/references/streams-credentials.md +105 -0
- package/skills/better-supabase-auth/SKILL.md +47 -11
- package/skills/better-supabase-auth/references/authorization-providers.md +51 -0
- package/skills/better-supabase-testing/SKILL.md +3 -1
- package/dist/cli/config-dtoekM0v.js +0 -2
- package/dist/cli/gen-CIdSQZad.js +0 -2
- package/dist/cli/gen-CjElD1Vw.js +0 -2241
- package/dist/cli/read-sets-VQcPgxU9.js +0 -436
- package/dist/cli/sql-CVx-1O8G.js +0 -373
- package/dist/entitlements-CTEBm7IB.js +0 -20
- package/dist/events-aIO7vsIk.d.ts +0 -230
- package/dist/executor-BunPOO-k.d.ts +0 -402
- package/dist/executor-XycESQPH.js +0 -94
- package/dist/index-CWMDdEr4.d.ts +0 -50
- package/dist/index-DOESKG27.d.ts +0 -100
- package/dist/index-DmXSxbLi.d.ts +0 -62
- package/dist/index-Dp2VDwog.d.ts +0 -161
- package/dist/jobs/index.d.ts +0 -226
- package/dist/jobs/index.js +0 -1007
- package/dist/json-schema-m1fiwKgN.js +0 -208
- package/dist/kit-events-CTFDfSwb.js +0 -60
- package/dist/kit-transport-B82k1djG.d.ts +0 -33
- package/dist/kits-CGLLrNPd.js +0 -157
- package/dist/mfa-Cu96oJdw.d.ts +0 -30
- package/dist/notifications/index.d.ts +0 -162
- package/dist/notifications/index.js +0 -264
- package/dist/orgs/index.d.ts +0 -132
- package/dist/orgs/index.js +0 -245
- package/dist/permdock-sql-C2Inc6Xc.d.ts +0 -29
- package/dist/permdock-sql-DgOfeixi.js +0 -51
- package/dist/plugin-DwARMuQp.js +0 -59
- package/dist/server-B1mZ7CgQ.js +0 -660
- package/dist/stats-Bqob3WqT.js +0 -592
- package/dist/support-CEPwlw2G.d.ts +0 -89
- package/dist/template-mbvlysOo.d.ts +0 -6
- package/dist/temporal-CVlIV2DZ.js +0 -40
- package/dist/user-change-CHFEUro1.js +0 -49
- package/dist/webhooks/index.d.ts +0 -285
- package/skills/better-supabase-auth/references/permdock.md +0 -122
|
@@ -0,0 +1,246 @@
|
|
|
1
|
+
import { b as DbError, f as Result, t as AsyncResult } from "./result-D7y2fT87.js";
|
|
2
|
+
import { n as StoragePath } from "./path-Cv__-OTj.js";
|
|
3
|
+
import { a as BucketConnectOptions, h as StorageClient, i as BucketConfig, n as Bucket, r as BucketClient, s as BucketPolicy } from "./bucket-Cl46E3jS.js";
|
|
4
|
+
import { SupabaseClient } from "@supabase/supabase-js";
|
|
5
|
+
//#region src/storage/errors.d.ts
|
|
6
|
+
/** Maps a Storage error (`StorageApiError`, fetch failures) to a `DbError`. */
|
|
7
|
+
declare function fromStorageError(raw: unknown, table?: string): DbError;
|
|
8
|
+
//#endregion
|
|
9
|
+
//#region src/storage/image-url.d.ts
|
|
10
|
+
interface StorageImageOptions {
|
|
11
|
+
/** Project URL, e.g. `import.meta.env.PUBLIC_SUPABASE_URL`. */
|
|
12
|
+
readonly url: string;
|
|
13
|
+
/** Resize mode for the transform. Defaults to Storage's own (`cover`). */
|
|
14
|
+
readonly resize?: "cover" | "contain" | "fill";
|
|
15
|
+
}
|
|
16
|
+
/** The size and quality to render an image at. */
|
|
17
|
+
interface StorageImageSize {
|
|
18
|
+
readonly width: number;
|
|
19
|
+
readonly height?: number | undefined;
|
|
20
|
+
readonly quality?: number | undefined;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Turns public Storage object URLs into Supabase image transformation URLs
|
|
24
|
+
* (`/render/image/public`) at a given size. Any other URL (local files,
|
|
25
|
+
* other hosts, signed URLs) comes back as `undefined`: a signed URL's token
|
|
26
|
+
* covers the transform it was signed with, so sign it with `renderUrl()`.
|
|
27
|
+
*
|
|
28
|
+
* ```ts
|
|
29
|
+
* const imageUrl = storageImageUrl({ url: SUPABASE_URL })
|
|
30
|
+
* imageUrl(avatar, { width: 96 }) ?? avatar
|
|
31
|
+
* ```
|
|
32
|
+
*/
|
|
33
|
+
declare function storageImageUrl(options: StorageImageOptions): (src: string, size: StorageImageSize) => string | undefined;
|
|
34
|
+
//#endregion
|
|
35
|
+
//#region src/storage/registry.d.ts
|
|
36
|
+
/** Any bucket definition from `defineBucket` or a preset. */
|
|
37
|
+
type AnyBucket = Bucket<string>;
|
|
38
|
+
type BucketMap = Readonly<Record<string, AnyBucket>>;
|
|
39
|
+
/** The bucket ids of a registry's buckets. */
|
|
40
|
+
type BucketIdOf<B extends BucketMap> = B[keyof B]["id"];
|
|
41
|
+
/** The bucket of a registry whose id is `I`. */
|
|
42
|
+
type BucketWithId<B extends BucketMap, I extends string> = Extract<B[keyof B], {
|
|
43
|
+
readonly id: I;
|
|
44
|
+
}>;
|
|
45
|
+
/** A stored object as rows keep it: the bucket id and the object path. */
|
|
46
|
+
interface StoredRef {
|
|
47
|
+
/** The bucket id, e.g. a `bucket_id` column. */
|
|
48
|
+
readonly bucket: string;
|
|
49
|
+
readonly path: string;
|
|
50
|
+
}
|
|
51
|
+
/** A stored reference whose bucket is registered and whose path matches one of its templates. */
|
|
52
|
+
interface ResolvedRef<B extends BucketMap> {
|
|
53
|
+
readonly bucket: B[keyof B];
|
|
54
|
+
readonly path: StoragePath<BucketIdOf<B>>;
|
|
55
|
+
}
|
|
56
|
+
/** A resolved reference with a client of its bucket. */
|
|
57
|
+
interface ConnectedRef<B extends BucketMap> extends ResolvedRef<B> {
|
|
58
|
+
readonly storage: BucketClient<string, BucketIdOf<B>>;
|
|
59
|
+
}
|
|
60
|
+
interface Buckets<B extends BucketMap> {
|
|
61
|
+
/** The bucket definitions, by the names given. */
|
|
62
|
+
readonly buckets: B;
|
|
63
|
+
/** Every registered bucket id, in the order given. */
|
|
64
|
+
readonly ids: readonly BucketIdOf<B>[];
|
|
65
|
+
/** Whether `id` names a registered bucket. */
|
|
66
|
+
has(id: string): id is BucketIdOf<B>;
|
|
67
|
+
/** The bucket with this id, or `invalid_input` for an id no bucket has. */
|
|
68
|
+
byId<I extends BucketIdOf<B>>(id: I): Result<BucketWithId<B, I>>;
|
|
69
|
+
byId(id: string): Result<B[keyof B]>;
|
|
70
|
+
/**
|
|
71
|
+
* Checks a stored `{ bucket, path }`: the bucket must be registered and the
|
|
72
|
+
* path must match one of its templates. Either failure is `invalid_input`.
|
|
73
|
+
*/
|
|
74
|
+
resolve(ref: StoredRef): Result<ResolvedRef<B>>;
|
|
75
|
+
/**
|
|
76
|
+
* `resolve`, then `connect` the bucket and check the path with the
|
|
77
|
+
* connected client, so a bucket with `tenant` also refuses another
|
|
78
|
+
* tenant's path (`forbidden`). No request is made.
|
|
79
|
+
*/
|
|
80
|
+
connectStored(client: StorageClient, ref: StoredRef, options?: BucketConnectOptions): Result<ConnectedRef<B>>;
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* A registry of bucket definitions by id, for rows that store a bucket id
|
|
84
|
+
* next to an object path (files, attachments, sources). An id no bucket
|
|
85
|
+
* has, and a path outside the bucket's templates, are errors, never a
|
|
86
|
+
* fallback bucket.
|
|
87
|
+
*
|
|
88
|
+
* ```ts
|
|
89
|
+
* export const buckets = defineBuckets({ files, attachments, logos });
|
|
90
|
+
*
|
|
91
|
+
* const ref = buckets.connectStored(supabase, {
|
|
92
|
+
* bucket: row.bucketId,
|
|
93
|
+
* path: row.path,
|
|
94
|
+
* }, { context: db.$context });
|
|
95
|
+
* if (ref.ok) await ref.data.storage.signedUrl(ref.data.path);
|
|
96
|
+
* ```
|
|
97
|
+
*/
|
|
98
|
+
declare function defineBuckets<const B extends BucketMap>(buckets: B): Buckets<B>;
|
|
99
|
+
//#endregion
|
|
100
|
+
//#region src/storage/presets.d.ts
|
|
101
|
+
/** The image types browsers display everywhere. */
|
|
102
|
+
declare const IMAGE_TYPES: readonly string[];
|
|
103
|
+
interface ImageBucketOptions<P extends string, Id extends string> {
|
|
104
|
+
readonly id?: Id;
|
|
105
|
+
/** The path template; keep the preset's placeholders the policy relies on. */
|
|
106
|
+
readonly path?: P | readonly [P, ...P[]];
|
|
107
|
+
/** Defaults to `true`: images load from their public URL without signing. */
|
|
108
|
+
readonly public?: boolean;
|
|
109
|
+
readonly fileSizeLimit?: string | number;
|
|
110
|
+
readonly allowedMimeTypes?: readonly string[];
|
|
111
|
+
/** Replaces the preset's policy. */
|
|
112
|
+
readonly policy?: BucketPolicy;
|
|
113
|
+
}
|
|
114
|
+
type AvatarBucketOptions<P extends string, Id extends string> = ImageBucketOptions<P, Id>;
|
|
115
|
+
interface OrganizationLogoBucketOptions<P extends string, Id extends string> extends ImageBucketOptions<P, Id> {
|
|
116
|
+
/**
|
|
117
|
+
* The permission that may upload, replace and delete a logo, checked
|
|
118
|
+
* through the access contract. Defaults to `organization.update`, the
|
|
119
|
+
* `organizations` module's update permission.
|
|
120
|
+
*/
|
|
121
|
+
readonly permission?: string;
|
|
122
|
+
/**
|
|
123
|
+
* The tenant segment connected clients are held to. `false` lets one
|
|
124
|
+
* client upload for any organization the policy allows. Defaults to
|
|
125
|
+
* `{ param: 'organizationId' }`.
|
|
126
|
+
*/
|
|
127
|
+
readonly tenant?: BucketConfig["tenant"] | false;
|
|
128
|
+
}
|
|
129
|
+
declare const AVATAR_PATH = "{userId}/avatar-{version}.{ext}";
|
|
130
|
+
declare const LOGO_PATH = "{organizationId}/logo-{version}.{ext}";
|
|
131
|
+
/**
|
|
132
|
+
* A bucket for profile pictures: `{userId}/avatar-{version}.{ext}`, public,
|
|
133
|
+
* 2 MiB of images, written only by their owner (the `owner` policy).
|
|
134
|
+
*/
|
|
135
|
+
declare function avatarBucket<const P extends string = typeof AVATAR_PATH, const Id extends string = "avatars">(options?: AvatarBucketOptions<P, Id>): Bucket<P, Id>;
|
|
136
|
+
/**
|
|
137
|
+
* A bucket for organization logos: `{organizationId}/logo-{version}.{ext}`, public,
|
|
138
|
+
* 2 MiB of images, written by members with the update permission through
|
|
139
|
+
* the access contract (`tenant_ids_with`), so it follows the app's roles.
|
|
140
|
+
*/
|
|
141
|
+
declare function organizationLogoBucket<const P extends string = typeof LOGO_PATH, const Id extends string = "organization-logos">(options?: OrganizationLogoBucketOptions<P, Id>): Bucket<P, Id>;
|
|
142
|
+
//#endregion
|
|
143
|
+
//#region src/storage/analytics-bucket.d.ts
|
|
144
|
+
/** The Iceberg REST catalog of an analytics bucket, from `storage.analytics.from(id)`. */
|
|
145
|
+
type AnalyticsCatalog = ReturnType<SupabaseClient["storage"]["analytics"]["from"]>;
|
|
146
|
+
interface AnalyticsBucketClient {
|
|
147
|
+
/** Creates the bucket when it is missing. Needs the secret key. */
|
|
148
|
+
apply(): AsyncResult<{
|
|
149
|
+
readonly created: boolean;
|
|
150
|
+
}>;
|
|
151
|
+
/** The bucket's Iceberg catalog: namespaces and tables, each call returning `{ data, error }`. */
|
|
152
|
+
catalog(): AnalyticsCatalog;
|
|
153
|
+
}
|
|
154
|
+
interface AnalyticsBucket<Id extends string> {
|
|
155
|
+
readonly id: Id;
|
|
156
|
+
connect(client: StorageClient): AnalyticsBucketClient;
|
|
157
|
+
}
|
|
158
|
+
/**
|
|
159
|
+
* A Storage analytics bucket: Apache Iceberg tables that query engines read
|
|
160
|
+
* through the Iceberg REST catalog.
|
|
161
|
+
*
|
|
162
|
+
* ```ts
|
|
163
|
+
* export const events = defineAnalyticsBucket({ id: "events" });
|
|
164
|
+
* await events.connect(admin).apply().orThrow();
|
|
165
|
+
* ```
|
|
166
|
+
*/
|
|
167
|
+
declare function defineAnalyticsBucket<const Id extends string>(config: {
|
|
168
|
+
readonly id: Id;
|
|
169
|
+
}): AnalyticsBucket<Id>;
|
|
170
|
+
//#endregion
|
|
171
|
+
//#region src/storage/vector-bucket.d.ts
|
|
172
|
+
type VectorDistance = "cosine" | "euclidean" | "dotproduct";
|
|
173
|
+
interface VectorIndexConfig {
|
|
174
|
+
/** Number of values in every vector, e.g. 1536 for `text-embedding-3-small`. */
|
|
175
|
+
readonly dimension: number;
|
|
176
|
+
/** Defaults to `cosine`. */
|
|
177
|
+
readonly distanceMetric?: VectorDistance;
|
|
178
|
+
/** Metadata keys stored with each vector but not usable in `filter`. */
|
|
179
|
+
readonly nonFilterableMetadataKeys?: readonly string[];
|
|
180
|
+
}
|
|
181
|
+
interface VectorBucketConfig<Id extends string, I extends Readonly<Record<string, VectorIndexConfig>>> {
|
|
182
|
+
readonly id: Id;
|
|
183
|
+
readonly indexes: I;
|
|
184
|
+
}
|
|
185
|
+
type VectorMetadata = Readonly<Record<string, unknown>>;
|
|
186
|
+
interface VectorRecord<M extends VectorMetadata = VectorMetadata> {
|
|
187
|
+
readonly key: string;
|
|
188
|
+
readonly vector: readonly number[];
|
|
189
|
+
readonly metadata?: M;
|
|
190
|
+
}
|
|
191
|
+
interface VectorHit<M extends VectorMetadata = VectorMetadata> {
|
|
192
|
+
readonly key: string;
|
|
193
|
+
/** Set by `query()`: smaller is closer for every metric. */
|
|
194
|
+
readonly distance?: number;
|
|
195
|
+
readonly metadata?: M;
|
|
196
|
+
readonly vector?: readonly number[];
|
|
197
|
+
}
|
|
198
|
+
interface VectorQueryOptions {
|
|
199
|
+
/** Number of matches, defaults to 10. */
|
|
200
|
+
readonly topK?: number;
|
|
201
|
+
/** A metadata filter, e.g. `{ organizationId: "o1" }` or `{ year: { $gte: 2024 } }`. */
|
|
202
|
+
readonly filter?: VectorMetadata;
|
|
203
|
+
/** Return each match's metadata. Defaults to `true`. */
|
|
204
|
+
readonly metadata?: boolean;
|
|
205
|
+
}
|
|
206
|
+
interface VectorIndexClient<M extends VectorMetadata = VectorMetadata> {
|
|
207
|
+
readonly name: string;
|
|
208
|
+
readonly dimension: number;
|
|
209
|
+
/** Inserts or replaces vectors by key, in batches of 500. */
|
|
210
|
+
put(records: readonly VectorRecord<M>[]): AsyncResult<number>;
|
|
211
|
+
/** The nearest vectors, closest first. */
|
|
212
|
+
query(vector: readonly number[], options?: VectorQueryOptions): AsyncResult<readonly VectorHit<M>[]>;
|
|
213
|
+
/** Vectors by key; missing keys are left out. */
|
|
214
|
+
get(keys: readonly string[], options?: {
|
|
215
|
+
readonly vector?: boolean;
|
|
216
|
+
}): AsyncResult<readonly VectorHit<M>[]>;
|
|
217
|
+
remove(keys: readonly string[]): AsyncResult<readonly string[]>;
|
|
218
|
+
}
|
|
219
|
+
interface VectorBucketClient<I extends string> {
|
|
220
|
+
/** Creates the bucket and any missing index. An index with another dimension or metric is a `conflict`. */
|
|
221
|
+
apply(): AsyncResult<{
|
|
222
|
+
readonly created: readonly string[];
|
|
223
|
+
}>;
|
|
224
|
+
index<M extends VectorMetadata = VectorMetadata>(name: I): VectorIndexClient<M>;
|
|
225
|
+
}
|
|
226
|
+
interface VectorBucket<Id extends string, I extends Readonly<Record<string, VectorIndexConfig>>> {
|
|
227
|
+
readonly id: Id;
|
|
228
|
+
readonly indexes: I;
|
|
229
|
+
connect(client: StorageClient): VectorBucketClient<keyof I & string>;
|
|
230
|
+
}
|
|
231
|
+
/**
|
|
232
|
+
* A Storage vector bucket with typed indexes. Storage keeps the vectors
|
|
233
|
+
* outside Postgres; use the `vector-search` module for pgvector in a table.
|
|
234
|
+
*
|
|
235
|
+
* ```ts
|
|
236
|
+
* export const embeddings = defineVectorBucket({
|
|
237
|
+
* id: "embeddings",
|
|
238
|
+
* indexes: { documents: { dimension: 1536 } },
|
|
239
|
+
* });
|
|
240
|
+
* const docs = embeddings.connect(admin).index("documents");
|
|
241
|
+
* await docs.put([{ key: doc.id, vector, metadata: { organizationId } }]);
|
|
242
|
+
* ```
|
|
243
|
+
*/
|
|
244
|
+
declare function defineVectorBucket<const Id extends string, const I extends Readonly<Record<string, VectorIndexConfig>>>(config: VectorBucketConfig<Id, I>): VectorBucket<Id, I>;
|
|
245
|
+
//#endregion
|
|
246
|
+
export { defineBuckets as A, BucketIdOf as C, ConnectedRef as D, Buckets as E, StorageImageSize as M, storageImageUrl as N, ResolvedRef as O, fromStorageError as P, AnyBucket as S, BucketWithId as T, IMAGE_TYPES as _, VectorHit as a, avatarBucket as b, VectorMetadata as c, defineVectorBucket as d, AnalyticsBucket as f, AvatarBucketOptions as g, defineAnalyticsBucket as h, VectorDistance as i, StorageImageOptions as j, StoredRef as k, VectorQueryOptions as l, AnalyticsCatalog as m, VectorBucketClient as n, VectorIndexClient as o, AnalyticsBucketClient as p, VectorBucketConfig as r, VectorIndexConfig as s, VectorBucket as t, VectorRecord as u, ImageBucketOptions as v, BucketMap as w, organizationLogoBucket as x, OrganizationLogoBucketOptions as y };
|
|
@@ -0,0 +1,138 @@
|
|
|
1
|
+
import { n as RouteGuardOptions } from "./refusal-D1rgbzNq.js";
|
|
2
|
+
import { t as Validated } from "./shared-DDSjEGDR.js";
|
|
3
|
+
import { AnyEntry, Contributions } from "@supabase/middleware";
|
|
4
|
+
import { IncomingMessage, ServerResponse } from "node:http";
|
|
5
|
+
//#region src/node/http.d.ts
|
|
6
|
+
interface WebRequestOptions {
|
|
7
|
+
/**
|
|
8
|
+
* Read the protocol and host from `x-forwarded-proto` and
|
|
9
|
+
* `x-forwarded-host`. Turn it on behind a proxy you control. Defaults to false.
|
|
10
|
+
*/
|
|
11
|
+
readonly trustProxy?: boolean;
|
|
12
|
+
/** Stream the request body into the `Request`. Defaults to true. */
|
|
13
|
+
readonly body?: boolean;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* A Node `IncomingMessage` as a Web `Request`. Express, Fastify and Koa
|
|
17
|
+
* pass theirs (`req`, `request.raw`, `ctx.req`). With `body: false` the
|
|
18
|
+
* stream stays unread, for middleware that runs before a body parser.
|
|
19
|
+
*/
|
|
20
|
+
declare function toWebRequest(req: IncomingMessage, options?: WebRequestOptions): Request;
|
|
21
|
+
/** Writes a Web `Response` to a Node `ServerResponse`, streaming the body. */
|
|
22
|
+
declare function sendWebResponse(res: ServerResponse, response: Response): Promise<void>;
|
|
23
|
+
//#endregion
|
|
24
|
+
//#region src/node/index.d.ts
|
|
25
|
+
interface ToNodeOptions<Req = IncomingMessage> extends Omit<WebRequestOptions, "body"> {
|
|
26
|
+
/** The host's env object for `getEnv`; defaults to `process.env` through `getEnv`. */
|
|
27
|
+
readonly env?: (req: Req) => unknown;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* A `node:http` request listener running the entries around `handler`.
|
|
31
|
+
* Response-phase entries see the handler's response, so refreshed cookies
|
|
32
|
+
* and `withDbStats` totals reach the client.
|
|
33
|
+
*
|
|
34
|
+
* ```ts
|
|
35
|
+
* createServer(toNodeHandler([withBetterSupabase(server)], (request, { db }) => db.notes.findMany()))
|
|
36
|
+
* ```
|
|
37
|
+
*/
|
|
38
|
+
declare function toNodeHandler<const Entries extends readonly AnyEntry[]>(entries: Entries & Validated<Entries>, handler: (request: Request, contributions: Contributions<Entries>) => unknown, options?: ToNodeOptions): (req: IncomingMessage, res: ServerResponse) => Promise<void>;
|
|
39
|
+
/** The part of an Express response the middleware writes. */
|
|
40
|
+
interface ExpressResponse extends ServerResponse {
|
|
41
|
+
/** Express's per-request locals; the contributions land here. */
|
|
42
|
+
locals: Record<string, unknown>;
|
|
43
|
+
}
|
|
44
|
+
/** Express (or Connect) middleware, typed structurally. */
|
|
45
|
+
type ExpressMiddleware = (req: IncomingMessage, res: ExpressResponse, next: (error?: unknown) => void) => void;
|
|
46
|
+
/** An Express error handler, typed structurally. */
|
|
47
|
+
type ExpressErrorHandler = (error: unknown, req: IncomingMessage, res: ExpressResponse, next: (error?: unknown) => void) => void;
|
|
48
|
+
/**
|
|
49
|
+
* Express middleware that puts every contribution on `res.locals`
|
|
50
|
+
* (`res.locals.db`, `res.locals.bs`). Mount it before the routes.
|
|
51
|
+
*
|
|
52
|
+
* ```ts
|
|
53
|
+
* app.use(toExpress([withBetterSupabase(server)]))
|
|
54
|
+
* app.get('/notes', async (req, res) => res.json(await res.locals.db.notes.findMany().orThrow()))
|
|
55
|
+
* ```
|
|
56
|
+
*/
|
|
57
|
+
declare function toExpress<const Entries extends readonly AnyEntry[]>(entries: Entries & Validated<Entries>, options?: ToNodeOptions): ExpressMiddleware;
|
|
58
|
+
/**
|
|
59
|
+
* Express route middleware that refuses callers outside `options`:
|
|
60
|
+
* Problem Details, or a redirect to `signIn` or `mfa`. Runs after `toExpress`.
|
|
61
|
+
*
|
|
62
|
+
* ```ts
|
|
63
|
+
* app.get('/admin', guard({ roles: ['admin'] }), handler)
|
|
64
|
+
* ```
|
|
65
|
+
*/
|
|
66
|
+
declare function guard(options?: RouteGuardOptions): ExpressMiddleware;
|
|
67
|
+
/**
|
|
68
|
+
* An Express error handler that answers thrown `DbException`s (from
|
|
69
|
+
* `.orThrow()`) with Problem Details and passes every other error on.
|
|
70
|
+
* Register it after the routes.
|
|
71
|
+
*/
|
|
72
|
+
declare function problemErrorHandler(options?: {
|
|
73
|
+
readonly expose?: boolean;
|
|
74
|
+
}): ExpressErrorHandler;
|
|
75
|
+
/** The part of a Fastify request the hook reads and writes. */
|
|
76
|
+
interface FastifyRequestLike {
|
|
77
|
+
readonly raw: IncomingMessage;
|
|
78
|
+
/** The contributions land here: `request.locals.db`. */
|
|
79
|
+
locals?: Record<string, unknown>;
|
|
80
|
+
}
|
|
81
|
+
/** The part of a Fastify reply the hook writes. */
|
|
82
|
+
interface FastifyReplyLike {
|
|
83
|
+
readonly raw: ServerResponse;
|
|
84
|
+
readonly sent: boolean;
|
|
85
|
+
code(status: number): FastifyReplyLike;
|
|
86
|
+
header(name: string, value: string | readonly string[]): FastifyReplyLike;
|
|
87
|
+
getHeader(name: string): number | string | string[] | undefined;
|
|
88
|
+
send(payload?: unknown): FastifyReplyLike;
|
|
89
|
+
}
|
|
90
|
+
/** A Fastify `onRequest` or `preHandler` hook, typed structurally. */
|
|
91
|
+
type FastifyHook = (request: FastifyRequestLike, reply: FastifyReplyLike) => Promise<void>;
|
|
92
|
+
/**
|
|
93
|
+
* A Fastify `onRequest` hook that puts every contribution on
|
|
94
|
+
* `request.locals`. Declare `locals` with `app.decorateRequest('locals', null)`.
|
|
95
|
+
*
|
|
96
|
+
* ```ts
|
|
97
|
+
* app.decorateRequest('locals', null)
|
|
98
|
+
* app.addHook('onRequest', toFastify([withBetterSupabase(server)]))
|
|
99
|
+
* app.get('/notes', (request) => request.locals.db.notes.findMany().orThrow())
|
|
100
|
+
* ```
|
|
101
|
+
*/
|
|
102
|
+
declare function toFastify<const Entries extends readonly AnyEntry[]>(entries: Entries & Validated<Entries>, options?: ToNodeOptions<FastifyRequestLike>): FastifyHook;
|
|
103
|
+
/**
|
|
104
|
+
* A Fastify `preHandler` hook that refuses callers outside `options`. Runs
|
|
105
|
+
* after `toFastify`.
|
|
106
|
+
*/
|
|
107
|
+
declare function fastifyGuard(options?: RouteGuardOptions): FastifyHook;
|
|
108
|
+
/** The part of a Koa context the middleware reads and writes. */
|
|
109
|
+
interface KoaContextLike {
|
|
110
|
+
readonly req: IncomingMessage;
|
|
111
|
+
readonly res: ServerResponse;
|
|
112
|
+
/** Koa's per-request state; the contributions land here. */
|
|
113
|
+
state: Record<string, unknown>;
|
|
114
|
+
status: number;
|
|
115
|
+
body: unknown;
|
|
116
|
+
set(name: string, value: string | readonly string[]): void;
|
|
117
|
+
get response(): {
|
|
118
|
+
get(name: string): string | string[] | undefined;
|
|
119
|
+
};
|
|
120
|
+
}
|
|
121
|
+
/** Koa middleware, typed structurally. */
|
|
122
|
+
type KoaMiddleware = (ctx: KoaContextLike, next: () => Promise<unknown>) => Promise<void>;
|
|
123
|
+
/**
|
|
124
|
+
* Koa middleware that puts every contribution on `ctx.state`, then awaits
|
|
125
|
+
* the rest of the chain. Thrown `DbException`s become Problem Details.
|
|
126
|
+
*
|
|
127
|
+
* ```ts
|
|
128
|
+
* app.use(toKoa([withBetterSupabase(server)]))
|
|
129
|
+
* app.use(async (ctx) => { ctx.body = await ctx.state.db.notes.findMany().orThrow() })
|
|
130
|
+
* ```
|
|
131
|
+
*/
|
|
132
|
+
declare function toKoa<const Entries extends readonly AnyEntry[]>(entries: Entries & Validated<Entries>, options?: ToNodeOptions<KoaContextLike> & {
|
|
133
|
+
readonly expose?: boolean;
|
|
134
|
+
}): KoaMiddleware;
|
|
135
|
+
/** Koa middleware that refuses callers outside `options`. Runs after `toKoa`. */
|
|
136
|
+
declare function koaGuard(options?: RouteGuardOptions): KoaMiddleware;
|
|
137
|
+
//#endregion
|
|
138
|
+
export { toNodeHandler as _, FastifyReplyLike as a, toWebRequest as b, KoaMiddleware as c, guard as d, koaGuard as f, toKoa as g, toFastify as h, FastifyHook as i, ToNodeOptions as l, toExpress as m, ExpressMiddleware as n, FastifyRequestLike as o, problemErrorHandler as p, ExpressResponse as r, KoaContextLike as s, ExpressErrorHandler as t, fastifyGuard as u, WebRequestOptions as v, sendWebResponse as y };
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { P as SchemaMeta, u as ClaimsMeta } from "./types-6BdhkmZe.js";
|
|
2
|
+
import { h as Generator } from "./config-D44Y7PAv.js";
|
|
3
|
+
//#region src/core/claims.d.ts
|
|
4
|
+
declare const DEFAULT_CLAIMS: ClaimsMeta;
|
|
5
|
+
/** Where an adapter reads each claim the SQL modules and the provider's hook write. */
|
|
6
|
+
interface ClaimPaths {
|
|
7
|
+
/** The active tenant: the top-level claim, then the same key in `app_metadata`. */
|
|
8
|
+
readonly tenant: readonly [string, string];
|
|
9
|
+
/** `{ [tenantId]: string[] }` of plan features. */
|
|
10
|
+
readonly features: string;
|
|
11
|
+
/** The caller's memberships, a list of `{ scope, id, roles }` or a map of tenant id to role. */
|
|
12
|
+
readonly memberships: string;
|
|
13
|
+
/** The `scope` of tenant entries in the memberships list. */
|
|
14
|
+
readonly scope: string;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* The claim paths for `config.claims`, with defaults. For a generated
|
|
18
|
+
* schema, pass `claimsOf(meta)`.
|
|
19
|
+
*/
|
|
20
|
+
declare function claimPaths(claims?: Partial<ClaimsMeta>): ClaimPaths;
|
|
21
|
+
/** Where the active tenant is read from: the top-level claim, then `app_metadata`. */
|
|
22
|
+
declare function tenantClaimPaths(tenant?: string): readonly [string, string];
|
|
23
|
+
//#endregion
|
|
24
|
+
//#region src/generators/shared.d.ts
|
|
25
|
+
/** What field planning reads: the metadata and the typed-jsonb config. */
|
|
26
|
+
interface SchemaSource {
|
|
27
|
+
readonly meta: SchemaMeta;
|
|
28
|
+
readonly config: {
|
|
29
|
+
readonly json: Readonly<Record<string, unknown>>;
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
interface CommentEntry {
|
|
33
|
+
readonly id: number;
|
|
34
|
+
readonly schema: string;
|
|
35
|
+
readonly name: string;
|
|
36
|
+
readonly comment: string | null;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* The catalog parts docs read: `GeneratorInput` satisfies it. Runtime callers
|
|
40
|
+
* that only have `meta` (OpenAPI, MCP) pass none and get no docs.
|
|
41
|
+
*/
|
|
42
|
+
interface DocsSource extends SchemaSource {
|
|
43
|
+
readonly introspection?: {
|
|
44
|
+
readonly tables: readonly CommentEntry[];
|
|
45
|
+
readonly views: readonly CommentEntry[];
|
|
46
|
+
readonly materializedViews?: readonly CommentEntry[];
|
|
47
|
+
readonly columns: readonly {
|
|
48
|
+
readonly table_id: number;
|
|
49
|
+
readonly name: string;
|
|
50
|
+
readonly comment: string | null;
|
|
51
|
+
readonly check: string | null;
|
|
52
|
+
}[];
|
|
53
|
+
};
|
|
54
|
+
readonly extras?: {
|
|
55
|
+
readonly tables: readonly {
|
|
56
|
+
readonly schema: string;
|
|
57
|
+
readonly name: string;
|
|
58
|
+
readonly checks: readonly {
|
|
59
|
+
readonly definition: string;
|
|
60
|
+
}[];
|
|
61
|
+
}[];
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
//#endregion
|
|
65
|
+
//#region src/generators/json-schema.d.ts
|
|
66
|
+
interface JsonSchemaGeneratorOptions {
|
|
67
|
+
/** Output path relative to the project root. Defaults to `<output>.schema.json`. */
|
|
68
|
+
readonly output?: string;
|
|
69
|
+
/** `$id` of the document. */
|
|
70
|
+
readonly id?: string;
|
|
71
|
+
}
|
|
72
|
+
type JsonSchema = Record<string, unknown>;
|
|
73
|
+
/** JSON Schema (2020-12) `$defs` for every table: `customersRow`, `customersInsert`, ... */
|
|
74
|
+
declare function buildJsonSchema(input: DocsSource, id?: string): JsonSchema;
|
|
75
|
+
/** Writes the JSON Schema document; `createOpenApi` reuses the same `$defs`. */
|
|
76
|
+
declare function jsonSchema(options?: JsonSchemaGeneratorOptions): Generator;
|
|
77
|
+
//#endregion
|
|
78
|
+
//#region src/generators/valibot.d.ts
|
|
79
|
+
interface ValibotGeneratorOptions {
|
|
80
|
+
/** Output path relative to the project root. Defaults to `<output>.valibot.ts`. */
|
|
81
|
+
readonly output?: string;
|
|
82
|
+
/** Schemas for typed jsonb columns: `{ 'customers.metadata': './schemas.ts#metadata' }`. */
|
|
83
|
+
readonly json?: Readonly<Record<string, string>>;
|
|
84
|
+
}
|
|
85
|
+
/** Valibot schemas for every table's Row, Insert and Update shape. */
|
|
86
|
+
declare function valibot(options?: ValibotGeneratorOptions): Generator;
|
|
87
|
+
//#endregion
|
|
88
|
+
//#region src/generators/zod.d.ts
|
|
89
|
+
interface ZodGeneratorOptions {
|
|
90
|
+
/** Output path relative to the project root. Defaults to `<output>.zod.ts`. */
|
|
91
|
+
readonly output?: string;
|
|
92
|
+
/** Schemas for typed jsonb columns: `{ 'customers.metadata': './schemas.ts#metadata' }`. */
|
|
93
|
+
readonly json?: Readonly<Record<string, string>>;
|
|
94
|
+
}
|
|
95
|
+
/** Zod 4 schemas for every table's Row, Insert and Update shape. */
|
|
96
|
+
declare function zod(options?: ZodGeneratorOptions): Generator;
|
|
97
|
+
//#endregion
|
|
98
|
+
export { JsonSchemaGeneratorOptions as a, ClaimPaths as c, tenantClaimPaths as d, valibot as i, DEFAULT_CLAIMS as l, zod as n, buildJsonSchema as o, ValibotGeneratorOptions as r, jsonSchema as s, ZodGeneratorOptions as t, claimPaths as u };
|