permdock 0.7.0 → 0.9.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 +1 -3
- package/dist/a2a/index.d.ts +7 -7
- package/dist/a2a/index.js +8 -8
- package/dist/action-result-BcudBQOF.d.ts +19 -0
- package/dist/{adapter-context-CRhqyzCk.js → adapter-context-CIQpQxbE.js} +8 -2
- package/dist/{adoption-scan-D-feE7BE.js → adoption-scan-Ch07MdxN.js} +5 -5
- package/dist/agent/index.d.ts +2 -2
- package/dist/agent/index.js +1 -1
- package/dist/ai-sdk/index.d.ts +19 -13
- package/dist/ai-sdk/index.js +6 -6
- package/dist/{app-data-MuyzVqX8.js → app-data-UNNm07jV.js} +10 -7
- package/dist/{approval-header-CJACtHkv.js → approval-header-8QV6MU4H.js} +6 -3
- package/dist/{approval-prompt-K0faOLFp.d.ts → approval-prompt-3BqWczTt.d.ts} +13 -11
- package/dist/{approval-prompt-Dg5LeAcT.js → approval-prompt-B8hQY69x.js} +5 -6
- package/dist/approvals/index.d.ts +4 -4
- package/dist/approvals/index.js +6 -6
- package/dist/{approvals-CMRfsbBh.js → approvals-DnIBTuXE.js} +66 -42
- package/dist/{approvers-CqPOLD-o.js → approvers-B4r0N_Uz.js} +8 -2
- package/dist/{arazzo-ClrF3PVb.js → arazzo-BpS7LnV0.js} +2 -2
- package/dist/{arazzo-rdeJ8n1J.js → arazzo-CmQaGPkM.js} +6 -6
- package/dist/{args-CC3OwyHW.js → args-0FrVs5EH.js} +14 -7
- package/dist/astro/index.d.ts +30 -12
- package/dist/astro/index.js +2 -2
- package/dist/{audience-BrMs8c4o.js → audience-DTjR8xet.js} +8 -8
- package/dist/{auth-CscUX8Sy.js → auth--yPyZNgr.js} +19 -7
- package/dist/authzen/index.d.ts +34 -28
- package/dist/authzen/index.js +23 -20
- package/dist/{automation-DOtAFWdy.d.ts → automation-C6Jg75xq.d.ts} +42 -32
- package/dist/{automation-ySsxp_Yp.js → automation-x3KEUusw.js} +22 -21
- package/dist/better-auth/index.d.ts +2 -2
- package/dist/better-auth/index.js +13 -7
- package/dist/better-supabase/index.d.ts +357 -227
- package/dist/better-supabase/index.js +219 -140
- package/dist/{bind-D1nO6fiC.js → bind-BNQA9JK9.js} +26 -10
- package/dist/{bind-JDuvxjuW.d.ts → bind-YYjvfpB9.d.ts} +32 -12
- package/dist/{body-CH5of8Ne.js → body-CJQwYVa8.js} +3 -3
- package/dist/{body-text-QcXok_SI.js → body-text-DQhcmqdY.js} +8 -4
- package/dist/{boundary-BM8a_P6E.js → boundary-BV3O1eud.js} +8 -2
- package/dist/{boundary-BmHxVH1J.d.ts → boundary-C9ck-3uK.d.ts} +13 -4
- package/dist/{budget-NbEtbJC_.js → budget-BELja5A9.js} +6 -3
- package/dist/{budget-JqcRqyhK.d.ts → budget-hYsPz_yE.d.ts} +6 -3
- package/dist/{build-instance-DxE7czo9.js → build-instance-BWXqwQYU.js} +3 -3
- package/dist/{capability-L7NnfhiE.js → capability-BqX94r07.js} +31 -25
- package/dist/{capability-D4UC9TTW.d.ts → capability-Di9tiUvi.d.ts} +41 -29
- package/dist/{casbin-BHijLuHY.js → casbin-B7_yS-oo.js} +2 -2
- package/dist/{casbin-BW9pS47J.js → casbin-bHyIxTNQ.js} +16 -8
- package/dist/{casl-CmJlgziS.js → casl-C4OINZHI.js} +2 -2
- package/dist/{casl-UbI8v-Wq.js → casl-CHHoCldP.js} +19 -10
- package/dist/catalog/index.d.ts +51 -30
- package/dist/catalog/index.js +18 -15
- package/dist/{catalog-D69WhFii.js → catalog-CGlSwU6j.js} +20 -19
- package/dist/catalog-D3oS2GH3.js +1 -0
- package/dist/{catalog-BaMQfQ6Y.js → catalog-amPDr0JQ.js} +3 -3
- package/dist/{catalog-doc-CV9s6B1S.js → catalog-doc-DjMKzJp9.js} +28 -14
- package/dist/{catalog-fingerprint-C144oW4M.js → catalog-fingerprint-e6aCWosn.js} +18 -14
- package/dist/catalog-operations-DeHTrJSV.js +60 -0
- package/dist/{challenge-nGWma08S.js → challenge-DImNcR7B.js} +48 -27
- package/dist/chat/index.d.ts +1 -1
- package/dist/chat/index.js +13 -10
- package/dist/chat-sdk/index.d.ts +44 -26
- package/dist/chat-sdk/index.js +17 -17
- package/dist/{checks-BC_0mPIq.js → checks-CGkP3Z7A.js} +4 -1
- package/dist/{claims-map-7oQ3ue4X.js → claims-map-CKkoAAYF.js} +5 -2
- package/dist/{claims-map-Ca-QX8C6.d.ts → claims-map-D1Pb5oRq.d.ts} +8 -5
- package/dist/claude-agent/index.d.ts +6 -6
- package/dist/claude-agent/index.js +6 -3
- package/dist/clerk/index.d.ts +11 -7
- package/dist/clerk/index.js +6 -6
- package/dist/cli/bin.js +4 -4
- package/dist/cli/index.d.ts +82 -7
- package/dist/cli/index.js +6 -6
- package/dist/{clients-C7zLFuWT.d.ts → clients-C_NOET3z.d.ts} +5 -5
- package/dist/{clients-DjU5ABMy.js → clients-DYr3U86j.js} +3 -3
- package/dist/cloud/index.d.ts +84 -52
- package/dist/cloud/index.js +53 -39
- package/dist/{cloud-CO8pYtwr.js → cloud-3kWfjnYy.js} +4 -5
- package/dist/{codemod-BP6n8N9L.js → codemod-Bv5i-Mzo.js} +523 -201
- package/dist/{codemod-i4N2BhDc.js → codemod-D9Aiii1r.js} +3 -4
- package/dist/{collect-DNm3oKOk.js → collect-B80GYEot.js} +4 -5
- package/dist/collect-D-eroIfV.js +1 -0
- package/dist/{collect-BaWeMjwV.js → collect-WCl8cJQV.js} +26 -63
- package/dist/{compare-pfyVnBjE.js → compare-DTfyUunF.js} +2 -2
- package/dist/compile/index.d.ts +2 -2
- package/dist/compile/index.js +1 -1
- package/dist/{compile-COM2VKuN.d.ts → compile-BEklRUYo.d.ts} +36 -12
- package/dist/{compile-BAEO5bOk.js → compile-EzEMB-7v.js} +77 -33
- package/dist/{completion-BNdVf7X2.js → completion-_bc0OUQ-.js} +17 -8
- package/dist/config-BwPBfN0t.js +108 -0
- package/dist/{config-DGZzMV1B.js → config-D5XrLWpk.js} +2 -2
- package/dist/{config-report-Cm7UITNA.js → config-report-BmWIskD7.js} +9 -6
- package/dist/config-shape-ykV0Vm2n.js +134 -0
- package/dist/{connection-DjhIJSs2.js → connection-B72dg5Q2.js} +23 -22
- package/dist/{connector-schema-_VCSsdtD.js → connector-schema-CYLQNMYq.js} +3 -2
- package/dist/{context--uM9V3Ui.js → context-BnIzxTNE.js} +4 -3
- package/dist/convex/index.d.ts +13 -7
- package/dist/convex/index.js +9 -6
- package/dist/{core-CQkE8Esr.d.ts → core-CFepFiDP.d.ts} +49 -22
- package/dist/{core-B5-w6Kw9.js → core-DzVINFbU.js} +26 -20
- package/dist/{create-Cb86Z8Im.js → create-6EwRQlig.js} +10 -7
- package/dist/{create-DJrlhEp9.js → create-BLPKnJKa.js} +35 -25
- package/dist/{create-UTnUVETj.d.ts → create-BPUopdfL.d.ts} +70 -37
- package/dist/{create-QHuuPw3q.d.ts → create-BamXmeob.d.ts} +37 -29
- package/dist/{create-B2-CQqCI.d.ts → create-DBvUsgzK.d.ts} +49 -28
- package/dist/{credential-CIM7wHwA.js → credential-CyyyvCsL.js} +41 -38
- package/dist/{credentials-BpuTwd7a.js → credentials-CdDxp7jN.js} +6 -6
- package/dist/{deciding-columns-DRo2QM6E.js → deciding-columns-NB4wcyBf.js} +2 -2
- package/dist/{delegation-C5rOdTp5.js → delegation-CDB6_keF.js} +31 -22
- package/dist/delivery/index.d.ts +4 -4
- package/dist/delivery/index.js +5 -5
- package/dist/{delivery-rwOKLWRm.js → delivery-BupfvJIV.js} +34 -22
- package/dist/{delivery-event-xX4obB8F.js → delivery-event-JioK5YbS.js} +6 -6
- package/dist/denied-text-DHldhVUv.d.ts +22 -0
- package/dist/{describe-DZlnEtLy.js → describe-Bb4hGK5d.js} +5 -5
- package/dist/{describe-O0SwYIK8.d.ts → describe-BbFPBSms.d.ts} +5 -5
- package/dist/{device-BARQ8eYG.js → device-BwbJNmb2.js} +11 -8
- package/dist/{diff-Btr1c1Ow.js → diff-BwR1JdP2.js} +2 -2
- package/dist/{diff-DzT-xD13.js → diff-CQegtBAo.js} +22 -13
- package/dist/{digest-B3kc_PgQ.d.ts → digest-8Yx2CchM.d.ts} +3 -3
- package/dist/{doctor-BU1szn63.js → doctor-ClRVAtXQ.js} +287 -135
- package/dist/{doctor-BoK_y0KO.js → doctor-LPMYjSqO.js} +4 -4
- package/dist/drizzle/index.d.ts +33 -19
- package/dist/drizzle/index.js +17 -9
- package/dist/elysia/index.d.ts +17 -11
- package/dist/elysia/index.js +5 -5
- package/dist/{errors-BKy0EfhN.js → errors-B6R_lg2a.js} +13 -4
- package/dist/{errors-B_Qg9D3e.d.ts → errors-BIM4MFsJ.d.ts} +22 -6
- package/dist/{errors-BWXBMaKK.d.ts → errors-CHwoRRpB.d.ts} +4 -1
- package/dist/{errors-DpP_U6Bf.js → errors-Vpu6rKHl.js} +13 -10
- package/dist/{evaluate-B_oqFbWC.js → evaluate-BAmf_AQd.js} +153 -82
- package/dist/{evaluations-BCddEOfO.d.ts → evaluations-DOWuBpWv.d.ts} +11 -5
- package/dist/{evaluations-DReoiVBw.js → evaluations-IBceAeKT.js} +40 -19
- package/dist/eve/index.d.ts +9 -6
- package/dist/eve/index.js +4 -4
- package/dist/{event-time-CsegxXxB.js → event-time-BGy48400.js} +8 -4
- package/dist/{expiry-D4_YKRKD.js → expiry-6XByK0dm.js} +8 -5
- package/dist/express/index.d.ts +9 -6
- package/dist/express/index.js +9 -6
- package/dist/fastify/index.d.ts +16 -10
- package/dist/fastify/index.js +8 -5
- package/dist/{fetch-adapter-CuhyYwC1.d.ts → fetch-adapter-BIbBAtPZ.d.ts} +9 -6
- package/dist/{fetch-adapter-De-u6vhJ.js → fetch-adapter-dPTgJVHd.js} +14 -11
- package/dist/fields-D0vUI6dq.js +498 -0
- package/dist/{files-acUbNwWt.js → files-B3AA05f1.js} +8 -5
- package/dist/{files-D_JIzUrP.js → files-BSjrtIHw.js} +11 -4
- package/dist/{fixtures-BTMW6zgU.js → fixtures-A1_sp_tR.js} +15 -6
- package/dist/{flags-aaeRAdiD.js → flags-DXjoTVbS.js} +2 -2
- package/dist/{freeze-CrU8nQeX.js → freeze-jjan0lCv.js} +4 -1
- package/dist/{from-snapshot-Bz469dIh.js → from-snapshot-DCakWRsr.js} +18 -15
- package/dist/gen-BFfzZSLH.js +58 -0
- package/dist/gen-BtfFWGbz.js +827 -0
- package/dist/{generate-3FNO5P5Q.js → generate-CRVV5V7l.js} +14 -8
- package/dist/generate-CezbCaTI.js +275 -0
- package/dist/{grantee-BrRANrpT.js → grantee-Dke-9rd1.js} +4 -4
- package/dist/{grantee-conditions-C6P1Tvol.js → grantee-conditions-BrYPe-w0.js} +12 -12
- package/dist/{grantee-match-0RtHWQDx.js → grantee-match-7RZZvoT_.js} +12 -6
- package/dist/{graph-sql-B-dsAT6j.d.ts → graph-sql-BwFC4Qjs.d.ts} +3 -3
- package/dist/h3/index.d.ts +10 -7
- package/dist/h3/index.js +3 -3
- package/dist/headers-B9jQxjtW.d.ts +10 -0
- package/dist/{helpers-DY3vXuGs.js → helpers-DJicaG6f.js} +40 -28
- package/dist/hono/index.d.ts +16 -10
- package/dist/hono/index.js +5 -5
- package/dist/{hosted-XBgU6RGT.js → hosted-D0IzESu_.js} +42 -21
- package/dist/{hosted-BmjzxQhp.d.ts → hosted-DVxlLZMe.d.ts} +33 -21
- package/dist/{http-ujKm0JXE.js → http-DH94eh6f.js} +4 -4
- package/dist/{http-BBoKefeS.js → http-DKLXrFGk.js} +13 -7
- package/dist/{http-Ca3Sr5x1.js → http-DOL33cO0.js} +11 -8
- package/dist/{import-DB2EG_iy.js → import-ACkOrv6g.js} +6 -6
- package/dist/{import-Bz0GefWg.js → import-CST57XLp.js} +64 -51
- package/dist/{index-CMiPH2Tv.d.ts → index-BinlXeU-.d.ts} +64 -37
- package/dist/{index-BSfRl0hZ.d.ts → index-CV-7DWeD.d.ts} +64 -52
- package/dist/{index-BE8y3moU.d.ts → index-DJwEgYzA.d.ts} +127 -82
- package/dist/{index-DH9DUDEM.d.ts → index-Dj2qF9VC.d.ts} +54 -30
- package/dist/{index-BTkwrK7v.d.ts → index-vYjMrXyK.d.ts} +336 -173
- package/dist/{index-DLwcuCN_.d.ts → index-ymept53A.d.ts} +51 -30
- package/dist/index.d.ts +22 -22
- package/dist/index.js +34 -34
- package/dist/{init-B-4t1NzC.js → init-BjuFDYT1.js} +10 -10
- package/dist/{init-5TXNji88.js → init-txYTuW9u.js} +5 -5
- package/dist/{instance-options-CU0YQCLH.d.ts → instance-options-CoHn-0e8.d.ts} +4 -4
- package/dist/{instance-snapshot-CjcwnEiV.js → instance-snapshot-DuWf1cT3.js} +86 -61
- package/dist/{instant-BluqDvyS.js → instant-DK3Iz83e.js} +2 -2
- package/dist/{internals-Dk8A8fX3.js → internals-B3IgHrvo.js} +6 -3
- package/dist/{json-schema-B-vAwlde.js → json-schema-BPGa-RjQ.js} +9 -3
- package/dist/{json-schema-CN_iLFH2.d.ts → json-schema-BfXgnRNT.d.ts} +4 -4
- package/dist/jwt/index.d.ts +57 -27
- package/dist/jwt/index.js +24 -21
- package/dist/{kernel-DVExUwkp.js → kernel-qv4cr9w8.js} +32 -23
- package/dist/kysely/index.d.ts +49 -33
- package/dist/kysely/index.js +9 -7
- package/dist/{live-options-BaAFCIiu.js → live-options-BBIT68le.js} +2 -2
- package/dist/{load-DxroEzH1.js → load-DjSU5KXO.js} +6 -6
- package/dist/load-Dm0pSYH3.js +1 -0
- package/dist/{login-ClSJh5t5.js → login-CfImTJGb.js} +4 -4
- package/dist/{login-WC9HPJpU.js → login-CgfCTO3F.js} +16 -9
- package/dist/{manifest-Dv6q4i5s.js → manifest-B2QPh19C.js} +49 -38
- package/dist/{manifest-BVhExYhw.d.ts → manifest-CzzWtnAb.d.ts} +126 -31
- package/dist/{manifest-schema-Cv492Qev.js → manifest-schema-2r37XRhD.js} +44 -3
- package/dist/{manifest-B79YuF2T.js → manifest-wg8WkkpD.js} +6 -6
- package/dist/{map-claims-etGIS_Dv.js → map-claims-C-nv08_n.js} +16 -9
- package/dist/{map-error-BQGyDm_M.js → map-error-pasIGqMT.js} +7 -7
- package/dist/{markers-C6joDI3o.js → markers-BeHZ4x9Q.js} +20 -5
- package/dist/mcp/index.d.ts +114 -61
- package/dist/mcp/index.js +70 -40
- package/dist/{migrate-Dodel0IJ.js → migrate-B7oP_sQU.js} +35 -17
- package/dist/module-values-BJTBdo6y.js +107 -0
- package/dist/nest/index.d.ts +23 -13
- package/dist/nest/index.js +18 -11
- package/dist/next/client.d.ts +5 -2
- package/dist/next/client.js +1 -1
- package/dist/next/index.d.ts +79 -26
- package/dist/next/index.js +121 -10
- package/dist/next/plugin.d.ts +1 -1
- package/dist/next/plugin.js +4 -3
- package/dist/node/index.d.ts +5 -5
- package/dist/node/index.js +3 -3
- package/dist/{ocsf-BFp-PZZA.js → ocsf-TcjRBgIs.js} +15 -5
- package/dist/openai/index.d.ts +13 -7
- package/dist/openai/index.js +3 -3
- package/dist/openapi/index.d.ts +51 -30
- package/dist/openapi/index.js +2 -2
- package/dist/{openapi-ztVaux6j.js → openapi-BGeuunWC.js} +23 -14
- package/dist/{openapi-DMocl1bh.js → openapi-BIpw3Mb7.js} +4 -5
- package/dist/{openapi-Ddb4628T.js → openapi-BOsx0xn9.js} +33 -18
- package/dist/{operation-findings-kRcEp8lE.js → operation-findings-CXtFzlKJ.js} +3 -3
- package/dist/{operations-BNLes61x.d.ts → operations-Ci_rT6Uo.d.ts} +10 -7
- package/dist/orpc/index.d.ts +68 -14
- package/dist/orpc/index.js +62 -13
- package/dist/otel/index.d.ts +7 -4
- package/dist/otel/index.js +8 -5
- package/dist/{output-DgSDLrta.js → output-DV5dwOTs.js} +9 -5
- package/dist/output-files-BHOIlrfD.js +1 -0
- package/dist/{output-files-CCMdcFWb.js → output-files-BIQ_9pIs.js} +29 -17
- package/dist/ownership-DA5YdYTm.js +1059 -0
- package/dist/{parse-Ddhz2xf4.js → parse-1_ZheTW5.js} +16 -13
- package/dist/parse-local-manifest-CCmbhnxP.d.ts +10 -0
- package/dist/{parse-local-manifest-T1Q8X3A2.js → parse-local-manifest-DEiCF4ah.js} +19 -7
- package/dist/{parse-request-D_tUXG6M.js → parse-request-CwCZpyjV.js} +7 -8
- package/dist/{paths-DXSHAMIa.js → paths-CUvURzHp.js} +4 -1
- package/dist/pdp/index.d.ts +9 -6
- package/dist/pdp/index.js +20 -13
- package/dist/{peer-DOzzMfZL.js → peer-C9LvBCcb.js} +1 -1
- package/dist/{peer-12Q5I_RH.js → peer-Q0fuZ6hx.js} +9 -3
- package/dist/{permdock-BfWEeMqk.js → permdock-BvjivVb9.js} +200 -140
- package/dist/{permdock-Dco6dyCK.d.ts → permdock-CprAPN3w.d.ts} +260 -129
- package/dist/{permission-registry-DpPtSKNZ.js → permission-registry-B8tYxPIt.js} +23 -10
- package/dist/{permission-types-DhNEmoRG.d.ts → permission-types-CAY-GU7e.d.ts} +127 -41
- package/dist/{permissions-CoqCOfJ3.d.ts → permissions-Bx6UI8n1.d.ts} +6 -3
- package/dist/{permissions-CyH2MV_B.js → permissions-CVXmRILq.js} +3 -3
- package/dist/{permissions-DArULThq.js → permissions-CYcHj_w7.js} +8 -5
- package/dist/pg-DQTqRrou.js +60 -0
- package/dist/{pins-8ILTftC9.js → pins-nqarl3oE.js} +4 -1
- package/dist/{pkce-5h8NgMQJ.js → pkce-CnmmYqUZ.js} +1 -1
- package/dist/{policy-B7dg_yzu.d.ts → policy-BycVKnXv.d.ts} +5 -5
- package/dist/{policy-DaJy4nK4.js → policy-CLQ8__GF.js} +43 -23
- package/dist/{policy-from-catalog-DFWYkNdu.js → policy-from-catalog-CU3An8uP.js} +28 -25
- package/dist/{policy-module-CTlwMvLI.js → policy-module-xym9fnSq.js} +12 -6
- package/dist/{policy-types-B-F-qAZk.d.ts → policy-types-DGIO_gxq.d.ts} +782 -357
- package/dist/{postgres-store-BL9M_CA1.js → postgres-store-DcyrPS-r.js} +43 -16
- package/dist/{postgrest-r5faDIzD.js → postgrest-5Dr3W64L.js} +84 -86
- package/dist/{postgrest-CYacM_u7.d.ts → postgrest-D5nUGm-c.d.ts} +55 -35
- package/dist/powersync-B701tvhE.js +1 -0
- package/dist/{powersync-13odBwiM.js → powersync-Bg8u-JcR.js} +3 -3
- package/dist/{powersync-53ryOZip.js → powersync-CJrT1DSc.js} +127 -69
- package/dist/preset/index.d.ts +38 -28
- package/dist/preset/index.js +1 -1
- package/dist/{preset-CHTbd-DQ.js → preset-BjLzeFpp.js} +56 -32
- package/dist/{principal-source-pHneukrx.js → principal-source-C6N60GtM.js} +10 -10
- package/dist/prisma/index.d.ts +69 -41
- package/dist/prisma/index.js +21 -17
- package/dist/{problem-CTviyH5L.js → problem-BVLHFK33.js} +41 -21
- package/dist/{problem-details-cn5X30gZ.js → problem-details-CLDgX1KV.js} +13 -4
- package/dist/{problem-types-CJ2325SZ.js → problem-types-DSsRfONQ.js} +4 -1
- package/dist/{prompt-DwtVemER.js → prompt-BYc6drYW.js} +4 -1
- package/dist/protected-action-D8x73IGm.d.ts +58 -0
- package/dist/protected-action-DUYqb-Ma.js +80 -0
- package/dist/{protected-DXE3cQYg.js → protected-action-QEA8arRB.js} +48 -14
- package/dist/{provider-BQsTYYy0.js → provider-C55OGXJ7.js} +5 -4
- package/dist/{provider-Csk-THAn.d.ts → provider-DfLeek9O.d.ts} +1 -1
- package/dist/{provider-store-IgqQipCO.js → provider-store-CaTv00tr.js} +13 -9
- package/dist/{pull-CN5OLxrF.js → pull-2nJr0qg_.js} +12 -11
- package/dist/pull-C3EEGzSw.js +1 -0
- package/dist/{push-tVdG8dUL.js → push-Bn-lMEmI.js} +19 -13
- package/dist/{pushed-policy-CmYeSQqq.js → pushed-policy-CDuOL2de.js} +10 -7
- package/dist/{pushed-policy-BbcY9r_4.d.ts → pushed-policy-CryQheKq.d.ts} +12 -6
- package/dist/react/index.d.ts +9 -8
- package/dist/react/index.js +7 -6
- package/dist/react/provider-client.d.ts +1 -1
- package/dist/react/provider-client.js +1 -1
- package/dist/react-native/index.d.ts +94 -55
- package/dist/react-native/index.js +200 -61
- package/dist/{refs-CNJBiTFo.js → refs-C8BKxc_e.js} +2 -2
- package/dist/{relation-walk-3OyDBF0S.js → relation-walk-DK_gkgL7.js} +12 -9
- package/dist/{relations-BnCWnJGI.js → relations-BxvRvDHK.js} +3 -3
- package/dist/{replay-Du1tJjG7.js → replay-BU09ad4L.js} +1 -1
- package/dist/{replay-DCDD_ZfL.d.ts → replay-Bs9Df2fQ.d.ts} +1 -1
- package/dist/{request-context-BykKLmyE.js → request-context-Duzdf0cd.js} +8 -8
- package/dist/{request-schema-CMreVuFM.js → request-schema-DhX7UbfQ.js} +4 -1
- package/dist/resend/index.d.ts +34 -28
- package/dist/resend/index.js +29 -29
- package/dist/resolve-names-ConCSj1y.js +201 -0
- package/dist/{resource-relations-D_jw0BFx.js → resource-relations-8-pCScBO.js} +18 -9
- package/dist/{retire-Wj6dkyDE.js → retire-B2xffQgY.js} +15 -6
- package/dist/{revocations-R07lFBnX.d.ts → revocations-BaUXHM1N.d.ts} +6 -3
- package/dist/{rls-Ck_PocSp.js → rls-Ba9wN0SP.js} +13 -6
- package/dist/{rls-CxBZb4rZ.js → rls-Cx0dtsB7.js} +310 -128
- package/dist/{role-builder-C1VJzvcr.js → role-builder-BK2-T6oD.js} +41 -20
- package/dist/{row-conditions-h2HythXQ.js → row-conditions-BAGHOmVq.js} +4 -3
- package/dist/{rpc-Bk1bE-ch.js → rpc-vHIwyXCp.js} +8 -5
- package/dist/run-Ck22anC2.js +1 -0
- package/dist/{run-uLD2aWuO.js → run-PbRlXTfh.js} +26 -23
- package/dist/{run-ticket-BpNi7BCi.d.ts → run-ticket-B2o2Kxz8.d.ts} +29 -14
- package/dist/{run-ticket-B5d_63Ma.js → run-ticket-Dv7aF7Dk.js} +9 -9
- package/dist/{runtime-Vif3_-zf.js → runtime-BGnrOkVH.js} +5 -2
- package/dist/{saas-Az_Kz-4D.js → saas-DK4V-3Is.js} +42 -29
- package/dist/{scan-DSljDE1Y.js → scan-CRTj6fke.js} +1 -1
- package/dist/{schema-B4v0Qrac.js → schema-BOJjqlWL.js} +3 -2
- package/dist/{schema-gIcCx7zM.js → schema-BTsE1WRT.js} +8 -4
- package/dist/scim/index.d.ts +2 -2
- package/dist/scim/index.js +2 -2
- package/dist/{scim-C7JYhySg.js → scim-D8YupzX1.js} +2 -2
- package/dist/{scim-YNieBO1U.js → scim-jJBJ7g1Z.js} +33 -15
- package/dist/{scopes-BHsc-wp-.js → scopes-0Up_UA2t.js} +41 -23
- package/dist/server/index.d.ts +11 -11
- package/dist/server/index.js +12 -12
- package/dist/{server-Bnga6I50.js → server-3cVlTLde.js} +31 -31
- package/dist/{server-types-C4gZUEZy.d.ts → server-types-CyRN0-Cd.d.ts} +88 -46
- package/dist/{sha256-D9ihqmvd.js → sha256-C-4WXKIu.js} +4 -3
- package/dist/{shared-fMKOv8hP.js → shared-Afctg7B0.js} +65 -32
- package/dist/{shared-C8LjUdVU.js → shared-l0oGGetg.js} +9 -6
- package/dist/{signals-D3NcTKUS.js → signals-B1vHR3fN.js} +2 -2
- package/dist/{sink-Cp_Eot9W.d.ts → sink-B5zoUW_O.d.ts} +44 -20
- package/dist/{sink-BEZSlMS_.js → sink-D9_vh372.js} +32 -21
- package/dist/{skills-g_3BS9NC.js → skills-C9uKfSF5.js} +3 -3
- package/dist/{skills-Dcjw9_1C.js → skills-CQQcuGBi.js} +12 -8
- package/dist/{snapshot-CbGmYiJx.js → snapshot-CXlzi69u.js} +21 -18
- package/dist/{snapshot-cache-Pahd3IYJ.d.ts → snapshot-cache-BjAWkchD.d.ts} +21 -12
- package/dist/{snapshot-cache-DT2Kx1F8.js → snapshot-cache-Bx_4xC_6.js} +14 -11
- package/dist/solid/index.d.ts +55 -16
- package/dist/solid/index.js +46 -12
- package/dist/solid-start/index.d.ts +30 -12
- package/dist/solid-start/index.js +3 -3
- package/dist/{sources-B-zYB4GS.js → sources-CMAM-2A3.js} +46 -27
- package/dist/{sources-DEEuGb8S.d.ts → sources-CWG32C0G.d.ts} +126 -53
- package/dist/{sql-B96movIM.js → sql-0WjxIp9g.js} +28 -7
- package/dist/{sql-CDEPCA0g.d.ts → sql-B80DFdpG.d.ts} +2 -2
- package/dist/{src-DLFrtrrC.js → src-C_pi2Rnh.js} +292 -101
- package/dist/ssf/index.d.ts +3 -3
- package/dist/ssf/index.js +47 -35
- package/dist/{standard-webhooks-DgFFD-Ga.js → standard-webhooks-D67a3nzk.js} +5 -5
- package/dist/{standard-webhooks-B_qRg0ws.d.ts → standard-webhooks-DOYEuOLx.d.ts} +7 -7
- package/dist/{store-DSP9oGvh.js → store-RNFvaJJv.js} +32 -26
- package/dist/{store-options-B_poyYvg.js → store-options-Dil3lraY.js} +105 -15
- package/dist/stores-DZJvxFIZ.d.ts +59 -0
- package/dist/{stores-BqEuHC05.js → stores-DxZWDXCs.js} +42 -5
- package/dist/{stream-2Vwhl7Er.d.ts → stream-9y9qw51m.d.ts} +4 -3
- package/dist/{stream-CvdUS9V1.js → stream-CDvF0sJm.js} +5 -5
- package/dist/{style-Ds1gNm77.js → style-DblOtSga.js} +1 -1
- package/dist/{style-Cqo7-73x.js → style-Ds11Hmk4.js} +2 -1
- package/dist/{subject-settings-CkEwrw3W.js → subject-settings-8sH5HlII.js} +8 -4
- package/dist/{row-check-Dt35czLy.d.ts → subject-settings-vNW8qmUH.d.ts} +30 -18
- package/dist/supabase/index.d.ts +48 -38
- package/dist/supabase/index.js +5 -5
- package/dist/supabase/middleware.d.ts +19 -13
- package/dist/supabase/middleware.js +7 -7
- package/dist/{supabase--0aJdLEd.js → supabase-DnMMg5Fn.js} +79 -35
- package/dist/{supabase-Bqp7iIY2.js → supabase-SBs3MYUE.js} +3 -3
- package/dist/supabase-hook-C0FyEACZ.js +1 -0
- package/dist/{supabase-hook-Dg0SrQWR.js → supabase-hook-CrgU06WH.js} +175 -196
- package/dist/{supautils-MESd81bF.js → supautils-ByezN3b8.js} +385 -219
- package/dist/{support-session-Cna49-3f.js → support-session-BsmPCbz8.js} +21 -21
- package/dist/svelte/PermissionBoundary.svelte +2 -6
- package/dist/svelte/Protected.svelte +2 -8
- package/dist/svelte/index.d.ts +9 -8
- package/dist/svelte/index.js +10 -9
- package/dist/svelte/runtime.d.ts +4 -4
- package/dist/svelte/runtime.js +4 -4
- package/dist/svelte/source.d.ts +9 -8
- package/dist/svelte/source.js +6 -5
- package/dist/sveltekit/index.d.ts +30 -12
- package/dist/sveltekit/index.js +2 -2
- package/dist/{ownership-Z2LpxsGa.js → tables-BqrxBCir.js} +641 -1104
- package/dist/tanstack-start/index.d.ts +22 -10
- package/dist/tanstack-start/index.js +2 -2
- package/dist/{target-Bw37TFNA.js → target-qdEAnnhU.js} +6 -6
- package/dist/{tenancy-CmeBQ6Nv.js → tenancy-5d1zVBvK.js} +25 -19
- package/dist/terminal/index.d.ts +23 -14
- package/dist/terminal/index.js +17 -20
- package/dist/testing/core.d.ts +1 -1
- package/dist/testing/core.js +1 -1
- package/dist/testing/fixtures/index.d.ts +8 -5
- package/dist/testing/fixtures/index.js +78 -17
- package/dist/testing/index.d.ts +225 -141
- package/dist/testing/index.js +352 -234
- package/dist/testing/saas/index.d.ts +43 -27
- package/dist/testing/saas/index.js +2 -2
- package/dist/testing/saas/permissions.d.ts +1 -1
- package/dist/testing/saas/permissions.js +1 -1
- package/dist/{text-diff-DhITNCnD.js → text-diff-BtfSmdUo.js} +2 -2
- package/dist/{thenable-yD7SabqG.js → thenable-BNSM1U2R.js} +12 -3
- package/dist/{time-DkWjdL98.js → time-nR1JesoH.js} +32 -8
- package/dist/{token-2qYDvXz2.js → token-DC9EQiet.js} +14 -12
- package/dist/{tool-refusal-reAhIzdl.js → tool-refusal-Qpjs_W6M.js} +5 -2
- package/dist/trpc/index.d.ts +11 -8
- package/dist/trpc/index.js +15 -9
- package/dist/type-helpers-c7Xo_2Cu.d.ts +50 -0
- package/dist/{types-CfiKC5aN.d.ts → types-B2efzoSX.d.ts} +14 -11
- package/dist/{types-CIeZcG8v.d.ts → types-B6ExllNo.d.ts} +2 -2
- package/dist/{types-DBHftjgS.d.ts → types-BB-zWDcR.d.ts} +45 -33
- package/dist/{types-BfVmNJO5.d.ts → types-BMVDHvI0.d.ts} +128 -50
- package/dist/{types-DXmwu78Z.d.ts → types-CEinc15V.d.ts} +31 -14
- package/dist/{types-g7Oy6Zg4.d.ts → types-CN0LsqbK.d.ts} +47 -24
- package/dist/{types-CeIscIKp.d.ts → types-CWBsAwqn.d.ts} +23 -12
- package/dist/{types-DqzsnlSA.js → types-CcUXciSj.js} +17 -5
- package/dist/{types-BWZybqs9.d.ts → types-CzOeVvcC.d.ts} +384 -203
- package/dist/{types-DC44-hqb.d.ts → types-DLvhVm1r.d.ts} +59 -32
- package/dist/{types-D3A19w4A.d.ts → types-DlelvQk4.d.ts} +22 -13
- package/dist/{types-cTos-H7p.d.ts → types-DsHGPtkR.d.ts} +68 -32
- package/dist/{types-BXMYB7BY.d.ts → types-ZzRGoViD.d.ts} +77 -24
- package/dist/{types-CQVEQawv.d.ts → types-rCRV4Ge-.d.ts} +24 -14
- package/dist/types-tQB2CEnY.d.ts +262 -0
- package/dist/unplugin/index.d.ts +1 -1
- package/dist/unplugin/index.js +2 -2
- package/dist/usage-0hjZPIRX.js +1 -0
- package/dist/{usage-Bybmck7f.js → usage-B9EtHWLa.js} +50 -26
- package/dist/{usage-CDaLXCfL.js → usage-CBzgwfIs.js} +2 -2
- package/dist/{validation-error-ZfUHbKvf.js → validation-error-CYg2kJEw.js} +4 -1
- package/dist/{validation-error-CQpoquwj.d.ts → validation-error-uvp-kyfO.d.ts} +5 -2
- package/dist/{validity-CZ7-y0Cj.js → validity-Buc7w8E9.js} +13 -10
- package/dist/{verifier-DHuh-okk.js → verifier-DUV6pLqZ.js} +10 -4
- package/dist/{verify-pe8rL_Qw.js → verify-DlUcTDBz.js} +148 -487
- package/dist/version-DMQ0dnN5.js +48 -0
- package/dist/version-DizhmD72.js +1 -0
- package/dist/{views-BB8E9dTP.js → views-CD8wuL4Z.js} +19 -6
- package/dist/{vocabulary-Bg3eeT2H.d.ts → vocabulary-DEJ5j4mR.d.ts} +7 -4
- package/dist/vue/index.d.ts +71 -22
- package/dist/vue/index.js +50 -13
- package/dist/{waiter-DwEyouan.d.ts → waiter-CqUKX6CY.d.ts} +13 -10
- package/dist/{waiter-BGUtGYoU.js → waiter-aBLM63_f.js} +1 -1
- package/dist/{watch-C-4VmFlL.js → watch-BFDKqmUa.js} +8 -8
- package/dist/watch-ClLuO2TL.js +1 -0
- package/dist/webmcp/index.d.ts +11 -11
- package/dist/webmcp/index.js +8 -5
- package/dist/{where-scope-wq2coopv.js → where-scope-DlCdCM_8.js} +24 -18
- package/dist/{who-can-BwNsI_Js.js → who-can-BoDJm0Nc.js} +23 -20
- package/dist/workflow/index.d.ts +3 -3
- package/dist/workflow/index.js +13 -13
- package/dist/workflow-sdk/index.d.ts +19 -13
- package/dist/workflow-sdk/index.js +6 -6
- package/dist/{wrap-CiSc_KCq.js → wrap-B2wziJI_.js} +4 -4
- package/dist/{wrap-B6R0cMRL.d.ts → wrap-DxXB54Wu.d.ts} +8 -5
- package/package.json +8 -8
- package/schemas/catalog-v1.json +3 -0
- package/schemas/supabase-manifest-v1.json +33 -1
- package/skills/permdock-credentials/references/tokens-keys-links.md +8 -6
- package/skills/permdock-data/references/queries-and-rls.md +2 -1
- package/skills/permdock-tenancy/references/ownership-and-custom-roles.md +2 -2
- package/skills/permdock-wire/references/adapters.md +16 -23
- package/dist/catalog-BCCjSAdH.js +0 -1
- package/dist/collect-k_Dulxr5.js +0 -1
- package/dist/config-CoQHDrDi.js +0 -166
- package/dist/denied-text-D4qkEtFz.d.ts +0 -19
- package/dist/fields-ClcQLrVc.js +0 -238
- package/dist/generate-CNU1pIOo.js +0 -171
- package/dist/headers-BIjfMaoC.js +0 -8
- package/dist/headers-CIbDTUTK.d.ts +0 -7
- package/dist/load-DrMHXzgN.js +0 -1
- package/dist/output-files-DPAY7-GX.js +0 -1
- package/dist/package-root-Dk_ETdkp.js +0 -31
- package/dist/parse-local-manifest-e4mdwAKd.d.ts +0 -10
- package/dist/policies-B2lZIurj.js +0 -295
- package/dist/powersync-CExtTLyA.js +0 -1
- package/dist/problem-details-Tcfmj3bV.d.ts +0 -7
- package/dist/protected-BwZYL1X_.d.ts +0 -39
- package/dist/pull-Cty6Ovyu.js +0 -1
- package/dist/run-Bz7DXGEv.js +0 -1
- package/dist/stores-BAZwSYZA.d.ts +0 -31
- package/dist/supabase-hook-DJxC4PoP.js +0 -1
- package/dist/types-CKV71kKh.d.ts +0 -172
- package/dist/usage-y-kBNdqs.js +0 -1
- package/dist/version-CEbQ5UeM.js +0 -18
- package/dist/version-DXkYUISx.js +0 -1
- package/dist/watch-Bd9mx3rd.js +0 -1
|
@@ -1,11 +1,14 @@
|
|
|
1
|
-
import { T as Policy,
|
|
2
|
-
import { E as SsfPermDockOptions, O as SsfStreamConfiguration, T as SsfPermDock, _ as SetSubject, c as PushSetOptions, d as SetDelivery, g as SetQueue, h as SetPollHandlerOptions, k as SsfStreamStatus, m as SetEvent, p as SetError, t as CaepCommon, v as SignSetOptions } from "./types-
|
|
1
|
+
import { T as Policy, mt as TokenSigner, pr as Principal } from "./policy-types-DGIO_gxq.js";
|
|
2
|
+
import { E as SsfPermDockOptions, O as SsfStreamConfiguration, T as SsfPermDock, _ as SetSubject, c as PushSetOptions, d as SetDelivery, g as SetQueue, h as SetPollHandlerOptions, k as SsfStreamStatus, m as SetEvent, p as SetError, t as CaepCommon, v as SignSetOptions } from "./types-DsHGPtkR.js";
|
|
3
3
|
//#region src/ssf/create.d.ts
|
|
4
4
|
declare function createPermDock<TUser, TPrincipal extends Principal = Principal>(policy: Policy<TUser, TPrincipal>, options: SsfPermDockOptions): SsfPermDock;
|
|
5
5
|
//#endregion
|
|
6
6
|
//#region src/ssf/poll-client.d.ts
|
|
7
7
|
type PollSetsOptions = {
|
|
8
|
-
/**
|
|
8
|
+
/**
|
|
9
|
+
* The transmitter's RFC 8936 poll endpoint, the stream's
|
|
10
|
+
* `delivery.endpoint_url`.
|
|
11
|
+
*/
|
|
9
12
|
readonly endpoint: string;
|
|
10
13
|
/** The `Authorization` header value. */
|
|
11
14
|
readonly authorization?: string;
|
|
@@ -20,7 +23,10 @@ type PollSetsOptions = {
|
|
|
20
23
|
readonly fetch?: typeof fetch;
|
|
21
24
|
readonly signal?: AbortSignal;
|
|
22
25
|
};
|
|
23
|
-
/**
|
|
26
|
+
/**
|
|
27
|
+
* One SET from a poll response: its `jti` and the compact JWS, not yet
|
|
28
|
+
* verified.
|
|
29
|
+
*/
|
|
24
30
|
type PolledSet = {
|
|
25
31
|
readonly jti: string;
|
|
26
32
|
readonly set: string;
|
|
@@ -42,22 +48,25 @@ declare function pollSets(options: PollSetsOptions): Promise<PollSetsResult>;
|
|
|
42
48
|
//#region src/ssf/set-queue.d.ts
|
|
43
49
|
/**
|
|
44
50
|
* An in-process `SetQueue`: pending SETs per stream in insertion order. A
|
|
45
|
-
* process restart loses them; a deployment with more than one instance needs
|
|
46
|
-
*
|
|
51
|
+
* process restart loses them; a deployment with more than one instance needs a
|
|
52
|
+
* shared queue.
|
|
47
53
|
*/
|
|
48
54
|
declare function memorySetQueue(): SetQueue;
|
|
49
55
|
/**
|
|
50
|
-
* The RFC 8936 poll endpoint over a `SetQueue`. It applies the request's
|
|
51
|
-
*
|
|
52
|
-
*
|
|
53
|
-
*
|
|
56
|
+
* The RFC 8936 poll endpoint over a `SetQueue`. It applies the request's `acks`
|
|
57
|
+
* and `setErrs`, then answers `{ sets, moreAvailable }` with up to `maxEvents`
|
|
58
|
+
* pending SETs. It answers at once whatever `returnImmediately` says, which RFC
|
|
59
|
+
* 8936 section 2.4 allows.
|
|
54
60
|
*/
|
|
55
61
|
declare function setPollHandler(options: SetPollHandlerOptions): (request: Request) => Promise<Response>;
|
|
56
62
|
//#endregion
|
|
57
63
|
//#region src/ssf/streams.d.ts
|
|
58
64
|
/** One stream a transmitter holds and the receiver that created it. */
|
|
59
65
|
type SsfStream = {
|
|
60
|
-
/**
|
|
66
|
+
/**
|
|
67
|
+
* The receiver `ssfTransmitter`'s `authorize` answered when the stream was
|
|
68
|
+
* created.
|
|
69
|
+
*/
|
|
61
70
|
readonly owner: string;
|
|
62
71
|
readonly configuration: SsfStreamConfiguration;
|
|
63
72
|
};
|
|
@@ -68,15 +77,21 @@ type SsfStream = {
|
|
|
68
77
|
type SsfStreamStore = {
|
|
69
78
|
/** Names the implementation in errors and events. */
|
|
70
79
|
readonly name?: string;
|
|
71
|
-
create(owner: string, configuration: SsfStreamConfiguration)
|
|
72
|
-
get(streamId: string)
|
|
73
|
-
/**
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
+
create: (owner: string, configuration: SsfStreamConfiguration) => void | Promise<void>;
|
|
81
|
+
get: (streamId: string) => SsfStream | null | Promise<SsfStream | null>;
|
|
82
|
+
/**
|
|
83
|
+
* Every stream of `owner`, or every stream when `owner` is absent, oldest
|
|
84
|
+
* first.
|
|
85
|
+
*/
|
|
86
|
+
list: (owner?: string) => readonly SsfStream[] | Promise<readonly SsfStream[]>;
|
|
87
|
+
/**
|
|
88
|
+
* Replaces the configuration of the stream `configuration.stream_id`; the
|
|
89
|
+
* owner and status stay.
|
|
90
|
+
*/
|
|
91
|
+
update: (configuration: SsfStreamConfiguration) => void | Promise<void>;
|
|
92
|
+
delete: (streamId: string) => void | Promise<void>;
|
|
93
|
+
status: (streamId: string) => SsfStreamStatus | null | Promise<SsfStreamStatus | null>;
|
|
94
|
+
setStatus: (status: SsfStreamStatus) => void | Promise<void>;
|
|
80
95
|
};
|
|
81
96
|
/**
|
|
82
97
|
* An in-process `SsfStreamStore`. A process restart loses every stream; a
|
|
@@ -88,12 +103,18 @@ declare function memorySsfStreamStore(): SsfStreamStore;
|
|
|
88
103
|
type SsfTransmitterOptions = {
|
|
89
104
|
/** `iss` of every stream and of the metadata; the `iss` the signer writes. */
|
|
90
105
|
readonly issuer: string;
|
|
91
|
-
/**
|
|
106
|
+
/**
|
|
107
|
+
* The URL the handler is mounted at; endpoints are `<endpoint>/stream`,
|
|
108
|
+
* `/status`, `/verify` and `/poll`. Default `issuer`.
|
|
109
|
+
*/
|
|
92
110
|
readonly endpoint?: string;
|
|
93
111
|
readonly streams: SsfStreamStore;
|
|
94
112
|
readonly queue: SetQueue;
|
|
95
113
|
readonly signer: TokenSigner;
|
|
96
|
-
/**
|
|
114
|
+
/**
|
|
115
|
+
* The receiver the request's credentials authenticate, or `null` to refuse it
|
|
116
|
+
* with `401`.
|
|
117
|
+
*/
|
|
97
118
|
readonly authorize: (request: Request) => string | null | Promise<string | null>;
|
|
98
119
|
/** `aud` of a receiver's streams; default the receiver itself. */
|
|
99
120
|
readonly audience?: (receiver: string) => string | readonly string[];
|
|
@@ -110,7 +131,10 @@ type FanOutSetOptions = {
|
|
|
110
131
|
readonly signer: TokenSigner;
|
|
111
132
|
readonly fetch?: typeof fetch;
|
|
112
133
|
};
|
|
113
|
-
/**
|
|
134
|
+
/**
|
|
135
|
+
* How one stream took a SET. `queued` is `true` for a poll stream and for a
|
|
136
|
+
* paused push stream.
|
|
137
|
+
*/
|
|
114
138
|
type SsfFanOut = {
|
|
115
139
|
readonly stream: string;
|
|
116
140
|
readonly jti: string;
|
|
@@ -119,17 +143,17 @@ type SsfFanOut = {
|
|
|
119
143
|
};
|
|
120
144
|
/**
|
|
121
145
|
* Signs `event` once per distinct stream audience and delivers it to every
|
|
122
|
-
* stream that is not disabled and has the event in `events_delivered`: a
|
|
123
|
-
*
|
|
124
|
-
*
|
|
146
|
+
* stream that is not disabled and has the event in `events_delivered`: a push
|
|
147
|
+
* stream through `pushSet`, a poll stream or a paused stream into the queue.
|
|
148
|
+
* Answers one row per stream that took the event.
|
|
125
149
|
*/
|
|
126
150
|
declare function fanOutSet(event: SetEvent, options: FanOutSetOptions): Promise<readonly SsfFanOut[]>;
|
|
127
151
|
/**
|
|
128
152
|
* An SSF 1.0 transmitter as one Fetch handler, routed by path suffix:
|
|
129
|
-
* `/.well-known/ssf-configuration` (section 7.1), `/stream` (8.1.1),
|
|
130
|
-
*
|
|
131
|
-
*
|
|
132
|
-
*
|
|
153
|
+
* `/.well-known/ssf-configuration` (section 7.1), `/stream` (8.1.1), `/status`
|
|
154
|
+
* (8.1.2), `/verify` (8.1.4) and `/poll` (RFC 8936). Each receiver sees only
|
|
155
|
+
* the streams it created. Disabling or deleting a stream drops its pending
|
|
156
|
+
* SETs; a paused stream holds them until it is enabled again.
|
|
133
157
|
*/
|
|
134
158
|
declare function ssfTransmitter(options: SsfTransmitterOptions): (request: Request) => Promise<Response>;
|
|
135
159
|
//#endregion
|
|
@@ -140,15 +164,15 @@ declare const SSF_PUSH_DELIVERY = "urn:ietf:rfc:8935";
|
|
|
140
164
|
declare const SSF_POLL_DELIVERY = "urn:ietf:rfc:8936";
|
|
141
165
|
/**
|
|
142
166
|
* Signs one event as an RFC 8417 Security Event Token (`typ: secevent+jwt`):
|
|
143
|
-
* `sub_id` is the event's subject and `events` holds exactly one entry, as
|
|
144
|
-
*
|
|
167
|
+
* `sub_id` is the event's subject and `events` holds exactly one entry, as SSF
|
|
168
|
+
* 1.0 requires. `iss` is the signer's own.
|
|
145
169
|
*/
|
|
146
170
|
declare function signSet(event: SetEvent, signer: TokenSigner, options: SignSetOptions): Promise<string>;
|
|
147
171
|
/**
|
|
148
|
-
* Pushes one SET to a receiver (RFC 8935). A `2xx` is delivery; a `400`
|
|
149
|
-
*
|
|
150
|
-
*
|
|
151
|
-
*
|
|
172
|
+
* Pushes one SET to a receiver (RFC 8935). A `2xx` is delivery; a `400` maps
|
|
173
|
+
* the receiver's `err` to a cause; `401` and `403` are `authentication-failed`
|
|
174
|
+
* and `access-denied`; a network failure, a timeout, a `429` or a `5xx` is
|
|
175
|
+
* `unavailable` with `retry: true`. Never throws.
|
|
152
176
|
*/
|
|
153
177
|
declare function pushSet(set: string, options: PushSetOptions): Promise<SetDelivery>;
|
|
154
178
|
type CaepCredentialChange = CaepCommon & {
|
|
@@ -195,7 +219,10 @@ type RiscEvents = {
|
|
|
195
219
|
}) => SetEvent;
|
|
196
220
|
readonly credentialCompromise: (input: RiscCredentialCompromise) => SetEvent;
|
|
197
221
|
};
|
|
198
|
-
/**
|
|
222
|
+
/**
|
|
223
|
+
* RISC 1.0 event builders for the events PermDock's receiver treats as revoking
|
|
224
|
+
* every session.
|
|
225
|
+
*/
|
|
199
226
|
declare const riscEvents: RiscEvents;
|
|
200
227
|
/**
|
|
201
228
|
* The SSF 1.0 section 8.1.4 verification event for `stream`, echoing the
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { f as PermissionTree, u as Permission } from "./permission-types-
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import { c as ServerPermDock, l as ServerPermDockOptions } from "./server-types-C4gZUEZy.js";
|
|
1
|
+
import { J as DecisionSink, Ot as ApiKeyPrincipal, St as SupportSession, T as Policy, U as CredentialVerifier, Un as Decision, hr as Subject, ht as TokenVerifier, j as PolicyVocabulary, jt as CredentialKind, kt as Credential, mt as TokenSigner, pr as Principal, pt as TokenFailureCause, rn as AuthEvent, st as SettingsSource } from "./policy-types-DGIO_gxq.js";
|
|
2
|
+
import { f as PermissionTree, u as Permission } from "./permission-types-CAY-GU7e.js";
|
|
3
|
+
import { _ as PrincipalSource } from "./permdock-CprAPN3w.js";
|
|
4
|
+
import { a as ProblemDetails, s as Disclosure, t as ApprovalHint } from "./errors-BIM4MFsJ.js";
|
|
5
|
+
import { c as ServerPermDock, l as ServerPermDockOptions } from "./server-types-CyRN0-Cd.js";
|
|
7
6
|
//#region src/server/create.d.ts
|
|
8
7
|
/**
|
|
9
8
|
* The Fetch factory behind every HTTP adapter. The subject and actor are
|
|
@@ -21,9 +20,9 @@ type ProblemFromErrorOptions = {
|
|
|
21
20
|
};
|
|
22
21
|
/**
|
|
23
22
|
* Turns a thrown PermDock error into its Problem Details response, with the
|
|
24
|
-
* status, `WWW-Authenticate` and rate-limit fields `protect` sends for the
|
|
25
|
-
*
|
|
26
|
-
*
|
|
23
|
+
* status, `WWW-Authenticate` and rate-limit fields `protect` sends for the same
|
|
24
|
+
* decision. Returns `undefined` for anything else so the framework's own error
|
|
25
|
+
* path takes over.
|
|
27
26
|
*/
|
|
28
27
|
declare function problemFromError(error: unknown, options?: ProblemFromErrorOptions): Response | undefined;
|
|
29
28
|
//#endregion
|
|
@@ -35,7 +34,10 @@ type ApiKeyParts = {
|
|
|
35
34
|
readonly id: string;
|
|
36
35
|
readonly secret: string;
|
|
37
36
|
};
|
|
38
|
-
/**
|
|
37
|
+
/**
|
|
38
|
+
* What an application stores per key: the credential and the key's hash, never
|
|
39
|
+
* the key.
|
|
40
|
+
*/
|
|
39
41
|
type StoredCredential = {
|
|
40
42
|
readonly credential: Credential;
|
|
41
43
|
readonly hash: string;
|
|
@@ -43,19 +45,19 @@ type StoredCredential = {
|
|
|
43
45
|
/**
|
|
44
46
|
* Splits `pdk_<id>_<secret><checksum>`: `id` is 1 to 128 of `A-Z a-z 0-9 _ -`,
|
|
45
47
|
* the secret 43 base62 characters and the checksum the 6 base62 characters of
|
|
46
|
-
* the CRC-32 of everything before it. Anything else, including a checksum
|
|
47
|
-
*
|
|
48
|
+
* the CRC-32 of everything before it. Anything else, including a checksum that
|
|
49
|
+
* does not match, is `undefined`.
|
|
48
50
|
*/
|
|
49
51
|
declare function parseApiKey(key: unknown): ApiKeyParts | undefined;
|
|
50
52
|
/**
|
|
51
|
-
* Splits `pdfeed_<id>_<secret><checksum>`. `id` is `isFeedId`, the secret is
|
|
52
|
-
*
|
|
53
|
-
*
|
|
53
|
+
* Splits `pdfeed_<id>_<secret><checksum>`. `id` is `isFeedId`, the secret is 26
|
|
54
|
+
* lowercase base32 characters and the checksum is 6 more. A checksum that does
|
|
55
|
+
* not match is `undefined`.
|
|
54
56
|
*/
|
|
55
57
|
declare function parseFeedKey(key: unknown): ApiKeyParts | undefined;
|
|
56
58
|
/**
|
|
57
|
-
* A fresh `pdfeed_<id>_<secret><checksum>`: 26 lowercase base32 characters
|
|
58
|
-
*
|
|
59
|
+
* A fresh `pdfeed_<id>_<secret><checksum>`: 26 lowercase base32 characters (130
|
|
60
|
+
* bits) and a 6-character CRC-32 checksum. The whole key is lowercase.
|
|
59
61
|
*/
|
|
60
62
|
declare function generateFeedKey(id: string): string;
|
|
61
63
|
/**
|
|
@@ -67,11 +69,11 @@ declare function generateApiKey(id: string): string;
|
|
|
67
69
|
/** base64url SHA-256 of the whole key, the value to store and compare. */
|
|
68
70
|
declare function hashApiKey(key: string): Promise<string>;
|
|
69
71
|
/**
|
|
70
|
-
* A `CredentialVerifier` over the application's own table: `find` looks a
|
|
71
|
-
*
|
|
72
|
-
*
|
|
73
|
-
*
|
|
74
|
-
*
|
|
72
|
+
* A `CredentialVerifier` over the application's own table: `find` looks a key
|
|
73
|
+
* up by the id in it, and the key's hash is compared in constant time. A record
|
|
74
|
+
* that is not a valid v1 credential, or whose id is not the key's, verifies to
|
|
75
|
+
* `null`. A throwing `find` propagates, so the resolver denies with
|
|
76
|
+
* `source-threw`.
|
|
75
77
|
*/
|
|
76
78
|
declare function apiKeyVerifier(options: {
|
|
77
79
|
readonly find: (id: string) => StoredCredential | null | undefined | Promise<StoredCredential | null | undefined>;
|
|
@@ -80,14 +82,14 @@ declare function apiKeyVerifier(options: {
|
|
|
80
82
|
}): CredentialVerifier;
|
|
81
83
|
type MemoryCredentialStore = CredentialVerifier & {
|
|
82
84
|
/** Stores `credential` and returns its key; the key is never stored. */
|
|
83
|
-
issue(credential: Credential)
|
|
85
|
+
issue: (credential: Credential) => Promise<string>;
|
|
84
86
|
/** A new secret for the same id; the old key stops verifying at once. */
|
|
85
|
-
rotate(id: string)
|
|
87
|
+
rotate: (id: string) => Promise<string | undefined>;
|
|
86
88
|
/** `true` when a credential was removed. */
|
|
87
|
-
revoke(id: string)
|
|
88
|
-
list()
|
|
89
|
+
revoke: (id: string) => boolean;
|
|
90
|
+
list: () => readonly Credential[];
|
|
89
91
|
/** When `touch` last recorded a use of `id`, as RFC 3339. */
|
|
90
|
-
lastUsedAt(id: string)
|
|
92
|
+
lastUsedAt: (id: string) => string | undefined;
|
|
91
93
|
};
|
|
92
94
|
/**
|
|
93
95
|
* In-process credentials for tests and single-replica apps. `issue`, `rotate`
|
|
@@ -99,24 +101,30 @@ declare function memoryCredentialStore(options?: {
|
|
|
99
101
|
}): MemoryCredentialStore;
|
|
100
102
|
type ApiKeySubjectOptions = {
|
|
101
103
|
readonly verifier: CredentialVerifier;
|
|
102
|
-
/**
|
|
104
|
+
/**
|
|
105
|
+
* The definitions, to turn the credential's permission keys into its
|
|
106
|
+
* delegation.
|
|
107
|
+
*/
|
|
103
108
|
readonly permissions: PermissionTree;
|
|
104
109
|
/**
|
|
105
|
-
* Loads the live owner of a user-bound key: roles and memberships as of
|
|
106
|
-
*
|
|
107
|
-
*
|
|
108
|
-
*
|
|
109
|
-
*
|
|
110
|
+
* Loads the live owner of a user-bound key: roles and memberships as of this
|
|
111
|
+
* request, asked with the key's tenant. `null` (a deleted or suspended user)
|
|
112
|
+
* is anonymous with `owner-unavailable`, and a throw is `source-threw`.
|
|
113
|
+
* Without it the owner is `{ id, kind: 'user' }` and its rights come from the
|
|
114
|
+
* `memberships` source passed to `createPermDock`.
|
|
110
115
|
*/
|
|
111
116
|
readonly principals?: PrincipalSource;
|
|
112
|
-
/**
|
|
117
|
+
/**
|
|
118
|
+
* The tenant the request acts in: a user key is held to its owner's
|
|
119
|
+
* memberships there.
|
|
120
|
+
*/
|
|
113
121
|
readonly tenant?: string;
|
|
114
122
|
/** `true` when the application revoked the credential id; a throw denies. */
|
|
115
123
|
readonly revoked?: (id: string) => boolean | Promise<boolean>;
|
|
116
124
|
/**
|
|
117
|
-
* The tenant `credentials` policy, checked on every use so a tightened
|
|
118
|
-
*
|
|
119
|
-
*
|
|
125
|
+
* The tenant `credentials` policy, checked on every use so a tightened policy
|
|
126
|
+
* reaches existing keys: a service key's own tenant, a user key's the
|
|
127
|
+
* `tenant` the resolver is called with. A throw denies.
|
|
120
128
|
*/
|
|
121
129
|
readonly settings?: SettingsSource;
|
|
122
130
|
/** Receives a `credential` event with operation `used` for sampled uses. */
|
|
@@ -132,10 +140,10 @@ type ApiKeySubjectOptions = {
|
|
|
132
140
|
};
|
|
133
141
|
/**
|
|
134
142
|
* Resolves an opaque API key (`pdk_<id>_<secret>`) into the subject its
|
|
135
|
-
* credential acts as. Every failure (a malformed or unknown key, a record
|
|
136
|
-
*
|
|
137
|
-
*
|
|
138
|
-
*
|
|
143
|
+
* credential acts as. Every failure (a malformed or unknown key, a record that
|
|
144
|
+
* is not a valid credential, expiry, a tenant policy the key breaks, a revoked
|
|
145
|
+
* id, a missing owner, a throwing verifier, source or callback) is the
|
|
146
|
+
* anonymous subject, never a throw.
|
|
139
147
|
*/
|
|
140
148
|
declare function subjectFromApiKey(key: string | undefined | null, options: ApiKeySubjectOptions): Promise<Subject<ApiKeyPrincipal>>;
|
|
141
149
|
//#endregion
|
|
@@ -145,7 +153,7 @@ type SupportSessionFailureCause = TokenFailureCause | "invalid-claims" | "sessio
|
|
|
145
153
|
/** The live state of each support session, so one can end before it expires. */
|
|
146
154
|
type SupportSessionSource = {
|
|
147
155
|
/** The session as of now, or `null` for an unknown one. A throw ends it. */
|
|
148
|
-
session(id: string)
|
|
156
|
+
session: (id: string) => {
|
|
149
157
|
readonly id: string;
|
|
150
158
|
readonly ended?: boolean;
|
|
151
159
|
} | null | Promise<{
|
|
@@ -176,19 +184,19 @@ type SupportSessionContext = {
|
|
|
176
184
|
};
|
|
177
185
|
/**
|
|
178
186
|
* Signs a granted `SupportSession` as a `vnd.permdock.support-session+jwt`
|
|
179
|
-
* (`sub` the viewed principal, `act` the support actor, `jti` the session
|
|
180
|
-
*
|
|
187
|
+
* (`sub` the viewed principal, `act` the support actor, `jti` the session id)
|
|
188
|
+
* that expires with the session. Throws a `TypeError` for a record
|
|
181
189
|
* `parseSupportSession` refuses.
|
|
182
190
|
*/
|
|
183
191
|
declare function signSupportSession(session: SupportSession, signer: TokenSigner, options?: {
|
|
184
192
|
readonly audience?: string | readonly string[];
|
|
185
193
|
}): Promise<string>;
|
|
186
194
|
/**
|
|
187
|
-
* Resolves a `vnd.permdock.support-session+jwt` into the subject each
|
|
188
|
-
*
|
|
189
|
-
*
|
|
190
|
-
*
|
|
191
|
-
*
|
|
195
|
+
* Resolves a `vnd.permdock.support-session+jwt` into the subject each request
|
|
196
|
+
* of the session acts as: the viewed principal loaded live, a `support` actor,
|
|
197
|
+
* the session's permissions as the delegation and `context.supportSession`. The
|
|
198
|
+
* actor must still exist. Every failure is the anonymous subject, never a
|
|
199
|
+
* throw.
|
|
192
200
|
*/
|
|
193
201
|
declare function subjectFromSupportSession(token: string | undefined | null, options: SupportSessionSubjectOptions): Promise<Subject>;
|
|
194
202
|
//#endregion
|
|
@@ -196,15 +204,19 @@ declare function subjectFromSupportSession(token: string | undefined | null, opt
|
|
|
196
204
|
declare function wwwAuthenticate(decision: Decision, permission: Permission | undefined, credentials?: boolean): string | undefined;
|
|
197
205
|
declare function problemResponse(details: ProblemDetails, permission?: Permission, decision?: Decision, extra?: Readonly<Record<string, string>>, credentials?: boolean): Response;
|
|
198
206
|
declare function validationProblem(detail: string): Response;
|
|
199
|
-
|
|
207
|
+
type DecisionProblemOptions = {
|
|
200
208
|
readonly instance?: string;
|
|
201
209
|
readonly approval?: ApprovalHint;
|
|
202
210
|
/** `'hide'` on a loaded row: a denial answers as `404` `/not-found`. */
|
|
203
211
|
readonly disclosure?: Disclosure;
|
|
204
212
|
/** Whether the request carried credentials, which picks the `401` challenge. */
|
|
205
213
|
readonly credentials?: boolean;
|
|
206
|
-
/**
|
|
214
|
+
/**
|
|
215
|
+
* The scope an `insufficient_scope` challenge names; the permission's own
|
|
216
|
+
* scope when absent.
|
|
217
|
+
*/
|
|
207
218
|
readonly scope?: string;
|
|
208
|
-
}
|
|
219
|
+
};
|
|
220
|
+
declare function problemFromDecision(decision: Decision, permission: Permission, subject: Subject | undefined, options?: DecisionProblemOptions): Response;
|
|
209
221
|
//#endregion
|
|
210
222
|
export { subjectFromApiKey as C, createPermDock as E, parseFeedKey as S, problemFromError as T, generateApiKey as _, SupportSessionContext as a, memoryCredentialStore as b, SupportSessionSubjectOptions as c, ApiKeyFailureCause as d, ApiKeyParts as f, apiKeyVerifier as g, StoredCredential as h, wwwAuthenticate as i, signSupportSession as l, MemoryCredentialStore as m, problemResponse as n, SupportSessionFailureCause as o, ApiKeySubjectOptions as p, validationProblem as r, SupportSessionSource as s, problemFromDecision as t, subjectFromSupportSession as u, generateFeedKey as v, ProblemFromErrorOptions as w, parseApiKey as x, hashApiKey as y };
|