better-supabase 0.7.0 → 0.8.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 +6 -2
- package/dist/{access-sql-B0dF-SoF.js → access-sql-CrSbK1q-.js} +1 -1
- package/dist/{adapter-B-tL8hqg.js → adapter-CN45ibbV.js} +663 -157
- package/dist/{agents-CVHGd7It.d.ts → agents-BY_LQXtQ.d.ts} +4 -4
- package/dist/{ai-cache-CBWs1W0k.js → ai-cache-Dfgk8nBT.js} +2 -1
- package/dist/{ai-cache-DaDu_G5L.d.ts → ai-cache-DrUMMgp6.d.ts} +4 -4
- package/dist/{ai-chat-B24UI962.js → ai-chat-CVLRWbtS.js} +4 -3
- package/dist/{ai-chat-7amvXjmQ.d.ts → ai-chat-DXkMy74O.d.ts} +5 -5
- package/dist/{ai-files-CSPNswUY.js → ai-files-CioLu5du.js} +5 -4
- package/dist/ai-message-DfaP8sis.js +14 -0
- package/dist/ai-sdk/agents/index.d.ts +4 -4
- package/dist/ai-sdk/batches/index.d.ts +4 -4
- package/dist/ai-sdk/batches/index.js +4 -4
- package/dist/ai-sdk/cache/index.d.ts +2 -2
- package/dist/ai-sdk/cache/index.js +2 -2
- package/dist/ai-sdk/chat/index.d.ts +1 -1
- package/dist/ai-sdk/chat/index.js +8 -20
- package/dist/ai-sdk/embeddings/index.d.ts +2 -2
- package/dist/ai-sdk/files/index.d.ts +3 -3
- package/dist/ai-sdk/files/index.js +4 -4
- package/dist/ai-sdk/index.d.ts +37 -9
- package/dist/ai-sdk/index.js +3 -2
- package/dist/ai-sdk/mcp/index.d.ts +43 -6
- package/dist/ai-sdk/mcp/index.js +36 -7
- package/dist/ai-sdk/memory/index.d.ts +2 -2
- package/dist/ai-sdk/memory/index.js +1 -1
- package/dist/ai-sdk/workflow/index.d.ts +6 -6
- package/dist/ai-sdk/workflow/index.js +13 -24
- package/dist/{ai-tasks-Cd1HMFvB.d.ts → ai-tasks-BRQ6iQLc.d.ts} +4 -4
- package/dist/{announcements-ZRGnScWI.d.ts → announcements-Bouy0Ski.d.ts} +3 -3
- package/dist/{announcements-CiyOs-xP.js → announcements-p_BFofiR.js} +1 -1
- package/dist/api-Dnf2q-Ht.d.ts +370 -0
- package/dist/api-DtHFC037.js +676 -0
- package/dist/{api-keys-CIjghYjV.d.ts → api-keys-C8BlF3L2.d.ts} +4 -4
- package/dist/arazzo/index.d.ts +255 -0
- package/dist/arazzo/index.js +622 -0
- package/dist/{assistant-DwdpDH1q.d.ts → assistant-DBlFDZsi.d.ts} +5 -5
- package/dist/astro/index.d.ts +7 -7
- package/dist/astro/index.js +7 -7
- package/dist/asyncapi/index.d.ts +103 -0
- package/dist/asyncapi/index.js +569 -0
- package/dist/authorizer-ayxUDXXP.js +126 -0
- package/dist/authorizer-eiOjo-3l.d.ts +73 -0
- package/dist/better-result/index.d.ts +118 -0
- package/dist/better-result/index.js +64 -0
- package/dist/{bind-l4kAvYSv.js → bind-ButSzrHe.js} +1 -1
- package/dist/{bind-Bu_ZNa3W.d.ts → bind-CQ5mPyX1.d.ts} +3 -3
- package/dist/{block-events-CrT8r7Fe.js → block-events-DTxU5tfr.js} +18 -3
- package/dist/{block-fields-GFkxl4dP.js → block-fields-CroxUuF2.js} +3 -3
- package/dist/{block-fields-SJ6fEf3o.d.ts → block-fields-D1pfrcIY.d.ts} +2 -2
- package/dist/{block-helpers-CKtbFcRv.d.ts → block-helpers-C0Xj8War.d.ts} +2 -2
- package/dist/{block-helpers-DWHxHsEQ.js → block-helpers-Cy3pB96I.js} +41 -9
- package/dist/{block-hooks-BmjMyXTa.js → block-hooks-BPNMIlLl.js} +3 -3
- package/dist/{block-hooks-plbZ0AbJ.d.ts → block-hooks-DaOVC7SC.d.ts} +3 -3
- package/dist/{block-transport-BLr-ZgLc.js → block-transport-bAKh-dGc.js} +28 -2
- package/dist/{block-transport-DvaoPuZ9.d.ts → block-transport-inD4fFq-.d.ts} +24 -2
- package/dist/blocks/agents/index.d.ts +3 -3
- package/dist/blocks/agents/index.js +5 -4
- package/dist/blocks/ai-cache/index.d.ts +3 -3
- package/dist/blocks/ai-cache/index.js +3 -3
- package/dist/blocks/ai-chat/index.d.ts +9 -4
- package/dist/blocks/ai-chat/index.js +5 -5
- package/dist/blocks/ai-chat/react/index.d.ts +3 -3
- package/dist/blocks/ai-chat/react/index.js +5 -5
- package/dist/blocks/ai-files/index.d.ts +3 -3
- package/dist/blocks/ai-files/index.js +3 -3
- package/dist/blocks/ai-providers/index.d.ts +3 -3
- package/dist/blocks/ai-providers/index.js +8 -7
- package/dist/blocks/ai-tasks/index.d.ts +3 -3
- package/dist/blocks/ai-tasks/index.js +7 -6
- package/dist/blocks/announcements/index.d.ts +3 -3
- package/dist/blocks/announcements/index.js +3 -3
- package/dist/blocks/announcements/react/index.d.ts +3 -3
- package/dist/blocks/announcements/react/index.js +3 -3
- package/dist/blocks/api-keys/index.d.ts +5 -5
- package/dist/blocks/api-keys/index.js +8 -8
- package/dist/blocks/attachments/index.d.ts +12 -8
- package/dist/blocks/attachments/index.js +22 -13
- package/dist/blocks/audit/index.d.ts +21 -10
- package/dist/blocks/audit/index.js +30 -11
- package/dist/blocks/billing/index.d.ts +11 -9
- package/dist/blocks/billing/index.js +15 -15
- package/dist/blocks/comments/index.d.ts +8 -8
- package/dist/blocks/comments/index.js +8 -7
- package/dist/blocks/connectors/index.d.ts +3 -3
- package/dist/blocks/connectors/index.js +7 -6
- package/dist/blocks/data-lifecycle/index.d.ts +12 -8
- package/dist/blocks/data-lifecycle/index.js +13 -8
- package/dist/blocks/entitlements/index.d.ts +3 -3
- package/dist/blocks/entitlements/index.js +1 -1
- package/dist/blocks/flags/index.d.ts +4 -4
- package/dist/blocks/flags/index.js +4 -3
- package/dist/blocks/inbox/index.d.ts +3 -3
- package/dist/blocks/inbox/index.js +4 -5
- package/dist/blocks/inbox/react/index.d.ts +1 -1
- package/dist/blocks/inbox/react/index.js +1 -1
- package/dist/blocks/inbox/react/server.d.ts +1 -1
- package/dist/blocks/index.d.ts +10 -10
- package/dist/blocks/index.js +6 -6
- package/dist/blocks/jobs/index.d.ts +48 -32
- package/dist/blocks/jobs/index.js +44 -287
- package/dist/blocks/knowledge/index.d.ts +3 -3
- package/dist/blocks/knowledge/index.js +3 -3
- package/dist/blocks/memory/index.d.ts +4 -4
- package/dist/blocks/memory/index.js +7 -6
- package/dist/blocks/notifications/index.d.ts +11 -9
- package/dist/blocks/notifications/index.js +20 -25
- package/dist/blocks/notifications/react/index.d.ts +1 -1
- package/dist/blocks/notifications/react/index.js +1 -1
- package/dist/blocks/onboarding/index.d.ts +3 -3
- package/dist/blocks/onboarding/index.js +3 -3
- package/dist/blocks/onboarding/react/index.d.ts +2 -2
- package/dist/blocks/onboarding/react/index.js +2 -2
- package/dist/blocks/onboarding/react/server.d.ts +1 -1
- package/dist/blocks/organizations/index.d.ts +9 -9
- package/dist/blocks/organizations/index.js +11 -18
- package/dist/blocks/outbox/index.d.ts +2 -2
- package/dist/blocks/outbox/index.js +16 -25
- package/dist/blocks/profiles/index.d.ts +7 -7
- package/dist/blocks/profiles/index.js +7 -6
- package/dist/blocks/push/index.d.ts +4 -4
- package/dist/blocks/push/index.js +3 -3
- package/dist/blocks/settings/index.d.ts +4 -4
- package/dist/blocks/settings/index.js +7 -6
- package/dist/blocks/sso/index.d.ts +5 -5
- package/dist/blocks/sso/index.js +6 -5
- package/dist/blocks/usage/index.d.ts +3 -3
- package/dist/blocks/usage/index.js +5 -4
- package/dist/blocks/waitlist/index.d.ts +5 -5
- package/dist/blocks/waitlist/index.js +5 -4
- package/dist/blocks/webhooks/index.d.ts +22 -13
- package/dist/blocks/webhooks/index.js +41 -70
- package/dist/blocks/workflow-builder/index.d.ts +4 -4
- package/dist/blocks/workflow-builder/index.js +3 -3
- package/dist/blocks/workflow-builder/react/index.d.ts +4 -4
- package/dist/blocks/workflow-builder/react/index.js +4 -4
- package/dist/blocks/workflows/index.d.ts +3 -3
- package/dist/blocks/workflows/index.js +3 -3
- package/dist/blocks/workflows/react/index.d.ts +3 -3
- package/dist/blocks/workflows/react/index.js +3 -3
- package/dist/build-hPwk3_X5.js +1296 -0
- package/dist/{build-BXIzE6Xv.js → build-meLuYGri.js} +3 -3
- package/dist/casing-DdFWEtqr.js +16 -0
- package/dist/chat-sdk/index.d.ts +6 -6
- package/dist/chat-sdk/index.js +5 -4
- package/dist/chat-sdk/react/index.d.ts +1 -1
- package/dist/chat-sdk/react/server.d.ts +1 -1
- package/dist/{claims-DDBQT6BK.js → claims-0KZVT804.js} +1 -1
- package/dist/cli/add-1dc5wM5k.js +69 -0
- package/dist/cli/arazzo-1.0-BalU61-_.js +532 -0
- package/dist/cli/arazzo-1.1-Bnfasbun.js +705 -0
- package/dist/cli/asyncapi-3.0.0-C78dBjR6.js +5593 -0
- package/dist/cli/asyncapi-3.1.0-g-7aIfV1.js +5833 -0
- package/dist/cli/bin.js +4 -4
- package/dist/cli/cache-CIfA-jBV.js +483 -0
- package/dist/cli/{codemod-Bl_tQpHn.js → codemod-JVlTQQG2.js} +4 -4
- package/dist/cli/{command-CK14fP91.js → command-DV-StG1x.js} +5 -0
- package/dist/cli/{config-DU7EJImt.js → config-C2Pz2_4A.js} +7 -4
- package/dist/cli/config-DpbF8ML3.js +2 -0
- package/dist/cli/{config-NiPxAmUF.js → config-M-WzL9O2.js} +116 -18
- package/dist/cli/{db-DOBPt660.js → db-BkcfOlyB.js} +2 -1
- package/dist/cli/{diff-SjkO5rNr.js → diff-D1jGdb3Y.js} +1 -1
- package/dist/cli/{doctor-CVdnLahA.js → doctor-VcDtuusV.js} +317 -222
- package/dist/cli/emit-BHHfwUoT.js +1136 -0
- package/dist/cli/{env-qXgyMV6r.js → env-B--LMhEe.js} +13 -10
- package/dist/cli/env-vzBG90Um.js +2 -0
- package/dist/cli/{env-CJLbUVPB.js → env-zHJtMIBo.js} +11 -3
- package/dist/cli/{errors-4v4DTtda.js → errors-CqTLXe2M.js} +18 -2
- package/dist/cli/{fastest-levenshtein-CFN-lNDv.js → fastest-levenshtein-CF7BCi9l.js} +1 -1
- package/dist/cli/files-BVupXPIC.js +34 -0
- package/dist/cli/gen-DmVj3u4L.js +322 -0
- package/dist/cli/{init-Cr6arjXU.js → glue-C1UE8gQN.js} +16 -313
- package/dist/cli/index.d.ts +59 -31
- package/dist/cli/index.js +8 -6
- package/dist/cli/init-CVZ3s5kl.js +258 -0
- package/dist/cli/{introspect-Bzuv1HHj.js → introspect-BToGNfm-.js} +14 -14
- package/dist/cli/{io-DI1mTdSA.js → io-CFzJVJ68.js} +5 -1
- package/dist/cli/{keys-BGCnnb-s.js → keys-CJhtIxJ3.js} +4 -4
- package/dist/cli/metadata-DSRKCaf-.js +133 -0
- package/dist/cli/names-D6LrQnOv.js +6 -0
- package/dist/cli/openapi-3.0-t7xwkuRH.js +928 -0
- package/dist/cli/openapi-3.1-CVze7tBS.js +870 -0
- package/dist/cli/openapi-3.2-CFoMYM01.js +1031 -0
- package/dist/cli/{openapi-BlRJ18s3.js → openapi-DWa4Ir1q.js} +8 -14
- package/dist/cli/prompts-BdeVmVpg.js +2 -0
- package/dist/cli/{prompts-BNcNfAve.js → prompts-DZJB1nTw.js} +6 -6
- package/dist/cli/{rolldown-runtime-BPOCksWG.js → rolldown-runtime-CMFfr-1z.js} +3 -1
- package/dist/cli/run-DA6_lg3w.js +389 -0
- package/dist/cli/run-DuN1MX-7.js +705 -0
- package/dist/cli/scaffold-5DenHSxF.js +292 -0
- package/dist/cli/scaffold-CwQUMFRb.js +2 -0
- package/dist/cli/{seed-DQzqT7LP.js → seed-CzBmrGON.js} +14 -18
- package/dist/cli/seed-DOmit9Hq.js +2 -0
- package/dist/cli/{skills-QQs4q68J.js → skills-CnO8QFS7.js} +7 -6
- package/dist/cli/snapshot-Bstk6ulj.js +287 -0
- package/dist/cli/source-args-BYfq6imV.js +31 -0
- package/dist/cli/spec-CzosTYm3.js +7438 -0
- package/dist/cli/spec-T_0Bcyw7.js +2 -0
- package/dist/cli/{sql-B8csQPyn.js → sql-BKOOQAX3.js} +240 -218
- package/dist/cli/sql-DJrNDxQm.js +3 -0
- package/dist/cli/{style-C0NFdJRL.js → style-CB3vxgh0.js} +3 -3
- package/dist/cli/typegen-Demi5-VQ.js +486 -0
- package/dist/cli/validate-Ca13ktgz.js +7522 -0
- package/dist/cli/{version-Bp4fyubI.js → version-B4k0aUxS.js} +1 -1
- package/dist/client/index.d.ts +4 -3
- package/dist/client/index.js +60 -3
- package/dist/client/native/index.d.ts +3 -3
- package/dist/client/native/index.js +3 -3
- package/dist/{client-CI0Z2zWX.js → client-wxeTQFtB.js} +36 -3
- package/dist/{clone-BfgmLU90.js → clone-dN9XOL1K.js} +9 -1
- package/dist/{cloud-event-BnmD5fb9.js → cloud-event-CTh9Sr5w.js} +16 -2
- package/dist/{cloud-event-C1JCc1bH.d.ts → cloud-event-Dune0KI7.d.ts} +16 -2
- package/dist/{compiler-DY_wkj4R.d.ts → compiler-V1qvcST1.d.ts} +2 -2
- package/dist/{compose-BIBNgAnq.js → compose-BHej1acw.js} +3 -3
- package/dist/{composite-CpHLEo-G.d.ts → composite-CWAJTRBF.d.ts} +6 -6
- package/dist/{composite-C6I8ZyaF.js → composite-zTe0TCqj.js} +4 -4
- package/dist/config/index.d.ts +3 -4
- package/dist/config/index.js +4 -4
- package/dist/config-DlKvtt95.js +540 -0
- package/dist/{connector-Dv8kK0MO.d.ts → connector-CySQEFcW.d.ts} +1 -1
- package/dist/{connectors-CrpknU0P.d.ts → connectors--PGhmiu0.d.ts} +4 -4
- package/dist/{context-BCrWe7ow.d.ts → context-DsV2SueA.d.ts} +11 -2
- package/dist/context-nPDvQ-Zl.js +41 -0
- package/dist/credentials/index.d.ts +5 -5
- package/dist/credentials/index.js +9 -17
- package/dist/{cron-DVPUg5k3.js → cron-D25Ukpxy.js} +1 -1
- package/dist/cron-route-D2AN9SA1.js +24 -0
- package/dist/{csv-DCK-PT1n.js → csv-BZnHA1Py.js} +1 -1
- package/dist/{define-B-TVjC25.js → define-CFQcvM20.js} +263 -229
- package/dist/{define-CJJkkr1-.d.ts → define-DmcfoNXB.d.ts} +136 -111
- package/dist/edge/index.d.ts +66 -13
- package/dist/edge/index.js +65 -39
- package/dist/elysia/index.d.ts +1 -1
- package/dist/elysia/index.js +1 -1
- package/dist/{embeddings-C9KGQnXt.d.ts → embeddings-B4vhS-dY.d.ts} +1 -1
- package/dist/{ended-XjeGQ5XW.d.ts → ended-CcvcRqEd.d.ts} +7 -1
- package/dist/{entitlements-DRl6ZJUm.js → entitlements-BYFf0Cdh.js} +2 -2
- package/dist/{entitlements-BKSVGtrG.d.ts → entitlements-Ds8qoYZ-.d.ts} +1 -1
- package/dist/env/index.d.ts +1 -1
- package/dist/env/index.js +9 -2
- package/dist/{errors-B11Duf73.js → errors-2M6CKMP4.js} +5 -0
- package/dist/{errors-DLjJHPLK.js → errors-rZ7VIqp6.js} +2 -2
- package/dist/{escape-like-ImTK0ps_.d.ts → escape-like-DDWoHzh_.d.ts} +1 -1
- package/dist/eve/index.d.ts +5 -5
- package/dist/eve/index.js +5 -11
- package/dist/{eve-gT2Fpjut.d.ts → eve-CoAIcCkq.d.ts} +2 -2
- package/dist/events/index.d.ts +4 -4
- package/dist/events/index.js +7 -2
- package/dist/{events-DWDhx77e.d.ts → events-D1BOCll8.d.ts} +6 -4
- package/dist/{executor-Bq28caBo.js → executor-B-fD7DLt.js} +52 -35
- package/dist/executor-B_Hfobee.js +162 -0
- package/dist/{executor-BVBFM86G.d.ts → executor-CpxLPCiz.d.ts} +1 -1
- package/dist/{executor-CaWigTyR.d.ts → executor-DfEtf0cq.d.ts} +43 -27
- package/dist/{executor-DvsBbNBS.d.ts → executor-Drzu3dBK.d.ts} +2 -2
- package/dist/{executor-DbvExCFC.d.ts → executor-ngjKL_Pe.d.ts} +2 -2
- package/dist/expo/index.d.ts +4 -4
- package/dist/expo/index.js +6 -6
- package/dist/expo-sqlite/index.d.ts +3 -3
- package/dist/expo-sqlite/index.js +2 -2
- package/dist/extra-CGQ2_q3S.js +10 -0
- package/dist/{field-errors-BFOa7WhB.d.ts → field-errors-DIe9XYWL.d.ts} +17 -7
- package/dist/{field-errors-VF1yb8yI.js → field-errors-DZVRWRkf.js} +1 -1
- package/dist/format-DTXdu8ya.d.ts +70 -0
- package/dist/{framework-KIPvRQJU.d.ts → framework-148t1m3C.d.ts} +5 -5
- package/dist/{framework-BDCpJI7o.js → framework-3ey3QmrO.js} +2 -2
- package/dist/function-contract-BcZenXMO.d.ts +8 -0
- package/dist/{gateway-C1ssRHnf.d.ts → gateway-S9vicgeo.d.ts} +4 -4
- package/dist/{guards-BnzDvFrz.js → guards-6F2bCtQR.js} +3 -1
- package/dist/h3/index.d.ts +1 -1
- package/dist/h3/index.js +1 -1
- package/dist/h3/v1/index.d.ts +1 -1
- package/dist/h3/v1/index.js +1 -1
- package/dist/{message-CaKlqdsX.js → history-GH1HJWQV.js} +65 -13
- package/dist/hmac-DCud0myt.js +22 -0
- package/dist/hono/index.d.ts +19 -14
- package/dist/hono/index.js +21 -16
- package/dist/{hooks-1BTCJsiw.js → hooks-Bhza9Hnr.js} +68 -100
- package/dist/http-sbmBe5d2.js +25 -0
- package/dist/{inbox-i7E1ppo6.d.ts → inbox-Cd1KCEBL.d.ts} +3 -3
- package/dist/index-B72Rvv_j.d.ts +89 -0
- package/dist/{index-DunNRdnT.d.ts → index-BCHR4Ucl.d.ts} +4 -4
- package/dist/{index-CLg87OBW.d.ts → index-BUK7jUzR.d.ts} +6 -0
- package/dist/{config-D44Y7PAv.d.ts → index-Ba1SI-uO.d.ts} +625 -278
- package/dist/{index-D48jVS-N.d.ts → index-BfxOaOYs.d.ts} +4 -5
- package/dist/{index-ClmjK_o-.d.ts → index-CicIyqOe.d.ts} +4 -4
- package/dist/{index-ACiNPN4Z.d.ts → index-D69h4QqD.d.ts} +1 -1
- package/dist/index-DG2SUXDQ.d.ts +58 -0
- package/dist/{index-Bepi-Hgg.d.ts → index-DoNVLHOU.d.ts} +3 -3
- package/dist/{index-CdZKQF98.d.ts → index-R274XFlg.d.ts} +1 -1
- package/dist/{index-CewnYSpv.d.ts → index-_4R4b01v.d.ts} +8 -18
- package/dist/index.d.ts +89 -14
- package/dist/index.js +12 -11
- package/dist/{json-schema-CvER4kgT.js → json-schema-CT4tvrkA.js} +148 -102
- package/dist/{kit-Fm-Fv7q5.js → kit-BhHr9T9v.js} +36 -10
- package/dist/{kit-CkNzZUqv.d.ts → kit-W99LCPBS.d.ts} +13 -7
- package/dist/{knowledge-BXBbT0Tr.d.ts → knowledge-CAReFpRA.d.ts} +5 -5
- package/dist/{knowledge-CDmiMLew.js → knowledge-DnHtb64A.js} +4 -3
- package/dist/list/index.d.ts +1 -2
- package/dist/{list-query-BRt-zDF7.d.ts → list-query-D3JQeEL7.d.ts} +4 -4
- package/dist/mcp/index.d.ts +49 -19
- package/dist/mcp/index.js +158 -94
- package/dist/mcp/sdk/index.d.ts +38 -6
- package/dist/mcp/sdk/index.js +88 -6
- package/dist/{message-CfDoR0Y6.d.ts → message-B0fNJgq8.d.ts} +1 -2
- package/dist/{messages-B9-5887d.js → messages-CJoHHCWT.js} +4 -205
- package/dist/{mfa-Daak8ukG.d.ts → mfa-SZc9YYyb.d.ts} +1 -1
- package/dist/model-OgBxvk3N.d.ts +300 -0
- package/dist/model-messages-Cxw_Up4f.js +206 -0
- package/dist/model-messages-D4GZllOD.d.ts +34 -0
- package/dist/modules-DksjZyMW.js +77 -0
- package/dist/nestjs/index.d.ts +2 -2
- package/dist/nestjs/index.js +1 -1
- package/dist/next/index.d.ts +105 -55
- package/dist/next/index.js +204 -170
- package/dist/node/index.d.ts +2 -2
- package/dist/node/index.js +1 -1
- package/dist/{onboarding-BZGHYJks.d.ts → onboarding-LZvlK1P4.d.ts} +3 -3
- package/dist/openapi/index.d.ts +4 -2
- package/dist/openapi/index.js +21 -343
- package/dist/optional-peer-D1pi-skw.js +24 -0
- package/dist/orpc/index.d.ts +8 -8
- package/dist/orpc/index.js +21 -20
- package/dist/otel/index.d.ts +3 -3
- package/dist/otel/index.js +7 -7
- package/dist/{outbox-Cq7pPYvl.d.ts → outbox-DZfAvfzC.d.ts} +6 -6
- package/dist/overlay/index.d.ts +233 -0
- package/dist/overlay/index.js +554 -0
- package/dist/{plugin-FGY8UhYm.d.ts → plugin-CPK2HsbY.d.ts} +42 -3
- package/dist/plugins/actor/index.d.ts +1 -1
- package/dist/plugins/actor/index.js +1 -1
- package/dist/plugins/rules/index.d.ts +2 -2
- package/dist/plugins/rules/index.js +1 -1
- package/dist/plugins/soft-delete/index.d.ts +3 -3
- package/dist/plugins/soft-delete/index.js +9 -2
- package/dist/plugins/tenant/index.d.ts +7 -2
- package/dist/plugins/tenant/index.js +16 -2
- package/dist/plugins/timestamps/index.d.ts +1 -1
- package/dist/plugins/timestamps/index.js +8 -1
- package/dist/plugins/validation/index.d.ts +2 -2
- package/dist/plugins/validation/index.js +4 -4
- package/dist/{pool-CAu2nLrL.d.ts → pool-gkhbGp2E.d.ts} +2 -2
- package/dist/postgres/index.d.ts +4 -4
- package/dist/postgres/index.js +2 -1
- package/dist/{postgrest-BLVdEnfe.d.ts → postgrest-BUqLag2Q.d.ts} +1 -1
- package/dist/powersync/index.d.ts +5 -5
- package/dist/powersync/index.js +4 -4
- package/dist/powersync/react/index.d.ts +3 -3
- package/dist/powersync/react/index.js +1 -1
- package/dist/{problem-BreOl8b8.js → problem-CJvFeGu7.js} +13 -2
- package/dist/{problem-DD8LZFjc.d.ts → problem-TvGdxO1t.d.ts} +7 -1
- package/dist/{provider-Di3sRutW.js → provider-DxRTex4x.js} +1 -1
- package/dist/{provider-D-UEMvSD.d.ts → provider-ib9wzUDz.d.ts} +2 -2
- package/dist/query/index.d.ts +2 -2
- package/dist/query/index.js +1 -1
- package/dist/{query-BQ-NaZon.js → query-Ctz-qKRx.js} +1 -1
- package/dist/rate-limit-Bw7HgmFj.js +260 -0
- package/dist/react/index.d.ts +9 -9
- package/dist/react/index.js +4 -4
- package/dist/react/native/index.d.ts +1 -1
- package/dist/react/native/index.js +2 -2
- package/dist/react/server.d.ts +10 -10
- package/dist/react/server.js +3 -3
- package/dist/react/session.d.ts +2 -2
- package/dist/{react-F80mF4-t.js → react-Bmpo59D7.js} +4 -4
- package/dist/react-router/index.d.ts +6 -6
- package/dist/react-router/index.js +9 -11
- package/dist/{read-set-DuKWC9Mj.js → read-set-DAeWhqPf.js} +2 -2
- package/dist/realtime/index.d.ts +3 -3
- package/dist/realtime/index.js +30 -36
- package/dist/{refusal-DhSU2Vvr.d.ts → refusal-CFI8-5nf.d.ts} +4 -1
- package/dist/{refusal-CeJWxmkH.js → refusal-K78A1Vmq.js} +5 -5
- package/dist/{resolve-tJZY3FEa.js → resolve-Bvgf3ut_.js} +131 -42
- package/dist/{resolve-ChTYeTEl.d.ts → resolve-MxXVWyhd.d.ts} +12 -8
- package/dist/resource--vTrBe6I.d.ts +103 -0
- package/dist/resource-BqNqlYg9.js +91 -0
- package/dist/resource-DA811u_4.js +463 -0
- package/dist/resource-execute-rbKvuCsY.d.ts +12 -0
- package/dist/resource-schemas-BJ518zFH.js +79 -0
- package/dist/resource-types-CqB6GWGT.d.ts +141 -0
- package/dist/resources-BVYPnuLo.js +56 -0
- package/dist/resources-DZSk8tXJ.d.ts +7 -0
- package/dist/{respond-DprrgyXX.d.ts → respond-Cw-zanCm.d.ts} +3 -3
- package/dist/{respond-BUgsXNgk.js → respond-volM3ByS.js} +4 -4
- package/dist/{result-D7y2fT87.d.ts → result-BchM1XZn.d.ts} +7 -1
- package/dist/{result-DzUbqgdW.js → result-DEqHCMKP.js} +1 -1
- package/dist/server/index.d.ts +81 -19
- package/dist/server/index.js +16 -14
- package/dist/{server-ZSJ9rCcV.d.ts → server-types-CrAmZ8jv.d.ts} +110 -36
- package/dist/{shared-CxWmcyqB.js → shared-DHjhfRdV.js} +2 -15
- package/dist/shared-DTneRoxi.js +14 -0
- package/dist/{sign-in-Cb1mwv6X.js → sign-in-D_yoP0PF.js} +1 -1
- package/dist/signatures-BRS_p3WD.d.ts +34 -0
- package/dist/signatures-DsWv_bYR.js +103 -0
- package/dist/{signers-4y62_VIi.d.ts → signers-cpdmZYrv.d.ts} +1 -1
- package/dist/solid/index.d.ts +9 -18
- package/dist/solid/index.js +2 -2
- package/dist/solid-start/index.d.ts +6 -6
- package/dist/solid-start/index.js +7 -7
- package/dist/spec/index.d.ts +134 -0
- package/dist/spec/index.js +353 -0
- package/dist/{spec-pins-C89s6DyW.d.ts → spec-pins-CwzDY25w.d.ts} +18 -1
- package/dist/{spec-pins--j6mTok4.js → spec-pins-DsLfUH7l.js} +14 -1
- package/dist/sql/index.d.ts +145 -119
- package/dist/sql/index.js +19921 -19798
- package/dist/{executor-De1Of3m3.js → sql-CwuqaQ4Y.js} +34 -169
- package/dist/ssr/index.d.ts +4 -4
- package/dist/ssr/index.js +3 -2
- package/dist/{standard-BK0cqJ7y.js → standard-DkzZUneg.js} +2 -2
- package/dist/{standard-CYsm7xpT.d.ts → standard-lmkbOtPB.d.ts} +1 -1
- package/dist/{stats-D_AD9GGu.js → stats-DhU78Ctf.js} +8 -4
- package/dist/storage/index.d.ts +4 -6
- package/dist/storage/index.js +16 -17
- package/dist/{bucket-Cl46E3jS.d.ts → storage-api-CB7Zl1Ci.d.ts} +243 -8
- package/dist/{store-CGjgWu5n.d.ts → store-DsIYEBnv.d.ts} +1 -1
- package/dist/streams/index.d.ts +4 -4
- package/dist/streams/index.js +5 -4
- package/dist/streams/redis/index.d.ts +1 -1
- package/dist/streams/redis/index.js +5 -11
- package/dist/{stripe-BMj5LtsT.js → stripe-v-Y2lmop.js} +2 -8
- package/dist/supabase-mcp-C6tMoEjn.d.ts +43 -0
- package/dist/supabase-mcp-Cpn5A4i-.js +28 -0
- package/dist/{support-DWwzVf-O.js → support-D1pFFouF.js} +71 -35
- package/dist/{support-view-CVOJJLpc.d.ts → support-view-scqMgtOo.d.ts} +1 -1
- package/dist/svelte/index.d.ts +8 -17
- package/dist/svelte/index.js +2 -2
- package/dist/sveltekit/index.d.ts +7 -7
- package/dist/sveltekit/index.js +10 -12
- package/dist/table-schema-htM_SbCW.js +286 -0
- package/dist/{tags-Cx-LnIQP.d.ts → tags-BO9LjtWG.d.ts} +1 -1
- package/dist/tanstack-db/index.d.ts +2 -2
- package/dist/tanstack-db/supabase/index.d.ts +52 -0
- package/dist/tanstack-db/supabase/index.js +97 -0
- package/dist/tanstack-start/index.d.ts +6 -6
- package/dist/tanstack-start/index.js +8 -12
- package/dist/{tee-CoEppCER.js → tee-Cb98Vn3b.js} +1 -1
- package/dist/{template--jDkl3UP.js → template-lPVh-EwW.js} +11 -2
- package/dist/{temporal-required-BVvW7SYJ.js → temporal-required-BtynQtM-.js} +1 -1
- package/dist/{tenant-BxNFk9bx.d.ts → tenant-CM368LXb.d.ts} +2 -2
- package/dist/testing/index.d.ts +249 -118
- package/dist/testing/index.js +1418 -870
- package/dist/ttl-cache-XzZ-Q2eX.js +29 -0
- package/dist/types-BRTSpOIh.js +5 -0
- package/dist/{types-C05bxW-W.d.ts → types-Bb_4-vdW.d.ts} +4 -4
- package/dist/{types-AYOvcyep.d.ts → types-CD6yCDx3.d.ts} +5 -5
- package/dist/{types-6rocye-y.d.ts → types-CbOUc5IH.d.ts} +4 -4
- package/dist/{types-6BdhkmZe.d.ts → types-CoE5Zwy4.d.ts} +8 -0
- package/dist/{types-DGs5L0VN.d.ts → types-DSJ3-m9X.d.ts} +4 -4
- package/dist/{queue-CLJurhdy.d.ts → types-D__3EN0q.d.ts} +17 -19
- package/dist/{usage-CrvrL2vw.d.ts → usage-D0NNUFfr.d.ts} +3 -3
- package/dist/{vault-wlbBhqm7.d.ts → vault-BpmApxxW.d.ts} +3 -3
- package/dist/vercel-connect/index.d.ts +1 -1
- package/dist/vercel-connect/index.js +5 -11
- package/dist/{verify-DPuWngD4.d.ts → verify-C91Wyp40.d.ts} +5 -35
- package/dist/verify-CJbYfADA.js +124 -0
- package/dist/{version--AolB5ej.js → version-Cq8gfDbd.js} +1 -1
- package/dist/{view-BeFcRV6G.js → view-D5ryq3gz.js} +1 -1
- package/dist/{view-CF7ihnkg.d.ts → view-TpXEUcVN.d.ts} +3 -3
- package/dist/vue/index.d.ts +9 -18
- package/dist/vue/index.js +2 -2
- package/dist/{watch-Xuxrvxq-.js → watch-BcvtAHOd.js} +2 -2
- package/dist/{watch-DI34G86j.d.ts → watch-COzRWvVN.d.ts} +23 -9
- package/dist/{wire-DtZQ4sdE.js → wire-Df3EWkG8.js} +2 -2
- package/dist/{workflow-builder-DJ1oHn8g.js → workflow-builder-CHqHpAVt.js} +6 -5
- package/dist/workflow-sdk/builder/index.d.ts +3 -3
- package/dist/workflow-sdk/index.d.ts +1 -1
- package/dist/workflow-sdk/world/index.d.ts +23 -17
- package/dist/workflow-sdk/world/index.js +59 -76
- package/dist/{workflow-sdk-B3yLD6Br.d.ts → workflow-sdk-DTZyrvNo.d.ts} +3 -3
- package/dist/{workflow-sdk-world-D-prir6O.js → workflow-sdk-world-CMV1ahFW.js} +528 -526
- package/dist/{workflows-B0j9WKPu.d.ts → workflows-CcpCBfIe.d.ts} +3 -3
- package/dist/{workflows-wu1WWBn7.js → workflows-IvxzG2cl.js} +5 -4
- package/package.json +54 -3
- package/schemas/config-v1.json +243 -0
- package/schemas/doctor-report-v1.json +4 -1
- package/schemas/spec-manifest-v1.json +95 -0
- package/skills/better-supabase/SKILL.md +8 -4
- package/skills/better-supabase/references/troubleshooting.md +20 -20
- package/skills/better-supabase-api/references/expo.md +6 -3
- package/skills/better-supabase-api/references/powersync.md +2 -1
- package/skills/better-supabase-auth/SKILL.md +8 -4
- package/dist/cli/config-B9HkL8nF.js +0 -2
- package/dist/cli/gen-AIf4MREI.js +0 -3100
- package/dist/cli/gen-DSrahEdX.js +0 -2
- package/dist/cli/prompts-BTYQGunc.js +0 -2
- package/dist/cli/run-BO052mki.js +0 -361
- package/dist/config-Dn7F5k9A.js +0 -202
- package/dist/history-BZih6SFP.js +0 -64
- package/dist/index-BkWT_uBO.d.ts +0 -51
- package/dist/index-Bxih3l0u.d.ts +0 -81
- package/dist/index-CaxrMD1A.d.ts +0 -1
- package/dist/index-DQh4VCc9.d.ts +0 -98
- package/dist/keys-4MnkWTTh.js +0 -35
- package/dist/messages-DYP0sUTe.d.ts +0 -59
- package/dist/modules-dxrVK3ID.js +0 -228
- package/dist/path-Cv__-OTj.d.ts +0 -17
- package/dist/resource-BsvzCMlX.js +0 -212
- package/dist/resource-IPS5xi9q.d.ts +0 -74
- package/dist/template-CwO38Do8.d.ts +0 -6
- package/dist/verify-DL41hbvY.js +0 -232
- package/dist/cli/{read-sets-CETOSFx4.js → read-sets-DjJrm8Wj.js} +1 -1
|
@@ -0,0 +1,206 @@
|
|
|
1
|
+
import { n as isRecord } from "./guards-6F2bCtQR.js";
|
|
2
|
+
import { a as meta } from "./messages-CJoHHCWT.js";
|
|
3
|
+
//#region src/ai-sdk/model-messages.ts
|
|
4
|
+
const FETCHABLE_URL = /^(?:https?|data):/u;
|
|
5
|
+
function fileUrl(data) {
|
|
6
|
+
if (data instanceof URL) return data.href;
|
|
7
|
+
if (typeof data === "string") return FETCHABLE_URL.test(data) ? data : void 0;
|
|
8
|
+
if (isRecord(data) && data["type"] === "url") return fileUrl(data["url"]);
|
|
9
|
+
}
|
|
10
|
+
function outputOf(output) {
|
|
11
|
+
switch (output.type) {
|
|
12
|
+
case "text":
|
|
13
|
+
case "json":
|
|
14
|
+
case "content": return {
|
|
15
|
+
output: output.value,
|
|
16
|
+
isError: false
|
|
17
|
+
};
|
|
18
|
+
case "error-text":
|
|
19
|
+
case "error-json": return {
|
|
20
|
+
output: output.value,
|
|
21
|
+
isError: true
|
|
22
|
+
};
|
|
23
|
+
case "execution-denied": {
|
|
24
|
+
const reason = output.reason ?? "The tool call was denied.";
|
|
25
|
+
return {
|
|
26
|
+
output: reason,
|
|
27
|
+
isError: true,
|
|
28
|
+
denied: reason
|
|
29
|
+
};
|
|
30
|
+
}
|
|
31
|
+
default: return output;
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
/** Collects one turn's parts, keeping one approval part per tool call. */
|
|
35
|
+
var TurnParts = class {
|
|
36
|
+
parts = [];
|
|
37
|
+
#approvalAt = /* @__PURE__ */ new Map();
|
|
38
|
+
#callOf = /* @__PURE__ */ new Map();
|
|
39
|
+
constructor(approvals) {
|
|
40
|
+
for (const approval of approvals) this.#callOf.set(approval.approvalId, approval.toolCallId);
|
|
41
|
+
}
|
|
42
|
+
approval(part) {
|
|
43
|
+
this.#callOf.set(part.approvalId, part.toolCallId);
|
|
44
|
+
const at = this.#approvalAt.get(part.toolCallId);
|
|
45
|
+
if (at === void 0) {
|
|
46
|
+
this.#approvalAt.set(part.toolCallId, this.parts.length);
|
|
47
|
+
this.parts.push(part);
|
|
48
|
+
} else this.parts[at] = part;
|
|
49
|
+
}
|
|
50
|
+
callOf(approvalId) {
|
|
51
|
+
return this.#callOf.get(approvalId);
|
|
52
|
+
}
|
|
53
|
+
result(toolCallId, toolName, output) {
|
|
54
|
+
const result = outputOf(output);
|
|
55
|
+
if (result.denied !== void 0) {
|
|
56
|
+
const at = this.#approvalAt.get(toolCallId);
|
|
57
|
+
const current = at === void 0 ? void 0 : this.parts[at];
|
|
58
|
+
this.approval({
|
|
59
|
+
type: "tool-approval",
|
|
60
|
+
toolCallId,
|
|
61
|
+
approvalId: current?.type === "tool-approval" ? current.approvalId : `approval-${toolCallId}`,
|
|
62
|
+
state: "denied",
|
|
63
|
+
reason: result.denied
|
|
64
|
+
});
|
|
65
|
+
}
|
|
66
|
+
this.parts.push({
|
|
67
|
+
type: "tool-result",
|
|
68
|
+
toolCallId,
|
|
69
|
+
toolName,
|
|
70
|
+
output: result.output,
|
|
71
|
+
...result.isError ? { isError: true } : {}
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
};
|
|
75
|
+
function assistantParts(message, turn) {
|
|
76
|
+
if (typeof message.content === "string") {
|
|
77
|
+
if (message.content !== "") turn.parts.push({
|
|
78
|
+
type: "text",
|
|
79
|
+
text: message.content,
|
|
80
|
+
state: "done"
|
|
81
|
+
});
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
for (const part of message.content) switch (part.type) {
|
|
85
|
+
case "text":
|
|
86
|
+
case "reasoning":
|
|
87
|
+
turn.parts.push({
|
|
88
|
+
type: part.type,
|
|
89
|
+
text: part.text,
|
|
90
|
+
state: "done"
|
|
91
|
+
});
|
|
92
|
+
break;
|
|
93
|
+
case "file": {
|
|
94
|
+
const url = fileUrl(part.data);
|
|
95
|
+
if (url !== void 0) turn.parts.push({
|
|
96
|
+
type: "file",
|
|
97
|
+
mediaType: part.mediaType,
|
|
98
|
+
url,
|
|
99
|
+
...part.filename === void 0 ? {} : { filename: part.filename }
|
|
100
|
+
});
|
|
101
|
+
break;
|
|
102
|
+
}
|
|
103
|
+
case "reasoning-file": {
|
|
104
|
+
const url = fileUrl(part.data);
|
|
105
|
+
if (url !== void 0) turn.parts.push({
|
|
106
|
+
type: "data",
|
|
107
|
+
name: "ui.reasoning-file",
|
|
108
|
+
data: {
|
|
109
|
+
mediaType: part.mediaType,
|
|
110
|
+
url
|
|
111
|
+
}
|
|
112
|
+
});
|
|
113
|
+
break;
|
|
114
|
+
}
|
|
115
|
+
case "custom":
|
|
116
|
+
turn.parts.push({
|
|
117
|
+
type: "data",
|
|
118
|
+
name: "ui.custom",
|
|
119
|
+
data: { kind: part.kind }
|
|
120
|
+
});
|
|
121
|
+
break;
|
|
122
|
+
case "tool-call":
|
|
123
|
+
turn.parts.push({
|
|
124
|
+
type: "tool-call",
|
|
125
|
+
toolCallId: part.toolCallId,
|
|
126
|
+
toolName: part.toolName,
|
|
127
|
+
input: part.input ?? {},
|
|
128
|
+
...part.providerExecuted === void 0 ? {} : { providerExecuted: part.providerExecuted }
|
|
129
|
+
});
|
|
130
|
+
break;
|
|
131
|
+
case "tool-result":
|
|
132
|
+
turn.result(part.toolCallId, part.toolName, part.output);
|
|
133
|
+
break;
|
|
134
|
+
case "tool-approval-request":
|
|
135
|
+
turn.approval({
|
|
136
|
+
type: "tool-approval",
|
|
137
|
+
toolCallId: part.toolCallId,
|
|
138
|
+
approvalId: part.approvalId,
|
|
139
|
+
state: "requested"
|
|
140
|
+
});
|
|
141
|
+
break;
|
|
142
|
+
default: return part;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
function toolMessageParts(message, turn) {
|
|
146
|
+
for (const part of message.content) switch (part.type) {
|
|
147
|
+
case "tool-result":
|
|
148
|
+
turn.result(part.toolCallId, part.toolName, part.output);
|
|
149
|
+
break;
|
|
150
|
+
case "tool-approval-response": {
|
|
151
|
+
const toolCallId = turn.callOf(part.approvalId);
|
|
152
|
+
if (toolCallId !== void 0) turn.approval({
|
|
153
|
+
type: "tool-approval",
|
|
154
|
+
toolCallId,
|
|
155
|
+
approvalId: part.approvalId,
|
|
156
|
+
state: part.approved ? "approved" : "denied",
|
|
157
|
+
...part.reason === void 0 ? {} : { reason: part.reason }
|
|
158
|
+
});
|
|
159
|
+
break;
|
|
160
|
+
}
|
|
161
|
+
default: return part;
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* One answer in the canonical form, from the model messages an agent added
|
|
166
|
+
* in a turn (`result.messages` after the history). Each assistant message
|
|
167
|
+
* starts a step whose id is `<id>:<n>`, so saving the answer again after
|
|
168
|
+
* another step updates the same message.
|
|
169
|
+
*/
|
|
170
|
+
function fromModelMessages(id, messages, options = {}) {
|
|
171
|
+
const approvals = options.approvals ?? [];
|
|
172
|
+
const turn = new TurnParts(approvals);
|
|
173
|
+
let step = 0;
|
|
174
|
+
for (const message of messages) if (message.role === "assistant") {
|
|
175
|
+
turn.parts.push({
|
|
176
|
+
type: "step",
|
|
177
|
+
boundary: "start",
|
|
178
|
+
stepId: `${id}:${step}`
|
|
179
|
+
});
|
|
180
|
+
step += 1;
|
|
181
|
+
assistantParts(message, turn);
|
|
182
|
+
} else if (message.role === "tool") toolMessageParts(message, turn);
|
|
183
|
+
for (const approval of approvals) turn.approval({
|
|
184
|
+
type: "tool-approval",
|
|
185
|
+
toolCallId: approval.toolCallId,
|
|
186
|
+
approvalId: approval.approvalId,
|
|
187
|
+
state: approval.state,
|
|
188
|
+
...approval.reason === void 0 ? {} : { reason: approval.reason }
|
|
189
|
+
});
|
|
190
|
+
for (const source of options.sources ?? []) turn.parts.push({
|
|
191
|
+
type: "source",
|
|
192
|
+
sourceType: source.sourceType,
|
|
193
|
+
id: source.id,
|
|
194
|
+
...source.url === void 0 ? {} : { url: source.url },
|
|
195
|
+
...source.title === void 0 ? {} : { title: source.title },
|
|
196
|
+
...source.mediaType === void 0 ? {} : { mediaType: source.mediaType },
|
|
197
|
+
...meta(source.providerMetadata)
|
|
198
|
+
});
|
|
199
|
+
return {
|
|
200
|
+
id,
|
|
201
|
+
role: "assistant",
|
|
202
|
+
parts: turn.parts
|
|
203
|
+
};
|
|
204
|
+
}
|
|
205
|
+
//#endregion
|
|
206
|
+
export { fromModelMessages as t };
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { f as AiToolApprovalPart, i as AiMessage } from "./message-B0fNJgq8.js";
|
|
2
|
+
import { ModelMessage } from "ai";
|
|
3
|
+
//#region src/ai-sdk/model-messages.d.ts
|
|
4
|
+
/** A source a model step cited, as `StepResult.sources` holds it. */
|
|
5
|
+
interface ModelSource {
|
|
6
|
+
readonly sourceType: "url" | "document";
|
|
7
|
+
readonly id: string;
|
|
8
|
+
readonly url?: string;
|
|
9
|
+
readonly title?: string;
|
|
10
|
+
readonly mediaType?: string;
|
|
11
|
+
readonly providerMetadata?: unknown;
|
|
12
|
+
}
|
|
13
|
+
/** An approval decision the messages may no longer carry. */
|
|
14
|
+
interface ModelApproval {
|
|
15
|
+
readonly approvalId: string;
|
|
16
|
+
readonly toolCallId: string;
|
|
17
|
+
readonly state: AiToolApprovalPart["state"];
|
|
18
|
+
readonly reason?: string;
|
|
19
|
+
}
|
|
20
|
+
interface FromModelMessagesOptions {
|
|
21
|
+
/** The sources the steps cited; model messages don't keep them. */
|
|
22
|
+
readonly sources?: readonly ModelSource[];
|
|
23
|
+
/** Decisions to apply over the approval parts the messages hold. */
|
|
24
|
+
readonly approvals?: readonly ModelApproval[];
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* One answer in the canonical form, from the model messages an agent added
|
|
28
|
+
* in a turn (`result.messages` after the history). Each assistant message
|
|
29
|
+
* starts a step whose id is `<id>:<n>`, so saving the answer again after
|
|
30
|
+
* another step updates the same message.
|
|
31
|
+
*/
|
|
32
|
+
declare function fromModelMessages(id: string, messages: readonly ModelMessage[], options?: FromModelMessagesOptions): AiMessage;
|
|
33
|
+
//#endregion
|
|
34
|
+
export { fromModelMessages as i, ModelApproval as n, ModelSource as r, FromModelMessagesOptions as t };
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
//#region src/config/defaults.ts
|
|
2
|
+
/**
|
|
3
|
+
* Every default `resolveConfig` fills in. Other modules (the SQL module
|
|
4
|
+
* registry, the CLI) read their fallbacks from here instead of repeating the
|
|
5
|
+
* literals.
|
|
6
|
+
*/
|
|
7
|
+
const CONFIG_DEFAULTS = {
|
|
8
|
+
output: "src/lib/supabase/generated.ts",
|
|
9
|
+
schemas: ["public"],
|
|
10
|
+
casing: "snake",
|
|
11
|
+
postgrestVersion: "13",
|
|
12
|
+
codecs: {
|
|
13
|
+
timestamptz: "string",
|
|
14
|
+
int8: "number",
|
|
15
|
+
numeric: "number"
|
|
16
|
+
},
|
|
17
|
+
sql: {
|
|
18
|
+
dir: "supabase/schemas",
|
|
19
|
+
prefix: "900_better_supabase",
|
|
20
|
+
testsDir: "supabase/tests"
|
|
21
|
+
},
|
|
22
|
+
seed: {
|
|
23
|
+
entry: "supabase/seed.ts",
|
|
24
|
+
output: "supabase/seeds/000_better_supabase.sql"
|
|
25
|
+
},
|
|
26
|
+
openapi: {
|
|
27
|
+
entry: "src/lib/openapi.ts",
|
|
28
|
+
output: "openapi.json"
|
|
29
|
+
},
|
|
30
|
+
specs: { failOn: "error" },
|
|
31
|
+
doctor: {
|
|
32
|
+
format: "text",
|
|
33
|
+
sources: ["src/**/*.{ts,tsx}"],
|
|
34
|
+
policyHelperLimit: 5
|
|
35
|
+
},
|
|
36
|
+
gen: { watchInterval: 2e3 },
|
|
37
|
+
env: { output: ".env.local" }
|
|
38
|
+
};
|
|
39
|
+
//#endregion
|
|
40
|
+
//#region src/config/json.ts
|
|
41
|
+
/**
|
|
42
|
+
* The JSON Schema document for a `json[...].schema` entry. A Standard
|
|
43
|
+
* Schema converts for `target` (2020-12 by default); a JSON Schema object is
|
|
44
|
+
* returned as it is.
|
|
45
|
+
*/
|
|
46
|
+
function resolveJsonSchema(source, target = "draft-2020-12") {
|
|
47
|
+
const standard = source["~standard"];
|
|
48
|
+
if (standard === void 0) return source;
|
|
49
|
+
const jsonSchema = standard.jsonSchema;
|
|
50
|
+
if (typeof jsonSchema?.input !== "function") throw new TypeError("json[...].schema: this Standard Schema library does not implement Standard JSON Schema; pass a JSON Schema object instead");
|
|
51
|
+
return jsonSchema.input({ target });
|
|
52
|
+
}
|
|
53
|
+
//#endregion
|
|
54
|
+
//#region src/config/modules.ts
|
|
55
|
+
/** URL tenancy: the tenant comes from the request (a slug), not a stored setting. */
|
|
56
|
+
const DEFAULT_ACTIVE_TENANT = "resolver";
|
|
57
|
+
const MODULE_SCHEMA = "better_supabase";
|
|
58
|
+
function resolveModule(config = {}) {
|
|
59
|
+
return {
|
|
60
|
+
mode: config.mode ?? "managed",
|
|
61
|
+
schema: config.schema ?? MODULE_SCHEMA,
|
|
62
|
+
tables: config.tables ?? {},
|
|
63
|
+
columns: config.columns ?? {},
|
|
64
|
+
...config.idType === void 0 ? {} : { idType: config.idType },
|
|
65
|
+
permissions: config.permissions ?? {},
|
|
66
|
+
options: config.options ?? {},
|
|
67
|
+
hooks: {
|
|
68
|
+
schema: config.hooks?.schema ?? "public",
|
|
69
|
+
functions: config.hooks?.functions ?? {}
|
|
70
|
+
},
|
|
71
|
+
events: config.events ?? true,
|
|
72
|
+
audit: config.audit ?? true,
|
|
73
|
+
...config.api === void 0 ? {} : { api: typeof config.api === "string" ? { schema: config.api } : config.api }
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
//#endregion
|
|
77
|
+
export { CONFIG_DEFAULTS as i, resolveModule as n, resolveJsonSchema as r, DEFAULT_ACTIVE_TENANT as t };
|
package/dist/nestjs/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { n as RouteGuardOptions } from "../refusal-
|
|
1
|
+
import { n as RouteGuardOptions } from "../refusal-CFI8-5nf.js";
|
|
2
2
|
import { t as Validated } from "../shared-DDSjEGDR.js";
|
|
3
|
-
import { l as ToNodeOptions } from "../index-
|
|
3
|
+
import { l as ToNodeOptions } from "../index-R274XFlg.js";
|
|
4
4
|
import { AnyEntry } from "@supabase/middleware";
|
|
5
5
|
import { IncomingMessage, ServerResponse } from "node:http";
|
|
6
6
|
//#region src/nestjs/index.d.ts
|
package/dist/nestjs/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as routeRefusal, n as guardedLocals, t as errorResponse } from "../refusal-
|
|
1
|
+
import { a as routeRefusal, n as guardedLocals, t as errorResponse } from "../refusal-K78A1Vmq.js";
|
|
2
2
|
import { t as beforeRoute } from "../before-route-CnR0C0Jr.js";
|
|
3
3
|
import { t as applyWebHeaders } from "../node-headers-C71zNQHe.js";
|
|
4
4
|
import { n as toWebRequest, t as sendWebResponse } from "../http-Cv4T29xh.js";
|
package/dist/next/index.d.ts
CHANGED
|
@@ -1,16 +1,20 @@
|
|
|
1
|
-
import { a as AnyModels, i as AnyFunctions } from "../types-
|
|
2
|
-
import { r as AuthState } from "../resolve-
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { n as AmrEntry, s as Impersonator, t as Aal } from "../mfa-
|
|
6
|
-
import { t as
|
|
7
|
-
import {
|
|
8
|
-
import { n as
|
|
9
|
-
import {
|
|
10
|
-
import { r as
|
|
11
|
-
import { r as
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
1
|
+
import { a as AnyModels, i as AnyFunctions } from "../types-CoE5Zwy4.js";
|
|
2
|
+
import { r as AuthState } from "../resolve-MxXVWyhd.js";
|
|
3
|
+
import { s as PermissionRef, t as AnyAuthorizer } from "../authorizer-eiOjo-3l.js";
|
|
4
|
+
import { Wt as DbStats, at as QuerySpec, q as ReadSet, s as CacheAdapter, t as BetterSupabase } from "../define-DmcfoNXB.js";
|
|
5
|
+
import { n as AmrEntry, s as Impersonator, t as Aal } from "../mfa-SZc9YYyb.js";
|
|
6
|
+
import { D as SupportSessions, E as SupportPolicy, O as SupportStartRequest, T as SupportOptions, i as ServerContext, k as supportSessions, n as ContextOptions, s as ServerOptions, t as BetterServer, x as ActiveSupport } from "../server-types-CrAmZ8jv.js";
|
|
7
|
+
import { t as tenantOf } from "../tenant-CM368LXb.js";
|
|
8
|
+
import { n as toSession, t as AuthSession } from "../view-TpXEUcVN.js";
|
|
9
|
+
import { n as AuthKind, r as GuardOptions } from "../respond-Cw-zanCm.js";
|
|
10
|
+
import { a as AuthorizedContext, c as Unwrapped, i as AuthorizeOptions, n as ActionParsed, r as ActionResult, t as ActionInput } from "../kit-W99LCPBS.js";
|
|
11
|
+
import { r as LiveCountSeed, t as CountRunner } from "../index-BCHR4Ucl.js";
|
|
12
|
+
import { r as MembershipClaim } from "../entitlements-Ds8qoYZ-.js";
|
|
13
|
+
import { i as ResourceContext, l as ResourceRouteOptions, o as ResourceHooks, r as ResourceAction, t as ActionArgs } from "../resource-types-CqB6GWGT.js";
|
|
14
|
+
import { t as ResourceMap } from "../resources-DZSk8tXJ.js";
|
|
15
|
+
import { t as defineAction } from "../resource-execute-rbKvuCsY.js";
|
|
16
|
+
import { i as tagFor, t as TagOptions } from "../tags-BO9LjtWG.js";
|
|
17
|
+
import { n as supportOf, t as SupportView } from "../support-view-scqMgtOo.js";
|
|
14
18
|
import { NextRequest } from "next/server.js";
|
|
15
19
|
import { StandardSchemaV1 } from "@standard-schema/spec";
|
|
16
20
|
//#region src/next/collector.d.ts
|
|
@@ -21,7 +25,31 @@ interface DbBudget {
|
|
|
21
25
|
readonly waves?: number;
|
|
22
26
|
}
|
|
23
27
|
//#endregion
|
|
24
|
-
//#region src/next/
|
|
28
|
+
//#region src/next/resources.d.ts
|
|
29
|
+
interface NextResourcesOptions extends GuardOptions {
|
|
30
|
+
/** The catch-all route's path, e.g. `/api` for `app/api/[...path]/route.ts`. */
|
|
31
|
+
readonly basePath?: string;
|
|
32
|
+
/**
|
|
33
|
+
* Refresh an expired session cookie and send the new cookies. Off by
|
|
34
|
+
* default because the proxy refreshes everything it matches.
|
|
35
|
+
*/
|
|
36
|
+
readonly refresh?: boolean;
|
|
37
|
+
}
|
|
38
|
+
/** A route handler of the resources' catch-all route. */
|
|
39
|
+
type NextResourceHandler = (request: Request) => Promise<Response>;
|
|
40
|
+
/**
|
|
41
|
+
* The exports of `app/api/[...path]/route.ts`:
|
|
42
|
+
* `export const { GET, POST, PATCH, PUT, DELETE } = bs.resources({ ... })`.
|
|
43
|
+
*/
|
|
44
|
+
interface NextResourceRoutes {
|
|
45
|
+
readonly GET: NextResourceHandler;
|
|
46
|
+
readonly POST: NextResourceHandler;
|
|
47
|
+
readonly PATCH: NextResourceHandler;
|
|
48
|
+
readonly PUT: NextResourceHandler;
|
|
49
|
+
readonly DELETE: NextResourceHandler;
|
|
50
|
+
}
|
|
51
|
+
//#endregion
|
|
52
|
+
//#region src/next/types.d.ts
|
|
25
53
|
interface NextOptions extends ServerOptions {
|
|
26
54
|
/** Invalidate `tagFor(table)` cache tags after mutations. Defaults to true. */
|
|
27
55
|
readonly cacheTags?: boolean;
|
|
@@ -40,8 +68,6 @@ interface NextDebugOptions {
|
|
|
40
68
|
/** Where `bs.debugRoute()` is mounted. Defaults to `/api/bs-stats`. */
|
|
41
69
|
readonly route?: string;
|
|
42
70
|
}
|
|
43
|
-
/** Response header with the URL of the request's totals on `bs.debugRoute()`. */
|
|
44
|
-
export declare const STATS_URL_HEADER = "x-bs-stats";
|
|
45
71
|
interface ProxyOptions<C = unknown, P = unknown> {
|
|
46
72
|
/**
|
|
47
73
|
* Another middleware to compose with, such as next-intl's. It runs on the
|
|
@@ -84,7 +110,7 @@ interface EndedSessionOptions {
|
|
|
84
110
|
readonly banned?: string;
|
|
85
111
|
};
|
|
86
112
|
}
|
|
87
|
-
interface ActionOptions<S extends StandardSchemaV1 | undefined, C = unknown, P = unknown, R extends boolean = boolean> extends GuardOptions, AuthorizeOptions<ActionParsed<S>, C, P, R> {
|
|
113
|
+
interface ActionOptions<S extends StandardSchemaV1 | undefined, C = unknown, P = unknown, R extends boolean = boolean, Ref = unknown> extends GuardOptions, AuthorizeOptions<ActionParsed<S>, C, P, R, Ref> {
|
|
88
114
|
/** Validates the input (plain object or `FormData`) with any Standard Schema. */
|
|
89
115
|
readonly input?: S;
|
|
90
116
|
/**
|
|
@@ -95,7 +121,7 @@ interface ActionOptions<S extends StandardSchemaV1 | undefined, C = unknown, P =
|
|
|
95
121
|
*/
|
|
96
122
|
readonly tenant?: (input: ActionParsed<S>) => string | undefined;
|
|
97
123
|
}
|
|
98
|
-
interface RouteOptions<C = unknown, P = unknown, R extends boolean = boolean> extends GuardOptions, AuthorizeOptions<NextRequest, C, P, R> {
|
|
124
|
+
interface RouteOptions<C = unknown, P = unknown, R extends boolean = boolean, Ref = unknown> extends GuardOptions, AuthorizeOptions<NextRequest, C, P, R, Ref> {
|
|
99
125
|
/**
|
|
100
126
|
* Refresh an expired session cookie in the route and send the new cookies
|
|
101
127
|
* with its response. For routes the proxy's matcher skips; off by default
|
|
@@ -103,7 +129,7 @@ interface RouteOptions<C = unknown, P = unknown, R extends boolean = boolean> ex
|
|
|
103
129
|
*/
|
|
104
130
|
readonly refresh?: boolean;
|
|
105
131
|
}
|
|
106
|
-
interface RequireOptions<C = unknown, P = unknown, R extends boolean = boolean> extends GuardOptions, AuthorizeOptions<undefined, C, P, R> {
|
|
132
|
+
interface RequireOptions<C = unknown, P = unknown, R extends boolean = boolean, Ref = unknown> extends GuardOptions, AuthorizeOptions<undefined, C, P, R, Ref> {
|
|
107
133
|
/** The active tenant, as for `bs.context({ tenant })`. */
|
|
108
134
|
readonly tenant?: string;
|
|
109
135
|
}
|
|
@@ -116,7 +142,7 @@ interface ScopeOptions {
|
|
|
116
142
|
*/
|
|
117
143
|
readonly tenant?: string;
|
|
118
144
|
}
|
|
119
|
-
interface BetterNext<M extends AnyModels, F extends AnyFunctions, E, C = unknown, P = unknown> extends BetterServer<M, F, E, C, P> {
|
|
145
|
+
interface BetterNext<M extends AnyModels, F extends AnyFunctions, E, C = unknown, P = unknown, Ref = string> extends BetterServer<M, F, E, C, P> {
|
|
120
146
|
/** `proxy.ts`: refreshes sessions for page loads and server actions. */
|
|
121
147
|
proxy(request: NextRequest, options?: ProxyOptions<C, P>): Promise<Response>;
|
|
122
148
|
/**
|
|
@@ -180,7 +206,7 @@ interface BetterNext<M extends AnyModels, F extends AnyFunctions, E, C = unknown
|
|
|
180
206
|
/** Route handler with auth, Result unwrapping and Problem Details errors. */
|
|
181
207
|
route<Params = Record<string, string | string[]>, R extends boolean = false>(handler: (request: NextRequest, ctx: ServerContext<M, F, E, C, P> & AuthorizedContext<C, P, R> & {
|
|
182
208
|
readonly params: Params;
|
|
183
|
-
}) => unknown, options?: RouteOptions<C, P, R>): (request: NextRequest, segment: {
|
|
209
|
+
}) => unknown, options?: RouteOptions<C, P, R, Ref>): (request: NextRequest, segment: {
|
|
184
210
|
readonly params: Promise<Params>;
|
|
185
211
|
}) => Promise<Response>;
|
|
186
212
|
/**
|
|
@@ -193,7 +219,7 @@ interface BetterNext<M extends AnyModels, F extends AnyFunctions, E, C = unknown
|
|
|
193
219
|
* );
|
|
194
220
|
* ```
|
|
195
221
|
*/
|
|
196
|
-
action<S extends StandardSchemaV1 | undefined, T, R extends boolean = false>(options: ActionOptions<S, C, P, R>, fn: (input: ActionParsed<S>, ctx: ServerContext<M, F, E, C, P> & AuthorizedContext<C, P, R>) => Promise<T> | T): (input: ActionInput<S>) => Promise<ActionResult<Unwrapped<Awaited<T>>>>;
|
|
222
|
+
action<S extends StandardSchemaV1 | undefined, T, R extends boolean = false>(options: ActionOptions<S, C, P, R, Ref>, fn: (input: ActionParsed<S>, ctx: ServerContext<M, F, E, C, P> & AuthorizedContext<C, P, R>) => Promise<T> | T): (input: ActionInput<S>) => Promise<ActionResult<Unwrapped<Awaited<T>>>>;
|
|
197
223
|
/**
|
|
198
224
|
* For Server Components: the caller's context, or the Next.js interrupt
|
|
199
225
|
* for a refused caller. `unauthorized` calls `unauthorized()`, `forbidden`
|
|
@@ -204,7 +230,21 @@ interface BetterNext<M extends AnyModels, F extends AnyFunctions, E, C = unknown
|
|
|
204
230
|
* const { db, tenant } = await bs.require({ requireTenant: true, roles: ['admin'] });
|
|
205
231
|
* ```
|
|
206
232
|
*/
|
|
207
|
-
require<R extends boolean = false>(options?: RequireOptions<C, P, R>): Promise<ServerContext<M, F, E, C, P> & AuthorizedContext<C, P, R>>;
|
|
233
|
+
require<R extends boolean = false>(options?: RequireOptions<C, P, R, Ref>): Promise<ServerContext<M, F, E, C, P> & AuthorizedContext<C, P, R>>;
|
|
234
|
+
/**
|
|
235
|
+
* REST resources for a catch-all route, matching the API model:
|
|
236
|
+
* collections, items and actions, as the caller (RLS), behind the guard in
|
|
237
|
+
* `options`, with Problem Details errors. An unknown path answers 404
|
|
238
|
+
* before auth resolves.
|
|
239
|
+
*
|
|
240
|
+
* ```ts title="app/api/[...path]/route.ts"
|
|
241
|
+
* export const { GET, POST, PATCH, PUT, DELETE } = bs.resources(
|
|
242
|
+
* { customers: true },
|
|
243
|
+
* { basePath: "/api" },
|
|
244
|
+
* );
|
|
245
|
+
* ```
|
|
246
|
+
*/
|
|
247
|
+
resources(map: ResourceMap<M, Ref, ServerContext<M, F, E, C, P>["db"]>, options?: NextResourcesOptions): NextResourceRoutes;
|
|
208
248
|
/**
|
|
209
249
|
* Tags the current `"use cache"` scope with a table (and row) tag. With a
|
|
210
250
|
* `tenant`, mutations in other tenants leave the entry cached.
|
|
@@ -240,8 +280,6 @@ interface SupportStarted {
|
|
|
240
280
|
/** ISO 8601. */
|
|
241
281
|
readonly expiresAt: string;
|
|
242
282
|
}
|
|
243
|
-
/** The tag `bs.cached()` adds to entries rendered in a support session. */
|
|
244
|
-
export declare function supportTag(sessionId: string): string;
|
|
245
283
|
interface SessionStaleOptions {
|
|
246
284
|
/**
|
|
247
285
|
* With fewer seconds left on the token, the view is not reused at all (0):
|
|
@@ -253,14 +291,6 @@ interface SessionStaleOptions {
|
|
|
253
291
|
/** 300 (5 minutes) joins the route's App Shell. Defaults to 300. */
|
|
254
292
|
readonly max?: number;
|
|
255
293
|
}
|
|
256
|
-
/**
|
|
257
|
-
* `cacheLife` `stale` seconds for a view of `session`: `max`, but never past
|
|
258
|
-
* the token's expiry, and 0 once fewer than `min` seconds are left. A
|
|
259
|
-
* signed-out view that a refresh would change (an `expired` or
|
|
260
|
-
* `refresh_failed` cookie, or an `invalid` token) is 0 as well, so it never
|
|
261
|
-
* joins the App Shell.
|
|
262
|
-
*/
|
|
263
|
-
export declare function sessionStale(session: AuthSession, options?: SessionStaleOptions, now?: number): number;
|
|
264
294
|
interface CachedOptions<T extends string = string> extends ScopeOptions {
|
|
265
295
|
/**
|
|
266
296
|
* The active tenant, as for `bs.context({ tenant })`. Next.js keys the
|
|
@@ -292,8 +322,6 @@ interface CachedOptions<T extends string = string> extends ScopeOptions {
|
|
|
292
322
|
type CachedContext<M extends AnyModels, F extends AnyFunctions, E, C = unknown, P = unknown> = ServerContext<M, F, E, C, P> & {
|
|
293
323
|
readonly session: AuthSession<C, P>;
|
|
294
324
|
};
|
|
295
|
-
/** The tag `bs.cached()` puts on a user's entries. */
|
|
296
|
-
export declare function sessionTag(userId: string): string;
|
|
297
325
|
interface NextCacheOptions {
|
|
298
326
|
/**
|
|
299
327
|
* How a mutation outside a Server Action (a route handler, a webhook)
|
|
@@ -305,13 +333,6 @@ interface NextCacheOptions {
|
|
|
305
333
|
readonly expire?: number;
|
|
306
334
|
};
|
|
307
335
|
}
|
|
308
|
-
/**
|
|
309
|
-
* Invalidates `bs:<table>` for every table in the target, the tenant's
|
|
310
|
-
* `bs:<table>@<tenant>` (every tenant's `bs:<table>@*` when the mutation has
|
|
311
|
-
* no tenant) and `bs:<table>:<id>` for the changed rows. Reads another tenant
|
|
312
|
-
* tagged stay cached. `createNext` attaches it unless `cacheTags: false`.
|
|
313
|
-
*/
|
|
314
|
-
export declare function nextCache(options?: NextCacheOptions): CacheAdapter;
|
|
315
336
|
interface RequireAalOptions {
|
|
316
337
|
/**
|
|
317
338
|
* Page that enrolls or challenges a second factor. Signed-in users below
|
|
@@ -322,30 +343,59 @@ interface RequireAalOptions {
|
|
|
322
343
|
/** Paths that need the level. Defaults to every path but `redirect`. */
|
|
323
344
|
readonly match?: (pathname: string) => boolean;
|
|
324
345
|
}
|
|
346
|
+
//#endregion
|
|
347
|
+
//#region src/next/create.d.ts
|
|
325
348
|
/**
|
|
326
|
-
*
|
|
327
|
-
*
|
|
328
|
-
* without a factor to `redirect` to enroll one. Anonymous callers pass;
|
|
329
|
-
* combine it with your sign-in redirect.
|
|
349
|
+
* The Next.js adapter: proxy, Server Components, route handlers, server
|
|
350
|
+
* actions and cache tags, on top of `createServer`.
|
|
330
351
|
*
|
|
331
352
|
* ```ts
|
|
332
|
-
* bs
|
|
333
|
-
* protect: requireAal('aal2', { redirect: '/mfa', match: (path) => path.startsWith('/settings') }),
|
|
334
|
-
* });
|
|
353
|
+
* export const bs = createNext(betterSupabase);
|
|
335
354
|
* ```
|
|
336
355
|
*/
|
|
337
|
-
export declare function
|
|
356
|
+
export declare function createNext<M extends AnyModels, D, F extends AnyFunctions, E, C = unknown, P = unknown, A extends AnyAuthorizer | undefined = undefined>(betterSupabase: BetterSupabase<M, D, F, E, C, P>, options?: NextOptions & {
|
|
357
|
+
readonly authorizer?: A;
|
|
358
|
+
}): BetterNext<M, F, E, C, P, PermissionRef<A>>;
|
|
359
|
+
//#endregion
|
|
360
|
+
//#region src/next/cache.d.ts
|
|
361
|
+
/** The tag `bs.cached()` adds to entries rendered in a support session. */
|
|
362
|
+
export declare function supportTag(sessionId: string): string;
|
|
363
|
+
/**
|
|
364
|
+
* `cacheLife` `stale` seconds for a view of `session`: `max`, but never past
|
|
365
|
+
* the token's expiry, and 0 once fewer than `min` seconds are left. A
|
|
366
|
+
* signed-out view that a refresh would change (an `expired` or
|
|
367
|
+
* `refresh_failed` cookie, or an `invalid` token) is 0 as well, so it never
|
|
368
|
+
* joins the App Shell.
|
|
369
|
+
*/
|
|
370
|
+
export declare function sessionStale(session: AuthSession, options?: SessionStaleOptions, now?: number): number;
|
|
371
|
+
/** The tag `bs.cached()` puts on a user's entries. */
|
|
372
|
+
export declare function sessionTag(userId: string): string;
|
|
373
|
+
/**
|
|
374
|
+
* Invalidates `bs:<table>` for every table in the target, the tenant's
|
|
375
|
+
* `bs:<table>@<tenant>` (every tenant's `bs:<table>@*` when the mutation has
|
|
376
|
+
* no tenant) and `bs:<table>:<id>` for the changed rows. Reads another tenant
|
|
377
|
+
* tagged stay cached. `createNext` attaches it unless `cacheTags: false`.
|
|
378
|
+
*/
|
|
379
|
+
export declare function nextCache(options?: NextCacheOptions): CacheAdapter;
|
|
380
|
+
//#endregion
|
|
381
|
+
//#region src/next/support.d.ts
|
|
382
|
+
/** Response header with the URL of the request's totals on `bs.debugRoute()`. */
|
|
383
|
+
export declare const STATS_URL_HEADER = "x-bs-stats";
|
|
338
384
|
export declare function shouldCheckSession(request: NextRequest, options?: EndedSessionOptions): boolean;
|
|
339
385
|
/** Page loads, client navigations and server actions; never prefetches or assets. */
|
|
340
386
|
export declare function shouldRefresh(request: Request): boolean;
|
|
341
387
|
/**
|
|
342
|
-
*
|
|
343
|
-
*
|
|
388
|
+
* A `proxy` `protect` that keeps signed-in users below `level` out of the
|
|
389
|
+
* matched paths. The JWT carries no factor list, so this also sends users
|
|
390
|
+
* without a factor to `redirect` to enroll one. Anonymous callers pass;
|
|
391
|
+
* combine it with your sign-in redirect.
|
|
344
392
|
*
|
|
345
393
|
* ```ts
|
|
346
|
-
*
|
|
394
|
+
* bs.proxy(request, {
|
|
395
|
+
* protect: requireAal('aal2', { redirect: '/mfa', match: (path) => path.startsWith('/settings') }),
|
|
396
|
+
* });
|
|
347
397
|
* ```
|
|
348
398
|
*/
|
|
349
|
-
export declare function
|
|
399
|
+
export declare function requireAal(level: Aal, options?: RequireAalOptions): (auth: AuthState, request: NextRequest) => Response | undefined;
|
|
350
400
|
//#endregion
|
|
351
|
-
export { type Aal, type ActionOptions, type ActionResult, type ActiveSupport, type AmrEntry, type AuthKind, type AuthSession, type AuthorizeOptions, type AuthorizedContext, type BetterNext, type CachedContext, type CachedOptions, type DbBudget, type DbStats, type EndedSessionOptions, type GuardOptions, type Impersonator, type LiveCountSeed, type MembershipClaim, type NextCacheOptions, type NextDebugOptions, type NextOptions, type ProxyOptions, type RequireAalOptions, type RequireOptions, type RouteOptions, type ScopeOptions, type SessionStaleOptions, type SupportOptions, type SupportPolicy, type SupportSessions, type SupportStartRequest, type SupportStarted, type SupportView, type TagOptions, supportOf, supportSessions, tagFor, tenantOf, toSession };
|
|
401
|
+
export { type Aal, type ActionArgs, type ActionOptions, type ActionResult, type ActiveSupport, type AmrEntry, type AuthKind, type AuthSession, type AuthorizeOptions, type AuthorizedContext, type BetterNext, type CachedContext, type CachedOptions, type DbBudget, type DbStats, type EndedSessionOptions, type GuardOptions, type Impersonator, type LiveCountSeed, type MembershipClaim, type NextCacheOptions, type NextDebugOptions, type NextOptions, type NextResourceHandler, type NextResourceRoutes, type NextResourcesOptions, type ProxyOptions, type RequireAalOptions, type RequireOptions, type ResourceAction, type ResourceContext, type ResourceHooks, type ResourceMap, type ResourceRouteOptions, type RouteOptions, type ScopeOptions, type SessionStaleOptions, type SupportOptions, type SupportPolicy, type SupportSessions, type SupportStartRequest, type SupportStarted, type SupportView, type TagOptions, defineAction, supportOf, supportSessions, tagFor, tenantOf, toSession };
|