better-supabase 0.5.0 → 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 +299 -41
- package/dist/access-sql-B0dF-SoF.js +181 -0
- package/dist/actor-CQTlc1Hh.d.ts +43 -0
- 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-L7Z8mYTx.js → doctor-B4JOm_ox.js} +992 -316
- 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-Saf5-R9T.js → init-BIIwclPg.js} +242 -27
- package/dist/cli/{introspect--H7oGmcd.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-BKR2W_79.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-BDJuO0UR.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-T_ejwyd3.d.ts → config-D44Y7PAv.d.ts} +406 -205
- 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-BTrQ_ZTp.d.ts → ended-jLfvw8h-.d.ts} +20 -2
- package/dist/{entitlements-DUxU4oHe.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-DcqaTBHx.js +148 -0
- 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-CusDgPaD.d.ts → mfa-Daak8ukG.d.ts} +8 -2
- 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-Bq64ki8-.js → resolve-D_IcnvFd.js} +239 -289
- package/dist/{resolve-C15TJq77.d.ts → resolve-KW8nCeL6.d.ts} +29 -45
- package/dist/{resource-CRxxwkQq.js → resource-BsvzCMlX.js} +4 -4
- package/dist/{resource-D8iqWMr-.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 -21
- package/dist/server/index.js +46 -14
- package/dist/{respond-D2OQl62-.d.ts → server-CeVeeXwz.d.ts} +225 -80
- 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 +330 -194
- package/dist/sql/index.js +34901 -6489
- 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-Dk6vdmEw.js → support-BivNqSpK.js} +35 -12
- package/dist/{support-view-Da5peKFg.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 +343 -37
- package/dist/testing/index.js +1186 -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-DM_Roffb.js → version-Bvv6aLjZ.js} +1 -1
- package/dist/view-BeFcRV6G.js +99 -0
- package/dist/{view-BEf0diC5.d.ts → view-DbxLNu8L.d.ts} +35 -32
- 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 +470 -29
- package/schemas/ai-message-v1.json +258 -0
- package/schemas/config-v1.json +1074 -140
- package/schemas/doctor-report-v1.json +21 -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 +62 -18
- 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-BJc9vdyu.js +0 -2
- package/dist/cli/gen-C2osRcr5.js +0 -2204
- package/dist/cli/read-sets-BfMQcKy8.js +0 -289
- package/dist/cli/sql-DzPbfngx.js +0 -348
- 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/impersonation-VfaGc4Q_.js +0 -41
- package/dist/index-BGdgBPdf.d.ts +0 -161
- package/dist/index-DOESKG27.d.ts +0 -100
- package/dist/index-DmXSxbLi.d.ts +0 -62
- package/dist/index-Dxn2a5cw.d.ts +0 -50
- 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/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-Csx2sRjg.js +0 -655
- package/dist/stats-Bqob3WqT.js +0 -592
- package/dist/support-DT-OhSxD.d.ts +0 -88
- 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 -100
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
//#region src/cli/introspect/typegen-version.ts
|
|
2
|
+
/**
|
|
3
|
+
* The `@supabase/postgrest-typegen` version `database.types.ts` output is
|
|
4
|
+
* pinned to. The peer range is this exact version; a test checks the catalog.
|
|
5
|
+
*/
|
|
6
|
+
const TYPEGEN_VERSION = "0.4.0";
|
|
7
|
+
//#endregion
|
|
8
|
+
export { TYPEGEN_VERSION as t };
|
package/dist/client/index.d.ts
CHANGED
|
@@ -1,2 +1,3 @@
|
|
|
1
|
-
import { a as
|
|
2
|
-
|
|
1
|
+
import { a as ClientAuth, i as BindClientOptions, n as AuthUser, o as bindClient, r as BetterClient, t as AuthSnapshot } from "../bind-Bu_ZNa3W.js";
|
|
2
|
+
import { n as createClient, t as ClientOptions } from "../index-BkWT_uBO.js";
|
|
3
|
+
export { type AuthSnapshot, type AuthUser, type BetterClient, type BindClientOptions, type ClientAuth, ClientOptions, bindClient, createClient };
|
package/dist/client/index.js
CHANGED
|
@@ -1,45 +1,8 @@
|
|
|
1
|
-
import { n as decodeJwtPayload } from "../base64-D2gsioCY.js";
|
|
2
|
-
import { r as userContext } from "../impersonation-VfaGc4Q_.js";
|
|
3
1
|
import { EnvValidationError, parseEnv } from "../env/index.js";
|
|
4
|
-
import { t as
|
|
2
|
+
import { t as bindClient } from "../bind-l4kAvYSv.js";
|
|
5
3
|
import { createBrowserClient } from "@supabase/ssr";
|
|
6
4
|
import { createClient as createClient$1 } from "@supabase/supabase-js";
|
|
7
5
|
//#region src/client/index.ts
|
|
8
|
-
const LOADING = {
|
|
9
|
-
status: "loading",
|
|
10
|
-
user: null,
|
|
11
|
-
claims: null
|
|
12
|
-
};
|
|
13
|
-
const SIGNED_OUT = {
|
|
14
|
-
status: "signed-out",
|
|
15
|
-
user: null,
|
|
16
|
-
claims: null
|
|
17
|
-
};
|
|
18
|
-
function snapshotOf(session) {
|
|
19
|
-
if (!session) return SIGNED_OUT;
|
|
20
|
-
const claims = decodeJwtPayload(session.access_token) ?? {};
|
|
21
|
-
const role = typeof claims["role"] === "string" ? claims["role"] : session.user.role;
|
|
22
|
-
return {
|
|
23
|
-
status: "signed-in",
|
|
24
|
-
user: {
|
|
25
|
-
id: session.user.id,
|
|
26
|
-
...session.user.email ? { email: session.user.email } : {},
|
|
27
|
-
...role ? { role } : {}
|
|
28
|
-
},
|
|
29
|
-
claims
|
|
30
|
-
};
|
|
31
|
-
}
|
|
32
|
-
function contextOf(snapshot) {
|
|
33
|
-
if (snapshot.status !== "signed-in") return {
|
|
34
|
-
actor: {
|
|
35
|
-
id: "anon",
|
|
36
|
-
kind: "anon",
|
|
37
|
-
role: "anon"
|
|
38
|
-
},
|
|
39
|
-
claims: { role: "anon" }
|
|
40
|
-
};
|
|
41
|
-
return userContext(snapshot.user, snapshot.claims);
|
|
42
|
-
}
|
|
43
6
|
function clientFor(options) {
|
|
44
7
|
if (options.client) return options.client;
|
|
45
8
|
if (!options.env) throw new TypeError("createClient needs `env` ({ url, publishableKey }) or `client`");
|
|
@@ -48,8 +11,14 @@ function clientFor(options) {
|
|
|
48
11
|
SUPABASE_PUBLISHABLE_KEY: options.env.publishableKey
|
|
49
12
|
});
|
|
50
13
|
if (!checked.ok) throw new EnvValidationError(checked.issues);
|
|
51
|
-
|
|
52
|
-
|
|
14
|
+
const userStorage = options.auth?.userStorage;
|
|
15
|
+
const auth = userStorage ? { auth: { userStorage } } : {};
|
|
16
|
+
if (options.storage === "local") return createClient$1(checked.env.url, checked.env.publishableKey, auth);
|
|
17
|
+
const encode = options.cookies?.encode;
|
|
18
|
+
return createBrowserClient(checked.env.url, checked.env.publishableKey, {
|
|
19
|
+
...auth,
|
|
20
|
+
...encode ? { cookies: { encode } } : {}
|
|
21
|
+
});
|
|
53
22
|
}
|
|
54
23
|
/**
|
|
55
24
|
* The browser side: a supabase-js client, repositories that follow the
|
|
@@ -60,36 +29,7 @@ function clientFor(options) {
|
|
|
60
29
|
* ```
|
|
61
30
|
*/
|
|
62
31
|
function createClient(betterSupabase, options = {}) {
|
|
63
|
-
|
|
64
|
-
let snapshot = LOADING;
|
|
65
|
-
let db;
|
|
66
|
-
const listeners = /* @__PURE__ */ new Set();
|
|
67
|
-
supabase.auth.onAuthStateChange((_event, session) => {
|
|
68
|
-
const next = snapshotOf(session);
|
|
69
|
-
if (!(next.status !== snapshot.status || next.user?.id !== snapshot.user?.id || next.status === "signed-in" && snapshot.status === "signed-in" && next.claims["exp"] !== snapshot.claims["exp"])) return;
|
|
70
|
-
snapshot = next;
|
|
71
|
-
db = void 0;
|
|
72
|
-
for (const listener of listeners) listener();
|
|
73
|
-
});
|
|
74
|
-
const client = {
|
|
75
|
-
betterSupabase,
|
|
76
|
-
supabase,
|
|
77
|
-
get db() {
|
|
78
|
-
db ??= betterSupabase.connect(supabase, contextOf(snapshot));
|
|
79
|
-
return db;
|
|
80
|
-
},
|
|
81
|
-
queries: createQueries(betterSupabase, () => client.db),
|
|
82
|
-
auth: {
|
|
83
|
-
current: () => snapshot,
|
|
84
|
-
subscribe: (listener) => {
|
|
85
|
-
listeners.add(listener);
|
|
86
|
-
return () => {
|
|
87
|
-
listeners.delete(listener);
|
|
88
|
-
};
|
|
89
|
-
}
|
|
90
|
-
}
|
|
91
|
-
};
|
|
92
|
-
return client;
|
|
32
|
+
return bindClient(betterSupabase, clientFor(options), options.staleTime === void 0 ? {} : { staleTime: options.staleTime });
|
|
93
33
|
}
|
|
94
34
|
//#endregion
|
|
95
|
-
export { createClient };
|
|
35
|
+
export { bindClient, createClient };
|
|
@@ -0,0 +1,228 @@
|
|
|
1
|
+
import { t as AsyncResult } from "../../result-D7y2fT87.js";
|
|
2
|
+
import { S as UploadOptions, x as UploadBody } from "../../bucket-Cl46E3jS.js";
|
|
3
|
+
import { a as ClientAuth, i as BindClientOptions, n as AuthUser, o as bindClient, r as BetterClient, t as AuthSnapshot } from "../../bind-Bu_ZNa3W.js";
|
|
4
|
+
import { a as OAuthSignInOptions, c as linkParams, i as OAuthClient, l as signInWithOAuthBrowser, n as AuthLinkClient, o as WebBrowserLike, r as AuthLinkResult, s as handleAuthDeepLink, t as AuthFailure } from "../../auth-link-BjFPqwLz.js";
|
|
5
|
+
//#region src/client/native/auto-refresh.d.ts
|
|
6
|
+
/** The part of React Native's `AppState` that `autoRefreshOnForeground` uses. */
|
|
7
|
+
interface AppStateLike {
|
|
8
|
+
readonly currentState: string;
|
|
9
|
+
addEventListener(type: "change", listener: (state: string) => void): {
|
|
10
|
+
remove(): void;
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
/** The part of a supabase-js client that `autoRefreshOnForeground` uses. */
|
|
14
|
+
interface AutoRefreshClient {
|
|
15
|
+
readonly auth: {
|
|
16
|
+
startAutoRefresh(): Promise<void>;
|
|
17
|
+
stopAutoRefresh(): Promise<void>;
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Refreshes the Supabase session only while the app is in the foreground,
|
|
22
|
+
* as supabase-js requires on React Native. Returns a function that removes
|
|
23
|
+
* the listener and stops refreshing.
|
|
24
|
+
*
|
|
25
|
+
* ```ts
|
|
26
|
+
* import { AppState } from 'react-native';
|
|
27
|
+
* autoRefreshOnForeground(supabase, AppState);
|
|
28
|
+
* ```
|
|
29
|
+
*/
|
|
30
|
+
export declare function autoRefreshOnForeground(supabase: AutoRefreshClient, appState: AppStateLike): () => void;
|
|
31
|
+
//#endregion
|
|
32
|
+
//#region src/client/native/key-value.d.ts
|
|
33
|
+
/** `@react-native-async-storage/async-storage` or any async string store. */
|
|
34
|
+
interface AsyncStorageLike {
|
|
35
|
+
getItem(key: string): Promise<string | null>;
|
|
36
|
+
setItem(key: string, value: string): Promise<void>;
|
|
37
|
+
removeItem(key: string): Promise<void>;
|
|
38
|
+
}
|
|
39
|
+
/** `react-native-mmkv`: `delete` up to v3, `remove` from v4. */
|
|
40
|
+
interface MmkvLike {
|
|
41
|
+
getString(key: string): string | undefined;
|
|
42
|
+
set(key: string, value: string): void;
|
|
43
|
+
delete?(key: string): void;
|
|
44
|
+
remove?(key: string): unknown;
|
|
45
|
+
}
|
|
46
|
+
type KeyValueStoreLike = AsyncStorageLike | MmkvLike;
|
|
47
|
+
/** A store with async `get`, `set` and `remove`, whichever kind it wraps. */
|
|
48
|
+
interface KeyValue {
|
|
49
|
+
get(key: string): Promise<string | null>;
|
|
50
|
+
set(key: string, value: string): Promise<void>;
|
|
51
|
+
remove(key: string): Promise<void>;
|
|
52
|
+
}
|
|
53
|
+
export declare function keyValue(store: KeyValueStoreLike): KeyValue;
|
|
54
|
+
//#endregion
|
|
55
|
+
//#region src/client/native/storage.d.ts
|
|
56
|
+
/** The part of `expo-secure-store` the storage adapter uses. */
|
|
57
|
+
interface SecureStoreLike {
|
|
58
|
+
getItemAsync(key: string, options?: SecureStoreOptionsLike): Promise<string | null>;
|
|
59
|
+
setItemAsync(key: string, value: string, options?: SecureStoreOptionsLike): Promise<void>;
|
|
60
|
+
deleteItemAsync(key: string, options?: SecureStoreOptionsLike): Promise<void>;
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* The `expo-secure-store` options every call gets, such as
|
|
64
|
+
* `keychainAccessible` or `keychainService`.
|
|
65
|
+
*/
|
|
66
|
+
interface SecureStoreOptionsLike {
|
|
67
|
+
/**
|
|
68
|
+
* When the keychain item is readable. `SecureStore.AFTER_FIRST_UNLOCK`
|
|
69
|
+
* lets a background task or a push handler refresh the session while the
|
|
70
|
+
* device is locked; the default (`WHEN_UNLOCKED`) does not.
|
|
71
|
+
*/
|
|
72
|
+
readonly keychainAccessible?: number;
|
|
73
|
+
readonly keychainService?: string;
|
|
74
|
+
readonly requireAuthentication?: boolean;
|
|
75
|
+
readonly [option: string]: unknown;
|
|
76
|
+
}
|
|
77
|
+
/** The storage interface supabase-js `auth.storage` takes. */
|
|
78
|
+
interface AuthStorage {
|
|
79
|
+
getItem(key: string): Promise<string | null>;
|
|
80
|
+
setItem(key: string, value: string): Promise<void>;
|
|
81
|
+
removeItem(key: string): Promise<void>;
|
|
82
|
+
}
|
|
83
|
+
interface SecureStorageOptions {
|
|
84
|
+
/**
|
|
85
|
+
* Characters per stored value. Defaults to 1800: iOS warns above 2048
|
|
86
|
+
* bytes, and a Supabase session with custom claims is larger than that.
|
|
87
|
+
*/
|
|
88
|
+
readonly chunkSize?: number;
|
|
89
|
+
/** Passed to every `expo-secure-store` call. */
|
|
90
|
+
readonly storeOptions?: SecureStoreOptionsLike;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Supabase Auth storage on the device keychain (`expo-secure-store`),
|
|
94
|
+
* split into chunks so sessions above the platform's value size fit.
|
|
95
|
+
* Operations on one key run one at a time, and a write moves the pointer
|
|
96
|
+
* only after every chunk is stored, so a reader never joins chunks of two
|
|
97
|
+
* values and a write that fails part way keeps the previous value.
|
|
98
|
+
*
|
|
99
|
+
* ```ts
|
|
100
|
+
* import * as SecureStore from 'expo-secure-store';
|
|
101
|
+
* createClient(url, key, { auth: { storage: secureStorage(SecureStore) } });
|
|
102
|
+
* ```
|
|
103
|
+
*/
|
|
104
|
+
export declare function secureStorage(store: SecureStoreLike, options?: SecureStorageOptions): AuthStorage;
|
|
105
|
+
//#endregion
|
|
106
|
+
//#region src/client/native/large-storage.d.ts
|
|
107
|
+
/** WebCrypto with AES-GCM: the global `crypto`, or `react-native-quick-crypto`. */
|
|
108
|
+
interface AesCryptoLike {
|
|
109
|
+
getRandomValues<T extends Uint8Array<ArrayBuffer>>(array: T): T;
|
|
110
|
+
readonly subtle: Pick<SubtleCrypto, "importKey" | "encrypt" | "decrypt">;
|
|
111
|
+
}
|
|
112
|
+
interface LargeSecureStorageOptions {
|
|
113
|
+
/** Holds the 256-bit key per session key: `expo-secure-store`. */
|
|
114
|
+
readonly secureStore: SecureStoreLike;
|
|
115
|
+
/** Holds the encrypted session: MMKV or AsyncStorage. */
|
|
116
|
+
readonly storage: KeyValueStoreLike;
|
|
117
|
+
/** Defaults to the global `crypto`; Hermes needs `react-native-quick-crypto`. */
|
|
118
|
+
readonly crypto?: AesCryptoLike;
|
|
119
|
+
/** Passed to every `expo-secure-store` call. */
|
|
120
|
+
readonly storeOptions?: SecureStoreOptionsLike;
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Supabase Auth storage for sessions of any size: the session is encrypted
|
|
124
|
+
* with AES-GCM and kept in MMKV or AsyncStorage, and only its key lives in
|
|
125
|
+
* the keychain. A key that no longer decrypts (the app was reinstalled and
|
|
126
|
+
* one store kept its data) reads as signed out and is replaced on the next
|
|
127
|
+
* sign-in.
|
|
128
|
+
*
|
|
129
|
+
* ```ts
|
|
130
|
+
* import * as SecureStore from 'expo-secure-store';
|
|
131
|
+
* import AsyncStorage from '@react-native-async-storage/async-storage';
|
|
132
|
+
* createClient(url, key, { auth: { storage: largeSecureStorage({ secureStore: SecureStore, storage: AsyncStorage }) } });
|
|
133
|
+
* ```
|
|
134
|
+
*/
|
|
135
|
+
export declare function largeSecureStorage(options: LargeSecureStorageOptions): AuthStorage;
|
|
136
|
+
//#endregion
|
|
137
|
+
//#region src/client/native/persist.d.ts
|
|
138
|
+
/**
|
|
139
|
+
* TanStack Query's `Persister`: pass it as `persistOptions.persister` to
|
|
140
|
+
* `PersistQueryClientProvider` or `persistQueryClient`.
|
|
141
|
+
*/
|
|
142
|
+
interface QueryPersister<T> {
|
|
143
|
+
persistClient(client: T): Promise<void>;
|
|
144
|
+
restoreClient(): Promise<T | undefined>;
|
|
145
|
+
removeClient(): Promise<void>;
|
|
146
|
+
}
|
|
147
|
+
interface PersistQueryCacheOptions {
|
|
148
|
+
/** Defaults to `better-supabase.query-cache`. */
|
|
149
|
+
readonly key?: string;
|
|
150
|
+
/** Writes at most once per interval, keeping the latest cache. Defaults to 1000 ms. */
|
|
151
|
+
readonly throttleMs?: number;
|
|
152
|
+
}
|
|
153
|
+
/**
|
|
154
|
+
* Persists the query cache to MMKV or AsyncStorage, so a cold start shows
|
|
155
|
+
* the last rows before the first fetch. The provider's `clearOnUserChange`
|
|
156
|
+
* drops them when another user signs in.
|
|
157
|
+
*
|
|
158
|
+
* ```tsx
|
|
159
|
+
* <PersistQueryClientProvider client={queryClient} persistOptions={{ persister: persistQueryCache(storage) }}>
|
|
160
|
+
* ```
|
|
161
|
+
*/
|
|
162
|
+
export declare function persistQueryCache<T>(storage: KeyValueStoreLike, options?: PersistQueryCacheOptions): QueryPersister<T>;
|
|
163
|
+
//#endregion
|
|
164
|
+
//#region src/client/native/query.d.ts
|
|
165
|
+
/** The part of TanStack Query's `focusManager` that `syncQueryWithApp` uses. */
|
|
166
|
+
interface FocusManagerLike {
|
|
167
|
+
setEventListener(setup: (setFocused: (focused?: boolean) => void) => (() => void) | undefined): void;
|
|
168
|
+
}
|
|
169
|
+
/** The part of TanStack Query's `onlineManager` that `syncQueryWithApp` uses. */
|
|
170
|
+
interface OnlineManagerLike {
|
|
171
|
+
setEventListener(setup: (setOnline: (online: boolean) => void) => (() => void) | undefined): void;
|
|
172
|
+
}
|
|
173
|
+
/** The part of `@react-native-community/netinfo` that `syncQueryWithApp` uses. */
|
|
174
|
+
interface NetInfoLike {
|
|
175
|
+
addEventListener(listener: (state: {
|
|
176
|
+
readonly isConnected: boolean | null;
|
|
177
|
+
readonly isInternetReachable?: boolean | null;
|
|
178
|
+
}) => void): () => void;
|
|
179
|
+
}
|
|
180
|
+
interface SyncQueryWithAppOptions {
|
|
181
|
+
readonly focusManager: FocusManagerLike;
|
|
182
|
+
readonly appState: AppStateLike;
|
|
183
|
+
/** With `netInfo`, queries pause offline and refetch on reconnect. */
|
|
184
|
+
readonly onlineManager?: OnlineManagerLike;
|
|
185
|
+
readonly netInfo?: NetInfoLike;
|
|
186
|
+
/** Also refresh the session only in the foreground (`autoRefreshOnForeground`). */
|
|
187
|
+
readonly supabase?: AutoRefreshClient;
|
|
188
|
+
}
|
|
189
|
+
/**
|
|
190
|
+
* Wires TanStack Query to the app lifecycle on React Native: queries count
|
|
191
|
+
* as focused while the app is active, and as online while NetInfo reports
|
|
192
|
+
* a connection (an unreachable internet counts as offline). Returns a
|
|
193
|
+
* function that removes every listener.
|
|
194
|
+
*
|
|
195
|
+
* ```ts
|
|
196
|
+
* import { focusManager, onlineManager } from '@tanstack/react-query';
|
|
197
|
+
* import NetInfo from '@react-native-community/netinfo';
|
|
198
|
+
* import { AppState } from 'react-native';
|
|
199
|
+
* syncQueryWithApp({ focusManager, onlineManager, appState: AppState, netInfo: NetInfo, supabase });
|
|
200
|
+
* ```
|
|
201
|
+
*/
|
|
202
|
+
export declare function syncQueryWithApp(options: SyncQueryWithAppOptions): () => void;
|
|
203
|
+
//#endregion
|
|
204
|
+
//#region src/client/native/upload.d.ts
|
|
205
|
+
/** The part of a connected bucket `uploadFromUri` calls. */
|
|
206
|
+
interface UriUploadTarget<T, R> {
|
|
207
|
+
upload(target: T, body: UploadBody, options?: UploadOptions): AsyncResult<R>;
|
|
208
|
+
}
|
|
209
|
+
interface UploadFromUriOptions extends UploadOptions {
|
|
210
|
+
/** Defaults to the global `fetch`, which reads `file://` and `content://` URIs on React Native. */
|
|
211
|
+
readonly fetch?: (uri: string) => Promise<Response>;
|
|
212
|
+
}
|
|
213
|
+
/** The content type for a file URI's extension, ignoring a query or fragment. */
|
|
214
|
+
export declare function contentTypeOf(uri: string): string | undefined;
|
|
215
|
+
/**
|
|
216
|
+
* Uploads a local file (an `expo-image-picker` or `expo-document-picker`
|
|
217
|
+
* URI) to a connected bucket. The file is read into an `ArrayBuffer`, as
|
|
218
|
+
* React Native's `Blob` can't be uploaded; the content type comes from the
|
|
219
|
+
* option, the response or the extension.
|
|
220
|
+
*
|
|
221
|
+
* ```ts
|
|
222
|
+
* const picked = await ImagePicker.launchImageLibraryAsync();
|
|
223
|
+
* await uploadFromUri(avatars, { userId }, picked.assets[0].uri, { upsert: true });
|
|
224
|
+
* ```
|
|
225
|
+
*/
|
|
226
|
+
export declare function uploadFromUri<T, R>(bucket: UriUploadTarget<T, R>, target: T, uri: string, options?: UploadFromUriOptions): AsyncResult<R>;
|
|
227
|
+
//#endregion
|
|
228
|
+
export { type AesCryptoLike, type AppStateLike, type AsyncStorageLike, type AuthFailure, type AuthLinkClient, type AuthLinkResult, type AuthSnapshot, type AuthStorage, type AuthUser, type AutoRefreshClient, type BetterClient, type BindClientOptions, type ClientAuth, type FocusManagerLike, type KeyValue, type KeyValueStoreLike, type LargeSecureStorageOptions, type MmkvLike, type NetInfoLike, type OAuthClient, type OAuthSignInOptions, type OnlineManagerLike, type PersistQueryCacheOptions, type QueryPersister, type SecureStorageOptions, type SecureStoreLike, type SecureStoreOptionsLike, type SyncQueryWithAppOptions, type UploadFromUriOptions, type UriUploadTarget, type WebBrowserLike, bindClient as createNativeClient, handleAuthDeepLink, linkParams, signInWithOAuthBrowser };
|