permdock 0.6.0 → 0.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (507) hide show
  1. package/README.md +2 -3
  2. package/dist/{2020-C9VN-x8c.js → 2020-CJbO8Bvz.js} +1 -3
  3. package/dist/a2a/index.d.ts +7 -7
  4. package/dist/a2a/index.js +9 -9
  5. package/dist/action-result-CL-QCITA.d.ts +19 -0
  6. package/dist/{adapter-context-CRhqyzCk.js → adapter-context-CIQpQxbE.js} +8 -2
  7. package/dist/{adoption-scan-DCYe60Pi.js → adoption-scan-BLs67P1l.js} +5 -5
  8. package/dist/agent/index.d.ts +3 -3
  9. package/dist/agent/index.js +1 -1
  10. package/dist/ai-sdk/index.d.ts +31 -10
  11. package/dist/ai-sdk/index.js +22 -12
  12. package/dist/{app-data-MuyzVqX8.js → app-data-UNNm07jV.js} +10 -7
  13. package/dist/{approval-header-CJACtHkv.js → approval-header-8QV6MU4H.js} +6 -3
  14. package/dist/{approval-prompt-Dg5LeAcT.js → approval-prompt-B8hQY69x.js} +5 -6
  15. package/dist/{approval-prompt-DvSSPQJX.d.ts → approval-prompt-PYagyQUj.d.ts} +13 -11
  16. package/dist/approvals/index.d.ts +5 -5
  17. package/dist/approvals/index.js +7 -7
  18. package/dist/{approvals-p1PGoVjb.js → approvals-DnIBTuXE.js} +128 -78
  19. package/dist/{approvers-CqPOLD-o.js → approvers-B4r0N_Uz.js} +8 -2
  20. package/dist/{arazzo-41WuzHou.js → arazzo-3RhGfkAK.js} +2 -2
  21. package/dist/{arazzo-CaUVBn7D.js → arazzo-B5-ulWif.js} +6 -6
  22. package/dist/{args-IIolxxKA.js → args-0FrVs5EH.js} +125 -8
  23. package/dist/astro/index.d.ts +30 -12
  24. package/dist/astro/index.js +2 -2
  25. package/dist/{audience-DabClFLQ.js → audience-BAkBDMqn.js} +8 -8
  26. package/dist/{auth-DRLEizbL.js → auth--yPyZNgr.js} +21 -10
  27. package/dist/authzen/index.d.ts +171 -25
  28. package/dist/authzen/index.js +321 -149
  29. package/dist/{automation-BNM3TtDo.d.ts → automation-DqEoWHBc.d.ts} +42 -32
  30. package/dist/{automation-DVjOckjV.js → automation-x3KEUusw.js} +22 -21
  31. package/dist/base-url-BQbddZO5.js +9 -0
  32. package/dist/better-auth/index.d.ts +2 -2
  33. package/dist/better-auth/index.js +13 -7
  34. package/dist/better-supabase/index.d.ts +392 -220
  35. package/dist/better-supabase/index.js +293 -152
  36. package/dist/{bind-DOyrv6zi.d.ts → bind-Cp2hBHzP.d.ts} +27 -12
  37. package/dist/{bind-CAvgUuKs.js → bind-D_sZSVA3.js} +22 -10
  38. package/dist/{body-CH5of8Ne.js → body-CJQwYVa8.js} +3 -3
  39. package/dist/{body-text-QcXok_SI.js → body-text-DQhcmqdY.js} +8 -4
  40. package/dist/{boundary-BM8a_P6E.js → boundary-BV3O1eud.js} +8 -2
  41. package/dist/{boundary-BmHxVH1J.d.ts → boundary-C9ck-3uK.d.ts} +13 -4
  42. package/dist/{budget-NbEtbJC_.js → budget-BELja5A9.js} +6 -3
  43. package/dist/{budget-JqcRqyhK.d.ts → budget-hYsPz_yE.d.ts} +6 -3
  44. package/dist/{build-instance-Bu_eDqYw.js → build-instance-CNWaYJyr.js} +3 -3
  45. package/dist/{canonical-json-BC8_nMTw.js → canonical-json-DwilZ1iB.js} +6 -3
  46. package/dist/{capability-N1K9IpqS.js → capability-BqX94r07.js} +31 -25
  47. package/dist/{capability-Drg-1YhL.d.ts → capability-ChuiONQU.d.ts} +41 -29
  48. package/dist/{casbin-Dyu2gnUD.js → casbin-H0rKxBx2.js} +16 -8
  49. package/dist/{casbin-Cr7RLtA3.js → casbin-cbSbhT_k.js} +2 -2
  50. package/dist/{casl-64gpT-8x.js → casl-C4OINZHI.js} +2 -2
  51. package/dist/{casl-DjEDhTCP.js → casl-CHHoCldP.js} +19 -10
  52. package/dist/catalog/index.d.ts +104 -23
  53. package/dist/catalog/index.js +117 -8
  54. package/dist/{catalog-HD2gf5mY.js → catalog-BFpz2EmT.js} +57 -26
  55. package/dist/{catalog-DZVbrF-z.js → catalog-DCspHDc8.js} +3 -3
  56. package/dist/{catalog-doc-Cdn7-0pQ.js → catalog-doc-DjMKzJp9.js} +53 -16
  57. package/dist/{catalog-fingerprint-CCP0-yQS.js → catalog-fingerprint-e6aCWosn.js} +19 -15
  58. package/dist/catalog-mRQQQhNK.js +1 -0
  59. package/dist/catalog-operations-Dadrl7Z-.js +60 -0
  60. package/dist/{create-CQWIpUG-.js → challenge-DImNcR7B.js} +157 -39
  61. package/dist/chat/index.d.ts +1 -1
  62. package/dist/chat/index.js +13 -10
  63. package/dist/chat-sdk/index.d.ts +44 -26
  64. package/dist/chat-sdk/index.js +17 -17
  65. package/dist/checks-CGkP3Z7A.js +40 -0
  66. package/dist/{claims-map-7oQ3ue4X.js → claims-map-CKkoAAYF.js} +5 -2
  67. package/dist/{claims-map-Ca-QX8C6.d.ts → claims-map-D1Pb5oRq.d.ts} +8 -5
  68. package/dist/claude-agent/index.d.ts +6 -6
  69. package/dist/claude-agent/index.js +6 -3
  70. package/dist/clerk/index.d.ts +11 -7
  71. package/dist/clerk/index.js +6 -6
  72. package/dist/cli/bin.js +4 -4
  73. package/dist/cli/index.d.ts +82 -7
  74. package/dist/cli/index.js +6 -6
  75. package/dist/{clients-C7zLFuWT.d.ts → clients-C_NOET3z.d.ts} +5 -5
  76. package/dist/{clients-DjU5ABMy.js → clients-DYr3U86j.js} +3 -3
  77. package/dist/cloud/index.d.ts +186 -38
  78. package/dist/cloud/index.js +293 -31
  79. package/dist/{cloud-ytQ3uviA.js → cloud-BFlGMaak.js} +5 -6
  80. package/dist/{codemod-5mpSpnUY.js → codemod-DLQ9Zpo4.js} +3 -4
  81. package/dist/{codemod-ua2hHy7w.js → codemod-DWSN2erG.js} +523 -201
  82. package/dist/collect-B5BL3klN.js +1 -0
  83. package/dist/{collect-mLTY4nwb.js → collect-B7ZFAJU3.js} +36 -64
  84. package/dist/{collect-Ci6akVwH.js → collect-Bzv3le0A.js} +6 -6
  85. package/dist/{compare-pfyVnBjE.js → compare-DTfyUunF.js} +2 -2
  86. package/dist/compile/index.d.ts +2 -2
  87. package/dist/compile/index.js +1 -1
  88. package/dist/{compile-1bsAezL0.d.ts → compile-BFzysW3o.d.ts} +36 -12
  89. package/dist/{compile-CMqMx_IN.js → compile-EzEMB-7v.js} +77 -33
  90. package/dist/{completion-BTFrHZhX.js → completion-saoYiRFO.js} +17 -8
  91. package/dist/config-BwPBfN0t.js +108 -0
  92. package/dist/{config-Bj2Ixq3d.js → config-DBeXXmBF.js} +2 -2
  93. package/dist/{config-report-DSpsLpCE.js → config-report-BipSWA6V.js} +9 -6
  94. package/dist/config-shape-ykV0Vm2n.js +134 -0
  95. package/dist/{connection-DjhIJSs2.js → connection-B72dg5Q2.js} +23 -22
  96. package/dist/connector-schema-CYLQNMYq.js +434 -0
  97. package/dist/{context-B_u3_bDJ.js → context-BnIzxTNE.js} +4 -3
  98. package/dist/convex/index.d.ts +13 -7
  99. package/dist/convex/index.js +9 -6
  100. package/dist/core-H-mbhpZc.js +341 -0
  101. package/dist/core-hWIARPDz.d.ts +206 -0
  102. package/dist/{create-CBMmFie-.d.ts → create-BSNrVuxh.d.ts} +87 -34
  103. package/dist/{create-B30OMUOJ.d.ts → create-BVq1lNQE.d.ts} +49 -28
  104. package/dist/{create-D_NmPOdH.d.ts → create-CM1FciYG.d.ts} +37 -29
  105. package/dist/{create-CGm28gyI.js → create-Cq4Uox0f.js} +13 -9
  106. package/dist/{create-DCF2SvoT.js → create-_noSrY1T.js} +15 -21
  107. package/dist/{credential-BcoiejpY.js → credential-CyyyvCsL.js} +42 -39
  108. package/dist/{credentials-DPyHmYz5.js → credentials-CdDxp7jN.js} +6 -6
  109. package/dist/{deciding-columns-Sq12mEA6.js → deciding-columns-NB4wcyBf.js} +13 -2
  110. package/dist/{delegation-j6-rc37o.js → delegation-CDB6_keF.js} +31 -22
  111. package/dist/delivery/index.d.ts +5 -5
  112. package/dist/delivery/index.js +6 -5
  113. package/dist/{delivery-DCAgNyCn.js → delivery-BupfvJIV.js} +81 -20
  114. package/dist/{delivery-event-xX4obB8F.js → delivery-event-JioK5YbS.js} +6 -6
  115. package/dist/denied-text-CHNlVInN.d.ts +22 -0
  116. package/dist/{describe-BybMRY7A.js → describe-Bb4hGK5d.js} +6 -5
  117. package/dist/{describe-B5qgDvEW.d.ts → describe-ByS9LgHK.d.ts} +5 -5
  118. package/dist/{device-BARQ8eYG.js → device-BwbJNmb2.js} +11 -8
  119. package/dist/{diff-CmuSD3vc.js → diff-CN8IYhC_.js} +2 -2
  120. package/dist/{diff-3jbx6Rm4.js → diff-iZWV65nC.js} +23 -14
  121. package/dist/{digest-B3kc_PgQ.d.ts → digest-8Yx2CchM.d.ts} +3 -3
  122. package/dist/{doctor-BdZw53-k.js → doctor-CHD1M9R5.js} +485 -141
  123. package/dist/{doctor-3ZqNHX_G.js → doctor-D3wo-yuz.js} +4 -4
  124. package/dist/drizzle/index.d.ts +33 -19
  125. package/dist/drizzle/index.js +17 -9
  126. package/dist/elysia/index.d.ts +17 -11
  127. package/dist/elysia/index.js +5 -5
  128. package/dist/{errors-BKy0EfhN.js → errors-B6R_lg2a.js} +13 -4
  129. package/dist/{errors-BWXBMaKK.d.ts → errors-CHwoRRpB.d.ts} +4 -1
  130. package/dist/{errors-CWTY6uih.js → errors-Vpu6rKHl.js} +14 -10
  131. package/dist/{errors-DH5QEGXh.d.ts → errors-zi_4T-rx.d.ts} +22 -6
  132. package/dist/{evaluate-CNClBvcj.js → evaluate-Dd8Ta0Ie.js} +185 -80
  133. package/dist/{evaluations-beAooV0n.js → evaluations-IBceAeKT.js} +41 -20
  134. package/dist/{evaluations-C_1vdSZc.d.ts → evaluations-z8dQFDaN.d.ts} +12 -6
  135. package/dist/eve/index.d.ts +9 -6
  136. package/dist/eve/index.js +4 -4
  137. package/dist/{event-time-CsegxXxB.js → event-time-BGy48400.js} +8 -4
  138. package/dist/{expiry-D4_YKRKD.js → expiry-6XByK0dm.js} +8 -5
  139. package/dist/express/index.d.ts +9 -6
  140. package/dist/express/index.js +9 -6
  141. package/dist/fastify/index.d.ts +16 -10
  142. package/dist/fastify/index.js +8 -5
  143. package/dist/{fetch-adapter-Dw0MTS3D.d.ts → fetch-adapter-C1DCvpqV.d.ts} +9 -6
  144. package/dist/{fetch-adapter-DD_gfmrC.js → fetch-adapter-JL43jD3E.js} +14 -11
  145. package/dist/fields-D0vUI6dq.js +498 -0
  146. package/dist/{files-C5ZI27eV.js → files-B3AA05f1.js} +21 -5
  147. package/dist/{files-D_JIzUrP.js → files-BSjrtIHw.js} +11 -4
  148. package/dist/{fixtures-B7XrLeY7.js → fixtures-A1_sp_tR.js} +15 -6
  149. package/dist/{flags-C3DktBDY.js → flags-DXjoTVbS.js} +2 -2
  150. package/dist/{freeze-CrU8nQeX.js → freeze-jjan0lCv.js} +4 -1
  151. package/dist/{from-snapshot-CTCMsFZk.js → from-snapshot-DCakWRsr.js} +26 -16
  152. package/dist/gen-B5kvbAoZ.js +58 -0
  153. package/dist/gen-DWCYcMQM.js +827 -0
  154. package/dist/generate-CRVV5V7l.js +165 -0
  155. package/dist/generate-CezbCaTI.js +275 -0
  156. package/dist/{grantee-hxrUsbpM.js → grantee-Dke-9rd1.js} +4 -4
  157. package/dist/{grantee-conditions-CcXf8hMM.js → grantee-conditions-BrYPe-w0.js} +12 -12
  158. package/dist/{grantee-match-DbENBHLB.js → grantee-match-7RZZvoT_.js} +12 -6
  159. package/dist/{graph-sql-B-dsAT6j.d.ts → graph-sql-BwFC4Qjs.d.ts} +3 -3
  160. package/dist/h3/index.d.ts +10 -7
  161. package/dist/h3/index.js +3 -3
  162. package/dist/headers-B9jQxjtW.d.ts +10 -0
  163. package/dist/{helpers-CBYVMjwh.js → helpers-DJicaG6f.js} +40 -28
  164. package/dist/hono/index.d.ts +16 -10
  165. package/dist/hono/index.js +5 -5
  166. package/dist/{hosted-BPk51-kX.d.ts → hosted-Cmtxogd0.d.ts} +44 -20
  167. package/dist/{hosted-B46-5LYE.js → hosted-D0IzESu_.js} +68 -25
  168. package/dist/{http-ujKm0JXE.js → http-DH94eh6f.js} +4 -4
  169. package/dist/{http-BBoKefeS.js → http-DKLXrFGk.js} +13 -7
  170. package/dist/{http-DXJ37RDA.js → http-DOL33cO0.js} +11 -8
  171. package/dist/{import-wyqXUyjm.js → import-CST57XLp.js} +64 -51
  172. package/dist/{import-CNV7I2Dw.js → import-_YqhhwvX.js} +6 -6
  173. package/dist/{index-B8YjkEZ4.d.ts → index-B8s204GL.d.ts} +64 -52
  174. package/dist/{index-Ch8LpNDp.d.ts → index-BT5-1VsX.d.ts} +64 -25
  175. package/dist/{index-DuWxc5dt.d.ts → index-BW_0MZOS.d.ts} +388 -149
  176. package/dist/index-BhxEUY9J.d.ts +233 -0
  177. package/dist/index-Bv5iXPqU.d.ts +210 -0
  178. package/dist/{index-C-6Letxg.d.ts → index-_9UiQIkt.d.ts} +164 -77
  179. package/dist/index.d.ts +22 -21
  180. package/dist/index.js +35 -33
  181. package/dist/{init-GG6Jh8HD.js → init-Dz_PsHdv.js} +5 -5
  182. package/dist/{init-DeMYsnYJ.js → init-cE3A8aXq.js} +10 -10
  183. package/dist/{instance-options-BsVpyGIk.d.ts → instance-options-B0KXqTrJ.d.ts} +4 -4
  184. package/dist/{instance-snapshot-BOEhcqIF.js → instance-snapshot--JWiTrvO.js} +81 -56
  185. package/dist/{instant-BluqDvyS.js → instant-DK3Iz83e.js} +2 -2
  186. package/dist/{internals-Dk8A8fX3.js → internals-B3IgHrvo.js} +6 -3
  187. package/dist/{json-schema-B-vAwlde.js → json-schema-BPGa-RjQ.js} +9 -3
  188. package/dist/{json-schema-CN_iLFH2.d.ts → json-schema-BfXgnRNT.d.ts} +4 -4
  189. package/dist/jwt/index.d.ts +125 -17
  190. package/dist/jwt/index.js +157 -16
  191. package/dist/{kernel-D0NVb1cK.js → kernel-C-fYydV2.js} +151 -16
  192. package/dist/kysely/index.d.ts +49 -33
  193. package/dist/kysely/index.js +9 -7
  194. package/dist/{live-options-BaAFCIiu.js → live-options-BBIT68le.js} +2 -2
  195. package/dist/{load-DFS_ry0W.js → load-DjSU5KXO.js} +6 -6
  196. package/dist/load-Dm0pSYH3.js +1 -0
  197. package/dist/{login-Dfe5RlYk.js → login-D-8tMqzo.js} +4 -4
  198. package/dist/{login-imhuwvn3.js → login-DplQ0s84.js} +18 -15
  199. package/dist/{manifest-dvL2XEe1.js → manifest-Cgiq5oqc.js} +67 -37
  200. package/dist/{manifest-mx5ghSFM.d.ts → manifest-CzzWtnAb.d.ts} +144 -28
  201. package/dist/{manifest-schema-C0kK_8V0.js → manifest-schema-2r37XRhD.js} +80 -9
  202. package/dist/{manifest-C8IzW3Do.js → manifest-wg8WkkpD.js} +11 -7
  203. package/dist/{map-claims-D3oRmTk0.js → map-claims-BNWCJtmP.js} +27 -18
  204. package/dist/{map-error-Dr70oA_3.js → map-error-pasIGqMT.js} +7 -7
  205. package/dist/{markers-C6joDI3o.js → markers-BeHZ4x9Q.js} +20 -5
  206. package/dist/mcp/index.d.ts +154 -47
  207. package/dist/mcp/index.js +200 -41
  208. package/dist/{migrate-CIq4-E9F.js → migrate-B7oP_sQU.js} +102 -31
  209. package/dist/module-values-BJTBdo6y.js +107 -0
  210. package/dist/nest/index.d.ts +23 -13
  211. package/dist/nest/index.js +18 -11
  212. package/dist/next/client.d.ts +5 -2
  213. package/dist/next/client.js +1 -1
  214. package/dist/next/index.d.ts +72 -26
  215. package/dist/next/index.js +110 -6
  216. package/dist/next/plugin.d.ts +1 -1
  217. package/dist/next/plugin.js +4 -3
  218. package/dist/node/index.d.ts +5 -5
  219. package/dist/node/index.js +3 -3
  220. package/dist/{ocsf-BFp-PZZA.js → ocsf-TcjRBgIs.js} +15 -5
  221. package/dist/openai/index.d.ts +13 -7
  222. package/dist/openai/index.js +3 -3
  223. package/dist/openapi/index.d.ts +61 -30
  224. package/dist/openapi/index.js +2 -2
  225. package/dist/{openapi-B7HZ0f-r.js → openapi-BOsx0xn9.js} +34 -24
  226. package/dist/{openapi-C4dDTVEd.js → openapi-CBZUhA3l.js} +4 -5
  227. package/dist/{openapi-DD1SV-5-.js → openapi-VeHHU2l9.js} +23 -14
  228. package/dist/{operation-findings-DgATDpvh.js → operation-findings-CXtFzlKJ.js} +3 -3
  229. package/dist/{operations-X0VM7F3m.d.ts → operations-Ci_rT6Uo.d.ts} +10 -7
  230. package/dist/orpc/index.d.ts +68 -14
  231. package/dist/orpc/index.js +62 -13
  232. package/dist/otel/index.d.ts +7 -4
  233. package/dist/otel/index.js +8 -5
  234. package/dist/output-files-BHOIlrfD.js +1 -0
  235. package/dist/{output-files-DhRBBE4n.js → output-files-BIQ_9pIs.js} +29 -17
  236. package/dist/{output-1im__-08.js → output-tkju6U7R.js} +15 -7
  237. package/dist/ownership-B4L59T9u.js +1054 -0
  238. package/dist/parse-1_ZheTW5.js +151 -0
  239. package/dist/parse-local-manifest-BQhTlLQS.d.ts +10 -0
  240. package/dist/parse-local-manifest-DEiCF4ah.js +69 -0
  241. package/dist/{parse-request-D_tUXG6M.js → parse-request-CwCZpyjV.js} +7 -8
  242. package/dist/{paths-DXSHAMIa.js → paths-CUvURzHp.js} +4 -1
  243. package/dist/pdp/index.d.ts +9 -6
  244. package/dist/pdp/index.js +23 -12
  245. package/dist/{peer-CRvC7Hg1.js → peer-C9LvBCcb.js} +1 -1
  246. package/dist/peer-Q0fuZ6hx.js +982 -0
  247. package/dist/{permdock-SV8ZINYT.d.ts → permdock-B6Sf4T_S.d.ts} +270 -117
  248. package/dist/{permdock-BrAscV28.js → permdock-L-_I_3zP.js} +226 -74
  249. package/dist/{permission-registry-Br4jSNVi.js → permission-registry-B8tYxPIt.js} +24 -11
  250. package/dist/{vocabulary-CN8H_9UF.d.ts → permission-types-CAY-GU7e.d.ts} +130 -104
  251. package/dist/{permissions-u_KHg-sN.d.ts → permissions-Bx6UI8n1.d.ts} +6 -2
  252. package/dist/{permissions-B-wCP5ZC.js → permissions-CVXmRILq.js} +3 -3
  253. package/dist/{permissions-BPxlwVhN.js → permissions-mDcTWoBs.js} +8 -5
  254. package/dist/pg-DQTqRrou.js +60 -0
  255. package/dist/{pins-8ILTftC9.js → pins-nqarl3oE.js} +4 -1
  256. package/dist/pkce-CnmmYqUZ.js +21 -0
  257. package/dist/{policy-77FSAq_V.d.ts → policy-Ba4bDhaj.d.ts} +5 -5
  258. package/dist/{policy-DbM5YYtV.js → policy-CLQ8__GF.js} +49 -20
  259. package/dist/{policy-from-catalog-C2gMa2Dj.js → policy-from-catalog-CJgOm6aq.js} +28 -25
  260. package/dist/{policy-module-CTlwMvLI.js → policy-module-xym9fnSq.js} +12 -6
  261. package/dist/{policy-types-n0uRTsW8.d.ts → policy-types-CCiDRZBH.d.ts} +802 -334
  262. package/dist/postgres-store-DcyrPS-r.js +1028 -0
  263. package/dist/{postgrest-DAjUkF9w.js → postgrest-D4nuPXIQ.js} +88 -36
  264. package/dist/{postgrest-CEgRbefE.d.ts → postgrest-DicQyqm-.d.ts} +60 -30
  265. package/dist/powersync-DHNQX06W.js +1117 -0
  266. package/dist/{powersync-DISt6SUe.js → powersync-DXqGuq9A.js} +3 -3
  267. package/dist/powersync-Djf-zCpB.js +1 -0
  268. package/dist/preset/index.d.ts +38 -28
  269. package/dist/preset/index.js +1 -1
  270. package/dist/{preset-DZdU0tne.js → preset-BjLzeFpp.js} +58 -34
  271. package/dist/{principal-source-pHneukrx.js → principal-source-C6N60GtM.js} +10 -10
  272. package/dist/prisma/index.d.ts +69 -41
  273. package/dist/prisma/index.js +21 -17
  274. package/dist/{problem-CTviyH5L.js → problem-BVLHFK33.js} +41 -21
  275. package/dist/{problem-details-cn5X30gZ.js → problem-details-CLDgX1KV.js} +13 -4
  276. package/dist/{problem-types-CJ2325SZ.js → problem-types-DSsRfONQ.js} +4 -1
  277. package/dist/prompt-BYc6drYW.js +938 -0
  278. package/dist/protected-action-BE7N_Luo.d.ts +58 -0
  279. package/dist/protected-action-DUYqb-Ma.js +80 -0
  280. package/dist/{protected-BlF0F6wL.js → protected-action-QEA8arRB.js} +48 -14
  281. package/dist/{provider-B1al-AZz.js → provider-C55OGXJ7.js} +5 -4
  282. package/dist/{provider-DILL9oPK.d.ts → provider-DXfq5c2d.d.ts} +1 -1
  283. package/dist/{provider-store-DM6DNcta.js → provider-store-CaTv00tr.js} +13 -9
  284. package/dist/pull-B65ndFNZ.js +1 -0
  285. package/dist/{pull-jEwbf80J.js → pull-CwpGaQSi.js} +12 -11
  286. package/dist/{push-BD4f15co.js → push-DgssgzkK.js} +62 -16
  287. package/dist/{pushed-policy-DCW91KQU.d.ts → pushed-policy-D1Eoi6NM.d.ts} +12 -6
  288. package/dist/{pushed-policy-CqtxkV4G.js → pushed-policy-ITwYKvvH.js} +10 -7
  289. package/dist/react/index.d.ts +9 -8
  290. package/dist/react/index.js +7 -6
  291. package/dist/react/provider-client.d.ts +1 -1
  292. package/dist/react/provider-client.js +1 -1
  293. package/dist/react-native/index.d.ts +104 -51
  294. package/dist/react-native/index.js +394 -67
  295. package/dist/{refs-K6eWUJ0H.js → refs-C8BKxc_e.js} +17 -3
  296. package/dist/{relation-walk-3OyDBF0S.js → relation-walk-DK_gkgL7.js} +12 -9
  297. package/dist/{relations-BnCWnJGI.js → relations-BxvRvDHK.js} +3 -3
  298. package/dist/{replay-Du1tJjG7.js → replay-BU09ad4L.js} +1 -1
  299. package/dist/{replay-Bkm-Ne4l.d.ts → replay-DNftIb_R.d.ts} +1 -1
  300. package/dist/{request-context-C81Pip9n.js → request-context-C25ilqiJ.js} +8 -8
  301. package/dist/{request-schema-CMreVuFM.js → request-schema-DhX7UbfQ.js} +4 -1
  302. package/dist/resend/index.d.ts +34 -28
  303. package/dist/resend/index.js +29 -29
  304. package/dist/resolve-names-CF7xXLSG.js +201 -0
  305. package/dist/{resource-relations-D_jw0BFx.js → resource-relations-8-pCScBO.js} +18 -9
  306. package/dist/{retire-CALjIQ7e.js → retire-B2xffQgY.js} +15 -6
  307. package/dist/{revocations-R07lFBnX.d.ts → revocations-BaUXHM1N.d.ts} +6 -3
  308. package/dist/{rls-DTvYd-lI.js → rls-CNEH2_BG.js} +743 -624
  309. package/dist/{rls-BAqP4q66.js → rls-Ca8Jz9b5.js} +41 -10
  310. package/dist/{role-builder-uWQZ4v84.js → role-builder-BK2-T6oD.js} +41 -20
  311. package/dist/rolldown-runtime-C3I60J0A.js +4 -0
  312. package/dist/{row-conditions-h2HythXQ.js → row-conditions-BAGHOmVq.js} +4 -3
  313. package/dist/{rpc-VSl5ylaQ.js → rpc-fNqAIqQk.js} +8 -5
  314. package/dist/{run-CUKuz0A8.js → run-Bz26OTfO.js} +26 -23
  315. package/dist/run-D-JE8QWb.js +1 -0
  316. package/dist/{run-ticket-DocwaTKn.d.ts → run-ticket-DbWI9f99.d.ts} +33 -13
  317. package/dist/{run-ticket-sxFI6LAk.js → run-ticket-Dv7aF7Dk.js} +29 -8
  318. package/dist/{runtime-D3VTAiCA.js → runtime-BGnrOkVH.js} +5 -2
  319. package/dist/{saas-BCXRuXca.js → saas-iWnUdwCt.js} +42 -29
  320. package/dist/{scan-qvOe0hS3.js → scan-DCj1KQfn.js} +1 -1
  321. package/dist/{schema-B4v0Qrac.js → schema-BOJjqlWL.js} +3 -2
  322. package/dist/{schema-yLuBWWsh.js → schema-Dst9I9Gs.js} +9 -5
  323. package/dist/scim/index.d.ts +3 -2
  324. package/dist/scim/index.js +3 -1
  325. package/dist/scim-D8YupzX1.js +44 -0
  326. package/dist/{scim-ClHtpyV3.js → scim-jJBJ7g1Z.js} +35 -551
  327. package/dist/{scopes-CUPSjo9q.js → scopes-0Up_UA2t.js} +42 -24
  328. package/dist/server/index.d.ts +12 -12
  329. package/dist/server/index.js +13 -13
  330. package/dist/{server-C3WXAHZj.js → server-3cVlTLde.js} +31 -31
  331. package/dist/{server-types-CKQiCnON.d.ts → server-types-CIlpSA2G.d.ts} +81 -46
  332. package/dist/{sha256-D9ihqmvd.js → sha256-C-4WXKIu.js} +4 -3
  333. package/dist/{shared-BAK8t4Uo.js → shared-Afctg7B0.js} +100 -61
  334. package/dist/{shared-DvvFzYXe.js → shared-l0oGGetg.js} +9 -6
  335. package/dist/{signals-D3NcTKUS.js → signals-B1vHR3fN.js} +2 -2
  336. package/dist/{sink-BEZSlMS_.js → sink-D9_vh372.js} +32 -21
  337. package/dist/{sink-4-eQIRWf.d.ts → sink-Dvi7YZG_.d.ts} +44 -20
  338. package/dist/{skills-B6lVdD_W.js → skills-Bjj7BNEQ.js} +16 -12
  339. package/dist/{skills-CTYwkl44.js → skills-OuoMR49L.js} +3 -3
  340. package/dist/{snapshot-B7DkYg6g.js → snapshot-CXlzi69u.js} +21 -18
  341. package/dist/{snapshot-cache-PXI-vGpY.d.ts → snapshot-cache-BAXZ0KOp.d.ts} +21 -12
  342. package/dist/{snapshot-cache-DZHQ0KF6.js → snapshot-cache-Bx_4xC_6.js} +14 -11
  343. package/dist/solid/index.d.ts +55 -15
  344. package/dist/solid/index.js +46 -12
  345. package/dist/solid-start/index.d.ts +30 -12
  346. package/dist/solid-start/index.js +3 -3
  347. package/dist/sources-B1Os_YUu.d.ts +312 -0
  348. package/dist/{sources-vs5dGOsS.js → sources-CMAM-2A3.js} +156 -51
  349. package/dist/sources-qoIJQrJv.js +11 -0
  350. package/dist/{sql-B5T1IL83.js → sql-0WjxIp9g.js} +32 -7
  351. package/dist/sql-B80DFdpG.d.ts +10 -0
  352. package/dist/{src-Cu2m75uo.js → src-DZ0l9UAg.js} +305 -123
  353. package/dist/ssf/index.d.ts +4 -4
  354. package/dist/ssf/index.js +665 -224
  355. package/dist/{standard-webhooks-rbD7LS6h.d.ts → standard-webhooks-C-qX4mJW.d.ts} +7 -7
  356. package/dist/{standard-webhooks-DgFFD-Ga.js → standard-webhooks-D67a3nzk.js} +5 -5
  357. package/dist/{store-BDutJkDL.js → store-RNFvaJJv.js} +43 -29
  358. package/dist/{store-options-u0ycEe8s.js → store-options-Dil3lraY.js} +105 -15
  359. package/dist/stores-C0Kta5Ft.d.ts +59 -0
  360. package/dist/{stores-CGhM8BN_.js → stores-DxZWDXCs.js} +42 -5
  361. package/dist/{stream-CvdUS9V1.js → stream-CDvF0sJm.js} +5 -5
  362. package/dist/{stream-CeCMJmBB.d.ts → stream-ltuLdtTG.d.ts} +4 -3
  363. package/dist/{style-DiKWnAvn.js → style-DblOtSga.js} +1 -1
  364. package/dist/{style-Uao76wO7.js → style-Ds11Hmk4.js} +3 -1
  365. package/dist/{subject-settings-CkEwrw3W.js → subject-settings-8sH5HlII.js} +8 -4
  366. package/dist/{row-check-Dt35czLy.d.ts → subject-settings-vNW8qmUH.d.ts} +30 -18
  367. package/dist/supabase/index.d.ts +48 -37
  368. package/dist/supabase/index.js +6 -6
  369. package/dist/supabase/middleware.d.ts +19 -13
  370. package/dist/supabase/middleware.js +7 -7
  371. package/dist/{supabase-x5JtR2tc.js → supabase-BL1qJzzY.js} +82 -36
  372. package/dist/{supabase-By_frk3U.js → supabase-D39cuGPt.js} +3 -3
  373. package/dist/{supabase-hook-BMoEhZir.js → supabase-hook-B-yXnzUl.js} +1206 -286
  374. package/dist/supabase-hook-H-MtE9Wd.js +1 -0
  375. package/dist/supautils-BU-pAEpf.js +808 -0
  376. package/dist/{support-session-C6xJQYut.js → support-session-BsmPCbz8.js} +22 -22
  377. package/dist/svelte/PermissionBoundary.svelte +2 -6
  378. package/dist/svelte/Protected.svelte +2 -8
  379. package/dist/svelte/index.d.ts +9 -8
  380. package/dist/svelte/index.js +10 -9
  381. package/dist/svelte/runtime.d.ts +4 -4
  382. package/dist/svelte/runtime.js +4 -4
  383. package/dist/svelte/source.d.ts +9 -8
  384. package/dist/svelte/source.js +6 -5
  385. package/dist/sveltekit/index.d.ts +30 -12
  386. package/dist/sveltekit/index.js +2 -2
  387. package/dist/{ownership-DqaJNJPn.js → tables-DeMNEy6V.js} +1025 -1085
  388. package/dist/tanstack-start/index.d.ts +22 -10
  389. package/dist/tanstack-start/index.js +2 -2
  390. package/dist/{target-Bw37TFNA.js → target-qdEAnnhU.js} +6 -6
  391. package/dist/{tenancy-DN2QAx9z.js → tenancy-5d1zVBvK.js} +36 -21
  392. package/dist/terminal/index.d.ts +23 -14
  393. package/dist/terminal/index.js +17 -20
  394. package/dist/testing/core.d.ts +2 -0
  395. package/dist/testing/core.js +1 -0
  396. package/dist/testing/fixtures/index.d.ts +15 -0
  397. package/dist/testing/fixtures/index.js +831 -0
  398. package/dist/testing/index.d.ts +235 -285
  399. package/dist/testing/index.js +502 -927
  400. package/dist/testing/saas/index.d.ts +43 -27
  401. package/dist/testing/saas/index.js +2 -2
  402. package/dist/testing/saas/permissions.d.ts +1 -1
  403. package/dist/testing/saas/permissions.js +1 -1
  404. package/dist/text-diff-BtfSmdUo.js +444 -0
  405. package/dist/{thenable-yD7SabqG.js → thenable-BNSM1U2R.js} +12 -3
  406. package/dist/{time-DkWjdL98.js → time-nR1JesoH.js} +32 -8
  407. package/dist/{token-BLZcjQgt.js → token-DC9EQiet.js} +15 -13
  408. package/dist/{tool-refusal-CMLN5xhn.js → tool-refusal-Qpjs_W6M.js} +5 -2
  409. package/dist/trpc/index.d.ts +11 -8
  410. package/dist/trpc/index.js +15 -9
  411. package/dist/type-helpers-BIPIDa6a.d.ts +50 -0
  412. package/dist/{types-8RnwUAvE.d.ts → types-AMJ5qoU_.d.ts} +49 -30
  413. package/dist/{types-C_IiEs64.d.ts → types-B2mlGuhW.d.ts} +14 -11
  414. package/dist/{types-_WhUP7ud.d.ts → types-B4uqKDnp.d.ts} +25 -12
  415. package/dist/{types-CX7AvRqP.d.ts → types-BJk0BKRX.d.ts} +24 -14
  416. package/dist/types-B_d_g7T3.d.ts +262 -0
  417. package/dist/{types-BdtSDbBO.d.ts → types-B_tiYvk8.d.ts} +59 -32
  418. package/dist/{types-DqzsnlSA.js → types-CcUXciSj.js} +17 -5
  419. package/dist/{types-Dfv0aTER.d.ts → types-DC1Loeh3.d.ts} +449 -168
  420. package/dist/{types-lUlG3TVd.d.ts → types-DHKPcqzr.d.ts} +2 -2
  421. package/dist/{types-C791HFu9.d.ts → types-DjuMBNF9.d.ts} +68 -32
  422. package/dist/{types-C863OQiR.d.ts → types-HzqOtvsJ.d.ts} +23 -12
  423. package/dist/{types-Druu9wLM.d.ts → types-ZzRGoViD.d.ts} +77 -24
  424. package/dist/{types-BzzaHxt3.d.ts → types-ah9NlU6j.d.ts} +137 -48
  425. package/dist/{types-CVZSNocA.d.ts → types-djVzLlIV.d.ts} +31 -14
  426. package/dist/{types-BtHtcKMr.d.ts → types-yUuPR5Hy.d.ts} +47 -24
  427. package/dist/unplugin/index.d.ts +1 -1
  428. package/dist/unplugin/index.js +2 -2
  429. package/dist/usage-CYeXek0p.js +1 -0
  430. package/dist/{usage-SveTRTyr.js → usage-CxEzS4ey.js} +50 -26
  431. package/dist/{usage-CRVl9V3t.js → usage-ab0PdusX.js} +2 -2
  432. package/dist/{validation-error-ZfUHbKvf.js → validation-error-CYg2kJEw.js} +4 -1
  433. package/dist/{validation-error-DHUrAkku.d.ts → validation-error-YGg2mXyH.d.ts} +5 -2
  434. package/dist/{validity-CZ7-y0Cj.js → validity-Buc7w8E9.js} +13 -10
  435. package/dist/{verifier-DHuh-okk.js → verifier-DUV6pLqZ.js} +10 -4
  436. package/dist/{verify-BaAKx7t6.js → verify-DZeqoWu5.js} +417 -489
  437. package/dist/version-DMQ0dnN5.js +48 -0
  438. package/dist/version-DizhmD72.js +1 -0
  439. package/dist/{views-DTIIO-oQ.js → views-CD8wuL4Z.js} +19 -6
  440. package/dist/vocabulary-DEJ5j4mR.d.ts +70 -0
  441. package/dist/vue/index.d.ts +71 -21
  442. package/dist/vue/index.js +50 -13
  443. package/dist/{waiter-B986w1oK.d.ts → waiter-Bu9zAlE0.d.ts} +13 -10
  444. package/dist/{waiter-BGUtGYoU.js → waiter-aBLM63_f.js} +1 -1
  445. package/dist/{watch-vea54PRw.js → watch-Cx_WciLE.js} +8 -8
  446. package/dist/watch-DB42U1ib.js +1 -0
  447. package/dist/webmcp/index.d.ts +11 -11
  448. package/dist/webmcp/index.js +8 -5
  449. package/dist/{where-scope-C9vfEphl.js → where-scope-DlCdCM_8.js} +56 -30
  450. package/dist/{who-can-DWBAcaCQ.js → who-can-rI7dCR9Q.js} +23 -20
  451. package/dist/workflow/index.d.ts +3 -3
  452. package/dist/workflow/index.js +13 -13
  453. package/dist/workflow-sdk/index.d.ts +19 -13
  454. package/dist/workflow-sdk/index.js +6 -6
  455. package/dist/{wrap-gX61EtpB.js → wrap-B2wziJI_.js} +11 -5
  456. package/dist/{wrap-C5jC6sKI.d.ts → wrap-DlJE3gS_.d.ts} +8 -5
  457. package/package.json +25 -14
  458. package/schemas/catalog-v1.json +3 -0
  459. package/schemas/cli-result-v1.json +1 -0
  460. package/schemas/cloud-api-v1.json +152 -7
  461. package/schemas/connector-v1.json +8 -0
  462. package/schemas/supabase-claims-v1.json +5 -0
  463. package/schemas/supabase-manifest-v1.json +308 -75
  464. package/skills/permdock/SKILL.md +1 -0
  465. package/skills/permdock-agents/references/runtimes.md +3 -1
  466. package/skills/permdock-approvals/references/stores-and-resume.md +2 -1
  467. package/skills/permdock-credentials/references/tokens-keys-links.md +8 -6
  468. package/skills/permdock-data/references/queries-and-rls.md +6 -2
  469. package/skills/permdock-tenancy/SKILL.md +1 -1
  470. package/skills/permdock-tenancy/references/ownership-and-custom-roles.md +2 -1
  471. package/skills/permdock-wire/references/adapters.md +28 -22
  472. package/skills/permdock-wire/references/policy-options.md +1 -0
  473. package/dist/catalog-BoWglDPI.js +0 -1
  474. package/dist/collect-D7eQDffE.js +0 -1
  475. package/dist/config-bs_kZeYq.js +0 -162
  476. package/dist/denied-text-CiFQNuMV.d.ts +0 -19
  477. package/dist/fields-OYG_JR78.js +0 -203
  478. package/dist/generate-CNU1pIOo.js +0 -171
  479. package/dist/headers-BIjfMaoC.js +0 -8
  480. package/dist/headers-CIbDTUTK.d.ts +0 -7
  481. package/dist/index-Cp_ilKi1.d.ts +0 -91
  482. package/dist/index-CueFnxQc.d.ts +0 -110
  483. package/dist/load-BxEtwlBS.js +0 -1
  484. package/dist/output-files-B3IZJksC.js +0 -1
  485. package/dist/package-root-Dk_ETdkp.js +0 -31
  486. package/dist/parse-Cxq0WxrA.js +0 -53
  487. package/dist/parse-local-manifest-5ODwqu8b.d.ts +0 -10
  488. package/dist/parse-local-manifest-CVSs6J9I.js +0 -34
  489. package/dist/peer-C8swJ2GH.js +0 -50
  490. package/dist/policies-DP2nqRoF.js +0 -295
  491. package/dist/powersync-BkWWCS1K.js +0 -538
  492. package/dist/powersync-MMJ2mI2q.js +0 -1
  493. package/dist/problem-details-B45V5d2b.d.ts +0 -7
  494. package/dist/prompt-DfZLJLIn.js +0 -32
  495. package/dist/protected-RFGpakN9.d.ts +0 -38
  496. package/dist/pull-CvpINcMK.js +0 -1
  497. package/dist/run-DDwUaJDU.js +0 -1
  498. package/dist/sources-Xc4zkszI.d.ts +0 -190
  499. package/dist/stores-BUGNbJTt.d.ts +0 -30
  500. package/dist/supabase-hook-CCw5m35C.js +0 -1
  501. package/dist/supautils-B6HYL9eL.js +0 -91
  502. package/dist/text-diff-BQcUapOb.js +0 -15
  503. package/dist/types-B3_ooZgZ.d.ts +0 -172
  504. package/dist/usage-CZpSQP6L.js +0 -1
  505. package/dist/version-CEbQ5UeM.js +0 -18
  506. package/dist/version-DXkYUISx.js +0 -1
  507. package/dist/watch--ovlPOc0.js +0 -1
@@ -1,190 +0,0 @@
1
- import { et as MembershipSource } from "./policy-types-n0uRTsW8.js";
2
- import { n as RoleThrough, y as SupabaseSuspension } from "./types-BzzaHxt3.js";
3
- import { o as SupabaseManifestMembership } from "./manifest-mx5ghSFM.js";
4
- //#region src/supabase/roles.d.ts
5
- /** A roles table a role column references, by `schema.table`. */
6
- type RoleKeys = {
7
- readonly table: string;
8
- /** The roles table column the reference points at. */
9
- readonly id: string;
10
- /** The roles table column holding the role key. */
11
- readonly key: string;
12
- /** The referencing table's column. */
13
- readonly ref: string;
14
- };
15
- //#endregion
16
- //#region src/supabase/sources.d.ts
17
- /**
18
- * Runs one parameterised statement: `pg`'s `client.query` (which resolves
19
- * `{ rows }`) and `postgres`'s `sql.unsafe` (which resolves the rows) both fit.
20
- */
21
- type SqlQuery = (text: string, values: readonly unknown[]) => Promise<readonly Record<string, unknown>[] | {
22
- readonly rows: readonly Record<string, unknown>[];
23
- }>;
24
- type Common = {
25
- readonly table: string;
26
- /** Runs the lookups; without it the source only describes SQL (for `permdock supabase hook generate`). */
27
- readonly query?: SqlQuery;
28
- /** Drop suspended users and memberships under suspended instances, like `rls.suspension`. */
29
- readonly suspension?: SupabaseSuspension;
30
- };
31
- type MembershipTableOptions = Common & {
32
- /** Column names; `user`, `scope`, `id` and `role` default to `user_id`, `scope`, `scope_id`, `role`. */
33
- readonly columns?: {
34
- /** The user id column, or a reference to a table that holds the user id. */
35
- readonly user?: string | RoleThrough;
36
- readonly scope?: string;
37
- readonly id?: string;
38
- /** A `jsonb` column of ancestor ids keyed by scope name. */
39
- readonly within?: string;
40
- /**
41
- * The role key column, a reference to a roles table that holds the key,
42
- * or several of them: the row holds every non-null key.
43
- */
44
- readonly role?: string | RoleThrough | readonly (string | RoleThrough)[];
45
- readonly via?: string;
46
- readonly expiresAt?: string;
47
- readonly disabledAt?: string;
48
- /** The principal id that wrote the membership (`grantedBy`). */
49
- readonly grantedBy?: string;
50
- /** Free-text justification recorded on the membership (`reason`). */
51
- readonly reason?: string;
52
- /** A subgroup column filling `member.group`. */
53
- readonly group?: string;
54
- /** A text column; the value `idp` marks the row as owned by the identity provider. */
55
- readonly managedBy?: string;
56
- /** A `text[]` column of seats. */
57
- readonly seats?: string;
58
- /** A `jsonb` column of app data (`Membership.x`); never written into claims. */
59
- readonly x?: string;
60
- };
61
- };
62
- type MembershipJunctionOptions = Common & {
63
- /** The declared scope every row is a membership of. */
64
- readonly scope: string;
65
- /** The user id column (default `user_id`), or a reference to a table that holds the user id. */
66
- readonly user?: string | RoleThrough;
67
- /** The column holding the scope instance id. Default `<scope>_id`. */
68
- readonly id?: string;
69
- /** Ancestor id columns keyed by scope name. */
70
- readonly within?: Readonly<Record<string, string>>;
71
- /**
72
- * A role column, a reference to a roles table that holds the key, fixed
73
- * roles every row holds (a contact table with no role column), or
74
- * `{ sources }`: several role columns whose non-null keys the row holds.
75
- */
76
- readonly roles: string | RoleThrough | readonly string[] | {
77
- readonly sources: readonly (string | RoleThrough)[];
78
- };
79
- /** The membership kind every row has (`contact`, `staff`, `partner`). */
80
- readonly via?: string;
81
- readonly expiresAt?: string;
82
- readonly disabledAt?: string;
83
- /** The principal id that wrote the membership (`grantedBy`). */
84
- readonly grantedBy?: string;
85
- /** Free-text justification recorded on the membership (`reason`). */
86
- readonly reason?: string;
87
- /** A subgroup filling `member.group`: a fixed name every row has, or a column. */
88
- readonly group?: string | {
89
- readonly column: string;
90
- };
91
- /** `idp` when the identity provider owns every row, or a text column holding `idp` per row. */
92
- readonly managedBy?: "idp" | {
93
- readonly column: string;
94
- };
95
- /** A `text[]` column of seats. */
96
- readonly seats?: string;
97
- /** A `jsonb` column of app data (`Membership.x`); never written into claims. */
98
- readonly x?: string;
99
- };
100
- /** What `permdock supabase hook generate` compiles; the same SQL the source runs. */
101
- type MembershipSql = {
102
- readonly table: string;
103
- /** The table's user column: the user id, or with `userThrough` the reference to the row holding it. */
104
- readonly user: string;
105
- /** The table that holds the user id when `user` references it; a change of that id bumps the old and the new user. */
106
- readonly userThrough?: RoleKeys;
107
- /** `<table>.<user>%type`: the PL/pgSQL type of the user id column, for a variable `select` compares with. */
108
- readonly userType: string;
109
- /**
110
- * The `select` of claim rows for one user, with every filter applied.
111
- * `user` must have the column's type (a `userType` variable, or an untyped
112
- * `$1` Postgres infers): the column is compared uncast so its index applies.
113
- * `keep` adds the `keep` column; it defaults to `keeps`, and a `union`
114
- * with a source that keeps passes `true`.
115
- */
116
- select(user: string, keep?: boolean): string;
117
- /** The `select` of member rows for one scope instance (`$1` scope, `$2` id). */
118
- list(keep?: boolean): string;
119
- /** A suspended scope on the source keeps permissions: rows of its suspended instances stay, with a `keep` column. */
120
- readonly keeps: boolean;
121
- /** A text column holding `idp` for rows the identity provider owns; `''` when every row is owned. */
122
- readonly managed?: string;
123
- /** Other tables the `select` reads (suspension tables). */
124
- readonly reads: readonly string[];
125
- /** The roles table the role column references; a key change bumps every holder's authorization version. */
126
- readonly through?: RoleKeys;
127
- /** Every roles table the role columns reference, `through` first. */
128
- readonly throughs: readonly RoleKeys[];
129
- /** Every column that decides who holds which membership: user, scope, id, `within`, role, `via` and expiry. */
130
- readonly columns: readonly string[];
131
- /** For a single-scope source: its scope and the scopes whose ids each row carries. */
132
- readonly scope?: string;
133
- readonly holds?: readonly string[];
134
- /** The source's entry in the hook manifest's `memberships`. */
135
- readonly manifest: SupabaseManifestMembership;
136
- /** What the ownership triggers count; absent on a source that is not a table. */
137
- readonly holders?: MembershipHolders;
138
- };
139
- /**
140
- * The rows of a membership table, for the holder-count and transfer-only
141
- * triggers `permdock rls generate` puts on it. No suspension filter: a
142
- * suspended holder still holds the role.
143
- */
144
- type MembershipHolders = {
145
- /** `<table>.<id column>%type`: the type of a variable `rows` compares the id column with. */
146
- readonly idType: string;
147
- /** The instance id of scope `scope` the PL/pgSQL record `row` holds, as text; null on a row of another scope. */
148
- id(scope: string, row: string): string;
149
- /**
150
- * `select id, user_id, role, via, live` over the rows of scope `scope`
151
- * in `from` (default the table): one row per held role key, `live` false
152
- * once expired. `id` is an expression of `idType` the id column must equal.
153
- */
154
- rows(scope: string, options?: {
155
- readonly id?: string;
156
- readonly from?: string;
157
- }): string;
158
- };
159
- type SqlMembershipSource = MembershipSource & {
160
- readonly sql: MembershipSql;
161
- };
162
- /** The part of `@supabase/server`'s `PostgresApi` a `SqlQuery` needs. */
163
- type SupabasePostgres = {
164
- readonly queryRaw: (text: string, params?: unknown[]) => Promise<readonly Record<string, unknown>[]>;
165
- };
166
- declare function supabasePostgresQuery(postgres: SupabasePostgres): SqlQuery;
167
- /**
168
- * Memberships from one table holding every scope: a row per user, scope,
169
- * instance and role (`user_id, scope, scope_id, role`), with optional
170
- * `within`, `via`, expiry, owner and seat columns. Rows of the same instance
171
- * merge into one membership.
172
- */
173
- declare function tableMembershipSource(options: MembershipTableOptions): SqlMembershipSource;
174
- /**
175
- * Memberships from a table of one scope (`customer_contacts`): every row is a
176
- * membership of `scope`, with roles from a column or fixed (`['contact']`), a
177
- * fixed `via`, and ancestor ids from `within` columns.
178
- */
179
- declare function junctionMembershipSource(options: MembershipJunctionOptions): SqlMembershipSource;
180
- declare const AUTHZ_VERSION_TABLE = "permdock_authz_version";
181
- /**
182
- * Reads the authorization version `permdock supabase hook generate` keeps in
183
- * `<schema>.permdock_authz_version`: pass it to `claimsFirst(sources, { version })`.
184
- */
185
- declare function authzVersion(options: {
186
- readonly query: SqlQuery;
187
- readonly schema?: string;
188
- }): NonNullable<MembershipSource["version"]>;
189
- //#endregion
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 };
@@ -1,30 +0,0 @@
1
- import { Nn as Decision, nr as Membership } from "./policy-types-n0uRTsW8.js";
2
- import { r as Role, w as Permission } from "./vocabulary-CN8H_9UF.js";
3
- import { r as DescribeOptions, t as DecisionDescription } from "./describe-B5qgDvEW.js";
4
- import { a as FilterResult, c as PermissionSet, d as RolesOptions, f as SubjectView, l as PermissionState, p as TenantView, r as ClientPermDock, t as ApprovalHandle } from "./types-B3_ooZgZ.js";
5
- import { n as SveltePermDockOptions } from "./types-CVZSNocA.js";
6
- import { Readable } from "svelte/store";
7
- //#region src/svelte/stores.d.ts
8
- declare function setPermDock(options: SveltePermDockOptions): ClientPermDock;
9
- declare function getPermDock(): ClientPermDock;
10
- /** `describe` with the provider's `messages`; a call's own `messages` win. Call it during component init. */
11
- declare function getDescribe(): (decision: Decision, options?: DescribeOptions) => DecisionDescription;
12
- declare function permission(reference: Permission, data?: () => unknown): Readable<PermissionState>;
13
- declare function permissions(references: () => readonly Permission[], data?: () => unknown): Readable<PermissionSet>;
14
- declare function filtered<T>(reference: Permission<string, T, "instance">, rows: () => readonly T[]): Readable<FilterResult<T>>;
15
- declare function tenant(): Readable<TenantView>;
16
- declare function memberships(): Readable<readonly Membership[]>;
17
- declare function roles(options?: () => RolesOptions): Readable<{
18
- readonly roles: readonly Role[];
19
- }>;
20
- declare function assignable(): Readable<readonly Role[]>;
21
- type AssignableOptions = {
22
- readonly tenant?: string;
23
- } | (() => {
24
- readonly tenant?: string;
25
- });
26
- declare function assignablePermissions(options?: AssignableOptions): Readable<readonly Permission[]>;
27
- declare function subject(): Readable<SubjectView>;
28
- declare function approval(decision: () => Decision): Readable<ApprovalHandle>;
29
- //#endregion
30
- export { getDescribe as a, permission as c, setPermDock as d, subject as f, filtered as i, permissions as l, assignable as n, getPermDock as o, tenant as p, assignablePermissions as r, memberships as s, approval as t, roles as u };
@@ -1 +0,0 @@
1
- export { i as runSupabase } from "./supabase-hook-BMoEhZir.js";
@@ -1,91 +0,0 @@
1
- import { i as group, o as sqlStatements } from "./deciding-columns-Sq12mEA6.js";
2
- //#region src/cli/sql/supautils.ts
3
- /** `supautils.reserved_roles` of supabase/postgres 17.11.0.002 (supautils 3.4.4). */
4
- const RESERVED_ROLES = /* @__PURE__ */ new Set([
5
- "supabase_admin",
6
- "supabase_auth_admin",
7
- "supabase_storage_admin",
8
- "supabase_read_only_user",
9
- "supabase_realtime_admin",
10
- "supabase_replication_admin",
11
- "supabase_etl_admin",
12
- "supabase_privileged_role",
13
- "dashboard_user",
14
- "pgbouncer",
15
- "service_role",
16
- "authenticator",
17
- "authenticated",
18
- "anon"
19
- ]);
20
- /** The `*` entries of `reserved_roles`: `postgres` may still `set` or `reset` their settings. */
21
- const CONFIGURABLE_ROLES = /* @__PURE__ */ new Set([
22
- "service_role",
23
- "authenticator",
24
- "authenticated",
25
- "anon"
26
- ]);
27
- /** `supautils.reserved_memberships` of the same image. */
28
- const RESERVED_MEMBERSHIPS = /* @__PURE__ */ new Set([
29
- "pg_read_server_files",
30
- "pg_write_server_files",
31
- "pg_execute_server_program",
32
- "supabase_admin",
33
- "supabase_auth_admin",
34
- "supabase_storage_admin",
35
- "supabase_read_only_user",
36
- "supabase_realtime_admin",
37
- "supabase_replication_admin",
38
- "supabase_etl_admin",
39
- "dashboard_user",
40
- "pgbouncer",
41
- "authenticator"
42
- ]);
43
- const ROLE = String.raw`(?:"[^"]+"|\w+)`;
44
- const ROLES = String.raw`${ROLE}(?:\s*,\s*${ROLE})*`;
45
- const ALTER_ROLE = new RegExp(String.raw`^alter\s+(role|user|group)\s+(${ROLE})\s+([\s\S]*)$`, "iu");
46
- const DROP_ROLE = new RegExp(String.raw`^drop\s+(?:role|user|group)\s+(?:if\s+exists\s+)?(${ROLES})\s*$`, "iu");
47
- const GRANT_ROLE = /^grant\s+([\s\S]+?)\s+to\s/iu;
48
- const CREATE_IN_ROLE = new RegExp(String.raw`^create\s+(?:role|user|group)\s+${ROLE}\b[\s\S]*?\bin\s+(?:role|group)\s+(${ROLES})`, "iu");
49
- const CONFIG_CHANGE = /^(?:in\s+database\s+\S+\s+)?(?:set|reset)\s/iu;
50
- function roleName(name) {
51
- return name.replaceAll("\"", "").toLowerCase();
52
- }
53
- function roleList(list) {
54
- return list.split(",").map((name) => roleName(name.trim()));
55
- }
56
- function rejection(text) {
57
- const alter = ALTER_ROLE.exec(text);
58
- if (alter !== null) {
59
- const role = roleName(group(alter, 2));
60
- const rest = group(alter, 3);
61
- if (group(alter, 1).toLowerCase() === "group" && /^add\s/iu.test(rest)) return RESERVED_MEMBERSHIPS.has(role) ? `grants membership in the reserved role ${role}` : void 0;
62
- if (!RESERVED_ROLES.has(role) || CONFIGURABLE_ROLES.has(role) && CONFIG_CHANGE.test(rest)) return;
63
- return `changes the reserved role ${role}`;
64
- }
65
- const drop = DROP_ROLE.exec(text);
66
- if (drop !== null) {
67
- const role = roleList(group(drop, 1)).find((name) => RESERVED_ROLES.has(name));
68
- return role === void 0 ? void 0 : `drops the reserved role ${role}`;
69
- }
70
- const grant = GRANT_ROLE.exec(text);
71
- const granted = CREATE_IN_ROLE.exec(text)?.[1] ?? (grant === null || /\bon\b/iu.test(group(grant, 1)) ? void 0 : group(grant, 1));
72
- if (granted === void 0) return;
73
- const role = roleList(granted).find((name) => RESERVED_MEMBERSHIPS.has(name));
74
- return role === void 0 ? void 0 : `grants membership in the reserved role ${role}`;
75
- }
76
- /**
77
- * The statements of `sql` that supautils rejects for a non-superuser:
78
- * changing or dropping a reserved role, other than `set` or `reset` on the
79
- * four API roles, and granting a reserved membership.
80
- */
81
- function supautilsRejections(sql) {
82
- return sqlStatements(sql).flatMap(({ line, text }) => {
83
- const reason = rejection(text);
84
- return reason === void 0 ? [] : [{
85
- line,
86
- reason
87
- }];
88
- });
89
- }
90
- //#endregion
91
- export { supautilsRejections as t };
@@ -1,15 +0,0 @@
1
- import { createTwoFilesPatch } from "diff";
2
- //#region src/cli/core/text-diff.ts
3
- const MAX_LINES = 40;
4
- /**
5
- * A unified diff from the file on disk to what the command would write,
6
- * cut to the first {@link MAX_LINES} lines so a CI log stays readable.
7
- */
8
- function shortDiff(file, onDisk, next) {
9
- const lines = createTwoFilesPatch(`${file} (on disk)`, `${file} (generated)`, onDisk, next, void 0, void 0, { context: 2 }).split("\n").filter((line) => !line.startsWith("=====")).filter((line, index, all) => line !== "" || index < all.length - 1);
10
- if (lines.length <= MAX_LINES) return lines.join("\n");
11
- const rest = lines.length - MAX_LINES;
12
- return [...lines.slice(0, MAX_LINES), `… ${rest} more diff line${rest === 1 ? "" : "s"}`].join("\n");
13
- }
14
- //#endregion
15
- export { shortDiff as t };
@@ -1,172 +0,0 @@
1
- import { $n as Delegation, Nn as Decision, Vt as Snapshot, dt as TokenVerifier, j as PolicyVocabulary, qn as Actor, rr as Principal } from "./policy-types-n0uRTsW8.js";
2
- import { w as Permission } from "./vocabulary-CN8H_9UF.js";
3
- import { r as PermDock } from "./permdock-SV8ZINYT.js";
4
- import { n as DescribeMessages, t as DecisionDescription } from "./describe-B5qgDvEW.js";
5
- //#region src/client/request.d.ts
6
- type StoreHeaders = Readonly<Record<string, string>>;
7
- //#endregion
8
- //#region src/client/store.d.ts
9
- type ClientStoreOptions = {
10
- readonly snapshot: Snapshot | string;
11
- readonly endpoint?: string;
12
- readonly snapshotUrl?: string;
13
- readonly approvals?: string;
14
- readonly tenant?: string;
15
- readonly fetch?: typeof fetch;
16
- /** Request headers, or a getter read on every request so a rotated token needs no new store. */
17
- readonly headers?: StoreHeaders | (() => StoreHeaders | undefined);
18
- readonly maxAge?: number;
19
- readonly verifier?: TokenVerifier;
20
- /** `raw` is the compact JWS the snapshot was verified from, so a signed snapshot can be persisted signed. */
21
- readonly onSnapshot?: (snapshot: Snapshot, tenant: string | undefined, raw: string | undefined) => void;
22
- readonly onClear?: () => void;
23
- /** Called once per key the snapshot cannot answer when there is no `endpoint` to ask. */
24
- readonly onServerOnly?: (permission: Permission) => void;
25
- /**
26
- * `true` while rendering on the server: endpoint checks answer `pending`
27
- * without a request. Defaults to `typeof window === 'undefined'`.
28
- */
29
- readonly server?: boolean;
30
- /** Milliseconds between approval status polls. Defaults to 2000. */
31
- readonly approvalInterval?: number;
32
- /** Start `pending`: the snapshot arrives later through `track()`. */
33
- readonly awaiting?: boolean;
34
- /**
35
- * The first snapshot that hydrates with a principal is a persisted copy:
36
- * `stale` until a refresh or a `replace()` lands.
37
- */
38
- readonly stale?: boolean;
39
- /**
40
- * Reuse decisions for the same row object until the next microtask. Only for
41
- * renderers that do not track the fields a check reads (React): Vue, Svelte
42
- * and Solid would stop re-running when a reactive row changes in place.
43
- */
44
- readonly passCache?: boolean;
45
- };
46
- type ClientStore = {
47
- get(): ClientPermDock;
48
- subscribe(listener: () => void): () => void;
49
- permissionState(permission: Permission, data?: unknown): PermissionState;
50
- requestApproval(decision: Decision, note?: string): Promise<void>;
51
- /** Hydrate from a pushed snapshot; a compact JWS goes through the verifier. */
52
- replace(value: unknown): void;
53
- /** Stay `pending` until `value` settles, then hydrate; a rejection fails closed. */
54
- follow(value: PromiseLike<Snapshot | string>): void;
55
- /**
56
- * `follow()` once per `value`, without suspending. A thenable React already
57
- * settled (`status: 'fulfilled'`) hydrates at once.
58
- */
59
- track(value: PromiseLike<Snapshot | string>): void;
60
- /**
61
- * The approval state for a decision. While something subscribes, an
62
- * `approval-required` decision is polled at `<approvals>/<token>`.
63
- */
64
- approvalState(decision: Decision): ApprovalState;
65
- /**
66
- * Hydrate from a resolved `snapshotPromise` during render. Idempotent per `source`;
67
- * subscribers are notified in a microtask, never synchronously inside render.
68
- */
69
- adopt(value: Snapshot | string, source: object): void;
70
- snapshot(): Snapshot;
71
- /** The tenant the store currently answers for. */
72
- tenant(): string | undefined;
73
- /** Stops polls, drops in-flight results and persistence; the store keeps answering from its last snapshot. */
74
- dispose(): void;
75
- };
76
- //#endregion
77
- //#region src/client/types.d.ts
78
- type ClientStatus = "ready" | "pending" | "stale" | "server-only";
79
- type PermissionState = {
80
- readonly allowed: boolean;
81
- readonly status: ClientStatus;
82
- readonly decision: Decision;
83
- };
84
- type PermissionSet = {
85
- readonly granted: readonly Permission[];
86
- get(permission: Permission): PermissionState | undefined;
87
- };
88
- type ClientPermDock<V extends PolicyVocabulary = PolicyVocabulary> = PermDock<V> & {
89
- status(permission?: Permission, data?: unknown): ClientStatus;
90
- invalidate(ref: Permission | {
91
- readonly [key: string]: unknown;
92
- }): void;
93
- refresh(options?: {
94
- readonly tenant?: string;
95
- }): Promise<void>;
96
- clear(): void;
97
- subscribe(listener: () => void): () => void;
98
- };
99
- type ApprovalState = "not-needed" | "required" | "pending" | "approved" | "rejected" | "expired";
100
- type ApprovalHandle = {
101
- readonly state: ApprovalState;
102
- readonly token: string | undefined;
103
- readonly request: (note?: string) => Promise<void>;
104
- };
105
- type SubjectView = {
106
- readonly principal: Principal | null;
107
- readonly actor: Actor | undefined;
108
- readonly delegation: Delegation | undefined;
109
- readonly expiresAt: number | undefined;
110
- readonly simulated: boolean;
111
- };
112
- type TenantView = {
113
- readonly tenant: string | null;
114
- readonly tenants: readonly string[];
115
- readonly switchTo: (id: string) => Promise<void>;
116
- readonly status: ClientStatus;
117
- };
118
- type FilterResult<T> = readonly T[] & {
119
- readonly partial: boolean;
120
- };
121
- type RolesOptions = {
122
- readonly tenant?: string;
123
- readonly team?: string;
124
- };
125
- /** The provider options Vue, Svelte and Solid share; each adds its own reactive `snapshot`, `tenant`, `headers`, `verifier` and `defaults`. */
126
- type ProviderOptionsBase = {
127
- /**
128
- * The AuthZEN evaluations endpoint for checks the snapshot cannot answer.
129
- * `false` never calls one: such a check is denied with reason `server-only`.
130
- */
131
- readonly endpoint?: string | false;
132
- /** Where `refresh()` fetches a fresh snapshot. Defaults to `endpoint`. */
133
- readonly snapshotUrl?: string;
134
- readonly approvals?: string;
135
- /** Read on every request, so a new `fetch` applies without a new store. */
136
- readonly fetch?: typeof fetch;
137
- readonly maxAge?: number;
138
- /** Localised text for the describe helper. */
139
- readonly messages?: DescribeMessages;
140
- /** Called with each snapshot the store accepts. */
141
- readonly onSnapshot?: NonNullable<ClientStoreOptions["onSnapshot"]>;
142
- /** Called when the store drops its snapshot. */
143
- readonly onClear?: () => void;
144
- /** Milliseconds between approval status polls. Defaults to 2000. */
145
- readonly approvalInterval?: number;
146
- };
147
- /** How a control shows a permission it cannot use: hidden, or disabled with a reason. */
148
- type GateMode = "hide" | "disable";
149
- /**
150
- * Everything a permission-gated control renders from, in one value: a
151
- * button, a menu item or a link reads these fields and decides nothing
152
- * itself. The client is a hint; the server checks again.
153
- */
154
- type GateView = {
155
- /** The decision granted the action. */
156
- readonly allowed: boolean;
157
- /** The snapshot is loading; render the control disabled, not hidden. */
158
- readonly pending: boolean;
159
- /** `mode: "hide"` and the action is not available: render nothing. */
160
- readonly hidden: boolean;
161
- /** The control cannot run the action now (denied, pending or awaiting approval). */
162
- readonly disabled: boolean;
163
- /** The decision needs a person's approval first; offer to request it. */
164
- readonly needsApproval: boolean;
165
- /** The plans that would grant the action, for an upgrade prompt; empty otherwise. */
166
- readonly upgrade: readonly string[];
167
- /** Title and detail for a tooltip or an accessible description. */
168
- readonly reason: DecisionDescription;
169
- readonly decision: Decision;
170
- };
171
- //#endregion
172
- export { FilterResult as a, PermissionSet as c, RolesOptions as d, SubjectView as f, ClientStoreOptions as h, ClientStatus as i, PermissionState as l, ClientStore as m, ApprovalState as n, GateMode as o, TenantView as p, ClientPermDock as r, GateView as s, ApprovalHandle as t, ProviderOptionsBase as u };
@@ -1 +0,0 @@
1
- export { t as runUsage } from "./usage-SveTRTyr.js";
@@ -1,18 +0,0 @@
1
- import { t as packageRoot } from "./package-root-Dk_ETdkp.js";
2
- import { readFileSync } from "node:fs";
3
- import { join } from "node:path";
4
- //#region src/cli/core/version.ts
5
- function cliVersion() {
6
- return JSON.parse(readFileSync(join(packageRoot(), "package.json"), "utf8")).version;
7
- }
8
- function generatorBanner() {
9
- return `permdock@${cliVersion()}`;
10
- }
11
- const CATALOG_SCHEMA = "https://permdock.com/schemas/catalog-v1.json";
12
- const SUPABASE_MANIFEST_SCHEMA = "https://permdock.com/schemas/supabase-manifest-v1.json";
13
- const USAGE_REPORT_SCHEMA = "https://permdock.com/schemas/usage-report-v1.json";
14
- const DOCTOR_REPORT_SCHEMA = "https://permdock.com/schemas/doctor-report-v1.json";
15
- const CONFIG_REPORT_SCHEMA = "https://permdock.com/schemas/config-report-v1.json";
16
- const ARAZZO_REPORT_SCHEMA = "https://permdock.com/schemas/arazzo-report-v1.json";
17
- //#endregion
18
- export { SUPABASE_MANIFEST_SCHEMA as a, generatorBanner as c, DOCTOR_REPORT_SCHEMA as i, CATALOG_SCHEMA as n, USAGE_REPORT_SCHEMA as o, CONFIG_REPORT_SCHEMA as r, cliVersion as s, ARAZZO_REPORT_SCHEMA as t };
@@ -1 +0,0 @@
1
- export { s as cliVersion } from "./version-CEbQ5UeM.js";
@@ -1 +0,0 @@
1
- export { i as watchCollect } from "./watch-vea54PRw.js";