permdock 0.5.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-B4R5fnMU.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-Djo_PyZc.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-DJ6Yd5z1.js → approvals-CMRfsbBh.js} +74 -48
- package/dist/{arazzo-B6lebmiQ.js → arazzo-ClrF3PVb.js} +2 -2
- package/dist/{arazzo-BWhNF-k0.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-Dg8XsRaO.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-BMZPIVUM.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-CZzhx-Vj.js → bind-D1nO6fiC.js} +5 -5
- package/dist/{bind--9EFVYWF.d.ts → bind-JDuvxjuW.d.ts} +7 -7
- package/dist/{build-instance-BMnAudHn.js → build-instance-DxE7czo9.js} +1 -1
- package/dist/{canonical-json-BC8_nMTw.js → canonical-json-DwilZ1iB.js} +6 -3
- package/dist/{capability-BSslw1QV.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-R_A__RsH.js → catalog-BaMQfQ6Y.js} +3 -3
- package/dist/{catalog-BECMPrwc.js → catalog-D69WhFii.js} +43 -13
- package/dist/{catalog-doc-C9wjsfNY.js → catalog-doc-CV9s6B1S.js} +28 -5
- package/dist/{catalog-fingerprint-CCP0-yQS.js → catalog-fingerprint-C144oW4M.js} +1 -1
- package/dist/{create-BWRSXgOF.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-CIoHNevm.js → cloud-CO8pYtwr.js} +5 -5
- package/dist/{codemod-Cxvvc70T.js → codemod-BP6n8N9L.js} +3 -3
- package/dist/{codemod-Bmj9dWMH.js → codemod-i4N2BhDc.js} +3 -3
- package/dist/{collect-CrZJJnEF.js → collect-BaWeMjwV.js} +17 -8
- package/dist/{collect-DloHbDVa.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-Ckm2HqBZ.d.ts → compile-COM2VKuN.d.ts} +3 -3
- package/dist/{completion-BqhRBJD8.js → completion-BNdVf7X2.js} +3 -3
- package/dist/{config-bs_kZeYq.js → config-CoQHDrDi.js} +7 -3
- package/dist/{config-B46rm9sc.js → config-DGZzMV1B.js} +2 -2
- package/dist/{config-report-DUgj62Ai.js → config-report-Cm7UITNA.js} +3 -3
- package/dist/connector-schema-_VCSsdtD.js +433 -0
- package/dist/{context-bbFHR-0D.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-0VZ7Pdiu.d.ts → create-B2-CQqCI.d.ts} +5 -5
- package/dist/{create-C3b4B5eF.js → create-Cb86Z8Im.js} +9 -8
- package/dist/{create-DnrmLnLW.js → create-DJrlhEp9.js} +5 -5
- package/dist/{create-BFfm17UA.d.ts → create-QHuuPw3q.d.ts} +7 -7
- package/dist/{create-BDS7wc3y.d.ts → create-UTnUVETj.d.ts} +30 -10
- package/dist/{credential-DM2um3ha.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-DaXVdDhM.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-D8jDHgsl.d.ts → denied-text-D4qkEtFz.d.ts} +2 -2
- package/dist/{describe-BybMRY7A.js → describe-DZlnEtLy.js} +1 -0
- package/dist/{describe-BZUsixiL.d.ts → describe-O0SwYIK8.d.ts} +2 -2
- package/dist/{diff-CxZo9pTq.js → diff-Btr1c1Ow.js} +2 -2
- package/dist/{diff-DCePiN6M.js → diff-DzT-xD13.js} +10 -10
- package/dist/{doctor-DFjUxf2f.js → doctor-BU1szn63.js} +241 -49
- package/dist/{doctor-CxiwSfqH.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-C2PXIv4c.d.ts → errors-B_Qg9D3e.d.ts} +2 -2
- package/dist/{errors-CWTY6uih.js → errors-DpP_U6Bf.js} +1 -0
- package/dist/{evaluate-_R8QkWaf.js → evaluate-B_oqFbWC.js} +130 -34
- package/dist/{evaluations-16UqqQ6W.d.ts → evaluations-BCddEOfO.d.ts} +4 -4
- package/dist/{evaluations-DZ2CbV5k.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-qKJBuRqy.d.ts → fetch-adapter-CuhyYwC1.d.ts} +4 -4
- package/dist/{fetch-adapter-g0ypLkID.js → fetch-adapter-De-u6vhJ.js} +3 -3
- package/dist/{fields-D9tPVUUS.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-D2lZt4Dd.js → from-snapshot-Bz469dIh.js} +17 -10
- package/dist/generate-3FNO5P5Q.js +159 -0
- package/dist/{grantee-Cn1HyUsI.js → grantee-BrRANrpT.js} +14 -4
- package/dist/{grantee-conditions-CcXf8hMM.js → grantee-conditions-C6P1Tvol.js} +1 -1
- package/dist/{grantee-match-DHArqY82.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-DTcZOzhF.js → helpers-DY3vXuGs.js} +3 -3
- package/dist/hono/index.d.ts +5 -5
- package/dist/hono/index.js +3 -3
- package/dist/{hosted-DBDX0M-P.d.ts → hosted-BmjzxQhp.d.ts} +14 -2
- package/dist/{hosted-BZIAYvon.js → hosted-XBgU6RGT.js} +34 -12
- package/dist/{http-DXJ37RDA.js → http-Ca3Sr5x1.js} +1 -1
- package/dist/{import-DMmOG27O.js → import-Bz0GefWg.js} +5 -5
- package/dist/{import-CNV7I2Dw.js → import-DB2EG_iy.js} +3 -3
- package/dist/{index-CxGUswIC.d.ts → index-BE8y3moU.d.ts} +50 -8
- package/dist/{index-Chrs5fQ-.d.ts → index-BSfRl0hZ.d.ts} +6 -6
- package/dist/{index-DOVf7RJv.d.ts → index-BTkwrK7v.d.ts} +155 -17
- package/dist/index-CMiPH2Tv.d.ts +206 -0
- package/dist/{index-SGdIQyzc.d.ts → index-DH9DUDEM.d.ts} +18 -3
- package/dist/{index-BcHcPyIo.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-Omfd793B.d.ts → instance-options-CU0YQCLH.d.ts} +1 -1
- package/dist/{instance-snapshot-Cxq4ygFc.js → instance-snapshot-CjcwnEiV.js} +20 -14
- package/dist/jwt/index.d.ts +83 -5
- package/dist/jwt/index.js +143 -5
- package/dist/{kernel-5JatXyND.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-CtKR3GXL.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-TCAdw-eW.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-BShP7Vf4.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-ahr8rHu3.js → openapi-DMocl1bh.js} +4 -4
- package/dist/{openapi-B7HZ0f-r.js → openapi-Ddb4628T.js} +2 -7
- package/dist/{openapi-DTaEmTSW.js → openapi-ztVaux6j.js} +8 -8
- package/dist/{operation-findings-DgATDpvh.js → operation-findings-kRcEp8lE.js} +1 -1
- package/dist/{operations-CxybZErY.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-Dyw8fyPF.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-BatFgAA4.js → ownership-Z2LpxsGa.js} +1349 -883
- 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-DgqtruPn.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-B9JxkBwC.js → permdock-BfWEeMqk.js} +177 -49
- package/dist/{permdock-D7eeLJER.d.ts → permdock-Dco6dyCK.d.ts} +34 -5
- package/dist/{permission-registry-Br4jSNVi.js → permission-registry-DpPtSKNZ.js} +1 -1
- package/dist/{vocabulary-D6lPdb4Z.d.ts → permission-types-DhNEmoRG.d.ts} +4 -62
- package/dist/{permissions-oEWfl-kl.d.ts → permissions-CoqCOfJ3.d.ts} +2 -1
- package/dist/{permissions-B-wCP5ZC.js → permissions-CyH2MV_B.js} +1 -1
- package/dist/{permissions-CZKiUfFM.js → permissions-DArULThq.js} +4 -4
- package/dist/pkce-5h8NgMQJ.js +21 -0
- package/dist/{policies-CO1oOymN.js → policies-B2lZIurj.js} +3 -3
- package/dist/{policy-Czo4n3Hs.d.ts → policy-B7dg_yzu.d.ts} +2 -2
- package/dist/{policy-DLZJ5gAp.js → policy-DaJy4nK4.js} +17 -8
- package/dist/{policy-from-catalog-DzhEc3Y9.js → policy-from-catalog-DFWYkNdu.js} +9 -9
- package/dist/{policy-types-DzwivBgR.d.ts → policy-types-B-F-qAZk.d.ts} +109 -5
- package/dist/postgres-store-BL9M_CA1.js +1001 -0
- package/dist/{postgrest-NUqZT-RB.d.ts → postgrest-CYacM_u7.d.ts} +12 -1
- package/dist/{postgrest-CW0IqC-U.js → postgrest-r5faDIzD.js} +47 -5
- package/dist/{powersync-BHfuehf3.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-DXlt-vks.d.ts → problem-details-Tcfmj3bV.d.ts} +1 -1
- package/dist/prompt-DwtVemER.js +935 -0
- package/dist/{protected-DEPHc2xV.d.ts → protected-BwZYL1X_.d.ts} +6 -5
- package/dist/{protected-DfjY5mLA.js → protected-DXE3cQYg.js} +2 -2
- package/dist/{provider-CC-u3bYP.js → provider-BQsTYYy0.js} +2 -2
- package/dist/{provider-DMVt6yYn.d.ts → provider-Csk-THAn.d.ts} +1 -1
- package/dist/{provider-store-B5Yrkhzr.js → provider-store-IgqQipCO.js} +2 -2
- package/dist/{pull-BgIfno6w.js → pull-CN5OLxrF.js} +7 -7
- package/dist/pull-Cty6Ovyu.js +1 -0
- package/dist/{push-CmFVBOeI.js → push-tVdG8dUL.js} +54 -14
- package/dist/{pushed-policy-BImMTTIM.d.ts → pushed-policy-BbcY9r_4.d.ts} +1 -1
- package/dist/{pushed-policy-DobP7AHI.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 +214 -24
- package/dist/{refs-K6eWUJ0H.js → refs-CNJBiTFo.js} +15 -1
- package/dist/{replay-D7iKcLFe.d.ts → replay-DCDD_ZfL.d.ts} +1 -1
- package/dist/{request-context-BTRTG7OT.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-BA8an5Ap.js → rls-Ck_PocSp.js} +32 -8
- package/dist/{rls-j6t43t7n.js → rls-CxBZb4rZ.js} +478 -534
- package/dist/{role-builder-CXbis5-X.js → role-builder-C1VJzvcr.js} +3 -3
- package/dist/rolldown-runtime-C3I60J0A.js +4 -0
- package/dist/{rpc-aPyNi6tA.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-BjhTOi6u.d.ts → run-ticket-BpNi7BCi.d.ts} +8 -3
- package/dist/{run-DOfMtc9V.js → run-uLD2aWuO.js} +7 -7
- package/dist/{runtime-D3VTAiCA.js → runtime-Vif3_-zf.js} +1 -1
- package/dist/{saas-FO-Q8oj0.js → saas-Az_Kz-4D.js} +7 -7
- package/dist/{scan-BOI5tJ-6.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-DqCT4CgZ.js → server-Bnga6I50.js} +3 -3
- package/dist/{server-types-BLd4MnBX.d.ts → server-types-C4gZUEZy.d.ts} +9 -9
- package/dist/{shared-DvvFzYXe.js → shared-C8LjUdVU.js} +1 -1
- package/dist/{shared-CD11nBbC.js → shared-fMKOv8hP.js} +46 -39
- package/dist/{sink-Bj_lDUDq.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-CXUWfsNy.js → snapshot-CbGmYiJx.js} +4 -4
- package/dist/{snapshot-cache-DZHQ0KF6.js → snapshot-cache-DT2Kx1F8.js} +1 -1
- package/dist/{snapshot-cache-DqK9eDmM.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-BV9j0DeZ.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-DLfUWFAI.js → src-DLFrtrrC.js} +154 -53
- package/dist/ssf/index.d.ts +4 -4
- package/dist/ssf/index.js +640 -211
- package/dist/{standard-webhooks-6lg8v_is.d.ts → standard-webhooks-B_qRg0ws.d.ts} +2 -2
- package/dist/{store-4u_hxjWa.js → store-DSP9oGvh.js} +15 -7
- package/dist/{store-options-BqEakYRa.js → store-options-B_poyYvg.js} +6 -6
- package/dist/{stores-ClZUgeoP.d.ts → stores-BAZwSYZA.d.ts} +6 -5
- package/dist/{stores-BbsD4fAR.js → stores-BqEuHC05.js} +2 -2
- package/dist/{stream-7-xmnf3U.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-Dxlp8A94.js → supabase--0aJdLEd.js} +9 -7
- package/dist/{supabase-9pqI57pW.js → supabase-Bqp7iIY2.js} +3 -3
- package/dist/supabase-hook-DJxC4PoP.js +1 -0
- package/dist/{supabase-hook-DdDQhMlw.js → supabase-hook-Dg0SrQWR.js} +1069 -123
- 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-5Ut_pbKy.d.ts → types-BWZybqs9.d.ts} +112 -8
- package/dist/{types-CZTnPFzM.d.ts → types-BXMYB7BY.d.ts} +2 -2
- package/dist/{types-CdlxsYQh.d.ts → types-BfVmNJO5.d.ts} +14 -3
- package/dist/{types-BqAKcRNW.d.ts → types-CIeZcG8v.d.ts} +2 -2
- package/dist/{types-BNORmDM8.d.ts → types-CKV71kKh.d.ts} +4 -4
- package/dist/{types-tIgIeIKJ.d.ts → types-CQVEQawv.d.ts} +4 -4
- package/dist/{types-BjV-fqcA.d.ts → types-CeIscIKp.d.ts} +4 -4
- package/dist/{types-_sHy8BQf.d.ts → types-CfiKC5aN.d.ts} +1 -1
- package/dist/{types-ClZaWzfb.d.ts → types-D3A19w4A.d.ts} +8 -4
- package/dist/{types-C8-KNsFf.d.ts → types-DBHftjgS.d.ts} +15 -8
- package/dist/{types-CCpc2Dcv.d.ts → types-DC44-hqb.d.ts} +2 -2
- package/dist/{types-fbZ7JEXr.d.ts → types-DXmwu78Z.d.ts} +4 -4
- package/dist/{types-DiQjupG2.d.ts → types-cTos-H7p.d.ts} +2 -2
- package/dist/{types-DX0LaKTb.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-T5mXq98v.js → usage-Bybmck7f.js} +7 -7
- package/dist/{usage-DHtE8j4E.js → usage-CDaLXCfL.js} +2 -2
- package/dist/usage-y-kBNdqs.js +1 -0
- package/dist/{validation-error-Bg5Tpluk.d.ts → validation-error-CQpoquwj.d.ts} +1 -1
- package/dist/{verify-DbCL9bnB.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-CKy4MQSY.d.ts → waiter-DwEyouan.d.ts} +2 -2
- package/dist/watch-Bd9mx3rd.js +1 -0
- package/dist/{watch-CszoTJMq.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-Dv-WTP-w.js → where-scope-wq2coopv.js} +41 -21
- package/dist/{who-can-D0QoYbEb.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-Bd1Tejur.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 +5 -2
- package/skills/permdock-tenancy/SKILL.md +1 -1
- package/skills/permdock-tenancy/references/ownership-and-custom-roles.md +2 -0
- package/skills/permdock-wire/references/adapters.md +14 -0
- package/skills/permdock-wire/references/policy-options.md +1 -0
- package/dist/catalog-DjhMYYCq.js +0 -1
- package/dist/collect-FlXJlhus.js +0 -1
- package/dist/index-D8EovfsP.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-CbzkqL_M.js +0 -1
- package/dist/powersync-bYUDLOAO.js +0 -538
- package/dist/prompt-DfZLJLIn.js +0 -32
- package/dist/pull-ByOks_Tg.js +0 -1
- package/dist/run-CNsApDpd.js +0 -1
- package/dist/supabase-hook-CXcGpHqq.js +0 -1
- package/dist/supautils-B6HYL9eL.js +0 -91
- package/dist/text-diff-BQcUapOb.js +0 -15
- package/dist/usage-CHOtwL19.js +0 -1
- package/dist/watch-Cb-NcaUw.js +0 -1
|
@@ -86,6 +86,8 @@ type CustomRole = {
|
|
|
86
86
|
- `permdock.assignablePermissions({ tenant })` is the ceiling intersected with what the subject holds. `useAssignablePermissions()` in `permdock/react` builds the editor from it.
|
|
87
87
|
- The save action runs `validateCustomRole(policy, role)` and refuses the role when `ok` is false or `permissions` contains a key outside `assignablePermissions()`. `dropped` names each entry left out (`unknown-permission`, `outside-ceiling`, `condition-not-allowed`, `unknown-level`, `unknown-role`).
|
|
88
88
|
- A platform custom role (`scope: 'global'`, no `tenant`, `team` or `id`) is held through `principal.roles` and capped by the allows of declared global roles marked `assignable`. `CustomRoleSource.globalRoles({ held })` returns them; `customRoleSource(reader, { read: 'held', policy })` skips that read while every held global role is declared.
|
|
89
|
+
- A shared custom role (`shared: true`, no `tenant`, `team` or `id`; `scope` below global, default the first) is defined once by the platform and held by name on a membership of its scope in any tenant. `CustomRoleSource.sharedRoles({ held })` returns them. Its name wins over a tenant custom role's: pass the shared roles to `validateCustomRole(policy, role, { shared })` in the save action, which refuses a clash with `name-taken`. Require a `meta.manageRoles` permission held through a global role before saving one.
|
|
89
90
|
- A stored grant under a key renamed with `definePermissions(..., { renamed })` still resolves; `validateCustomRole` lists it in `renamed` as `{ from, to }`, and `permdock doctor` PD055 prints the `update` that rewrites it.
|
|
90
91
|
- For generated RLS, add `--custom-roles` (or `rls.customRoles: true`) to `permdock rls generate`. Platform roles are rows with `scope = 'global'` and a null `tenant_id`, or the top-level `role_grants` claim in `jwt` mode. With levels, `custom_role_permissions` gains a `level` column and the claim writes `key@level`.
|
|
91
92
|
- To adopt custom roles the app already stores in its own tables, set `rls.customRoles.from` and `rls.customRoleWrites.roles`, then run `permdock rls generate --backfill-out <migrations dir>/`. The migration saves each role through the trusted replace function, drops entries outside the ceiling with a warning, and skips roles that already have rows; never write the copy by hand ([backfill](https://permdock.com/docs/cli/rls#backfill-from-existing-tables)).
|
|
93
|
+
- To keep the copy current instead of copying once, set `rls.customRoles.from.sync: 'trigger'`: after-row triggers on the app's permission and include tables rewrite the copy through the trusted replace function. The generated name guard on `rls.customRoleWrites.roles` refuses a tenant row named like a declared role (`declared-role`) or a shared role (`name-taken`). A stored entry is `<permission>[@<level>]`; check one with `parseCustomRoleEntry(policy, entry, { scope })` in process or `permdock_custom_role_entry_problem(p_scope, p_entry)` in SQL, which answer `unknown-permission`, `outside-ceiling` or `unknown-level`.
|
|
@@ -397,6 +397,20 @@ export const scim = scimHandler({
|
|
|
397
397
|
|
|
398
398
|
The handler writes users and groups. It never decides. Unknown or non-assignable role names are stored and dropped when memberships are read. Pass the app's `revocations` feed so a deprovisioned member's open streams revalidate and close.
|
|
399
399
|
|
|
400
|
+
In production, keep the directory in Postgres: `permdock scim generate` writes the tenant-keyed tables (`supabase/schemas/permdock/scim.sql` by default; `--dialect`, `--schema`), and `postgresDirectoryStore(query)` reads and writes them through the same `SqlQuery` function `tableMembershipSource` takes:
|
|
401
|
+
|
|
402
|
+
```ts
|
|
403
|
+
import { postgresDirectoryStore } from "permdock/scim";
|
|
404
|
+
import pg from "pg";
|
|
405
|
+
|
|
406
|
+
const pool = new pg.Pool({ connectionString: process.env.DATABASE_URL });
|
|
407
|
+
const directory = postgresDirectoryStore((text, values) =>
|
|
408
|
+
pool.query(text, [...values]),
|
|
409
|
+
);
|
|
410
|
+
```
|
|
411
|
+
|
|
412
|
+
Read memberships through `directoryMembershipSource(directory)`, never through a `tableMembershipSource` over the SCIM tables: the source applies the `externalId` / `userName` match, drops inactive users and enforces `assignable`. The tables are revoked from `anon` and `authenticated`; the store's connection must own them or be granted on them, never `service_role` in generated SQL.
|
|
413
|
+
|
|
400
414
|
## Cloud — `permdock/cloud`
|
|
401
415
|
|
|
402
416
|
No factory for a `PermDock`. `cloud({ url, key, environment })` returns `approvals`, `sink` and `policies` to pass into any adapter, `snapshotsFor(token)` (a `SnapshotSource` for the subject an `at+jwt` proves, sent as `PermDock-Subject`), `catalog.push`, plus the environment `issuer` (`<url>/v1/environments/<environment>`) and its `jwks` URL; `cloudEndpoints({ url, environment })` computes the same two without a key. It never implements `MembershipSource` or `CustomRoleSource` and never decides.
|
|
@@ -36,6 +36,7 @@ Adopting PermDock in an app with its own keys, SQL helpers and tokens is a step-
|
|
|
36
36
|
- Put application-owned metadata in `meta.x`; PermDock carries it and never reads it (see App data below).
|
|
37
37
|
- Rename a key later with `definePermissions(tree, { renamed: { "old.key": "new.key" } })`. Remove the alias only when `permdock doctor` PD055 and PD056 are quiet; `permdock diff` reports the removal as the breaking `alias-removed`.
|
|
38
38
|
- Generate helpers beside legacy SQL with `permdock rls generate --helpers-only --shims`, then rewrite policies with `permdock rls migrate`.
|
|
39
|
+
- `permdock rls migrate` and `rls import` need `pgsql-parser` 18 or later; the CLI names the installed version when it is older. A hook that should carry team ids sets `supabase.hook.teams: { table, user, team, tenant? }` and writes the `team_ids` claim within the same size budget as `memberships`.
|
|
39
40
|
|
|
40
41
|
## App data and app obligations
|
|
41
42
|
|
package/dist/catalog-DjhMYYCq.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { t as catalogFile, n as runCatalog } from "./catalog-BECMPrwc.js";
|
package/dist/collect-FlXJlhus.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { r as runCollect } from "./collect-CrZJJnEF.js";
|
package/dist/index-D8EovfsP.d.ts
DELETED
|
@@ -1,91 +0,0 @@
|
|
|
1
|
-
import { T as Policy, rr as Principal, ut as TokenSigner } from "./policy-types-DzwivBgR.js";
|
|
2
|
-
import { E as SsfPermDockOptions, T as SsfPermDock, _ as SetSubject, c as PushSetOptions, d as SetDelivery, g as SetQueue, h as SetPollHandlerOptions, m as SetEvent, t as CaepCommon, v as SignSetOptions } from "./types-DiQjupG2.js";
|
|
3
|
-
//#region src/ssf/create.d.ts
|
|
4
|
-
declare function createPermDock<TUser, TPrincipal extends Principal = Principal>(policy: Policy<TUser, TPrincipal>, options: SsfPermDockOptions): SsfPermDock;
|
|
5
|
-
//#endregion
|
|
6
|
-
//#region src/ssf/set-queue.d.ts
|
|
7
|
-
/**
|
|
8
|
-
* An in-process `SetQueue`: pending SETs per stream in insertion order. A
|
|
9
|
-
* process restart loses them; a deployment with more than one instance needs
|
|
10
|
-
* a shared queue.
|
|
11
|
-
*/
|
|
12
|
-
declare function memorySetQueue(): SetQueue;
|
|
13
|
-
/**
|
|
14
|
-
* The RFC 8936 poll endpoint over a `SetQueue`. It applies the request's
|
|
15
|
-
* `acks` and `setErrs`, then answers `{ sets, moreAvailable }` with up to
|
|
16
|
-
* `maxEvents` pending SETs. It answers at once whatever `returnImmediately`
|
|
17
|
-
* says, which RFC 8936 section 2.4 allows.
|
|
18
|
-
*/
|
|
19
|
-
declare function setPollHandler(options: SetPollHandlerOptions): (request: Request) => Promise<Response>;
|
|
20
|
-
//#endregion
|
|
21
|
-
//#region src/ssf/transmitter.d.ts
|
|
22
|
-
/** SSF 1.0 delivery method URN for RFC 8935 push. */
|
|
23
|
-
declare const SSF_PUSH_DELIVERY = "urn:ietf:rfc:8935";
|
|
24
|
-
/** SSF 1.0 delivery method URN for RFC 8936 poll. */
|
|
25
|
-
declare const SSF_POLL_DELIVERY = "urn:ietf:rfc:8936";
|
|
26
|
-
/**
|
|
27
|
-
* Signs one event as an RFC 8417 Security Event Token (`typ: secevent+jwt`):
|
|
28
|
-
* `sub_id` is the event's subject and `events` holds exactly one entry, as
|
|
29
|
-
* SSF 1.0 requires. `iss` is the signer's own.
|
|
30
|
-
*/
|
|
31
|
-
declare function signSet(event: SetEvent, signer: TokenSigner, options: SignSetOptions): Promise<string>;
|
|
32
|
-
/**
|
|
33
|
-
* Pushes one SET to a receiver (RFC 8935). A `2xx` is delivery; a `400`
|
|
34
|
-
* maps the receiver's `err` to a cause; `401` and `403` are
|
|
35
|
-
* `authentication-failed` and `access-denied`; a network failure, a timeout,
|
|
36
|
-
* a `429` or a `5xx` is `unavailable` with `retry: true`. Never throws.
|
|
37
|
-
*/
|
|
38
|
-
declare function pushSet(set: string, options: PushSetOptions): Promise<SetDelivery>;
|
|
39
|
-
type CaepCredentialChange = CaepCommon & {
|
|
40
|
-
readonly credentialType: string;
|
|
41
|
-
readonly changeType: "create" | "revoke" | "update" | "delete";
|
|
42
|
-
readonly friendlyName?: string;
|
|
43
|
-
readonly x509Issuer?: string;
|
|
44
|
-
readonly x509Serial?: string;
|
|
45
|
-
readonly fido2Aaguid?: string;
|
|
46
|
-
};
|
|
47
|
-
type CaepTokenClaimsChange = CaepCommon & {
|
|
48
|
-
readonly claims: Readonly<Record<string, unknown>>;
|
|
49
|
-
};
|
|
50
|
-
type CaepAssuranceLevelChange = CaepCommon & {
|
|
51
|
-
readonly namespace: string;
|
|
52
|
-
readonly currentLevel: string;
|
|
53
|
-
readonly previousLevel?: string;
|
|
54
|
-
readonly changeDirection?: "increase" | "decrease";
|
|
55
|
-
};
|
|
56
|
-
type CaepDeviceComplianceChange = CaepCommon & {
|
|
57
|
-
readonly previousStatus: "compliant" | "not-compliant";
|
|
58
|
-
readonly currentStatus: "compliant" | "not-compliant";
|
|
59
|
-
};
|
|
60
|
-
type CaepEvents = {
|
|
61
|
-
readonly sessionRevoked: (input: CaepCommon) => SetEvent;
|
|
62
|
-
readonly credentialChange: (input: CaepCredentialChange) => SetEvent;
|
|
63
|
-
readonly tokenClaimsChange: (input: CaepTokenClaimsChange) => SetEvent;
|
|
64
|
-
readonly assuranceLevelChange: (input: CaepAssuranceLevelChange) => SetEvent;
|
|
65
|
-
readonly deviceComplianceChange: (input: CaepDeviceComplianceChange) => SetEvent;
|
|
66
|
-
};
|
|
67
|
-
/** CAEP 1.0 event builders; each returns a `SetEvent` for `signSet`. */
|
|
68
|
-
declare const caepEvents: CaepEvents;
|
|
69
|
-
type RiscAccountDisabled = {
|
|
70
|
-
readonly subject: SetSubject;
|
|
71
|
-
readonly reason?: "hijacking" | "bulk-account";
|
|
72
|
-
};
|
|
73
|
-
type RiscCredentialCompromise = CaepCommon & {
|
|
74
|
-
readonly credentialType: string;
|
|
75
|
-
};
|
|
76
|
-
type RiscEvents = {
|
|
77
|
-
readonly accountDisabled: (input: RiscAccountDisabled) => SetEvent;
|
|
78
|
-
readonly accountPurged: (input: {
|
|
79
|
-
readonly subject: SetSubject;
|
|
80
|
-
}) => SetEvent;
|
|
81
|
-
readonly credentialCompromise: (input: RiscCredentialCompromise) => SetEvent;
|
|
82
|
-
};
|
|
83
|
-
/** RISC 1.0 event builders for the events PermDock's receiver treats as revoking every session. */
|
|
84
|
-
declare const riscEvents: RiscEvents;
|
|
85
|
-
/**
|
|
86
|
-
* The SSF 1.0 section 8.1.4 verification event for `stream`, echoing the
|
|
87
|
-
* receiver's `state`. Its subject is the stream, never a principal.
|
|
88
|
-
*/
|
|
89
|
-
declare function streamVerificationEvent(stream: string, state?: string): SetEvent;
|
|
90
|
-
//#endregion
|
|
91
|
-
export { setPollHandler as _, CaepTokenClaimsChange as a, RiscEvents as c, caepEvents as d, pushSet as f, memorySetQueue as g, streamVerificationEvent as h, CaepEvents as i, SSF_POLL_DELIVERY as l, signSet as m, CaepCredentialChange as n, RiscAccountDisabled as o, riscEvents as p, CaepDeviceComplianceChange as r, RiscCredentialCompromise as s, CaepAssuranceLevelChange as t, SSF_PUSH_DELIVERY as u, createPermDock as v };
|
package/dist/load-BxEtwlBS.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { a as loadModule, s as pickNamed } from "./load-DFS_ry0W.js";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { t as SPLIT_PARTS } from "./output-files-DhRBBE4n.js";
|
package/dist/parse-Cxq0WxrA.js
DELETED
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import { n as freezeDeep } from "./freeze-CrU8nQeX.js";
|
|
2
|
-
import { n as PermDockValidationError } from "./validation-error-ZfUHbKvf.js";
|
|
3
|
-
import { n as copyJson, t as checkSchema } from "./json-schema-B-vAwlde.js";
|
|
4
|
-
import { t as catalogSchema } from "./schema-B4v0Qrac.js";
|
|
5
|
-
//#region src/catalog/parse.ts
|
|
6
|
-
function invalid(issues) {
|
|
7
|
-
const [first] = issues;
|
|
8
|
-
const where = first?.path === void 0 || first.path.length === 0 ? "" : ` at ${first.path.map(String).join(".")}`;
|
|
9
|
-
const more = issues.length > 1 ? ` (and ${String(issues.length - 1)} more)` : "";
|
|
10
|
-
throw new PermDockValidationError({
|
|
11
|
-
code: "invalid-data",
|
|
12
|
-
permission: "",
|
|
13
|
-
resource: "",
|
|
14
|
-
boundary: "catalog",
|
|
15
|
-
issues,
|
|
16
|
-
message: `PermDock: invalid catalog${where}: ${first?.message ?? "unknown"}${more}`
|
|
17
|
-
});
|
|
18
|
-
}
|
|
19
|
-
/**
|
|
20
|
-
* Reads a `permissions.catalog.json` document (parsed, or the JSON text) and
|
|
21
|
-
* validates it against `schemas/catalog-v1.json`. Returns a deep-frozen copy
|
|
22
|
-
* built from own keys; throws `PermDockValidationError` with every issue.
|
|
23
|
-
*/
|
|
24
|
-
function parseCatalog(json) {
|
|
25
|
-
const issues = [];
|
|
26
|
-
let input = json;
|
|
27
|
-
if (typeof json === "string") try {
|
|
28
|
-
input = JSON.parse(json);
|
|
29
|
-
} catch (error) {
|
|
30
|
-
invalid([{
|
|
31
|
-
message: `Expected JSON text: ${error instanceof Error ? error.message : String(error)}`,
|
|
32
|
-
path: []
|
|
33
|
-
}]);
|
|
34
|
-
}
|
|
35
|
-
let copy;
|
|
36
|
-
try {
|
|
37
|
-
copy = copyJson(input, [], issues, /* @__PURE__ */ new Set());
|
|
38
|
-
} catch (error) {
|
|
39
|
-
invalid([{
|
|
40
|
-
message: `Could not read the input: ${error instanceof Error ? error.message : String(error)}`,
|
|
41
|
-
path: []
|
|
42
|
-
}]);
|
|
43
|
-
}
|
|
44
|
-
if (issues.length === 0) checkSchema(catalogSchema, copy, [], issues);
|
|
45
|
-
if (issues.length > 0) invalid(issues);
|
|
46
|
-
return freezeDeep(copy);
|
|
47
|
-
}
|
|
48
|
-
/** Keys of the permissions the catalog marks `rowConditions: true`: the SQL helpers alone cannot enforce them. */
|
|
49
|
-
function rowConditionKeys(catalog) {
|
|
50
|
-
return new Set(catalog.permissions.filter((permission) => permission.rowConditions === true).map((permission) => permission.key));
|
|
51
|
-
}
|
|
52
|
-
//#endregion
|
|
53
|
-
export { rowConditionKeys as n, parseCatalog as t };
|
package/dist/peer-C8swJ2GH.js
DELETED
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { n as CliError } from "./errors-CWTY6uih.js";
|
|
2
|
-
import { detect, getUserAgent, resolveCommand } from "package-manager-detector";
|
|
3
|
-
//#region src/cli/core/peer.ts
|
|
4
|
-
/**
|
|
5
|
-
* Loads an optional peer dependency for one command, or fails with the line
|
|
6
|
-
* that installs it with the project's package manager. Only the commands that
|
|
7
|
-
* need a peer ever load it.
|
|
8
|
-
*/
|
|
9
|
-
async function requirePeer(load, name, command, cwd = process.cwd()) {
|
|
10
|
-
try {
|
|
11
|
-
return await load();
|
|
12
|
-
} catch (error) {
|
|
13
|
-
if (!isMissingModule(error)) throw error;
|
|
14
|
-
const agent = await packageManagerOf(cwd);
|
|
15
|
-
throw new CliError("unavailable", peerHint(name, command, agent), {
|
|
16
|
-
cause: error,
|
|
17
|
-
code: "dependency_missing",
|
|
18
|
-
extensions: { package: name },
|
|
19
|
-
next: [{
|
|
20
|
-
command: addLine(agent, [name], { dev: true }),
|
|
21
|
-
when: "to install it"
|
|
22
|
-
}]
|
|
23
|
-
});
|
|
24
|
-
}
|
|
25
|
-
}
|
|
26
|
-
/** The package manager whose lockfile the project has, else the one running the CLI. */
|
|
27
|
-
async function packageManagerOf(cwd) {
|
|
28
|
-
return (await detect({ cwd }))?.agent ?? getUserAgent() ?? void 0;
|
|
29
|
-
}
|
|
30
|
-
/** The command that adds `packages` with `agent`, npm when there is none. */
|
|
31
|
-
function addLine(agent, packages, options) {
|
|
32
|
-
const args = options?.dev === true ? ["-D", ...packages] : [...packages];
|
|
33
|
-
const command = resolveCommand(agent ?? "npm", "add", args);
|
|
34
|
-
return command === null ? `npm install ${args.join(" ")}` : [command.command, ...command.args].join(" ");
|
|
35
|
-
}
|
|
36
|
-
function isMissingModule(error) {
|
|
37
|
-
if (typeof error !== "object" || error === null || !("code" in error)) return false;
|
|
38
|
-
return error.code === "ERR_MODULE_NOT_FOUND" || error.code === "MODULE_NOT_FOUND";
|
|
39
|
-
}
|
|
40
|
-
/**
|
|
41
|
-
* The error for a missing peer. `agent` is the package manager that ran the
|
|
42
|
-
* command, or the one whose lockfile the project has; without one the line
|
|
43
|
-
* names pnpm and npm.
|
|
44
|
-
*/
|
|
45
|
-
function peerHint(name, command, agent = getUserAgent() ?? void 0) {
|
|
46
|
-
const install = agent === void 0 ? void 0 : resolveCommand(agent, "add", ["-D", name]);
|
|
47
|
-
return `PermDock CLI: ${command} needs the optional peer ${name}. Install it with: ${install === null || install === void 0 ? `pnpm add -D ${name} (or npm install -D ${name})` : [install.command, ...install.args].join(" ")}`;
|
|
48
|
-
}
|
|
49
|
-
//#endregion
|
|
50
|
-
export { requirePeer as i, packageManagerOf as n, peerHint as r, addLine as t };
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export { n as runPowerSync } from "./powersync-bYUDLOAO.js";
|