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.
Files changed (552) hide show
  1. package/README.md +37 -35
  2. package/dist/{openapi-schema--ARjyfQr.js → 2020-C9VN-x8c.js} +5 -132
  3. package/dist/a2a/index.d.ts +8 -6
  4. package/dist/a2a/index.js +21 -31
  5. package/dist/{adapter-context-mlWsVGGg.js → adapter-context-CRhqyzCk.js} +1 -1
  6. package/dist/adoption-scan-B4R5fnMU.js +107 -0
  7. package/dist/agent/index.d.ts +3 -0
  8. package/dist/agent/index.js +1 -0
  9. package/dist/ai-sdk/index.d.ts +18 -23
  10. package/dist/ai-sdk/index.js +38 -21
  11. package/dist/app-data-MuyzVqX8.js +60 -0
  12. package/dist/approval-header-CJACtHkv.js +23 -0
  13. package/dist/approval-prompt-Dg5LeAcT.js +62 -0
  14. package/dist/approval-prompt-Djo_PyZc.d.ts +57 -0
  15. package/dist/approvals/index.d.ts +5 -3
  16. package/dist/approvals/index.js +8 -5
  17. package/dist/approvals-DJ6Yd5z1.js +995 -0
  18. package/dist/{approvers-DT4AVyIg.js → approvers-CqPOLD-o.js} +1 -1
  19. package/dist/arazzo-B6lebmiQ.js +36 -0
  20. package/dist/{arazzo-BAgw9ap6.js → arazzo-BWhNF-k0.js} +24 -17
  21. package/dist/args-IIolxxKA.js +197 -0
  22. package/dist/astro/index.d.ts +43 -0
  23. package/dist/astro/index.js +27 -0
  24. package/dist/audience-Dg8XsRaO.js +55 -0
  25. package/dist/auth-DRLEizbL.js +178 -0
  26. package/dist/authzen/index.d.ts +26 -6
  27. package/dist/authzen/index.js +228 -75
  28. package/dist/automation-BMZPIVUM.d.ts +114 -0
  29. package/dist/automation-DVjOckjV.js +157 -0
  30. package/dist/better-auth/index.d.ts +8 -6
  31. package/dist/better-auth/index.js +11 -23
  32. package/dist/better-supabase/index.d.ts +438 -86
  33. package/dist/better-supabase/index.js +1027 -184
  34. package/dist/bind--9EFVYWF.d.ts +38 -0
  35. package/dist/{bind-CuzGytRf.js → bind-CZzhx-Vj.js} +22 -10
  36. package/dist/body-CH5of8Ne.js +10 -0
  37. package/dist/body-text-QcXok_SI.js +52 -0
  38. package/dist/build-instance-BMnAudHn.js +52 -0
  39. package/dist/{canonical-json-DemiK4Vp.js → canonical-json-BC8_nMTw.js} +6 -6
  40. package/dist/{capability-2kYTMWDv.d.ts → capability-BSslw1QV.d.ts} +44 -25
  41. package/dist/{capability-4qPdO9gk.js → capability-N1K9IpqS.js} +69 -42
  42. package/dist/casbin-Cr7RLtA3.js +30 -0
  43. package/dist/casbin-Dyu2gnUD.js +234 -0
  44. package/dist/casl-64gpT-8x.js +24 -0
  45. package/dist/casl-DjEDhTCP.js +299 -0
  46. package/dist/catalog/index.d.ts +74 -2
  47. package/dist/catalog/index.js +51 -2
  48. package/dist/catalog-BECMPrwc.js +100 -0
  49. package/dist/catalog-DjhMYYCq.js +1 -0
  50. package/dist/catalog-R_A__RsH.js +52 -0
  51. package/dist/{catalog-doc-DdGm82XT.js → catalog-doc-C9wjsfNY.js} +54 -25
  52. package/dist/catalog-fingerprint-CCP0-yQS.js +153 -0
  53. package/dist/chat/index.d.ts +2 -0
  54. package/dist/chat/index.js +224 -0
  55. package/dist/chat-sdk/index.d.ts +87 -0
  56. package/dist/chat-sdk/index.js +197 -0
  57. package/dist/claims-map-7oQ3ue4X.js +13 -0
  58. package/dist/claims-map-Ca-QX8C6.d.ts +32 -0
  59. package/dist/claude-agent/index.d.ts +7 -14
  60. package/dist/claude-agent/index.js +26 -30
  61. package/dist/clerk/index.d.ts +9 -8
  62. package/dist/clerk/index.js +15 -45
  63. package/dist/cli/bin.js +36 -17
  64. package/dist/cli/index.d.ts +20 -6
  65. package/dist/cli/index.js +164 -4
  66. package/dist/cloud/index.d.ts +102 -63
  67. package/dist/cloud/index.js +240 -347
  68. package/dist/cloud-CIoHNevm.js +87 -0
  69. package/dist/codemod-Bmj9dWMH.js +37 -0
  70. package/dist/codemod-Cxvvc70T.js +2084 -0
  71. package/dist/{collect-DSTE3ml9.js → collect-CrZJJnEF.js} +79 -17
  72. package/dist/collect-DloHbDVa.js +55 -0
  73. package/dist/collect-FlXJlhus.js +1 -0
  74. package/dist/command-L8EstFNm.js +6 -0
  75. package/dist/{compact-y6vfu2_f.js → compact-CAf557ZB.js} +11 -1
  76. package/dist/compile/index.d.ts +1 -1
  77. package/dist/compile/index.js +1 -2
  78. package/dist/{compile-Ba4blROR.js → compile-CMqMx_IN.js} +13 -9
  79. package/dist/{compile-BkRyBDBw.d.ts → compile-Ckm2HqBZ.d.ts} +5 -3
  80. package/dist/completion-BqhRBJD8.js +143 -0
  81. package/dist/config-B46rm9sc.js +26 -0
  82. package/dist/{config-BJiM-xAm.js → config-bs_kZeYq.js} +15 -10
  83. package/dist/{config-report-CdCgbRnV.js → config-report-DUgj62Ai.js} +17 -8
  84. package/dist/{connection-CU8MQxRi.js → connection-DjhIJSs2.js} +8 -6
  85. package/dist/constants-DcJABbLW.js +20 -0
  86. package/dist/{context-Bcy85rGi.js → context-bbFHR-0D.js} +16 -5
  87. package/dist/convex/index.d.ts +11 -10
  88. package/dist/convex/index.js +18 -18
  89. package/dist/create-0VZ7Pdiu.d.ts +107 -0
  90. package/dist/create-BDS7wc3y.d.ts +138 -0
  91. package/dist/create-BFfm17UA.d.ts +110 -0
  92. package/dist/create-BWRSXgOF.js +403 -0
  93. package/dist/create-C3b4B5eF.js +130 -0
  94. package/dist/create-DnrmLnLW.js +323 -0
  95. package/dist/{credential-8P81ff4u.js → credential-DM2um3ha.js} +153 -32
  96. package/dist/credentials-DPyHmYz5.js +74 -0
  97. package/dist/deciding-columns-Sq12mEA6.js +123 -0
  98. package/dist/delegation-DaXVdDhM.js +286 -0
  99. package/dist/delegation-input-FTxMK3ji.js +19 -0
  100. package/dist/delivery/index.d.ts +5 -0
  101. package/dist/delivery/index.js +5 -0
  102. package/dist/delivery-DCAgNyCn.js +499 -0
  103. package/dist/delivery-event-xX4obB8F.js +40 -0
  104. package/dist/denied-text-D8jDHgsl.d.ts +19 -0
  105. package/dist/{describe-DMYiCjJV.d.ts → describe-BZUsixiL.d.ts} +11 -2
  106. package/dist/{describe-B_gVZEVi.js → describe-BybMRY7A.js} +10 -5
  107. package/dist/device-BARQ8eYG.js +193 -0
  108. package/dist/diff-CxZo9pTq.js +37 -0
  109. package/dist/{diff-2VaeChzX.js → diff-DCePiN6M.js} +61 -55
  110. package/dist/doctor-CxiwSfqH.js +44 -0
  111. package/dist/doctor-DFjUxf2f.js +2361 -0
  112. package/dist/drizzle/index.d.ts +5 -3
  113. package/dist/drizzle/index.js +6 -14
  114. package/dist/elysia/index.d.ts +16 -13
  115. package/dist/elysia/index.js +14 -13
  116. package/dist/env-DJZrPjRi.js +8 -0
  117. package/dist/errors-BDUwg2qC.js +27 -0
  118. package/dist/{errors-Cz5zn0mW.js → errors-BKy0EfhN.js} +6 -10
  119. package/dist/errors-BWXBMaKK.d.ts +11 -0
  120. package/dist/{errors-DPdqI50v.d.ts → errors-C2PXIv4c.d.ts} +2 -2
  121. package/dist/errors-CWTY6uih.js +143 -0
  122. package/dist/evaluate-_R8QkWaf.js +1732 -0
  123. package/dist/evaluations-16UqqQ6W.d.ts +32 -0
  124. package/dist/{evaluations-tz6D9A2G.js → evaluations-DZ2CbV5k.js} +181 -32
  125. package/dist/eve/index.d.ts +12 -16
  126. package/dist/eve/index.js +23 -29
  127. package/dist/event-time-CsegxXxB.js +23 -0
  128. package/dist/expiry-D4_YKRKD.js +52 -0
  129. package/dist/express/index.d.ts +13 -10
  130. package/dist/express/index.js +14 -12
  131. package/dist/fastify/index.d.ts +26 -13
  132. package/dist/fastify/index.js +17 -36
  133. package/dist/fetch-adapter-g0ypLkID.js +120 -0
  134. package/dist/fetch-adapter-qKJBuRqy.d.ts +31 -0
  135. package/dist/fields-D9tPVUUS.js +203 -0
  136. package/dist/files-C5ZI27eV.js +124 -0
  137. package/dist/{files-DWUN9PzI.js → files-D_JIzUrP.js} +12 -3
  138. package/dist/{fixtures-ht28Cplr.js → fixtures-B7XrLeY7.js} +12 -12
  139. package/dist/flags-C3DktBDY.js +86 -0
  140. package/dist/{from-snapshot-CTLijvdm.js → from-snapshot-D2lZt4Dd.js} +78 -65
  141. package/dist/{generate-CH7ThJ14.js → generate-CNU1pIOo.js} +1 -3
  142. package/dist/grantee-Cn1HyUsI.js +254 -0
  143. package/dist/grantee-conditions-CcXf8hMM.js +271 -0
  144. package/dist/grantee-match-DHArqY82.js +142 -0
  145. package/dist/h3/index.d.ts +37 -0
  146. package/dist/h3/index.js +35 -0
  147. package/dist/headers-BIjfMaoC.js +8 -0
  148. package/dist/headers-CIbDTUTK.d.ts +7 -0
  149. package/dist/{helpers-H_KARDVC.js → helpers-DTcZOzhF.js} +47 -39
  150. package/dist/hono/index.d.ts +12 -9
  151. package/dist/hono/index.js +14 -13
  152. package/dist/{hosted-DJQw46hn.js → hosted-BZIAYvon.js} +64 -15
  153. package/dist/hosted-DBDX0M-P.d.ts +78 -0
  154. package/dist/{http-SO7qGttf.js → http-BBoKefeS.js} +35 -2
  155. package/dist/{http-DPuDaChb.d.ts → http-B_LphE5Y.d.ts} +1 -2
  156. package/dist/http-DXJ37RDA.js +46 -0
  157. package/dist/{http-BIhmLfCc.js → http-ujKm0JXE.js} +3 -26
  158. package/dist/{openapi-import-cmwetbzw.js → import-CNV7I2Dw.js} +30 -26
  159. package/dist/{rls-import-4lLW_pbb.js → import-DMmOG27O.js} +271 -128
  160. package/dist/index-BcHcPyIo.d.ts +110 -0
  161. package/dist/index-CaxrMD1A.d.ts +1 -0
  162. package/dist/index-Chrs5fQ-.d.ts +210 -0
  163. package/dist/index-CxGUswIC.d.ts +431 -0
  164. package/dist/index-D8EovfsP.d.ts +91 -0
  165. package/dist/index-DOVf7RJv.d.ts +900 -0
  166. package/dist/{index-C8z4RjQV.d.ts → index-SGdIQyzc.d.ts} +34 -16
  167. package/dist/index.d.ts +20 -14
  168. package/dist/index.js +33 -23
  169. package/dist/init-DeMYsnYJ.js +96 -0
  170. package/dist/init-GG6Jh8HD.js +95 -0
  171. package/dist/{instance-options-jARdwfPN.d.ts → instance-options-Omfd793B.d.ts} +2 -2
  172. package/dist/instance-snapshot-Cxq4ygFc.js +600 -0
  173. package/dist/instant-BluqDvyS.js +19 -0
  174. package/dist/internals-Dk8A8fX3.js +17 -0
  175. package/dist/{json-schema-BsAflUGW.js → json-schema-B-vAwlde.js} +46 -9
  176. package/dist/json-schema-CN_iLFH2.d.ts +40 -0
  177. package/dist/jwt/index.d.ts +18 -11
  178. package/dist/jwt/index.js +166 -145
  179. package/dist/{kernel-_RRHmnMY.js → kernel-5JatXyND.js} +120 -43
  180. package/dist/kysely/index.d.ts +5 -3
  181. package/dist/kysely/index.js +6 -14
  182. package/dist/{live-options-H2eG8dfJ.js → live-options-BaAFCIiu.js} +16 -3
  183. package/dist/load-BxEtwlBS.js +1 -0
  184. package/dist/{load-DhWEB9P1.js → load-DFS_ry0W.js} +31 -7
  185. package/dist/{load-jose-BL6LH4bL.js → load-jose-DZ4dnjri.js} +1 -4
  186. package/dist/login-Dfe5RlYk.js +68 -0
  187. package/dist/login-imhuwvn3.js +254 -0
  188. package/dist/manifest-C8IzW3Do.js +42 -0
  189. package/dist/manifest-CtKR3GXL.js +370 -0
  190. package/dist/manifest-json-CAGzls-C.js +9 -0
  191. package/dist/{manifest-uDS9y5de.d.ts → manifest-mx5ghSFM.d.ts} +9 -2
  192. package/dist/manifest-schema-C0kK_8V0.js +399 -0
  193. package/dist/{map-claims-Z4QZOiFF.js → map-claims-D3oRmTk0.js} +19 -25
  194. package/dist/{map-error-pgUWNNtG.js → map-error-TCAdw-eW.js} +5 -5
  195. package/dist/{markers-B0hYLvMD.js → markers-C6joDI3o.js} +8 -3
  196. package/dist/mcp/index.d.ts +36 -9
  197. package/dist/mcp/index.js +476 -448
  198. package/dist/{rls-migrate-CN4TlJTO.js → migrate-BShP7Vf4.js} +119 -20
  199. package/dist/nest/index.d.ts +12 -9
  200. package/dist/nest/index.js +20 -20
  201. package/dist/next/index.d.ts +40 -20
  202. package/dist/next/index.js +37 -39
  203. package/dist/next/plugin.d.ts +1 -1
  204. package/dist/next/plugin.js +2 -2
  205. package/dist/node/index.d.ts +10 -10
  206. package/dist/node/index.js +7 -9
  207. package/dist/ocsf-BFp-PZZA.js +126 -0
  208. package/dist/openai/index.d.ts +9 -16
  209. package/dist/openai/index.js +18 -25
  210. package/dist/openapi/index.d.ts +3 -3
  211. package/dist/openapi/index.js +1 -1
  212. package/dist/{openapi-BqRBvAng.js → openapi-B7HZ0f-r.js} +9 -12
  213. package/dist/{openapi-CqqEbHsL.js → openapi-DTaEmTSW.js} +23 -26
  214. package/dist/openapi-ahr8rHu3.js +138 -0
  215. package/dist/operation-findings-DgATDpvh.js +36 -0
  216. package/dist/operations-CxybZErY.d.ts +59 -0
  217. package/dist/orpc/index.d.ts +13 -10
  218. package/dist/orpc/index.js +23 -20
  219. package/dist/otel/index.d.ts +3 -2
  220. package/dist/otel/index.js +53 -27
  221. package/dist/output-Dyw8fyPF.js +88 -0
  222. package/dist/output-files-B3IZJksC.js +1 -0
  223. package/dist/output-files-DhRBBE4n.js +138 -0
  224. package/dist/{rls-fields-CZOMlwHl.js → ownership-BatFgAA4.js} +2393 -2349
  225. package/dist/{package-root-zGkxO3oN.js → package-root-Dk_ETdkp.js} +4 -3
  226. package/dist/{parse-BuyjxhZV.js → parse-Cxq0WxrA.js} +3 -3
  227. package/dist/{parse-local-manifest-BrMozJCo.js → parse-local-manifest-CVSs6J9I.js} +2 -4
  228. package/dist/{parse-local-manifest-JLnaBH0S.d.ts → parse-local-manifest-DgqtruPn.d.ts} +1 -1
  229. package/dist/parse-request-D_tUXG6M.js +26 -0
  230. package/dist/paths-DXSHAMIa.js +42 -0
  231. package/dist/pdp/index.d.ts +7 -3
  232. package/dist/pdp/index.js +47 -29
  233. package/dist/{peer-BOr_kJE1.js → peer-C8swJ2GH.js} +23 -4
  234. package/dist/peer-CRvC7Hg1.js +1 -0
  235. package/dist/permdock-B9JxkBwC.js +868 -0
  236. package/dist/permdock-D7eeLJER.d.ts +502 -0
  237. package/dist/permission-registry-Br4jSNVi.js +385 -0
  238. package/dist/permissions-B-wCP5ZC.js +30 -0
  239. package/dist/{permissions-RJrovw98.js → permissions-CZKiUfFM.js} +4 -3
  240. package/dist/{permissions-CDgvKG5L.d.ts → permissions-oEWfl-kl.d.ts} +1 -2
  241. package/dist/policies-CO1oOymN.js +295 -0
  242. package/dist/{policy-D2W7uv19.d.ts → policy-Czo4n3Hs.d.ts} +2 -2
  243. package/dist/policy-DLZJ5gAp.js +399 -0
  244. package/dist/policy-from-catalog-DzhEc3Y9.js +450 -0
  245. package/dist/policy-module-CTlwMvLI.js +89 -0
  246. package/dist/{policy-IB6yxpC3.d.ts → policy-types-DzwivBgR.d.ts} +939 -1057
  247. package/dist/postgrest-CW0IqC-U.js +566 -0
  248. package/dist/postgrest-NUqZT-RB.d.ts +100 -0
  249. package/dist/powersync-BHfuehf3.js +62 -0
  250. package/dist/powersync-CbzkqL_M.js +1 -0
  251. package/dist/{powersync-Dv1_aWF7.js → powersync-bYUDLOAO.js} +30 -32
  252. package/dist/preset/index.d.ts +146 -0
  253. package/dist/preset/index.js +1 -0
  254. package/dist/preset-DZdU0tne.js +1768 -0
  255. package/dist/principal-source-pHneukrx.js +103 -0
  256. package/dist/prisma/index.d.ts +6 -3
  257. package/dist/prisma/index.js +6 -12
  258. package/dist/{problem-B43ztKIm.js → problem-CTviyH5L.js} +18 -27
  259. package/dist/{problem-details-DX075l9V.d.ts → problem-details-DXlt-vks.d.ts} +1 -1
  260. package/dist/{problem-details-_AMOYz-w.js → problem-details-cn5X30gZ.js} +45 -42
  261. package/dist/problem-types-CJ2325SZ.js +5 -0
  262. package/dist/{prompt-CXYhLfsS.js → prompt-DfZLJLIn.js} +2 -2
  263. package/dist/protected-DEPHc2xV.d.ts +38 -0
  264. package/dist/{protected-utU-SLuy.js → protected-DfjY5mLA.js} +37 -8
  265. package/dist/{provider-CSQd7m92.js → provider-CC-u3bYP.js} +23 -10
  266. package/dist/{provider-DZY281jO.d.ts → provider-DMVt6yYn.d.ts} +1 -1
  267. package/dist/{provider-store-Cfbvo4DE.js → provider-store-B5Yrkhzr.js} +6 -3
  268. package/dist/pull-BgIfno6w.js +256 -0
  269. package/dist/pull-ByOks_Tg.js +1 -0
  270. package/dist/push-CmFVBOeI.js +116 -0
  271. package/dist/pushed-policy-BImMTTIM.d.ts +57 -0
  272. package/dist/pushed-policy-DobP7AHI.js +238 -0
  273. package/dist/react/index.d.ts +8 -8
  274. package/dist/react/index.js +6 -6
  275. package/dist/react/provider-client.d.ts +1 -1
  276. package/dist/react/provider-client.js +1 -2
  277. package/dist/react-native/index.d.ts +24 -63
  278. package/dist/react-native/index.js +45 -27
  279. package/dist/{refs-KYb4ntaz.js → refs-K6eWUJ0H.js} +1 -1
  280. package/dist/relation-walk-3OyDBF0S.js +186 -0
  281. package/dist/relations-BnCWnJGI.js +163 -0
  282. package/dist/renames-CGj7YwcQ.js +175 -0
  283. package/dist/{replay-CYyiLiwO.d.ts → replay-D7iKcLFe.d.ts} +1 -1
  284. package/dist/{replay-BsOyTrdV.js → replay-Du1tJjG7.js} +2 -1
  285. package/dist/request-context-BTRTG7OT.js +71 -0
  286. package/dist/request-context-C2_1lchh.d.ts +5 -0
  287. package/dist/request-schema-CMreVuFM.js +148 -0
  288. package/dist/resend/index.d.ts +126 -0
  289. package/dist/resend/index.js +379 -0
  290. package/dist/resource-relations-D_jw0BFx.js +243 -0
  291. package/dist/retire-CALjIQ7e.js +240 -0
  292. package/dist/{revocations-Cy06JNx2.d.ts → revocations-R07lFBnX.d.ts} +2 -0
  293. package/dist/rls-BA8an5Ap.js +336 -0
  294. package/dist/{rls-DiinlRML.js → rls-j6t43t7n.js} +1066 -1068
  295. package/dist/role-builder-CXbis5-X.js +623 -0
  296. package/dist/{rpc-DL9Sqvb1.js → rpc-aPyNi6tA.js} +18 -8
  297. package/dist/run-CNsApDpd.js +1 -0
  298. package/dist/run-DOfMtc9V.js +723 -0
  299. package/dist/run-ticket-BjhTOi6u.d.ts +124 -0
  300. package/dist/run-ticket-sxFI6LAk.js +337 -0
  301. package/dist/{runtime-CB8gQFvS.js → runtime-D3VTAiCA.js} +1 -1
  302. package/dist/{saas-DhpJjnBA.js → saas-FO-Q8oj0.js} +18 -15
  303. package/dist/scan-BOI5tJ-6.js +29 -0
  304. package/dist/{schema-D3MnDMxa.js → schema-B4v0Qrac.js} +106 -10
  305. package/dist/schema-yLuBWWsh.js +130 -0
  306. package/dist/scim/index.d.ts +2 -2
  307. package/dist/scim/index.js +1 -2
  308. package/dist/{scim-BFGBBAqR.js → scim-ClHtpyV3.js} +213 -87
  309. package/dist/{scopes-CVdPrWN-.js → scopes-CUPSjo9q.js} +20 -7
  310. package/dist/server/index.d.ts +13 -134
  311. package/dist/server/index.js +13 -10
  312. package/dist/server-DqCT4CgZ.js +453 -0
  313. package/dist/{create-B1d519XK.d.ts → server-types-BLd4MnBX.d.ts} +89 -70
  314. package/dist/{sha256-BO0swRXL.js → sha256-D9ihqmvd.js} +8 -1
  315. package/dist/shared-CD11nBbC.js +304 -0
  316. package/dist/{shared-DRu8VFVM.js → shared-DvvFzYXe.js} +8 -9
  317. package/dist/signals-D3NcTKUS.js +32 -0
  318. package/dist/sink-BEZSlMS_.js +957 -0
  319. package/dist/sink-Bj_lDUDq.d.ts +225 -0
  320. package/dist/{skills-Biq5uup3.js → skills-B6lVdD_W.js} +16 -8
  321. package/dist/skills-CTYwkl44.js +51 -0
  322. package/dist/snapshot-CXUWfsNy.js +269 -0
  323. package/dist/{snapshot-cache-D6jLelln.js → snapshot-cache-DZHQ0KF6.js} +11 -5
  324. package/dist/{snapshot-cache-B-LxUahj.d.ts → snapshot-cache-DqK9eDmM.d.ts} +7 -5
  325. package/dist/solid/index.d.ts +24 -25
  326. package/dist/solid/index.js +41 -11
  327. package/dist/solid-start/index.d.ts +52 -0
  328. package/dist/solid-start/index.js +49 -0
  329. package/dist/{sources-BdOYLw9j.d.ts → sources-BV9j0DeZ.d.ts} +11 -13
  330. package/dist/{sources-4p0-4xQm.js → sources-vs5dGOsS.js} +147 -142
  331. package/dist/sql-B5T1IL83.js +55 -0
  332. package/dist/src-DLfUWFAI.js +1851 -0
  333. package/dist/ssf/index.d.ts +4 -4
  334. package/dist/ssf/index.js +440 -106
  335. package/dist/standard-webhooks-6lg8v_is.d.ts +88 -0
  336. package/dist/standard-webhooks-DgFFD-Ga.js +228 -0
  337. package/dist/storage-C2bWdvJH.js +132 -0
  338. package/dist/{store-DMAWwAJV.js → store-4u_hxjWa.js} +42 -55
  339. package/dist/{store-options-ByhZq1jV.js → store-options-BqEakYRa.js} +38 -24
  340. package/dist/{stores-BT2pSCub.js → stores-BbsD4fAR.js} +7 -3
  341. package/dist/stores-ClZUgeoP.d.ts +30 -0
  342. package/dist/{stream-D1RXubw2.d.ts → stream-7-xmnf3U.d.ts} +2 -2
  343. package/dist/{stream-DDpvynSB.js → stream-CvdUS9V1.js} +10 -2
  344. package/dist/style-DiKWnAvn.js +1 -0
  345. package/dist/{style-CTm1AXDT.js → style-Uao76wO7.js} +3 -2
  346. package/dist/subject-BGoM5o8B.js +17 -0
  347. package/dist/{subject-settings-BwBmCdTR.js → subject-settings-CkEwrw3W.js} +23 -5
  348. package/dist/supabase/index.d.ts +23 -106
  349. package/dist/supabase/index.js +5 -4
  350. package/dist/supabase/middleware.d.ts +13 -6
  351. package/dist/supabase/middleware.js +16 -11
  352. package/dist/supabase-9pqI57pW.js +92 -0
  353. package/dist/{supabase-C0qESOa-.js → supabase-Dxlp8A94.js} +124 -247
  354. package/dist/supabase-hook-CXcGpHqq.js +1 -0
  355. package/dist/{supabase-hook-ntETYCQu.js → supabase-hook-DdDQhMlw.js} +1659 -819
  356. package/dist/{supautils-u8jXTGrt.js → supautils-B6HYL9eL.js} +2 -2
  357. package/dist/support-session-C6xJQYut.js +158 -0
  358. package/dist/svelte/Protected.svelte +11 -4
  359. package/dist/svelte/index.d.ts +7 -7
  360. package/dist/svelte/index.js +26 -12
  361. package/dist/svelte/runtime.d.ts +10 -3
  362. package/dist/svelte/runtime.js +4 -3
  363. package/dist/svelte/source.d.ts +7 -7
  364. package/dist/svelte/source.js +5 -5
  365. package/dist/sveltekit/index.d.ts +51 -0
  366. package/dist/sveltekit/index.js +27 -0
  367. package/dist/tanstack-start/index.d.ts +51 -0
  368. package/dist/tanstack-start/index.js +40 -0
  369. package/dist/target-Bw37TFNA.js +51 -0
  370. package/dist/{validity-uOp8UpYn.js → tenancy-DN2QAx9z.js} +6 -42
  371. package/dist/terminal/index.d.ts +11 -9
  372. package/dist/terminal/index.js +36 -316
  373. package/dist/testing/index.d.ts +391 -106
  374. package/dist/testing/index.js +4574 -1286
  375. package/dist/testing/saas/index.d.ts +9 -8
  376. package/dist/testing/saas/index.js +2 -2
  377. package/dist/testing/saas/permissions.d.ts +1 -1
  378. package/dist/testing/saas/permissions.js +1 -2
  379. package/dist/text-BMFRfBqc.js +8 -0
  380. package/dist/{text-diff-BdkkYSbi.js → text-diff-BQcUapOb.js} +1 -1
  381. package/dist/thenable-yD7SabqG.js +31 -0
  382. package/dist/time-DkWjdL98.js +71 -0
  383. package/dist/{token-CIWxJOCh.js → token-BLZcjQgt.js} +15 -6
  384. package/dist/tool-refusal-CMLN5xhn.js +41 -0
  385. package/dist/trpc/index.d.ts +12 -9
  386. package/dist/trpc/index.js +18 -17
  387. package/dist/{types-DbjRN55U.d.ts → types-5Ut_pbKy.d.ts} +141 -13
  388. package/dist/types-BNORmDM8.d.ts +172 -0
  389. package/dist/types-BjV-fqcA.d.ts +57 -0
  390. package/dist/{types-QCuYJh4q.d.ts → types-BqAKcRNW.d.ts} +2 -1
  391. package/dist/types-C8-KNsFf.d.ts +107 -0
  392. package/dist/{types-aqOHTHcp.d.ts → types-CCpc2Dcv.d.ts} +77 -17
  393. package/dist/{types-Dnemwd77.d.ts → types-CZTnPFzM.d.ts} +50 -11
  394. package/dist/{types-C97IskBw.d.ts → types-CdlxsYQh.d.ts} +23 -11
  395. package/dist/{types-DxiCGmmd.d.ts → types-ClZaWzfb.d.ts} +9 -6
  396. package/dist/types-DX0LaKTb.d.ts +157 -0
  397. package/dist/types-DiQjupG2.d.ts +332 -0
  398. package/dist/types-DqzsnlSA.js +67 -0
  399. package/dist/types-_sHy8BQf.d.ts +65 -0
  400. package/dist/types-fbZ7JEXr.d.ts +89 -0
  401. package/dist/types-tIgIeIKJ.d.ts +66 -0
  402. package/dist/unplugin/index.d.ts +1 -1
  403. package/dist/unplugin/index.js +2 -2
  404. package/dist/usage-CHOtwL19.js +1 -0
  405. package/dist/usage-DHtE8j4E.js +32 -0
  406. package/dist/{usage-ItS7nLcl.js → usage-T5mXq98v.js} +56 -13
  407. package/dist/{validation-error-Ba264OaJ.d.ts → validation-error-Bg5Tpluk.d.ts} +1 -1
  408. package/dist/{validation-error-CnjZ4t92.js → validation-error-ZfUHbKvf.js} +1 -1
  409. package/dist/validity-CZ7-y0Cj.js +79 -0
  410. package/dist/{verifier-BxBo6I44.js → verifier-DHuh-okk.js} +68 -21
  411. package/dist/verify-DbCL9bnB.js +1770 -0
  412. package/dist/{version-BvacVTZR.js → version-CEbQ5UeM.js} +4 -3
  413. package/dist/version-DXkYUISx.js +1 -0
  414. package/dist/{views-Soe7bGSC.js → views-DTIIO-oQ.js} +41 -2
  415. package/dist/{permissions-DttnqqxC.d.ts → vocabulary-D6lPdb4Z.d.ts} +120 -29
  416. package/dist/vue/index.d.ts +25 -21
  417. package/dist/vue/index.js +25 -9
  418. package/dist/waiter-BGUtGYoU.js +67 -0
  419. package/dist/waiter-CKy4MQSY.d.ts +36 -0
  420. package/dist/watch-Cb-NcaUw.js +1 -0
  421. package/dist/{watch-DVBJ9cBq.js → watch-CszoTJMq.js} +47 -8
  422. package/dist/webmcp/index.d.ts +2 -2
  423. package/dist/webmcp/index.js +13 -37
  424. package/dist/where-scope-Dv-WTP-w.js +306 -0
  425. package/dist/who-can-D0QoYbEb.js +364 -0
  426. package/dist/wire-delegation-Cv3W2eaM.js +36 -0
  427. package/dist/wire-denial-C7PaVYEM.js +27 -0
  428. package/dist/workflow/index.d.ts +5 -0
  429. package/dist/workflow/index.js +223 -0
  430. package/dist/workflow-sdk/index.d.ts +56 -0
  431. package/dist/workflow-sdk/index.js +78 -0
  432. package/dist/wrap-Bd1Tejur.d.ts +15 -0
  433. package/dist/wrap-gX61EtpB.js +27 -0
  434. package/package.json +140 -41
  435. package/schemas/access-event-v1.json +118 -0
  436. package/schemas/approval-request-v1.json +34 -1
  437. package/schemas/approval-signature-v1.json +94 -0
  438. package/schemas/automation-event-v1.json +113 -0
  439. package/schemas/capability-v1.json +84 -0
  440. package/schemas/catalog-event-v1.json +87 -0
  441. package/schemas/catalog-v1.json +129 -12
  442. package/schemas/cli-commands-v1.json +164 -0
  443. package/schemas/cli-result-v1.json +96 -0
  444. package/schemas/cloud-api-v1.json +5407 -0
  445. package/schemas/connector-v1.json +408 -0
  446. package/schemas/credential-event-v1.json +81 -0
  447. package/schemas/credential-v1.json +134 -0
  448. package/schemas/decision-event-v1.json +288 -0
  449. package/schemas/delivery-event-v1.json +117 -0
  450. package/schemas/directory-event-v1.json +85 -0
  451. package/schemas/evidence-export-v1.json +54 -0
  452. package/schemas/membership-event-v1.json +93 -0
  453. package/schemas/policy-v1.json +68 -0
  454. package/schemas/pushed-policy-v1.json +236 -0
  455. package/schemas/run-v1.json +162 -0
  456. package/schemas/snapshot-v1.json +138 -0
  457. package/schemas/supabase-claims-v1.json +4 -4
  458. package/schemas/supabase-manifest-v1.json +5 -1
  459. package/schemas/support-session-v1.json +111 -0
  460. package/skills/permdock/SKILL.md +16 -12
  461. package/skills/permdock-agents/SKILL.md +40 -23
  462. package/skills/permdock-agents/references/operations-automations-chat.md +221 -0
  463. package/skills/permdock-agents/references/runtimes.md +22 -18
  464. package/skills/permdock-approvals/SKILL.md +29 -13
  465. package/skills/permdock-approvals/references/delivery-and-waiters.md +172 -0
  466. package/skills/permdock-approvals/references/stores-and-resume.md +21 -7
  467. package/skills/permdock-audit/SKILL.md +3 -3
  468. package/skills/permdock-credentials/SKILL.md +5 -5
  469. package/skills/permdock-credentials/references/tokens-keys-links.md +19 -10
  470. package/skills/permdock-data/SKILL.md +6 -6
  471. package/skills/permdock-data/references/queries-and-rls.md +13 -8
  472. package/skills/permdock-data/references/relationships.md +3 -3
  473. package/skills/permdock-tenancy/SKILL.md +20 -7
  474. package/skills/permdock-tenancy/references/contacts-and-support-sessions.md +122 -0
  475. package/skills/permdock-tenancy/references/ownership-and-custom-roles.md +6 -4
  476. package/skills/permdock-wire/SKILL.md +18 -12
  477. package/skills/permdock-wire/references/adapters.md +146 -50
  478. package/skills/permdock-wire/references/policy-options.md +15 -6
  479. package/skills/permdock-wire/references/presets-and-recipes.md +58 -0
  480. package/dist/approvals-DbYAuNkG.js +0 -224
  481. package/dist/arazzo-C9chp3ST.js +0 -54
  482. package/dist/bind-C_ob3LKa.d.ts +0 -25
  483. package/dist/catalog-CRW5Mx_B.js +0 -2
  484. package/dist/catalog-CYj-mX2O.js +0 -48
  485. package/dist/catalog-DWF5cYqB.js +0 -55
  486. package/dist/cloud-CfwZ39Rl.js +0 -50
  487. package/dist/cloud-DWLXO2af.js +0 -118
  488. package/dist/collect-CHB22Sx4.js +0 -83
  489. package/dist/collect-DSWOk19R.js +0 -2
  490. package/dist/commands-BeaGNj_o.js +0 -97
  491. package/dist/config-ir40y8m0.js +0 -36
  492. package/dist/create-CMwIl-w2.js +0 -253
  493. package/dist/delegation-D8pUEuce.js +0 -103
  494. package/dist/diff-C9RDjjhs.js +0 -48
  495. package/dist/doctor-Djh6JDEk.js +0 -53
  496. package/dist/doctor-DvH0IQff.js +0 -1194
  497. package/dist/doctor-collect-CjdO0wQX.js +0 -665
  498. package/dist/duration-xK2jGFVc.js +0 -25
  499. package/dist/errors-CWfoNg9N.js +0 -47
  500. package/dist/errors-DRnGZHzF.js +0 -30
  501. package/dist/evaluation-items-CfCCejQd.js +0 -40
  502. package/dist/expiry-BoBJ8Tvc.js +0 -7
  503. package/dist/fields-BMl1RxoX.js +0 -26
  504. package/dist/grantee-Cv5Sogfv.js +0 -602
  505. package/dist/headers-BZSDieNT.js +0 -6
  506. package/dist/headers-Cf-zWvsO.d.ts +0 -6
  507. package/dist/ids-DC4V4CFu.js +0 -18
  508. package/dist/index-0nNqHspG.d.ts +0 -6
  509. package/dist/index-BNc7Wer_.d.ts +0 -483
  510. package/dist/index-C7Tw7MaW.d.ts +0 -201
  511. package/dist/instance-options-Dhhcnm3y.js +0 -22
  512. package/dist/load-DwJUafYN.js +0 -2
  513. package/dist/manifest-iaoBXHKc.js +0 -783
  514. package/dist/map-AcxK9o_D.js +0 -147
  515. package/dist/may-use-DndQ5tQ-.js +0 -77
  516. package/dist/openapi-CQTsgKoB.js +0 -164
  517. package/dist/permdock-CbgvLnuo.js +0 -3479
  518. package/dist/permissions-DVoF6dMt.js +0 -662
  519. package/dist/policy-xyWg7QdR.js +0 -1122
  520. package/dist/powersync-CrBX8hY6.js +0 -2
  521. package/dist/powersync-DE19b9dT.js +0 -62
  522. package/dist/protected-BdnIEFkY.d.ts +0 -27
  523. package/dist/protected-xAr24FEC.d.ts +0 -40
  524. package/dist/relations-cjOL01hZ.js +0 -505
  525. package/dist/rls-P-BeBx0n.js +0 -238
  526. package/dist/rls-graph-CHwx0V8q.js +0 -435
  527. package/dist/rls-ownership-DcYlZ09B.js +0 -843
  528. package/dist/rls-shared-Cewd_-zI.js +0 -495
  529. package/dist/rls-verify-CMv9H3wV.js +0 -746
  530. package/dist/run-BWc9qqvE.js +0 -174
  531. package/dist/server-DlZ28Oz5.js +0 -268
  532. package/dist/sink-B1fZzIMf.d.ts +0 -104
  533. package/dist/sink-Bd9PSyfq.js +0 -141
  534. package/dist/skills-C5CbhhpG.js +0 -56
  535. package/dist/snapshot-Enxd0n-s.js +0 -975
  536. package/dist/sql-xdg5f4Fi.js +0 -27
  537. package/dist/src-BDwEZWrZ.js +0 -568
  538. package/dist/store-jOBYpiXC.d.ts +0 -36
  539. package/dist/stores-C0IMQrGI.d.ts +0 -52
  540. package/dist/subject-C6dLxqHU.js +0 -24
  541. package/dist/supabase-config-Bj3iDH2I.js +0 -472
  542. package/dist/supabase-hook-gd3s8bxB.js +0 -2
  543. package/dist/supabase-s4o9s1O1.js +0 -83
  544. package/dist/thenable-okc2xDsj.js +0 -10
  545. package/dist/types-BnIEz1sU.d.ts +0 -48
  546. package/dist/types-Bvc4oWT6.d.ts +0 -9
  547. package/dist/types-CKNSyIf_.d.ts +0 -52
  548. package/dist/types-Cq_H8N_X.d.ts +0 -197
  549. package/dist/usage-B0YuTQRO.js +0 -42
  550. package/dist/usage-DorAJiU_.js +0 -2
  551. package/dist/vocabulary-DA8a8zif.d.ts +0 -56
  552. package/dist/watch-BwxLTYMZ.js +0 -2
@@ -1,24 +1,24 @@
1
- import { C as Policy, D as PolicyVocabulary, Nr as Principal, ln as PermDock } from "../policy-IB6yxpC3.js";
2
- import { f as Permission } from "../permissions-DttnqqxC.js";
3
- import { a as ScopeGuard, h as InvalidSignatureError, i as ProtectOptions, n as OpenApiHooks, t as Guard, w as verifyWebBotAuth, x as discoverViaSignatureAgent } from "../create-B1d519XK.js";
4
- import { t as ServerAdapterOptions } from "../bind-C_ob3LKa.js";
5
- import { a as toRequest, i as sendResponse, n as fromResponse, r as isServerResponse, t as NodeRequest } from "../http-DPuDaChb.js";
1
+ import { T as Policy, j as PolicyVocabulary, rr as Principal } from "../policy-types-DzwivBgR.js";
2
+ import { w as Permission } from "../vocabulary-D6lPdb4Z.js";
3
+ import { r as PermDock } from "../permdock-D7eeLJER.js";
4
+ import { f as InvalidSignatureError, i as OpenApiHooks, o as ProtectOptions, r as Guard, s as ScopeGuard, v as discoverViaSignatureAgent, x as webBotAuthVerifier } from "../server-types-BLd4MnBX.js";
5
+ import { t as ServerAdapterOptions } from "../bind--9EFVYWF.js";
6
+ import { i as toRequest, n as isServerResponse, r as sendResponse, t as NodeRequest } from "../http-B_LphE5Y.js";
6
7
  import { IncomingMessage, ServerResponse } from "node:http";
7
8
  //#region src/node/create.d.ts
8
9
  type NodePermDockOptions<TUser = unknown> = ServerAdapterOptions<NodeRequest, TUser>;
9
10
  type NodeProtect = {
10
- (permission: Permission, loadData?: (req: NodeRequest) => unknown, protectOptions?: ProtectOptions): (req: IncomingMessage) => Promise<Guard>;
11
- (permission: null, loadData?: (req: NodeRequest) => unknown, protectOptions?: ProtectOptions): (req: IncomingMessage) => Promise<ScopeGuard>;
11
+ (permission: Permission, data?: (req: NodeRequest) => unknown, protectOptions?: ProtectOptions): (req: IncomingMessage) => Promise<Guard>;
12
+ (permission: null, data?: (req: NodeRequest) => unknown, protectOptions?: ProtectOptions): (req: IncomingMessage) => Promise<ScopeGuard>;
12
13
  };
13
14
  type NodePermDock<V extends PolicyVocabulary = PolicyVocabulary> = {
14
- readonly permdock: (req: IncomingMessage) => Promise<PermDock<V>>;
15
+ readonly getPermDock: (req: IncomingMessage) => Promise<PermDock<V>>;
15
16
  readonly protect: NodeProtect;
16
17
  readonly send: typeof sendResponse;
17
18
  readonly permdockHandler: () => (req: IncomingMessage, res: ServerResponse) => Promise<void>;
18
19
  readonly toRequest: typeof toRequest;
19
- readonly fromResponse: typeof fromResponse;
20
20
  readonly openapi: OpenApiHooks;
21
21
  };
22
22
  export declare function createPermDock<TUser, TPrincipal extends Principal = Principal, V extends PolicyVocabulary = PolicyVocabulary>(policy: Policy<TUser, TPrincipal, V>, options: NodePermDockOptions<TUser>): NodePermDock<V>;
23
23
  //#endregion
24
- export { InvalidSignatureError, type NodePermDock, type NodePermDockOptions, type NodeRequest, discoverViaSignatureAgent, fromResponse, isServerResponse, sendResponse, toRequest, verifyWebBotAuth };
24
+ export { InvalidSignatureError, type NodePermDock, type NodePermDockOptions, type NodeRequest, discoverViaSignatureAgent, isServerResponse, sendResponse, toRequest, webBotAuthVerifier };
@@ -1,15 +1,14 @@
1
- import { i as discoverViaSignatureAgent, r as InvalidSignatureError, s as verifyWebBotAuth } from "../evaluations-tz6D9A2G.js";
2
- import { r as bindKernel } from "../bind-CuzGytRf.js";
3
- import { i as toRequest, n as isServerResponse, r as sendResponse, t as fromResponse } from "../http-BIhmLfCc.js";
1
+ import { d as discoverViaSignatureAgent, m as webBotAuthVerifier, u as InvalidSignatureError } from "../evaluations-DZ2CbV5k.js";
2
+ import { r as bindKernel } from "../bind-CZzhx-Vj.js";
3
+ import { n as sendResponse, r as toRequest, t as isServerResponse } from "../http-ujKm0JXE.js";
4
4
  //#region src/node/create.ts
5
5
  const nodeRequest = (req) => req;
6
6
  function createPermDock(policy, options) {
7
7
  const bound = bindKernel(policy, options, "node", toRequest);
8
8
  const { kernel, handlerScope } = bound;
9
9
  const bind = (req) => bound.bind(nodeRequest(req));
10
- const scopeOf = (req) => bound.scopeOf(nodeRequest(req));
11
- const permdock = async (req) => kernel.permdock(bind(req), await scopeOf(req));
12
- const protect = ((permission, loadData, protectOptions) => async (req) => kernel.protect(permission, loadData === void 0 ? void 0 : () => loadData(nodeRequest(req)), protectOptions)(bind(req), await scopeOf(req)));
10
+ const getPermDock = (req) => bound.getPermDock(nodeRequest(req));
11
+ const protect = ((permission, data, protectOptions) => (req) => bound.guard(permission, data, nodeRequest(req), protectOptions));
13
12
  const permdockHandler = () => {
14
13
  const { POST, GET } = kernel.permdockHandler(handlerScope);
15
14
  return async (req, res) => {
@@ -21,14 +20,13 @@ function createPermDock(policy, options) {
21
20
  };
22
21
  };
23
22
  return {
24
- permdock,
23
+ getPermDock,
25
24
  protect,
26
25
  send: sendResponse,
27
26
  permdockHandler,
28
27
  toRequest,
29
- fromResponse,
30
28
  openapi: kernel.openapi
31
29
  };
32
30
  }
33
31
  //#endregion
34
- export { InvalidSignatureError, createPermDock, discoverViaSignatureAgent, fromResponse, isServerResponse, sendResponse, toRequest, verifyWebBotAuth };
32
+ export { InvalidSignatureError, createPermDock, discoverViaSignatureAgent, isServerResponse, sendResponse, toRequest, webBotAuthVerifier };
@@ -0,0 +1,126 @@
1
+ import { t as compact } from "./compact-CAf557ZB.js";
2
+ //#region src/core/ocsf.ts
3
+ /** The OCSF schema version `toOcsf` emits. */
4
+ const OCSF_VERSION = "1.9.0";
5
+ function status(outcome) {
6
+ switch (outcome) {
7
+ case "granted": return {
8
+ status_id: 1,
9
+ status: "Success"
10
+ };
11
+ case "denied": return {
12
+ status_id: 2,
13
+ status: "Failure"
14
+ };
15
+ case "approval-required": return {
16
+ status_id: 99,
17
+ status: "Approval Required"
18
+ };
19
+ default: return unknownStatus(outcome);
20
+ }
21
+ }
22
+ /** An outcome this build does not know, from a newer producer, is reported as OCSF Unknown. */
23
+ function unknownStatus(_outcome) {
24
+ return {
25
+ status_id: 0,
26
+ status: "Unknown"
27
+ };
28
+ }
29
+ /** The names of a decision event's app obligations, or `undefined` when it has none. */
30
+ function appObligationNames(event) {
31
+ const names = (event.obligations ?? []).flatMap((obligation) => obligation.kind === "app" ? [obligation.name] : []);
32
+ return names.length === 0 ? void 0 : names;
33
+ }
34
+ /** Epoch milliseconds of an RFC 3339 `at`, or `undefined` when it does not parse. */
35
+ function epochMillis(at) {
36
+ const time = Date.parse(at);
37
+ return Number.isNaN(time) ? void 0 : time;
38
+ }
39
+ /**
40
+ * Projects a decision or approval event onto OCSF Authorize Session; the event itself is unchanged.
41
+ * An event whose `at` does not parse has no OCSF `time` and projects to `undefined`.
42
+ */
43
+ function toOcsf(event) {
44
+ const time = epochMillis(event.at);
45
+ if (time === void 0) return;
46
+ const principal = event.subject.principal;
47
+ const actor = event.subject.actor;
48
+ const breakGlass = event.matched?.breakGlass === true;
49
+ const detail = event.outcome === "approval-required" ? "approval-required" : event.denials?.map((denial) => denial.reason).join(",");
50
+ return compact({
51
+ class_uid: 3003,
52
+ category_uid: 3,
53
+ activity_id: 1,
54
+ type_uid: 300301,
55
+ severity_id: breakGlass ? 4 : 1,
56
+ time,
57
+ ...status(event.outcome),
58
+ status_detail: detail === "" ? void 0 : detail,
59
+ message: `${event.permission} ${event.outcome}`,
60
+ privileges: [event.permission],
61
+ user: principal === null ? { name: "anonymous" } : { uid: principal.id },
62
+ actor: actor === void 0 ? void 0 : compact({
63
+ user: principal === null ? void 0 : { uid: principal.id },
64
+ app_name: actor.id
65
+ }),
66
+ metadata: compact({
67
+ version: OCSF_VERSION,
68
+ product: compact({
69
+ name: "PermDock",
70
+ vendor_name: "PermDock",
71
+ feature: event.adapter === void 0 ? void 0 : { name: event.adapter }
72
+ }),
73
+ tenant_uid: event.tenant,
74
+ correlation_uid: event.token
75
+ }),
76
+ unmapped: compact({
77
+ outcome: event.outcome,
78
+ scope: event.scope,
79
+ resource: event.resource,
80
+ call: event.call,
81
+ phase: event.phase,
82
+ role: event.matched?.role,
83
+ grant: event.matched?.name,
84
+ obligations: appObligationNames(event),
85
+ via: event.via,
86
+ breakGlass: breakGlass ? true : void 0,
87
+ purpose: event.purpose,
88
+ reason: event.reason
89
+ })
90
+ });
91
+ }
92
+ /** An access event whose `at` does not parse projects to `undefined`. */
93
+ function accessToOcsf(event) {
94
+ const time = epochMillis(event.at);
95
+ if (time === void 0) return;
96
+ const enable = event.operation === "started";
97
+ return compact({
98
+ class_uid: 3007,
99
+ category_uid: 3,
100
+ activity_id: enable ? 4 : 5,
101
+ type_uid: enable ? 300704 : 300705,
102
+ severity_id: 4,
103
+ time,
104
+ message: `support access ${event.operation}`,
105
+ user: { uid: event.principal.id },
106
+ actor: event.actor === void 0 ? void 0 : { user: { uid: event.actor.id } },
107
+ metadata: {
108
+ version: OCSF_VERSION,
109
+ product: {
110
+ name: "PermDock",
111
+ vendor_name: "PermDock"
112
+ },
113
+ tenant_uid: event.tenant
114
+ },
115
+ unmapped: compact({
116
+ operation: event.operation,
117
+ via: event.via,
118
+ roles: event.roles,
119
+ member: event.member,
120
+ grantedBy: event.grantedBy,
121
+ reason: event.reason
122
+ })
123
+ });
124
+ }
125
+ //#endregion
126
+ export { toOcsf as i, accessToOcsf as n, appObligationNames as r, OCSF_VERSION as t };
@@ -1,8 +1,8 @@
1
- import { C as Policy, D as PolicyVocabulary, Nr as Principal, kr as Delegation, ln as PermDock } from "../policy-IB6yxpC3.js";
2
- import { f as Permission } from "../permissions-DttnqqxC.js";
3
- import { c as ApprovalRequest, f as ApprovalStore } from "../types-aqOHTHcp.js";
4
- import { t as InstanceOptions } from "../instance-options-jARdwfPN.js";
5
- import { t as ToolMap } from "../types-Bvc4oWT6.js";
1
+ import { T as Policy, j as PolicyVocabulary, rr as Principal } from "../policy-types-DzwivBgR.js";
2
+ import { w as Permission } from "../vocabulary-D6lPdb4Z.js";
3
+ import { r as PermDock } from "../permdock-D7eeLJER.js";
4
+ import { u as ApprovalRequest } from "../types-CCpc2Dcv.js";
5
+ import { o as AgentAdapterOptions, t as AgentPermDock } from "../create-BDS7wc3y.js";
6
6
  //#region src/openai/create.d.ts
7
7
  /** The app context passed to `run(agent, input, { context })`. */
8
8
  type OpenAiContext = {
@@ -15,14 +15,7 @@ type OpenAiContext = {
15
15
  type OpenAiRunContext = {
16
16
  readonly context?: unknown;
17
17
  };
18
- type OpenAiPermDockOptions<TUser = unknown> = InstanceOptions & {
19
- readonly subject: (context: OpenAiContext) => TUser | Promise<TUser>;
20
- readonly actor?: (context: OpenAiContext) => unknown;
21
- readonly delegation?: (context: OpenAiContext) => Delegation | undefined | Promise<Delegation | undefined>;
22
- readonly tenant?: string | ((context: OpenAiContext) => string | undefined | Promise<string | undefined>);
23
- readonly tools: ToolMap;
24
- readonly store?: ApprovalStore;
25
- };
18
+ type OpenAiPermDockOptions<TUser = unknown> = AgentAdapterOptions<OpenAiContext, TUser>;
26
19
  type OpenAiTool = {
27
20
  readonly name: string;
28
21
  };
@@ -48,15 +41,15 @@ type OpenAiRunState<TItem> = {
48
41
  message?: string;
49
42
  }): unknown;
50
43
  };
51
- type OpenAiPermDock<V extends PolicyVocabulary = PolicyVocabulary> = {
44
+ type OpenAiPermDock<V extends PolicyVocabulary = PolicyVocabulary> = AgentPermDock<OpenAiContext, V> & {
52
45
  /** A `ToolApprovalFunction`: pass it as a tool's `needsApproval`. */
53
46
  readonly needsApproval: (permission: Permission) => (runContext: OpenAiRunContext | undefined, input: unknown, callId?: string) => Promise<boolean>;
54
47
  readonly guardTools: <T extends OpenAiTool>(tools: readonly T[], context: OpenAiContext) => Promise<readonly T[]>;
55
48
  readonly resolveInterruptions: <TItem extends OpenAiInterruption>(state: OpenAiRunState<TItem>, interruptions: readonly TItem[], options: {
56
49
  readonly context: OpenAiContext;
57
50
  }) => Promise<readonly ApprovalRequest[]>;
58
- readonly permdock: (context: OpenAiContext) => Promise<PermDock<V>>;
51
+ readonly getPermDock: (context: OpenAiContext) => Promise<PermDock<V>>;
59
52
  };
60
- export declare function createPermDock<TUser, TPrincipal extends Principal = Principal, V extends PolicyVocabulary = PolicyVocabulary>(policy: Policy<TUser, TPrincipal, V>, options: OpenAiPermDockOptions<TUser>): OpenAiPermDock<V>;
53
+ export declare function createPermDock<TUser, TPrincipal extends Principal = Principal, V extends PolicyVocabulary = PolicyVocabulary>(policy: Policy<TUser, TPrincipal, V>, given: OpenAiPermDockOptions<TUser>): OpenAiPermDock<V>;
61
54
  //#endregion
62
55
  export type { OpenAiContext, OpenAiInterruption, OpenAiPermDock, OpenAiPermDockOptions, OpenAiRunState, OpenAiTool };
@@ -1,7 +1,7 @@
1
- import { t as compact } from "../compact-y6vfu2_f.js";
2
- import { r as memoryApprovalStore } from "../store-DMAWwAJV.js";
3
- import { t as instanceOptions } from "../instance-options-Dhhcnm3y.js";
4
- import { n as createAgentKernel, t as approvalTokenOf } from "../kernel-_RRHmnMY.js";
1
+ import { t as compact } from "../compact-CAf557ZB.js";
2
+ import { c as withApp } from "../permdock-B9JxkBwC.js";
3
+ import { t as approvalTokenOf } from "../kernel-5JatXyND.js";
4
+ import { t as agentRuntime } from "../create-C3b4B5eF.js";
5
5
  //#region src/openai/create.ts
6
6
  function appContext(runContext) {
7
7
  const context = runContext?.context;
@@ -26,34 +26,25 @@ function parseCall(item) {
26
26
  return { ok: false };
27
27
  }
28
28
  }
29
- function createPermDock(policy, options) {
30
- const store = options.store ?? memoryApprovalStore();
31
- const kernel = createAgentKernel(policy, {
32
- ...compact({
33
- actor: options.actor,
34
- delegation: options.delegation,
35
- tenant: options.tenant
36
- }),
37
- ...instanceOptions(options),
38
- subject: options.subject,
39
- tools: options.tools,
40
- store,
41
- adapter: "openai"
42
- });
29
+ function createPermDock(policy, given) {
30
+ const options = withApp(policy, given);
31
+ const store = options.store;
32
+ const { agent, kernel } = agentRuntime(policy, options, "openai");
43
33
  const byPermission = /* @__PURE__ */ new Map();
44
- for (const [name, binding] of Object.entries(options.tools)) byPermission.set(binding.permission.key, name);
34
+ for (const [name, binding] of Object.entries(options.operations)) byPermission.set(binding.permission.key, name);
35
+ const passes = (toolName) => options.unmapped === "allow" && !Object.hasOwn(options.operations, toolName);
45
36
  const needsApproval = (permission) => async (runContext, input) => {
46
37
  const toolName = byPermission.get(permission.key);
47
38
  if (toolName === void 0) return true;
48
39
  const context = appContext(runContext);
49
- const binding = options.tools[toolName];
40
+ const binding = options.operations[toolName];
50
41
  if (binding === void 0) return true;
51
42
  const checked = await kernel.check(binding, input, context, { simulate: true });
52
43
  return !checked.ok || checked.raw.outcome !== "granted";
53
44
  };
54
45
  const guardTools = async (tools, context) => {
55
46
  const allowed = await kernel.allowedToolNames(context);
56
- return tools.filter((tool) => allowed.has(tool.name));
47
+ return tools.filter((tool) => allowed.has(tool.name) || passes(tool.name));
57
48
  };
58
49
  const resolveOne = async (state, item, context) => {
59
50
  const call = parseCall(item);
@@ -61,6 +52,7 @@ function createPermDock(policy, options) {
61
52
  await state.reject(item, { message: "Denied: unreadable tool call." });
62
53
  return null;
63
54
  }
55
+ if (passes(call.name)) return null;
64
56
  const verdict = await kernel.decideTool(call.name, call.args, context, compact({ resumeToken: approvalTokenOf(context) }));
65
57
  if (verdict.outcome === "granted") {
66
58
  await state.approve(item);
@@ -70,6 +62,7 @@ function createPermDock(policy, options) {
70
62
  await state.reject(item, { message: verdict.reason });
71
63
  return null;
72
64
  }
65
+ if (store === void 0) return null;
73
66
  try {
74
67
  return await store.get(verdict.token);
75
68
  } catch {
@@ -81,12 +74,12 @@ function createPermDock(policy, options) {
81
74
  for (const item of interruptions) resolved.push(await resolveOne(state, item, resolveOptions.context));
82
75
  return resolved.filter((record) => record !== null);
83
76
  };
84
- return {
77
+ return Object.freeze({
78
+ ...agent,
85
79
  needsApproval,
86
80
  guardTools,
87
- resolveInterruptions,
88
- permdock: (context) => kernel.instance(context)
89
- };
81
+ resolveInterruptions
82
+ });
90
83
  }
91
84
  //#endregion
92
85
  export { createPermDock };
@@ -1,6 +1,6 @@
1
- import { C as Policy, Ir as Condition, Nr as Principal } from "../policy-IB6yxpC3.js";
2
- import { f as Permission, m as PermissionTree } from "../permissions-DttnqqxC.js";
3
- import { a as ProblemDetails } from "../errors-DPdqI50v.js";
1
+ import { T as Policy, lr as Condition, rr as Principal } from "../policy-types-DzwivBgR.js";
2
+ import { E as PermissionTree, w as Permission } from "../vocabulary-D6lPdb4Z.js";
3
+ import { a as ProblemDetails } from "../errors-C2PXIv4c.js";
4
4
  import { StandardJSONSchemaV1, StandardSchemaV1 } from "@standard-schema/spec";
5
5
  //#region src/openapi/types.d.ts
6
6
  type OpenApiTarget = "3.1" | "3.2" | "3.3";
@@ -1,3 +1,3 @@
1
1
  import { n as GNAP_RESERVED, r as PROFILE_NAMES, t as DRAFT_PINS } from "../pins-8ILTftC9.js";
2
- import { a as operationPermissionsFromOpenApi, c as openapiVersion, i as operationPermissions, l as securitySchemesOf, n as securityFor, o as createPermDock, r as problemDetails, s as catalogOf, t as permissionsExtension } from "../openapi-BqRBvAng.js";
2
+ import { a as operationPermissionsFromOpenApi, c as openapiVersion, i as operationPermissions, l as securitySchemesOf, n as securityFor, o as createPermDock, r as problemDetails, s as catalogOf, t as permissionsExtension } from "../openapi-B7HZ0f-r.js";
3
3
  export { DRAFT_PINS, GNAP_RESERVED, PROFILE_NAMES, catalogOf, createPermDock, openapiVersion, operationPermissions, operationPermissionsFromOpenApi, permissionsExtension, problemDetails, securityFor, securitySchemesOf };
@@ -1,6 +1,6 @@
1
- import { t as compact } from "./compact-y6vfu2_f.js";
2
- import { _ as listPermissions, i as findPermission, p as isPermission } from "./permissions-DVoF6dMt.js";
3
- import { n as sha256 } from "./sha256-BO0swRXL.js";
1
+ import { r as isRecord, t as compact } from "./compact-CAf557ZB.js";
2
+ import { c as listPermissions, n as findPermission, o as isPermission } from "./permission-registry-Br4jSNVi.js";
3
+ import { r as sha256Digest } from "./sha256-D9ihqmvd.js";
4
4
  import { t as requiresApproval } from "./approval-required-TzNB9oQA.js";
5
5
  import { i as PROFILE_PARAMETERS, n as GNAP_RESERVED, r as PROFILE_NAMES, t as DRAFT_PINS } from "./pins-8ILTftC9.js";
6
6
  //#region src/openapi/emit.ts
@@ -188,13 +188,10 @@ function jsonPathString(value) {
188
188
  function operationTarget(operationId) {
189
189
  return `$.paths.*[?@.operationId == ${jsonPathString(operationId)}]`;
190
190
  }
191
- function hex(bytes) {
192
- return Array.from(bytes, (byte) => byte.toString(16).padStart(2, "0")).join("");
193
- }
194
- /** `sha256:` over the sorted permission keys and scopes, so the same catalog gives the same Overlay. */
191
+ /** The `sha-256:` digest of the sorted permission keys and scopes, so the same catalog gives the same Overlay. */
195
192
  function fingerprint(policy) {
196
193
  const lines = listPermissions(policy.permissions).map((leaf) => `${leaf.key} ${leaf.scope}`).toSorted();
197
- return `sha256:${hex(sha256(lines.join("\n")))}`;
194
+ return sha256Digest(lines.join("\n"));
198
195
  }
199
196
  function overlayOf(policy, options, overlayOptions = {}) {
200
197
  const version = overlayOptions.version ?? "1.1";
@@ -402,9 +399,6 @@ function operationPermissions(operations, options = {}) {
402
399
  }
403
400
  };
404
401
  }
405
- function isRecord(value) {
406
- return value !== null && typeof value === "object" && !Array.isArray(value);
407
- }
408
402
  /**
409
403
  * The operation permissions an OpenAPI document declares: every operation
410
404
  * whose `x-permdock-permissions` names exactly one permission of `tree`, keyed
@@ -459,7 +453,10 @@ const JSON_SCHEMA = Object.freeze({
459
453
  maximum: 599
460
454
  },
461
455
  detail: { type: "string" },
462
- instance: { type: "string" },
456
+ instance: {
457
+ type: "string",
458
+ format: "uri-reference"
459
+ },
463
460
  permission: { type: "string" },
464
461
  scope: { type: "string" },
465
462
  reason: { type: "string" }
@@ -1,15 +1,16 @@
1
- import { n as validateOverlay, t as validateOpenapi } from "./openapi-schema--ARjyfQr.js";
2
- import { c as getResource, i as findPermission } from "./permissions-DVoF6dMt.js";
3
- import { a as definePolicy } from "./policy-xyWg7QdR.js";
4
- import { a as loadModule, n as asPolicy, o as pickNamed, t as asPermissionTree } from "./load-DhWEB9P1.js";
5
- import { t as shortDiff } from "./text-diff-BdkkYSbi.js";
6
- import { c as openapiVersion, o as createPermDock } from "./openapi-BqRBvAng.js";
7
- import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
8
- import { dirname, resolve } from "node:path";
9
- //#region src/cli/openapi.ts
10
- function isRecord(value) {
11
- return value !== null && typeof value === "object" && !Array.isArray(value);
12
- }
1
+ import { r as isRecord } from "./compact-CAf557ZB.js";
2
+ import { a as getResource, n as findPermission } from "./permission-registry-Br4jSNVi.js";
3
+ import { n as definePolicy } from "./policy-DLZJ5gAp.js";
4
+ import { i as configError } from "./errors-CWTY6uih.js";
5
+ import { i as readJsonFile, s as writeFileEnsuringDir } from "./files-D_JIzUrP.js";
6
+ import { a as loadModule, n as asPolicy, s as pickNamed, t as asPermissionTree } from "./load-DFS_ry0W.js";
7
+ import { t as shortDiff } from "./text-diff-BQcUapOb.js";
8
+ import { c as openapiVersion, o as createPermDock } from "./openapi-B7HZ0f-r.js";
9
+ import { i as fileDrift } from "./output-files-DhRBBE4n.js";
10
+ import { n as validateOverlay, t as validateOpenapi } from "./schema-yLuBWWsh.js";
11
+ import { existsSync } from "node:fs";
12
+ import { resolve } from "node:path";
13
+ //#region src/cli/openapi/openapi.ts
13
14
  function mergeRecord(base, extra) {
14
15
  const result = {};
15
16
  for (const [key, value] of Object.entries(base)) result[key] = value;
@@ -52,7 +53,7 @@ async function loadPolicy(cwd, config, from) {
52
53
  return asPolicy(pickNamed(await loadModule(abs), ["policy"]));
53
54
  }
54
55
  const permissionsPath = config.permissions;
55
- if (permissionsPath === void 0) throw new Error("PermDock CLI: openapi needs --from, policy or permissions in the config");
56
+ if (permissionsPath === void 0) throw configError("PermDock CLI: openapi emit needs --policy, or policy or permissions in the config");
56
57
  const tree = asPermissionTree(pickNamed(await loadModule(resolve(cwd, permissionsPath)), ["permissions"]));
57
58
  return definePolicy(tree, {
58
59
  roles: [],
@@ -63,7 +64,7 @@ function leavesOf(policy, keys) {
63
64
  return keys.map((key) => {
64
65
  if (typeof key !== "string") throw new TypeError("PermDock CLI: x-permdock-permissions must be strings");
65
66
  const leaf = findPermission(policy.permissions, key);
66
- if (leaf === void 0) throw new Error(`PermDock CLI: unknown permission '${key}'`);
67
+ if (leaf === void 0) throw configError(`PermDock CLI: unknown permission '${key}'`);
67
68
  return leaf;
68
69
  });
69
70
  }
@@ -192,7 +193,7 @@ async function runOpenapi(input) {
192
193
  };
193
194
  let parsed;
194
195
  try {
195
- parsed = JSON.parse(readFileSync(docPath, "utf8"));
196
+ parsed = readJsonFile(docPath);
196
197
  } catch {
197
198
  return {
198
199
  code: 2,
@@ -223,27 +224,23 @@ async function runOpenapi(input) {
223
224
  output: conformance
224
225
  };
225
226
  const text = stableJson(result);
226
- const outPath = resolve(input.cwd, input.out ?? input.doc);
227
+ const outFile = input.out ?? input.doc;
228
+ const outPath = resolve(input.cwd, outFile);
227
229
  if (input.check) {
228
- if (!existsSync(outPath)) return {
229
- code: 1,
230
- output: `openapi drift: missing ${input.out ?? input.doc}`
231
- };
232
- const current = readFileSync(outPath, "utf8");
233
- if (current === text) return {
230
+ const found = fileDrift(outPath, text);
231
+ if (found === void 0) return {
234
232
  code: 0,
235
233
  output: "openapi up to date"
236
234
  };
237
235
  return {
238
236
  code: 1,
239
- output: `openapi drift\n${shortDiff(input.out ?? input.doc, current, text)}`
237
+ output: found.kind === "missing" ? `openapi drift: missing ${outFile}` : `openapi drift\n${shortDiff(outFile, found.onDisk, text)}`
240
238
  };
241
239
  }
242
- mkdirSync(dirname(outPath), { recursive: true });
243
- writeFileSync(outPath, text);
240
+ writeFileEnsuringDir(outPath, text);
244
241
  return {
245
242
  code: 0,
246
- output: `wrote ${input.out ?? input.doc}`
243
+ output: `wrote ${outFile}`
247
244
  };
248
245
  }
249
246
  //#endregion
@@ -0,0 +1,138 @@
1
+ import { c as missingInput } from "./errors-CWTY6uih.js";
2
+ import { t as defineLeaf } from "./command-L8EstFNm.js";
3
+ import { c as given, d as policyFlag, f as validatorFlag, l as outFlag, o as fileOut, t as checkFlag } from "./flags-C3DktBDY.js";
4
+ //#region src/cli/commands/openapi.ts
5
+ const docFlag = { doc: {
6
+ type: "string",
7
+ description: "OpenAPI document: a path, or a URL for import",
8
+ valueHint: "path"
9
+ } };
10
+ const emit = defineLeaf({
11
+ flags: {
12
+ ...docFlag,
13
+ ...outFlag,
14
+ ...checkFlag,
15
+ ...policyFlag,
16
+ target: {
17
+ type: "enum",
18
+ options: [
19
+ "3.1",
20
+ "3.2",
21
+ "3.3"
22
+ ],
23
+ default: "3.2",
24
+ description: "OpenAPI version; 3.3 is the pinned Security Profiles draft"
25
+ },
26
+ kind: {
27
+ type: "enum",
28
+ options: ["document", "overlay"],
29
+ default: "document",
30
+ description: "A full document or an Overlay"
31
+ },
32
+ overlay: {
33
+ type: "enum",
34
+ options: ["1.1", "1.2"],
35
+ default: "1.1",
36
+ description: "Overlay version; 1.2 is the pinned reusable-actions draft"
37
+ },
38
+ profile: {
39
+ type: "enum",
40
+ options: ["fapi2"],
41
+ description: "Security profile to declare"
42
+ },
43
+ "profile-scheme": {
44
+ type: "string",
45
+ description: "Security scheme name for the profile",
46
+ valueHint: "name"
47
+ },
48
+ scheme: {
49
+ type: "string",
50
+ description: "OAuth security scheme name (default permdockOAuth)",
51
+ valueHint: "name"
52
+ },
53
+ "metadata-url": {
54
+ type: "string",
55
+ description: "OAuth authorization server metadata URL",
56
+ valueHint: "url"
57
+ },
58
+ "device-flow": {
59
+ type: "boolean",
60
+ description: "Declare the device authorization flow"
61
+ },
62
+ arity: {
63
+ type: "boolean",
64
+ description: "Mark instance and collection operations"
65
+ },
66
+ "authorization-url": {
67
+ type: "string",
68
+ description: "OAuth authorization endpoint",
69
+ valueHint: "url"
70
+ },
71
+ "token-url": {
72
+ type: "string",
73
+ description: "OAuth token endpoint",
74
+ valueHint: "url"
75
+ },
76
+ "device-authorization-url": {
77
+ type: "string",
78
+ description: "OAuth device authorization endpoint",
79
+ valueHint: "url"
80
+ }
81
+ },
82
+ async run(ctx, { flags }) {
83
+ return (await import("./openapi-DTaEmTSW.js")).runOpenapi({
84
+ cwd: ctx.cwd,
85
+ config: ctx.config,
86
+ rest: ["emit"],
87
+ doc: given(flags.doc),
88
+ out: fileOut("openapi emit", flags.out),
89
+ from: given(flags.policy),
90
+ target: flags.target,
91
+ format: flags.kind,
92
+ overlay: flags.overlay,
93
+ check: flags.check,
94
+ profile: flags.profile,
95
+ profileScheme: given(flags["profile-scheme"]),
96
+ scheme: given(flags.scheme) ?? "permdockOAuth",
97
+ metadataUrl: given(flags["metadata-url"]),
98
+ deviceFlow: flags["device-flow"],
99
+ arity: flags.arity,
100
+ authorizationUrl: given(flags["authorization-url"]),
101
+ tokenUrl: given(flags["token-url"]),
102
+ deviceAuthorizationUrl: given(flags["device-authorization-url"]),
103
+ io: ctx.io
104
+ });
105
+ }
106
+ });
107
+ const importDocument = defineLeaf({
108
+ flags: {
109
+ ...docFlag,
110
+ ...outFlag,
111
+ ...validatorFlag,
112
+ map: {
113
+ type: "string",
114
+ description: "JSON mapping of operations to permissions",
115
+ valueHint: "json"
116
+ },
117
+ annotate: {
118
+ type: "boolean",
119
+ description: "Write x-permdock-permissions back into the document"
120
+ }
121
+ },
122
+ async run(ctx, { flags }) {
123
+ const doc = given(flags.doc);
124
+ if (doc === void 0) throw missingInput("openapi import", ["--doc"], "the OpenAPI document to import");
125
+ const { runOpenapiImport } = await import("./import-CNV7I2Dw.js");
126
+ return runOpenapiImport({
127
+ cwd: ctx.cwd,
128
+ doc,
129
+ out: fileOut("openapi import", flags.out),
130
+ schema: flags.validator,
131
+ map: given(flags.map),
132
+ annotate: flags.annotate,
133
+ io: ctx.io
134
+ });
135
+ }
136
+ });
137
+ //#endregion
138
+ export { emit, importDocument };