permdock 0.6.0 → 0.7.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 -0
- package/dist/{2020-C9VN-x8c.js → 2020-CJbO8Bvz.js} +1 -3
- package/dist/a2a/index.d.ts +5 -5
- package/dist/a2a/index.js +4 -4
- package/dist/{adoption-scan-DCYe60Pi.js → adoption-scan-D-feE7BE.js} +1 -1
- package/dist/agent/index.d.ts +3 -3
- package/dist/agent/index.js +1 -1
- package/dist/ai-sdk/index.d.ts +21 -6
- package/dist/ai-sdk/index.js +19 -9
- package/dist/{approval-prompt-DvSSPQJX.d.ts → approval-prompt-K0faOLFp.d.ts} +2 -2
- package/dist/approvals/index.d.ts +4 -4
- package/dist/approvals/index.js +4 -4
- package/dist/{approvals-p1PGoVjb.js → approvals-CMRfsbBh.js} +74 -48
- package/dist/{arazzo-41WuzHou.js → arazzo-ClrF3PVb.js} +2 -2
- package/dist/{arazzo-CaUVBn7D.js → arazzo-rdeJ8n1J.js} +4 -4
- package/dist/{args-IIolxxKA.js → args-CC3OwyHW.js} +112 -2
- package/dist/astro/index.d.ts +6 -6
- package/dist/astro/index.js +2 -2
- package/dist/{audience-DabClFLQ.js → audience-BrMs8c4o.js} +1 -1
- package/dist/{auth-DRLEizbL.js → auth-CscUX8Sy.js} +3 -4
- package/dist/authzen/index.d.ts +162 -22
- package/dist/authzen/index.js +315 -146
- package/dist/{automation-BNM3TtDo.d.ts → automation-DOtAFWdy.d.ts} +3 -3
- package/dist/{automation-DVjOckjV.js → automation-ySsxp_Yp.js} +1 -1
- package/dist/base-url-BQbddZO5.js +9 -0
- package/dist/better-auth/index.d.ts +2 -2
- package/dist/better-auth/index.js +2 -2
- package/dist/better-supabase/index.d.ts +50 -8
- package/dist/better-supabase/index.js +94 -32
- package/dist/{bind-CAvgUuKs.js → bind-D1nO6fiC.js} +5 -5
- package/dist/{bind-DOyrv6zi.d.ts → bind-JDuvxjuW.d.ts} +7 -7
- package/dist/{build-instance-Bu_eDqYw.js → build-instance-DxE7czo9.js} +1 -1
- package/dist/{canonical-json-BC8_nMTw.js → canonical-json-DwilZ1iB.js} +6 -3
- package/dist/{capability-Drg-1YhL.d.ts → capability-D4UC9TTW.d.ts} +2 -2
- package/dist/{capability-N1K9IpqS.js → capability-L7NnfhiE.js} +1 -1
- package/dist/{casbin-Cr7RLtA3.js → casbin-BHijLuHY.js} +2 -2
- package/dist/{casbin-Dyu2gnUD.js → casbin-BW9pS47J.js} +1 -1
- package/dist/{casl-64gpT-8x.js → casl-CmJlgziS.js} +2 -2
- package/dist/{casl-DjEDhTCP.js → casl-UbI8v-Wq.js} +1 -1
- package/dist/catalog/index.d.ts +70 -10
- package/dist/catalog/index.js +112 -6
- package/dist/catalog-BCCjSAdH.js +1 -0
- package/dist/{catalog-DZVbrF-z.js → catalog-BaMQfQ6Y.js} +3 -3
- package/dist/{catalog-HD2gf5mY.js → catalog-D69WhFii.js} +43 -13
- package/dist/{catalog-doc-Cdn7-0pQ.js → catalog-doc-CV9s6B1S.js} +28 -5
- package/dist/{catalog-fingerprint-CCP0-yQS.js → catalog-fingerprint-C144oW4M.js} +1 -1
- package/dist/{create-CQWIpUG-.js → challenge-nGWma08S.js} +122 -25
- package/dist/chat/index.d.ts +1 -1
- package/dist/chat/index.js +2 -2
- package/dist/chat-sdk/index.d.ts +3 -3
- package/dist/checks-BC_0mPIq.js +37 -0
- package/dist/claude-agent/index.d.ts +3 -3
- package/dist/claude-agent/index.js +2 -2
- package/dist/clerk/index.d.ts +3 -3
- package/dist/clerk/index.js +1 -1
- package/dist/cli/bin.js +2 -2
- package/dist/cli/index.d.ts +3 -3
- package/dist/cli/index.js +3 -3
- package/dist/cloud/index.d.ts +127 -11
- package/dist/cloud/index.js +251 -3
- package/dist/{cloud-ytQ3uviA.js → cloud-CO8pYtwr.js} +5 -5
- package/dist/{codemod-ua2hHy7w.js → codemod-BP6n8N9L.js} +3 -3
- package/dist/{codemod-5mpSpnUY.js → codemod-i4N2BhDc.js} +3 -3
- package/dist/{collect-mLTY4nwb.js → collect-BaWeMjwV.js} +17 -8
- package/dist/{collect-Ci6akVwH.js → collect-DNm3oKOk.js} +6 -5
- package/dist/collect-k_Dulxr5.js +1 -0
- package/dist/compile/index.d.ts +1 -1
- package/dist/compile/index.js +1 -1
- package/dist/{compile-CMqMx_IN.js → compile-BAEO5bOk.js} +2 -2
- package/dist/{compile-1bsAezL0.d.ts → compile-COM2VKuN.d.ts} +3 -3
- package/dist/{completion-BTFrHZhX.js → completion-BNdVf7X2.js} +3 -3
- package/dist/{config-bs_kZeYq.js → config-CoQHDrDi.js} +7 -3
- package/dist/{config-Bj2Ixq3d.js → config-DGZzMV1B.js} +2 -2
- package/dist/{config-report-DSpsLpCE.js → config-report-Cm7UITNA.js} +3 -3
- package/dist/connector-schema-_VCSsdtD.js +433 -0
- package/dist/{context-B_u3_bDJ.js → context--uM9V3Ui.js} +2 -2
- package/dist/convex/index.d.ts +5 -5
- package/dist/convex/index.js +2 -2
- package/dist/core-B5-w6Kw9.js +335 -0
- package/dist/core-CQkE8Esr.d.ts +179 -0
- package/dist/{create-B30OMUOJ.d.ts → create-B2-CQqCI.d.ts} +5 -5
- package/dist/{create-CGm28gyI.js → create-Cb86Z8Im.js} +9 -8
- package/dist/{create-DCF2SvoT.js → create-DJrlhEp9.js} +5 -5
- package/dist/{create-D_NmPOdH.d.ts → create-QHuuPw3q.d.ts} +7 -7
- package/dist/{create-CBMmFie-.d.ts → create-UTnUVETj.d.ts} +30 -10
- package/dist/{credential-BcoiejpY.js → credential-CIM7wHwA.js} +4 -4
- package/dist/{credentials-DPyHmYz5.js → credentials-BpuTwd7a.js} +1 -1
- package/dist/{deciding-columns-Sq12mEA6.js → deciding-columns-DRo2QM6E.js} +13 -2
- package/dist/{delegation-j6-rc37o.js → delegation-C5rOdTp5.js} +5 -5
- package/dist/delivery/index.d.ts +5 -5
- package/dist/delivery/index.js +4 -3
- package/dist/{delivery-DCAgNyCn.js → delivery-rwOKLWRm.js} +51 -2
- package/dist/{denied-text-CiFQNuMV.d.ts → denied-text-D4qkEtFz.d.ts} +2 -2
- package/dist/{describe-BybMRY7A.js → describe-DZlnEtLy.js} +1 -0
- package/dist/{describe-B5qgDvEW.d.ts → describe-O0SwYIK8.d.ts} +2 -2
- package/dist/{diff-CmuSD3vc.js → diff-Btr1c1Ow.js} +2 -2
- package/dist/{diff-3jbx6Rm4.js → diff-DzT-xD13.js} +10 -10
- package/dist/{doctor-BdZw53-k.js → doctor-BU1szn63.js} +241 -49
- package/dist/{doctor-3ZqNHX_G.js → doctor-BoK_y0KO.js} +4 -4
- package/dist/drizzle/index.d.ts +3 -3
- package/dist/drizzle/index.js +1 -1
- package/dist/elysia/index.d.ts +5 -5
- package/dist/elysia/index.js +3 -3
- package/dist/{errors-DH5QEGXh.d.ts → errors-B_Qg9D3e.d.ts} +2 -2
- package/dist/{errors-CWTY6uih.js → errors-DpP_U6Bf.js} +1 -0
- package/dist/{evaluate-CNClBvcj.js → evaluate-B_oqFbWC.js} +55 -12
- package/dist/{evaluations-C_1vdSZc.d.ts → evaluations-BCddEOfO.d.ts} +4 -4
- package/dist/{evaluations-beAooV0n.js → evaluations-DReoiVBw.js} +4 -4
- package/dist/eve/index.d.ts +5 -5
- package/dist/eve/index.js +3 -3
- package/dist/express/index.d.ts +5 -5
- package/dist/express/index.js +3 -3
- package/dist/fastify/index.d.ts +5 -5
- package/dist/fastify/index.js +3 -3
- package/dist/{fetch-adapter-Dw0MTS3D.d.ts → fetch-adapter-CuhyYwC1.d.ts} +4 -4
- package/dist/{fetch-adapter-DD_gfmrC.js → fetch-adapter-De-u6vhJ.js} +3 -3
- package/dist/{fields-OYG_JR78.js → fields-ClcQLrVc.js} +48 -13
- package/dist/{files-C5ZI27eV.js → files-acUbNwWt.js} +15 -2
- package/dist/{fixtures-B7XrLeY7.js → fixtures-BTMW6zgU.js} +2 -2
- package/dist/{flags-C3DktBDY.js → flags-aaeRAdiD.js} +2 -2
- package/dist/{from-snapshot-CTCMsFZk.js → from-snapshot-Bz469dIh.js} +17 -10
- package/dist/generate-3FNO5P5Q.js +159 -0
- package/dist/{grantee-hxrUsbpM.js → grantee-BrRANrpT.js} +1 -1
- package/dist/{grantee-conditions-CcXf8hMM.js → grantee-conditions-C6P1Tvol.js} +1 -1
- package/dist/{grantee-match-DbENBHLB.js → grantee-match-0RtHWQDx.js} +3 -3
- package/dist/h3/index.d.ts +4 -4
- package/dist/h3/index.js +3 -3
- package/dist/{helpers-CBYVMjwh.js → helpers-DY3vXuGs.js} +3 -3
- package/dist/hono/index.d.ts +5 -5
- package/dist/hono/index.js +3 -3
- package/dist/{hosted-BPk51-kX.d.ts → hosted-BmjzxQhp.d.ts} +14 -2
- package/dist/{hosted-B46-5LYE.js → hosted-XBgU6RGT.js} +34 -12
- package/dist/{http-DXJ37RDA.js → http-Ca3Sr5x1.js} +1 -1
- package/dist/{import-wyqXUyjm.js → import-Bz0GefWg.js} +5 -5
- package/dist/{import-CNV7I2Dw.js → import-DB2EG_iy.js} +3 -3
- package/dist/{index-C-6Letxg.d.ts → index-BE8y3moU.d.ts} +50 -8
- package/dist/{index-B8YjkEZ4.d.ts → index-BSfRl0hZ.d.ts} +6 -6
- package/dist/{index-DuWxc5dt.d.ts → index-BTkwrK7v.d.ts} +143 -14
- package/dist/index-CMiPH2Tv.d.ts +206 -0
- package/dist/{index-Ch8LpNDp.d.ts → index-DH9DUDEM.d.ts} +18 -3
- package/dist/{index-CueFnxQc.d.ts → index-DLwcuCN_.d.ts} +86 -7
- package/dist/index.d.ts +18 -17
- package/dist/index.js +27 -25
- package/dist/{init-GG6Jh8HD.js → init-5TXNji88.js} +5 -5
- package/dist/{init-DeMYsnYJ.js → init-B-4t1NzC.js} +4 -4
- package/dist/{instance-options-BsVpyGIk.d.ts → instance-options-CU0YQCLH.d.ts} +1 -1
- package/dist/{instance-snapshot-BOEhcqIF.js → instance-snapshot-CjcwnEiV.js} +16 -11
- package/dist/jwt/index.d.ts +83 -5
- package/dist/jwt/index.js +143 -5
- package/dist/{kernel-D0NVb1cK.js → kernel-DVExUwkp.js} +138 -12
- package/dist/kysely/index.d.ts +3 -3
- package/dist/kysely/index.js +1 -1
- package/dist/load-DrMHXzgN.js +1 -0
- package/dist/{load-DFS_ry0W.js → load-DxroEzH1.js} +2 -2
- package/dist/{login-Dfe5RlYk.js → login-ClSJh5t5.js} +4 -4
- package/dist/{login-imhuwvn3.js → login-WC9HPJpU.js} +6 -10
- package/dist/{manifest-C8IzW3Do.js → manifest-B79YuF2T.js} +6 -2
- package/dist/{manifest-mx5ghSFM.d.ts → manifest-BVhExYhw.d.ts} +23 -2
- package/dist/{manifest-dvL2XEe1.js → manifest-Dv6q4i5s.js} +54 -35
- package/dist/{manifest-schema-C0kK_8V0.js → manifest-schema-Cv492Qev.js} +37 -7
- package/dist/{map-claims-D3oRmTk0.js → map-claims-etGIS_Dv.js} +14 -11
- package/dist/{map-error-Dr70oA_3.js → map-error-BQGyDm_M.js} +1 -1
- package/dist/mcp/index.d.ts +64 -10
- package/dist/mcp/index.js +151 -22
- package/dist/{migrate-CIq4-E9F.js → migrate-Dodel0IJ.js} +77 -24
- package/dist/nest/index.d.ts +5 -5
- package/dist/nest/index.js +3 -3
- package/dist/next/index.d.ts +9 -9
- package/dist/next/index.js +5 -5
- package/dist/next/plugin.d.ts +1 -1
- package/dist/next/plugin.js +2 -2
- package/dist/node/index.d.ts +5 -5
- package/dist/node/index.js +2 -2
- package/dist/openai/index.d.ts +5 -5
- package/dist/openai/index.js +3 -3
- package/dist/openapi/index.d.ts +14 -4
- package/dist/openapi/index.js +1 -1
- package/dist/{openapi-C4dDTVEd.js → openapi-DMocl1bh.js} +4 -4
- package/dist/{openapi-B7HZ0f-r.js → openapi-Ddb4628T.js} +2 -7
- package/dist/{openapi-DD1SV-5-.js → openapi-ztVaux6j.js} +8 -8
- package/dist/{operation-findings-DgATDpvh.js → operation-findings-kRcEp8lE.js} +1 -1
- package/dist/{operations-X0VM7F3m.d.ts → operations-BNLes61x.d.ts} +1 -1
- package/dist/orpc/index.d.ts +6 -6
- package/dist/orpc/index.js +4 -4
- package/dist/otel/index.d.ts +3 -3
- package/dist/otel/index.js +1 -1
- package/dist/{output-1im__-08.js → output-DgSDLrta.js} +7 -3
- package/dist/{output-files-DhRBBE4n.js → output-files-CCMdcFWb.js} +2 -2
- package/dist/output-files-DPAY7-GX.js +1 -0
- package/dist/{ownership-DqaJNJPn.js → ownership-Z2LpxsGa.js} +443 -40
- package/dist/parse-Ddhz2xf4.js +148 -0
- package/dist/{parse-local-manifest-CVSs6J9I.js → parse-local-manifest-T1Q8X3A2.js} +24 -1
- package/dist/{parse-local-manifest-5ODwqu8b.d.ts → parse-local-manifest-e4mdwAKd.d.ts} +1 -1
- package/dist/pdp/index.d.ts +3 -3
- package/dist/pdp/index.js +7 -3
- package/dist/peer-12Q5I_RH.js +976 -0
- package/dist/{peer-CRvC7Hg1.js → peer-DOzzMfZL.js} +1 -1
- package/dist/{permdock-BrAscV28.js → permdock-BfWEeMqk.js} +177 -49
- package/dist/{permdock-SV8ZINYT.d.ts → permdock-Dco6dyCK.d.ts} +34 -5
- package/dist/{permission-registry-Br4jSNVi.js → permission-registry-DpPtSKNZ.js} +1 -1
- package/dist/{vocabulary-CN8H_9UF.d.ts → permission-types-DhNEmoRG.d.ts} +4 -64
- package/dist/{permissions-u_KHg-sN.d.ts → permissions-CoqCOfJ3.d.ts} +2 -1
- package/dist/{permissions-B-wCP5ZC.js → permissions-CyH2MV_B.js} +1 -1
- package/dist/{permissions-BPxlwVhN.js → permissions-DArULThq.js} +4 -4
- package/dist/pkce-5h8NgMQJ.js +21 -0
- package/dist/{policies-DP2nqRoF.js → policies-B2lZIurj.js} +3 -3
- package/dist/{policy-77FSAq_V.d.ts → policy-B7dg_yzu.d.ts} +2 -2
- package/dist/{policy-DbM5YYtV.js → policy-DaJy4nK4.js} +17 -8
- package/dist/{policy-from-catalog-C2gMa2Dj.js → policy-from-catalog-DFWYkNdu.js} +9 -9
- package/dist/{policy-types-n0uRTsW8.d.ts → policy-types-B-F-qAZk.d.ts} +83 -4
- package/dist/postgres-store-BL9M_CA1.js +1001 -0
- package/dist/{postgrest-CEgRbefE.d.ts → postgrest-CYacM_u7.d.ts} +12 -1
- package/dist/{postgrest-DAjUkF9w.js → postgrest-r5faDIzD.js} +37 -4
- package/dist/{powersync-DISt6SUe.js → powersync-13odBwiM.js} +3 -3
- package/dist/powersync-53ryOZip.js +1059 -0
- package/dist/powersync-CExtTLyA.js +1 -0
- package/dist/preset/index.js +1 -1
- package/dist/{preset-DZdU0tne.js → preset-CHTbd-DQ.js} +2 -2
- package/dist/prisma/index.d.ts +2 -2
- package/dist/prisma/index.js +1 -1
- package/dist/{problem-details-B45V5d2b.d.ts → problem-details-Tcfmj3bV.d.ts} +1 -1
- package/dist/prompt-DwtVemER.js +935 -0
- package/dist/{protected-RFGpakN9.d.ts → protected-BwZYL1X_.d.ts} +6 -5
- package/dist/{protected-BlF0F6wL.js → protected-DXE3cQYg.js} +2 -2
- package/dist/{provider-B1al-AZz.js → provider-BQsTYYy0.js} +2 -2
- package/dist/{provider-DILL9oPK.d.ts → provider-Csk-THAn.d.ts} +1 -1
- package/dist/{provider-store-DM6DNcta.js → provider-store-IgqQipCO.js} +2 -2
- package/dist/{pull-jEwbf80J.js → pull-CN5OLxrF.js} +7 -7
- package/dist/pull-Cty6Ovyu.js +1 -0
- package/dist/{push-BD4f15co.js → push-tVdG8dUL.js} +54 -14
- package/dist/{pushed-policy-DCW91KQU.d.ts → pushed-policy-BbcY9r_4.d.ts} +1 -1
- package/dist/{pushed-policy-CqtxkV4G.js → pushed-policy-CmYeSQqq.js} +1 -1
- package/dist/react/index.d.ts +6 -6
- package/dist/react/index.js +3 -3
- package/dist/react/provider-client.d.ts +1 -1
- package/dist/react/provider-client.js +1 -1
- package/dist/react-native/index.d.ts +25 -11
- package/dist/react-native/index.js +209 -21
- package/dist/{refs-K6eWUJ0H.js → refs-CNJBiTFo.js} +15 -1
- package/dist/{replay-Bkm-Ne4l.d.ts → replay-DCDD_ZfL.d.ts} +1 -1
- package/dist/{request-context-C81Pip9n.js → request-context-BykKLmyE.js} +2 -2
- package/dist/resend/index.d.ts +4 -4
- package/dist/{retire-CALjIQ7e.js → retire-Wj6dkyDE.js} +2 -2
- package/dist/{rls-BAqP4q66.js → rls-Ck_PocSp.js} +32 -8
- package/dist/{rls-DTvYd-lI.js → rls-CxBZb4rZ.js} +478 -534
- package/dist/{role-builder-uWQZ4v84.js → role-builder-C1VJzvcr.js} +3 -3
- package/dist/rolldown-runtime-C3I60J0A.js +4 -0
- package/dist/{rpc-VSl5ylaQ.js → rpc-Bk1bE-ch.js} +1 -1
- package/dist/run-Bz7DXGEv.js +1 -0
- package/dist/{run-ticket-sxFI6LAk.js → run-ticket-B5d_63Ma.js} +22 -1
- package/dist/{run-ticket-DocwaTKn.d.ts → run-ticket-BpNi7BCi.d.ts} +8 -3
- package/dist/{run-CUKuz0A8.js → run-uLD2aWuO.js} +7 -7
- package/dist/{runtime-D3VTAiCA.js → runtime-Vif3_-zf.js} +1 -1
- package/dist/{saas-BCXRuXca.js → saas-Az_Kz-4D.js} +7 -7
- package/dist/{scan-qvOe0hS3.js → scan-DSljDE1Y.js} +1 -1
- package/dist/{schema-yLuBWWsh.js → schema-gIcCx7zM.js} +1 -1
- package/dist/scim/index.d.ts +3 -2
- package/dist/scim/index.js +3 -1
- package/dist/scim-C7JYhySg.js +44 -0
- package/dist/{scim-ClHtpyV3.js → scim-YNieBO1U.js} +3 -537
- package/dist/{scopes-CUPSjo9q.js → scopes-BHsc-wp-.js} +1 -1
- package/dist/server/index.d.ts +11 -11
- package/dist/server/index.js +7 -7
- package/dist/{server-C3WXAHZj.js → server-Bnga6I50.js} +3 -3
- package/dist/{server-types-CKQiCnON.d.ts → server-types-C4gZUEZy.d.ts} +9 -9
- package/dist/{shared-DvvFzYXe.js → shared-C8LjUdVU.js} +1 -1
- package/dist/{shared-BAK8t4Uo.js → shared-fMKOv8hP.js} +44 -38
- package/dist/{sink-4-eQIRWf.d.ts → sink-Cp_Eot9W.d.ts} +4 -4
- package/dist/{skills-B6lVdD_W.js → skills-Dcjw9_1C.js} +5 -5
- package/dist/{skills-CTYwkl44.js → skills-g_3BS9NC.js} +3 -3
- package/dist/{snapshot-B7DkYg6g.js → snapshot-CbGmYiJx.js} +4 -4
- package/dist/{snapshot-cache-DZHQ0KF6.js → snapshot-cache-DT2Kx1F8.js} +1 -1
- package/dist/{snapshot-cache-PXI-vGpY.d.ts → snapshot-cache-Pahd3IYJ.d.ts} +1 -1
- package/dist/solid/index.d.ts +6 -5
- package/dist/solid/index.js +4 -4
- package/dist/solid-start/index.d.ts +6 -6
- package/dist/solid-start/index.js +3 -3
- package/dist/{sources-vs5dGOsS.js → sources-B-zYB4GS.js} +111 -25
- package/dist/{sources-Xc4zkszI.d.ts → sources-DEEuGb8S.d.ts} +63 -14
- package/dist/sources-qoIJQrJv.js +11 -0
- package/dist/{sql-B5T1IL83.js → sql-B96movIM.js} +5 -1
- package/dist/sql-CDEPCA0g.d.ts +10 -0
- package/dist/{src-Cu2m75uo.js → src-DLFrtrrC.js} +140 -48
- package/dist/ssf/index.d.ts +4 -4
- package/dist/ssf/index.js +640 -211
- package/dist/{standard-webhooks-rbD7LS6h.d.ts → standard-webhooks-B_qRg0ws.d.ts} +2 -2
- package/dist/{store-BDutJkDL.js → store-DSP9oGvh.js} +15 -7
- package/dist/{store-options-u0ycEe8s.js → store-options-B_poyYvg.js} +6 -6
- package/dist/{stores-BUGNbJTt.d.ts → stores-BAZwSYZA.d.ts} +6 -5
- package/dist/{stores-CGhM8BN_.js → stores-BqEuHC05.js} +2 -2
- package/dist/{stream-CeCMJmBB.d.ts → stream-2Vwhl7Er.d.ts} +2 -2
- package/dist/{style-Uao76wO7.js → style-Cqo7-73x.js} +1 -0
- package/dist/{style-DiKWnAvn.js → style-Ds1gNm77.js} +1 -1
- package/dist/supabase/index.d.ts +8 -7
- package/dist/supabase/index.js +5 -5
- package/dist/supabase/middleware.d.ts +6 -6
- package/dist/supabase/middleware.js +6 -6
- package/dist/{supabase-x5JtR2tc.js → supabase--0aJdLEd.js} +8 -6
- package/dist/{supabase-By_frk3U.js → supabase-Bqp7iIY2.js} +3 -3
- package/dist/supabase-hook-DJxC4PoP.js +1 -0
- package/dist/{supabase-hook-BMoEhZir.js → supabase-hook-Dg0SrQWR.js} +1060 -119
- package/dist/supautils-MESd81bF.js +689 -0
- package/dist/{support-session-C6xJQYut.js → support-session-Cna49-3f.js} +2 -2
- package/dist/svelte/index.d.ts +5 -5
- package/dist/svelte/index.js +5 -5
- package/dist/svelte/runtime.d.ts +3 -3
- package/dist/svelte/runtime.js +3 -3
- package/dist/svelte/source.d.ts +5 -5
- package/dist/svelte/source.js +2 -2
- package/dist/sveltekit/index.d.ts +6 -6
- package/dist/sveltekit/index.js +2 -2
- package/dist/tanstack-start/index.d.ts +6 -6
- package/dist/tanstack-start/index.js +2 -2
- package/dist/{tenancy-DN2QAx9z.js → tenancy-CmeBQ6Nv.js} +12 -3
- package/dist/terminal/index.d.ts +6 -6
- package/dist/terminal/index.js +3 -3
- package/dist/testing/core.d.ts +2 -0
- package/dist/testing/core.js +1 -0
- package/dist/testing/fixtures/index.d.ts +12 -0
- package/dist/testing/fixtures/index.js +770 -0
- package/dist/testing/index.d.ts +41 -174
- package/dist/testing/index.js +241 -731
- package/dist/testing/saas/index.d.ts +5 -5
- 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 +444 -0
- package/dist/{token-BLZcjQgt.js → token-2qYDvXz2.js} +1 -1
- package/dist/{tool-refusal-CMLN5xhn.js → tool-refusal-reAhIzdl.js} +1 -1
- package/dist/trpc/index.d.ts +6 -6
- package/dist/trpc/index.js +3 -3
- package/dist/{types-Dfv0aTER.d.ts → types-BWZybqs9.d.ts} +110 -8
- package/dist/{types-Druu9wLM.d.ts → types-BXMYB7BY.d.ts} +2 -2
- package/dist/{types-BzzaHxt3.d.ts → types-BfVmNJO5.d.ts} +14 -3
- package/dist/{types-lUlG3TVd.d.ts → types-CIeZcG8v.d.ts} +2 -2
- package/dist/{types-B3_ooZgZ.d.ts → types-CKV71kKh.d.ts} +4 -4
- package/dist/{types-CX7AvRqP.d.ts → types-CQVEQawv.d.ts} +4 -4
- package/dist/{types-C863OQiR.d.ts → types-CeIscIKp.d.ts} +4 -4
- package/dist/{types-C_IiEs64.d.ts → types-CfiKC5aN.d.ts} +1 -1
- package/dist/{types-_WhUP7ud.d.ts → types-D3A19w4A.d.ts} +8 -4
- package/dist/{types-8RnwUAvE.d.ts → types-DBHftjgS.d.ts} +15 -8
- package/dist/{types-BdtSDbBO.d.ts → types-DC44-hqb.d.ts} +2 -2
- package/dist/{types-CVZSNocA.d.ts → types-DXmwu78Z.d.ts} +4 -4
- package/dist/{types-C791HFu9.d.ts → types-cTos-H7p.d.ts} +2 -2
- package/dist/{types-BtHtcKMr.d.ts → types-g7Oy6Zg4.d.ts} +3 -3
- package/dist/unplugin/index.d.ts +1 -1
- package/dist/unplugin/index.js +2 -2
- package/dist/{usage-SveTRTyr.js → usage-Bybmck7f.js} +7 -7
- package/dist/{usage-CRVl9V3t.js → usage-CDaLXCfL.js} +2 -2
- package/dist/usage-y-kBNdqs.js +1 -0
- package/dist/{validation-error-DHUrAkku.d.ts → validation-error-CQpoquwj.d.ts} +1 -1
- package/dist/{verify-BaAKx7t6.js → verify-pe8rL_Qw.js} +350 -83
- package/dist/{views-DTIIO-oQ.js → views-BB8E9dTP.js} +1 -1
- package/dist/vocabulary-Bg3eeT2H.d.ts +67 -0
- package/dist/vue/index.d.ts +6 -5
- package/dist/vue/index.js +4 -4
- package/dist/{waiter-B986w1oK.d.ts → waiter-DwEyouan.d.ts} +2 -2
- package/dist/watch-Bd9mx3rd.js +1 -0
- package/dist/{watch-vea54PRw.js → watch-C-4VmFlL.js} +3 -3
- package/dist/webmcp/index.d.ts +2 -2
- package/dist/webmcp/index.js +2 -2
- package/dist/{where-scope-C9vfEphl.js → where-scope-wq2coopv.js} +41 -21
- package/dist/{who-can-DWBAcaCQ.js → who-can-BwNsI_Js.js} +6 -6
- package/dist/workflow/index.d.ts +3 -3
- package/dist/workflow/index.js +5 -5
- package/dist/workflow-sdk/index.d.ts +5 -5
- package/dist/{wrap-C5jC6sKI.d.ts → wrap-B6R0cMRL.d.ts} +2 -2
- package/dist/{wrap-gX61EtpB.js → wrap-CiSc_KCq.js} +8 -2
- package/package.json +22 -11
- package/schemas/cli-result-v1.json +1 -0
- package/schemas/cloud-api-v1.json +152 -7
- package/schemas/connector-v1.json +8 -0
- package/schemas/supabase-claims-v1.json +5 -0
- package/schemas/supabase-manifest-v1.json +276 -75
- package/skills/permdock/SKILL.md +1 -0
- package/skills/permdock-agents/references/runtimes.md +3 -1
- package/skills/permdock-approvals/references/stores-and-resume.md +2 -1
- package/skills/permdock-data/references/queries-and-rls.md +4 -1
- package/skills/permdock-tenancy/SKILL.md +1 -1
- package/skills/permdock-tenancy/references/ownership-and-custom-roles.md +1 -0
- package/skills/permdock-wire/references/adapters.md +14 -0
- package/skills/permdock-wire/references/policy-options.md +1 -0
- package/dist/catalog-BoWglDPI.js +0 -1
- package/dist/collect-D7eQDffE.js +0 -1
- package/dist/index-Cp_ilKi1.d.ts +0 -91
- package/dist/load-BxEtwlBS.js +0 -1
- package/dist/output-files-B3IZJksC.js +0 -1
- package/dist/parse-Cxq0WxrA.js +0 -53
- package/dist/peer-C8swJ2GH.js +0 -50
- package/dist/powersync-BkWWCS1K.js +0 -538
- package/dist/powersync-MMJ2mI2q.js +0 -1
- package/dist/prompt-DfZLJLIn.js +0 -32
- package/dist/pull-CvpINcMK.js +0 -1
- package/dist/run-DDwUaJDU.js +0 -1
- package/dist/supabase-hook-CCw5m35C.js +0 -1
- package/dist/supautils-B6HYL9eL.js +0 -91
- package/dist/text-diff-BQcUapOb.js +0 -15
- package/dist/usage-CZpSQP6L.js +0 -1
- package/dist/watch--ovlPOc0.js +0 -1
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { m as ApprovalStore } from "./types-
|
|
5
|
-
import { a as ProblemDetails, t as ApprovalHint } from "./errors-
|
|
6
|
-
import { t as InstanceOptions } from "./instance-options-
|
|
1
|
+
import { Gt as Snapshot, Ln as Decision, Rt as Instant, Zn as Actor, ar as JsonWebKeyLike, j as PolicyVocabulary, lr as Subject } from "./policy-types-B-F-qAZk.js";
|
|
2
|
+
import { u as Permission } from "./permission-types-DhNEmoRG.js";
|
|
3
|
+
import { a as PermDock, l as SnapshotOptions } from "./permdock-Dco6dyCK.js";
|
|
4
|
+
import { m as ApprovalStore } from "./types-DC44-hqb.js";
|
|
5
|
+
import { a as ProblemDetails, t as ApprovalHint } from "./errors-B_Qg9D3e.js";
|
|
6
|
+
import { t as InstanceOptions } from "./instance-options-CU0YQCLH.js";
|
|
7
7
|
import { t as RequestContext } from "./request-context-C2_1lchh.js";
|
|
8
|
-
import { n as PermDockWrap } from "./wrap-
|
|
8
|
+
import { n as PermDockWrap } from "./wrap-B6R0cMRL.js";
|
|
9
9
|
import { n as RevocationFeed } from "./revocations-R07lFBnX.js";
|
|
10
|
-
import { r as PdpFactory } from "./types-
|
|
11
|
-
import { i as evaluationsHandler } from "./evaluations-
|
|
10
|
+
import { r as PdpFactory } from "./types-D3A19w4A.js";
|
|
11
|
+
import { i as evaluationsHandler } from "./evaluations-BCddEOfO.js";
|
|
12
12
|
//#region src/server/connection.d.ts
|
|
13
13
|
type ConnectionData<T> = T | (() => T | null | undefined | Promise<T | null | undefined>);
|
|
14
14
|
type ConnectionOptions<T = unknown> = {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { a as durationOf, f as nowMillis } from "./time-DkWjdL98.js";
|
|
2
|
-
import { t as decisionToken } from "./token-
|
|
2
|
+
import { t as decisionToken } from "./token-2qYDvXz2.js";
|
|
3
3
|
//#region src/pdp/shared.ts
|
|
4
4
|
const MAX_CACHE_TTL = 30;
|
|
5
5
|
const CACHE_MAX = 1e3;
|
|
@@ -1,43 +1,9 @@
|
|
|
1
1
|
import { r as isRecord } from "./compact-CAf557ZB.js";
|
|
2
2
|
import { n as isForbiddenKey } from "./paths-DXSHAMIa.js";
|
|
3
3
|
import { t as byCodePoint } from "./compare-pfyVnBjE.js";
|
|
4
|
-
import { i as configError } from "./errors-
|
|
5
|
-
import { a as quoteQualifiedTable, c as quoteSqlTable, o as quoteSqlIdent, s as quoteSqlLiteral, t as SQL_IDENT } from "./sql-
|
|
6
|
-
import "./sources-
|
|
7
|
-
//#region src/cli/sql/quote.ts
|
|
8
|
-
function quoteIdent(name) {
|
|
9
|
-
return quoteSqlIdent(name, CLI);
|
|
10
|
-
}
|
|
11
|
-
function quoteTable(name) {
|
|
12
|
-
return quoteSqlTable(name, CLI);
|
|
13
|
-
}
|
|
14
|
-
/** A table name with `public.` added when it names no schema, quoted. */
|
|
15
|
-
function quoteQualified(name) {
|
|
16
|
-
return quoteQualifiedTable(name, CLI);
|
|
17
|
-
}
|
|
18
|
-
function helperSchema(ctx) {
|
|
19
|
-
return ctx.schema ?? "permdock";
|
|
20
|
-
}
|
|
21
|
-
function qualified(ctx, name) {
|
|
22
|
-
return `${quoteIdent(helperSchema(ctx))}.${name}`;
|
|
23
|
-
}
|
|
24
|
-
function quoteLiteral(value) {
|
|
25
|
-
return quoteSqlLiteral(value);
|
|
26
|
-
}
|
|
27
|
-
const CLI = "PermDock CLI";
|
|
28
|
-
function declaredArray(values) {
|
|
29
|
-
return values.length === 0 ? `'{}'::text[]` : `array[${values.map(quoteLiteral).join(", ")}]::text[]`;
|
|
30
|
-
}
|
|
31
|
-
/**
|
|
32
|
-
* A text array as a Postgres literal (`'{admin,owner}'`). An element that
|
|
33
|
-
* holds a delimiter, a brace, a quote, a backslash, whitespace, or that
|
|
34
|
-
* reads as `NULL`, is double-quoted and escaped, so one element can never
|
|
35
|
-
* split into several.
|
|
36
|
-
*/
|
|
37
|
-
function textArrayLiteral(values) {
|
|
38
|
-
return quoteLiteral(`{${values.map((value) => value === "" || /[\s,{}"\\]/u.test(value) || /^null$/iu.test(value) ? `"${value.replaceAll("\\", "\\\\").replaceAll("\"", "\\\"")}"` : value).join(",")}}`);
|
|
39
|
-
}
|
|
40
|
-
//#endregion
|
|
4
|
+
import { i as configError } from "./errors-DpP_U6Bf.js";
|
|
5
|
+
import { a as quoteQualifiedTable, c as quoteSqlTable, o as quoteSqlIdent, s as quoteSqlLiteral, t as SQL_IDENT } from "./sql-B96movIM.js";
|
|
6
|
+
import "./sources-B-zYB4GS.js";
|
|
41
7
|
//#region src/cli/sql/columns.ts
|
|
42
8
|
/** The Postgres type a JSON Schema property compares as; `undefined` for text or an unknown shape. */
|
|
43
9
|
function columnTypeOf(property) {
|
|
@@ -111,6 +77,40 @@ function scopeTypeOf(ctx, name) {
|
|
|
111
77
|
return name === ctx.scopes[1]?.name ? teamTypeOf(ctx) : tenantTypeOf(ctx);
|
|
112
78
|
}
|
|
113
79
|
//#endregion
|
|
80
|
+
//#region src/cli/sql/quote.ts
|
|
81
|
+
function quoteIdent(name) {
|
|
82
|
+
return quoteSqlIdent(name, CLI);
|
|
83
|
+
}
|
|
84
|
+
function quoteTable(name) {
|
|
85
|
+
return quoteSqlTable(name, CLI);
|
|
86
|
+
}
|
|
87
|
+
/** A table name with `public.` added when it names no schema, quoted. */
|
|
88
|
+
function quoteQualified(name) {
|
|
89
|
+
return quoteQualifiedTable(name, CLI);
|
|
90
|
+
}
|
|
91
|
+
function helperSchema(ctx) {
|
|
92
|
+
return ctx.schema ?? "permdock";
|
|
93
|
+
}
|
|
94
|
+
function qualified(ctx, name) {
|
|
95
|
+
return `${quoteIdent(helperSchema(ctx))}.${name}`;
|
|
96
|
+
}
|
|
97
|
+
function quoteLiteral(value) {
|
|
98
|
+
return quoteSqlLiteral(value);
|
|
99
|
+
}
|
|
100
|
+
const CLI = "PermDock CLI";
|
|
101
|
+
function declaredArray(values) {
|
|
102
|
+
return values.length === 0 ? `'{}'::text[]` : `array[${values.map(quoteLiteral).join(", ")}]::text[]`;
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* A text array as a Postgres literal (`'{admin,owner}'`). An element that
|
|
106
|
+
* holds a delimiter, a brace, a quote, a backslash, whitespace, or that
|
|
107
|
+
* reads as `NULL`, is double-quoted and escaped, so one element can never
|
|
108
|
+
* split into several.
|
|
109
|
+
*/
|
|
110
|
+
function textArrayLiteral(values) {
|
|
111
|
+
return quoteLiteral(`{${values.map((value) => value === "" || /[\s,{}"\\]/u.test(value) || /^null$/iu.test(value) ? `"${value.replaceAll("\\", "\\\\").replaceAll("\"", "\\\"")}"` : value).join(",")}}`);
|
|
112
|
+
}
|
|
113
|
+
//#endregion
|
|
114
114
|
//#region src/cli/sql/context.ts
|
|
115
115
|
const CLAIM = SQL_IDENT;
|
|
116
116
|
function parseMembershipsFlag(raw) {
|
|
@@ -279,13 +279,19 @@ const CUSTOM_ROLES = {
|
|
|
279
279
|
guardFor: "permdock_custom_role_guard_for",
|
|
280
280
|
shape: "permdock_custom_role_shape",
|
|
281
281
|
entries: "permdock_custom_role_entries",
|
|
282
|
+
entryProblem: "permdock_custom_role_entry_problem",
|
|
282
283
|
replace: "permdock_replace_custom_role_grants",
|
|
283
284
|
rename: "permdock_rename_custom_role_grants",
|
|
284
285
|
remove: "permdock_delete_custom_role_grants",
|
|
285
286
|
trustedReplace: "permdock_trusted_replace_custom_role_grants",
|
|
286
287
|
trustedRename: "permdock_trusted_rename_custom_role_grants",
|
|
287
288
|
trustedRemove: "permdock_trusted_delete_custom_role_grants",
|
|
289
|
+
replaceById: "permdock_replace_custom_role_grants_by_id",
|
|
290
|
+
trustedReplaceById: "permdock_trusted_replace_custom_role_grants_by_id",
|
|
291
|
+
trustedReadById: "permdock_trusted_role_permissions_by_id",
|
|
288
292
|
cascade: "permdock_cascade_custom_role",
|
|
293
|
+
nameGuard: "permdock_custom_role_name_guard",
|
|
294
|
+
sync: "permdock_sync_custom_role",
|
|
289
295
|
shared: "permdock_is_shared_role"
|
|
290
296
|
};
|
|
291
297
|
/** The function `rls.roles` adds. The name is part of the SQL contract. */
|
|
@@ -302,4 +308,4 @@ function allowEntry(ctx) {
|
|
|
302
308
|
return ctx.customRoles?.levels === true ? "permission || coalesce('@' || c.level, '')" : "permission";
|
|
303
309
|
}
|
|
304
310
|
//#endregion
|
|
305
|
-
export {
|
|
311
|
+
export { quoteQualified as A, parseMembershipsFlag as C, qualified as D, helperSchema as E, scopeTypeOf as F, sqlType as I, tenantTypeOf as L, textArrayLiteral as M, arrayColumnsOf as N, quoteIdent as O, columnTypesOf as P, CLAIM as S, declaredArray as T, subjectClaimJsonSql as _, customRolesOn as a, tenantClaimSql as b, SESSION_LIVE_HELPER as c, keyTenantSql as d, kindFilterSql as f, sessionLiveHelperSql as g, roleKindSql as h, allowEntry as i, quoteTable as j, quoteLiteral as k, USER_ID_HELPER as l, memberVia as m, GLOBAL_ROLES as n, rootName as o, liveSessionSql as p, HELPERS as r, signedIn as s, CUSTOM_ROLES as t, globalKindFilterSql as u, subjectClaimSql as v, CLI as w, userIdHelperSql as x, subjectIdSql as y };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { u as OperationRisk } from "./operations-
|
|
4
|
-
import { t as Automation } from "./automation-
|
|
1
|
+
import { $t as CredentialEvent, Ct as Credential, Qt as AutomationEvent, Xt as AccessEvent, gt as SupportSession, on as MembershipEvent, q as DecisionSink, sn as SinkEvent, ut as TokenSigner } from "./policy-types-B-F-qAZk.js";
|
|
2
|
+
import { O as AppData } from "./permission-types-DhNEmoRG.js";
|
|
3
|
+
import { u as OperationRisk } from "./operations-BNLes61x.js";
|
|
4
|
+
import { t as Automation } from "./automation-DOtAFWdy.js";
|
|
5
5
|
//#region src/core/sink.d.ts
|
|
6
6
|
/**
|
|
7
7
|
* The closed list of CloudEvents `type` values, `com.permdock.<family>` or
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { t as byCodePoint } from "./compare-pfyVnBjE.js";
|
|
2
2
|
import { i as readJsonFile } from "./files-D_JIzUrP.js";
|
|
3
3
|
import { t as packageRoot } from "./package-root-Dk_ETdkp.js";
|
|
4
|
-
import { t as didYouMean } from "./args-
|
|
4
|
+
import { t as didYouMean } from "./args-CC3OwyHW.js";
|
|
5
5
|
import { cpSync, existsSync, lstatSync, mkdirSync, readFileSync, readdirSync, readlinkSync, realpathSync, writeFileSync } from "node:fs";
|
|
6
6
|
import { basename, dirname, join, relative, resolve } from "node:path";
|
|
7
|
-
import {
|
|
7
|
+
import { pathToFileURL } from "node:url";
|
|
8
|
+
import { findPackageJSON } from "node:module";
|
|
8
9
|
//#region src/cli/skills.ts
|
|
9
10
|
const SKILL_NAMES = [
|
|
10
11
|
"permdock",
|
|
@@ -183,9 +184,8 @@ function resolveTargets(agents) {
|
|
|
183
184
|
}
|
|
184
185
|
function resolveSkillsRoot(cwd, bundled) {
|
|
185
186
|
try {
|
|
186
|
-
const pkg =
|
|
187
|
-
|
|
188
|
-
if (existsSync(root)) return root;
|
|
187
|
+
const pkg = findPackageJSON("permdock", pathToFileURL(resolve(cwd, "package.json")));
|
|
188
|
+
if (pkg !== void 0 && existsSync(join(dirname(pkg), "skills"))) return join(dirname(pkg), "skills");
|
|
189
189
|
} catch {}
|
|
190
190
|
const local = join(cwd, "node_modules/permdock/skills");
|
|
191
191
|
if (existsSync(local)) return local;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { t as defineLeaf } from "./command-L8EstFNm.js";
|
|
2
|
-
import { t as checkFlag } from "./flags-
|
|
3
|
-
import { r as pick, t as CANCELLED } from "./prompt-
|
|
4
|
-
import { n as detectedAgents, r as runSkills, t as SKILL_AGENTS } from "./skills-
|
|
2
|
+
import { t as checkFlag } from "./flags-aaeRAdiD.js";
|
|
3
|
+
import { r as pick, t as CANCELLED } from "./prompt-DwtVemER.js";
|
|
4
|
+
import { n as detectedAgents, r as runSkills, t as SKILL_AGENTS } from "./skills-Dcjw9_1C.js";
|
|
5
5
|
//#region src/cli/commands/skills.ts
|
|
6
6
|
const forFlag = { for: {
|
|
7
7
|
type: "string",
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { t as compact } from "./compact-CAf557ZB.js";
|
|
2
2
|
import { n as freezeDeep } from "./freeze-CrU8nQeX.js";
|
|
3
3
|
import { n as isForbiddenKey } from "./paths-DXSHAMIa.js";
|
|
4
|
-
import {
|
|
4
|
+
import { a as resolveConditionRef, l as isConditionRef } from "./refs-CNJBiTFo.js";
|
|
5
5
|
import { l as isRfc3339, m as rfc3339, p as nowSeconds } from "./time-DkWjdL98.js";
|
|
6
|
-
import {
|
|
7
|
-
import { _ as listPlans, v as listRoles } from "./grantee-
|
|
6
|
+
import { f as scopeList } from "./scopes-BHsc-wp-.js";
|
|
7
|
+
import { _ as listPlans, v as listRoles } from "./grantee-BrRANrpT.js";
|
|
8
8
|
import { i as wireValidity } from "./validity-CZ7-y0Cj.js";
|
|
9
|
-
import { m as tenantsOf } from "./tenancy-
|
|
9
|
+
import { m as tenantsOf } from "./tenancy-CmeBQ6Nv.js";
|
|
10
10
|
import { n as toWireDelegation } from "./wire-delegation-Cv3W2eaM.js";
|
|
11
11
|
//#region src/conditions/bind.ts
|
|
12
12
|
function isPrimitive(value) {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { g as secondsOf, p as nowSeconds } from "./time-DkWjdL98.js";
|
|
2
|
-
import { n as payloadDigest } from "./token-
|
|
2
|
+
import { n as payloadDigest } from "./token-2qYDvXz2.js";
|
|
3
3
|
//#region src/core/snapshot-cache.ts
|
|
4
4
|
/** Seconds since the epoch of a NumericDate or an RFC 3339 instant. */
|
|
5
5
|
function epochSeconds(value) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Gt as Snapshot, Rt as Instant } from "./policy-types-B-F-qAZk.js";
|
|
2
2
|
//#region src/core/snapshot-cache.d.ts
|
|
3
3
|
type CacheLifeForOptions = {
|
|
4
4
|
/** Lower bound in seconds. Next.js includes a private entry in per-link prefetches from 30. */
|
package/dist/solid/index.d.ts
CHANGED
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
1
|
+
import { Gt as Snapshot, In as ApprovalRequiredDecision, Ln as Decision, Un as GrantedDecision, dt as TokenVerifier, or as Membership } from "../policy-types-B-F-qAZk.js";
|
|
2
|
+
import { u as Permission } from "../permission-types-DhNEmoRG.js";
|
|
3
|
+
import { r as Role } from "../vocabulary-Bg3eeT2H.js";
|
|
4
|
+
import { n as requiredPlans } from "../problem-details-Tcfmj3bV.js";
|
|
5
|
+
import { i as describe, r as DescribeOptions, t as DecisionDescription } from "../describe-O0SwYIK8.js";
|
|
5
6
|
import { t as PermissionBoundaryState } from "../boundary-BmHxVH1J.js";
|
|
6
7
|
import { t as approvalHeaders } from "../headers-CIbDTUTK.js";
|
|
7
|
-
import { a as FilterResult, c as PermissionSet, d as RolesOptions, f as SubjectView, i as ClientStatus, l as PermissionState, n as ApprovalState, p as TenantView, r as ClientPermDock, t as ApprovalHandle, u as ProviderOptionsBase } from "../types-
|
|
8
|
+
import { a as FilterResult, c as PermissionSet, d as RolesOptions, f as SubjectView, i as ClientStatus, l as PermissionState, n as ApprovalState, p as TenantView, r as ClientPermDock, t as ApprovalHandle, u as ProviderOptionsBase } from "../types-CKV71kKh.js";
|
|
8
9
|
import { Accessor, Accessor as Accessor$1, JSX } from "solid-js";
|
|
9
10
|
//#region src/solid/types.d.ts
|
|
10
11
|
/** Structural `JSX.Element`: text, a DOM node or a list of children. */
|
package/dist/solid/index.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { t as compact } from "../compact-CAf557ZB.js";
|
|
2
2
|
import { r as requiredPlans } from "../problem-details-cn5X30gZ.js";
|
|
3
|
-
import { t as describe } from "../describe-
|
|
3
|
+
import { t as describe } from "../describe-DZlnEtLy.js";
|
|
4
4
|
import { n as boundaryFallback, t as boundaryDigest } from "../boundary-BM8a_P6E.js";
|
|
5
5
|
import { t as approvalHeaders } from "../headers-BIjfMaoC.js";
|
|
6
|
-
import { i as isPromiseLike } from "../store-options-
|
|
7
|
-
import { n as switchTenant, t as providerStore } from "../provider-store-
|
|
8
|
-
import { a as livePermDock, c as rolesView, d as subjectView, f as tenantView, l as scopedTenant, n as describeWith, o as permissionSet, r as filterResult, s as protectedView, t as approvalHandle, u as slotContent } from "../views-
|
|
6
|
+
import { i as isPromiseLike } from "../store-options-B_poyYvg.js";
|
|
7
|
+
import { n as switchTenant, t as providerStore } from "../provider-store-IgqQipCO.js";
|
|
8
|
+
import { a as livePermDock, c as rolesView, d as subjectView, f as tenantView, l as scopedTenant, n as describeWith, o as permissionSet, r as filterResult, s as protectedView, t as approvalHandle, u as slotContent } from "../views-BB8E9dTP.js";
|
|
9
9
|
import { ErrorBoundary, createComponent, createComputed, createContext, createMemo, createSignal, getOwner, on, onCleanup, useContext } from "solid-js";
|
|
10
10
|
//#region src/solid/context.ts
|
|
11
11
|
const PermDockContext = createContext(void 0);
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { a as OperationInput, t as Operation } from "../operations-
|
|
4
|
-
import {
|
|
5
|
-
import { D as ConnectionOptions, T as Connection, f as InvalidSignatureError, i as OpenApiHooks, o as ProtectOptions, u as SnapshotQuery, v as discoverViaSignatureAgent, x as webBotAuthVerifier } from "../server-types-
|
|
6
|
-
import { a as ProtectTarget, n as FetchAdapterOptions, t as ContextReader } from "../fetch-adapter-
|
|
1
|
+
import { Gt as Snapshot, T as Policy, j as PolicyVocabulary, sr as Principal } from "../policy-types-B-F-qAZk.js";
|
|
2
|
+
import { u as Permission } from "../permission-types-DhNEmoRG.js";
|
|
3
|
+
import { a as OperationInput, t as Operation } from "../operations-BNLes61x.js";
|
|
4
|
+
import { a as PermDock } from "../permdock-Dco6dyCK.js";
|
|
5
|
+
import { D as ConnectionOptions, T as Connection, f as InvalidSignatureError, i as OpenApiHooks, o as ProtectOptions, u as SnapshotQuery, v as discoverViaSignatureAgent, x as webBotAuthVerifier } from "../server-types-C4gZUEZy.js";
|
|
6
|
+
import { a as ProtectTarget, n as FetchAdapterOptions, t as ContextReader } from "../fetch-adapter-CuhyYwC1.js";
|
|
7
7
|
import { APIEvent, FetchEvent } from "@solidjs/start/server";
|
|
8
8
|
//#region src/solid-start/create.d.ts
|
|
9
9
|
/** The h3 event under every SolidStart request; `subject` and `scope` read it. */
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { i as decorate } from "../bind-
|
|
3
|
-
import { n as guardedRoute, t as fetchAdapter } from "../fetch-adapter-
|
|
1
|
+
import { l as InvalidSignatureError, p as webBotAuthVerifier, u as discoverViaSignatureAgent } from "../evaluations-DReoiVBw.js";
|
|
2
|
+
import { i as decorate } from "../bind-D1nO6fiC.js";
|
|
3
|
+
import { n as guardedRoute, t as fetchAdapter } from "../fetch-adapter-De-u6vhJ.js";
|
|
4
4
|
//#region src/solid-start/create.ts
|
|
5
5
|
/**
|
|
6
6
|
* `event.locals`. Its type, `App.RequestEventLocals`, is declared by
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { r as isRecord, t as compact } from "./compact-CAf557ZB.js";
|
|
2
2
|
import { i as readAppData } from "./app-data-MuyzVqX8.js";
|
|
3
|
-
import { a as quoteQualifiedTable, c as quoteSqlTable, i as qualifySqlTable, o as quoteSqlIdent, s as quoteSqlLiteral, u as
|
|
3
|
+
import { a as quoteQualifiedTable, c as quoteSqlTable, d as sqlTextArray, i as qualifySqlTable, o as quoteSqlIdent, s as quoteSqlLiteral, u as sqlRows } from "./sql-B96movIM.js";
|
|
4
4
|
//#region src/supabase/keep.ts
|
|
5
5
|
/** The permission keys of a suspended scope's `keep`, references read by `key`, sorted and unique. */
|
|
6
6
|
function keptKeys(row) {
|
|
@@ -115,7 +115,8 @@ function selectOf(shape, where, user, keep) {
|
|
|
115
115
|
return `select ${fields.join(", ")}
|
|
116
116
|
from ${quoteQualifiedTable(shape.table)} m${shape.join}
|
|
117
117
|
where ${where.join("\n and ")}
|
|
118
|
-
group by ${group.join(", ")}
|
|
118
|
+
group by ${group.join(", ")}
|
|
119
|
+
having ${shape.roles} is not null`;
|
|
119
120
|
}
|
|
120
121
|
function holdersOf(shape) {
|
|
121
122
|
const id = ident$1(shape.idColumn);
|
|
@@ -191,7 +192,8 @@ function roleColumn(role, table, alias, options) {
|
|
|
191
192
|
lookup: sql,
|
|
192
193
|
columns: [...new Set(parts.map((part) => part.column))],
|
|
193
194
|
throughs: parts.flatMap((part) => part.throughs),
|
|
194
|
-
lateral: true
|
|
195
|
+
lateral: true,
|
|
196
|
+
nullable: false
|
|
195
197
|
};
|
|
196
198
|
}
|
|
197
199
|
function singleRole(role, table, alias, options) {
|
|
@@ -204,8 +206,24 @@ function singleRole(role, table, alias, options) {
|
|
|
204
206
|
lookup: `${alias}.${q(role)}::text`,
|
|
205
207
|
columns: [role],
|
|
206
208
|
throughs: [],
|
|
207
|
-
lateral: false
|
|
209
|
+
lateral: false,
|
|
210
|
+
nullable: false
|
|
208
211
|
};
|
|
212
|
+
if ("map" in role) {
|
|
213
|
+
const arms = Object.entries(role.map).map(([value, key]) => `when ${quoteSqlLiteral(value)} then ${key === null ? "null" : quoteSqlLiteral(key)}`);
|
|
214
|
+
const mapped = `case ${alias}.${q(role.column)}::text ${arms.join(" ")} else null end`;
|
|
215
|
+
return {
|
|
216
|
+
column: role.column,
|
|
217
|
+
sql: mapped,
|
|
218
|
+
join: "",
|
|
219
|
+
lookup: mapped,
|
|
220
|
+
columns: [role.column],
|
|
221
|
+
throughs: [],
|
|
222
|
+
lateral: false,
|
|
223
|
+
map: role.map,
|
|
224
|
+
nullable: true
|
|
225
|
+
};
|
|
226
|
+
}
|
|
209
227
|
const pairs = Object.entries(role.on);
|
|
210
228
|
const [pair] = pairs;
|
|
211
229
|
if (pair === void 0 || pairs.length !== 1) throw new TypeError(`${prefix}: ${options.label}.on must map exactly one column of ${table} to ${role.through}, for example ${options.example ?? "{ role_id: 'id' }"}`);
|
|
@@ -220,19 +238,27 @@ function singleRole(role, table, alias, options) {
|
|
|
220
238
|
key: role.column,
|
|
221
239
|
ref
|
|
222
240
|
};
|
|
241
|
+
const plain = `${keys}.${q(role.column)}::text`;
|
|
242
|
+
const guard = options.guard;
|
|
243
|
+
const key = guard !== void 0 && qualifySqlTable(guard.table) === through ? `case when ${keys}.${q(guard.tenant)} is not null${guard.skip === void 0 ? "" : ` and not coalesce(${keys}.${q(guard.skip)}, false)`} and ${plain} = any(${sqlTextArray(guard.declared)}) then null else ${plain} end` : plain;
|
|
223
244
|
return {
|
|
224
245
|
column: ref,
|
|
225
|
-
sql:
|
|
246
|
+
sql: key,
|
|
226
247
|
join: `${options.indent === void 0 ? " " : `\n${options.indent}`}join ${target} ${keys} on ${keys}.${q(id)} = ${alias}.${q(ref)}`,
|
|
227
|
-
lookup: `(select ${
|
|
248
|
+
lookup: `(select ${key} from ${target} ${keys} where ${keys}.${q(id)} = ${alias}.${q(ref)})`,
|
|
228
249
|
through: keyed,
|
|
229
250
|
columns: [ref],
|
|
230
251
|
throughs: [keyed],
|
|
231
|
-
lateral: false
|
|
252
|
+
lateral: false,
|
|
253
|
+
nullable: false
|
|
232
254
|
};
|
|
233
255
|
}
|
|
234
256
|
/** The manifest entry of one role source: the column, and the roles table it references. */
|
|
235
|
-
function sourceManifest(column, through) {
|
|
257
|
+
function sourceManifest(column, through, map) {
|
|
258
|
+
if (map !== void 0) return {
|
|
259
|
+
column,
|
|
260
|
+
map
|
|
261
|
+
};
|
|
236
262
|
return through === void 0 ? { column } : {
|
|
237
263
|
column,
|
|
238
264
|
through: {
|
|
@@ -248,7 +274,7 @@ function columnManifest(role) {
|
|
|
248
274
|
}
|
|
249
275
|
/** The manifest entry of a role column, or one entry per source of a row with several. */
|
|
250
276
|
function roleManifest(role) {
|
|
251
|
-
if (!role.lateral) return sourceManifest(role.column, role.through);
|
|
277
|
+
if (!role.lateral) return sourceManifest(role.column, role.through, role.map);
|
|
252
278
|
return role.columns.map((column) => sourceManifest(column, role.throughs.find((through) => through.ref === column)));
|
|
253
279
|
}
|
|
254
280
|
//#endregion
|
|
@@ -259,10 +285,11 @@ function isFixed(roles) {
|
|
|
259
285
|
return Array.isArray(roles);
|
|
260
286
|
}
|
|
261
287
|
/** A role column of the membership table, aliased `m`; a `through` column joins its roles table as `mk`. */
|
|
262
|
-
function memberRole(role, table, label) {
|
|
288
|
+
function memberRole(role, table, label, guard) {
|
|
263
289
|
return roleColumn(role, qualifySqlTable(table), "m", {
|
|
264
290
|
label,
|
|
265
|
-
indent: ""
|
|
291
|
+
indent: "",
|
|
292
|
+
...guard === void 0 ? {} : { guard }
|
|
266
293
|
});
|
|
267
294
|
}
|
|
268
295
|
/** The user of the membership table, aliased `m`; a `through` user joins its table as `mu`. */
|
|
@@ -278,12 +305,30 @@ function memberUser(user, table, label) {
|
|
|
278
305
|
sql: column.through === void 0 ? col(column.column) : `mu.${ident(column.through.key)}`
|
|
279
306
|
};
|
|
280
307
|
}
|
|
281
|
-
|
|
282
|
-
|
|
308
|
+
/** `through` tables qualified in the schema of `table`. */
|
|
309
|
+
function throughIn(through, table) {
|
|
310
|
+
const schema = qualifySqlTable(table).split(".")[0] ?? "public";
|
|
311
|
+
return {
|
|
312
|
+
...through,
|
|
313
|
+
through: through.through.includes(".") ? through.through : `${schema}.${through.through}`
|
|
314
|
+
};
|
|
283
315
|
}
|
|
284
|
-
function
|
|
285
|
-
return
|
|
316
|
+
function qualifiedThrough(source, table) {
|
|
317
|
+
return typeof source === "string" || "map" in source ? source : throughIn(source, table);
|
|
286
318
|
}
|
|
319
|
+
function streamUser(user, table) {
|
|
320
|
+
return typeof user === "string" ? user : throughIn(user, table);
|
|
321
|
+
}
|
|
322
|
+
function isSourceList(role) {
|
|
323
|
+
return Array.isArray(role);
|
|
324
|
+
}
|
|
325
|
+
function streamRoles(role, table) {
|
|
326
|
+
return isSourceList(role) ? role.map((source) => qualifiedThrough(source, table)) : qualifiedThrough(role, table);
|
|
327
|
+
}
|
|
328
|
+
function roleAgg(role) {
|
|
329
|
+
return `jsonb_agg(distinct ${role.sql} order by ${role.sql}) filter (where ${role.sql} is not null)`;
|
|
330
|
+
}
|
|
331
|
+
const rowsOf = sqlRows;
|
|
287
332
|
function strings(value) {
|
|
288
333
|
return Array.isArray(value) ? value.filter((item) => typeof item === "string" && item !== "") : [];
|
|
289
334
|
}
|
|
@@ -356,13 +401,16 @@ function supabasePostgresQuery(postgres) {
|
|
|
356
401
|
* merge into one membership.
|
|
357
402
|
*/
|
|
358
403
|
function tableMembershipSource(options) {
|
|
404
|
+
return tableSource(options, void 0);
|
|
405
|
+
}
|
|
406
|
+
function tableSource(options, guard) {
|
|
359
407
|
const c = options.columns ?? {};
|
|
360
408
|
const scope = `${col(c.scope ?? "scope")}::text`;
|
|
361
409
|
const id = `${col(c.id ?? "scope_id")}::text`;
|
|
362
410
|
const within = c.within === void 0 ? "null::jsonb" : col(c.within);
|
|
363
411
|
const user = memberUser(c.user ?? "user_id", options.table, "tableMembershipSource columns.user");
|
|
364
|
-
const role = memberRole(c.role ?? "role", options.table, "tableMembershipSource columns.role");
|
|
365
|
-
|
|
412
|
+
const role = memberRole(c.role ?? "role", options.table, "tableMembershipSource columns.role", guard);
|
|
413
|
+
const shape = {
|
|
366
414
|
table: options.table,
|
|
367
415
|
join: `${user.column.join}${role.join}`,
|
|
368
416
|
through: role.through,
|
|
@@ -427,7 +475,26 @@ function tableMembershipSource(options) {
|
|
|
427
475
|
expiresAt: c.expiresAt === void 0 ? void 0 : { column: c.expiresAt },
|
|
428
476
|
disabledAt: c.disabledAt === void 0 ? void 0 : { column: c.disabledAt }
|
|
429
477
|
})
|
|
430
|
-
}
|
|
478
|
+
};
|
|
479
|
+
const stream = compact({
|
|
480
|
+
table: qualifySqlTable(options.table),
|
|
481
|
+
user: streamUser(c.user ?? "user_id", options.table),
|
|
482
|
+
scope: { column: c.scope ?? "scope" },
|
|
483
|
+
id: c.id ?? "scope_id",
|
|
484
|
+
roles: streamRoles(c.role ?? "role", options.table),
|
|
485
|
+
via: c.via === void 0 ? void 0 : { column: c.via },
|
|
486
|
+
expiresAt: c.expiresAt,
|
|
487
|
+
disabledAt: c.disabledAt,
|
|
488
|
+
nullableRoles: true,
|
|
489
|
+
guard
|
|
490
|
+
});
|
|
491
|
+
return {
|
|
492
|
+
...sourceOf({
|
|
493
|
+
...sqlOf(shape),
|
|
494
|
+
stream
|
|
495
|
+
}, options.query),
|
|
496
|
+
guarded: (next) => tableSource(options, next)
|
|
497
|
+
};
|
|
431
498
|
}
|
|
432
499
|
/**
|
|
433
500
|
* Memberships from a table of one scope (`customer_contacts`): every row is a
|
|
@@ -435,13 +502,16 @@ function tableMembershipSource(options) {
|
|
|
435
502
|
* fixed `via`, and ancestor ids from `within` columns.
|
|
436
503
|
*/
|
|
437
504
|
function junctionMembershipSource(options) {
|
|
505
|
+
return junctionSource(options, void 0);
|
|
506
|
+
}
|
|
507
|
+
function junctionSource(options, guard) {
|
|
438
508
|
if (!/^[a-z][a-z0-9_]*$/u.test(options.scope)) throw new TypeError(`PermDock: unsafe scope name '${options.scope}'`);
|
|
439
509
|
const idColumn = options.id ?? `${options.scope}_id`;
|
|
440
510
|
const withinEntries = Object.entries(options.within ?? {});
|
|
441
511
|
const roles = options.roles;
|
|
442
512
|
const fixed = isFixed(roles) ? roles : void 0;
|
|
443
513
|
if (fixed?.length === 0) throw new TypeError("PermDock: junctionMembershipSource needs at least one role");
|
|
444
|
-
const role = isFixed(roles) ? void 0 : memberRole(typeof roles === "object" && "sources" in roles ? roles.sources : roles, options.table, "junctionMembershipSource roles");
|
|
514
|
+
const role = isFixed(roles) ? void 0 : memberRole(typeof roles === "object" && "sources" in roles ? roles.sources : roles, options.table, "junctionMembershipSource roles", guard);
|
|
445
515
|
const user = memberUser(options.user ?? "user_id", options.table, "junctionMembershipSource user");
|
|
446
516
|
const managedColumn = options.managedBy === void 0 ? void 0 : options.managedBy === "idp" ? "" : options.managedBy.column;
|
|
447
517
|
const groupColumn = options.group === void 0 || typeof options.group === "string" ? void 0 : options.group.column;
|
|
@@ -509,12 +579,28 @@ function junctionMembershipSource(options) {
|
|
|
509
579
|
})
|
|
510
580
|
};
|
|
511
581
|
const sql = sqlOf(shape);
|
|
512
|
-
|
|
513
|
-
|
|
514
|
-
|
|
515
|
-
|
|
516
|
-
|
|
517
|
-
|
|
582
|
+
const stream = compact({
|
|
583
|
+
table: qualifySqlTable(options.table),
|
|
584
|
+
user: streamUser(options.user ?? "user_id", options.table),
|
|
585
|
+
scope: { value: options.scope },
|
|
586
|
+
id: idColumn,
|
|
587
|
+
roles: fixed === void 0 ? streamRoles(typeof roles === "object" && "sources" in roles ? roles.sources : roles, options.table) : { value: [...fixed] },
|
|
588
|
+
via: options.via === void 0 ? void 0 : { value: options.via },
|
|
589
|
+
expiresAt: options.expiresAt,
|
|
590
|
+
disabledAt: options.disabledAt,
|
|
591
|
+
nullableRoles: fixed === void 0,
|
|
592
|
+
guard
|
|
593
|
+
});
|
|
594
|
+
return {
|
|
595
|
+
...sourceOf({
|
|
596
|
+
...sql,
|
|
597
|
+
stream,
|
|
598
|
+
scope: options.scope,
|
|
599
|
+
holds: [options.scope, ...withinEntries.map(([name]) => name)],
|
|
600
|
+
list: (keep = sql.keeps) => selectOf(shape, filters(shape, `$1::text = ${literal(options.scope)} and ${col(idColumn)}::text = $2::text`), true, keep)
|
|
601
|
+
}, options.query),
|
|
602
|
+
guarded: (next) => junctionSource(options, next)
|
|
603
|
+
};
|
|
518
604
|
}
|
|
519
605
|
const AUTHZ_VERSION_TABLE = "permdock_authz_version";
|
|
520
606
|
/**
|