permdock 0.7.0 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -3
- package/dist/a2a/index.d.ts +7 -7
- package/dist/a2a/index.js +8 -8
- package/dist/action-result-CL-QCITA.d.ts +19 -0
- package/dist/{adapter-context-CRhqyzCk.js → adapter-context-CIQpQxbE.js} +8 -2
- package/dist/{adoption-scan-D-feE7BE.js → adoption-scan-BLs67P1l.js} +5 -5
- package/dist/agent/index.d.ts +2 -2
- package/dist/agent/index.js +1 -1
- package/dist/ai-sdk/index.d.ts +19 -13
- package/dist/ai-sdk/index.js +6 -6
- package/dist/{app-data-MuyzVqX8.js → app-data-UNNm07jV.js} +10 -7
- package/dist/{approval-header-CJACtHkv.js → approval-header-8QV6MU4H.js} +6 -3
- package/dist/{approval-prompt-Dg5LeAcT.js → approval-prompt-B8hQY69x.js} +5 -6
- package/dist/{approval-prompt-K0faOLFp.d.ts → approval-prompt-PYagyQUj.d.ts} +13 -11
- package/dist/approvals/index.d.ts +4 -4
- package/dist/approvals/index.js +6 -6
- package/dist/{approvals-CMRfsbBh.js → approvals-DnIBTuXE.js} +66 -42
- package/dist/{approvers-CqPOLD-o.js → approvers-B4r0N_Uz.js} +8 -2
- package/dist/{arazzo-ClrF3PVb.js → arazzo-3RhGfkAK.js} +2 -2
- package/dist/{arazzo-rdeJ8n1J.js → arazzo-B5-ulWif.js} +6 -6
- package/dist/{args-CC3OwyHW.js → args-0FrVs5EH.js} +14 -7
- package/dist/astro/index.d.ts +30 -12
- package/dist/astro/index.js +2 -2
- package/dist/{audience-BrMs8c4o.js → audience-BAkBDMqn.js} +8 -8
- package/dist/{auth-CscUX8Sy.js → auth--yPyZNgr.js} +19 -7
- package/dist/authzen/index.d.ts +34 -28
- package/dist/authzen/index.js +23 -20
- package/dist/{automation-DOtAFWdy.d.ts → automation-DqEoWHBc.d.ts} +42 -32
- package/dist/{automation-ySsxp_Yp.js → automation-x3KEUusw.js} +22 -21
- package/dist/better-auth/index.d.ts +2 -2
- package/dist/better-auth/index.js +13 -7
- package/dist/better-supabase/index.d.ts +357 -227
- package/dist/better-supabase/index.js +219 -140
- package/dist/{bind-JDuvxjuW.d.ts → bind-Cp2hBHzP.d.ts} +27 -12
- package/dist/{bind-D1nO6fiC.js → bind-D_sZSVA3.js} +22 -10
- package/dist/{body-CH5of8Ne.js → body-CJQwYVa8.js} +3 -3
- package/dist/{body-text-QcXok_SI.js → body-text-DQhcmqdY.js} +8 -4
- package/dist/{boundary-BM8a_P6E.js → boundary-BV3O1eud.js} +8 -2
- package/dist/{boundary-BmHxVH1J.d.ts → boundary-C9ck-3uK.d.ts} +13 -4
- package/dist/{budget-NbEtbJC_.js → budget-BELja5A9.js} +6 -3
- package/dist/{budget-JqcRqyhK.d.ts → budget-hYsPz_yE.d.ts} +6 -3
- package/dist/{build-instance-DxE7czo9.js → build-instance-CNWaYJyr.js} +3 -3
- package/dist/{capability-L7NnfhiE.js → capability-BqX94r07.js} +31 -25
- package/dist/{capability-D4UC9TTW.d.ts → capability-ChuiONQU.d.ts} +41 -29
- package/dist/{casbin-BW9pS47J.js → casbin-H0rKxBx2.js} +16 -8
- package/dist/{casbin-BHijLuHY.js → casbin-cbSbhT_k.js} +2 -2
- package/dist/{casl-CmJlgziS.js → casl-C4OINZHI.js} +2 -2
- package/dist/{casl-UbI8v-Wq.js → casl-CHHoCldP.js} +19 -10
- package/dist/catalog/index.d.ts +51 -30
- package/dist/catalog/index.js +18 -15
- package/dist/{catalog-D69WhFii.js → catalog-BFpz2EmT.js} +20 -19
- package/dist/{catalog-BaMQfQ6Y.js → catalog-DCspHDc8.js} +3 -3
- package/dist/{catalog-doc-CV9s6B1S.js → catalog-doc-DjMKzJp9.js} +28 -14
- package/dist/{catalog-fingerprint-C144oW4M.js → catalog-fingerprint-e6aCWosn.js} +18 -14
- package/dist/catalog-mRQQQhNK.js +1 -0
- package/dist/catalog-operations-Dadrl7Z-.js +60 -0
- package/dist/{challenge-nGWma08S.js → challenge-DImNcR7B.js} +48 -27
- package/dist/chat/index.d.ts +1 -1
- package/dist/chat/index.js +13 -10
- package/dist/chat-sdk/index.d.ts +44 -26
- package/dist/chat-sdk/index.js +17 -17
- package/dist/{checks-BC_0mPIq.js → checks-CGkP3Z7A.js} +4 -1
- package/dist/{claims-map-7oQ3ue4X.js → claims-map-CKkoAAYF.js} +5 -2
- package/dist/{claims-map-Ca-QX8C6.d.ts → claims-map-D1Pb5oRq.d.ts} +8 -5
- package/dist/claude-agent/index.d.ts +6 -6
- package/dist/claude-agent/index.js +6 -3
- package/dist/clerk/index.d.ts +11 -7
- package/dist/clerk/index.js +6 -6
- package/dist/cli/bin.js +4 -4
- package/dist/cli/index.d.ts +82 -7
- package/dist/cli/index.js +6 -6
- package/dist/{clients-C7zLFuWT.d.ts → clients-C_NOET3z.d.ts} +5 -5
- package/dist/{clients-DjU5ABMy.js → clients-DYr3U86j.js} +3 -3
- package/dist/cloud/index.d.ts +84 -52
- package/dist/cloud/index.js +53 -39
- package/dist/{cloud-CO8pYtwr.js → cloud-BFlGMaak.js} +4 -5
- package/dist/{codemod-i4N2BhDc.js → codemod-DLQ9Zpo4.js} +3 -4
- package/dist/{codemod-BP6n8N9L.js → codemod-DWSN2erG.js} +523 -201
- package/dist/collect-B5BL3klN.js +1 -0
- package/dist/{collect-BaWeMjwV.js → collect-B7ZFAJU3.js} +26 -63
- package/dist/{collect-DNm3oKOk.js → collect-Bzv3le0A.js} +4 -5
- package/dist/{compare-pfyVnBjE.js → compare-DTfyUunF.js} +2 -2
- package/dist/compile/index.d.ts +2 -2
- package/dist/compile/index.js +1 -1
- package/dist/{compile-COM2VKuN.d.ts → compile-BFzysW3o.d.ts} +36 -12
- package/dist/{compile-BAEO5bOk.js → compile-EzEMB-7v.js} +77 -33
- package/dist/{completion-BNdVf7X2.js → completion-saoYiRFO.js} +17 -8
- package/dist/config-BwPBfN0t.js +108 -0
- package/dist/{config-DGZzMV1B.js → config-DBeXXmBF.js} +2 -2
- package/dist/{config-report-Cm7UITNA.js → config-report-BipSWA6V.js} +9 -6
- package/dist/config-shape-ykV0Vm2n.js +134 -0
- package/dist/{connection-DjhIJSs2.js → connection-B72dg5Q2.js} +23 -22
- package/dist/{connector-schema-_VCSsdtD.js → connector-schema-CYLQNMYq.js} +3 -2
- package/dist/{context--uM9V3Ui.js → context-BnIzxTNE.js} +4 -3
- package/dist/convex/index.d.ts +13 -7
- package/dist/convex/index.js +9 -6
- package/dist/{core-B5-w6Kw9.js → core-H-mbhpZc.js} +26 -20
- package/dist/{core-CQkE8Esr.d.ts → core-hWIARPDz.d.ts} +49 -22
- package/dist/{create-UTnUVETj.d.ts → create-BSNrVuxh.d.ts} +70 -37
- package/dist/{create-B2-CQqCI.d.ts → create-BVq1lNQE.d.ts} +49 -28
- package/dist/{create-QHuuPw3q.d.ts → create-CM1FciYG.d.ts} +37 -29
- package/dist/{create-Cb86Z8Im.js → create-Cq4Uox0f.js} +10 -7
- package/dist/{create-DJrlhEp9.js → create-_noSrY1T.js} +15 -21
- package/dist/{credential-CIM7wHwA.js → credential-CyyyvCsL.js} +41 -38
- package/dist/{credentials-BpuTwd7a.js → credentials-CdDxp7jN.js} +6 -6
- package/dist/{deciding-columns-DRo2QM6E.js → deciding-columns-NB4wcyBf.js} +2 -2
- package/dist/{delegation-C5rOdTp5.js → delegation-CDB6_keF.js} +31 -22
- package/dist/delivery/index.d.ts +4 -4
- package/dist/delivery/index.js +5 -5
- package/dist/{delivery-rwOKLWRm.js → delivery-BupfvJIV.js} +34 -22
- package/dist/{delivery-event-xX4obB8F.js → delivery-event-JioK5YbS.js} +6 -6
- package/dist/denied-text-CHNlVInN.d.ts +22 -0
- package/dist/{describe-DZlnEtLy.js → describe-Bb4hGK5d.js} +5 -5
- package/dist/{describe-O0SwYIK8.d.ts → describe-ByS9LgHK.d.ts} +5 -5
- package/dist/{device-BARQ8eYG.js → device-BwbJNmb2.js} +11 -8
- package/dist/{diff-Btr1c1Ow.js → diff-CN8IYhC_.js} +2 -2
- package/dist/{diff-DzT-xD13.js → diff-iZWV65nC.js} +22 -13
- package/dist/{digest-B3kc_PgQ.d.ts → digest-8Yx2CchM.d.ts} +3 -3
- package/dist/{doctor-BU1szn63.js → doctor-CHD1M9R5.js} +287 -135
- package/dist/{doctor-BoK_y0KO.js → doctor-D3wo-yuz.js} +4 -4
- package/dist/drizzle/index.d.ts +33 -19
- package/dist/drizzle/index.js +17 -9
- package/dist/elysia/index.d.ts +17 -11
- package/dist/elysia/index.js +5 -5
- package/dist/{errors-BKy0EfhN.js → errors-B6R_lg2a.js} +13 -4
- package/dist/{errors-BWXBMaKK.d.ts → errors-CHwoRRpB.d.ts} +4 -1
- package/dist/{errors-DpP_U6Bf.js → errors-Vpu6rKHl.js} +13 -10
- package/dist/{errors-B_Qg9D3e.d.ts → errors-zi_4T-rx.d.ts} +22 -6
- package/dist/{evaluate-B_oqFbWC.js → evaluate-Dd8Ta0Ie.js} +140 -78
- package/dist/{evaluations-DReoiVBw.js → evaluations-IBceAeKT.js} +40 -19
- package/dist/{evaluations-BCddEOfO.d.ts → evaluations-z8dQFDaN.d.ts} +11 -5
- package/dist/eve/index.d.ts +9 -6
- package/dist/eve/index.js +4 -4
- package/dist/{event-time-CsegxXxB.js → event-time-BGy48400.js} +8 -4
- package/dist/{expiry-D4_YKRKD.js → expiry-6XByK0dm.js} +8 -5
- package/dist/express/index.d.ts +9 -6
- package/dist/express/index.js +9 -6
- package/dist/fastify/index.d.ts +16 -10
- package/dist/fastify/index.js +8 -5
- package/dist/{fetch-adapter-CuhyYwC1.d.ts → fetch-adapter-C1DCvpqV.d.ts} +9 -6
- package/dist/{fetch-adapter-De-u6vhJ.js → fetch-adapter-JL43jD3E.js} +14 -11
- package/dist/fields-D0vUI6dq.js +498 -0
- package/dist/{files-acUbNwWt.js → files-B3AA05f1.js} +8 -5
- package/dist/{files-D_JIzUrP.js → files-BSjrtIHw.js} +11 -4
- package/dist/{fixtures-BTMW6zgU.js → fixtures-A1_sp_tR.js} +15 -6
- package/dist/{flags-aaeRAdiD.js → flags-DXjoTVbS.js} +2 -2
- package/dist/{freeze-CrU8nQeX.js → freeze-jjan0lCv.js} +4 -1
- package/dist/{from-snapshot-Bz469dIh.js → from-snapshot-DCakWRsr.js} +18 -15
- package/dist/gen-B5kvbAoZ.js +58 -0
- package/dist/gen-DWCYcMQM.js +827 -0
- package/dist/{generate-3FNO5P5Q.js → generate-CRVV5V7l.js} +14 -8
- package/dist/generate-CezbCaTI.js +275 -0
- package/dist/{grantee-BrRANrpT.js → grantee-Dke-9rd1.js} +4 -4
- package/dist/{grantee-conditions-C6P1Tvol.js → grantee-conditions-BrYPe-w0.js} +12 -12
- package/dist/{grantee-match-0RtHWQDx.js → grantee-match-7RZZvoT_.js} +12 -6
- package/dist/{graph-sql-B-dsAT6j.d.ts → graph-sql-BwFC4Qjs.d.ts} +3 -3
- package/dist/h3/index.d.ts +10 -7
- package/dist/h3/index.js +3 -3
- package/dist/headers-B9jQxjtW.d.ts +10 -0
- package/dist/{helpers-DY3vXuGs.js → helpers-DJicaG6f.js} +40 -28
- package/dist/hono/index.d.ts +16 -10
- package/dist/hono/index.js +5 -5
- package/dist/{hosted-BmjzxQhp.d.ts → hosted-Cmtxogd0.d.ts} +33 -21
- package/dist/{hosted-XBgU6RGT.js → hosted-D0IzESu_.js} +42 -21
- package/dist/{http-ujKm0JXE.js → http-DH94eh6f.js} +4 -4
- package/dist/{http-BBoKefeS.js → http-DKLXrFGk.js} +13 -7
- package/dist/{http-Ca3Sr5x1.js → http-DOL33cO0.js} +11 -8
- package/dist/{import-Bz0GefWg.js → import-CST57XLp.js} +64 -51
- package/dist/{import-DB2EG_iy.js → import-_YqhhwvX.js} +6 -6
- package/dist/{index-BSfRl0hZ.d.ts → index-B8s204GL.d.ts} +64 -52
- package/dist/{index-DH9DUDEM.d.ts → index-BT5-1VsX.d.ts} +54 -30
- package/dist/{index-BTkwrK7v.d.ts → index-BW_0MZOS.d.ts} +282 -172
- package/dist/{index-CMiPH2Tv.d.ts → index-BhxEUY9J.d.ts} +64 -37
- package/dist/{index-DLwcuCN_.d.ts → index-Bv5iXPqU.d.ts} +51 -30
- package/dist/{index-BE8y3moU.d.ts → index-_9UiQIkt.d.ts} +127 -82
- package/dist/index.d.ts +22 -22
- package/dist/index.js +33 -33
- package/dist/{init-5TXNji88.js → init-Dz_PsHdv.js} +5 -5
- package/dist/{init-B-4t1NzC.js → init-cE3A8aXq.js} +10 -10
- package/dist/{instance-options-CU0YQCLH.d.ts → instance-options-B0KXqTrJ.d.ts} +4 -4
- package/dist/{instance-snapshot-CjcwnEiV.js → instance-snapshot--JWiTrvO.js} +75 -55
- package/dist/{instant-BluqDvyS.js → instant-DK3Iz83e.js} +2 -2
- package/dist/{internals-Dk8A8fX3.js → internals-B3IgHrvo.js} +6 -3
- package/dist/{json-schema-B-vAwlde.js → json-schema-BPGa-RjQ.js} +9 -3
- package/dist/{json-schema-CN_iLFH2.d.ts → json-schema-BfXgnRNT.d.ts} +4 -4
- package/dist/jwt/index.d.ts +57 -27
- package/dist/jwt/index.js +24 -21
- package/dist/{kernel-DVExUwkp.js → kernel-C-fYydV2.js} +32 -23
- package/dist/kysely/index.d.ts +49 -33
- package/dist/kysely/index.js +9 -7
- package/dist/{live-options-BaAFCIiu.js → live-options-BBIT68le.js} +2 -2
- package/dist/{load-DxroEzH1.js → load-DjSU5KXO.js} +6 -6
- package/dist/load-Dm0pSYH3.js +1 -0
- package/dist/{login-ClSJh5t5.js → login-D-8tMqzo.js} +4 -4
- package/dist/{login-WC9HPJpU.js → login-DplQ0s84.js} +16 -9
- package/dist/{manifest-Dv6q4i5s.js → manifest-Cgiq5oqc.js} +49 -38
- package/dist/{manifest-BVhExYhw.d.ts → manifest-CzzWtnAb.d.ts} +126 -31
- package/dist/{manifest-schema-Cv492Qev.js → manifest-schema-2r37XRhD.js} +44 -3
- package/dist/{manifest-B79YuF2T.js → manifest-wg8WkkpD.js} +6 -6
- package/dist/{map-claims-etGIS_Dv.js → map-claims-BNWCJtmP.js} +14 -8
- package/dist/{map-error-BQGyDm_M.js → map-error-pasIGqMT.js} +7 -7
- package/dist/{markers-C6joDI3o.js → markers-BeHZ4x9Q.js} +20 -5
- package/dist/mcp/index.d.ts +114 -61
- package/dist/mcp/index.js +70 -40
- package/dist/{migrate-Dodel0IJ.js → migrate-B7oP_sQU.js} +35 -17
- package/dist/module-values-BJTBdo6y.js +107 -0
- package/dist/nest/index.d.ts +23 -13
- package/dist/nest/index.js +18 -11
- package/dist/next/client.d.ts +5 -2
- package/dist/next/client.js +1 -1
- package/dist/next/index.d.ts +72 -26
- package/dist/next/index.js +110 -6
- package/dist/next/plugin.d.ts +1 -1
- package/dist/next/plugin.js +4 -3
- package/dist/node/index.d.ts +5 -5
- package/dist/node/index.js +3 -3
- package/dist/{ocsf-BFp-PZZA.js → ocsf-TcjRBgIs.js} +15 -5
- package/dist/openai/index.d.ts +13 -7
- package/dist/openai/index.js +3 -3
- package/dist/openapi/index.d.ts +51 -30
- package/dist/openapi/index.js +2 -2
- package/dist/{openapi-Ddb4628T.js → openapi-BOsx0xn9.js} +33 -18
- package/dist/{openapi-DMocl1bh.js → openapi-CBZUhA3l.js} +4 -5
- package/dist/{openapi-ztVaux6j.js → openapi-VeHHU2l9.js} +23 -14
- package/dist/{operation-findings-kRcEp8lE.js → operation-findings-CXtFzlKJ.js} +3 -3
- package/dist/{operations-BNLes61x.d.ts → operations-Ci_rT6Uo.d.ts} +10 -7
- package/dist/orpc/index.d.ts +68 -14
- package/dist/orpc/index.js +62 -13
- package/dist/otel/index.d.ts +7 -4
- package/dist/otel/index.js +8 -5
- package/dist/output-files-BHOIlrfD.js +1 -0
- package/dist/{output-files-CCMdcFWb.js → output-files-BIQ_9pIs.js} +29 -17
- package/dist/{output-DgSDLrta.js → output-tkju6U7R.js} +9 -5
- package/dist/ownership-B4L59T9u.js +1054 -0
- package/dist/{parse-Ddhz2xf4.js → parse-1_ZheTW5.js} +16 -13
- package/dist/parse-local-manifest-BQhTlLQS.d.ts +10 -0
- package/dist/{parse-local-manifest-T1Q8X3A2.js → parse-local-manifest-DEiCF4ah.js} +19 -7
- package/dist/{parse-request-D_tUXG6M.js → parse-request-CwCZpyjV.js} +7 -8
- package/dist/{paths-DXSHAMIa.js → paths-CUvURzHp.js} +4 -1
- package/dist/pdp/index.d.ts +9 -6
- package/dist/pdp/index.js +20 -13
- package/dist/{peer-DOzzMfZL.js → peer-C9LvBCcb.js} +1 -1
- package/dist/{peer-12Q5I_RH.js → peer-Q0fuZ6hx.js} +9 -3
- package/dist/{permdock-Dco6dyCK.d.ts → permdock-B6Sf4T_S.d.ts} +253 -129
- package/dist/{permdock-BfWEeMqk.js → permdock-L-_I_3zP.js} +59 -35
- package/dist/{permission-registry-DpPtSKNZ.js → permission-registry-B8tYxPIt.js} +23 -10
- package/dist/{permission-types-DhNEmoRG.d.ts → permission-types-CAY-GU7e.d.ts} +127 -41
- package/dist/{permissions-CoqCOfJ3.d.ts → permissions-Bx6UI8n1.d.ts} +6 -3
- package/dist/{permissions-CyH2MV_B.js → permissions-CVXmRILq.js} +3 -3
- package/dist/{permissions-DArULThq.js → permissions-mDcTWoBs.js} +8 -5
- package/dist/pg-DQTqRrou.js +60 -0
- package/dist/{pins-8ILTftC9.js → pins-nqarl3oE.js} +4 -1
- package/dist/{pkce-5h8NgMQJ.js → pkce-CnmmYqUZ.js} +1 -1
- package/dist/{policy-B7dg_yzu.d.ts → policy-Ba4bDhaj.d.ts} +5 -5
- package/dist/{policy-DaJy4nK4.js → policy-CLQ8__GF.js} +43 -23
- package/dist/{policy-from-catalog-DFWYkNdu.js → policy-from-catalog-CJgOm6aq.js} +28 -25
- package/dist/{policy-module-CTlwMvLI.js → policy-module-xym9fnSq.js} +12 -6
- package/dist/{policy-types-B-F-qAZk.d.ts → policy-types-CCiDRZBH.d.ts} +738 -349
- package/dist/{postgres-store-BL9M_CA1.js → postgres-store-DcyrPS-r.js} +43 -16
- package/dist/{postgrest-r5faDIzD.js → postgrest-D4nuPXIQ.js} +52 -33
- package/dist/{postgrest-CYacM_u7.d.ts → postgrest-DicQyqm-.d.ts} +54 -35
- package/dist/{powersync-53ryOZip.js → powersync-DHNQX06W.js} +127 -69
- package/dist/{powersync-13odBwiM.js → powersync-DXqGuq9A.js} +3 -3
- package/dist/powersync-Djf-zCpB.js +1 -0
- package/dist/preset/index.d.ts +38 -28
- package/dist/preset/index.js +1 -1
- package/dist/{preset-CHTbd-DQ.js → preset-BjLzeFpp.js} +56 -32
- package/dist/{principal-source-pHneukrx.js → principal-source-C6N60GtM.js} +10 -10
- package/dist/prisma/index.d.ts +69 -41
- package/dist/prisma/index.js +21 -17
- package/dist/{problem-CTviyH5L.js → problem-BVLHFK33.js} +41 -21
- package/dist/{problem-details-cn5X30gZ.js → problem-details-CLDgX1KV.js} +13 -4
- package/dist/{problem-types-CJ2325SZ.js → problem-types-DSsRfONQ.js} +4 -1
- package/dist/{prompt-DwtVemER.js → prompt-BYc6drYW.js} +4 -1
- package/dist/protected-action-BE7N_Luo.d.ts +58 -0
- package/dist/protected-action-DUYqb-Ma.js +80 -0
- package/dist/{protected-DXE3cQYg.js → protected-action-QEA8arRB.js} +48 -14
- package/dist/{provider-BQsTYYy0.js → provider-C55OGXJ7.js} +5 -4
- package/dist/{provider-Csk-THAn.d.ts → provider-DXfq5c2d.d.ts} +1 -1
- package/dist/{provider-store-IgqQipCO.js → provider-store-CaTv00tr.js} +13 -9
- package/dist/pull-B65ndFNZ.js +1 -0
- package/dist/{pull-CN5OLxrF.js → pull-CwpGaQSi.js} +12 -11
- package/dist/{push-tVdG8dUL.js → push-DgssgzkK.js} +19 -13
- package/dist/{pushed-policy-BbcY9r_4.d.ts → pushed-policy-D1Eoi6NM.d.ts} +12 -6
- package/dist/{pushed-policy-CmYeSQqq.js → pushed-policy-ITwYKvvH.js} +10 -7
- package/dist/react/index.d.ts +9 -8
- package/dist/react/index.js +7 -6
- package/dist/react/provider-client.d.ts +1 -1
- package/dist/react/provider-client.js +1 -1
- package/dist/react-native/index.d.ts +94 -55
- package/dist/react-native/index.js +200 -61
- package/dist/{refs-CNJBiTFo.js → refs-C8BKxc_e.js} +2 -2
- package/dist/{relation-walk-3OyDBF0S.js → relation-walk-DK_gkgL7.js} +12 -9
- package/dist/{relations-BnCWnJGI.js → relations-BxvRvDHK.js} +3 -3
- package/dist/{replay-Du1tJjG7.js → replay-BU09ad4L.js} +1 -1
- package/dist/{replay-DCDD_ZfL.d.ts → replay-DNftIb_R.d.ts} +1 -1
- package/dist/{request-context-BykKLmyE.js → request-context-C25ilqiJ.js} +8 -8
- package/dist/{request-schema-CMreVuFM.js → request-schema-DhX7UbfQ.js} +4 -1
- package/dist/resend/index.d.ts +34 -28
- package/dist/resend/index.js +29 -29
- package/dist/resolve-names-CF7xXLSG.js +201 -0
- package/dist/{resource-relations-D_jw0BFx.js → resource-relations-8-pCScBO.js} +18 -9
- package/dist/{retire-Wj6dkyDE.js → retire-B2xffQgY.js} +15 -6
- package/dist/{revocations-R07lFBnX.d.ts → revocations-BaUXHM1N.d.ts} +6 -3
- package/dist/{rls-CxBZb4rZ.js → rls-CNEH2_BG.js} +299 -124
- package/dist/{rls-Ck_PocSp.js → rls-Ca8Jz9b5.js} +13 -6
- package/dist/{role-builder-C1VJzvcr.js → role-builder-BK2-T6oD.js} +41 -20
- package/dist/{row-conditions-h2HythXQ.js → row-conditions-BAGHOmVq.js} +4 -3
- package/dist/{rpc-Bk1bE-ch.js → rpc-fNqAIqQk.js} +8 -5
- package/dist/{run-uLD2aWuO.js → run-Bz26OTfO.js} +26 -23
- package/dist/run-D-JE8QWb.js +1 -0
- package/dist/{run-ticket-BpNi7BCi.d.ts → run-ticket-DbWI9f99.d.ts} +29 -14
- package/dist/{run-ticket-B5d_63Ma.js → run-ticket-Dv7aF7Dk.js} +9 -9
- package/dist/{runtime-Vif3_-zf.js → runtime-BGnrOkVH.js} +5 -2
- package/dist/{saas-Az_Kz-4D.js → saas-iWnUdwCt.js} +42 -29
- package/dist/{scan-DSljDE1Y.js → scan-DCj1KQfn.js} +1 -1
- package/dist/{schema-B4v0Qrac.js → schema-BOJjqlWL.js} +3 -2
- package/dist/{schema-gIcCx7zM.js → schema-Dst9I9Gs.js} +8 -4
- package/dist/scim/index.d.ts +2 -2
- package/dist/scim/index.js +2 -2
- package/dist/{scim-C7JYhySg.js → scim-D8YupzX1.js} +2 -2
- package/dist/{scim-YNieBO1U.js → scim-jJBJ7g1Z.js} +33 -15
- package/dist/{scopes-BHsc-wp-.js → scopes-0Up_UA2t.js} +41 -23
- package/dist/server/index.d.ts +11 -11
- package/dist/server/index.js +12 -12
- package/dist/{server-Bnga6I50.js → server-3cVlTLde.js} +31 -31
- package/dist/{server-types-C4gZUEZy.d.ts → server-types-CIlpSA2G.d.ts} +81 -46
- package/dist/{sha256-D9ihqmvd.js → sha256-C-4WXKIu.js} +4 -3
- package/dist/{shared-fMKOv8hP.js → shared-Afctg7B0.js} +65 -32
- package/dist/{shared-C8LjUdVU.js → shared-l0oGGetg.js} +9 -6
- package/dist/{signals-D3NcTKUS.js → signals-B1vHR3fN.js} +2 -2
- package/dist/{sink-BEZSlMS_.js → sink-D9_vh372.js} +32 -21
- package/dist/{sink-Cp_Eot9W.d.ts → sink-Dvi7YZG_.d.ts} +44 -20
- package/dist/{skills-Dcjw9_1C.js → skills-Bjj7BNEQ.js} +12 -8
- package/dist/{skills-g_3BS9NC.js → skills-OuoMR49L.js} +3 -3
- package/dist/{snapshot-CbGmYiJx.js → snapshot-CXlzi69u.js} +21 -18
- package/dist/{snapshot-cache-Pahd3IYJ.d.ts → snapshot-cache-BAXZ0KOp.d.ts} +21 -12
- package/dist/{snapshot-cache-DT2Kx1F8.js → snapshot-cache-Bx_4xC_6.js} +14 -11
- package/dist/solid/index.d.ts +55 -16
- package/dist/solid/index.js +46 -12
- package/dist/solid-start/index.d.ts +30 -12
- package/dist/solid-start/index.js +3 -3
- package/dist/{sources-DEEuGb8S.d.ts → sources-B1Os_YUu.d.ts} +126 -53
- package/dist/{sources-B-zYB4GS.js → sources-CMAM-2A3.js} +46 -27
- package/dist/{sql-B96movIM.js → sql-0WjxIp9g.js} +28 -7
- package/dist/{sql-CDEPCA0g.d.ts → sql-B80DFdpG.d.ts} +2 -2
- package/dist/{src-DLFrtrrC.js → src-DZ0l9UAg.js} +190 -100
- package/dist/ssf/index.d.ts +3 -3
- package/dist/ssf/index.js +47 -35
- package/dist/{standard-webhooks-B_qRg0ws.d.ts → standard-webhooks-C-qX4mJW.d.ts} +7 -7
- package/dist/{standard-webhooks-DgFFD-Ga.js → standard-webhooks-D67a3nzk.js} +5 -5
- package/dist/{store-DSP9oGvh.js → store-RNFvaJJv.js} +32 -26
- package/dist/{store-options-B_poyYvg.js → store-options-Dil3lraY.js} +105 -15
- package/dist/stores-C0Kta5Ft.d.ts +59 -0
- package/dist/{stores-BqEuHC05.js → stores-DxZWDXCs.js} +42 -5
- package/dist/{stream-CvdUS9V1.js → stream-CDvF0sJm.js} +5 -5
- package/dist/{stream-2Vwhl7Er.d.ts → stream-ltuLdtTG.d.ts} +4 -3
- package/dist/{style-Ds1gNm77.js → style-DblOtSga.js} +1 -1
- package/dist/{style-Cqo7-73x.js → style-Ds11Hmk4.js} +2 -1
- package/dist/{subject-settings-CkEwrw3W.js → subject-settings-8sH5HlII.js} +8 -4
- package/dist/{row-check-Dt35czLy.d.ts → subject-settings-vNW8qmUH.d.ts} +30 -18
- package/dist/supabase/index.d.ts +48 -38
- package/dist/supabase/index.js +5 -5
- package/dist/supabase/middleware.d.ts +19 -13
- package/dist/supabase/middleware.js +7 -7
- package/dist/{supabase--0aJdLEd.js → supabase-BL1qJzzY.js} +79 -35
- package/dist/{supabase-Bqp7iIY2.js → supabase-D39cuGPt.js} +3 -3
- package/dist/{supabase-hook-Dg0SrQWR.js → supabase-hook-B-yXnzUl.js} +175 -196
- package/dist/supabase-hook-H-MtE9Wd.js +1 -0
- package/dist/{supautils-MESd81bF.js → supautils-BU-pAEpf.js} +166 -47
- package/dist/{support-session-Cna49-3f.js → support-session-BsmPCbz8.js} +21 -21
- package/dist/svelte/PermissionBoundary.svelte +2 -6
- package/dist/svelte/Protected.svelte +2 -8
- package/dist/svelte/index.d.ts +9 -8
- package/dist/svelte/index.js +10 -9
- package/dist/svelte/runtime.d.ts +4 -4
- package/dist/svelte/runtime.js +4 -4
- package/dist/svelte/source.d.ts +9 -8
- package/dist/svelte/source.js +6 -5
- package/dist/sveltekit/index.d.ts +30 -12
- package/dist/sveltekit/index.js +2 -2
- package/dist/{ownership-Z2LpxsGa.js → tables-DeMNEy6V.js} +641 -1104
- package/dist/tanstack-start/index.d.ts +22 -10
- package/dist/tanstack-start/index.js +2 -2
- package/dist/{target-Bw37TFNA.js → target-qdEAnnhU.js} +6 -6
- package/dist/{tenancy-CmeBQ6Nv.js → tenancy-5d1zVBvK.js} +25 -19
- package/dist/terminal/index.d.ts +23 -14
- package/dist/terminal/index.js +17 -20
- package/dist/testing/core.d.ts +1 -1
- package/dist/testing/core.js +1 -1
- package/dist/testing/fixtures/index.d.ts +8 -5
- package/dist/testing/fixtures/index.js +78 -17
- package/dist/testing/index.d.ts +224 -141
- package/dist/testing/index.js +299 -234
- package/dist/testing/saas/index.d.ts +43 -27
- package/dist/testing/saas/index.js +2 -2
- package/dist/testing/saas/permissions.d.ts +1 -1
- package/dist/testing/saas/permissions.js +1 -1
- package/dist/{text-diff-DhITNCnD.js → text-diff-BtfSmdUo.js} +2 -2
- package/dist/{thenable-yD7SabqG.js → thenable-BNSM1U2R.js} +12 -3
- package/dist/{time-DkWjdL98.js → time-nR1JesoH.js} +32 -8
- package/dist/{token-2qYDvXz2.js → token-DC9EQiet.js} +14 -12
- package/dist/{tool-refusal-reAhIzdl.js → tool-refusal-Qpjs_W6M.js} +5 -2
- package/dist/trpc/index.d.ts +11 -8
- package/dist/trpc/index.js +15 -9
- package/dist/type-helpers-BIPIDa6a.d.ts +50 -0
- package/dist/{types-DBHftjgS.d.ts → types-AMJ5qoU_.d.ts} +45 -33
- package/dist/{types-CfiKC5aN.d.ts → types-B2mlGuhW.d.ts} +14 -11
- package/dist/{types-D3A19w4A.d.ts → types-B4uqKDnp.d.ts} +22 -13
- package/dist/{types-CQVEQawv.d.ts → types-BJk0BKRX.d.ts} +24 -14
- package/dist/types-B_d_g7T3.d.ts +262 -0
- package/dist/{types-DC44-hqb.d.ts → types-B_tiYvk8.d.ts} +59 -32
- package/dist/{types-DqzsnlSA.js → types-CcUXciSj.js} +17 -5
- package/dist/{types-BWZybqs9.d.ts → types-DC1Loeh3.d.ts} +381 -202
- package/dist/{types-CIeZcG8v.d.ts → types-DHKPcqzr.d.ts} +2 -2
- package/dist/{types-cTos-H7p.d.ts → types-DjuMBNF9.d.ts} +68 -32
- package/dist/{types-CeIscIKp.d.ts → types-HzqOtvsJ.d.ts} +23 -12
- package/dist/{types-BXMYB7BY.d.ts → types-ZzRGoViD.d.ts} +77 -24
- package/dist/{types-BfVmNJO5.d.ts → types-ah9NlU6j.d.ts} +128 -50
- package/dist/{types-DXmwu78Z.d.ts → types-djVzLlIV.d.ts} +31 -14
- package/dist/{types-g7Oy6Zg4.d.ts → types-yUuPR5Hy.d.ts} +47 -24
- package/dist/unplugin/index.d.ts +1 -1
- package/dist/unplugin/index.js +2 -2
- package/dist/usage-CYeXek0p.js +1 -0
- package/dist/{usage-Bybmck7f.js → usage-CxEzS4ey.js} +50 -26
- package/dist/{usage-CDaLXCfL.js → usage-ab0PdusX.js} +2 -2
- package/dist/{validation-error-ZfUHbKvf.js → validation-error-CYg2kJEw.js} +4 -1
- package/dist/{validation-error-CQpoquwj.d.ts → validation-error-YGg2mXyH.d.ts} +5 -2
- package/dist/{validity-CZ7-y0Cj.js → validity-Buc7w8E9.js} +13 -10
- package/dist/{verifier-DHuh-okk.js → verifier-DUV6pLqZ.js} +10 -4
- package/dist/{verify-pe8rL_Qw.js → verify-DZeqoWu5.js} +148 -487
- package/dist/version-DMQ0dnN5.js +48 -0
- package/dist/version-DizhmD72.js +1 -0
- package/dist/{views-BB8E9dTP.js → views-CD8wuL4Z.js} +19 -6
- package/dist/{vocabulary-Bg3eeT2H.d.ts → vocabulary-DEJ5j4mR.d.ts} +7 -4
- package/dist/vue/index.d.ts +71 -22
- package/dist/vue/index.js +50 -13
- package/dist/{waiter-DwEyouan.d.ts → waiter-Bu9zAlE0.d.ts} +13 -10
- package/dist/{waiter-BGUtGYoU.js → waiter-aBLM63_f.js} +1 -1
- package/dist/{watch-C-4VmFlL.js → watch-Cx_WciLE.js} +8 -8
- package/dist/watch-DB42U1ib.js +1 -0
- package/dist/webmcp/index.d.ts +11 -11
- package/dist/webmcp/index.js +8 -5
- package/dist/{where-scope-wq2coopv.js → where-scope-DlCdCM_8.js} +24 -18
- package/dist/{who-can-BwNsI_Js.js → who-can-rI7dCR9Q.js} +23 -20
- package/dist/workflow/index.d.ts +3 -3
- package/dist/workflow/index.js +13 -13
- package/dist/workflow-sdk/index.d.ts +19 -13
- package/dist/workflow-sdk/index.js +6 -6
- package/dist/{wrap-CiSc_KCq.js → wrap-B2wziJI_.js} +4 -4
- package/dist/{wrap-B6R0cMRL.d.ts → wrap-DlJE3gS_.d.ts} +8 -5
- package/package.json +7 -7
- package/schemas/catalog-v1.json +3 -0
- package/schemas/supabase-manifest-v1.json +33 -1
- package/skills/permdock-credentials/references/tokens-keys-links.md +8 -6
- package/skills/permdock-data/references/queries-and-rls.md +2 -1
- package/skills/permdock-tenancy/references/ownership-and-custom-roles.md +2 -2
- package/skills/permdock-wire/references/adapters.md +14 -22
- package/dist/catalog-BCCjSAdH.js +0 -1
- package/dist/collect-k_Dulxr5.js +0 -1
- package/dist/config-CoQHDrDi.js +0 -166
- package/dist/denied-text-D4qkEtFz.d.ts +0 -19
- package/dist/fields-ClcQLrVc.js +0 -238
- package/dist/generate-CNU1pIOo.js +0 -171
- package/dist/headers-BIjfMaoC.js +0 -8
- package/dist/headers-CIbDTUTK.d.ts +0 -7
- package/dist/load-DrMHXzgN.js +0 -1
- package/dist/output-files-DPAY7-GX.js +0 -1
- package/dist/package-root-Dk_ETdkp.js +0 -31
- package/dist/parse-local-manifest-e4mdwAKd.d.ts +0 -10
- package/dist/policies-B2lZIurj.js +0 -295
- package/dist/powersync-CExtTLyA.js +0 -1
- package/dist/problem-details-Tcfmj3bV.d.ts +0 -7
- package/dist/protected-BwZYL1X_.d.ts +0 -39
- package/dist/pull-Cty6Ovyu.js +0 -1
- package/dist/run-Bz7DXGEv.js +0 -1
- package/dist/stores-BAZwSYZA.d.ts +0 -31
- package/dist/supabase-hook-DJxC4PoP.js +0 -1
- package/dist/types-CKV71kKh.d.ts +0 -172
- package/dist/usage-y-kBNdqs.js +0 -1
- package/dist/version-CEbQ5UeM.js +0 -18
- package/dist/version-DXkYUISx.js +0 -1
- package/dist/watch-Bd9mx3rd.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { i as runSupabase } from "./supabase-hook-B-yXnzUl.js";
|
|
@@ -1,20 +1,22 @@
|
|
|
1
|
-
import { c as listPermissions, u as renamedKeys } from "./permission-registry-
|
|
2
|
-
import { f as scopeList, s as resolveScope } from "./scopes-
|
|
3
|
-
import { o as flattenGrantee } from "./grantee-
|
|
4
|
-
import {
|
|
5
|
-
import { a as describeError, i as configError } from "./errors-
|
|
6
|
-
import { d as sqlTextArray, i as qualifySqlTable } from "./sql-
|
|
7
|
-
import "./budget-
|
|
8
|
-
import { l as roleColumn } from "./sources-
|
|
1
|
+
import { c as listPermissions, u as renamedKeys } from "./permission-registry-B8tYxPIt.js";
|
|
2
|
+
import { f as scopeList, s as resolveScope } from "./scopes-0Up_UA2t.js";
|
|
3
|
+
import { o as flattenGrantee } from "./grantee-Dke-9rd1.js";
|
|
4
|
+
import { l as policyLevels } from "./policy-CLQ8__GF.js";
|
|
5
|
+
import { a as describeError, i as configError } from "./errors-Vpu6rKHl.js";
|
|
6
|
+
import { d as sqlTextArray, i as qualifySqlTable } from "./sql-0WjxIp9g.js";
|
|
7
|
+
import "./budget-BELja5A9.js";
|
|
8
|
+
import { l as roleColumn } from "./sources-CMAM-2A3.js";
|
|
9
9
|
import { t as beforeFirst } from "./text-BMFRfBqc.js";
|
|
10
|
-
import { c as parseSplit } from "./output-files-
|
|
11
|
-
import {
|
|
12
|
-
import { A as quoteQualified, C as parseMembershipsFlag, D as qualified,
|
|
13
|
-
import {
|
|
10
|
+
import { c as parseSplit } from "./output-files-BIQ_9pIs.js";
|
|
11
|
+
import { b as resolveAuthorize } from "./supabase-hook-B-yXnzUl.js";
|
|
12
|
+
import { A as quoteQualified, C as parseMembershipsFlag, D as qualified, F as firstScopeType, O as quoteIdent, R as tenantTypeOf, a as customRolesOn, j as quoteTable, k as quoteLiteral, s as signedIn, t as CUSTOM_ROLES } from "./shared-Afctg7B0.js";
|
|
13
|
+
import { G as byKey, H as rolesTableScope, O as tokenScopesPlan, Q as graphSqlName, V as raiseSql, W as byCodeUnit, Y as apiKeysPlan, a as closureDepths, bt as checkSuspension, i as tablelessResources, o as graphPlan, r as tableNames, t as resolveVias, z as currentKeyExpr } from "./tables-DeMNEy6V.js";
|
|
14
|
+
import { o as assignableRoles, r as unsatisfiedKinds, t as ownershipRules, u as roleNames } from "./ownership-B4L59T9u.js";
|
|
14
15
|
import { t as membershipSourcesOf } from "./sources-qoIJQrJv.js";
|
|
15
|
-
import { i as group, o as sqlStatements } from "./deciding-columns-
|
|
16
|
-
import {
|
|
17
|
-
import { d as
|
|
16
|
+
import { i as group, o as sqlStatements } from "./deciding-columns-NB4wcyBf.js";
|
|
17
|
+
import { t as resolveNames } from "./resolve-names-CF7xXLSG.js";
|
|
18
|
+
import { d as orSql, h as branchClauses } from "./fields-D0vUI6dq.js";
|
|
19
|
+
import { m as tableFor } from "./verify-DZeqoWu5.js";
|
|
18
20
|
//#region src/cli/rls/custom-role-rebuild.ts
|
|
19
21
|
const PREFIX = "PermDock CLI";
|
|
20
22
|
/** A column of the roles-table row `r`. */
|
|
@@ -24,7 +26,10 @@ function col(name) {
|
|
|
24
26
|
function schemaOf(table) {
|
|
25
27
|
return table.includes(".") ? beforeFirst(table, ".") : "public";
|
|
26
28
|
}
|
|
27
|
-
/**
|
|
29
|
+
/**
|
|
30
|
+
* The roles-table column a reference joins on, after checking it points at
|
|
31
|
+
* `roles`.
|
|
32
|
+
*/
|
|
28
33
|
function roleRef(role, table, roles, label) {
|
|
29
34
|
const pairs = Object.entries(role.on);
|
|
30
35
|
const [pair] = pairs;
|
|
@@ -104,9 +109,9 @@ function rebuildPlan(ctx, from, migrate) {
|
|
|
104
109
|
const iRef = i === void 0 || iTable === void 0 ? void 0 : roleRef(i.role, i.table, roles, "rls.customRoles.from.includes.role");
|
|
105
110
|
const included = i === void 0 || iTable === void 0 ? void 0 : sourceSql(i.include, iTable, "rls.customRoles.from.includes.include");
|
|
106
111
|
const refs = [`${col(pRef.id)} as permissions_ref`, ...iRef === void 0 ? [] : [`${col(iRef.id)} as includes_ref`]].join(", ");
|
|
107
|
-
const includeBlock = i === void 0 || iTable === void 0 || iRef === void 0 || included === void 0 ? " v_include := null;" : ` with raw as (
|
|
112
|
+
const includeBlock = (rows) => i === void 0 || iTable === void 0 || iRef === void 0 || included === void 0 || rows === void 0 ? " v_include := null;" : ` with raw as (
|
|
108
113
|
select ${included} as role
|
|
109
|
-
from ${
|
|
114
|
+
from ${rows}
|
|
110
115
|
where x.${quoteIdent(iRef.ref)} = v.includes_ref
|
|
111
116
|
),
|
|
112
117
|
judged as (
|
|
@@ -125,9 +130,9 @@ function rebuildPlan(ctx, from, migrate) {
|
|
|
125
130
|
into v_include, v_lost
|
|
126
131
|
from judged j;
|
|
127
132
|
v_dropped := v_dropped || coalesce(v_lost, '{}'::text[]);`;
|
|
128
|
-
const
|
|
133
|
+
const permissionsBlock = (rows) => ` with raw as (
|
|
129
134
|
select ${legacy} as legacy, ${effect} as effect, ${level} as level
|
|
130
|
-
from ${
|
|
135
|
+
from ${rows}
|
|
131
136
|
where x.${quoteIdent(pRef.ref)} = v.permissions_ref
|
|
132
137
|
),
|
|
133
138
|
mapped as (
|
|
@@ -147,8 +152,9 @@ function rebuildPlan(ctx, from, migrate) {
|
|
|
147
152
|
array_agg(v.role || ': ' || coalesce(j.legacy, 'null') || ', ' || j.dropped) filter (where j.dropped is not null)
|
|
148
153
|
into v_allow, v_deny, v_lost
|
|
149
154
|
from judged j;
|
|
150
|
-
v_dropped := v_dropped || coalesce(v_lost, '{}'::text[])
|
|
151
|
-
|
|
155
|
+
v_dropped := v_dropped || coalesce(v_lost, '{}'::text[]);`;
|
|
156
|
+
const legacyRows = iTable === void 0 ? void 0 : `${quoteTable(iTable)} x`;
|
|
157
|
+
const newRow = "(select new.*) x";
|
|
152
158
|
return {
|
|
153
159
|
rolesTable,
|
|
154
160
|
identity: `select ${tenant} as tenant_id, ${scope} as scope, ${scopeId} as scope_id, ${col(roles.key)}::text as role, ${refs}`,
|
|
@@ -156,7 +162,15 @@ ${includeBlock}`;
|
|
|
156
162
|
permsRef: pRef,
|
|
157
163
|
includesRef: iRef,
|
|
158
164
|
scopes,
|
|
159
|
-
collect
|
|
165
|
+
collect: `${permissionsBlock(`${quoteTable(pTable)} x`)}
|
|
166
|
+
${includeBlock(legacyRows)}`,
|
|
167
|
+
collectNew: {
|
|
168
|
+
permissions: `${permissionsBlock(newRow)}
|
|
169
|
+
v_include := null;`,
|
|
170
|
+
includes: ` v_allow := null;
|
|
171
|
+
v_deny := null;
|
|
172
|
+
${includeBlock(newRow)}`
|
|
173
|
+
},
|
|
160
174
|
replace,
|
|
161
175
|
perms,
|
|
162
176
|
includes,
|
|
@@ -164,7 +178,10 @@ ${includeBlock}`;
|
|
|
164
178
|
roles
|
|
165
179
|
};
|
|
166
180
|
}
|
|
167
|
-
/**
|
|
181
|
+
/**
|
|
182
|
+
* `v_dropped` grouped per legacy role (`role: a, b; other: c`), capped at 50
|
|
183
|
+
* entries.
|
|
184
|
+
*/
|
|
168
185
|
const DROPPED_LIST = `(select string_agg(g.role || ': ' || g.items, '; ' order by g.role)
|
|
169
186
|
from (
|
|
170
187
|
select split_part(l.d, ': ', 1) as role, string_agg(substr(l.d, strpos(l.d, ': ') + 2), ', ' order by l.d) as items
|
|
@@ -176,14 +193,20 @@ const DROPPED_LIST = `(select string_agg(g.role || ': ' || g.items, '; ' order b
|
|
|
176
193
|
/**
|
|
177
194
|
* `rls.customRoles.from.sync: 'trigger'`: after-row triggers on the legacy
|
|
178
195
|
* permissions table, and on the includes table when mapped, rebuild each
|
|
179
|
-
* affected role through `permdock_trusted_replace_custom_role_grants`, with
|
|
180
|
-
*
|
|
181
|
-
*
|
|
182
|
-
*
|
|
196
|
+
* affected role through `permdock_trusted_replace_custom_role_grants`, with the
|
|
197
|
+
* same reads the backfill uses. An entry outside the ceiling is dropped with a
|
|
198
|
+
* warning rather than aborting the legacy write, and a tenant role whose name a
|
|
199
|
+
* shared role holds is skipped with a warning (`name-taken`). Before-row
|
|
200
|
+
* triggers hold a signed-in caller at trigger depth 1 to the checks of
|
|
201
|
+
* `permdock_replace_custom_role_grants`: `permdock_custom_role_guard` on each
|
|
202
|
+
* role the row names, then `permdock_custom_role_beyond` on the entry it adds;
|
|
203
|
+
* a refusal aborts the write.
|
|
183
204
|
*/
|
|
184
205
|
function customRoleSyncSql(ctx, from, migrate) {
|
|
185
206
|
const plan = rebuildPlan(ctx, from, migrate);
|
|
186
207
|
const shared = qualified(ctx, CUSTOM_ROLES.shared);
|
|
208
|
+
const guard = qualified(ctx, CUSTOM_ROLES.guard);
|
|
209
|
+
const beyond = qualified(ctx, CUSTOM_ROLES.beyond);
|
|
187
210
|
const keepIncludes = plan.includesRef === void 0 ? `
|
|
188
211
|
v_include := array(select c.include_role from ${plan.includes} c where c.tenant_id is not distinct from v.tenant_id and c.scope = v.scope and c.scope_id is not distinct from v.scope_id and c.role = v.role);` : "";
|
|
189
212
|
const one = (name, table, ref) => {
|
|
@@ -238,13 +261,80 @@ create trigger ${quoteIdent(trigger)}
|
|
|
238
261
|
after insert or update or delete on ${target}
|
|
239
262
|
for each row execute function ${fn}();`;
|
|
240
263
|
};
|
|
241
|
-
const
|
|
242
|
-
|
|
264
|
+
const guardOne = (name, table, ref) => {
|
|
265
|
+
const fn = qualified(ctx, `${CUSTOM_ROLES.syncGuard}_${name}`);
|
|
266
|
+
const target = quoteTable(qualifySqlTable(table));
|
|
267
|
+
const trigger = `${CUSTOM_ROLES.syncGuard}_${name}`;
|
|
268
|
+
return `create or replace function ${fn}()
|
|
269
|
+
returns trigger
|
|
270
|
+
language plpgsql
|
|
271
|
+
volatile
|
|
272
|
+
security definer
|
|
273
|
+
set search_path = ''
|
|
274
|
+
as $$
|
|
275
|
+
declare
|
|
276
|
+
v record;
|
|
277
|
+
v_allow text[];
|
|
278
|
+
v_deny text[];
|
|
279
|
+
v_include text[];
|
|
280
|
+
v_lost text[];
|
|
281
|
+
v_dropped text[];
|
|
282
|
+
v_beyond text;
|
|
283
|
+
v_refs text[] := array[
|
|
284
|
+
case when tg_op <> 'INSERT' then old.${quoteIdent(ref.ref)}::text end,
|
|
285
|
+
case when tg_op <> 'DELETE' then new.${quoteIdent(ref.ref)}::text end
|
|
286
|
+
];
|
|
287
|
+
begin
|
|
288
|
+
if not (${signedIn(ctx)} and pg_trigger_depth() = 1) then
|
|
289
|
+
return coalesce(new, old);
|
|
290
|
+
end if;
|
|
291
|
+
for v in
|
|
292
|
+
${plan.identity}
|
|
293
|
+
from ${plan.rolesTable} r
|
|
294
|
+
where ${plan.eligible} and r.${quoteIdent(ref.id)}::text = any(v_refs)
|
|
295
|
+
loop
|
|
296
|
+
if v.role is null or not (v.scope = 'global' or v.scope = any(${plan.scopes})) then
|
|
297
|
+
continue;
|
|
298
|
+
end if;
|
|
299
|
+
if v.tenant_id is not null and ${shared}(v.scope, v.role) then
|
|
300
|
+
continue;
|
|
301
|
+
end if;
|
|
302
|
+
perform ${guard}(v.tenant_id, v.scope, v.scope_id, v.role);
|
|
303
|
+
if tg_op = 'DELETE' then
|
|
304
|
+
continue;
|
|
305
|
+
end if;
|
|
306
|
+
v_dropped := '{}'::text[];
|
|
307
|
+
${plan.collectNew[name]}
|
|
308
|
+
select string_agg(b, ', ' order by b) into v_beyond
|
|
309
|
+
from ${beyond}(v.tenant_id, v.scope, v.scope_id, v_allow, v_deny, v_include) b;
|
|
310
|
+
if v_beyond is not null then
|
|
311
|
+
${raiseSql(" ", "42501", `'permdock: ' || v.role || ' would allow ' || v_beyond || ', which the caller may not hand out'`, "not-assignable-by")}
|
|
312
|
+
end if;
|
|
313
|
+
end loop;
|
|
314
|
+
return coalesce(new, old);
|
|
315
|
+
end;
|
|
316
|
+
$$;
|
|
317
|
+
revoke execute on function ${fn}() from public, anon, authenticated;
|
|
318
|
+
drop trigger if exists ${quoteIdent(trigger)} on ${target};
|
|
319
|
+
create trigger ${quoteIdent(trigger)}
|
|
320
|
+
before insert or update or delete on ${target}
|
|
321
|
+
for each row execute function ${fn}();`;
|
|
322
|
+
};
|
|
323
|
+
const chunks = [
|
|
324
|
+
`-- rls.customRoles.from.sync: a write to the application's role tables rebuilds the role's PermDock grants`,
|
|
325
|
+
one("permissions", from.permissions.table, plan.permsRef),
|
|
326
|
+
`-- a signed-in caller writes only what the guarded replace would accept`,
|
|
327
|
+
guardOne("permissions", from.permissions.table, plan.permsRef)
|
|
328
|
+
];
|
|
329
|
+
if (from.includes !== void 0 && plan.includesRef !== void 0) chunks.push(one("includes", from.includes.table, plan.includesRef), guardOne("includes", from.includes.table, plan.includesRef));
|
|
243
330
|
return `${chunks.join("\n\n")}\n`;
|
|
244
331
|
}
|
|
245
332
|
//#endregion
|
|
246
333
|
//#region src/cli/rls/generate-context.ts
|
|
247
|
-
/**
|
|
334
|
+
/**
|
|
335
|
+
* The scopes an `rls.migrate` `role` helper names, so `rls generate` writes
|
|
336
|
+
* their role-filtered member helper.
|
|
337
|
+
*/
|
|
248
338
|
function roleMemberScopesOf(migrate) {
|
|
249
339
|
const scopes = [...new Set(Object.values(migrate?.helpers ?? {}).flatMap((helper) => helper.form === "role" ? [helper.scope] : []))].toSorted();
|
|
250
340
|
return scopes.length === 0 ? {} : { roleMemberScopes: scopes };
|
|
@@ -285,7 +375,10 @@ function skippedOwnershipTriggers(triggers, scopes) {
|
|
|
285
375
|
return name;
|
|
286
376
|
});
|
|
287
377
|
}
|
|
288
|
-
/**
|
|
378
|
+
/**
|
|
379
|
+
* The SQL context every emitter reads, from the flags, `rls` config and the
|
|
380
|
+
* policy.
|
|
381
|
+
*/
|
|
289
382
|
function buildContext(input, policy, options) {
|
|
290
383
|
const rls = input.config.rls;
|
|
291
384
|
const memberships = parseMembershipsFlag(input.memberships) ?? rls?.memberships;
|
|
@@ -342,8 +435,7 @@ function buildContext(input, policy, options) {
|
|
|
342
435
|
schema,
|
|
343
436
|
authorize,
|
|
344
437
|
roleClaim: rls?.roleClaim ?? "user_role",
|
|
345
|
-
tenantType: input.tenantType ?? rls?.
|
|
346
|
-
...rls?.teamType === void 0 ? {} : { teamType: rls.teamType },
|
|
438
|
+
tenantType: input.tenantType ?? firstScopeType(rls?.scopeTypes, scopes),
|
|
347
439
|
...rls?.scopeTypes === void 0 ? {} : { scopeTypes: rls.scopeTypes },
|
|
348
440
|
...memberships === void 0 ? {} : { memberships },
|
|
349
441
|
...sources === void 0 || sources.length === 0 ? {} : { sources },
|
|
@@ -388,8 +480,14 @@ function buildContext(input, policy, options) {
|
|
|
388
480
|
}
|
|
389
481
|
const [unsatisfied] = unsatisfiedKinds(ctx, policy);
|
|
390
482
|
if (unsatisfied !== void 0) return { refusal: `role ${unsatisfied.role} is for ${unsatisfied.for.join(", ")}, but its membership sources hold ${unsatisfied.sources.join(", ")}: no membership can hold it; set via on a source to one of those kinds` };
|
|
483
|
+
const names = resolveNames(policy, input.config, {
|
|
484
|
+
schema,
|
|
485
|
+
gucPrefix: ctx.gucPrefix,
|
|
486
|
+
tenantClaim: ctx.tenantClaim
|
|
487
|
+
});
|
|
391
488
|
return {
|
|
392
489
|
ctx,
|
|
490
|
+
names,
|
|
393
491
|
graph,
|
|
394
492
|
ownership,
|
|
395
493
|
schema,
|
|
@@ -413,21 +511,30 @@ function generateOptions(input) {
|
|
|
413
511
|
revokeColumns
|
|
414
512
|
};
|
|
415
513
|
}
|
|
416
|
-
/**
|
|
514
|
+
/**
|
|
515
|
+
* Whether `--split` names `part`, which then leaves the helpers or the
|
|
516
|
+
* warnings.
|
|
517
|
+
*/
|
|
417
518
|
function splitsPart(raw, part) {
|
|
418
519
|
const split = parseSplit(raw);
|
|
419
520
|
return typeof split !== "string" && split?.includes(part) === true;
|
|
420
521
|
}
|
|
421
522
|
//#endregion
|
|
422
523
|
//#region src/cli/rls/rows.ts
|
|
423
|
-
/**
|
|
524
|
+
/**
|
|
525
|
+
* `permitted_<resource>_rows(p_permission)`: the resource's row ids the subject
|
|
526
|
+
* may act on with one permission.
|
|
527
|
+
*/
|
|
424
528
|
function rowsHelper(resource) {
|
|
425
529
|
const name = graphSqlName(resource);
|
|
426
530
|
const helper = `permitted_${name ?? resource}_rows`;
|
|
427
531
|
if (name === void 0 || new TextEncoder().encode(`${helper}_for`).length > 63) throw configError(`PermDock CLI: rls.rowHelpers cannot name a helper for resource '${resource}'; use a SQL name of at most 45 bytes`);
|
|
428
532
|
return helper;
|
|
429
533
|
}
|
|
430
|
-
/**
|
|
534
|
+
/**
|
|
535
|
+
* Every declared `<permission>@<level>` of an instance permission on a resource
|
|
536
|
+
* with levels.
|
|
537
|
+
*/
|
|
431
538
|
function levelKeys(policy) {
|
|
432
539
|
const out = [];
|
|
433
540
|
for (const leaf of listPermissions(policy.vocabulary.permissions)) {
|
|
@@ -441,7 +548,10 @@ function levelKeys(policy) {
|
|
|
441
548
|
}
|
|
442
549
|
return out;
|
|
443
550
|
}
|
|
444
|
-
/**
|
|
551
|
+
/**
|
|
552
|
+
* The branches a row check of a permission reads: its allows and denies,
|
|
553
|
+
* inserts included, for signed-in callers.
|
|
554
|
+
*/
|
|
445
555
|
function rowBranchesOf(branches, resource) {
|
|
446
556
|
const out = /* @__PURE__ */ new Map();
|
|
447
557
|
for (const branch of branches) {
|
|
@@ -450,7 +560,10 @@ function rowBranchesOf(branches, resource) {
|
|
|
450
560
|
}
|
|
451
561
|
return out;
|
|
452
562
|
}
|
|
453
|
-
/**
|
|
563
|
+
/**
|
|
564
|
+
* What a branch asks of a row: the `with check` of an insert, which sees the
|
|
565
|
+
* new row, the `using` of every other command.
|
|
566
|
+
*/
|
|
454
567
|
function clauseOf(branch) {
|
|
455
568
|
const clauses = branchClauses(branch);
|
|
456
569
|
return (branch.command === "insert" ? clauses.check : clauses.using) ?? "true";
|
|
@@ -573,9 +686,9 @@ ${rowSql(ctx, name, table, where)}`;
|
|
|
573
686
|
${forUserSql(ctx, qualified(ctx, `${name}_for`), fn)}`;
|
|
574
687
|
}
|
|
575
688
|
/**
|
|
576
|
-
* `permitted_<resource>_rows(p_permission)` for each resource `select`
|
|
577
|
-
*
|
|
578
|
-
*
|
|
689
|
+
* `permitted_<resource>_rows(p_permission)` for each resource `select` names
|
|
690
|
+
* (or every resource a grant reaches with `true`): the ids of its rows the
|
|
691
|
+
* caller may read, update or delete with that permission, from the same
|
|
579
692
|
* compiled allows and denies the table policies use, so closure walks, link
|
|
580
693
|
* hops, the restricted stop, `includes`, groups and `requires` all apply. A
|
|
581
694
|
* `security definer` helper, so hand-written policies and functions call it
|
|
@@ -598,7 +711,10 @@ function rowHelpersSql(ctx, policy, branches, select, tables, warnings) {
|
|
|
598
711
|
}
|
|
599
712
|
//#endregion
|
|
600
713
|
//#region src/cli/sql/supautils.ts
|
|
601
|
-
/**
|
|
714
|
+
/**
|
|
715
|
+
* `supautils.reserved_roles` of supabase/postgres 17.11.0.002 (supautils
|
|
716
|
+
* 3.4.4).
|
|
717
|
+
*/
|
|
602
718
|
const RESERVED_ROLES = /* @__PURE__ */ new Set([
|
|
603
719
|
"supabase_admin",
|
|
604
720
|
"supabase_auth_admin",
|
|
@@ -615,7 +731,10 @@ const RESERVED_ROLES = /* @__PURE__ */ new Set([
|
|
|
615
731
|
"authenticated",
|
|
616
732
|
"anon"
|
|
617
733
|
]);
|
|
618
|
-
/**
|
|
734
|
+
/**
|
|
735
|
+
* The `*` entries of `reserved_roles`: `postgres` may still `set` or `reset`
|
|
736
|
+
* their settings.
|
|
737
|
+
*/
|
|
619
738
|
const CONFIGURABLE_ROLES = /* @__PURE__ */ new Set([
|
|
620
739
|
"service_role",
|
|
621
740
|
"authenticator",
|
|
@@ -672,9 +791,9 @@ function rejection(text) {
|
|
|
672
791
|
return role === void 0 ? void 0 : `grants membership in the reserved role ${role}`;
|
|
673
792
|
}
|
|
674
793
|
/**
|
|
675
|
-
* The statements of `sql` that supautils rejects for a non-superuser:
|
|
676
|
-
*
|
|
677
|
-
*
|
|
794
|
+
* The statements of `sql` that supautils rejects for a non-superuser: changing
|
|
795
|
+
* or dropping a reserved role, other than `set` or `reset` on the four API
|
|
796
|
+
* roles, and granting a reserved membership.
|
|
678
797
|
*/
|
|
679
798
|
function supautilsRejections(sql) {
|
|
680
799
|
return sqlStatements(sql).flatMap(({ line, text }) => {
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { t as compact } from "./compact-CAf557ZB.js";
|
|
2
|
-
import { n as freezeDeep } from "./freeze-
|
|
3
|
-
import { a as ownRecord } from "./paths-
|
|
4
|
-
import { a as isId, r as idList } from "./expiry-
|
|
5
|
-
import { n as internalsOf } from "./internals-
|
|
6
|
-
import { c as listPermissions, m as annotationsFor, n as findPermission } from "./permission-registry-
|
|
7
|
-
import { g as secondsOf, l as isRfc3339, m as rfc3339, p as nowSeconds } from "./time-
|
|
2
|
+
import { n as freezeDeep } from "./freeze-jjan0lCv.js";
|
|
3
|
+
import { a as ownRecord } from "./paths-CUvURzHp.js";
|
|
4
|
+
import { a as isId, r as idList } from "./expiry-6XByK0dm.js";
|
|
5
|
+
import { n as internalsOf } from "./internals-B3IgHrvo.js";
|
|
6
|
+
import { c as listPermissions, m as annotationsFor, n as findPermission } from "./permission-registry-B8tYxPIt.js";
|
|
7
|
+
import { g as secondsOf, l as isRfc3339, m as rfc3339, p as nowSeconds } from "./time-nR1JesoH.js";
|
|
8
8
|
import { t as canonicalJson } from "./canonical-json-DwilZ1iB.js";
|
|
9
|
-
import { r as sha256Digest } from "./sha256-
|
|
9
|
+
import { r as sha256Digest } from "./sha256-C-4WXKIu.js";
|
|
10
10
|
//#region src/core/support-session.ts
|
|
11
11
|
const DEFAULT_TTL = 3600;
|
|
12
12
|
const MAX_TTL = 86400;
|
|
@@ -15,8 +15,8 @@ function isReason(value) {
|
|
|
15
15
|
return typeof value === "string" && value.trim().length > 0 && value.length <= MAX_REASON;
|
|
16
16
|
}
|
|
17
17
|
/**
|
|
18
|
-
* Validates an untrusted support-session record and returns a frozen copy
|
|
19
|
-
*
|
|
18
|
+
* Validates an untrusted support-session record and returns a frozen copy with
|
|
19
|
+
* only the v1 fields, or `undefined`.
|
|
20
20
|
*/
|
|
21
21
|
function parseSupportSession(input) {
|
|
22
22
|
const value = ownRecord(input);
|
|
@@ -62,21 +62,21 @@ function sessionToken(request, actor, tenant, permissions, ttl) {
|
|
|
62
62
|
}));
|
|
63
63
|
}
|
|
64
64
|
/**
|
|
65
|
-
* Decides whether the subject of `permdock` may start the support session
|
|
66
|
-
*
|
|
65
|
+
* Decides whether the subject of `permdock` may start the support session in
|
|
66
|
+
* `request`. The actor must be a signed-in person acting for themselves
|
|
67
67
|
* (`exceeds-creator` otherwise), give a `reason` (`reason-required`), be a
|
|
68
|
-
* member of the tenant (`tenant-mismatch`) and be able to use every
|
|
69
|
-
*
|
|
70
|
-
*
|
|
71
|
-
*
|
|
72
|
-
*
|
|
68
|
+
* member of the tenant (`tenant-mismatch`) and be able to use every permission
|
|
69
|
+
* (`exceeds-creator`). Without `permissions` the session gets the actor's
|
|
70
|
+
* read-only permissions. The tenant's `supportSessions` policy then applies,
|
|
71
|
+
* and the result is `approval-required` until `approved` carries its token and
|
|
72
|
+
* `approvedBy` names someone other than the actor.
|
|
73
73
|
*/
|
|
74
74
|
/**
|
|
75
|
-
* Decides whether the subject of `permdock` may start the support session
|
|
76
|
-
*
|
|
77
|
-
*
|
|
78
|
-
*
|
|
79
|
-
*
|
|
75
|
+
* Decides whether the subject of `permdock` may start the support session in
|
|
76
|
+
* `request` and returns the record to sign: a stated reason, membership of the
|
|
77
|
+
* tenant, the actor's own reach, the tenant's `supportSessions` policy and
|
|
78
|
+
* approval by someone else. An instance built from a snapshot denies with
|
|
79
|
+
* `unsupported`.
|
|
80
80
|
*/
|
|
81
81
|
function decideSupportSession(permdock, request, options = {}) {
|
|
82
82
|
const internals = internalsOf(permdock);
|
|
@@ -1,10 +1,6 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
boundaryFallback,
|
|
5
|
-
type PermissionBoundaryProps,
|
|
6
|
-
type PermissionBoundaryState,
|
|
7
|
-
} from './runtime.js';
|
|
2
|
+
import { boundaryDigest, boundaryFallback } from './runtime.js';
|
|
3
|
+
import type { PermissionBoundaryProps, PermissionBoundaryState } from './runtime.ts';
|
|
8
4
|
|
|
9
5
|
let { children, denied, approval }: PermissionBoundaryProps = $props();
|
|
10
6
|
|
|
@@ -1,14 +1,8 @@
|
|
|
1
1
|
<script lang="ts">
|
|
2
2
|
import { onDestroy } from 'svelte';
|
|
3
3
|
|
|
4
|
-
import {
|
|
5
|
-
|
|
6
|
-
getUi,
|
|
7
|
-
scopedFor,
|
|
8
|
-
slotContent,
|
|
9
|
-
viewFor,
|
|
10
|
-
type ProtectedProps,
|
|
11
|
-
} from './runtime.js';
|
|
4
|
+
import { getStore, getUi, scopedFor, slotContent, viewFor } from './runtime.js';
|
|
5
|
+
import type { ProtectedProps } from './runtime.ts';
|
|
12
6
|
|
|
13
7
|
let {
|
|
14
8
|
permission,
|
package/dist/svelte/index.d.ts
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { i as describe } from "../describe-
|
|
3
|
-
import { t as PermissionBoundaryState } from "../boundary-
|
|
4
|
-
import { t as
|
|
5
|
-
import {
|
|
6
|
-
import { n as
|
|
7
|
-
import {
|
|
1
|
+
import { c as requiredPlans } from "../errors-zi_4T-rx.js";
|
|
2
|
+
import { i as describe } from "../describe-ByS9LgHK.js";
|
|
3
|
+
import { t as PermissionBoundaryState } from "../boundary-C9ck-3uK.js";
|
|
4
|
+
import { n as ProtectedAction, t as ActionResult } from "../action-result-CL-QCITA.js";
|
|
5
|
+
import { t as approvalHeaders } from "../headers-B9jQxjtW.js";
|
|
6
|
+
import { a as FilterResult, b as eventSourceRefresh, c as PermissionSet, d as ProtectedActionView, h as TenantView, i as ClientStatus, l as PermissionState, m as SubjectView, n as ApprovalState, o as GateMode, p as RolesOptions, r as ClientPermDock, s as GateView, t as ApprovalHandle, v as EventSourceRefreshOptions, y as RefreshTrigger } from "../types-B_d_g7T3.js";
|
|
7
|
+
import { i as ProtectedProps, n as ProtectedActionReadable, r as SveltePermDockOptions, s as PermissionBoundaryProps, t as PermDockDefaults } from "../types-djVzLlIV.js";
|
|
8
|
+
import { a as gate, c as memberships, d as protectedAction, f as roles, h as tenant, i as filtered, l as permission, m as subject, n as assignable, o as getDescribe, p as setPermDock, r as assignablePermissions, s as getPermDock, t as approval, u as permissions } from "../stores-C0Kta5Ft.js";
|
|
8
9
|
import { Component } from "svelte";
|
|
9
10
|
//#region src/svelte/index.d.ts
|
|
10
11
|
export declare const Protected: Component<ProtectedProps>;
|
|
11
12
|
export declare const PermissionBoundary: Component<PermissionBoundaryProps>;
|
|
12
13
|
//#endregion
|
|
13
|
-
export { type ApprovalHandle, type ApprovalState, type ClientPermDock, type ClientStatus, type FilterResult, type PermDockDefaults, type PermissionBoundaryProps, type PermissionBoundaryState, type PermissionSet, type PermissionState, type ProtectedProps, type RolesOptions, type SubjectView, type SveltePermDockOptions, type TenantView, approval, approvalHeaders, assignable, assignablePermissions, describe, filtered, getDescribe, getPermDock, memberships, permission, permissions, requiredPlans, roles, setPermDock, subject, tenant };
|
|
14
|
+
export { type ActionResult, type ApprovalHandle, type ApprovalState, type ClientPermDock, type ClientStatus, type EventSourceRefreshOptions, type FilterResult, type GateMode, type GateView, type PermDockDefaults, type PermissionBoundaryProps, type PermissionBoundaryState, type PermissionSet, type PermissionState, type ProtectedAction, type ProtectedActionReadable, type ProtectedActionView, type ProtectedProps, type RefreshTrigger, type RolesOptions, type SubjectView, type SveltePermDockOptions, type TenantView, approval, approvalHeaders, assignable, assignablePermissions, describe, eventSourceRefresh, filtered, gate, getDescribe, getPermDock, memberships, permission, permissions, protectedAction, requiredPlans, roles, setPermDock, subject, tenant };
|
package/dist/svelte/index.js
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import { r as requiredPlans } from "../problem-details-
|
|
2
|
-
import {
|
|
3
|
-
import { n as boundaryFallback, t as boundaryDigest } from "../boundary-
|
|
4
|
-
import {
|
|
5
|
-
import { u as slotContent } from "../views-
|
|
6
|
-
import {
|
|
7
|
-
import { n as
|
|
8
|
-
import {
|
|
1
|
+
import { r as requiredPlans } from "../problem-details-CLDgX1KV.js";
|
|
2
|
+
import { n as describe } from "../describe-Bb4hGK5d.js";
|
|
3
|
+
import { n as boundaryFallback, t as boundaryDigest } from "../boundary-BV3O1eud.js";
|
|
4
|
+
import { r as approvalHeaders } from "../protected-action-DUYqb-Ma.js";
|
|
5
|
+
import { u as slotContent } from "../views-CD8wuL4Z.js";
|
|
6
|
+
import { r as eventSourceRefresh } from "../store-options-Dil3lraY.js";
|
|
7
|
+
import { n as getUi, t as getStore } from "../context-BnIzxTNE.js";
|
|
8
|
+
import { n as viewFor, t as scopedFor } from "../runtime-BGnrOkVH.js";
|
|
9
|
+
import { a as gate, c as memberships, d as protectedAction, f as roles, h as tenant, i as filtered, l as permission, m as subject, n as assignable, o as getDescribe, p as setPermDock, r as assignablePermissions, s as getPermDock, t as approval, u as permissions } from "../stores-DxZWDXCs.js";
|
|
9
10
|
import "svelte/internal/disclose-version";
|
|
10
11
|
import * as $ from "svelte/internal/client";
|
|
11
12
|
import { onDestroy } from "svelte";
|
|
@@ -118,4 +119,4 @@ function Protected$1($$anchor, $$props) {
|
|
|
118
119
|
const Protected = Protected$1;
|
|
119
120
|
const PermissionBoundary = PermissionBoundary$1;
|
|
120
121
|
//#endregion
|
|
121
|
-
export { PermissionBoundary, Protected, approval, approvalHeaders, assignable, assignablePermissions, describe, filtered, getDescribe, getPermDock, memberships, permission, permissions, requiredPlans, roles, setPermDock, subject, tenant };
|
|
122
|
+
export { PermissionBoundary, Protected, approval, approvalHeaders, assignable, assignablePermissions, describe, eventSourceRefresh, filtered, gate, getDescribe, getPermDock, memberships, permission, permissions, protectedAction, requiredPlans, roles, setPermDock, subject, tenant };
|
package/dist/svelte/runtime.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { n as DescribeMessages } from "../describe-
|
|
2
|
-
import { n as boundaryDigest, r as boundaryFallback, t as PermissionBoundaryState } from "../boundary-
|
|
3
|
-
import {
|
|
4
|
-
import { a as
|
|
1
|
+
import { n as DescribeMessages } from "../describe-ByS9LgHK.js";
|
|
2
|
+
import { n as boundaryDigest, r as boundaryFallback, t as PermissionBoundaryState } from "../boundary-C9ck-3uK.js";
|
|
3
|
+
import { g as ClientStore } from "../types-B_d_g7T3.js";
|
|
4
|
+
import { a as scopedFor, c as slotContent, i as ProtectedProps, o as viewFor, s as PermissionBoundaryProps, t as PermDockDefaults } from "../types-djVzLlIV.js";
|
|
5
5
|
//#region src/svelte/context.d.ts
|
|
6
6
|
/** The provider's `defaults` and `messages`. */
|
|
7
7
|
type PermDockUi = {
|
package/dist/svelte/runtime.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { n as boundaryFallback, t as boundaryDigest } from "../boundary-
|
|
2
|
-
import { u as slotContent } from "../views-
|
|
3
|
-
import { n as getUi, t as getStore } from "../context
|
|
4
|
-
import { n as viewFor, t as scopedFor } from "../runtime-
|
|
1
|
+
import { n as boundaryFallback, t as boundaryDigest } from "../boundary-BV3O1eud.js";
|
|
2
|
+
import { u as slotContent } from "../views-CD8wuL4Z.js";
|
|
3
|
+
import { n as getUi, t as getStore } from "../context-BnIzxTNE.js";
|
|
4
|
+
import { n as viewFor, t as scopedFor } from "../runtime-BGnrOkVH.js";
|
|
5
5
|
export { boundaryDigest, boundaryFallback, getStore, getUi, scopedFor, slotContent, viewFor };
|
package/dist/svelte/source.d.ts
CHANGED
|
@@ -1,13 +1,14 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { i as describe } from "../describe-
|
|
3
|
-
import { t as PermissionBoundaryState } from "../boundary-
|
|
4
|
-
import { t as
|
|
5
|
-
import {
|
|
6
|
-
import { n as
|
|
7
|
-
import {
|
|
1
|
+
import { c as requiredPlans } from "../errors-zi_4T-rx.js";
|
|
2
|
+
import { i as describe } from "../describe-ByS9LgHK.js";
|
|
3
|
+
import { t as PermissionBoundaryState } from "../boundary-C9ck-3uK.js";
|
|
4
|
+
import { n as ProtectedAction, t as ActionResult } from "../action-result-CL-QCITA.js";
|
|
5
|
+
import { t as approvalHeaders } from "../headers-B9jQxjtW.js";
|
|
6
|
+
import { a as FilterResult, b as eventSourceRefresh, c as PermissionSet, d as ProtectedActionView, h as TenantView, i as ClientStatus, l as PermissionState, m as SubjectView, n as ApprovalState, o as GateMode, p as RolesOptions, r as ClientPermDock, s as GateView, t as ApprovalHandle, v as EventSourceRefreshOptions, y as RefreshTrigger } from "../types-B_d_g7T3.js";
|
|
7
|
+
import { i as ProtectedProps, n as ProtectedActionReadable, r as SveltePermDockOptions, s as PermissionBoundaryProps, t as PermDockDefaults } from "../types-djVzLlIV.js";
|
|
8
|
+
import { a as gate, c as memberships, d as protectedAction, f as roles, h as tenant, i as filtered, l as permission, m as subject, n as assignable, o as getDescribe, p as setPermDock, r as assignablePermissions, s as getPermDock, t as approval, u as permissions } from "../stores-C0Kta5Ft.js";
|
|
8
9
|
import { Component } from "svelte";
|
|
9
10
|
//#region src/svelte/source.d.ts
|
|
10
11
|
export declare const Protected: Component<ProtectedProps>;
|
|
11
12
|
export declare const PermissionBoundary: Component<PermissionBoundaryProps>;
|
|
12
13
|
//#endregion
|
|
13
|
-
export { type ApprovalHandle, type ApprovalState, type ClientPermDock, type ClientStatus, type FilterResult, type PermDockDefaults, type PermissionBoundaryProps, type PermissionBoundaryState, type PermissionSet, type PermissionState, type ProtectedProps, type RolesOptions, type SubjectView, type SveltePermDockOptions, type TenantView, approval, approvalHeaders, assignable, assignablePermissions, describe, filtered, getDescribe, getPermDock, memberships, permission, permissions, requiredPlans, roles, setPermDock, subject, tenant };
|
|
14
|
+
export { type ActionResult, type ApprovalHandle, type ApprovalState, type ClientPermDock, type ClientStatus, type EventSourceRefreshOptions, type FilterResult, type GateMode, type GateView, type PermDockDefaults, type PermissionBoundaryProps, type PermissionBoundaryState, type PermissionSet, type PermissionState, type ProtectedAction, type ProtectedActionReadable, type ProtectedActionView, type ProtectedProps, type RefreshTrigger, type RolesOptions, type SubjectView, type SveltePermDockOptions, type TenantView, approval, approvalHeaders, assignable, assignablePermissions, describe, eventSourceRefresh, filtered, gate, getDescribe, getPermDock, memberships, permission, permissions, protectedAction, requiredPlans, roles, setPermDock, subject, tenant };
|
package/dist/svelte/source.js
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
|
-
import { r as requiredPlans } from "../problem-details-
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
1
|
+
import { r as requiredPlans } from "../problem-details-CLDgX1KV.js";
|
|
2
|
+
import { n as describe } from "../describe-Bb4hGK5d.js";
|
|
3
|
+
import { r as approvalHeaders } from "../protected-action-DUYqb-Ma.js";
|
|
4
|
+
import { r as eventSourceRefresh } from "../store-options-Dil3lraY.js";
|
|
5
|
+
import { a as gate, c as memberships, d as protectedAction, f as roles, h as tenant, i as filtered, l as permission, m as subject, n as assignable, o as getDescribe, p as setPermDock, r as assignablePermissions, s as getPermDock, t as approval, u as permissions } from "../stores-DxZWDXCs.js";
|
|
5
6
|
import PermissionBoundaryComponent from "./PermissionBoundary.svelte";
|
|
6
7
|
import ProtectedComponent from "./Protected.svelte";
|
|
7
8
|
//#region src/svelte/source.ts
|
|
8
9
|
const Protected = ProtectedComponent;
|
|
9
10
|
const PermissionBoundary = PermissionBoundaryComponent;
|
|
10
11
|
//#endregion
|
|
11
|
-
export { PermissionBoundary, Protected, approval, approvalHeaders, assignable, assignablePermissions, describe, filtered, getDescribe, getPermDock, memberships, permission, permissions, requiredPlans, roles, setPermDock, subject, tenant };
|
|
12
|
+
export { PermissionBoundary, Protected, approval, approvalHeaders, assignable, assignablePermissions, describe, eventSourceRefresh, filtered, gate, getDescribe, getPermDock, memberships, permission, permissions, protectedAction, requiredPlans, roles, setPermDock, subject, tenant };
|