permdock 0.3.1 → 0.5.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 +37 -35
- package/dist/{openapi-schema--ARjyfQr.js → 2020-C9VN-x8c.js} +5 -132
- package/dist/a2a/index.d.ts +8 -6
- package/dist/a2a/index.js +21 -31
- package/dist/{adapter-context-mlWsVGGg.js → adapter-context-CRhqyzCk.js} +1 -1
- package/dist/adoption-scan-B4R5fnMU.js +107 -0
- package/dist/agent/index.d.ts +3 -0
- package/dist/agent/index.js +1 -0
- package/dist/ai-sdk/index.d.ts +18 -23
- package/dist/ai-sdk/index.js +38 -21
- package/dist/app-data-MuyzVqX8.js +60 -0
- package/dist/approval-header-CJACtHkv.js +23 -0
- package/dist/approval-prompt-Dg5LeAcT.js +62 -0
- package/dist/approval-prompt-Djo_PyZc.d.ts +57 -0
- package/dist/approvals/index.d.ts +5 -3
- package/dist/approvals/index.js +8 -5
- package/dist/approvals-DJ6Yd5z1.js +995 -0
- package/dist/{approvers-DT4AVyIg.js → approvers-CqPOLD-o.js} +1 -1
- package/dist/arazzo-B6lebmiQ.js +36 -0
- package/dist/{arazzo-BAgw9ap6.js → arazzo-BWhNF-k0.js} +24 -17
- package/dist/args-IIolxxKA.js +197 -0
- package/dist/astro/index.d.ts +43 -0
- package/dist/astro/index.js +27 -0
- package/dist/audience-Dg8XsRaO.js +55 -0
- package/dist/auth-DRLEizbL.js +178 -0
- package/dist/authzen/index.d.ts +26 -6
- package/dist/authzen/index.js +228 -75
- package/dist/automation-BMZPIVUM.d.ts +114 -0
- package/dist/automation-DVjOckjV.js +157 -0
- package/dist/better-auth/index.d.ts +8 -6
- package/dist/better-auth/index.js +11 -23
- package/dist/better-supabase/index.d.ts +438 -86
- package/dist/better-supabase/index.js +1027 -184
- package/dist/bind--9EFVYWF.d.ts +38 -0
- package/dist/{bind-CuzGytRf.js → bind-CZzhx-Vj.js} +22 -10
- package/dist/body-CH5of8Ne.js +10 -0
- package/dist/body-text-QcXok_SI.js +52 -0
- package/dist/build-instance-BMnAudHn.js +52 -0
- package/dist/{canonical-json-DemiK4Vp.js → canonical-json-BC8_nMTw.js} +6 -6
- package/dist/{capability-2kYTMWDv.d.ts → capability-BSslw1QV.d.ts} +44 -25
- package/dist/{capability-4qPdO9gk.js → capability-N1K9IpqS.js} +69 -42
- package/dist/casbin-Cr7RLtA3.js +30 -0
- package/dist/casbin-Dyu2gnUD.js +234 -0
- package/dist/casl-64gpT-8x.js +24 -0
- package/dist/casl-DjEDhTCP.js +299 -0
- package/dist/catalog/index.d.ts +74 -2
- package/dist/catalog/index.js +51 -2
- package/dist/catalog-BECMPrwc.js +100 -0
- package/dist/catalog-DjhMYYCq.js +1 -0
- package/dist/catalog-R_A__RsH.js +52 -0
- package/dist/{catalog-doc-DdGm82XT.js → catalog-doc-C9wjsfNY.js} +54 -25
- package/dist/catalog-fingerprint-CCP0-yQS.js +153 -0
- package/dist/chat/index.d.ts +2 -0
- package/dist/chat/index.js +224 -0
- package/dist/chat-sdk/index.d.ts +87 -0
- package/dist/chat-sdk/index.js +197 -0
- package/dist/claims-map-7oQ3ue4X.js +13 -0
- package/dist/claims-map-Ca-QX8C6.d.ts +32 -0
- package/dist/claude-agent/index.d.ts +7 -14
- package/dist/claude-agent/index.js +26 -30
- package/dist/clerk/index.d.ts +9 -8
- package/dist/clerk/index.js +15 -45
- package/dist/cli/bin.js +36 -17
- package/dist/cli/index.d.ts +20 -6
- package/dist/cli/index.js +164 -4
- package/dist/cloud/index.d.ts +102 -63
- package/dist/cloud/index.js +240 -347
- package/dist/cloud-CIoHNevm.js +87 -0
- package/dist/codemod-Bmj9dWMH.js +37 -0
- package/dist/codemod-Cxvvc70T.js +2084 -0
- package/dist/{collect-DSTE3ml9.js → collect-CrZJJnEF.js} +79 -17
- package/dist/collect-DloHbDVa.js +55 -0
- package/dist/collect-FlXJlhus.js +1 -0
- package/dist/command-L8EstFNm.js +6 -0
- package/dist/{compact-y6vfu2_f.js → compact-CAf557ZB.js} +11 -1
- package/dist/compile/index.d.ts +1 -1
- package/dist/compile/index.js +1 -2
- package/dist/{compile-Ba4blROR.js → compile-CMqMx_IN.js} +13 -9
- package/dist/{compile-BkRyBDBw.d.ts → compile-Ckm2HqBZ.d.ts} +5 -3
- package/dist/completion-BqhRBJD8.js +143 -0
- package/dist/config-B46rm9sc.js +26 -0
- package/dist/{config-BJiM-xAm.js → config-bs_kZeYq.js} +15 -10
- package/dist/{config-report-CdCgbRnV.js → config-report-DUgj62Ai.js} +17 -8
- package/dist/{connection-CU8MQxRi.js → connection-DjhIJSs2.js} +8 -6
- package/dist/constants-DcJABbLW.js +20 -0
- package/dist/{context-Bcy85rGi.js → context-bbFHR-0D.js} +16 -5
- package/dist/convex/index.d.ts +11 -10
- package/dist/convex/index.js +18 -18
- package/dist/create-0VZ7Pdiu.d.ts +107 -0
- package/dist/create-BDS7wc3y.d.ts +138 -0
- package/dist/create-BFfm17UA.d.ts +110 -0
- package/dist/create-BWRSXgOF.js +403 -0
- package/dist/create-C3b4B5eF.js +130 -0
- package/dist/create-DnrmLnLW.js +323 -0
- package/dist/{credential-8P81ff4u.js → credential-DM2um3ha.js} +153 -32
- package/dist/credentials-DPyHmYz5.js +74 -0
- package/dist/deciding-columns-Sq12mEA6.js +123 -0
- package/dist/delegation-DaXVdDhM.js +286 -0
- package/dist/delegation-input-FTxMK3ji.js +19 -0
- package/dist/delivery/index.d.ts +5 -0
- package/dist/delivery/index.js +5 -0
- package/dist/delivery-DCAgNyCn.js +499 -0
- package/dist/delivery-event-xX4obB8F.js +40 -0
- package/dist/denied-text-D8jDHgsl.d.ts +19 -0
- package/dist/{describe-DMYiCjJV.d.ts → describe-BZUsixiL.d.ts} +11 -2
- package/dist/{describe-B_gVZEVi.js → describe-BybMRY7A.js} +10 -5
- package/dist/device-BARQ8eYG.js +193 -0
- package/dist/diff-CxZo9pTq.js +37 -0
- package/dist/{diff-2VaeChzX.js → diff-DCePiN6M.js} +61 -55
- package/dist/doctor-CxiwSfqH.js +44 -0
- package/dist/doctor-DFjUxf2f.js +2361 -0
- package/dist/drizzle/index.d.ts +5 -3
- package/dist/drizzle/index.js +6 -14
- package/dist/elysia/index.d.ts +16 -13
- package/dist/elysia/index.js +14 -13
- package/dist/env-DJZrPjRi.js +8 -0
- package/dist/errors-BDUwg2qC.js +27 -0
- package/dist/{errors-Cz5zn0mW.js → errors-BKy0EfhN.js} +6 -10
- package/dist/errors-BWXBMaKK.d.ts +11 -0
- package/dist/{errors-DPdqI50v.d.ts → errors-C2PXIv4c.d.ts} +2 -2
- package/dist/errors-CWTY6uih.js +143 -0
- package/dist/evaluate-_R8QkWaf.js +1732 -0
- package/dist/evaluations-16UqqQ6W.d.ts +32 -0
- package/dist/{evaluations-tz6D9A2G.js → evaluations-DZ2CbV5k.js} +181 -32
- package/dist/eve/index.d.ts +12 -16
- package/dist/eve/index.js +23 -29
- package/dist/event-time-CsegxXxB.js +23 -0
- package/dist/expiry-D4_YKRKD.js +52 -0
- package/dist/express/index.d.ts +13 -10
- package/dist/express/index.js +14 -12
- package/dist/fastify/index.d.ts +26 -13
- package/dist/fastify/index.js +17 -36
- package/dist/fetch-adapter-g0ypLkID.js +120 -0
- package/dist/fetch-adapter-qKJBuRqy.d.ts +31 -0
- package/dist/fields-D9tPVUUS.js +203 -0
- package/dist/files-C5ZI27eV.js +124 -0
- package/dist/{files-DWUN9PzI.js → files-D_JIzUrP.js} +12 -3
- package/dist/{fixtures-ht28Cplr.js → fixtures-B7XrLeY7.js} +12 -12
- package/dist/flags-C3DktBDY.js +86 -0
- package/dist/{from-snapshot-CTLijvdm.js → from-snapshot-D2lZt4Dd.js} +78 -65
- package/dist/{generate-CH7ThJ14.js → generate-CNU1pIOo.js} +1 -3
- package/dist/grantee-Cn1HyUsI.js +254 -0
- package/dist/grantee-conditions-CcXf8hMM.js +271 -0
- package/dist/grantee-match-DHArqY82.js +142 -0
- package/dist/h3/index.d.ts +37 -0
- package/dist/h3/index.js +35 -0
- package/dist/headers-BIjfMaoC.js +8 -0
- package/dist/headers-CIbDTUTK.d.ts +7 -0
- package/dist/{helpers-H_KARDVC.js → helpers-DTcZOzhF.js} +47 -39
- package/dist/hono/index.d.ts +12 -9
- package/dist/hono/index.js +14 -13
- package/dist/{hosted-DJQw46hn.js → hosted-BZIAYvon.js} +64 -15
- package/dist/hosted-DBDX0M-P.d.ts +78 -0
- package/dist/{http-SO7qGttf.js → http-BBoKefeS.js} +35 -2
- package/dist/{http-DPuDaChb.d.ts → http-B_LphE5Y.d.ts} +1 -2
- package/dist/http-DXJ37RDA.js +46 -0
- package/dist/{http-BIhmLfCc.js → http-ujKm0JXE.js} +3 -26
- package/dist/{openapi-import-cmwetbzw.js → import-CNV7I2Dw.js} +30 -26
- package/dist/{rls-import-4lLW_pbb.js → import-DMmOG27O.js} +271 -128
- package/dist/index-BcHcPyIo.d.ts +110 -0
- package/dist/index-CaxrMD1A.d.ts +1 -0
- package/dist/index-Chrs5fQ-.d.ts +210 -0
- package/dist/index-CxGUswIC.d.ts +431 -0
- package/dist/index-D8EovfsP.d.ts +91 -0
- package/dist/index-DOVf7RJv.d.ts +900 -0
- package/dist/{index-C8z4RjQV.d.ts → index-SGdIQyzc.d.ts} +34 -16
- package/dist/index.d.ts +20 -14
- package/dist/index.js +33 -23
- package/dist/init-DeMYsnYJ.js +96 -0
- package/dist/init-GG6Jh8HD.js +95 -0
- package/dist/{instance-options-jARdwfPN.d.ts → instance-options-Omfd793B.d.ts} +2 -2
- package/dist/instance-snapshot-Cxq4ygFc.js +600 -0
- package/dist/instant-BluqDvyS.js +19 -0
- package/dist/internals-Dk8A8fX3.js +17 -0
- package/dist/{json-schema-BsAflUGW.js → json-schema-B-vAwlde.js} +46 -9
- package/dist/json-schema-CN_iLFH2.d.ts +40 -0
- package/dist/jwt/index.d.ts +18 -11
- package/dist/jwt/index.js +166 -145
- package/dist/{kernel-_RRHmnMY.js → kernel-5JatXyND.js} +120 -43
- package/dist/kysely/index.d.ts +5 -3
- package/dist/kysely/index.js +6 -14
- package/dist/{live-options-H2eG8dfJ.js → live-options-BaAFCIiu.js} +16 -3
- package/dist/load-BxEtwlBS.js +1 -0
- package/dist/{load-DhWEB9P1.js → load-DFS_ry0W.js} +31 -7
- package/dist/{load-jose-BL6LH4bL.js → load-jose-DZ4dnjri.js} +1 -4
- package/dist/login-Dfe5RlYk.js +68 -0
- package/dist/login-imhuwvn3.js +254 -0
- package/dist/manifest-C8IzW3Do.js +42 -0
- package/dist/manifest-CtKR3GXL.js +370 -0
- package/dist/manifest-json-CAGzls-C.js +9 -0
- package/dist/{manifest-uDS9y5de.d.ts → manifest-mx5ghSFM.d.ts} +9 -2
- package/dist/manifest-schema-C0kK_8V0.js +399 -0
- package/dist/{map-claims-Z4QZOiFF.js → map-claims-D3oRmTk0.js} +19 -25
- package/dist/{map-error-pgUWNNtG.js → map-error-TCAdw-eW.js} +5 -5
- package/dist/{markers-B0hYLvMD.js → markers-C6joDI3o.js} +8 -3
- package/dist/mcp/index.d.ts +36 -9
- package/dist/mcp/index.js +476 -448
- package/dist/{rls-migrate-CN4TlJTO.js → migrate-BShP7Vf4.js} +119 -20
- package/dist/nest/index.d.ts +12 -9
- package/dist/nest/index.js +20 -20
- package/dist/next/index.d.ts +40 -20
- package/dist/next/index.js +37 -39
- package/dist/next/plugin.d.ts +1 -1
- package/dist/next/plugin.js +2 -2
- package/dist/node/index.d.ts +10 -10
- package/dist/node/index.js +7 -9
- package/dist/ocsf-BFp-PZZA.js +126 -0
- package/dist/openai/index.d.ts +9 -16
- package/dist/openai/index.js +18 -25
- package/dist/openapi/index.d.ts +3 -3
- package/dist/openapi/index.js +1 -1
- package/dist/{openapi-BqRBvAng.js → openapi-B7HZ0f-r.js} +9 -12
- package/dist/{openapi-CqqEbHsL.js → openapi-DTaEmTSW.js} +23 -26
- package/dist/openapi-ahr8rHu3.js +138 -0
- package/dist/operation-findings-DgATDpvh.js +36 -0
- package/dist/operations-CxybZErY.d.ts +59 -0
- package/dist/orpc/index.d.ts +13 -10
- package/dist/orpc/index.js +23 -20
- package/dist/otel/index.d.ts +3 -2
- package/dist/otel/index.js +53 -27
- package/dist/output-Dyw8fyPF.js +88 -0
- package/dist/output-files-B3IZJksC.js +1 -0
- package/dist/output-files-DhRBBE4n.js +138 -0
- package/dist/{rls-fields-CZOMlwHl.js → ownership-BatFgAA4.js} +2393 -2349
- package/dist/{package-root-zGkxO3oN.js → package-root-Dk_ETdkp.js} +4 -3
- package/dist/{parse-BuyjxhZV.js → parse-Cxq0WxrA.js} +3 -3
- package/dist/{parse-local-manifest-BrMozJCo.js → parse-local-manifest-CVSs6J9I.js} +2 -4
- package/dist/{parse-local-manifest-JLnaBH0S.d.ts → parse-local-manifest-DgqtruPn.d.ts} +1 -1
- package/dist/parse-request-D_tUXG6M.js +26 -0
- package/dist/paths-DXSHAMIa.js +42 -0
- package/dist/pdp/index.d.ts +7 -3
- package/dist/pdp/index.js +47 -29
- package/dist/{peer-BOr_kJE1.js → peer-C8swJ2GH.js} +23 -4
- package/dist/peer-CRvC7Hg1.js +1 -0
- package/dist/permdock-B9JxkBwC.js +868 -0
- package/dist/permdock-D7eeLJER.d.ts +502 -0
- package/dist/permission-registry-Br4jSNVi.js +385 -0
- package/dist/permissions-B-wCP5ZC.js +30 -0
- package/dist/{permissions-RJrovw98.js → permissions-CZKiUfFM.js} +4 -3
- package/dist/{permissions-CDgvKG5L.d.ts → permissions-oEWfl-kl.d.ts} +1 -2
- package/dist/policies-CO1oOymN.js +295 -0
- package/dist/{policy-D2W7uv19.d.ts → policy-Czo4n3Hs.d.ts} +2 -2
- package/dist/policy-DLZJ5gAp.js +399 -0
- package/dist/policy-from-catalog-DzhEc3Y9.js +450 -0
- package/dist/policy-module-CTlwMvLI.js +89 -0
- package/dist/{policy-IB6yxpC3.d.ts → policy-types-DzwivBgR.d.ts} +939 -1057
- package/dist/postgrest-CW0IqC-U.js +566 -0
- package/dist/postgrest-NUqZT-RB.d.ts +100 -0
- package/dist/powersync-BHfuehf3.js +62 -0
- package/dist/powersync-CbzkqL_M.js +1 -0
- package/dist/{powersync-Dv1_aWF7.js → powersync-bYUDLOAO.js} +30 -32
- package/dist/preset/index.d.ts +146 -0
- package/dist/preset/index.js +1 -0
- package/dist/preset-DZdU0tne.js +1768 -0
- package/dist/principal-source-pHneukrx.js +103 -0
- package/dist/prisma/index.d.ts +6 -3
- package/dist/prisma/index.js +6 -12
- package/dist/{problem-B43ztKIm.js → problem-CTviyH5L.js} +18 -27
- package/dist/{problem-details-DX075l9V.d.ts → problem-details-DXlt-vks.d.ts} +1 -1
- package/dist/{problem-details-_AMOYz-w.js → problem-details-cn5X30gZ.js} +45 -42
- package/dist/problem-types-CJ2325SZ.js +5 -0
- package/dist/{prompt-CXYhLfsS.js → prompt-DfZLJLIn.js} +2 -2
- package/dist/protected-DEPHc2xV.d.ts +38 -0
- package/dist/{protected-utU-SLuy.js → protected-DfjY5mLA.js} +37 -8
- package/dist/{provider-CSQd7m92.js → provider-CC-u3bYP.js} +23 -10
- package/dist/{provider-DZY281jO.d.ts → provider-DMVt6yYn.d.ts} +1 -1
- package/dist/{provider-store-Cfbvo4DE.js → provider-store-B5Yrkhzr.js} +6 -3
- package/dist/pull-BgIfno6w.js +256 -0
- package/dist/pull-ByOks_Tg.js +1 -0
- package/dist/push-CmFVBOeI.js +116 -0
- package/dist/pushed-policy-BImMTTIM.d.ts +57 -0
- package/dist/pushed-policy-DobP7AHI.js +238 -0
- package/dist/react/index.d.ts +8 -8
- package/dist/react/index.js +6 -6
- package/dist/react/provider-client.d.ts +1 -1
- package/dist/react/provider-client.js +1 -2
- package/dist/react-native/index.d.ts +24 -63
- package/dist/react-native/index.js +45 -27
- package/dist/{refs-KYb4ntaz.js → refs-K6eWUJ0H.js} +1 -1
- package/dist/relation-walk-3OyDBF0S.js +186 -0
- package/dist/relations-BnCWnJGI.js +163 -0
- package/dist/renames-CGj7YwcQ.js +175 -0
- package/dist/{replay-CYyiLiwO.d.ts → replay-D7iKcLFe.d.ts} +1 -1
- package/dist/{replay-BsOyTrdV.js → replay-Du1tJjG7.js} +2 -1
- package/dist/request-context-BTRTG7OT.js +71 -0
- package/dist/request-context-C2_1lchh.d.ts +5 -0
- package/dist/request-schema-CMreVuFM.js +148 -0
- package/dist/resend/index.d.ts +126 -0
- package/dist/resend/index.js +379 -0
- package/dist/resource-relations-D_jw0BFx.js +243 -0
- package/dist/retire-CALjIQ7e.js +240 -0
- package/dist/{revocations-Cy06JNx2.d.ts → revocations-R07lFBnX.d.ts} +2 -0
- package/dist/rls-BA8an5Ap.js +336 -0
- package/dist/{rls-DiinlRML.js → rls-j6t43t7n.js} +1066 -1068
- package/dist/role-builder-CXbis5-X.js +623 -0
- package/dist/{rpc-DL9Sqvb1.js → rpc-aPyNi6tA.js} +18 -8
- package/dist/run-CNsApDpd.js +1 -0
- package/dist/run-DOfMtc9V.js +723 -0
- package/dist/run-ticket-BjhTOi6u.d.ts +124 -0
- package/dist/run-ticket-sxFI6LAk.js +337 -0
- package/dist/{runtime-CB8gQFvS.js → runtime-D3VTAiCA.js} +1 -1
- package/dist/{saas-DhpJjnBA.js → saas-FO-Q8oj0.js} +18 -15
- package/dist/scan-BOI5tJ-6.js +29 -0
- package/dist/{schema-D3MnDMxa.js → schema-B4v0Qrac.js} +106 -10
- package/dist/schema-yLuBWWsh.js +130 -0
- package/dist/scim/index.d.ts +2 -2
- package/dist/scim/index.js +1 -2
- package/dist/{scim-BFGBBAqR.js → scim-ClHtpyV3.js} +213 -87
- package/dist/{scopes-CVdPrWN-.js → scopes-CUPSjo9q.js} +20 -7
- package/dist/server/index.d.ts +13 -134
- package/dist/server/index.js +13 -10
- package/dist/server-DqCT4CgZ.js +453 -0
- package/dist/{create-B1d519XK.d.ts → server-types-BLd4MnBX.d.ts} +89 -70
- package/dist/{sha256-BO0swRXL.js → sha256-D9ihqmvd.js} +8 -1
- package/dist/shared-CD11nBbC.js +304 -0
- package/dist/{shared-DRu8VFVM.js → shared-DvvFzYXe.js} +8 -9
- package/dist/signals-D3NcTKUS.js +32 -0
- package/dist/sink-BEZSlMS_.js +957 -0
- package/dist/sink-Bj_lDUDq.d.ts +225 -0
- package/dist/{skills-Biq5uup3.js → skills-B6lVdD_W.js} +16 -8
- package/dist/skills-CTYwkl44.js +51 -0
- package/dist/snapshot-CXUWfsNy.js +269 -0
- package/dist/{snapshot-cache-D6jLelln.js → snapshot-cache-DZHQ0KF6.js} +11 -5
- package/dist/{snapshot-cache-B-LxUahj.d.ts → snapshot-cache-DqK9eDmM.d.ts} +7 -5
- package/dist/solid/index.d.ts +24 -25
- package/dist/solid/index.js +41 -11
- package/dist/solid-start/index.d.ts +52 -0
- package/dist/solid-start/index.js +49 -0
- package/dist/{sources-BdOYLw9j.d.ts → sources-BV9j0DeZ.d.ts} +11 -13
- package/dist/{sources-4p0-4xQm.js → sources-vs5dGOsS.js} +147 -142
- package/dist/sql-B5T1IL83.js +55 -0
- package/dist/src-DLfUWFAI.js +1851 -0
- package/dist/ssf/index.d.ts +4 -4
- package/dist/ssf/index.js +440 -106
- package/dist/standard-webhooks-6lg8v_is.d.ts +88 -0
- package/dist/standard-webhooks-DgFFD-Ga.js +228 -0
- package/dist/storage-C2bWdvJH.js +132 -0
- package/dist/{store-DMAWwAJV.js → store-4u_hxjWa.js} +42 -55
- package/dist/{store-options-ByhZq1jV.js → store-options-BqEakYRa.js} +38 -24
- package/dist/{stores-BT2pSCub.js → stores-BbsD4fAR.js} +7 -3
- package/dist/stores-ClZUgeoP.d.ts +30 -0
- package/dist/{stream-D1RXubw2.d.ts → stream-7-xmnf3U.d.ts} +2 -2
- package/dist/{stream-DDpvynSB.js → stream-CvdUS9V1.js} +10 -2
- package/dist/style-DiKWnAvn.js +1 -0
- package/dist/{style-CTm1AXDT.js → style-Uao76wO7.js} +3 -2
- package/dist/subject-BGoM5o8B.js +17 -0
- package/dist/{subject-settings-BwBmCdTR.js → subject-settings-CkEwrw3W.js} +23 -5
- package/dist/supabase/index.d.ts +23 -106
- package/dist/supabase/index.js +5 -4
- package/dist/supabase/middleware.d.ts +13 -6
- package/dist/supabase/middleware.js +16 -11
- package/dist/supabase-9pqI57pW.js +92 -0
- package/dist/{supabase-C0qESOa-.js → supabase-Dxlp8A94.js} +124 -247
- package/dist/supabase-hook-CXcGpHqq.js +1 -0
- package/dist/{supabase-hook-ntETYCQu.js → supabase-hook-DdDQhMlw.js} +1659 -819
- package/dist/{supautils-u8jXTGrt.js → supautils-B6HYL9eL.js} +2 -2
- package/dist/support-session-C6xJQYut.js +158 -0
- package/dist/svelte/Protected.svelte +11 -4
- package/dist/svelte/index.d.ts +7 -7
- package/dist/svelte/index.js +26 -12
- package/dist/svelte/runtime.d.ts +10 -3
- package/dist/svelte/runtime.js +4 -3
- package/dist/svelte/source.d.ts +7 -7
- package/dist/svelte/source.js +5 -5
- package/dist/sveltekit/index.d.ts +51 -0
- package/dist/sveltekit/index.js +27 -0
- package/dist/tanstack-start/index.d.ts +51 -0
- package/dist/tanstack-start/index.js +40 -0
- package/dist/target-Bw37TFNA.js +51 -0
- package/dist/{validity-uOp8UpYn.js → tenancy-DN2QAx9z.js} +6 -42
- package/dist/terminal/index.d.ts +11 -9
- package/dist/terminal/index.js +36 -316
- package/dist/testing/index.d.ts +391 -106
- package/dist/testing/index.js +4574 -1286
- package/dist/testing/saas/index.d.ts +9 -8
- package/dist/testing/saas/index.js +2 -2
- package/dist/testing/saas/permissions.d.ts +1 -1
- package/dist/testing/saas/permissions.js +1 -2
- package/dist/text-BMFRfBqc.js +8 -0
- package/dist/{text-diff-BdkkYSbi.js → text-diff-BQcUapOb.js} +1 -1
- package/dist/thenable-yD7SabqG.js +31 -0
- package/dist/time-DkWjdL98.js +71 -0
- package/dist/{token-CIWxJOCh.js → token-BLZcjQgt.js} +15 -6
- package/dist/tool-refusal-CMLN5xhn.js +41 -0
- package/dist/trpc/index.d.ts +12 -9
- package/dist/trpc/index.js +18 -17
- package/dist/{types-DbjRN55U.d.ts → types-5Ut_pbKy.d.ts} +141 -13
- package/dist/types-BNORmDM8.d.ts +172 -0
- package/dist/types-BjV-fqcA.d.ts +57 -0
- package/dist/{types-QCuYJh4q.d.ts → types-BqAKcRNW.d.ts} +2 -1
- package/dist/types-C8-KNsFf.d.ts +107 -0
- package/dist/{types-aqOHTHcp.d.ts → types-CCpc2Dcv.d.ts} +77 -17
- package/dist/{types-Dnemwd77.d.ts → types-CZTnPFzM.d.ts} +50 -11
- package/dist/{types-C97IskBw.d.ts → types-CdlxsYQh.d.ts} +23 -11
- package/dist/{types-DxiCGmmd.d.ts → types-ClZaWzfb.d.ts} +9 -6
- package/dist/types-DX0LaKTb.d.ts +157 -0
- package/dist/types-DiQjupG2.d.ts +332 -0
- package/dist/types-DqzsnlSA.js +67 -0
- package/dist/types-_sHy8BQf.d.ts +65 -0
- package/dist/types-fbZ7JEXr.d.ts +89 -0
- package/dist/types-tIgIeIKJ.d.ts +66 -0
- package/dist/unplugin/index.d.ts +1 -1
- package/dist/unplugin/index.js +2 -2
- package/dist/usage-CHOtwL19.js +1 -0
- package/dist/usage-DHtE8j4E.js +32 -0
- package/dist/{usage-ItS7nLcl.js → usage-T5mXq98v.js} +56 -13
- package/dist/{validation-error-Ba264OaJ.d.ts → validation-error-Bg5Tpluk.d.ts} +1 -1
- package/dist/{validation-error-CnjZ4t92.js → validation-error-ZfUHbKvf.js} +1 -1
- package/dist/validity-CZ7-y0Cj.js +79 -0
- package/dist/{verifier-BxBo6I44.js → verifier-DHuh-okk.js} +68 -21
- package/dist/verify-DbCL9bnB.js +1770 -0
- package/dist/{version-BvacVTZR.js → version-CEbQ5UeM.js} +4 -3
- package/dist/version-DXkYUISx.js +1 -0
- package/dist/{views-Soe7bGSC.js → views-DTIIO-oQ.js} +41 -2
- package/dist/{permissions-DttnqqxC.d.ts → vocabulary-D6lPdb4Z.d.ts} +120 -29
- package/dist/vue/index.d.ts +25 -21
- package/dist/vue/index.js +25 -9
- package/dist/waiter-BGUtGYoU.js +67 -0
- package/dist/waiter-CKy4MQSY.d.ts +36 -0
- package/dist/watch-Cb-NcaUw.js +1 -0
- package/dist/{watch-DVBJ9cBq.js → watch-CszoTJMq.js} +47 -8
- package/dist/webmcp/index.d.ts +2 -2
- package/dist/webmcp/index.js +13 -37
- package/dist/where-scope-Dv-WTP-w.js +306 -0
- package/dist/who-can-D0QoYbEb.js +364 -0
- package/dist/wire-delegation-Cv3W2eaM.js +36 -0
- package/dist/wire-denial-C7PaVYEM.js +27 -0
- package/dist/workflow/index.d.ts +5 -0
- package/dist/workflow/index.js +223 -0
- package/dist/workflow-sdk/index.d.ts +56 -0
- package/dist/workflow-sdk/index.js +78 -0
- package/dist/wrap-Bd1Tejur.d.ts +15 -0
- package/dist/wrap-gX61EtpB.js +27 -0
- package/package.json +140 -41
- package/schemas/access-event-v1.json +118 -0
- package/schemas/approval-request-v1.json +34 -1
- package/schemas/approval-signature-v1.json +94 -0
- package/schemas/automation-event-v1.json +113 -0
- package/schemas/capability-v1.json +84 -0
- package/schemas/catalog-event-v1.json +87 -0
- package/schemas/catalog-v1.json +129 -12
- package/schemas/cli-commands-v1.json +164 -0
- package/schemas/cli-result-v1.json +96 -0
- package/schemas/cloud-api-v1.json +5407 -0
- package/schemas/connector-v1.json +408 -0
- package/schemas/credential-event-v1.json +81 -0
- package/schemas/credential-v1.json +134 -0
- package/schemas/decision-event-v1.json +288 -0
- package/schemas/delivery-event-v1.json +117 -0
- package/schemas/directory-event-v1.json +85 -0
- package/schemas/evidence-export-v1.json +54 -0
- package/schemas/membership-event-v1.json +93 -0
- package/schemas/policy-v1.json +68 -0
- package/schemas/pushed-policy-v1.json +236 -0
- package/schemas/run-v1.json +162 -0
- package/schemas/snapshot-v1.json +138 -0
- package/schemas/supabase-claims-v1.json +4 -4
- package/schemas/supabase-manifest-v1.json +5 -1
- package/schemas/support-session-v1.json +111 -0
- package/skills/permdock/SKILL.md +16 -12
- package/skills/permdock-agents/SKILL.md +40 -23
- package/skills/permdock-agents/references/operations-automations-chat.md +221 -0
- package/skills/permdock-agents/references/runtimes.md +22 -18
- package/skills/permdock-approvals/SKILL.md +29 -13
- package/skills/permdock-approvals/references/delivery-and-waiters.md +172 -0
- package/skills/permdock-approvals/references/stores-and-resume.md +21 -7
- package/skills/permdock-audit/SKILL.md +3 -3
- package/skills/permdock-credentials/SKILL.md +5 -5
- package/skills/permdock-credentials/references/tokens-keys-links.md +19 -10
- package/skills/permdock-data/SKILL.md +6 -6
- package/skills/permdock-data/references/queries-and-rls.md +13 -8
- package/skills/permdock-data/references/relationships.md +3 -3
- package/skills/permdock-tenancy/SKILL.md +20 -7
- package/skills/permdock-tenancy/references/contacts-and-support-sessions.md +122 -0
- package/skills/permdock-tenancy/references/ownership-and-custom-roles.md +6 -4
- package/skills/permdock-wire/SKILL.md +18 -12
- package/skills/permdock-wire/references/adapters.md +146 -50
- package/skills/permdock-wire/references/policy-options.md +15 -6
- package/skills/permdock-wire/references/presets-and-recipes.md +58 -0
- package/dist/approvals-DbYAuNkG.js +0 -224
- package/dist/arazzo-C9chp3ST.js +0 -54
- package/dist/bind-C_ob3LKa.d.ts +0 -25
- package/dist/catalog-CRW5Mx_B.js +0 -2
- package/dist/catalog-CYj-mX2O.js +0 -48
- package/dist/catalog-DWF5cYqB.js +0 -55
- package/dist/cloud-CfwZ39Rl.js +0 -50
- package/dist/cloud-DWLXO2af.js +0 -118
- package/dist/collect-CHB22Sx4.js +0 -83
- package/dist/collect-DSWOk19R.js +0 -2
- package/dist/commands-BeaGNj_o.js +0 -97
- package/dist/config-ir40y8m0.js +0 -36
- package/dist/create-CMwIl-w2.js +0 -253
- package/dist/delegation-D8pUEuce.js +0 -103
- package/dist/diff-C9RDjjhs.js +0 -48
- package/dist/doctor-Djh6JDEk.js +0 -53
- package/dist/doctor-DvH0IQff.js +0 -1194
- package/dist/doctor-collect-CjdO0wQX.js +0 -665
- package/dist/duration-xK2jGFVc.js +0 -25
- package/dist/errors-CWfoNg9N.js +0 -47
- package/dist/errors-DRnGZHzF.js +0 -30
- package/dist/evaluation-items-CfCCejQd.js +0 -40
- package/dist/expiry-BoBJ8Tvc.js +0 -7
- package/dist/fields-BMl1RxoX.js +0 -26
- package/dist/grantee-Cv5Sogfv.js +0 -602
- package/dist/headers-BZSDieNT.js +0 -6
- package/dist/headers-Cf-zWvsO.d.ts +0 -6
- package/dist/ids-DC4V4CFu.js +0 -18
- package/dist/index-0nNqHspG.d.ts +0 -6
- package/dist/index-BNc7Wer_.d.ts +0 -483
- package/dist/index-C7Tw7MaW.d.ts +0 -201
- package/dist/instance-options-Dhhcnm3y.js +0 -22
- package/dist/load-DwJUafYN.js +0 -2
- package/dist/manifest-iaoBXHKc.js +0 -783
- package/dist/map-AcxK9o_D.js +0 -147
- package/dist/may-use-DndQ5tQ-.js +0 -77
- package/dist/openapi-CQTsgKoB.js +0 -164
- package/dist/permdock-CbgvLnuo.js +0 -3479
- package/dist/permissions-DVoF6dMt.js +0 -662
- package/dist/policy-xyWg7QdR.js +0 -1122
- package/dist/powersync-CrBX8hY6.js +0 -2
- package/dist/powersync-DE19b9dT.js +0 -62
- package/dist/protected-BdnIEFkY.d.ts +0 -27
- package/dist/protected-xAr24FEC.d.ts +0 -40
- package/dist/relations-cjOL01hZ.js +0 -505
- package/dist/rls-P-BeBx0n.js +0 -238
- package/dist/rls-graph-CHwx0V8q.js +0 -435
- package/dist/rls-ownership-DcYlZ09B.js +0 -843
- package/dist/rls-shared-Cewd_-zI.js +0 -495
- package/dist/rls-verify-CMv9H3wV.js +0 -746
- package/dist/run-BWc9qqvE.js +0 -174
- package/dist/server-DlZ28Oz5.js +0 -268
- package/dist/sink-B1fZzIMf.d.ts +0 -104
- package/dist/sink-Bd9PSyfq.js +0 -141
- package/dist/skills-C5CbhhpG.js +0 -56
- package/dist/snapshot-Enxd0n-s.js +0 -975
- package/dist/sql-xdg5f4Fi.js +0 -27
- package/dist/src-BDwEZWrZ.js +0 -568
- package/dist/store-jOBYpiXC.d.ts +0 -36
- package/dist/stores-C0IMQrGI.d.ts +0 -52
- package/dist/subject-C6dLxqHU.js +0 -24
- package/dist/supabase-config-Bj3iDH2I.js +0 -472
- package/dist/supabase-hook-gd3s8bxB.js +0 -2
- package/dist/supabase-s4o9s1O1.js +0 -83
- package/dist/thenable-okc2xDsj.js +0 -10
- package/dist/types-BnIEz1sU.d.ts +0 -48
- package/dist/types-Bvc4oWT6.d.ts +0 -9
- package/dist/types-CKNSyIf_.d.ts +0 -52
- package/dist/types-Cq_H8N_X.d.ts +0 -197
- package/dist/usage-B0YuTQRO.js +0 -42
- package/dist/usage-DorAJiU_.js +0 -2
- package/dist/vocabulary-DA8a8zif.d.ts +0 -56
- package/dist/watch-BwxLTYMZ.js +0 -2
package/dist/solid/index.d.ts
CHANGED
|
@@ -1,41 +1,38 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
5
|
-
import { i as describe } from "../describe-DMYiCjJV.js";
|
|
1
|
+
import { Mn as ApprovalRequiredDecision, Nn as Decision, Vt as Snapshot, dt as TokenVerifier, nr as Membership, zn as GrantedDecision } from "../policy-types-DzwivBgR.js";
|
|
2
|
+
import { r as Role, w as Permission } from "../vocabulary-D6lPdb4Z.js";
|
|
3
|
+
import { n as requiredPlans } from "../problem-details-DXlt-vks.js";
|
|
4
|
+
import { i as describe, r as DescribeOptions, t as DecisionDescription } from "../describe-BZUsixiL.js";
|
|
6
5
|
import { t as PermissionBoundaryState } from "../boundary-BmHxVH1J.js";
|
|
7
|
-
import { t as approvalHeaders } from "../headers-
|
|
8
|
-
import { a as FilterResult, c as SubjectView, i as ClientStatus, l as
|
|
6
|
+
import { t as approvalHeaders } from "../headers-CIbDTUTK.js";
|
|
7
|
+
import { a as FilterResult, c as PermissionSet, d as RolesOptions, f as SubjectView, i as ClientStatus, l as PermissionState, n as ApprovalState, p as TenantView, r as ClientPermDock, t as ApprovalHandle, u as ProviderOptionsBase } from "../types-BNORmDM8.js";
|
|
9
8
|
import { Accessor, Accessor as Accessor$1, JSX } from "solid-js";
|
|
10
9
|
//#region src/solid/types.d.ts
|
|
11
10
|
/** Structural `JSX.Element`: text, a DOM node or a list of children. */
|
|
12
11
|
type SolidChild = string | number | boolean | null | undefined | {
|
|
13
12
|
readonly nodeType: number;
|
|
14
13
|
} | readonly SolidChild[];
|
|
15
|
-
type PermDockProviderProps = {
|
|
14
|
+
type PermDockProviderProps = ProviderOptionsBase & {
|
|
16
15
|
/**
|
|
17
16
|
* An accessor re-hydrates the store when it changes and keeps it `pending`
|
|
18
17
|
* while it returns `undefined` (a loading `createResource`); a promise keeps
|
|
19
18
|
* the store `pending` until it settles.
|
|
20
19
|
*/
|
|
21
20
|
readonly snapshot: Snapshot | string | Accessor$1<Snapshot | string | undefined> | PromiseLike<Snapshot | string>;
|
|
22
|
-
/**
|
|
23
|
-
* The AuthZEN evaluations endpoint for checks the snapshot cannot answer.
|
|
24
|
-
* `false` never calls one: such a check is denied with reason `server-only`.
|
|
25
|
-
*/
|
|
26
|
-
readonly endpoint?: string | false;
|
|
27
|
-
/** Where `refresh()` fetches a fresh snapshot. Defaults to `endpoint`. */
|
|
28
|
-
readonly snapshotUrl?: string;
|
|
29
|
-
readonly approvals?: string;
|
|
30
21
|
/** A change switches the active tenant (`refresh({ tenant })`). */
|
|
31
22
|
readonly tenant?: string;
|
|
32
|
-
/**
|
|
33
|
-
readonly fetch?: typeof fetch;
|
|
23
|
+
/** Read on every request, with `verifier`, so a rotated token applies without a new store. */
|
|
34
24
|
readonly headers?: Readonly<Record<string, string>>;
|
|
35
|
-
readonly maxAge?: number;
|
|
36
25
|
readonly verifier?: TokenVerifier;
|
|
26
|
+
/** What every `<Protected>` below renders for a slot it leaves out. */
|
|
27
|
+
readonly defaults?: PermDockDefaults;
|
|
37
28
|
readonly children: unknown;
|
|
38
29
|
};
|
|
30
|
+
/** Provider-wide content for the `<Protected>` slots a component leaves out. */
|
|
31
|
+
type PermDockDefaults = {
|
|
32
|
+
readonly pending?: SolidChild;
|
|
33
|
+
readonly denied?: SolidChild | ((decision: Decision) => SolidChild);
|
|
34
|
+
readonly approval?: SolidChild | ((decision: ApprovalRequiredDecision) => SolidChild);
|
|
35
|
+
};
|
|
39
36
|
type PermissionBoundaryProps = {
|
|
40
37
|
/** Rendered in place of the children when one throws `PermDockDeniedError`. */
|
|
41
38
|
readonly denied?: SolidChild | ((state: PermissionBoundaryState) => SolidChild);
|
|
@@ -48,10 +45,10 @@ type ProtectedProps = {
|
|
|
48
45
|
readonly data?: unknown;
|
|
49
46
|
readonly tenant?: string;
|
|
50
47
|
readonly pending?: SolidChild;
|
|
51
|
-
readonly
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
48
|
+
readonly denied?: SolidChild | ((decision: Decision) => SolidChild);
|
|
49
|
+
/** Rendered for an approval-required decision; defaults to `denied`. */
|
|
50
|
+
readonly approval?: SolidChild | ((decision: ApprovalRequiredDecision) => SolidChild);
|
|
51
|
+
readonly children: SolidChild | ((decision: GrantedDecision) => SolidChild);
|
|
55
52
|
};
|
|
56
53
|
//#endregion
|
|
57
54
|
//#region src/solid/hooks.d.ts
|
|
@@ -61,7 +58,7 @@ export declare function usePermissions(permissions: Accessor<readonly Permission
|
|
|
61
58
|
export declare function useFilter<T>(permission: Permission<string, T, "instance">, rows: Accessor<readonly T[]>): Accessor<FilterResult<T>>;
|
|
62
59
|
export declare function useTenant(): Accessor<TenantView>;
|
|
63
60
|
export declare function useMemberships(): Accessor<readonly Membership[]>;
|
|
64
|
-
export declare function useRoles(options?: Accessor<
|
|
61
|
+
export declare function useRoles(options?: Accessor<RolesOptions>): Accessor<{
|
|
65
62
|
readonly roles: readonly Role[];
|
|
66
63
|
}>;
|
|
67
64
|
export declare function useAssignableRoles(): Accessor<readonly Role[]>;
|
|
@@ -72,6 +69,8 @@ export declare function useAssignablePermissions(options?: {
|
|
|
72
69
|
}>): Accessor<readonly Permission[]>;
|
|
73
70
|
export declare function useSubject(): Accessor<SubjectView>;
|
|
74
71
|
export declare function useApproval(decision: Accessor<Decision>): Accessor<ApprovalHandle>;
|
|
72
|
+
/** `describe` with the provider's `messages`; a call's own `messages` win. */
|
|
73
|
+
export declare function useDescribe(): (decision: Decision, options?: DescribeOptions) => DecisionDescription;
|
|
75
74
|
//#endregion
|
|
76
75
|
//#region src/solid/boundary.d.ts
|
|
77
76
|
/**
|
|
@@ -90,4 +89,4 @@ export declare function Protected(props: ProtectedProps): JSX.Element;
|
|
|
90
89
|
//#region src/solid/provider.d.ts
|
|
91
90
|
export declare function PermDockProvider(props: PermDockProviderProps): JSX.Element;
|
|
92
91
|
//#endregion
|
|
93
|
-
export { type ApprovalHandle, type ApprovalState, type ClientPermDock, type ClientStatus, type FilterResult, type PermDockProviderProps, type PermissionBoundaryProps, type PermissionBoundaryState, type PermissionSet, type PermissionState, type ProtectedProps, type
|
|
92
|
+
export { type ApprovalHandle, type ApprovalState, type ClientPermDock, type ClientStatus, type FilterResult, type PermDockDefaults, type PermDockProviderProps, type PermissionBoundaryProps, type PermissionBoundaryState, type PermissionSet, type PermissionState, type ProtectedProps, type RolesOptions, type SolidChild, type SubjectView, type TenantView, approvalHeaders, describe, requiredPlans };
|
package/dist/solid/index.js
CHANGED
|
@@ -1,14 +1,15 @@
|
|
|
1
|
-
import { t as compact } from "../compact-
|
|
2
|
-
import { r as requiredPlans } from "../problem-details-
|
|
3
|
-
import { t as describe } from "../describe-
|
|
4
|
-
import { t as approvalHeaders } from "../headers-BZSDieNT.js";
|
|
5
|
-
import { i as isPromiseLike } from "../store-options-ByhZq1jV.js";
|
|
6
|
-
import { a as protectedView, c as subjectView, i as permissionSet, l as tenantView, n as filterResult, o as rolesView, r as livePermDock, s as scopedTenant, t as approvalHandle } from "../views-Soe7bGSC.js";
|
|
1
|
+
import { t as compact } from "../compact-CAf557ZB.js";
|
|
2
|
+
import { r as requiredPlans } from "../problem-details-cn5X30gZ.js";
|
|
3
|
+
import { t as describe } from "../describe-BybMRY7A.js";
|
|
7
4
|
import { n as boundaryFallback, t as boundaryDigest } from "../boundary-BM8a_P6E.js";
|
|
8
|
-
import {
|
|
5
|
+
import { t as approvalHeaders } from "../headers-BIjfMaoC.js";
|
|
6
|
+
import { i as isPromiseLike } from "../store-options-BqEakYRa.js";
|
|
7
|
+
import { n as switchTenant, t as providerStore } from "../provider-store-B5Yrkhzr.js";
|
|
8
|
+
import { a as livePermDock, c as rolesView, d as subjectView, f as tenantView, l as scopedTenant, n as describeWith, o as permissionSet, r as filterResult, s as protectedView, t as approvalHandle, u as slotContent } from "../views-DTIIO-oQ.js";
|
|
9
9
|
import { ErrorBoundary, createComponent, createComputed, createContext, createMemo, createSignal, getOwner, on, onCleanup, useContext } from "solid-js";
|
|
10
10
|
//#region src/solid/context.ts
|
|
11
11
|
const PermDockContext = createContext(void 0);
|
|
12
|
+
const PermDockUiContext = createContext({});
|
|
12
13
|
function useStore() {
|
|
13
14
|
const store = useContext(PermDockContext);
|
|
14
15
|
if (store === void 0) throw new Error("PermDock: hooks require <PermDockProvider>.");
|
|
@@ -85,6 +86,11 @@ function useApproval(decision) {
|
|
|
85
86
|
return approvalHandle(store, decision());
|
|
86
87
|
});
|
|
87
88
|
}
|
|
89
|
+
/** `describe` with the provider's `messages`; a call's own `messages` win. */
|
|
90
|
+
function useDescribe() {
|
|
91
|
+
const ui = useContext(PermDockUiContext);
|
|
92
|
+
return (decision, options) => describeWith(ui.messages)(decision, options);
|
|
93
|
+
}
|
|
88
94
|
//#endregion
|
|
89
95
|
//#region src/solid/boundary.ts
|
|
90
96
|
const BoundaryContext = createContext(null);
|
|
@@ -124,20 +130,25 @@ function usePermissionBoundary() {
|
|
|
124
130
|
//#region src/solid/protected.ts
|
|
125
131
|
function Protected(props) {
|
|
126
132
|
const root = usePermDock();
|
|
133
|
+
const ui = useContext(PermDockUiContext);
|
|
127
134
|
const local = usePermission(() => props.permission, () => props.data);
|
|
128
135
|
const scoped = createMemo(() => scopedTenant(root, props.tenant));
|
|
129
136
|
const view = createMemo(() => protectedView(local(), root, props.permission, props.data, scoped()));
|
|
130
137
|
const render = () => {
|
|
131
138
|
const current = view();
|
|
132
139
|
switch (current.slot) {
|
|
133
|
-
case "pending": return props.
|
|
134
|
-
case "
|
|
140
|
+
case "pending": return slotContent("pending", props, ui.defaults) ?? null;
|
|
141
|
+
case "denied": return content(slotContent("denied", props, ui.defaults), current.decision);
|
|
142
|
+
case "approval": return content(slotContent("approval", props, ui.defaults), current.decision);
|
|
135
143
|
case "default": return typeof props.children === "function" ? props.children(current.decision) : props.children;
|
|
136
144
|
default: return current;
|
|
137
145
|
}
|
|
138
146
|
};
|
|
139
147
|
return render;
|
|
140
148
|
}
|
|
149
|
+
function content(slot, decision) {
|
|
150
|
+
return typeof slot === "function" ? slot(decision) : slot ?? null;
|
|
151
|
+
}
|
|
141
152
|
//#endregion
|
|
142
153
|
//#region src/solid/provider.ts
|
|
143
154
|
function PermDockProvider(props) {
|
|
@@ -150,7 +161,10 @@ function PermDockProvider(props) {
|
|
|
150
161
|
snapshotUrl: props.snapshotUrl,
|
|
151
162
|
approvals: props.approvals,
|
|
152
163
|
tenant: props.tenant,
|
|
153
|
-
maxAge: props.maxAge
|
|
164
|
+
maxAge: props.maxAge,
|
|
165
|
+
onSnapshot: props.onSnapshot,
|
|
166
|
+
onClear: props.onClear,
|
|
167
|
+
approvalInterval: props.approvalInterval
|
|
154
168
|
}), () => ({
|
|
155
169
|
headers: props.headers,
|
|
156
170
|
fetch: props.fetch,
|
|
@@ -177,12 +191,28 @@ function PermDockProvider(props) {
|
|
|
177
191
|
arrive = void 0;
|
|
178
192
|
}, { defer: initial !== void 0 }));
|
|
179
193
|
}
|
|
194
|
+
const ui = {
|
|
195
|
+
get defaults() {
|
|
196
|
+
return props.defaults;
|
|
197
|
+
},
|
|
198
|
+
get messages() {
|
|
199
|
+
return props.messages;
|
|
200
|
+
}
|
|
201
|
+
};
|
|
180
202
|
return createComponent(PermDockContext.Provider, {
|
|
181
203
|
value: store,
|
|
204
|
+
get children() {
|
|
205
|
+
return uiProvider(ui, props);
|
|
206
|
+
}
|
|
207
|
+
});
|
|
208
|
+
}
|
|
209
|
+
function uiProvider(ui, props) {
|
|
210
|
+
return createComponent(PermDockUiContext.Provider, {
|
|
211
|
+
value: ui,
|
|
182
212
|
get children() {
|
|
183
213
|
return props.children;
|
|
184
214
|
}
|
|
185
215
|
});
|
|
186
216
|
}
|
|
187
217
|
//#endregion
|
|
188
|
-
export { PermDockProvider, PermissionBoundary, Protected, approvalHeaders, describe, requiredPlans, useApproval, useAssignablePermissions, useAssignableRoles, useFilter, useMemberships, usePermDock, usePermission, usePermissionBoundary, usePermissions, useRoles, useSubject, useTenant };
|
|
218
|
+
export { PermDockProvider, PermissionBoundary, Protected, approvalHeaders, describe, requiredPlans, useApproval, useAssignablePermissions, useAssignableRoles, useDescribe, useFilter, useMemberships, usePermDock, usePermission, usePermissionBoundary, usePermissions, useRoles, useSubject, useTenant };
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { T as Policy, Vt as Snapshot, j as PolicyVocabulary, rr as Principal } from "../policy-types-DzwivBgR.js";
|
|
2
|
+
import { w as Permission } from "../vocabulary-D6lPdb4Z.js";
|
|
3
|
+
import { a as OperationInput, t as Operation } from "../operations-CxybZErY.js";
|
|
4
|
+
import { r as PermDock } from "../permdock-D7eeLJER.js";
|
|
5
|
+
import { D as ConnectionOptions, T as Connection, f as InvalidSignatureError, i as OpenApiHooks, o as ProtectOptions, u as SnapshotQuery, v as discoverViaSignatureAgent, x as webBotAuthVerifier } from "../server-types-BLd4MnBX.js";
|
|
6
|
+
import { a as ProtectTarget, n as FetchAdapterOptions, t as ContextReader } from "../fetch-adapter-qKJBuRqy.js";
|
|
7
|
+
import { APIEvent, FetchEvent } from "@solidjs/start/server";
|
|
8
|
+
//#region src/solid-start/create.d.ts
|
|
9
|
+
/** The h3 event under every SolidStart request; `subject` and `scope` read it. */
|
|
10
|
+
type SolidStartNativeEvent = FetchEvent["nativeEvent"];
|
|
11
|
+
/** An h3 middleware for `createMiddleware([...])` in `src/middleware.ts`. */
|
|
12
|
+
type SolidStartMiddleware = (event: SolidStartNativeEvent, next: () => unknown) => Promise<unknown>;
|
|
13
|
+
type SolidStartPermDockOptions<TUser = unknown> = FetchAdapterOptions<SolidStartNativeEvent, TUser>;
|
|
14
|
+
/** What the adapter sets on `event.locals`. */
|
|
15
|
+
type SolidStartPermDockLocals<TData = unknown, V extends PolicyVocabulary = PolicyVocabulary> = {
|
|
16
|
+
readonly permdock: PermDock<V>;
|
|
17
|
+
readonly permdockData: TData;
|
|
18
|
+
};
|
|
19
|
+
/** The event a wrapped API route receives: its own `APIEvent` with typed `locals`. */
|
|
20
|
+
type SolidStartPermDockEvent<TEvent extends FetchEvent = APIEvent, TData = unknown, V extends PolicyVocabulary = PolicyVocabulary> = TEvent & {
|
|
21
|
+
readonly locals: SolidStartPermDockLocals<TData, V>;
|
|
22
|
+
};
|
|
23
|
+
/** Wraps an API route handler. */
|
|
24
|
+
type SolidStartGuarded<TData, V extends PolicyVocabulary = PolicyVocabulary> = <TEvent extends FetchEvent = APIEvent, R = Response>(handler: (event: SolidStartPermDockEvent<TEvent, TData, V>) => R | Promise<R>) => (event: TEvent) => Promise<R | Response>;
|
|
25
|
+
type SolidStartProtect<V extends PolicyVocabulary = PolicyVocabulary> = {
|
|
26
|
+
<T = unknown>(permission: Permission | null, data?: ContextReader<APIEvent, T | null | undefined>, protectOptions?: ProtectOptions): SolidStartGuarded<NonNullable<T>, V>;
|
|
27
|
+
<TOperation extends Operation>(operation: TOperation, input?: ContextReader<APIEvent, OperationInput<TOperation>>, protectOptions?: ProtectOptions): SolidStartGuarded<unknown, V>;
|
|
28
|
+
};
|
|
29
|
+
/** The decision endpoint, one API route handler per method. */
|
|
30
|
+
type SolidStartPermDockHandlers = {
|
|
31
|
+
readonly GET: (event: FetchEvent) => Promise<Response>;
|
|
32
|
+
readonly POST: (event: FetchEvent) => Promise<Response>;
|
|
33
|
+
};
|
|
34
|
+
type SolidStartPermDock<V extends PolicyVocabulary = PolicyVocabulary> = {
|
|
35
|
+
/** Sets `event.context.permdock` on the h3 event; a bad Web Bot Auth signature is a `401`. */
|
|
36
|
+
readonly middleware: () => SolidStartMiddleware;
|
|
37
|
+
/** `export const DELETE = protect(permissions.post.delete, loadPost)(handler)`. */
|
|
38
|
+
readonly protect: SolidStartProtect<V>;
|
|
39
|
+
/** Types `event.locals.permdock` for an API route and answers a thrown PermDock error with Problem Details. */
|
|
40
|
+
readonly withPermDock: SolidStartGuarded<unknown, V>;
|
|
41
|
+
/** The instance for an API route, or a server function through `getRequestEvent()`. */
|
|
42
|
+
readonly getPermDock: (event: FetchEvent) => Promise<PermDock<V>>;
|
|
43
|
+
/** The snapshot a route `query` returns for `permdock/solid`. */
|
|
44
|
+
readonly getSnapshot: (event: FetchEvent, query?: SnapshotQuery) => Promise<Snapshot>;
|
|
45
|
+
readonly connection: (event: FetchEvent, connectionOptions?: ConnectionOptions) => Promise<Connection>;
|
|
46
|
+
/** `export const { GET, POST } = permdockHandler()` in `src/routes/api/permdock.ts`. */
|
|
47
|
+
readonly permdockHandler: () => SolidStartPermDockHandlers;
|
|
48
|
+
readonly openapi: OpenApiHooks;
|
|
49
|
+
};
|
|
50
|
+
export declare function createPermDock<TUser, TPrincipal extends Principal = Principal, V extends PolicyVocabulary = PolicyVocabulary>(policy: Policy<TUser, TPrincipal, V>, options: SolidStartPermDockOptions<TUser>): SolidStartPermDock<V>;
|
|
51
|
+
//#endregion
|
|
52
|
+
export { type ContextReader, InvalidSignatureError, type ProtectTarget, type SolidStartGuarded, type SolidStartMiddleware, type SolidStartNativeEvent, type SolidStartPermDock, type SolidStartPermDockEvent, type SolidStartPermDockHandlers, type SolidStartPermDockLocals, type SolidStartPermDockOptions, type SolidStartProtect, discoverViaSignatureAgent, webBotAuthVerifier };
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import { d as discoverViaSignatureAgent, m as webBotAuthVerifier, u as InvalidSignatureError } from "../evaluations-DZ2CbV5k.js";
|
|
2
|
+
import { i as decorate } from "../bind-CZzhx-Vj.js";
|
|
3
|
+
import { n as guardedRoute, t as fetchAdapter } from "../fetch-adapter-g0ypLkID.js";
|
|
4
|
+
//#region src/solid-start/create.ts
|
|
5
|
+
/**
|
|
6
|
+
* `event.locals`. Its type, `App.RequestEventLocals`, is declared by
|
|
7
|
+
* `@solidjs/start/env`, which only an app's own `tsconfig` loads.
|
|
8
|
+
*/
|
|
9
|
+
function localsOf(event) {
|
|
10
|
+
return Reflect.get(event, "locals");
|
|
11
|
+
}
|
|
12
|
+
const route = {
|
|
13
|
+
context: (event) => event.nativeEvent,
|
|
14
|
+
locals: localsOf
|
|
15
|
+
};
|
|
16
|
+
function createPermDock(policy, options) {
|
|
17
|
+
const adapter = fetchAdapter(policy, options, "solid-start", (event) => event.req);
|
|
18
|
+
const middleware = () => async (event, next) => {
|
|
19
|
+
const attached = await adapter.ensure(event.context, event);
|
|
20
|
+
if (!attached.ok) return attached.response;
|
|
21
|
+
return adapter.mapErrors(event, next);
|
|
22
|
+
};
|
|
23
|
+
const protect = ((target, data, protectOptions) => guardedRoute(adapter, route, target, data, protectOptions));
|
|
24
|
+
const withPermDock = (handler) => async (event) => {
|
|
25
|
+
const attached = await adapter.ensure(event.nativeEvent.context, event.nativeEvent);
|
|
26
|
+
if (!attached.ok) return attached.response;
|
|
27
|
+
decorate(localsOf(event), attached.permdock);
|
|
28
|
+
return adapter.mapErrors(event.nativeEvent, () => handler(event));
|
|
29
|
+
};
|
|
30
|
+
const handlers = () => {
|
|
31
|
+
const { GET, POST } = adapter.handlers();
|
|
32
|
+
return {
|
|
33
|
+
GET: (event) => GET(event.nativeEvent),
|
|
34
|
+
POST: (event) => POST(event.nativeEvent)
|
|
35
|
+
};
|
|
36
|
+
};
|
|
37
|
+
return {
|
|
38
|
+
middleware,
|
|
39
|
+
protect,
|
|
40
|
+
withPermDock,
|
|
41
|
+
getPermDock: (event) => adapter.getPermDock(event.nativeEvent),
|
|
42
|
+
getSnapshot: (event, query) => adapter.getSnapshot(event.nativeEvent, query),
|
|
43
|
+
connection: (event, connectionOptions) => adapter.connection(event.nativeEvent, connectionOptions),
|
|
44
|
+
permdockHandler: handlers,
|
|
45
|
+
openapi: adapter.kernel.openapi
|
|
46
|
+
};
|
|
47
|
+
}
|
|
48
|
+
//#endregion
|
|
49
|
+
export { InvalidSignatureError, createPermDock, discoverViaSignatureAgent, webBotAuthVerifier };
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { n as RoleThrough, y as SupabaseSuspension } from "./types-
|
|
3
|
-
import { o as SupabaseManifestMembership } from "./manifest-
|
|
1
|
+
import { et as MembershipSource } from "./policy-types-DzwivBgR.js";
|
|
2
|
+
import { n as RoleThrough, y as SupabaseSuspension } from "./types-CdlxsYQh.js";
|
|
3
|
+
import { o as SupabaseManifestMembership } from "./manifest-mx5ghSFM.js";
|
|
4
4
|
//#region src/supabase/roles.d.ts
|
|
5
5
|
/** A roles table a role column references, by `schema.table`. */
|
|
6
6
|
type RoleKeys = {
|
|
@@ -55,6 +55,8 @@ type MembershipTableOptions = Common & {
|
|
|
55
55
|
readonly managedBy?: string;
|
|
56
56
|
/** A `text[]` column of seats. */
|
|
57
57
|
readonly seats?: string;
|
|
58
|
+
/** A `jsonb` column of app data (`Membership.x`); never written into claims. */
|
|
59
|
+
readonly x?: string;
|
|
58
60
|
};
|
|
59
61
|
};
|
|
60
62
|
type MembershipJunctionOptions = Common & {
|
|
@@ -92,6 +94,8 @@ type MembershipJunctionOptions = Common & {
|
|
|
92
94
|
};
|
|
93
95
|
/** A `text[]` column of seats. */
|
|
94
96
|
readonly seats?: string;
|
|
97
|
+
/** A `jsonb` column of app data (`Membership.x`); never written into claims. */
|
|
98
|
+
readonly x?: string;
|
|
95
99
|
};
|
|
96
100
|
/** What `permdock supabase hook generate` compiles; the same SQL the source runs. */
|
|
97
101
|
type MembershipSql = {
|
|
@@ -159,26 +163,20 @@ type SqlMembershipSource = MembershipSource & {
|
|
|
159
163
|
type SupabasePostgres = {
|
|
160
164
|
readonly queryRaw: (text: string, params?: unknown[]) => Promise<readonly Record<string, unknown>[]>;
|
|
161
165
|
};
|
|
162
|
-
|
|
163
|
-
* `ctx.postgres` (from `withPostgresClient`) or `ctx.postgresAdmin` as a
|
|
164
|
-
* `SqlQuery` for `fromTable`, `fromJunction` and `supabaseApprovalStore`.
|
|
165
|
-
* `ctx.postgres` runs as the caller under RLS, so the membership tables must
|
|
166
|
-
* be readable by `authenticated`; `ctx.postgresAdmin` bypasses RLS.
|
|
167
|
-
*/
|
|
168
|
-
declare function fromSupabasePostgres(postgres: SupabasePostgres): SqlQuery;
|
|
166
|
+
declare function supabasePostgresQuery(postgres: SupabasePostgres): SqlQuery;
|
|
169
167
|
/**
|
|
170
168
|
* Memberships from one table holding every scope: a row per user, scope,
|
|
171
169
|
* instance and role (`user_id, scope, scope_id, role`), with optional
|
|
172
170
|
* `within`, `via`, expiry, owner and seat columns. Rows of the same instance
|
|
173
171
|
* merge into one membership.
|
|
174
172
|
*/
|
|
175
|
-
declare function
|
|
173
|
+
declare function tableMembershipSource(options: MembershipTableOptions): SqlMembershipSource;
|
|
176
174
|
/**
|
|
177
175
|
* Memberships from a table of one scope (`customer_contacts`): every row is a
|
|
178
176
|
* membership of `scope`, with roles from a column or fixed (`['contact']`), a
|
|
179
177
|
* fixed `via`, and ancestor ids from `within` columns.
|
|
180
178
|
*/
|
|
181
|
-
declare function
|
|
179
|
+
declare function junctionMembershipSource(options: MembershipJunctionOptions): SqlMembershipSource;
|
|
182
180
|
declare const AUTHZ_VERSION_TABLE = "permdock_authz_version";
|
|
183
181
|
/**
|
|
184
182
|
* Reads the authorization version `permdock supabase hook generate` keeps in
|
|
@@ -189,4 +187,4 @@ declare function authzVersion(options: {
|
|
|
189
187
|
readonly schema?: string;
|
|
190
188
|
}): NonNullable<MembershipSource["version"]>;
|
|
191
189
|
//#endregion
|
|
192
|
-
export { MembershipTableOptions as a, SupabasePostgres as c,
|
|
190
|
+
export { MembershipTableOptions as a, SupabasePostgres as c, supabasePostgresQuery as d, tableMembershipSource as f, MembershipSql as i, authzVersion as l, MembershipHolders as n, SqlMembershipSource as o, MembershipJunctionOptions as r, SqlQuery as s, AUTHZ_VERSION_TABLE as t, junctionMembershipSource as u };
|