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,86 @@
|
|
|
1
|
+
import { n as ClientContext } from "./hooks-1BTCJsiw.js";
|
|
2
|
+
import { useContext, useMemo, useRef, useState } from "react";
|
|
3
|
+
//#region src/react/sign-in.ts
|
|
4
|
+
function useAuthApi(options, hook) {
|
|
5
|
+
const context = useContext(ClientContext);
|
|
6
|
+
const auth = options.client?.auth ?? context?.client.supabase.auth;
|
|
7
|
+
if (!auth) throw new Error(`better-supabase: ${hook} needs <BetterSupabaseProvider client={bs}> or { client: supabase }`);
|
|
8
|
+
return auth;
|
|
9
|
+
}
|
|
10
|
+
/** Runs auth calls with `pending` and `error` state; the latest call owns the state. */
|
|
11
|
+
function usePending(options) {
|
|
12
|
+
const [state, setState] = useState({
|
|
13
|
+
pending: false,
|
|
14
|
+
error: void 0
|
|
15
|
+
});
|
|
16
|
+
const latest = useRef({
|
|
17
|
+
call: 0,
|
|
18
|
+
options
|
|
19
|
+
});
|
|
20
|
+
latest.current.options = options;
|
|
21
|
+
return {
|
|
22
|
+
state,
|
|
23
|
+
run: useMemo(() => async (call) => {
|
|
24
|
+
latest.current.call += 1;
|
|
25
|
+
const id = latest.current.call;
|
|
26
|
+
setState({
|
|
27
|
+
pending: true,
|
|
28
|
+
error: void 0
|
|
29
|
+
});
|
|
30
|
+
let error;
|
|
31
|
+
try {
|
|
32
|
+
({error} = await call());
|
|
33
|
+
} catch (cause) {
|
|
34
|
+
if (id === latest.current.call) setState({
|
|
35
|
+
pending: false,
|
|
36
|
+
error: void 0
|
|
37
|
+
});
|
|
38
|
+
throw cause;
|
|
39
|
+
}
|
|
40
|
+
if (id === latest.current.call) setState({
|
|
41
|
+
pending: false,
|
|
42
|
+
error: error ?? void 0
|
|
43
|
+
});
|
|
44
|
+
if (!error) latest.current.options.onSuccess?.();
|
|
45
|
+
return error ?? void 0;
|
|
46
|
+
}, [])
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Sign-in calls with `pending` and `error` state. The session lands in the
|
|
51
|
+
* client's auth store, so `useAuth()` updates on its own.
|
|
52
|
+
*
|
|
53
|
+
* ```tsx
|
|
54
|
+
* const signIn = useSignIn({ onSuccess: () => router.push('/') });
|
|
55
|
+
* <button disabled={signIn.pending} onClick={() => signIn.password({ email, password })} />
|
|
56
|
+
* ```
|
|
57
|
+
*/
|
|
58
|
+
function useSignIn(options = {}) {
|
|
59
|
+
const auth = useAuthApi(options, "useSignIn");
|
|
60
|
+
const { state, run } = usePending(options);
|
|
61
|
+
const calls = useMemo(() => ({
|
|
62
|
+
password: (credentials) => run(() => auth.signInWithPassword({ ...credentials })),
|
|
63
|
+
otp: (credentials) => run(() => auth.signInWithOtp(credentials)),
|
|
64
|
+
verifyOtp: (params) => run(() => auth.verifyOtp(params)),
|
|
65
|
+
oauth: (provider, oauthOptions) => run(() => auth.signInWithOAuth(oauthOptions ? {
|
|
66
|
+
provider,
|
|
67
|
+
options: oauthOptions
|
|
68
|
+
} : { provider }))
|
|
69
|
+
}), [auth, run]);
|
|
70
|
+
return {
|
|
71
|
+
...state,
|
|
72
|
+
...calls
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
/** `auth.signOut()` with `pending` and `error` state. The provider clears cached queries. */
|
|
76
|
+
function useSignOut(options = {}) {
|
|
77
|
+
const auth = useAuthApi(options, "useSignOut");
|
|
78
|
+
const { state, run } = usePending(options);
|
|
79
|
+
const signOut = useMemo(() => (signOutOptions) => run(() => auth.signOut(signOutOptions ? { ...signOutOptions } : void 0)), [auth, run]);
|
|
80
|
+
return {
|
|
81
|
+
...state,
|
|
82
|
+
signOut
|
|
83
|
+
};
|
|
84
|
+
}
|
|
85
|
+
//#endregion
|
|
86
|
+
export { useSignIn as n, useSignOut as r, usePending as t };
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
/// <reference lib="esnext.temporal" />
|
|
2
|
-
import { t as
|
|
3
|
-
//#region src/webhooks/url-policy.d.ts
|
|
4
|
-
/**
|
|
2
|
+
import { t as BlockTransport } from "./block-transport-DvaoPuZ9.js";
|
|
3
|
+
//#region src/blocks/webhooks/url-policy.d.ts
|
|
4
|
+
/**
|
|
5
|
+
* Decides whether a webhook may be sent to `url`. Throwing means the check
|
|
6
|
+
* itself failed (a DNS lookup error): deliveries retry it, and `safeFetch`
|
|
7
|
+
* throws `UrlCheckError`.
|
|
8
|
+
*/
|
|
5
9
|
type AllowUrl = (url: URL) => boolean | Promise<boolean>;
|
|
6
10
|
/** The addresses a host name resolves to. */
|
|
7
11
|
type ResolveHost = (hostname: string) => Promise<readonly string[]>;
|
|
@@ -33,7 +37,7 @@ declare function isPublicAddress(address: string): boolean;
|
|
|
33
37
|
*/
|
|
34
38
|
declare function publicUrl(options?: PublicUrlOptions): AllowUrl;
|
|
35
39
|
//#endregion
|
|
36
|
-
//#region src/webhooks/http.d.ts
|
|
40
|
+
//#region src/blocks/webhooks/http.d.ts
|
|
37
41
|
interface WebhookRequest {
|
|
38
42
|
readonly url: string;
|
|
39
43
|
readonly headers: Readonly<Record<string, string>>;
|
|
@@ -76,7 +80,7 @@ interface FetchTransportOptions {
|
|
|
76
80
|
/** Sends webhooks with `fetch`, following redirects only to allowed URLs. */
|
|
77
81
|
declare function fetchTransport(options?: FetchTransportOptions): WebhookTransport;
|
|
78
82
|
//#endregion
|
|
79
|
-
//#region src/webhooks/secrets.d.ts
|
|
83
|
+
//#region src/blocks/webhooks/secrets.d.ts
|
|
80
84
|
interface RotateSecretOptions {
|
|
81
85
|
/** How long older secrets keep signing, e.g. `'24 hours'` (the default). */
|
|
82
86
|
readonly overlap?: string;
|
|
@@ -85,7 +89,7 @@ interface RotateSecretOptions {
|
|
|
85
89
|
}
|
|
86
90
|
/**
|
|
87
91
|
* Where endpoint signing secrets live. `sqlSecretStore` (Vault or a
|
|
88
|
-
* column, set in `
|
|
92
|
+
* column, set in `sql.modules.webhooks-out.options.secretStorage`) is the default;
|
|
89
93
|
* implement it for a KMS or a secrets manager.
|
|
90
94
|
*/
|
|
91
95
|
interface WebhookSecretStore {
|
|
@@ -95,12 +99,12 @@ interface WebhookSecretStore {
|
|
|
95
99
|
/** Creates a new secret and returns it once. */
|
|
96
100
|
rotate?(endpointId: string, options?: RotateSecretOptions): Promise<string>;
|
|
97
101
|
}
|
|
98
|
-
/** The
|
|
99
|
-
declare function sqlSecretStore(transport:
|
|
102
|
+
/** The module's `webhook_secrets` and `rotate_webhook_secret` functions. */
|
|
103
|
+
declare function sqlSecretStore(transport: BlockTransport, options?: {
|
|
100
104
|
readonly schema?: string;
|
|
101
105
|
}): WebhookSecretStore;
|
|
102
106
|
//#endregion
|
|
103
|
-
//#region src/webhooks/signers.d.ts
|
|
107
|
+
//#region src/blocks/webhooks/signers.d.ts
|
|
104
108
|
interface WebhookSignInput {
|
|
105
109
|
/** The delivery id, the same on every retry so receivers can deduplicate. */
|
|
106
110
|
readonly id: string;
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
//#region src/ir/simplify.ts
|
|
2
|
+
/**
|
|
3
|
+
* Folds constant conditions. `true` means "no filter", `false` means "matches
|
|
4
|
+
* nothing", so executors can skip the request entirely.
|
|
5
|
+
*/
|
|
6
|
+
function simplify(condition) {
|
|
7
|
+
if (condition === void 0) return true;
|
|
8
|
+
switch (condition.kind) {
|
|
9
|
+
case "and": {
|
|
10
|
+
const items = [];
|
|
11
|
+
for (const item of condition.items) {
|
|
12
|
+
const simple = simplify(item);
|
|
13
|
+
if (simple === false) return false;
|
|
14
|
+
if (simple !== true) items.push(simple);
|
|
15
|
+
}
|
|
16
|
+
if (items.length === 0) return true;
|
|
17
|
+
return items.length === 1 && items[0] ? items[0] : {
|
|
18
|
+
kind: "and",
|
|
19
|
+
items
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
case "or": {
|
|
23
|
+
const items = [];
|
|
24
|
+
for (const item of condition.items) {
|
|
25
|
+
const simple = simplify(item);
|
|
26
|
+
if (simple === true) return true;
|
|
27
|
+
if (simple !== false) items.push(simple);
|
|
28
|
+
}
|
|
29
|
+
if (items.length === 0) return false;
|
|
30
|
+
return items.length === 1 && items[0] ? items[0] : {
|
|
31
|
+
kind: "or",
|
|
32
|
+
items
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
case "not": {
|
|
36
|
+
const inner = simplify(condition.item);
|
|
37
|
+
if (typeof inner === "boolean") return !inner;
|
|
38
|
+
if (inner.kind === "not") return inner.item;
|
|
39
|
+
return {
|
|
40
|
+
kind: "not",
|
|
41
|
+
item: inner
|
|
42
|
+
};
|
|
43
|
+
}
|
|
44
|
+
case "relation": {
|
|
45
|
+
const where = simplify(condition.where);
|
|
46
|
+
if (where === true) {
|
|
47
|
+
if (condition.quantifier === "every") return true;
|
|
48
|
+
return {
|
|
49
|
+
...condition,
|
|
50
|
+
where: void 0
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
if (where === false) {
|
|
54
|
+
if (condition.quantifier === "some") return false;
|
|
55
|
+
if (condition.quantifier === "none") return true;
|
|
56
|
+
return {
|
|
57
|
+
...condition,
|
|
58
|
+
quantifier: "none",
|
|
59
|
+
where: void 0
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
return {
|
|
63
|
+
...condition,
|
|
64
|
+
where
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
case "column":
|
|
68
|
+
if (condition.op === "in" && Array.isArray(condition.value) && condition.value.length === 0) return false;
|
|
69
|
+
return condition;
|
|
70
|
+
default: return condition;
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
/** Returns the condition, or `undefined` when it folds to `true`. */
|
|
74
|
+
function simplifyOrFalse(condition) {
|
|
75
|
+
const simple = simplify(condition);
|
|
76
|
+
if (simple === false) return { never: true };
|
|
77
|
+
return {
|
|
78
|
+
never: false,
|
|
79
|
+
condition: simple === true ? void 0 : simple
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
//#endregion
|
|
83
|
+
export { simplifyOrFalse as n, simplify as t };
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
import { b as DbError } from "../result-D7y2fT87.js";
|
|
2
|
+
import { it as QuerySpec } from "../define-CJJkkr1-.js";
|
|
3
|
+
import { n as TemplateValues } from "../template-CwO38Do8.js";
|
|
4
|
+
import { t as AuthSnapshot } from "../bind-Bu_ZNa3W.js";
|
|
5
|
+
import { t as AuthSession } from "../view-DbxLNu8L.js";
|
|
6
|
+
import { S as Topic, f as PresenceMember, u as EventSchemas, w as TopicHandlers, x as SubscriptionStatus } from "../index-DunNRdnT.js";
|
|
7
|
+
import { t as SupportView } from "../support-view-33Oi07TT.js";
|
|
8
|
+
import { a as BroadcastOptions, c as LiveCountSource, d as PresenceTopic, f as UseActionOptions, i as ActionState, l as LiveQueryHookOptions, n as ActionInputOf, o as ClientLike, r as ActionResultOf, s as LiveCountHookOptions, t as fieldErrorsOf, u as PresenceHookOptions } from "../field-errors-BFOa7WhB.js";
|
|
9
|
+
import { SupabaseClient } from "@supabase/supabase-js";
|
|
10
|
+
import { Accessor, JSX } from "solid-js";
|
|
11
|
+
import { StandardSchemaV1 } from "@standard-schema/spec";
|
|
12
|
+
import { QueryClient } from "@tanstack/query-core";
|
|
13
|
+
//#region src/solid/index.d.ts
|
|
14
|
+
/** A value, or an accessor Solid tracks. */
|
|
15
|
+
export type MaybeAccessor<T> = T | Accessor<T>;
|
|
16
|
+
export interface BetterSupabaseProviderProps {
|
|
17
|
+
readonly client: ClientLike;
|
|
18
|
+
/** better-supabase queries are reset when the user signs out or changes. */
|
|
19
|
+
readonly queryClient?: QueryClient;
|
|
20
|
+
/** A server-verified session (`createAsync(() => getSession())`) for `useSession()`. */
|
|
21
|
+
readonly session?: Accessor<AuthSession | undefined>;
|
|
22
|
+
readonly children?: JSX.Element;
|
|
23
|
+
}
|
|
24
|
+
/** Provides the better-supabase client to the primitives. */
|
|
25
|
+
export declare function BetterSupabaseProvider(props: BetterSupabaseProviderProps): JSX.Element;
|
|
26
|
+
/** The session state for UI: `loading`, `signed-out` or `signed-in` with the user and claims. */
|
|
27
|
+
export declare function useAuth(): Accessor<AuthSnapshot>;
|
|
28
|
+
export declare function useSupabase(): SupabaseClient;
|
|
29
|
+
/** The session passed to `<BetterSupabaseProvider session={...}>`, `undefined` while it loads. */
|
|
30
|
+
export declare function useSession<C = unknown, P = unknown>(): Accessor<AuthSession<C, P> | undefined>;
|
|
31
|
+
/** The support session the page renders in, or `undefined` for a normal session. */
|
|
32
|
+
export declare function useSupportSession(): Accessor<SupportView | undefined>;
|
|
33
|
+
/** The claims type of a client's `betterSupabase.claims(schema)`, `unknown` without one. */
|
|
34
|
+
export type ClaimsOf<B extends ClientLike> = B["betterSupabase"] extends {
|
|
35
|
+
readonly claimsSchema: StandardSchemaV1<unknown, infer C> | undefined;
|
|
36
|
+
} ? C : unknown;
|
|
37
|
+
/** The profile type of a client's `betterSupabase.userMetadata(schema)`, `unknown` without one. */
|
|
38
|
+
export type ProfileOf<B extends ClientLike> = B["betterSupabase"] extends {
|
|
39
|
+
readonly userMetadataSchema: StandardSchemaV1<unknown, infer P> | undefined;
|
|
40
|
+
} ? P : unknown;
|
|
41
|
+
export interface BetterPrimitives<B extends ClientLike> {
|
|
42
|
+
/** Repositories bound to the current session. */
|
|
43
|
+
readonly useDb: () => B["db"];
|
|
44
|
+
/** TanStack Query option factories: `useQuery(() => useQueries().customers.findMany())`. */
|
|
45
|
+
readonly useQueries: () => B["queries"];
|
|
46
|
+
readonly useSupabase: () => SupabaseClient;
|
|
47
|
+
readonly useAuth: () => Accessor<AuthSnapshot>;
|
|
48
|
+
readonly useSession: () => Accessor<AuthSession<ClaimsOf<B>, ProfileOf<B>> | undefined>;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Primitives typed for your schema.
|
|
52
|
+
*
|
|
53
|
+
* ```ts
|
|
54
|
+
* export const { useDb, useQueries, useAuth } = createBindings<typeof bs>();
|
|
55
|
+
* ```
|
|
56
|
+
*/
|
|
57
|
+
export declare function createBindings<B extends ClientLike>(): BetterPrimitives<B>;
|
|
58
|
+
/**
|
|
59
|
+
* Subscribes to a topic while the owner lives. A `null` value pauses. It
|
|
60
|
+
* resubscribes when the topic values or the signed-in user change.
|
|
61
|
+
*
|
|
62
|
+
* ```ts
|
|
63
|
+
* useBroadcast(customersTopic, () => ({ organizationId: org() }), {}, { invalidate: ['customers'] });
|
|
64
|
+
* ```
|
|
65
|
+
*/
|
|
66
|
+
export declare function useBroadcast<P extends string, E extends EventSchemas>(topic: Topic<P, E>, values: MaybeAccessor<TemplateValues<P> | null | undefined>, handlers?: TopicHandlers<E>, options?: BroadcastOptions): Accessor<SubscriptionStatus>;
|
|
67
|
+
/**
|
|
68
|
+
* Keeps a query fresh: invalidates every cached query that read a table the
|
|
69
|
+
* spec touches whenever one of them changes. A `null` spec pauses.
|
|
70
|
+
*
|
|
71
|
+
* ```ts
|
|
72
|
+
* useLiveQuery(() => betterSupabase.spec.customers.findMany({ where: { orgId: org() } }));
|
|
73
|
+
* ```
|
|
74
|
+
*/
|
|
75
|
+
export declare function useLiveQuery(spec: MaybeAccessor<QuerySpec | null | undefined>, options?: LiveQueryHookOptions): Accessor<SubscriptionStatus>;
|
|
76
|
+
export interface LiveCount {
|
|
77
|
+
/** `undefined` until the first count arrives. */
|
|
78
|
+
readonly count: number | undefined;
|
|
79
|
+
readonly status: SubscriptionStatus;
|
|
80
|
+
/** The last failed refetch; the previous count stays. */
|
|
81
|
+
readonly error: DbError | undefined;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* A count that stays current: refetches only the `count` spec after each
|
|
85
|
+
* debounced change to a table it reads. Takes a spec or a `bs.liveCount()`
|
|
86
|
+
* seed; `null` pauses. The returned object's fields are reactive.
|
|
87
|
+
*
|
|
88
|
+
* ```tsx
|
|
89
|
+
* const unread = useLiveCount(() => betterSupabase.spec.messages.count({ where: { read: false } }));
|
|
90
|
+
* <span>{unread.count}</span>
|
|
91
|
+
* ```
|
|
92
|
+
*/
|
|
93
|
+
export declare function useLiveCount(source: MaybeAccessor<LiveCountSource>, options?: LiveCountHookOptions): LiveCount;
|
|
94
|
+
export interface Presence<I, O> {
|
|
95
|
+
/** Everyone on the topic, this client included, from the last sync. */
|
|
96
|
+
readonly members: readonly PresenceMember<O>[];
|
|
97
|
+
readonly status: SubscriptionStatus;
|
|
98
|
+
/** Shares a state now; the `state` option tracks one for you. */
|
|
99
|
+
readonly track: (state: I) => Promise<DbError | undefined>;
|
|
100
|
+
readonly untrack: () => Promise<DbError | undefined>;
|
|
101
|
+
}
|
|
102
|
+
export interface SolidPresenceOptions<I> extends Omit<PresenceHookOptions<I>, "state"> {
|
|
103
|
+
readonly state?: MaybeAccessor<I | null | undefined>;
|
|
104
|
+
}
|
|
105
|
+
/**
|
|
106
|
+
* Joins a presence topic while the owner lives and returns who is on it. A
|
|
107
|
+
* `null` value pauses. The returned object's fields are reactive.
|
|
108
|
+
*
|
|
109
|
+
* ```ts
|
|
110
|
+
* const room = usePresence(roomTopic, () => ({ roomId: id() }), { state: () => ({ name: name() }) });
|
|
111
|
+
* ```
|
|
112
|
+
*/
|
|
113
|
+
export declare function usePresence<P extends string, I, O>(topic: PresenceTopic<P, I, O>, values: MaybeAccessor<TemplateValues<P> | null | undefined>, options?: SolidPresenceOptions<I>): Presence<I, O>;
|
|
114
|
+
export interface ActionHandle<I, T> extends ActionState<I, T> {
|
|
115
|
+
/** Runs the action; resolves with its result. */
|
|
116
|
+
readonly run: (input: I) => Promise<ActionResultOf<T>>;
|
|
117
|
+
readonly reset: () => void;
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* Calls a server action (`action()` from SolidStart, or a `bs.action()`)
|
|
121
|
+
* from an event handler: tracks pending inputs and the last result, and
|
|
122
|
+
* calls `onSuccess` or `onError`. The returned object's fields are reactive.
|
|
123
|
+
*
|
|
124
|
+
* ```tsx
|
|
125
|
+
* const remove = useAction(removeMember);
|
|
126
|
+
* <button disabled={remove.pending} onClick={() => remove.run({ userId })} />
|
|
127
|
+
* ```
|
|
128
|
+
*/
|
|
129
|
+
export declare function useAction<I, T>(action: (input: I) => Promise<ActionResultOf<T>>, options?: UseActionOptions<ActionInputOf<I>, T>): ActionHandle<ActionInputOf<I>, T>;
|
|
130
|
+
//#endregion
|
|
131
|
+
export { type ActionInputOf, type ActionResultOf, type ActionState, type AuthSession, type AuthSnapshot, type BroadcastOptions, type ClientLike, type LiveCountHookOptions, type LiveCountSource, type LiveQueryHookOptions, type PresenceHookOptions, type PresenceTopic, type SupportView, type UseActionOptions, fieldErrorsOf };
|