better-supabase 0.7.1 → 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-iKgjHVPx.js → adapter-CN45ibbV.js} +658 -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-DJk0aeBi.js → doctor-VcDtuusV.js} +316 -221
- 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-BHuEQrQK.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-DzR2nyQb.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-59gcepIG.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--yqry7uW.d.ts → composite-CWAJTRBF.d.ts} +6 -6
- package/dist/{composite-DXVUibdi.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-BmzgK32X.d.ts → framework-148t1m3C.d.ts} +5 -5
- package/dist/{framework-a7aRCIqv.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-Bh0EVSwU.d.ts → server-types-CrAmZ8jv.d.ts} +92 -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-ig_K4PvS.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-C6OfRAIn.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/dist/cli/config-B9HkL8nF.js +0 -2
- package/dist/cli/gen-CCMc39Dx.js +0 -3100
- package/dist/cli/gen-DRmzPI75.js +0 -2
- package/dist/cli/prompts-BTYQGunc.js +0 -2
- package/dist/cli/run-BqDPh9UH.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
|
@@ -1,15 +1,16 @@
|
|
|
1
1
|
import { t as DbException } from "../../db-exception-CnWcYPxL.js";
|
|
2
|
-
import { n as dbError } from "../../errors-
|
|
2
|
+
import { n as dbError } from "../../errors-2M6CKMP4.js";
|
|
3
3
|
import { s as nowInstant } from "../../temporal-BJGitm-h.js";
|
|
4
|
-
import { t as temporal } from "../../temporal-required-
|
|
5
|
-
import { a as ok, r as err, s as toDbError, t as AsyncResult } from "../../result-
|
|
4
|
+
import { t as temporal } from "../../temporal-required-BtynQtM-.js";
|
|
5
|
+
import { a as ok, r as err, s as toDbError, t as AsyncResult } from "../../result-DEqHCMKP.js";
|
|
6
6
|
import { n as allTenantsContext } from "../../plugin-tfXW1-qO.js";
|
|
7
|
-
import { n as validate } from "../../standard-
|
|
8
|
-
import {
|
|
7
|
+
import { n as validate } from "../../standard-DkzZUneg.js";
|
|
8
|
+
import { o as problemResponse } from "../../problem-CJvFeGu7.js";
|
|
9
9
|
import { o as tenantFrom, s as tenantPathsFor } from "../../claims-PqzCxaTD.js";
|
|
10
|
-
import {
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
10
|
+
import { t as cronRoute } from "../../cron-route-D2AN9SA1.js";
|
|
11
|
+
import { n as nextCronRun, t as assertCron } from "../../cron-D25Ukpxy.js";
|
|
12
|
+
import { D as seconds, E as run, N as toInstant, a as budget, f as leaseHeartbeat, k as sleep, l as errorText, n as applyTemporal, y as pageOf } from "../../block-helpers-Cy3pB96I.js";
|
|
13
|
+
import { i as createWebhookInbox, r as rateLimited, t as createRateLimit } from "../../rate-limit-Bw7HgmFj.js";
|
|
13
14
|
import { n as withContext, t as unwrap } from "../../envelope-DqnYGRw7.js";
|
|
14
15
|
//#region src/blocks/jobs/dev.ts
|
|
15
16
|
function devDrainSecret(env, name = "CRON_SECRET") {
|
|
@@ -55,7 +56,7 @@ function devDrain(options) {
|
|
|
55
56
|
};
|
|
56
57
|
}
|
|
57
58
|
//#endregion
|
|
58
|
-
//#region src/blocks/jobs/
|
|
59
|
+
//#region src/blocks/jobs/idempotency.ts
|
|
59
60
|
async function sha256(text) {
|
|
60
61
|
const digest = await crypto.subtle.digest("SHA-256", new TextEncoder().encode(text));
|
|
61
62
|
return Array.from(new Uint8Array(digest), (byte) => byte.toString(16).padStart(2, "0")).join("");
|
|
@@ -181,6 +182,8 @@ function createIdempotency(sql, options = {}) {
|
|
|
181
182
|
}
|
|
182
183
|
};
|
|
183
184
|
}
|
|
185
|
+
//#endregion
|
|
186
|
+
//#region src/blocks/jobs/lease.ts
|
|
184
187
|
/**
|
|
185
188
|
* Runs `fn` while holding the lease on `key`, one holder at a time, and
|
|
186
189
|
* releases it afterwards, also when `fn` throws. `{ acquired: false }` while
|
|
@@ -224,194 +227,6 @@ function withLease(sql, key, fn, options = {}) {
|
|
|
224
227
|
}
|
|
225
228
|
});
|
|
226
229
|
}
|
|
227
|
-
function defaultType(payload) {
|
|
228
|
-
if (typeof payload !== "object" || payload === null) return null;
|
|
229
|
-
const type = payload.type;
|
|
230
|
-
return typeof type === "string" ? type : null;
|
|
231
|
-
}
|
|
232
|
-
/** Store-then-process webhooks: acknowledge fast, process with retries, never twice. */
|
|
233
|
-
function createWebhookInbox(sql, options) {
|
|
234
|
-
applyTemporal(options);
|
|
235
|
-
const worker = options.worker ?? workerId();
|
|
236
|
-
const format = options.problem;
|
|
237
|
-
const maxAttempts = options.maxAttempts ?? 8;
|
|
238
|
-
if (!Number.isInteger(maxAttempts) || maxAttempts < 1) throw new TypeError(`createWebhookInbox maxAttempts must be a positive integer, not ${String(maxAttempts)}`);
|
|
239
|
-
const maxBodyBytes = options.maxBodyBytes ?? 1048576;
|
|
240
|
-
if (!Number.isInteger(maxBodyBytes) || maxBodyBytes < 1) throw new TypeError(`createWebhookInbox maxBodyBytes must be a positive integer, not ${String(maxBodyBytes)}`);
|
|
241
|
-
const verified = async (request, body) => {
|
|
242
|
-
if (options.verify) return options.verify(request, body);
|
|
243
|
-
const result = await verifyWebhook({
|
|
244
|
-
headers: request.headers,
|
|
245
|
-
body
|
|
246
|
-
}, options.secrets ?? []);
|
|
247
|
-
return result.ok ? ok({
|
|
248
|
-
id: result.data.id,
|
|
249
|
-
payload: result.data.payload
|
|
250
|
-
}) : result;
|
|
251
|
-
};
|
|
252
|
-
const save = (event) => run(async () => {
|
|
253
|
-
const [row] = await sql.queryRaw("select * from better_supabase.receive_webhook($1, $2, $3, $4, $5, $6, $7)", [
|
|
254
|
-
options.source,
|
|
255
|
-
event.id,
|
|
256
|
-
event.type === void 0 ? (options.typeOf ?? defaultType)(event.payload) : event.type,
|
|
257
|
-
JSON.stringify(event.payload),
|
|
258
|
-
JSON.stringify(event.headers ?? {}),
|
|
259
|
-
(event.tenant === void 0 ? options.tenantOf?.(event.payload) : event.tenant) ?? null,
|
|
260
|
-
maxAttempts
|
|
261
|
-
]);
|
|
262
|
-
return {
|
|
263
|
-
id: Number(row.id),
|
|
264
|
-
duplicate: row.duplicate
|
|
265
|
-
};
|
|
266
|
-
});
|
|
267
|
-
return {
|
|
268
|
-
store: save,
|
|
269
|
-
list: (listOptions) => run(async () => {
|
|
270
|
-
return (await sql.queryRaw("select * from better_supabase.list_webhooks($1, $2, $3, $4)", [
|
|
271
|
-
listOptions.tenant,
|
|
272
|
-
options.source,
|
|
273
|
-
listOptions.status ?? null,
|
|
274
|
-
listOptions.limit ?? 100
|
|
275
|
-
])).map((row) => ({
|
|
276
|
-
id: Number(row.id),
|
|
277
|
-
messageId: row.message_id,
|
|
278
|
-
type: row.event_type,
|
|
279
|
-
status: row.status ?? "pending",
|
|
280
|
-
attempts: row.attempts,
|
|
281
|
-
maxAttempts: row.max_attempts ?? maxAttempts,
|
|
282
|
-
lastError: row.last_error ?? null,
|
|
283
|
-
tenant: row.tenant ?? null,
|
|
284
|
-
receivedAt: toInstant(row.received_at),
|
|
285
|
-
processedAt: row.processed_at === null || row.processed_at === void 0 ? null : toInstant(row.processed_at)
|
|
286
|
-
}));
|
|
287
|
-
}),
|
|
288
|
-
purge: (purgeOptions = {}) => run(async () => {
|
|
289
|
-
const [row] = await sql.queryRaw("select better_supabase.purge_webhooks($1::interval, $2, $3, $4) as purged", [
|
|
290
|
-
seconds(purgeOptions.olderThan ?? "30 days"),
|
|
291
|
-
purgeOptions.includeDead ?? false,
|
|
292
|
-
purgeOptions.batch ?? 1e4,
|
|
293
|
-
purgeOptions.tenant ?? null
|
|
294
|
-
]);
|
|
295
|
-
return row?.purged ?? 0;
|
|
296
|
-
}),
|
|
297
|
-
async receive(request) {
|
|
298
|
-
const instance = new URL(request.url).pathname;
|
|
299
|
-
if (request.method !== "POST") return new Response(null, {
|
|
300
|
-
status: 405,
|
|
301
|
-
headers: { allow: "POST" }
|
|
302
|
-
});
|
|
303
|
-
if (!options.verify && !options.secrets) throw new TypeError(`The inbox for "${options.source}" has no \`secrets\` or \`verify\`, so it only stores events through \`store\``);
|
|
304
|
-
const body = await readBodyCapped(request.clone(), maxBodyBytes);
|
|
305
|
-
if (body === void 0) return problemResponse({
|
|
306
|
-
...dbError("invalid_input", "The body is too large", { code: "WEBHOOK_TOO_LARGE" }),
|
|
307
|
-
status: 413
|
|
308
|
-
}, {
|
|
309
|
-
instance,
|
|
310
|
-
format
|
|
311
|
-
});
|
|
312
|
-
const message = await verified(request, body);
|
|
313
|
-
if (!message.ok) return problemResponse(message.error, {
|
|
314
|
-
instance,
|
|
315
|
-
format
|
|
316
|
-
});
|
|
317
|
-
const headers = Object.fromEntries((options.keepHeaders ?? []).flatMap((name) => {
|
|
318
|
-
const value = request.headers.get(name);
|
|
319
|
-
return value === null ? [] : [[name.toLowerCase(), value]];
|
|
320
|
-
}));
|
|
321
|
-
const stored = await save({
|
|
322
|
-
id: message.data.id,
|
|
323
|
-
payload: message.data.payload,
|
|
324
|
-
headers,
|
|
325
|
-
...message.data.tenant === void 0 ? {} : { tenant: message.data.tenant }
|
|
326
|
-
});
|
|
327
|
-
if (!stored.ok) return problemResponse(stored.error, {
|
|
328
|
-
instance,
|
|
329
|
-
format
|
|
330
|
-
});
|
|
331
|
-
return Response.json(stored.data, { status: stored.data.duplicate ? 200 : 202 });
|
|
332
|
-
},
|
|
333
|
-
async process(handler, processOptions = {}) {
|
|
334
|
-
let succeeded = 0;
|
|
335
|
-
let failed = 0;
|
|
336
|
-
const lease = seconds(processOptions.lease ?? 300);
|
|
337
|
-
const deadline = processOptions.budgetMs === void 0 ? void 0 : Date.now() + processOptions.budgetMs;
|
|
338
|
-
for (;;) {
|
|
339
|
-
if (deadline !== void 0 && Date.now() >= deadline) return {
|
|
340
|
-
succeeded,
|
|
341
|
-
failed
|
|
342
|
-
};
|
|
343
|
-
const rows = await sql.queryRaw("select * from better_supabase.claim_webhooks($1, $2, $3, $4::interval)", [
|
|
344
|
-
options.source,
|
|
345
|
-
worker,
|
|
346
|
-
processOptions.batch ?? 10,
|
|
347
|
-
lease
|
|
348
|
-
]);
|
|
349
|
-
if (rows.length === 0) return {
|
|
350
|
-
succeeded,
|
|
351
|
-
failed
|
|
352
|
-
};
|
|
353
|
-
for (const row of rows) {
|
|
354
|
-
const id = Number(row.id);
|
|
355
|
-
const attempt = row.attempts;
|
|
356
|
-
const extend = async () => {
|
|
357
|
-
const [held] = await sql.queryRaw("select better_supabase.extend_webhook($1, $2, $3, $4::interval) as lease", [
|
|
358
|
-
id,
|
|
359
|
-
worker,
|
|
360
|
-
attempt,
|
|
361
|
-
lease
|
|
362
|
-
]);
|
|
363
|
-
return held?.lease ?? void 0;
|
|
364
|
-
};
|
|
365
|
-
const leaseSeconds = await extend();
|
|
366
|
-
if (leaseSeconds === void 0) continue;
|
|
367
|
-
const message = {
|
|
368
|
-
id,
|
|
369
|
-
source: row.source,
|
|
370
|
-
messageId: row.message_id,
|
|
371
|
-
type: row.event_type,
|
|
372
|
-
payload: row.payload,
|
|
373
|
-
headers: row.headers,
|
|
374
|
-
attempts: row.attempts,
|
|
375
|
-
maxAttempts: row.max_attempts ?? maxAttempts,
|
|
376
|
-
receivedAt: toInstant(row.received_at),
|
|
377
|
-
tenant: row.tenant ?? null,
|
|
378
|
-
progress: row.checkpoint ?? {},
|
|
379
|
-
async checkpoint(fields) {
|
|
380
|
-
const [saved] = await sql.queryRaw("select better_supabase.checkpoint_webhook($1, $2, $3, $4) as saved", [
|
|
381
|
-
id,
|
|
382
|
-
worker,
|
|
383
|
-
JSON.stringify(fields),
|
|
384
|
-
attempt
|
|
385
|
-
]);
|
|
386
|
-
return saved?.saved ?? false;
|
|
387
|
-
}
|
|
388
|
-
};
|
|
389
|
-
const heartbeat = setInterval(() => void extend().catch(() => void 0), Math.max(1e3, leaseSeconds * 500));
|
|
390
|
-
try {
|
|
391
|
-
const outcome = await handler(message);
|
|
392
|
-
if (typeof outcome === "object" && outcome !== null && "ok" in outcome && outcome.ok === false) throw new Error(errorText(outcome.error ?? "The handler failed"));
|
|
393
|
-
const [done] = await sql.queryRaw("select better_supabase.complete_webhook($1, $2, $3) as done", [
|
|
394
|
-
message.id,
|
|
395
|
-
worker,
|
|
396
|
-
attempt
|
|
397
|
-
]);
|
|
398
|
-
if (done?.done !== false) succeeded += 1;
|
|
399
|
-
} catch (cause) {
|
|
400
|
-
await sql.queryRaw("select better_supabase.fail_webhook($1, $2, $3, null, $4)", [
|
|
401
|
-
message.id,
|
|
402
|
-
worker,
|
|
403
|
-
errorText(cause),
|
|
404
|
-
attempt
|
|
405
|
-
]);
|
|
406
|
-
failed += 1;
|
|
407
|
-
} finally {
|
|
408
|
-
clearInterval(heartbeat);
|
|
409
|
-
}
|
|
410
|
-
}
|
|
411
|
-
}
|
|
412
|
-
}
|
|
413
|
-
};
|
|
414
|
-
}
|
|
415
230
|
//#endregion
|
|
416
231
|
//#region src/blocks/jobs/backends.ts
|
|
417
232
|
const instantOrNull = (value) => value === null ? null : toInstant(value);
|
|
@@ -421,9 +236,9 @@ const millis = (instant) => instant.round({
|
|
|
421
236
|
roundingMode: "floor"
|
|
422
237
|
});
|
|
423
238
|
/** The first run of a schedule written without one, or undefined for a cron the drain can't read. */
|
|
424
|
-
function firstRun(row) {
|
|
239
|
+
function firstRun(row, now) {
|
|
425
240
|
try {
|
|
426
|
-
return millis(nextCronRun(row.schedule, row.timezone, row.first_after ? toInstant(row.first_after) :
|
|
241
|
+
return millis(nextCronRun(row.schedule, row.timezone, row.first_after ? toInstant(row.first_after) : now()));
|
|
427
242
|
} catch {
|
|
428
243
|
return;
|
|
429
244
|
}
|
|
@@ -431,9 +246,9 @@ function firstRun(row) {
|
|
|
431
246
|
/**
|
|
432
247
|
* The `jobs` SQL module over a service SQL connection. The same
|
|
433
248
|
* functions back both `sql.modules.jobs.options.backend` values (pgmq and table)
|
|
434
|
-
* and both schedulers.
|
|
249
|
+
* and both schedulers. `now` dates a schedule's first run.
|
|
435
250
|
*/
|
|
436
|
-
function sqlQueueBackend(sql) {
|
|
251
|
+
function sqlQueueBackend(sql, now = nowInstant) {
|
|
437
252
|
return {
|
|
438
253
|
apiVersion: 1,
|
|
439
254
|
name: "sql",
|
|
@@ -558,9 +373,9 @@ function sqlQueueBackend(sql) {
|
|
|
558
373
|
});
|
|
559
374
|
continue;
|
|
560
375
|
}
|
|
561
|
-
const first = firstRun(row);
|
|
376
|
+
const first = firstRun(row, now);
|
|
562
377
|
if (first === void 0) continue;
|
|
563
|
-
if (temporal().Instant.compare(first,
|
|
378
|
+
if (temporal().Instant.compare(first, now()) <= 0) due.push({
|
|
564
379
|
...schedule,
|
|
565
380
|
nextRun: first
|
|
566
381
|
});
|
|
@@ -680,9 +495,9 @@ function isBackend(source) {
|
|
|
680
495
|
function isSqlClient(source) {
|
|
681
496
|
return typeof source.queryRaw === "function";
|
|
682
497
|
}
|
|
683
|
-
function backendOf(source) {
|
|
498
|
+
function backendOf(source, now) {
|
|
684
499
|
if (isBackend(source)) return source;
|
|
685
|
-
return isSqlClient(source) ? sqlQueueBackend(source) : pgmqPublicBackend(source);
|
|
500
|
+
return isSqlClient(source) ? sqlQueueBackend(source, now) : pgmqPublicBackend(source);
|
|
686
501
|
}
|
|
687
502
|
const later = (a, b) => temporal().Instant.compare(a, b) >= 0 ? a : b;
|
|
688
503
|
/**
|
|
@@ -696,8 +511,9 @@ const later = (a, b) => temporal().Instant.compare(a, b) >= 0 ? a : b;
|
|
|
696
511
|
*/
|
|
697
512
|
function createJobs(source, queues, options = {}) {
|
|
698
513
|
applyTemporal(options);
|
|
514
|
+
const now = options.now ?? nowInstant;
|
|
699
515
|
for (const name of Object.keys(queues)) if (!QUEUE_NAME.test(name)) throw new TypeError(`Queue "${name}": pgmq queue names are lowercase letters, digits and underscores (at most 47)`);
|
|
700
|
-
const transport = backendOf(source);
|
|
516
|
+
const transport = backendOf(source, now);
|
|
701
517
|
const schemaOf = (queue) => {
|
|
702
518
|
const schema = queues[queue];
|
|
703
519
|
if (!schema) throw new TypeError(`Unknown queue "${queue}". Queues: ${Object.keys(queues).join(", ")}`);
|
|
@@ -713,9 +529,9 @@ function createJobs(source, queues, options = {}) {
|
|
|
713
529
|
* Extends the lease of every job in `held` at half the lease, so jobs
|
|
714
530
|
* waiting their turn in a claimed batch don't expire before they run.
|
|
715
531
|
*/
|
|
716
|
-
const heartbeat = (held, lease) => transport.leases ?
|
|
532
|
+
const heartbeat = (held, lease) => transport.leases ? leaseHeartbeat(lease, () => {
|
|
717
533
|
for (const job of held) run(() => transport.extend(job, lease));
|
|
718
|
-
}
|
|
534
|
+
}) : void 0;
|
|
719
535
|
const handle = async (job, handler, workOptions) => {
|
|
720
536
|
const controller = new AbortController();
|
|
721
537
|
try {
|
|
@@ -741,7 +557,7 @@ function createJobs(source, queues, options = {}) {
|
|
|
741
557
|
return false;
|
|
742
558
|
}
|
|
743
559
|
};
|
|
744
|
-
const loop = async (queue, handler, workOptions, forever,
|
|
560
|
+
const loop = async (queue, handler, workOptions, forever, spent = budget(void 0)) => {
|
|
745
561
|
const concurrency = Math.max(1, workOptions.concurrency ?? 1);
|
|
746
562
|
const lease = workOptions.lease ?? 300;
|
|
747
563
|
const firstWait = workOptions.pollInterval ?? 1e3;
|
|
@@ -754,7 +570,7 @@ function createJobs(source, queues, options = {}) {
|
|
|
754
570
|
let wait = firstWait;
|
|
755
571
|
let misses = 0;
|
|
756
572
|
while (!signal.aborted) {
|
|
757
|
-
if (
|
|
573
|
+
if (spent.expired()) return;
|
|
758
574
|
const claimed = await claim(queue, {
|
|
759
575
|
...workOptions,
|
|
760
576
|
batch: workOptions.batch ?? 1
|
|
@@ -765,8 +581,7 @@ function createJobs(source, queues, options = {}) {
|
|
|
765
581
|
stop.abort();
|
|
766
582
|
throw new TypeError(claimed.error.message, { cause: claimed.error });
|
|
767
583
|
}
|
|
768
|
-
|
|
769
|
-
await sleep(Math.min(firstWait * 2 ** (misses - 1), left), signal);
|
|
584
|
+
await sleep(Math.min(firstWait * 2 ** (misses - 1), spent.remaining()), signal);
|
|
770
585
|
continue;
|
|
771
586
|
}
|
|
772
587
|
misses = 0;
|
|
@@ -778,7 +593,7 @@ function createJobs(source, queues, options = {}) {
|
|
|
778
593
|
}
|
|
779
594
|
wait = firstWait;
|
|
780
595
|
const held = new Set(claimed.data);
|
|
781
|
-
const
|
|
596
|
+
const stopHeartbeat = heartbeat(held, lease);
|
|
782
597
|
try {
|
|
783
598
|
for (const job of claimed.data) {
|
|
784
599
|
if (await handle(job, handler, workOptions)) succeeded += 1;
|
|
@@ -786,7 +601,7 @@ function createJobs(source, queues, options = {}) {
|
|
|
786
601
|
held.delete(job);
|
|
787
602
|
}
|
|
788
603
|
} finally {
|
|
789
|
-
|
|
604
|
+
stopHeartbeat?.();
|
|
790
605
|
}
|
|
791
606
|
}
|
|
792
607
|
});
|
|
@@ -803,7 +618,7 @@ function createJobs(source, queues, options = {}) {
|
|
|
803
618
|
let ran = 0;
|
|
804
619
|
for (const schedule of due) {
|
|
805
620
|
await transport.send(schedule.queue, schedule.payload, 0, 5, `schedule:${schedule.name}:${schedule.nextRun.toString()}`);
|
|
806
|
-
const next = millis(nextCronRun(schedule.cron, schedule.timeZone, later(
|
|
621
|
+
const next = millis(nextCronRun(schedule.cron, schedule.timeZone, later(now(), schedule.nextRun)));
|
|
807
622
|
if (await transport.advanceSchedule(schedule.name, schedule.nextRun, next)) ran += 1;
|
|
808
623
|
}
|
|
809
624
|
return ran;
|
|
@@ -813,7 +628,7 @@ function createJobs(source, queues, options = {}) {
|
|
|
813
628
|
if (!valid.ok) return valid;
|
|
814
629
|
const timeZone = scheduleOptions.timeZone ?? "UTC";
|
|
815
630
|
try {
|
|
816
|
-
nextCronRun(cron, timeZone,
|
|
631
|
+
nextCronRun(cron, timeZone, now());
|
|
817
632
|
} catch (cause) {
|
|
818
633
|
return err(dbError("validation", errorText(cause), { issues: [{
|
|
819
634
|
message: errorText(cause),
|
|
@@ -829,13 +644,13 @@ function createJobs(source, queues, options = {}) {
|
|
|
829
644
|
tenant: scheduleOptions.tenant ?? (scheduleOptions.context ? tenantFrom(scheduleOptions.context, tenantPathsFor(void 0)) : void 0) ?? tenantDefault
|
|
830
645
|
});
|
|
831
646
|
};
|
|
832
|
-
const write = (prepared) => transport.schedule(prepared.name, prepared.cron, prepared.queue, prepared.payload, prepared.timeZone, millis(nextCronRun(prepared.cron, prepared.timeZone,
|
|
647
|
+
const write = (prepared) => transport.schedule(prepared.name, prepared.cron, prepared.queue, prepared.payload, prepared.timeZone, millis(nextCronRun(prepared.cron, prepared.timeZone, now())), prepared.tenant);
|
|
833
648
|
return {
|
|
834
649
|
enqueue(queue, payload, enqueueOptions = {}) {
|
|
835
650
|
return AsyncResult.from(async () => {
|
|
836
651
|
const valid = await validate(schemaOf(queue), payload, "payload");
|
|
837
652
|
if (!valid.ok) return valid;
|
|
838
|
-
const delay = enqueueOptions.delay ?? (enqueueOptions.runAt ? Math.max(0, Math.ceil((enqueueOptions.runAt.epochMilliseconds -
|
|
653
|
+
const delay = enqueueOptions.delay ?? (enqueueOptions.runAt ? Math.max(0, Math.ceil((enqueueOptions.runAt.epochMilliseconds - now().epochMilliseconds) / 1e3)) : 0);
|
|
839
654
|
return run(() => transport.send(queue, withContext(valid.data, enqueueOptions.context), delay, enqueueOptions.maxAttempts ?? 5, enqueueOptions.dedupeKey, enqueueOptions.dedupe));
|
|
840
655
|
});
|
|
841
656
|
},
|
|
@@ -929,23 +744,16 @@ function createJobs(source, queues, options = {}) {
|
|
|
929
744
|
return transport.unscheduleTenant(filter.tenant);
|
|
930
745
|
}),
|
|
931
746
|
runSchedules: (scheduleOptions = {}) => run(() => runSchedules(scheduleOptions)),
|
|
932
|
-
drain: (queue, handler, drainOptions = {}) => loop(queue, handler, drainOptions, false,
|
|
747
|
+
drain: (queue, handler, drainOptions = {}) => loop(queue, handler, drainOptions, false, budget(drainOptions.budgetMs)),
|
|
933
748
|
work: (queue, handler, workOptions = {}) => loop(queue, handler, workOptions, true),
|
|
934
749
|
drainRoute(routeOptions) {
|
|
935
|
-
const secret = routeOptions.secret;
|
|
936
|
-
if (!secret) throw new TypeError("drainRoute needs a secret, such as process.env.CRON_SECRET");
|
|
937
750
|
for (const queue of Object.keys(routeOptions.handlers)) schemaOf(queue);
|
|
938
|
-
return
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
943
|
-
|
|
944
|
-
if (!verifySharedSecret(request, secret)) return problemResponse(dbError("unauthorized", "The drain route needs its bearer secret"), {
|
|
945
|
-
instance,
|
|
946
|
-
format: routeOptions.problem
|
|
947
|
-
});
|
|
948
|
-
const deadline = Date.now() + (routeOptions.budgetMs ?? 5e4);
|
|
751
|
+
return cronRoute({
|
|
752
|
+
name: "drain",
|
|
753
|
+
secret: routeOptions.secret,
|
|
754
|
+
problem: routeOptions.problem
|
|
755
|
+
}, async (request) => {
|
|
756
|
+
const spent = budget(routeOptions.budgetMs ?? 5e4);
|
|
949
757
|
const monitor = routeOptions.monitor;
|
|
950
758
|
let errors = 0;
|
|
951
759
|
const report = (cause) => {
|
|
@@ -973,9 +781,9 @@ function createJobs(source, queues, options = {}) {
|
|
|
973
781
|
const results = {};
|
|
974
782
|
for (const [queue, handler] of Object.entries(routeOptions.handlers)) {
|
|
975
783
|
if (handler === void 0) continue;
|
|
976
|
-
if (
|
|
784
|
+
if (spent.expired()) break;
|
|
977
785
|
try {
|
|
978
|
-
results[queue] = await loop(queue, handler, routeOptions, false,
|
|
786
|
+
results[queue] = await loop(queue, handler, routeOptions, false, spent);
|
|
979
787
|
} catch (cause) {
|
|
980
788
|
report(cause);
|
|
981
789
|
results[queue] = {
|
|
@@ -987,65 +795,14 @@ function createJobs(source, queues, options = {}) {
|
|
|
987
795
|
const result = {
|
|
988
796
|
schedules: scheduled,
|
|
989
797
|
queues: results,
|
|
990
|
-
budgetExhausted:
|
|
798
|
+
budgetExhausted: spent.expired(),
|
|
991
799
|
errors
|
|
992
800
|
};
|
|
993
801
|
if (monitor?.onFinish) await watch(() => monitor.onFinish?.(result, started));
|
|
994
802
|
return Response.json(result);
|
|
995
|
-
};
|
|
803
|
+
});
|
|
996
804
|
}
|
|
997
805
|
};
|
|
998
806
|
}
|
|
999
807
|
//#endregion
|
|
1000
|
-
//#region src/blocks/jobs/rate-limit.ts
|
|
1001
|
-
const isTransport = (source) => "call" in source;
|
|
1002
|
-
/**
|
|
1003
|
-
* Fixed-window limits for keys that aren't claims, over the `rate-limit`
|
|
1004
|
-
* module's counters. Pass a service SQL connection (`ctx.postgresAdmin`,
|
|
1005
|
-
* `postgres.admin`), or a service-role `BlockTransport` such as
|
|
1006
|
-
* `rpcTransport(adminClient)`.
|
|
1007
|
-
*/
|
|
1008
|
-
function createRateLimit(source, options = {}) {
|
|
1009
|
-
applyTemporal(options);
|
|
1010
|
-
const hit = isTransport(source) ? overTransport(blockCall(source, void 0, options.mappers)) : overSql(source);
|
|
1011
|
-
return { check: (scope, key, rule) => {
|
|
1012
|
-
if (rule !== void 0 && (!Number.isInteger(rule.max) || rule.max < 1)) return AsyncResult.err(dbError("invalid_input", "A rate limit's max must be a positive integer"));
|
|
1013
|
-
return hit(scope, key, rule?.max ?? null, rule === void 0 ? null : seconds(rule.period));
|
|
1014
|
-
} };
|
|
1015
|
-
}
|
|
1016
|
-
const overTransport = (call) => (scope, key, max, period) => call("check_rate_limit", {
|
|
1017
|
-
scope,
|
|
1018
|
-
key,
|
|
1019
|
-
max_requests: max ?? void 0,
|
|
1020
|
-
period: period ?? void 0
|
|
1021
|
-
}, (value) => {
|
|
1022
|
-
const row = isRecord(value) ? value : {};
|
|
1023
|
-
return {
|
|
1024
|
-
allowed: row["allowed"] === true,
|
|
1025
|
-
remaining: Number(row["remaining"] ?? 0),
|
|
1026
|
-
retryAfter: Number(row["retry_after"] ?? 0)
|
|
1027
|
-
};
|
|
1028
|
-
});
|
|
1029
|
-
const overSql = (sql) => (scope, key, max, period) => run(async () => {
|
|
1030
|
-
const [row] = await sql.queryRaw("select * from better_supabase.hit_rate_limit($1, $2, $3, $4::interval)", [
|
|
1031
|
-
scope,
|
|
1032
|
-
key,
|
|
1033
|
-
max,
|
|
1034
|
-
period
|
|
1035
|
-
]);
|
|
1036
|
-
return {
|
|
1037
|
-
allowed: row?.allowed ?? false,
|
|
1038
|
-
remaining: row?.remaining ?? 0,
|
|
1039
|
-
retryAfter: row?.retry_after ?? 0
|
|
1040
|
-
};
|
|
1041
|
-
});
|
|
1042
|
-
/** A `problem+json` 429 with `Retry-After`, for a refused `check`. */
|
|
1043
|
-
function rateLimited(decision, options = {}) {
|
|
1044
|
-
const retryAfter = Math.max(1, Math.ceil(decision.retryAfter));
|
|
1045
|
-
return problemResponse(dbError("rate_limited", options.detail ?? `Too many requests. Retry after ${retryAfter} seconds.`, { retryAfter }), {
|
|
1046
|
-
...options.instance === void 0 ? {} : { instance: options.instance },
|
|
1047
|
-
format: options.problem
|
|
1048
|
-
});
|
|
1049
|
-
}
|
|
1050
|
-
//#endregion
|
|
1051
808
|
export { assertCron, createIdempotency, createJobs, createRateLimit, createWebhookInbox, devDrain, devDrainSecret, nextCronRun, pgmqPublicBackend, rateLimited, sqlQueueBackend, withLease };
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { a as KnowledgeDocument, c as KnowledgeQuery, d as KnowledgeStatus, f as NewKnowledgeDocument, i as KnowledgeChunk, l as KnowledgeScope, m as createKnowledge, n as Embedder, o as KnowledgeHit, p as chunk, r as Knowledge, s as KnowledgeOptions, t as ChunkOptions, u as KnowledgeSearchOptions } from "../../knowledge-
|
|
3
|
-
export { type BlockTransport, type ChunkOptions, type Embedder, type Knowledge, type KnowledgeChunk, type KnowledgeDocument, type KnowledgeHit, type KnowledgeOptions, type KnowledgeQuery, type KnowledgeScope, type KnowledgeSearchOptions, type KnowledgeStatus, type NewKnowledgeDocument, chunk, createKnowledge, rpcTransport, sqlTransport };
|
|
1
|
+
import { a as dbTransport, o as rpcTransport, s as sqlTransport, t as BlockTransport } from "../../block-transport-inD4fFq-.js";
|
|
2
|
+
import { a as KnowledgeDocument, c as KnowledgeQuery, d as KnowledgeStatus, f as NewKnowledgeDocument, i as KnowledgeChunk, l as KnowledgeScope, m as createKnowledge, n as Embedder, o as KnowledgeHit, p as chunk, r as Knowledge, s as KnowledgeOptions, t as ChunkOptions, u as KnowledgeSearchOptions } from "../../knowledge-CAReFpRA.js";
|
|
3
|
+
export { type BlockTransport, type ChunkOptions, type Embedder, type Knowledge, type KnowledgeChunk, type KnowledgeDocument, type KnowledgeHit, type KnowledgeOptions, type KnowledgeQuery, type KnowledgeScope, type KnowledgeSearchOptions, type KnowledgeStatus, type NewKnowledgeDocument, chunk, createKnowledge, dbTransport, rpcTransport, sqlTransport };
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { n as chunk, r as createKnowledge } from "../../knowledge-
|
|
3
|
-
export { chunk, createKnowledge, rpcTransport, sqlTransport };
|
|
1
|
+
import { i as sqlTransport, r as rpcTransport, t as dbTransport } from "../../block-transport-bAKh-dGc.js";
|
|
2
|
+
import { n as chunk, r as createKnowledge } from "../../knowledge-DnHtb64A.js";
|
|
3
|
+
export { chunk, createKnowledge, dbTransport, rpcTransport, sqlTransport };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { n as Embedder } from "../../knowledge-
|
|
3
|
-
import { a as MemoryKind, c as MemoryRecord, d as RecalledMessage, i as MemoryHit, l as MemoryScope, n as MemoryCommand, o as MemoryNamespace, r as MemoryDocument, s as MemoryOptions, t as Memory, u as MemoryView } from "../../types-
|
|
1
|
+
import { a as dbTransport, o as rpcTransport, s as sqlTransport, t as BlockTransport } from "../../block-transport-inD4fFq-.js";
|
|
2
|
+
import { n as Embedder } from "../../knowledge-CAReFpRA.js";
|
|
3
|
+
import { a as MemoryKind, c as MemoryRecord, d as RecalledMessage, i as MemoryHit, l as MemoryScope, n as MemoryCommand, o as MemoryNamespace, r as MemoryDocument, s as MemoryOptions, t as Memory, u as MemoryView } from "../../types-DSJ3-m9X.js";
|
|
4
4
|
//#region src/blocks/memory/memory.d.ts
|
|
5
5
|
/** Core memory files, archival facts and recall over earlier chats. */
|
|
6
6
|
export declare function createMemory(options: MemoryOptions): Memory;
|
|
7
7
|
//#endregion
|
|
8
|
-
export { type BlockTransport, type Embedder, type Memory, type MemoryCommand, type MemoryDocument, type MemoryHit, type MemoryKind, type MemoryNamespace, type MemoryOptions, type MemoryRecord, type MemoryScope, type MemoryView, type RecalledMessage, rpcTransport, sqlTransport };
|
|
8
|
+
export { type BlockTransport, type Embedder, type Memory, type MemoryCommand, type MemoryDocument, type MemoryHit, type MemoryKind, type MemoryNamespace, type MemoryOptions, type MemoryRecord, type MemoryScope, type MemoryView, type RecalledMessage, dbTransport, rpcTransport, sqlTransport };
|
|
@@ -1,9 +1,10 @@
|
|
|
1
|
-
import { n as dbError } from "../../errors-
|
|
2
|
-
import { a as ok, r as err, t as AsyncResult } from "../../result-
|
|
1
|
+
import { n as dbError } from "../../errors-2M6CKMP4.js";
|
|
2
|
+
import { a as ok, r as err, t as AsyncResult } from "../../result-DEqHCMKP.js";
|
|
3
3
|
import { t as vectorLiteral } from "../../search-CUWCRYKL.js";
|
|
4
|
-
import { n as
|
|
5
|
-
import {
|
|
6
|
-
import {
|
|
4
|
+
import { n as isRecord } from "../../guards-6F2bCtQR.js";
|
|
5
|
+
import { i as sqlTransport, r as rpcTransport, t as dbTransport } from "../../block-transport-bAKh-dGc.js";
|
|
6
|
+
import { E as run, N as toInstant, S as recordOf, g as oneOf, i as blockCall, j as textOf, n as applyTemporal, u as injectableOf, v as optionalText, w as recordsOf } from "../../block-helpers-Cy3pB96I.js";
|
|
7
|
+
import { t as checkVectors } from "../../knowledge-DnHtb64A.js";
|
|
7
8
|
//#region src/blocks/memory/rows.ts
|
|
8
9
|
const SCOPES = [
|
|
9
10
|
"user",
|
|
@@ -286,4 +287,4 @@ function createMemory(options) {
|
|
|
286
287
|
};
|
|
287
288
|
}
|
|
288
289
|
//#endregion
|
|
289
|
-
export { createMemory, rpcTransport, sqlTransport };
|
|
290
|
+
export { createMemory, dbTransport, rpcTransport, sqlTransport };
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
/// <reference lib="esnext.temporal" />
|
|
2
|
-
import { t as AsyncResult, w as ErrorMapper } from "../../result-
|
|
3
|
-
import {
|
|
4
|
-
import { m as RequestContext } from "../../plugin-
|
|
5
|
-
import { a as EventHub } from "../../events-
|
|
6
|
-
import { i as CursorPageOptions, r as BlockTemporalOptions } from "../../block-helpers-
|
|
7
|
-
import {
|
|
8
|
-
import { a as BlockTransportMiddleware, d as extendBlock, f as withBlockHooks, n as BlockHooks, p as wrapTransport } from "../../block-hooks-
|
|
2
|
+
import { t as AsyncResult, w as ErrorMapper } from "../../result-BchM1XZn.js";
|
|
3
|
+
import { a as dbTransport, i as RpcClient, o as rpcTransport, s as sqlTransport, t as BlockTransport } from "../../block-transport-inD4fFq-.js";
|
|
4
|
+
import { m as RequestContext } from "../../plugin-CPK2HsbY.js";
|
|
5
|
+
import { a as EventHub } from "../../events-D1BOCll8.js";
|
|
6
|
+
import { i as CursorPageOptions, r as BlockTemporalOptions } from "../../block-helpers-C0Xj8War.js";
|
|
7
|
+
import { i as EventSink, t as CloudEvent } from "../../cloud-event-Dune0KI7.js";
|
|
8
|
+
import { a as BlockTransportMiddleware, d as extendBlock, f as withBlockHooks, n as BlockHooks, p as wrapTransport } from "../../block-hooks-DaOVC7SC.js";
|
|
9
9
|
import { a as NotificationSubject, i as NotificationItem, n as NotificationMessage, o as RenderedText, r as NotificationSendResult, t as NotificationChannel } from "../../channel-_2Mx1Oyu.js";
|
|
10
10
|
import { StandardSchemaV1 } from "@standard-schema/spec";
|
|
11
|
-
//#region src/blocks/notifications/
|
|
11
|
+
//#region src/blocks/notifications/api-types.d.ts
|
|
12
12
|
/** Notification type to the Standard Schema of its `data`. */
|
|
13
13
|
type NotificationTypes = Readonly<Record<string, StandardSchemaV1>>;
|
|
14
14
|
type TypeName<K extends NotificationTypes> = keyof K & string;
|
|
@@ -292,6 +292,8 @@ interface NotificationSinkOptions<K extends NotificationTypes> {
|
|
|
292
292
|
/** Stripped from each event type before `map`. Defaults to `dev.better-supabase.`. */
|
|
293
293
|
readonly typePrefix?: string;
|
|
294
294
|
}
|
|
295
|
+
//#endregion
|
|
296
|
+
//#region src/blocks/notifications/notifications.d.ts
|
|
295
297
|
export declare function createNotifications<const K extends NotificationTypes, H = undefined>(options: NotificationsOptions<K, H>): Notifications<K>;
|
|
296
298
|
//#endregion
|
|
297
|
-
export { type AvatarUrls, type BlockHooks, type BlockTransport, type BlockTransportMiddleware, type DeliverOptions, type DeliverResult, type ListOptions, type NotificationActor, type NotificationChannel, type NotificationCounts, type NotificationItem, type NotificationMessage, type NotificationOf, type NotificationPage, type NotificationPreference, type NotificationSendResult, type NotificationSinkOptions, type NotificationSubject, type NotificationSubscription, type NotificationTypes, type NotificationUpdate, type Notifications, type NotificationsOptions, type PageOptions, type Rendered, type RenderedText, type RpcClient, type SendInput, type SentNotification, type SinkNotification, type SubscriptionLevel, extendBlock, rpcTransport, sqlTransport, withBlockHooks, wrapTransport };
|
|
299
|
+
export { type AvatarUrls, type BlockHooks, type BlockTransport, type BlockTransportMiddleware, type DeliverOptions, type DeliverResult, type ListOptions, type NotificationActor, type NotificationChannel, type NotificationCounts, type NotificationItem, type NotificationMessage, type NotificationOf, type NotificationPage, type NotificationPreference, type NotificationSendResult, type NotificationSinkOptions, type NotificationSubject, type NotificationSubscription, type NotificationTypes, type NotificationUpdate, type Notifications, type NotificationsOptions, type PageOptions, type Rendered, type RenderedText, type RpcClient, type SendInput, type SentNotification, type SinkNotification, type SubscriptionLevel, dbTransport, extendBlock, rpcTransport, sqlTransport, withBlockHooks, wrapTransport };
|