@selvajs/selva 2.0.9 → 2.0.11

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 (433) hide show
  1. package/build/client/_app/immutable/assets/0.B0phAlf7.css.gz +0 -0
  2. package/build/client/_app/immutable/assets/20.Bne67Vgr.css +1 -0
  3. package/build/client/_app/immutable/assets/20.Bne67Vgr.css.br +0 -0
  4. package/build/client/_app/immutable/assets/20.Bne67Vgr.css.gz +0 -0
  5. package/build/client/_app/immutable/assets/index.CV-KWLNP.css.gz +0 -0
  6. package/build/client/_app/immutable/chunks/1s2jTHrf.js.gz +0 -0
  7. package/build/client/_app/immutable/chunks/2XlIPTRw.js.gz +0 -0
  8. package/build/client/_app/immutable/chunks/2_FEXmq1.js.gz +0 -0
  9. package/build/client/_app/immutable/chunks/2dX6Wjni.js.gz +0 -0
  10. package/build/client/_app/immutable/chunks/4tskcAVN.js.gz +0 -0
  11. package/build/client/_app/immutable/chunks/AEyooZaf.js.gz +0 -0
  12. package/build/client/_app/immutable/chunks/B1aRL9Hz.js.gz +0 -0
  13. package/build/client/_app/immutable/chunks/B8uG8z2c.js.gz +0 -0
  14. package/build/client/_app/immutable/chunks/B8zY50Bc.js.gz +0 -0
  15. package/build/client/_app/immutable/chunks/BCse3N0b.js.gz +0 -0
  16. package/build/client/_app/immutable/chunks/BGxzXVpM.js.gz +0 -0
  17. package/build/client/_app/immutable/chunks/BM4_iXSA.js.gz +0 -0
  18. package/build/client/_app/immutable/chunks/BMGykAfL.js.gz +0 -0
  19. package/build/client/_app/immutable/chunks/BNScKugQ.js.gz +0 -0
  20. package/build/client/_app/immutable/chunks/BNzEBMy8.js.gz +0 -0
  21. package/build/client/_app/immutable/chunks/BU9URCkw.js.gz +0 -0
  22. package/build/client/_app/immutable/chunks/BW4xleRz.js.gz +0 -0
  23. package/build/client/_app/immutable/chunks/BZmrLQwT.js.gz +0 -0
  24. package/build/client/_app/immutable/chunks/B_Lmgh7q.js.gz +0 -0
  25. package/build/client/_app/immutable/chunks/BapAUJpM.js.gz +0 -0
  26. package/build/client/_app/immutable/chunks/Bb9xebuT.js.gz +0 -0
  27. package/build/client/_app/immutable/chunks/BjkQG7dw.js.gz +0 -0
  28. package/build/client/_app/immutable/chunks/Bmz9gLBz.js.gz +0 -0
  29. package/build/client/_app/immutable/chunks/Bnpwcepm.js.gz +0 -0
  30. package/build/client/_app/immutable/chunks/BoR6OKl6.js.gz +0 -0
  31. package/build/client/_app/immutable/chunks/Br5bpmJC.js.gz +0 -0
  32. package/build/client/_app/immutable/chunks/BxCHY0iG.js.gz +0 -0
  33. package/build/client/_app/immutable/chunks/C1Sz0rtw.js.gz +0 -0
  34. package/build/client/_app/immutable/chunks/C1aQuqo_.js.gz +0 -0
  35. package/build/client/_app/immutable/chunks/C26nmevH.js.gz +0 -0
  36. package/build/client/_app/immutable/chunks/{Dx1NLq6A.js → C7vGxU6A.js} +1 -1
  37. package/build/client/_app/immutable/chunks/C7vGxU6A.js.br +0 -0
  38. package/build/client/_app/immutable/chunks/C7vGxU6A.js.gz +0 -0
  39. package/build/client/_app/immutable/chunks/C8ko2SLk.js.gz +0 -0
  40. package/build/client/_app/immutable/chunks/CAMhfNhW.js.gz +0 -0
  41. package/build/client/_app/immutable/chunks/CEnIp_6Y.js.gz +0 -0
  42. package/build/client/_app/immutable/chunks/CMjc_m7Z.js.gz +0 -0
  43. package/build/client/_app/immutable/chunks/{B1839-Qe.js → CQbfyd2L.js} +1 -1
  44. package/build/client/_app/immutable/chunks/CQbfyd2L.js.br +0 -0
  45. package/build/client/_app/immutable/chunks/CQbfyd2L.js.gz +0 -0
  46. package/build/client/_app/immutable/chunks/CRRzXoPz.js.gz +0 -0
  47. package/build/client/_app/immutable/chunks/CXh1ITwj.js.gz +0 -0
  48. package/build/client/_app/immutable/chunks/CZ1oTCKP.js.gz +0 -0
  49. package/build/client/_app/immutable/chunks/Cbu9Tg11.js.gz +0 -0
  50. package/build/client/_app/immutable/chunks/CcYNc8-G.js.gz +0 -0
  51. package/build/client/_app/immutable/chunks/Cdcajer6.js.gz +0 -0
  52. package/build/client/_app/immutable/chunks/Ce2MupFq.js.gz +0 -0
  53. package/build/client/_app/immutable/chunks/CfP1DoGT.js.gz +0 -0
  54. package/build/client/_app/immutable/chunks/CfhPDo21.js.gz +0 -0
  55. package/build/client/_app/immutable/chunks/CkW8YtSm.js.gz +0 -0
  56. package/build/client/_app/immutable/chunks/CoR7xVWs.js.gz +0 -0
  57. package/build/client/_app/immutable/chunks/CpGv0MSX.js.gz +0 -0
  58. package/build/client/_app/immutable/chunks/Cvr8AlQE.js.gz +0 -0
  59. package/build/client/_app/immutable/chunks/D0QMYypb.js.gz +0 -0
  60. package/build/client/_app/immutable/chunks/D40b34QZ.js.gz +0 -0
  61. package/build/client/_app/immutable/chunks/D6MI_dhi.js.gz +0 -0
  62. package/build/client/_app/immutable/chunks/D7l1JayF.js.gz +0 -0
  63. package/build/client/_app/immutable/chunks/D99uXqZb.js.gz +0 -0
  64. package/build/client/_app/immutable/chunks/DEBBEmC0.js.gz +0 -0
  65. package/build/client/_app/immutable/chunks/DNsLImlA.js.gz +0 -0
  66. package/build/client/_app/immutable/chunks/DRDjLZb3.js.gz +0 -0
  67. package/build/client/_app/immutable/chunks/DTJeGfAL.js.gz +0 -0
  68. package/build/client/_app/immutable/chunks/DZFqETAQ.js.gz +0 -0
  69. package/build/client/_app/immutable/chunks/D_wr-JLf.js.gz +0 -0
  70. package/build/client/_app/immutable/chunks/{BB7Ce_Ao.js → DhVbSqkb.js} +1 -1
  71. package/build/client/_app/immutable/chunks/DhVbSqkb.js.br +0 -0
  72. package/build/client/_app/immutable/chunks/DhVbSqkb.js.gz +0 -0
  73. package/build/client/_app/immutable/chunks/Dl4WTuMB.js.gz +0 -0
  74. package/build/client/_app/immutable/chunks/{8jxh9FTC.js → DmaxIj00.js} +1 -1
  75. package/build/client/_app/immutable/chunks/DmaxIj00.js.br +0 -0
  76. package/build/client/_app/immutable/chunks/DmaxIj00.js.gz +0 -0
  77. package/build/client/_app/immutable/chunks/Doks8ISn.js.gz +0 -0
  78. package/build/client/_app/immutable/chunks/DsnmJJEf.js.gz +0 -0
  79. package/build/client/_app/immutable/chunks/E3yOQTT0.js.gz +0 -0
  80. package/build/client/_app/immutable/chunks/Gxlzmh6y.js.gz +0 -0
  81. package/build/client/_app/immutable/chunks/Ib-7xmHT.js.gz +0 -0
  82. package/build/client/_app/immutable/chunks/P4Np3c9O.js.gz +0 -0
  83. package/build/client/_app/immutable/chunks/Zf7VV5ZB.js.gz +0 -0
  84. package/build/client/_app/immutable/chunks/_OLpdTiI.js.gz +0 -0
  85. package/build/client/_app/immutable/chunks/azBeeLR0.js.gz +0 -0
  86. package/build/client/_app/immutable/chunks/gMllmzma.js.gz +0 -0
  87. package/build/client/_app/immutable/chunks/hRoV10UM.js.gz +0 -0
  88. package/build/client/_app/immutable/chunks/iEBlyxZv.js.gz +0 -0
  89. package/build/client/_app/immutable/chunks/jFKgkeON.js.gz +0 -0
  90. package/build/client/_app/immutable/chunks/{BLObdRkl.js → m_mdPJGt.js} +2 -2
  91. package/build/client/_app/immutable/chunks/m_mdPJGt.js.br +0 -0
  92. package/build/client/_app/immutable/chunks/m_mdPJGt.js.gz +0 -0
  93. package/build/client/_app/immutable/chunks/{BG4KYJxd.js → o98Aze-n.js} +1 -1
  94. package/build/client/_app/immutable/chunks/o98Aze-n.js.br +0 -0
  95. package/build/client/_app/immutable/chunks/o98Aze-n.js.gz +0 -0
  96. package/build/client/_app/immutable/chunks/ooPBmYPj.js.gz +0 -0
  97. package/build/client/_app/immutable/chunks/pRg-f8xU.js.gz +0 -0
  98. package/build/client/_app/immutable/chunks/uINs3xv3.js.gz +0 -0
  99. package/build/client/_app/immutable/chunks/wamM80bu.js.gz +0 -0
  100. package/build/client/_app/immutable/entry/{app.iSZ5n5at.js → app.BTWTTuAm.js} +2 -2
  101. package/build/client/_app/immutable/entry/app.BTWTTuAm.js.br +0 -0
  102. package/build/client/_app/immutable/entry/app.BTWTTuAm.js.gz +0 -0
  103. package/build/client/_app/immutable/entry/start.BH_CUTR9.js +1 -0
  104. package/build/client/_app/immutable/entry/start.BH_CUTR9.js.br +2 -0
  105. package/build/client/_app/immutable/entry/start.BH_CUTR9.js.gz +0 -0
  106. package/build/client/_app/immutable/nodes/{0.KJ-PiM1c.js → 0.DlG8LAVR.js} +1 -1
  107. package/build/client/_app/immutable/nodes/0.DlG8LAVR.js.br +0 -0
  108. package/build/client/_app/immutable/nodes/0.DlG8LAVR.js.gz +0 -0
  109. package/build/client/_app/immutable/nodes/{1.B3iyxTLe.js → 1.DwOSHATI.js} +1 -1
  110. package/build/client/_app/immutable/nodes/1.DwOSHATI.js.br +0 -0
  111. package/build/client/_app/immutable/nodes/1.DwOSHATI.js.gz +0 -0
  112. package/build/client/_app/immutable/nodes/10.C5pTC9MT.js.gz +0 -0
  113. package/build/client/_app/immutable/nodes/{11.C0bOSA5Z.js → 11.Zly9hDVc.js} +1 -1
  114. package/build/client/_app/immutable/nodes/11.Zly9hDVc.js.br +0 -0
  115. package/build/client/_app/immutable/nodes/11.Zly9hDVc.js.gz +0 -0
  116. package/build/client/_app/immutable/nodes/12.BoPfAFdi.js.gz +0 -0
  117. package/build/client/_app/immutable/nodes/{13.BBX4st-t.js → 13.DPp5H0wF.js} +1 -1
  118. package/build/client/_app/immutable/nodes/13.DPp5H0wF.js.br +0 -0
  119. package/build/client/_app/immutable/nodes/13.DPp5H0wF.js.gz +0 -0
  120. package/build/client/_app/immutable/nodes/{14.S-GLVBVi.js → 14.Ckr1Pg-5.js} +1 -1
  121. package/build/client/_app/immutable/nodes/14.Ckr1Pg-5.js.br +0 -0
  122. package/build/client/_app/immutable/nodes/14.Ckr1Pg-5.js.gz +0 -0
  123. package/build/client/_app/immutable/nodes/15.CAs53i3e.js.gz +0 -0
  124. package/build/client/_app/immutable/nodes/{16.ukqcuKdq.js → 16.D28cXk6c.js} +1 -1
  125. package/build/client/_app/immutable/nodes/16.D28cXk6c.js.br +0 -0
  126. package/build/client/_app/immutable/nodes/16.D28cXk6c.js.gz +0 -0
  127. package/build/client/_app/immutable/nodes/{17.DsZpiT_T.js → 17.zVEt35IE.js} +1 -1
  128. package/build/client/_app/immutable/nodes/17.zVEt35IE.js.br +0 -0
  129. package/build/client/_app/immutable/nodes/17.zVEt35IE.js.gz +0 -0
  130. package/build/client/_app/immutable/nodes/18.BpVlwZ30.js.gz +0 -0
  131. package/build/client/_app/immutable/nodes/{19.De1qTu0Z.js → 19.BVpcFyka.js} +1 -1
  132. package/build/client/_app/immutable/nodes/19.BVpcFyka.js.br +0 -0
  133. package/build/client/_app/immutable/nodes/19.BVpcFyka.js.gz +0 -0
  134. package/build/client/_app/immutable/nodes/{2.D9zIVWl1.js → 2.CQHOuONl.js} +1 -1
  135. package/build/client/_app/immutable/nodes/2.CQHOuONl.js.br +0 -0
  136. package/build/client/_app/immutable/nodes/2.CQHOuONl.js.gz +0 -0
  137. package/build/client/_app/immutable/nodes/{20.DxsctpJH.js → 20.BCewwiaR.js} +6 -6
  138. package/build/client/_app/immutable/nodes/20.BCewwiaR.js.br +0 -0
  139. package/build/client/_app/immutable/nodes/20.BCewwiaR.js.gz +0 -0
  140. package/build/client/_app/immutable/nodes/21.BsayWLjJ.js +4 -0
  141. package/build/client/_app/immutable/nodes/21.BsayWLjJ.js.br +0 -0
  142. package/build/client/_app/immutable/nodes/21.BsayWLjJ.js.gz +0 -0
  143. package/build/client/_app/immutable/nodes/{23.VZ_boRL-.js → 23.DqdpBgOG.js} +1 -1
  144. package/build/client/_app/immutable/nodes/23.DqdpBgOG.js.br +0 -0
  145. package/build/client/_app/immutable/nodes/23.DqdpBgOG.js.gz +0 -0
  146. package/build/client/_app/immutable/nodes/{24.B9kY2pb5.js → 24.PfN1WmGB.js} +1 -1
  147. package/build/client/_app/immutable/nodes/24.PfN1WmGB.js.br +0 -0
  148. package/build/client/_app/immutable/nodes/24.PfN1WmGB.js.gz +0 -0
  149. package/build/client/_app/immutable/nodes/25.oeBaWIUn.js.gz +0 -0
  150. package/build/client/_app/immutable/nodes/26.lPx5SjN1.js.gz +0 -0
  151. package/build/client/_app/immutable/nodes/{27.DZwrstUI.js → 27.ps76gC2y.js} +1 -1
  152. package/build/client/_app/immutable/nodes/27.ps76gC2y.js.br +0 -0
  153. package/build/client/_app/immutable/nodes/27.ps76gC2y.js.gz +0 -0
  154. package/build/client/_app/immutable/nodes/{28.MnyfwNy0.js → 28.jwW5ZPBb.js} +1 -1
  155. package/build/client/_app/immutable/nodes/28.jwW5ZPBb.js.br +0 -0
  156. package/build/client/_app/immutable/nodes/28.jwW5ZPBb.js.gz +0 -0
  157. package/build/client/_app/immutable/nodes/{29.CNTJCITP.js → 29.C4UksAwf.js} +1 -1
  158. package/build/client/_app/immutable/nodes/29.C4UksAwf.js.br +0 -0
  159. package/build/client/_app/immutable/nodes/{29.CNTJCITP.js.gz → 29.C4UksAwf.js.gz} +0 -0
  160. package/build/client/_app/immutable/nodes/{3.KI4lh69U.js → 3.DeyGtotz.js} +1 -1
  161. package/build/client/_app/immutable/nodes/3.DeyGtotz.js.br +0 -0
  162. package/build/client/_app/immutable/nodes/3.DeyGtotz.js.gz +0 -0
  163. package/build/client/_app/immutable/nodes/{30.Ct1smdjS.js → 30.Ba8GVvTS.js} +1 -1
  164. package/build/client/_app/immutable/nodes/30.Ba8GVvTS.js.br +0 -0
  165. package/build/client/_app/immutable/nodes/30.Ba8GVvTS.js.gz +0 -0
  166. package/build/client/_app/immutable/nodes/31.DKnO7o1W.js.gz +0 -0
  167. package/build/client/_app/immutable/nodes/32.D4xYDWvG.js.gz +0 -0
  168. package/build/client/_app/immutable/nodes/4.0a-qdY5B.js.gz +0 -0
  169. package/build/client/_app/immutable/nodes/{5.BN9x0bOB.js → 5.CEzlqY4U.js} +1 -1
  170. package/build/client/_app/immutable/nodes/5.CEzlqY4U.js.br +0 -0
  171. package/build/client/_app/immutable/nodes/5.CEzlqY4U.js.gz +0 -0
  172. package/build/client/_app/immutable/nodes/{6.BU_SGWVX.js → 6.CUbjblGG.js} +1 -1
  173. package/build/client/_app/immutable/nodes/6.CUbjblGG.js.br +0 -0
  174. package/build/client/_app/immutable/nodes/6.CUbjblGG.js.gz +0 -0
  175. package/build/client/_app/immutable/nodes/{7.9jzNcaAs.js → 7.C7uFakzg.js} +1 -1
  176. package/build/client/_app/immutable/nodes/7.C7uFakzg.js.br +0 -0
  177. package/build/client/_app/immutable/nodes/7.C7uFakzg.js.gz +0 -0
  178. package/build/client/_app/immutable/nodes/{8.BvaBLt60.js → 8.DV-QvL-P.js} +1 -1
  179. package/build/client/_app/immutable/nodes/8.DV-QvL-P.js.br +0 -0
  180. package/build/client/_app/immutable/nodes/8.DV-QvL-P.js.gz +0 -0
  181. package/build/client/_app/immutable/nodes/9.Cowm-e34.js +1 -0
  182. package/build/client/_app/immutable/nodes/9.Cowm-e34.js.br +0 -0
  183. package/build/client/_app/immutable/nodes/9.Cowm-e34.js.gz +0 -0
  184. package/build/client/_app/version.json +1 -1
  185. package/build/client/_app/version.json.br +0 -0
  186. package/build/client/_app/version.json.gz +0 -0
  187. package/build/client/favicon/favicon.svg.gz +0 -0
  188. package/build/client/robots.txt.gz +0 -0
  189. package/build/server/chunks/{0-CybFR_P8.js → 0-Dr_3KI7H.js} +4 -4
  190. package/build/server/chunks/{0-CybFR_P8.js.map → 0-Dr_3KI7H.js.map} +1 -1
  191. package/build/server/chunks/{1-CUP4tMEn.js → 1-DpVveeAx.js} +2 -2
  192. package/build/server/chunks/{1-CUP4tMEn.js.map → 1-DpVveeAx.js.map} +1 -1
  193. package/build/server/chunks/{10-zdkaINz9.js → 10-2TpR0PL8.js} +4 -4
  194. package/build/server/chunks/{10-zdkaINz9.js.map → 10-2TpR0PL8.js.map} +1 -1
  195. package/build/server/chunks/{11-DHKq5wgm.js → 11-Bc-lK9-m.js} +6 -6
  196. package/build/server/chunks/{11-DHKq5wgm.js.map → 11-Bc-lK9-m.js.map} +1 -1
  197. package/build/server/chunks/{12-XbcleGFd.js → 12-ChbvAloo.js} +2 -2
  198. package/build/server/chunks/{12-XbcleGFd.js.map → 12-ChbvAloo.js.map} +1 -1
  199. package/build/server/chunks/{13-D9eyZVCZ.js → 13-Dlj23jh3.js} +3 -3
  200. package/build/server/chunks/{13-D9eyZVCZ.js.map → 13-Dlj23jh3.js.map} +1 -1
  201. package/build/server/chunks/{14-qYW-h0op.js → 14-D1elkPr9.js} +3 -3
  202. package/build/server/chunks/{14-qYW-h0op.js.map → 14-D1elkPr9.js.map} +1 -1
  203. package/build/server/chunks/{15-wi_onU5j.js → 15-DPDMpQHT.js} +3 -3
  204. package/build/server/chunks/15-DPDMpQHT.js.map +1 -0
  205. package/build/server/chunks/{16-BM4yvuKv.js → 16-BAIR1y-G.js} +5 -5
  206. package/build/server/chunks/{16-BM4yvuKv.js.map → 16-BAIR1y-G.js.map} +1 -1
  207. package/build/server/chunks/{17-CexG3wap.js → 17-Bgy8wV-3.js} +2 -2
  208. package/build/server/chunks/{17-CexG3wap.js.map → 17-Bgy8wV-3.js.map} +1 -1
  209. package/build/server/chunks/{18-DbXlY9LE.js → 18-B12TC_xG.js} +2 -2
  210. package/build/server/chunks/{18-DbXlY9LE.js.map → 18-B12TC_xG.js.map} +1 -1
  211. package/build/server/chunks/{19-AX88i2oC.js → 19-DFUJ-cPC.js} +3 -3
  212. package/build/server/chunks/{19-AX88i2oC.js.map → 19-DFUJ-cPC.js.map} +1 -1
  213. package/build/server/chunks/{2-BMbliYzg.js → 2-C5cHr5Wg.js} +5 -5
  214. package/build/server/chunks/{2-BMbliYzg.js.map → 2-C5cHr5Wg.js.map} +1 -1
  215. package/build/server/chunks/{20-S3QlkFoL.js → 20-7IiGDCfi.js} +11 -11
  216. package/build/server/chunks/{20-S3QlkFoL.js.map → 20-7IiGDCfi.js.map} +1 -1
  217. package/build/server/chunks/{21-BAKPEyjQ.js → 21-CNigSlHO.js} +20 -7
  218. package/build/server/chunks/21-CNigSlHO.js.map +1 -0
  219. package/build/server/chunks/{23-DCiJWF0i.js → 23-Co-jOKsq.js} +6 -6
  220. package/build/server/chunks/{23-DCiJWF0i.js.map → 23-Co-jOKsq.js.map} +1 -1
  221. package/build/server/chunks/{24-B3gXWNYD.js → 24-DvOkSXb5.js} +4 -4
  222. package/build/server/chunks/{24-B3gXWNYD.js.map → 24-DvOkSXb5.js.map} +1 -1
  223. package/build/server/chunks/{25-9yYU1YBX.js → 25-CryepyT_.js} +2 -2
  224. package/build/server/chunks/{25-9yYU1YBX.js.map → 25-CryepyT_.js.map} +1 -1
  225. package/build/server/chunks/{27-GMsHFaaf.js → 27-DtqBEyra.js} +4 -4
  226. package/build/server/chunks/{27-GMsHFaaf.js.map → 27-DtqBEyra.js.map} +1 -1
  227. package/build/server/chunks/{28-DnplSoj0.js → 28-nphTAiOz.js} +3 -3
  228. package/build/server/chunks/{28-DnplSoj0.js.map → 28-nphTAiOz.js.map} +1 -1
  229. package/build/server/chunks/{29-orcjqU9J.js → 29-qD2ff8yc.js} +3 -3
  230. package/build/server/chunks/{29-orcjqU9J.js.map → 29-qD2ff8yc.js.map} +1 -1
  231. package/build/server/chunks/{3-B57IoxU7.js → 3-C1ShQmRn.js} +2 -2
  232. package/build/server/chunks/{3-B57IoxU7.js.map → 3-C1ShQmRn.js.map} +1 -1
  233. package/build/server/chunks/{30-UoUq_V5A.js → 30-DWf41Hl_.js} +3 -3
  234. package/build/server/chunks/{30-UoUq_V5A.js.map → 30-DWf41Hl_.js.map} +1 -1
  235. package/build/server/chunks/{31-BRqIoy8w.js → 31-S98r5Afv.js} +2 -2
  236. package/build/server/chunks/{31-BRqIoy8w.js.map → 31-S98r5Afv.js.map} +1 -1
  237. package/build/server/chunks/{32-D1Mk43AX.js → 32-EvYDgnSw.js} +2 -2
  238. package/build/server/chunks/{32-D1Mk43AX.js.map → 32-EvYDgnSw.js.map} +1 -1
  239. package/build/server/chunks/{5-DMGFkyK4.js → 5-DTeumakx.js} +2 -2
  240. package/build/server/chunks/{5-DMGFkyK4.js.map → 5-DTeumakx.js.map} +1 -1
  241. package/build/server/chunks/{6-CYaPOOMj.js → 6-BYo6Qo8b.js} +3 -3
  242. package/build/server/chunks/{6-CYaPOOMj.js.map → 6-BYo6Qo8b.js.map} +1 -1
  243. package/build/server/chunks/{7-Dk_VmXtf.js → 7-qSmAP9RY.js} +2 -2
  244. package/build/server/chunks/{7-Dk_VmXtf.js.map → 7-qSmAP9RY.js.map} +1 -1
  245. package/build/server/chunks/{8-Ce8EjQtB.js → 8-DeuHkUMB.js} +3 -3
  246. package/build/server/chunks/{8-Ce8EjQtB.js.map → 8-DeuHkUMB.js.map} +1 -1
  247. package/build/server/chunks/{9-DghkKEyM.js → 9-g6Y-orbL.js} +4 -4
  248. package/build/server/chunks/{9-DghkKEyM.js.map → 9-g6Y-orbL.js.map} +1 -1
  249. package/build/server/chunks/{_layout.svelte-xYAKGoE5.js → _layout.svelte-BvTGPzuy.js} +4 -4
  250. package/build/server/chunks/{_layout.svelte-xYAKGoE5.js.map → _layout.svelte-BvTGPzuy.js.map} +1 -1
  251. package/build/server/chunks/{_page.svelte-BR8dze-7.js → _page.svelte-Cj20v_rA.js} +14 -14
  252. package/build/server/chunks/_page.svelte-Cj20v_rA.js.map +1 -0
  253. package/build/server/chunks/{_page.svelte-DSpONoJg.js → _page.svelte-CqD36W22.js} +10 -3
  254. package/build/server/chunks/_page.svelte-CqD36W22.js.map +1 -0
  255. package/build/server/chunks/{_page.svelte-BCCCalas.js → _page.svelte-ewKjgRGP.js} +5 -5
  256. package/build/server/chunks/_page.svelte-ewKjgRGP.js.map +1 -0
  257. package/build/server/chunks/{_server.ts-BX0JGorf.js → _server.ts-8QjiYm48.js} +4 -4
  258. package/build/server/chunks/{_server.ts-BX0JGorf.js.map → _server.ts-8QjiYm48.js.map} +1 -1
  259. package/build/server/chunks/{_server.ts-CHvipMjS.js → _server.ts-BB8U11yC.js} +4 -4
  260. package/build/server/chunks/{_server.ts-CHvipMjS.js.map → _server.ts-BB8U11yC.js.map} +1 -1
  261. package/build/server/chunks/{_server.ts-D5nruaeK.js → _server.ts-BNhuuE9J.js} +6 -6
  262. package/build/server/chunks/{_server.ts-D5nruaeK.js.map → _server.ts-BNhuuE9J.js.map} +1 -1
  263. package/build/server/chunks/{_server.ts-7mF4ytYC.js → _server.ts-BctA3275.js} +4 -4
  264. package/build/server/chunks/{_server.ts-7mF4ytYC.js.map → _server.ts-BctA3275.js.map} +1 -1
  265. package/build/server/chunks/{_server.ts-B2zQRDbu.js → _server.ts-C72MeQO4.js} +2 -2
  266. package/build/server/chunks/{_server.ts-B2zQRDbu.js.map → _server.ts-C72MeQO4.js.map} +1 -1
  267. package/build/server/chunks/{_server.ts-kUn8v9xq.js → _server.ts-C9Y8O11v.js} +4 -4
  268. package/build/server/chunks/{_server.ts-kUn8v9xq.js.map → _server.ts-C9Y8O11v.js.map} +1 -1
  269. package/build/server/chunks/{_server.ts-CKENL0Fr.js → _server.ts-CBXJ3sWT.js} +4 -4
  270. package/build/server/chunks/{_server.ts-CKENL0Fr.js.map → _server.ts-CBXJ3sWT.js.map} +1 -1
  271. package/build/server/chunks/{_server.ts-DLHHpGFa.js → _server.ts-CBupEVgc.js} +3 -3
  272. package/build/server/chunks/{_server.ts-DLHHpGFa.js.map → _server.ts-CBupEVgc.js.map} +1 -1
  273. package/build/server/chunks/{_server.ts-BDeXzj8U.js → _server.ts-CCaOj5qQ.js} +4 -4
  274. package/build/server/chunks/{_server.ts-BDeXzj8U.js.map → _server.ts-CCaOj5qQ.js.map} +1 -1
  275. package/build/server/chunks/{_server.ts-c9y4czsq.js → _server.ts-CVDCtecg.js} +4 -4
  276. package/build/server/chunks/{_server.ts-c9y4czsq.js.map → _server.ts-CVDCtecg.js.map} +1 -1
  277. package/build/server/chunks/{_server.ts-DOstgfdy.js → _server.ts-CYRzm3Te.js} +4 -4
  278. package/build/server/chunks/{_server.ts-DOstgfdy.js.map → _server.ts-CYRzm3Te.js.map} +1 -1
  279. package/build/server/chunks/{_server.ts-DjEulrER.js → _server.ts-CapRJaU0.js} +4 -4
  280. package/build/server/chunks/{_server.ts-DjEulrER.js.map → _server.ts-CapRJaU0.js.map} +1 -1
  281. package/build/server/chunks/{_server.ts-BaHBgmBs.js → _server.ts-CffaoluO.js} +4 -4
  282. package/build/server/chunks/{_server.ts-BaHBgmBs.js.map → _server.ts-CffaoluO.js.map} +1 -1
  283. package/build/server/chunks/{_server.ts-Dx6fUVVo.js → _server.ts-Ci4bczRU.js} +3 -3
  284. package/build/server/chunks/{_server.ts-Dx6fUVVo.js.map → _server.ts-Ci4bczRU.js.map} +1 -1
  285. package/build/server/chunks/{_server.ts-C9SZ9y6W.js → _server.ts-D0jpDtY6.js} +7 -7
  286. package/build/server/chunks/{_server.ts-C9SZ9y6W.js.map → _server.ts-D0jpDtY6.js.map} +1 -1
  287. package/build/server/chunks/{_server.ts-hNeWcDQg.js → _server.ts-D3U55JtM.js} +5 -5
  288. package/build/server/chunks/{_server.ts-hNeWcDQg.js.map → _server.ts-D3U55JtM.js.map} +1 -1
  289. package/build/server/chunks/{_server.ts-BSZknGSV.js → _server.ts-DA2gHOEv.js} +4 -4
  290. package/build/server/chunks/{_server.ts-BSZknGSV.js.map → _server.ts-DA2gHOEv.js.map} +1 -1
  291. package/build/server/chunks/{_server.ts-CIAkL4VM.js → _server.ts-DH46mwMu.js} +4 -4
  292. package/build/server/chunks/{_server.ts-CIAkL4VM.js.map → _server.ts-DH46mwMu.js.map} +1 -1
  293. package/build/server/chunks/{_server.ts-DMSCxMRc.js → _server.ts-DIA0nypE.js} +4 -4
  294. package/build/server/chunks/{_server.ts-DMSCxMRc.js.map → _server.ts-DIA0nypE.js.map} +1 -1
  295. package/build/server/chunks/{_server.ts-CS_06-Es.js → _server.ts-DIDUPMUT.js} +4 -4
  296. package/build/server/chunks/{_server.ts-CS_06-Es.js.map → _server.ts-DIDUPMUT.js.map} +1 -1
  297. package/build/server/chunks/{_server.ts-Njof323z.js → _server.ts-DLL3XSZW.js} +5 -5
  298. package/build/server/chunks/{_server.ts-Njof323z.js.map → _server.ts-DLL3XSZW.js.map} +1 -1
  299. package/build/server/chunks/{_server.ts-MKn8v93k.js → _server.ts-DT5OwjDI.js} +4 -4
  300. package/build/server/chunks/{_server.ts-MKn8v93k.js.map → _server.ts-DT5OwjDI.js.map} +1 -1
  301. package/build/server/chunks/{_server.ts-BbvHHiGq.js → _server.ts-DZfNclhh.js} +4 -4
  302. package/build/server/chunks/{_server.ts-BbvHHiGq.js.map → _server.ts-DZfNclhh.js.map} +1 -1
  303. package/build/server/chunks/{_server.ts-BYTe4ViD.js → _server.ts-DkekkLe3.js} +4 -4
  304. package/build/server/chunks/{_server.ts-BYTe4ViD.js.map → _server.ts-DkekkLe3.js.map} +1 -1
  305. package/build/server/chunks/{_server.ts-B-LWyGZ8.js → _server.ts-DqSYGJwj.js} +4 -4
  306. package/build/server/chunks/{_server.ts-B-LWyGZ8.js.map → _server.ts-DqSYGJwj.js.map} +1 -1
  307. package/build/server/chunks/{_server.ts-CKtVrr5P.js → _server.ts-Dvw_Z0Cw.js} +4 -4
  308. package/build/server/chunks/{_server.ts-CKtVrr5P.js.map → _server.ts-Dvw_Z0Cw.js.map} +1 -1
  309. package/build/server/chunks/{_server.ts-BEGEbcQ_.js → _server.ts-L9E2K0UZ.js} +4 -4
  310. package/build/server/chunks/{_server.ts-BEGEbcQ_.js.map → _server.ts-L9E2K0UZ.js.map} +1 -1
  311. package/build/server/chunks/{_server.ts-Du9sjt--.js → _server.ts-OFmjL3-M.js} +4 -4
  312. package/build/server/chunks/{_server.ts-Du9sjt--.js.map → _server.ts-OFmjL3-M.js.map} +1 -1
  313. package/build/server/chunks/{_server.ts-BUI9hwVF.js → _server.ts-PFG4aGE3.js} +4 -4
  314. package/build/server/chunks/{_server.ts-BUI9hwVF.js.map → _server.ts-PFG4aGE3.js.map} +1 -1
  315. package/build/server/chunks/{_server.ts-MvJCHr1k.js → _server.ts-SVtgpOfH.js} +3 -3
  316. package/build/server/chunks/{_server.ts-MvJCHr1k.js.map → _server.ts-SVtgpOfH.js.map} +1 -1
  317. package/build/server/chunks/{_server.ts-WfRBOO6r.js → _server.ts-YJbrc522.js} +4 -4
  318. package/build/server/chunks/{_server.ts-WfRBOO6r.js.map → _server.ts-YJbrc522.js.map} +1 -1
  319. package/build/server/chunks/{_server.ts-VbLWxdNH.js → _server.ts-bN4Lz9RH.js} +4 -4
  320. package/build/server/chunks/{_server.ts-VbLWxdNH.js.map → _server.ts-bN4Lz9RH.js.map} +1 -1
  321. package/build/server/chunks/{_server.ts-BEW1ndmL.js → _server.ts-bnATlqbs.js} +5 -5
  322. package/build/server/chunks/{_server.ts-BEW1ndmL.js.map → _server.ts-bnATlqbs.js.map} +1 -1
  323. package/build/server/chunks/{_server.ts-07x4zjP2.js → _server.ts-eUYIsIFa.js} +4 -4
  324. package/build/server/chunks/{_server.ts-07x4zjP2.js.map → _server.ts-eUYIsIFa.js.map} +1 -1
  325. package/build/server/chunks/{_server.ts-BXGCxm6J.js → _server.ts-pQtrhbNR.js} +5 -5
  326. package/build/server/chunks/{_server.ts-BXGCxm6J.js.map → _server.ts-pQtrhbNR.js.map} +1 -1
  327. package/build/server/chunks/{_server.ts-B6Zmqwf5.js → _server.ts-tZLezQ2K.js} +4 -4
  328. package/build/server/chunks/{_server.ts-B6Zmqwf5.js.map → _server.ts-tZLezQ2K.js.map} +1 -1
  329. package/build/server/chunks/{_server.ts-DmvmgVIf.js → _server.ts-yWNI61C2.js} +5 -5
  330. package/build/server/chunks/{_server.ts-DmvmgVIf.js.map → _server.ts-yWNI61C2.js.map} +1 -1
  331. package/build/server/chunks/{_server.ts-DahXKbZg.js → _server.ts-z7zvXa1n.js} +3 -3
  332. package/build/server/chunks/{_server.ts-DahXKbZg.js.map → _server.ts-z7zvXa1n.js.map} +1 -1
  333. package/build/server/chunks/{access.server-DGKSuoRH.js → access.server-BIbrdwtI.js} +3 -3
  334. package/build/server/chunks/{access.server-DGKSuoRH.js.map → access.server-BIbrdwtI.js.map} +1 -1
  335. package/build/server/chunks/{api-errors-DSza0CJv.js → api-errors-Dvd_bb0g.js} +2 -2
  336. package/build/server/chunks/{api-errors-DSza0CJv.js.map → api-errors-Dvd_bb0g.js.map} +1 -1
  337. package/build/server/chunks/{auth-bootstrap.server-YBvyz9i1.js → auth-bootstrap.server-B93MMm50.js} +3 -2
  338. package/build/server/chunks/auth-bootstrap.server-B93MMm50.js.map +1 -0
  339. package/build/server/chunks/{bootHealth.server-DwPUi_JC.js → bootHealth.server-CCMjOn0m.js} +2 -2
  340. package/build/server/chunks/{bootHealth.server-DwPUi_JC.js.map → bootHealth.server-CCMjOn0m.js.map} +1 -1
  341. package/build/server/chunks/{hooks.server---blwhkE.js → hooks.server-BEJK3uzD.js} +29 -4
  342. package/build/server/chunks/hooks.server-BEJK3uzD.js.map +1 -0
  343. package/build/server/chunks/{permissions.server-toUY36oB.js → permissions.server-Bfvp6EaK.js} +2 -2
  344. package/build/server/chunks/{permissions.server-toUY36oB.js.map → permissions.server-Bfvp6EaK.js.map} +1 -1
  345. package/build/server/chunks/{providers.server-gJvnJT_K.js → providers.server-CuhJFeVB.js} +39 -3
  346. package/build/server/chunks/providers.server-CuhJFeVB.js.map +1 -0
  347. package/build/server/chunks/{resolve.server-Ca9AsrIQ.js → resolve.server-ButnJP6T.js} +3 -3
  348. package/build/server/chunks/{resolve.server-Ca9AsrIQ.js.map → resolve.server-ButnJP6T.js.map} +1 -1
  349. package/build/server/chunks/{resolve.server2-B0RMxSCk.js → resolve.server2-BniR9tSC.js} +2 -2
  350. package/build/server/chunks/{resolve.server2-B0RMxSCk.js.map → resolve.server2-BniR9tSC.js.map} +1 -1
  351. package/build/server/chunks/{utils2-DfCIUv4X.js → utils2-BZ2tVtxn.js} +2 -2
  352. package/build/server/chunks/{utils2-DfCIUv4X.js.map → utils2-BZ2tVtxn.js.map} +1 -1
  353. package/build/server/index.js +2 -2
  354. package/build/server/index.js.map +1 -1
  355. package/build/server/manifest.js +70 -70
  356. package/build/server/manifest.js.map +1 -1
  357. package/package.json +3 -3
  358. package/build/client/.!34937!selva_example_0_1_0.gh +0 -0
  359. package/build/client/_app/immutable/assets/20.5bKkcx-V.css +0 -1
  360. package/build/client/_app/immutable/assets/20.5bKkcx-V.css.br +0 -0
  361. package/build/client/_app/immutable/assets/20.5bKkcx-V.css.gz +0 -0
  362. package/build/client/_app/immutable/chunks/8jxh9FTC.js.br +0 -0
  363. package/build/client/_app/immutable/chunks/8jxh9FTC.js.gz +0 -0
  364. package/build/client/_app/immutable/chunks/B1839-Qe.js.br +0 -0
  365. package/build/client/_app/immutable/chunks/B1839-Qe.js.gz +0 -0
  366. package/build/client/_app/immutable/chunks/BB7Ce_Ao.js.br +0 -0
  367. package/build/client/_app/immutable/chunks/BB7Ce_Ao.js.gz +0 -0
  368. package/build/client/_app/immutable/chunks/BG4KYJxd.js.br +0 -0
  369. package/build/client/_app/immutable/chunks/BG4KYJxd.js.gz +0 -0
  370. package/build/client/_app/immutable/chunks/BLObdRkl.js.br +0 -0
  371. package/build/client/_app/immutable/chunks/BLObdRkl.js.gz +0 -0
  372. package/build/client/_app/immutable/chunks/Dx1NLq6A.js.br +0 -0
  373. package/build/client/_app/immutable/chunks/Dx1NLq6A.js.gz +0 -0
  374. package/build/client/_app/immutable/entry/app.iSZ5n5at.js.br +0 -0
  375. package/build/client/_app/immutable/entry/app.iSZ5n5at.js.gz +0 -0
  376. package/build/client/_app/immutable/entry/start.DN1mprbr.js +0 -1
  377. package/build/client/_app/immutable/entry/start.DN1mprbr.js.br +0 -2
  378. package/build/client/_app/immutable/entry/start.DN1mprbr.js.gz +0 -0
  379. package/build/client/_app/immutable/nodes/0.KJ-PiM1c.js.br +0 -0
  380. package/build/client/_app/immutable/nodes/0.KJ-PiM1c.js.gz +0 -0
  381. package/build/client/_app/immutable/nodes/1.B3iyxTLe.js.br +0 -0
  382. package/build/client/_app/immutable/nodes/1.B3iyxTLe.js.gz +0 -0
  383. package/build/client/_app/immutable/nodes/11.C0bOSA5Z.js.br +0 -0
  384. package/build/client/_app/immutable/nodes/11.C0bOSA5Z.js.gz +0 -0
  385. package/build/client/_app/immutable/nodes/13.BBX4st-t.js.br +0 -0
  386. package/build/client/_app/immutable/nodes/13.BBX4st-t.js.gz +0 -0
  387. package/build/client/_app/immutable/nodes/14.S-GLVBVi.js.br +0 -0
  388. package/build/client/_app/immutable/nodes/14.S-GLVBVi.js.gz +0 -0
  389. package/build/client/_app/immutable/nodes/16.ukqcuKdq.js.br +0 -0
  390. package/build/client/_app/immutable/nodes/16.ukqcuKdq.js.gz +0 -0
  391. package/build/client/_app/immutable/nodes/17.DsZpiT_T.js.br +0 -0
  392. package/build/client/_app/immutable/nodes/17.DsZpiT_T.js.gz +0 -0
  393. package/build/client/_app/immutable/nodes/19.De1qTu0Z.js.br +0 -0
  394. package/build/client/_app/immutable/nodes/19.De1qTu0Z.js.gz +0 -0
  395. package/build/client/_app/immutable/nodes/2.D9zIVWl1.js.br +0 -0
  396. package/build/client/_app/immutable/nodes/2.D9zIVWl1.js.gz +0 -0
  397. package/build/client/_app/immutable/nodes/20.DxsctpJH.js.br +0 -0
  398. package/build/client/_app/immutable/nodes/20.DxsctpJH.js.gz +0 -0
  399. package/build/client/_app/immutable/nodes/21.-SL0S8PQ.js +0 -3
  400. package/build/client/_app/immutable/nodes/21.-SL0S8PQ.js.br +0 -0
  401. package/build/client/_app/immutable/nodes/21.-SL0S8PQ.js.gz +0 -0
  402. package/build/client/_app/immutable/nodes/23.VZ_boRL-.js.br +0 -0
  403. package/build/client/_app/immutable/nodes/23.VZ_boRL-.js.gz +0 -0
  404. package/build/client/_app/immutable/nodes/24.B9kY2pb5.js.br +0 -0
  405. package/build/client/_app/immutable/nodes/24.B9kY2pb5.js.gz +0 -0
  406. package/build/client/_app/immutable/nodes/27.DZwrstUI.js.br +0 -0
  407. package/build/client/_app/immutable/nodes/27.DZwrstUI.js.gz +0 -0
  408. package/build/client/_app/immutable/nodes/28.MnyfwNy0.js.br +0 -0
  409. package/build/client/_app/immutable/nodes/28.MnyfwNy0.js.gz +0 -0
  410. package/build/client/_app/immutable/nodes/29.CNTJCITP.js.br +0 -0
  411. package/build/client/_app/immutable/nodes/3.KI4lh69U.js.br +0 -0
  412. package/build/client/_app/immutable/nodes/3.KI4lh69U.js.gz +0 -0
  413. package/build/client/_app/immutable/nodes/30.Ct1smdjS.js.br +0 -0
  414. package/build/client/_app/immutable/nodes/30.Ct1smdjS.js.gz +0 -0
  415. package/build/client/_app/immutable/nodes/5.BN9x0bOB.js.br +0 -0
  416. package/build/client/_app/immutable/nodes/5.BN9x0bOB.js.gz +0 -0
  417. package/build/client/_app/immutable/nodes/6.BU_SGWVX.js.br +0 -0
  418. package/build/client/_app/immutable/nodes/6.BU_SGWVX.js.gz +0 -0
  419. package/build/client/_app/immutable/nodes/7.9jzNcaAs.js.br +0 -0
  420. package/build/client/_app/immutable/nodes/7.9jzNcaAs.js.gz +0 -0
  421. package/build/client/_app/immutable/nodes/8.BvaBLt60.js.br +0 -0
  422. package/build/client/_app/immutable/nodes/8.BvaBLt60.js.gz +0 -0
  423. package/build/client/_app/immutable/nodes/9.CzG8ag1t.js +0 -1
  424. package/build/client/_app/immutable/nodes/9.CzG8ag1t.js.br +0 -0
  425. package/build/client/_app/immutable/nodes/9.CzG8ag1t.js.gz +0 -0
  426. package/build/server/chunks/15-wi_onU5j.js.map +0 -1
  427. package/build/server/chunks/21-BAKPEyjQ.js.map +0 -1
  428. package/build/server/chunks/_page.svelte-BCCCalas.js.map +0 -1
  429. package/build/server/chunks/_page.svelte-BR8dze-7.js.map +0 -1
  430. package/build/server/chunks/_page.svelte-DSpONoJg.js.map +0 -1
  431. package/build/server/chunks/auth-bootstrap.server-YBvyz9i1.js.map +0 -1
  432. package/build/server/chunks/hooks.server---blwhkE.js.map +0 -1
  433. package/build/server/chunks/providers.server-gJvnJT_K.js.map +0 -1
@@ -1,6 +1,6 @@
1
1
  import { error } from '@sveltejs/kit';
2
- import { i as getDefinitionMeta, m as getStorageProvider, s as definitionPaths } from './providers.server-gJvnJT_K.js';
3
- import { h as requireCanViewProject } from './access.server-DGKSuoRH.js';
2
+ import { i as getDefinitionMeta, m as getStorageProvider, s as definitionPaths } from './providers.server-CuhJFeVB.js';
3
+ import { h as requireCanViewProject } from './access.server-BIbrdwtI.js';
4
4
  import { C as COVER_IMAGE_CONTENT_TYPES } from './types-DxzJoaA4.js';
5
5
  import { G as GuidSchema } from './context-9tV9WxQ5.js';
6
6
  import './computeLimits-FIJ-Mzn4.js';
@@ -11,7 +11,7 @@ import 'node:fs';
11
11
  import 'node:crypto';
12
12
  import 'node:fs/promises';
13
13
  import '@supabase/supabase-js';
14
- import './api-errors-DSza0CJv.js';
14
+ import './api-errors-Dvd_bb0g.js';
15
15
  import 'zod';
16
16
 
17
17
  const GET = async ({ params, locals }) => {
@@ -36,4 +36,4 @@ const GET = async ({ params, locals }) => {
36
36
  };
37
37
 
38
38
  export { GET };
39
- //# sourceMappingURL=_server.ts-CS_06-Es.js.map
39
+ //# sourceMappingURL=_server.ts-DIDUPMUT.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-CS_06-Es.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/definitions/_guid_/image/_filename_/_server.ts.js"],"sourcesContent":["import { error } from \"@sveltejs/kit\";\nimport { l as getDefinitionMeta, j as getStorageProvider, m as definitionPaths } from \"../../../../../../../chunks/providers.server.js\";\nimport { h as requireCanViewProject } from \"../../../../../../../chunks/access.server.js\";\nimport { C as COVER_IMAGE_CONTENT_TYPES } from \"../../../../../../../chunks/types.js\";\nimport { G as GuidSchema } from \"../../../../../../../chunks/context.js\";\nimport \"../../../../../../../chunks/computeLimits.js\";\nconst GET = async ({ params, locals }) => {\n const guidParsed = GuidSchema.safeParse(params.guid);\n if (!guidParsed.success) throw error(400, \"Invalid GUID\");\n const guid = guidParsed.data;\n const ctx = locals.ctx;\n const record = await getDefinitionMeta().get(ctx, guid);\n if (!record?.coverImage) throw error(404, \"Image not found\");\n await requireCanViewProject(locals, record.projectId);\n const storedFilename = record.coverImage.split(\"/\").pop() ?? \"cover.webp\";\n const ext = storedFilename.substring(storedFilename.lastIndexOf(\".\")).toLowerCase();\n const contentType = COVER_IMAGE_CONTENT_TYPES[ext] ?? \"image/webp\";\n const bytes = await getStorageProvider().get(definitionPaths.image(guid));\n if (!bytes) throw error(404, \"Image not found\");\n return new Response(Buffer.from(bytes), {\n headers: {\n \"Content-Type\": contentType,\n \"Cache-Control\": \"public, max-age=3600\"\n }\n });\n};\nexport {\n GET\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAMK,MAAC,GAAG,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK;AAC1C,EAAE,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;AACtD,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,cAAc,CAAC;AAC3D,EAAE,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI;AAC9B,EAAE,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG;AACxB,EAAE,MAAM,MAAM,GAAG,MAAM,iBAAiB,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC;AACzD,EAAE,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,iBAAiB,CAAC;AAC9D,EAAE,MAAM,qBAAqB,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC;AACvD,EAAE,MAAM,cAAc,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,YAAY;AAC3E,EAAE,MAAM,GAAG,GAAG,cAAc,CAAC,SAAS,CAAC,cAAc,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE;AACrF,EAAE,MAAM,WAAW,GAAG,yBAAyB,CAAC,GAAG,CAAC,IAAI,YAAY;AACpE,EAAE,MAAM,KAAK,GAAG,MAAM,kBAAkB,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAC3E,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,iBAAiB,CAAC;AACjD,EAAE,OAAO,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;AAC1C,IAAI,OAAO,EAAE;AACb,MAAM,cAAc,EAAE,WAAW;AACjC,MAAM,eAAe,EAAE;AACvB;AACA,GAAG,CAAC;AACJ;;;;"}
1
+ {"version":3,"file":"_server.ts-DIDUPMUT.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/definitions/_guid_/image/_filename_/_server.ts.js"],"sourcesContent":["import { error } from \"@sveltejs/kit\";\nimport { l as getDefinitionMeta, j as getStorageProvider, m as definitionPaths } from \"../../../../../../../chunks/providers.server.js\";\nimport { h as requireCanViewProject } from \"../../../../../../../chunks/access.server.js\";\nimport { C as COVER_IMAGE_CONTENT_TYPES } from \"../../../../../../../chunks/types.js\";\nimport { G as GuidSchema } from \"../../../../../../../chunks/context.js\";\nimport \"../../../../../../../chunks/computeLimits.js\";\nconst GET = async ({ params, locals }) => {\n const guidParsed = GuidSchema.safeParse(params.guid);\n if (!guidParsed.success) throw error(400, \"Invalid GUID\");\n const guid = guidParsed.data;\n const ctx = locals.ctx;\n const record = await getDefinitionMeta().get(ctx, guid);\n if (!record?.coverImage) throw error(404, \"Image not found\");\n await requireCanViewProject(locals, record.projectId);\n const storedFilename = record.coverImage.split(\"/\").pop() ?? \"cover.webp\";\n const ext = storedFilename.substring(storedFilename.lastIndexOf(\".\")).toLowerCase();\n const contentType = COVER_IMAGE_CONTENT_TYPES[ext] ?? \"image/webp\";\n const bytes = await getStorageProvider().get(definitionPaths.image(guid));\n if (!bytes) throw error(404, \"Image not found\");\n return new Response(Buffer.from(bytes), {\n headers: {\n \"Content-Type\": contentType,\n \"Cache-Control\": \"public, max-age=3600\"\n }\n });\n};\nexport {\n GET\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAMK,MAAC,GAAG,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK;AAC1C,EAAE,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;AACtD,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,cAAc,CAAC;AAC3D,EAAE,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI;AAC9B,EAAE,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG;AACxB,EAAE,MAAM,MAAM,GAAG,MAAM,iBAAiB,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC;AACzD,EAAE,IAAI,CAAC,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,iBAAiB,CAAC;AAC9D,EAAE,MAAM,qBAAqB,CAAC,MAAM,EAAE,MAAM,CAAC,SAAS,CAAC;AACvD,EAAE,MAAM,cAAc,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,YAAY;AAC3E,EAAE,MAAM,GAAG,GAAG,cAAc,CAAC,SAAS,CAAC,cAAc,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE;AACrF,EAAE,MAAM,WAAW,GAAG,yBAAyB,CAAC,GAAG,CAAC,IAAI,YAAY;AACpE,EAAE,MAAM,KAAK,GAAG,MAAM,kBAAkB,EAAE,CAAC,GAAG,CAAC,eAAe,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;AAC3E,EAAE,IAAI,CAAC,KAAK,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,iBAAiB,CAAC;AACjD,EAAE,OAAO,IAAI,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE;AAC1C,IAAI,OAAO,EAAE;AACb,MAAM,cAAc,EAAE,WAAW;AACjC,MAAM,eAAe,EAAE;AACvB;AACA,GAAG,CAAC;AACJ;;;;"}
@@ -1,8 +1,8 @@
1
1
  import { json, error } from '@sveltejs/kit';
2
- import { j as getComputeServerConfigStore } from './providers.server-gJvnJT_K.js';
3
- import { r as requireManageCompute } from './access.server-DGKSuoRH.js';
2
+ import { j as getComputeServerConfigStore } from './providers.server-CuhJFeVB.js';
3
+ import { r as requireManageCompute } from './access.server-BIbrdwtI.js';
4
4
  import './context-9tV9WxQ5.js';
5
- import { p as platformServers } from './utils2-DfCIUv4X.js';
5
+ import { p as platformServers } from './utils2-BZ2tVtxn.js';
6
6
  import './shared-server-DaWdgxVh.js';
7
7
  import 'node:url';
8
8
  import 'node:path';
@@ -10,7 +10,7 @@ import 'node:fs';
10
10
  import 'node:crypto';
11
11
  import 'node:fs/promises';
12
12
  import '@supabase/supabase-js';
13
- import './api-errors-DSza0CJv.js';
13
+ import './api-errors-Dvd_bb0g.js';
14
14
  import 'zod';
15
15
 
16
16
  const GET = async ({ locals }) => {
@@ -82,4 +82,4 @@ const PUT = async ({ request, locals }) => {
82
82
  };
83
83
 
84
84
  export { GET, PUT };
85
- //# sourceMappingURL=_server.ts-Njof323z.js.map
85
+ //# sourceMappingURL=_server.ts-DLL3XSZW.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-Njof323z.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/api/compute/_server.ts.js"],"sourcesContent":["import { json, error } from \"@sveltejs/kit\";\nimport { g as getComputeServerConfigStore } from \"../../../../../chunks/providers.server.js\";\nimport { r as requireManageCompute } from \"../../../../../chunks/access.server.js\";\nimport \"../../../../../chunks/context.js\";\nimport { p as platformServers } from \"../../../../../chunks/utils2.js\";\nconst GET = async ({ locals }) => {\n requireManageCompute(locals);\n try {\n const config = await getComputeServerConfigStore().getConfig(locals.ctx);\n const servers = platformServers(config).map(\n ({ apiKey, ...rest }) => ({\n ...rest,\n hasApiKey: !!apiKey\n })\n );\n return json({\n servers,\n defaultServerId: config.defaultServerId\n });\n } catch (err) {\n console.error(\"[Compute GET] Failed:\", err);\n throw error(500, \"Failed to load compute config\");\n }\n};\nconst PUT = async ({ request, locals }) => {\n requireManageCompute(locals);\n const body = await request.json().catch(() => null);\n if (!body || typeof body !== \"object\") throw error(400, \"Invalid request body\");\n const incoming = body;\n if (!Array.isArray(incoming.servers)) throw error(400, \"servers must be an array\");\n for (const s of incoming.servers) {\n if (!s.id || typeof s.id !== \"string\") throw error(400, \"Each server needs an id\");\n if (!s.label || typeof s.label !== \"string\") throw error(400, \"Each server needs a label\");\n if (!s.serverUrl || typeof s.serverUrl !== \"string\")\n throw error(400, \"Each server needs a serverUrl\");\n try {\n new URL(s.serverUrl);\n } catch {\n throw error(400, `Invalid serverUrl: ${s.serverUrl}`);\n }\n if (s.sharedWith !== \"all\" && !Array.isArray(s.sharedWith)) {\n throw error(400, 'sharedWith must be \"all\" or an array of org ids');\n }\n if (Array.isArray(s.sharedWith) && s.sharedWith.some((x) => typeof x !== \"string\")) {\n throw error(400, \"sharedWith array must contain strings\");\n }\n if (s.apiKey !== void 0 && s.apiKey !== null && typeof s.apiKey !== \"string\")\n throw error(400, \"apiKey must be a string, null, or omitted\");\n }\n if (incoming.defaultServerId) {\n const found = incoming.servers.find((s) => s.id === incoming.defaultServerId);\n if (!found) throw error(400, \"defaultServerId must reference one of the submitted servers\");\n }\n try {\n const provider = getComputeServerConfigStore();\n const existing = await provider.getConfig(locals.ctx);\n const storedKeyById = new Map(platformServers(existing).map((s) => [s.id, s.apiKey]));\n const next = incoming.servers.map(\n ({ apiKey, sharedWith, ...rest }) => ({\n ...rest,\n scope: \"platform\",\n sharedWith: sharedWith === \"all\" ? \"all\" : [...sharedWith],\n apiKey: apiKey === null ? void 0 : apiKey ? apiKey : storedKeyById.get(rest.id)\n })\n );\n await provider.savePlatformServers(locals.ctx, next, incoming.defaultServerId);\n return new Response(null, { status: 204 });\n } catch (err) {\n console.error(\"[Compute PUT] Failed:\", err);\n throw error(500, \"Failed to save compute config\");\n }\n};\nexport {\n GET,\n PUT\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_server.ts-DLL3XSZW.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/api/compute/_server.ts.js"],"sourcesContent":["import { json, error } from \"@sveltejs/kit\";\nimport { g as getComputeServerConfigStore } from \"../../../../../chunks/providers.server.js\";\nimport { r as requireManageCompute } from \"../../../../../chunks/access.server.js\";\nimport \"../../../../../chunks/context.js\";\nimport { p as platformServers } from \"../../../../../chunks/utils2.js\";\nconst GET = async ({ locals }) => {\n requireManageCompute(locals);\n try {\n const config = await getComputeServerConfigStore().getConfig(locals.ctx);\n const servers = platformServers(config).map(\n ({ apiKey, ...rest }) => ({\n ...rest,\n hasApiKey: !!apiKey\n })\n );\n return json({\n servers,\n defaultServerId: config.defaultServerId\n });\n } catch (err) {\n console.error(\"[Compute GET] Failed:\", err);\n throw error(500, \"Failed to load compute config\");\n }\n};\nconst PUT = async ({ request, locals }) => {\n requireManageCompute(locals);\n const body = await request.json().catch(() => null);\n if (!body || typeof body !== \"object\") throw error(400, \"Invalid request body\");\n const incoming = body;\n if (!Array.isArray(incoming.servers)) throw error(400, \"servers must be an array\");\n for (const s of incoming.servers) {\n if (!s.id || typeof s.id !== \"string\") throw error(400, \"Each server needs an id\");\n if (!s.label || typeof s.label !== \"string\") throw error(400, \"Each server needs a label\");\n if (!s.serverUrl || typeof s.serverUrl !== \"string\")\n throw error(400, \"Each server needs a serverUrl\");\n try {\n new URL(s.serverUrl);\n } catch {\n throw error(400, `Invalid serverUrl: ${s.serverUrl}`);\n }\n if (s.sharedWith !== \"all\" && !Array.isArray(s.sharedWith)) {\n throw error(400, 'sharedWith must be \"all\" or an array of org ids');\n }\n if (Array.isArray(s.sharedWith) && s.sharedWith.some((x) => typeof x !== \"string\")) {\n throw error(400, \"sharedWith array must contain strings\");\n }\n if (s.apiKey !== void 0 && s.apiKey !== null && typeof s.apiKey !== \"string\")\n throw error(400, \"apiKey must be a string, null, or omitted\");\n }\n if (incoming.defaultServerId) {\n const found = incoming.servers.find((s) => s.id === incoming.defaultServerId);\n if (!found) throw error(400, \"defaultServerId must reference one of the submitted servers\");\n }\n try {\n const provider = getComputeServerConfigStore();\n const existing = await provider.getConfig(locals.ctx);\n const storedKeyById = new Map(platformServers(existing).map((s) => [s.id, s.apiKey]));\n const next = incoming.servers.map(\n ({ apiKey, sharedWith, ...rest }) => ({\n ...rest,\n scope: \"platform\",\n sharedWith: sharedWith === \"all\" ? \"all\" : [...sharedWith],\n apiKey: apiKey === null ? void 0 : apiKey ? apiKey : storedKeyById.get(rest.id)\n })\n );\n await provider.savePlatformServers(locals.ctx, next, incoming.defaultServerId);\n return new Response(null, { status: 204 });\n } catch (err) {\n console.error(\"[Compute PUT] Failed:\", err);\n throw error(500, \"Failed to save compute config\");\n }\n};\nexport {\n GET,\n PUT\n};\n"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { error, json } from '@sveltejs/kit';
2
- import { f as flag, k as getPlatformProjectGrantStore } from './providers.server-gJvnJT_K.js';
3
- import { a as requireInstanceAdmin } from './access.server-DGKSuoRH.js';
4
- import { h as handleApiError } from './api-errors-DSza0CJv.js';
2
+ import { f as flag, k as getPlatformProjectGrantStore } from './providers.server-CuhJFeVB.js';
3
+ import { a as requireInstanceAdmin } from './access.server-BIbrdwtI.js';
4
+ import { h as handleApiError } from './api-errors-Dvd_bb0g.js';
5
5
  import { S as SYSTEM_CONTEXT } from './context-9tV9WxQ5.js';
6
6
  import './shared-server-DaWdgxVh.js';
7
7
  import 'node:url';
@@ -26,4 +26,4 @@ const DELETE = async ({ params, locals }) => {
26
26
  };
27
27
 
28
28
  export { DELETE };
29
- //# sourceMappingURL=_server.ts-MKn8v93k.js.map
29
+ //# sourceMappingURL=_server.ts-DT5OwjDI.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-MKn8v93k.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/api/projects/_id_/grants/_grantId_/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { f as flag, c as getPlatformProjectGrantStore } from \"../../../../../../../../chunks/providers.server.js\";\nimport { a as requireInstanceAdmin } from \"../../../../../../../../chunks/access.server.js\";\nimport { h as handleApiError } from \"../../../../../../../../chunks/api-errors.js\";\nimport { S as SYSTEM_CONTEXT } from \"../../../../../../../../chunks/context.js\";\nconst DELETE = async ({ params, locals }) => {\n requireInstanceAdmin(locals);\n if (!flag(\"ENABLE_PLATFORM_PROJECTS\")) throw error(404, \"Not found\");\n const { grantId } = params;\n if (!grantId) throw error(400, \"Missing grant ID\");\n try {\n await getPlatformProjectGrantStore().delete(SYSTEM_CONTEXT, grantId);\n return json({ success: true });\n } catch (err) {\n handleApiError(err, \"Failed to revoke grant\");\n }\n};\nexport {\n DELETE\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAKK,MAAC,MAAM,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK;AAC7C,EAAE,oBAAoB,CAAC,MAAM,CAAC;AAC9B,EAAE,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,WAAW,CAAC;AACtE,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM;AAC5B,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,kBAAkB,CAAC;AACpD,EAAE,IAAI;AACN,IAAI,MAAM,4BAA4B,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,OAAO,CAAC;AACxE,IAAI,OAAO,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAClC,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,wBAAwB,CAAC;AACjD,EAAE;AACF;;;;"}
1
+ {"version":3,"file":"_server.ts-DT5OwjDI.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/api/projects/_id_/grants/_grantId_/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { f as flag, c as getPlatformProjectGrantStore } from \"../../../../../../../../chunks/providers.server.js\";\nimport { a as requireInstanceAdmin } from \"../../../../../../../../chunks/access.server.js\";\nimport { h as handleApiError } from \"../../../../../../../../chunks/api-errors.js\";\nimport { S as SYSTEM_CONTEXT } from \"../../../../../../../../chunks/context.js\";\nconst DELETE = async ({ params, locals }) => {\n requireInstanceAdmin(locals);\n if (!flag(\"ENABLE_PLATFORM_PROJECTS\")) throw error(404, \"Not found\");\n const { grantId } = params;\n if (!grantId) throw error(400, \"Missing grant ID\");\n try {\n await getPlatformProjectGrantStore().delete(SYSTEM_CONTEXT, grantId);\n return json({ success: true });\n } catch (err) {\n handleApiError(err, \"Failed to revoke grant\");\n }\n};\nexport {\n DELETE\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAKK,MAAC,MAAM,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK;AAC7C,EAAE,oBAAoB,CAAC,MAAM,CAAC;AAC9B,EAAE,IAAI,CAAC,IAAI,CAAC,0BAA0B,CAAC,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,WAAW,CAAC;AACtE,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM;AAC5B,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,kBAAkB,CAAC;AACpD,EAAE,IAAI;AACN,IAAI,MAAM,4BAA4B,EAAE,CAAC,MAAM,CAAC,cAAc,EAAE,OAAO,CAAC;AACxE,IAAI,OAAO,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAClC,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,wBAAwB,CAAC;AACjD,EAAE;AACF;;;;"}
@@ -1,8 +1,8 @@
1
1
  import { error, json } from '@sveltejs/kit';
2
2
  import { z } from 'zod';
3
- import { h as getProjectProvider } from './providers.server-gJvnJT_K.js';
4
- import { o as requireCanManageMembers, q as checkOwnerRemoval } from './access.server-DGKSuoRH.js';
5
- import { h as handleApiError, t as throwZodError } from './api-errors-DSza0CJv.js';
3
+ import { h as getProjectProvider } from './providers.server-CuhJFeVB.js';
4
+ import { o as requireCanManageMembers, q as checkOwnerRemoval } from './access.server-BIbrdwtI.js';
5
+ import { h as handleApiError, t as throwZodError } from './api-errors-Dvd_bb0g.js';
6
6
  import { i as ProjectRoleSchema } from './context-9tV9WxQ5.js';
7
7
  import './shared-server-DaWdgxVh.js';
8
8
  import 'node:url';
@@ -68,4 +68,4 @@ const DELETE = async ({ params, url, locals }) => {
68
68
  };
69
69
 
70
70
  export { DELETE, PATCH };
71
- //# sourceMappingURL=_server.ts-BbvHHiGq.js.map
71
+ //# sourceMappingURL=_server.ts-DZfNclhh.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-BbvHHiGq.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/projects/_id_/members/_userId_/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { z } from \"zod\";\nimport { b as getProjectProvider } from \"../../../../../../../chunks/providers.server.js\";\nimport { o as requireCanManageMembers, q as checkOwnerRemoval } from \"../../../../../../../chunks/access.server.js\";\nimport { h as handleApiError, t as throwZodError } from \"../../../../../../../chunks/api-errors.js\";\nimport { i as ProjectRoleSchema } from \"../../../../../../../chunks/context.js\";\nconst UpdateRoleSchema = z.object({ role: ProjectRoleSchema });\nconst PATCH = async ({ params, request, locals }) => {\n const { id, userId } = params;\n if (!id || !userId) throw error(400, \"Missing project ID or user ID\");\n await requireCanManageMembers(locals, id);\n const ctx = locals.ctx;\n const body = await request.json().catch(() => null);\n const parsed = UpdateRoleSchema.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n try {\n await getProjectProvider().updateProjectMemberRole(ctx, id, userId, parsed.data.role);\n return json({ success: true });\n } catch (err) {\n handleApiError(err, \"Failed to update role\");\n }\n};\nconst DELETE = async ({ params, url, locals }) => {\n const { id, userId } = params;\n if (!id || !userId) throw error(400, \"Missing project ID or user ID\");\n await requireCanManageMembers(locals, id);\n const ctx = locals.ctx;\n const confirmed = url.searchParams.get(\"confirm\") === \"true\";\n const projects = getProjectProvider();\n const target = await projects.getProjectMember(ctx, id, userId);\n if (!target) {\n return json({ success: true });\n }\n if (target.role === \"owner\") {\n const page = await projects.listProjectMembers(ctx, id, { limit: 200 });\n const decision = checkOwnerRemoval({\n target: { role: target.role },\n allMembers: page.items.map((m) => ({ role: m.role })),\n confirmed\n });\n if (decision === \"sole_owner\") {\n throw error(\n 409,\n \"Cannot remove the sole owner of a project. Assign another owner first, or use reclaim to add a co-owner.\"\n );\n }\n if (decision === \"needs_confirm\") {\n throw error(\n 409,\n \"Removing another project owner requires explicit confirmation. Retry with ?confirm=true.\"\n );\n }\n }\n try {\n await projects.removeProjectMember(ctx, id, userId);\n return json({ success: true });\n } catch (err) {\n handleApiError(err, \"Failed to remove member\");\n }\n};\nexport {\n DELETE,\n PATCH\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_server.ts-DZfNclhh.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/projects/_id_/members/_userId_/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { z } from \"zod\";\nimport { b as getProjectProvider } from \"../../../../../../../chunks/providers.server.js\";\nimport { o as requireCanManageMembers, q as checkOwnerRemoval } from \"../../../../../../../chunks/access.server.js\";\nimport { h as handleApiError, t as throwZodError } from \"../../../../../../../chunks/api-errors.js\";\nimport { i as ProjectRoleSchema } from \"../../../../../../../chunks/context.js\";\nconst UpdateRoleSchema = z.object({ role: ProjectRoleSchema });\nconst PATCH = async ({ params, request, locals }) => {\n const { id, userId } = params;\n if (!id || !userId) throw error(400, \"Missing project ID or user ID\");\n await requireCanManageMembers(locals, id);\n const ctx = locals.ctx;\n const body = await request.json().catch(() => null);\n const parsed = UpdateRoleSchema.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n try {\n await getProjectProvider().updateProjectMemberRole(ctx, id, userId, parsed.data.role);\n return json({ success: true });\n } catch (err) {\n handleApiError(err, \"Failed to update role\");\n }\n};\nconst DELETE = async ({ params, url, locals }) => {\n const { id, userId } = params;\n if (!id || !userId) throw error(400, \"Missing project ID or user ID\");\n await requireCanManageMembers(locals, id);\n const ctx = locals.ctx;\n const confirmed = url.searchParams.get(\"confirm\") === \"true\";\n const projects = getProjectProvider();\n const target = await projects.getProjectMember(ctx, id, userId);\n if (!target) {\n return json({ success: true });\n }\n if (target.role === \"owner\") {\n const page = await projects.listProjectMembers(ctx, id, { limit: 200 });\n const decision = checkOwnerRemoval({\n target: { role: target.role },\n allMembers: page.items.map((m) => ({ role: m.role })),\n confirmed\n });\n if (decision === \"sole_owner\") {\n throw error(\n 409,\n \"Cannot remove the sole owner of a project. Assign another owner first, or use reclaim to add a co-owner.\"\n );\n }\n if (decision === \"needs_confirm\") {\n throw error(\n 409,\n \"Removing another project owner requires explicit confirmation. Retry with ?confirm=true.\"\n );\n }\n }\n try {\n await projects.removeProjectMember(ctx, id, userId);\n return json({ success: true });\n } catch (err) {\n handleApiError(err, \"Failed to remove member\");\n }\n};\nexport {\n DELETE,\n PATCH\n};\n"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import { error, json } from '@sveltejs/kit';
2
2
  import { randomUUID } from 'node:crypto';
3
3
  import { z } from 'zod';
4
- import { d as getInviteStore } from './providers.server-gJvnJT_K.js';
5
- import { i as requireManageOrgMembers } from './access.server-DGKSuoRH.js';
6
- import { h as handleApiError, t as throwZodError } from './api-errors-DSza0CJv.js';
4
+ import { d as getInviteStore } from './providers.server-CuhJFeVB.js';
5
+ import { i as requireManageOrgMembers } from './access.server-BIbrdwtI.js';
6
+ import { h as handleApiError, t as throwZodError } from './api-errors-Dvd_bb0g.js';
7
7
  import { M as MEMBER_ASSIGNABLE_PERMISSIONS, D as DEFAULT_ORG_PERMISSIONS, f as OrgRoleSchema, P as PlatformPermissionSchema, O as OrgPermissionSchema } from './context-9tV9WxQ5.js';
8
8
  import { s as splitFlatPermissions } from './permissions-compat.server-DSV7bClF.js';
9
9
  import { m as mintRawToken, h as hashToken } from './token.server2-D0Z99lBB.js';
@@ -67,4 +67,4 @@ const POST = async ({ request, locals, url }) => {
67
67
  };
68
68
 
69
69
  export { GET, POST };
70
- //# sourceMappingURL=_server.ts-BYTe4ViD.js.map
70
+ //# sourceMappingURL=_server.ts-DkekkLe3.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-BYTe4ViD.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/invites/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { randomUUID } from \"node:crypto\";\nimport { z } from \"zod\";\nimport { n as getInviteStore } from \"../../../../chunks/providers.server.js\";\nimport { i as requireManageOrgMembers } from \"../../../../chunks/access.server.js\";\nimport { h as handleApiError, t as throwZodError } from \"../../../../chunks/api-errors.js\";\nimport { P as PlatformPermissionSchema, O as OrgPermissionSchema, e as OrgRoleSchema, M as MEMBER_ASSIGNABLE_PERMISSIONS, D as DEFAULT_ORG_PERMISSIONS } from \"../../../../chunks/context.js\";\nimport { s as splitFlatPermissions } from \"../../../../chunks/permissions-compat.server.js\";\nimport { m as mintRawToken, h as hashToken } from \"../../../../chunks/token.server2.js\";\nconst FlatPermissionSchema = z.union([PlatformPermissionSchema, OrgPermissionSchema]);\nconst CreateBody = z.object({\n email: z.string().email(\"Valid email is required\").transform((s) => s.toLowerCase().trim()),\n orgRole: OrgRoleSchema.default(\"member\"),\n permissions: z.array(FlatPermissionSchema).default([])\n});\nconst INVITE_TTL_MS = 7 * 24 * 60 * 60 * 1e3;\nconst GET = async ({ locals }) => {\n requireManageOrgMembers(locals);\n const ctx = locals.ctx;\n if (!ctx.actingOrgId) throw error(400, \"No active organization\");\n try {\n const page = await getInviteStore().listByOrg(ctx, ctx.actingOrgId, { limit: 200 });\n const items = page.items.map(({ tokenHash: _omit, ...rest }) => rest);\n return json(items);\n } catch (err) {\n handleApiError(err, \"Failed to list invites\");\n }\n};\nconst POST = async ({ request, locals, url }) => {\n requireManageOrgMembers(locals);\n const ctx = locals.ctx;\n const user = locals.user;\n if (!ctx.actingOrgId) throw error(400, \"No active organization\");\n const body = await request.json().catch(() => null);\n const parsed = CreateBody.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n try {\n const { org: submittedOrgPerms } = splitFlatPermissions(parsed.data.permissions);\n const orgPermissions = parsed.data.orgRole === \"member\" ? submittedOrgPerms.filter((p) => MEMBER_ASSIGNABLE_PERMISSIONS.includes(p)) : [...DEFAULT_ORG_PERMISSIONS[parsed.data.orgRole]];\n const rawToken = mintRawToken();\n const now = /* @__PURE__ */ new Date();\n const invite = {\n id: randomUUID(),\n tokenHash: hashToken(rawToken),\n email: parsed.data.email,\n orgId: ctx.actingOrgId,\n orgRole: parsed.data.orgRole,\n orgPermissions,\n invitedBy: user.id,\n createdAt: now.toISOString(),\n expiresAt: new Date(now.getTime() + INVITE_TTL_MS).toISOString()\n };\n await getInviteStore().create(ctx, invite);\n const acceptUrl = `${url.origin}/accept-invite?token=${rawToken}`;\n const { tokenHash: _omit, ...inviteForClient } = invite;\n return json({ invite: inviteForClient, acceptUrl }, { status: 201 });\n } catch (err) {\n handleApiError(err, \"Failed to create invite\");\n }\n};\nexport {\n GET,\n POST\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_server.ts-DkekkLe3.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/invites/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { randomUUID } from \"node:crypto\";\nimport { z } from \"zod\";\nimport { n as getInviteStore } from \"../../../../chunks/providers.server.js\";\nimport { i as requireManageOrgMembers } from \"../../../../chunks/access.server.js\";\nimport { h as handleApiError, t as throwZodError } from \"../../../../chunks/api-errors.js\";\nimport { P as PlatformPermissionSchema, O as OrgPermissionSchema, e as OrgRoleSchema, M as MEMBER_ASSIGNABLE_PERMISSIONS, D as DEFAULT_ORG_PERMISSIONS } from \"../../../../chunks/context.js\";\nimport { s as splitFlatPermissions } from \"../../../../chunks/permissions-compat.server.js\";\nimport { m as mintRawToken, h as hashToken } from \"../../../../chunks/token.server2.js\";\nconst FlatPermissionSchema = z.union([PlatformPermissionSchema, OrgPermissionSchema]);\nconst CreateBody = z.object({\n email: z.string().email(\"Valid email is required\").transform((s) => s.toLowerCase().trim()),\n orgRole: OrgRoleSchema.default(\"member\"),\n permissions: z.array(FlatPermissionSchema).default([])\n});\nconst INVITE_TTL_MS = 7 * 24 * 60 * 60 * 1e3;\nconst GET = async ({ locals }) => {\n requireManageOrgMembers(locals);\n const ctx = locals.ctx;\n if (!ctx.actingOrgId) throw error(400, \"No active organization\");\n try {\n const page = await getInviteStore().listByOrg(ctx, ctx.actingOrgId, { limit: 200 });\n const items = page.items.map(({ tokenHash: _omit, ...rest }) => rest);\n return json(items);\n } catch (err) {\n handleApiError(err, \"Failed to list invites\");\n }\n};\nconst POST = async ({ request, locals, url }) => {\n requireManageOrgMembers(locals);\n const ctx = locals.ctx;\n const user = locals.user;\n if (!ctx.actingOrgId) throw error(400, \"No active organization\");\n const body = await request.json().catch(() => null);\n const parsed = CreateBody.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n try {\n const { org: submittedOrgPerms } = splitFlatPermissions(parsed.data.permissions);\n const orgPermissions = parsed.data.orgRole === \"member\" ? submittedOrgPerms.filter((p) => MEMBER_ASSIGNABLE_PERMISSIONS.includes(p)) : [...DEFAULT_ORG_PERMISSIONS[parsed.data.orgRole]];\n const rawToken = mintRawToken();\n const now = /* @__PURE__ */ new Date();\n const invite = {\n id: randomUUID(),\n tokenHash: hashToken(rawToken),\n email: parsed.data.email,\n orgId: ctx.actingOrgId,\n orgRole: parsed.data.orgRole,\n orgPermissions,\n invitedBy: user.id,\n createdAt: now.toISOString(),\n expiresAt: new Date(now.getTime() + INVITE_TTL_MS).toISOString()\n };\n await getInviteStore().create(ctx, invite);\n const acceptUrl = `${url.origin}/accept-invite?token=${rawToken}`;\n const { tokenHash: _omit, ...inviteForClient } = invite;\n return json({ invite: inviteForClient, acceptUrl }, { status: 201 });\n } catch (err) {\n handleApiError(err, \"Failed to create invite\");\n }\n};\nexport {\n GET,\n POST\n};\n"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import { error, json } from '@sveltejs/kit';
2
2
  import { z } from 'zod';
3
3
  import { randomUUID } from 'node:crypto';
4
- import { k as getPlatformProjectGrantStore, c as getOrganizationProvider, e as getUserProfileStore, f as flag, h as getProjectProvider } from './providers.server-gJvnJT_K.js';
5
- import { a as requireInstanceAdmin } from './access.server-DGKSuoRH.js';
6
- import { h as handleApiError, t as throwZodError } from './api-errors-DSza0CJv.js';
4
+ import { k as getPlatformProjectGrantStore, c as getOrganizationProvider, e as getUserProfileStore, f as flag, h as getProjectProvider } from './providers.server-CuhJFeVB.js';
5
+ import { a as requireInstanceAdmin } from './access.server-BIbrdwtI.js';
6
+ import { h as handleApiError, t as throwZodError } from './api-errors-Dvd_bb0g.js';
7
7
  import { S as SYSTEM_CONTEXT } from './context-9tV9WxQ5.js';
8
8
  import './shared-server-DaWdgxVh.js';
9
9
  import 'node:url';
@@ -70,4 +70,4 @@ const POST = async ({ params, request, locals }) => {
70
70
  };
71
71
 
72
72
  export { GET, POST };
73
- //# sourceMappingURL=_server.ts-B-LWyGZ8.js.map
73
+ //# sourceMappingURL=_server.ts-DqSYGJwj.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-B-LWyGZ8.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/api/projects/_id_/grants/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { z } from \"zod\";\nimport { randomUUID } from \"node:crypto\";\nimport { c as getPlatformProjectGrantStore, a as getOrganizationProvider, d as getUserProfileStore, f as flag, b as getProjectProvider } from \"../../../../../../../chunks/providers.server.js\";\nimport { a as requireInstanceAdmin } from \"../../../../../../../chunks/access.server.js\";\nimport { h as handleApiError, t as throwZodError } from \"../../../../../../../chunks/api-errors.js\";\nimport { S as SYSTEM_CONTEXT } from \"../../../../../../../chunks/context.js\";\nconst CreateGrantBody = z.object({\n granteeType: z.enum([\"org\", \"user\"]),\n granteeId: z.string().min(1),\n canSolve: z.boolean()\n});\nasync function assertPlatformProject(id) {\n if (!flag(\"ENABLE_PLATFORM_PROJECTS\")) throw error(404, \"Not found\");\n const project = await getProjectProvider().getProject(SYSTEM_CONTEXT, id);\n if (!project || project.visibility !== \"platform\") {\n throw error(404, \"Platform project not found\");\n }\n return project;\n}\nconst GET = async ({ params, locals }) => {\n requireInstanceAdmin(locals);\n const { id } = params;\n if (!id) throw error(400, \"Missing project ID\");\n try {\n await assertPlatformProject(id);\n const grants = await getPlatformProjectGrantStore().listByProject(SYSTEM_CONTEXT, id);\n return json({ grants });\n } catch (err) {\n handleApiError(err, \"Failed to list grants\");\n }\n};\nconst POST = async ({ params, request, locals }) => {\n const user = requireInstanceAdmin(locals);\n const { id } = params;\n if (!id) throw error(400, \"Missing project ID\");\n const body = await request.json().catch(() => null);\n const parsed = CreateGrantBody.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n try {\n await assertPlatformProject(id);\n if (parsed.data.granteeType === \"org\") {\n const org = await getOrganizationProvider().getOrg(SYSTEM_CONTEXT, parsed.data.granteeId);\n if (!org) throw error(400, `Organization '${parsed.data.granteeId}' not found`);\n } else {\n const profile = await getUserProfileStore().getProfile(SYSTEM_CONTEXT, parsed.data.granteeId);\n if (!profile) throw error(400, `User '${parsed.data.granteeId}' not found`);\n }\n const grant = {\n id: randomUUID(),\n projectId: id,\n granteeType: parsed.data.granteeType,\n granteeId: parsed.data.granteeId,\n canSolve: parsed.data.canSolve,\n createdBy: user.id,\n createdAt: (/* @__PURE__ */ new Date()).toISOString()\n };\n await getPlatformProjectGrantStore().create(SYSTEM_CONTEXT, grant);\n return json(grant, { status: 201 });\n } catch (err) {\n handleApiError(err, \"Failed to create grant\");\n }\n};\nexport {\n GET,\n POST\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_server.ts-DqSYGJwj.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/api/projects/_id_/grants/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { z } from \"zod\";\nimport { randomUUID } from \"node:crypto\";\nimport { c as getPlatformProjectGrantStore, a as getOrganizationProvider, d as getUserProfileStore, f as flag, b as getProjectProvider } from \"../../../../../../../chunks/providers.server.js\";\nimport { a as requireInstanceAdmin } from \"../../../../../../../chunks/access.server.js\";\nimport { h as handleApiError, t as throwZodError } from \"../../../../../../../chunks/api-errors.js\";\nimport { S as SYSTEM_CONTEXT } from \"../../../../../../../chunks/context.js\";\nconst CreateGrantBody = z.object({\n granteeType: z.enum([\"org\", \"user\"]),\n granteeId: z.string().min(1),\n canSolve: z.boolean()\n});\nasync function assertPlatformProject(id) {\n if (!flag(\"ENABLE_PLATFORM_PROJECTS\")) throw error(404, \"Not found\");\n const project = await getProjectProvider().getProject(SYSTEM_CONTEXT, id);\n if (!project || project.visibility !== \"platform\") {\n throw error(404, \"Platform project not found\");\n }\n return project;\n}\nconst GET = async ({ params, locals }) => {\n requireInstanceAdmin(locals);\n const { id } = params;\n if (!id) throw error(400, \"Missing project ID\");\n try {\n await assertPlatformProject(id);\n const grants = await getPlatformProjectGrantStore().listByProject(SYSTEM_CONTEXT, id);\n return json({ grants });\n } catch (err) {\n handleApiError(err, \"Failed to list grants\");\n }\n};\nconst POST = async ({ params, request, locals }) => {\n const user = requireInstanceAdmin(locals);\n const { id } = params;\n if (!id) throw error(400, \"Missing project ID\");\n const body = await request.json().catch(() => null);\n const parsed = CreateGrantBody.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n try {\n await assertPlatformProject(id);\n if (parsed.data.granteeType === \"org\") {\n const org = await getOrganizationProvider().getOrg(SYSTEM_CONTEXT, parsed.data.granteeId);\n if (!org) throw error(400, `Organization '${parsed.data.granteeId}' not found`);\n } else {\n const profile = await getUserProfileStore().getProfile(SYSTEM_CONTEXT, parsed.data.granteeId);\n if (!profile) throw error(400, `User '${parsed.data.granteeId}' not found`);\n }\n const grant = {\n id: randomUUID(),\n projectId: id,\n granteeType: parsed.data.granteeType,\n granteeId: parsed.data.granteeId,\n canSolve: parsed.data.canSolve,\n createdBy: user.id,\n createdAt: (/* @__PURE__ */ new Date()).toISOString()\n };\n await getPlatformProjectGrantStore().create(SYSTEM_CONTEXT, grant);\n return json(grant, { status: 201 });\n } catch (err) {\n handleApiError(err, \"Failed to create grant\");\n }\n};\nexport {\n GET,\n POST\n};\n"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { error, json } from '@sveltejs/kit';
2
- import { h as getProjectProvider } from './providers.server-gJvnJT_K.js';
3
- import { s as requireCanReclaim } from './access.server-DGKSuoRH.js';
4
- import { h as handleApiError } from './api-errors-DSza0CJv.js';
2
+ import { h as getProjectProvider } from './providers.server-CuhJFeVB.js';
3
+ import { s as requireCanReclaim } from './access.server-BIbrdwtI.js';
4
+ import { h as handleApiError } from './api-errors-Dvd_bb0g.js';
5
5
  import './shared-server-DaWdgxVh.js';
6
6
  import 'node:url';
7
7
  import 'node:path';
@@ -35,4 +35,4 @@ const POST = async ({ params, locals }) => {
35
35
  };
36
36
 
37
37
  export { POST };
38
- //# sourceMappingURL=_server.ts-CKtVrr5P.js.map
38
+ //# sourceMappingURL=_server.ts-Dvw_Z0Cw.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-CKtVrr5P.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/projects/_id_/reclaim/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { b as getProjectProvider } from \"../../../../../../chunks/providers.server.js\";\nimport { s as requireCanReclaim } from \"../../../../../../chunks/access.server.js\";\nimport { h as handleApiError } from \"../../../../../../chunks/api-errors.js\";\nconst POST = async ({ params, locals }) => {\n const { id } = params;\n if (!id) throw error(400, \"Missing project ID\");\n const { user, ctx } = await requireCanReclaim(locals, id);\n const now = (/* @__PURE__ */ new Date()).toISOString();\n const member = {\n projectId: id,\n userId: user.id,\n role: \"owner\",\n joinedAt: now,\n updatedAt: now,\n updatedBy: ctx.userId || user.id,\n deletedAt: null\n };\n try {\n await getProjectProvider().addProjectMember(ctx, member);\n return json({ success: true, member });\n } catch (err) {\n handleApiError(err, \"Failed to reclaim project\");\n }\n};\nexport {\n POST\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAIK,MAAC,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK;AAC3C,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM;AACvB,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,oBAAoB,CAAC;AACjD,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC;AAC3D,EAAE,MAAM,GAAG,GAAG,iBAAiB,IAAI,IAAI,EAAE,EAAE,WAAW,EAAE;AACxD,EAAE,MAAM,MAAM,GAAG;AACjB,IAAI,SAAS,EAAE,EAAE;AACjB,IAAI,MAAM,EAAE,IAAI,CAAC,EAAE;AACnB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,QAAQ,EAAE,GAAG;AACjB,IAAI,SAAS,EAAE,GAAG;AAClB,IAAI,SAAS,EAAE,GAAG,CAAC,MAAM,IAAI,IAAI,CAAC,EAAE;AACpC,IAAI,SAAS,EAAE;AACf,GAAG;AACH,EAAE,IAAI;AACN,IAAI,MAAM,kBAAkB,EAAE,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC;AAC5D,IAAI,OAAO,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AAC1C,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,2BAA2B,CAAC;AACpD,EAAE;AACF;;;;"}
1
+ {"version":3,"file":"_server.ts-Dvw_Z0Cw.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/projects/_id_/reclaim/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { b as getProjectProvider } from \"../../../../../../chunks/providers.server.js\";\nimport { s as requireCanReclaim } from \"../../../../../../chunks/access.server.js\";\nimport { h as handleApiError } from \"../../../../../../chunks/api-errors.js\";\nconst POST = async ({ params, locals }) => {\n const { id } = params;\n if (!id) throw error(400, \"Missing project ID\");\n const { user, ctx } = await requireCanReclaim(locals, id);\n const now = (/* @__PURE__ */ new Date()).toISOString();\n const member = {\n projectId: id,\n userId: user.id,\n role: \"owner\",\n joinedAt: now,\n updatedAt: now,\n updatedBy: ctx.userId || user.id,\n deletedAt: null\n };\n try {\n await getProjectProvider().addProjectMember(ctx, member);\n return json({ success: true, member });\n } catch (err) {\n handleApiError(err, \"Failed to reclaim project\");\n }\n};\nexport {\n POST\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAIK,MAAC,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK;AAC3C,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM;AACvB,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,oBAAoB,CAAC;AACjD,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC;AAC3D,EAAE,MAAM,GAAG,GAAG,iBAAiB,IAAI,IAAI,EAAE,EAAE,WAAW,EAAE;AACxD,EAAE,MAAM,MAAM,GAAG;AACjB,IAAI,SAAS,EAAE,EAAE;AACjB,IAAI,MAAM,EAAE,IAAI,CAAC,EAAE;AACnB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,QAAQ,EAAE,GAAG;AACjB,IAAI,SAAS,EAAE,GAAG;AAClB,IAAI,SAAS,EAAE,GAAG,CAAC,MAAM,IAAI,IAAI,CAAC,EAAE;AACpC,IAAI,SAAS,EAAE;AACf,GAAG;AACH,EAAE,IAAI;AACN,IAAI,MAAM,kBAAkB,EAAE,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC;AAC5D,IAAI,OAAO,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AAC1C,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,2BAA2B,CAAC;AACpD,EAAE;AACF;;;;"}
@@ -1,7 +1,7 @@
1
1
  import { error, json } from '@sveltejs/kit';
2
- import { r as definitionService } from './providers.server-gJvnJT_K.js';
3
- import { g as requireEditableDefinition } from './access.server-DGKSuoRH.js';
4
- import { t as throwZodError, h as handleApiError } from './api-errors-DSza0CJv.js';
2
+ import { r as definitionService } from './providers.server-CuhJFeVB.js';
3
+ import { g as requireEditableDefinition } from './access.server-BIbrdwtI.js';
4
+ import { t as throwZodError, h as handleApiError } from './api-errors-Dvd_bb0g.js';
5
5
  import { G as GuidSchema, d as PublishVersionInputSchema } from './context-9tV9WxQ5.js';
6
6
  import './shared-server-DaWdgxVh.js';
7
7
  import 'node:url';
@@ -28,4 +28,4 @@ const POST = async ({ params, request, locals }) => {
28
28
  };
29
29
 
30
30
  export { POST };
31
- //# sourceMappingURL=_server.ts-BEGEbcQ_.js.map
31
+ //# sourceMappingURL=_server.ts-L9E2K0UZ.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-BEGEbcQ_.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/definitions/_guid_/publish/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { k as definitionService } from \"../../../../../../chunks/providers.server.js\";\nimport { g as requireEditableDefinition } from \"../../../../../../chunks/access.server.js\";\nimport { t as throwZodError, h as handleApiError } from \"../../../../../../chunks/api-errors.js\";\nimport { G as GuidSchema, c as PublishVersionInputSchema } from \"../../../../../../chunks/context.js\";\nconst POST = async ({ params, request, locals }) => {\n const guidParsed = GuidSchema.safeParse(params.guid);\n if (!guidParsed.success) throw error(400, \"Invalid or missing GUID\");\n const body = await request.json().catch(() => ({}));\n const parsed = PublishVersionInputSchema.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n const { ctx } = await requireEditableDefinition(locals, guidParsed.data);\n try {\n const version = await definitionService.publish(ctx, guidParsed.data, parsed.data.versionId);\n return json({ success: true, version });\n } catch (err) {\n handleApiError(err, \"Failed to publish version\");\n }\n};\nexport {\n POST\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAKK,MAAC,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK;AACpD,EAAE,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;AACtD,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,yBAAyB,CAAC;AACtE,EAAE,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;AACrD,EAAE,MAAM,MAAM,GAAG,yBAAyB,CAAC,SAAS,CAAC,IAAI,CAAC;AAC1D,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC;AAClD,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,yBAAyB,CAAC,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC;AAC1E,EAAE,IAAI;AACN,IAAI,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;AAChG,IAAI,OAAO,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;AAC3C,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,2BAA2B,CAAC;AACpD,EAAE;AACF;;;;"}
1
+ {"version":3,"file":"_server.ts-L9E2K0UZ.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/definitions/_guid_/publish/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { k as definitionService } from \"../../../../../../chunks/providers.server.js\";\nimport { g as requireEditableDefinition } from \"../../../../../../chunks/access.server.js\";\nimport { t as throwZodError, h as handleApiError } from \"../../../../../../chunks/api-errors.js\";\nimport { G as GuidSchema, c as PublishVersionInputSchema } from \"../../../../../../chunks/context.js\";\nconst POST = async ({ params, request, locals }) => {\n const guidParsed = GuidSchema.safeParse(params.guid);\n if (!guidParsed.success) throw error(400, \"Invalid or missing GUID\");\n const body = await request.json().catch(() => ({}));\n const parsed = PublishVersionInputSchema.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n const { ctx } = await requireEditableDefinition(locals, guidParsed.data);\n try {\n const version = await definitionService.publish(ctx, guidParsed.data, parsed.data.versionId);\n return json({ success: true, version });\n } catch (err) {\n handleApiError(err, \"Failed to publish version\");\n }\n};\nexport {\n POST\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAKK,MAAC,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK;AACpD,EAAE,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;AACtD,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,yBAAyB,CAAC;AACtE,EAAE,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;AACrD,EAAE,MAAM,MAAM,GAAG,yBAAyB,CAAC,SAAS,CAAC,IAAI,CAAC;AAC1D,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC;AAClD,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,yBAAyB,CAAC,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC;AAC1E,EAAE,IAAI;AACN,IAAI,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,OAAO,CAAC,GAAG,EAAE,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC;AAChG,IAAI,OAAO,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;AAC3C,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,2BAA2B,CAAC;AACpD,EAAE;AACF;;;;"}
@@ -1,7 +1,7 @@
1
1
  import { error, json } from '@sveltejs/kit';
2
- import { i as getDefinitionMeta, M as MAX_PAGE_LIMIT } from './providers.server-gJvnJT_K.js';
3
- import { h as handleApiError } from './api-errors-DSza0CJv.js';
4
- import { h as requireCanViewProject } from './access.server-DGKSuoRH.js';
2
+ import { i as getDefinitionMeta, M as MAX_PAGE_LIMIT } from './providers.server-CuhJFeVB.js';
3
+ import { h as handleApiError } from './api-errors-Dvd_bb0g.js';
4
+ import { h as requireCanViewProject } from './access.server-BIbrdwtI.js';
5
5
  import { G as GuidSchema } from './context-9tV9WxQ5.js';
6
6
  import './shared-server-DaWdgxVh.js';
7
7
  import 'node:url';
@@ -39,4 +39,4 @@ const GET = async ({ params, locals, url }) => {
39
39
  };
40
40
 
41
41
  export { GET };
42
- //# sourceMappingURL=_server.ts-Du9sjt--.js.map
42
+ //# sourceMappingURL=_server.ts-OFmjL3-M.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-Du9sjt--.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/definitions/_guid_/versions/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { l as getDefinitionMeta, M as MAX_PAGE_LIMIT } from \"../../../../../../chunks/providers.server.js\";\nimport { h as handleApiError } from \"../../../../../../chunks/api-errors.js\";\nimport { h as requireCanViewProject } from \"../../../../../../chunks/access.server.js\";\nimport { G as GuidSchema } from \"../../../../../../chunks/context.js\";\nconst GET = async ({ params, locals, url }) => {\n const guidParsed = GuidSchema.safeParse(params.guid);\n if (!guidParsed.success) throw error(400, \"Invalid or missing GUID\");\n if (!locals.ctx) throw error(401, \"Unauthorized\");\n const rawLimit = Number(url.searchParams.get(\"limit\") ?? 50);\n const limit = Number.isFinite(rawLimit) ? Math.min(Math.max(rawLimit, 1), MAX_PAGE_LIMIT) : 50;\n const cursor = url.searchParams.get(\"cursor\") ?? void 0;\n try {\n const def = await getDefinitionMeta().get(locals.ctx, guidParsed.data);\n if (!def) throw error(404, \"Definition not found\");\n await requireCanViewProject(locals, def.projectId);\n const page = await getDefinitionMeta().listVersions(locals.ctx, guidParsed.data, {\n limit,\n cursor\n });\n return json({\n versions: page.items,\n nextCursor: page.nextCursor,\n liveVersionId: def.liveVersionId,\n draftVersionId: def.draftVersionId\n });\n } catch (err) {\n handleApiError(err, \"Failed to list versions\");\n }\n};\nexport {\n GET\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAKK,MAAC,GAAG,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK;AAC/C,EAAE,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;AACtD,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,yBAAyB,CAAC;AACtE,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,cAAc,CAAC;AACnD,EAAE,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;AAC9D,EAAE,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,cAAc,CAAC,GAAG,EAAE;AAChG,EAAE,MAAM,MAAM,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,MAAM;AACzD,EAAE,IAAI;AACN,IAAI,MAAM,GAAG,GAAG,MAAM,iBAAiB,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC;AAC1E,IAAI,IAAI,CAAC,GAAG,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,sBAAsB,CAAC;AACtD,IAAI,MAAM,qBAAqB,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,CAAC;AACtD,IAAI,MAAM,IAAI,GAAG,MAAM,iBAAiB,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,IAAI,EAAE;AACrF,MAAM,KAAK;AACX,MAAM;AACN,KAAK,CAAC;AACN,IAAI,OAAO,IAAI,CAAC;AAChB,MAAM,QAAQ,EAAE,IAAI,CAAC,KAAK;AAC1B,MAAM,UAAU,EAAE,IAAI,CAAC,UAAU;AACjC,MAAM,aAAa,EAAE,GAAG,CAAC,aAAa;AACtC,MAAM,cAAc,EAAE,GAAG,CAAC;AAC1B,KAAK,CAAC;AACN,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,yBAAyB,CAAC;AAClD,EAAE;AACF;;;;"}
1
+ {"version":3,"file":"_server.ts-OFmjL3-M.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/definitions/_guid_/versions/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { l as getDefinitionMeta, M as MAX_PAGE_LIMIT } from \"../../../../../../chunks/providers.server.js\";\nimport { h as handleApiError } from \"../../../../../../chunks/api-errors.js\";\nimport { h as requireCanViewProject } from \"../../../../../../chunks/access.server.js\";\nimport { G as GuidSchema } from \"../../../../../../chunks/context.js\";\nconst GET = async ({ params, locals, url }) => {\n const guidParsed = GuidSchema.safeParse(params.guid);\n if (!guidParsed.success) throw error(400, \"Invalid or missing GUID\");\n if (!locals.ctx) throw error(401, \"Unauthorized\");\n const rawLimit = Number(url.searchParams.get(\"limit\") ?? 50);\n const limit = Number.isFinite(rawLimit) ? Math.min(Math.max(rawLimit, 1), MAX_PAGE_LIMIT) : 50;\n const cursor = url.searchParams.get(\"cursor\") ?? void 0;\n try {\n const def = await getDefinitionMeta().get(locals.ctx, guidParsed.data);\n if (!def) throw error(404, \"Definition not found\");\n await requireCanViewProject(locals, def.projectId);\n const page = await getDefinitionMeta().listVersions(locals.ctx, guidParsed.data, {\n limit,\n cursor\n });\n return json({\n versions: page.items,\n nextCursor: page.nextCursor,\n liveVersionId: def.liveVersionId,\n draftVersionId: def.draftVersionId\n });\n } catch (err) {\n handleApiError(err, \"Failed to list versions\");\n }\n};\nexport {\n GET\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAKK,MAAC,GAAG,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK;AAC/C,EAAE,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;AACtD,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,yBAAyB,CAAC;AACtE,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,cAAc,CAAC;AACnD,EAAE,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;AAC9D,EAAE,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,cAAc,CAAC,GAAG,EAAE;AAChG,EAAE,MAAM,MAAM,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,MAAM;AACzD,EAAE,IAAI;AACN,IAAI,MAAM,GAAG,GAAG,MAAM,iBAAiB,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC;AAC1E,IAAI,IAAI,CAAC,GAAG,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,sBAAsB,CAAC;AACtD,IAAI,MAAM,qBAAqB,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,CAAC;AACtD,IAAI,MAAM,IAAI,GAAG,MAAM,iBAAiB,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,IAAI,EAAE;AACrF,MAAM,KAAK;AACX,MAAM;AACN,KAAK,CAAC;AACN,IAAI,OAAO,IAAI,CAAC;AAChB,MAAM,QAAQ,EAAE,IAAI,CAAC,KAAK;AAC1B,MAAM,UAAU,EAAE,IAAI,CAAC,UAAU;AACjC,MAAM,aAAa,EAAE,GAAG,CAAC,aAAa;AACtC,MAAM,cAAc,EAAE,GAAG,CAAC;AAC1B,KAAK,CAAC;AACN,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,yBAAyB,CAAC;AAClD,EAAE;AACF;;;;"}
@@ -1,6 +1,6 @@
1
1
  import { error, json } from '@sveltejs/kit';
2
- import { l as getPermissionStore, g as getAuthProvider } from './providers.server-gJvnJT_K.js';
3
- import { c as requireManageInstanceUsers } from './access.server-DGKSuoRH.js';
2
+ import { l as getPermissionStore, g as getAuthProvider } from './providers.server-CuhJFeVB.js';
3
+ import { c as requireManageInstanceUsers } from './access.server-BIbrdwtI.js';
4
4
  import './shared-server-DaWdgxVh.js';
5
5
  import 'node:url';
6
6
  import 'node:path';
@@ -10,7 +10,7 @@ import 'zod';
10
10
  import 'node:crypto';
11
11
  import 'node:fs/promises';
12
12
  import '@supabase/supabase-js';
13
- import './api-errors-DSza0CJv.js';
13
+ import './api-errors-Dvd_bb0g.js';
14
14
 
15
15
  const POST = async ({ params, locals }) => {
16
16
  requireManageInstanceUsers(locals);
@@ -34,4 +34,4 @@ const POST = async ({ params, locals }) => {
34
34
  };
35
35
 
36
36
  export { POST };
37
- //# sourceMappingURL=_server.ts-BUI9hwVF.js.map
37
+ //# sourceMappingURL=_server.ts-PFG4aGE3.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-BUI9hwVF.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/api/users/_id_/disable/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { h as getPermissionStore, e as getAuthProvider } from \"../../../../../../../chunks/providers.server.js\";\nimport { c as requireManageInstanceUsers } from \"../../../../../../../chunks/access.server.js\";\nconst POST = async ({ params, locals }) => {\n requireManageInstanceUsers(locals);\n const { id } = params;\n if (!id) throw error(400, \"Missing user ID\");\n const targetPerms = await getPermissionStore().getFor(locals.ctx, id);\n if (targetPerms.includes(\"instance_admin\")) {\n const others = await getPermissionStore().countInstanceAdminsExcluding(locals.ctx, id);\n if (others === 0) {\n throw error(\n 409,\n \"Cannot disable the last instance admin. Promote another user to instance admin first.\"\n );\n }\n }\n const result = await getAuthProvider().disableUser(id);\n if (result === \"not_found\") throw error(404, \"User not found\");\n if (result === \"not_supported\")\n throw error(501, \"Disabling users is not supported by this auth provider\");\n return json({ success: true });\n};\nexport {\n POST\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAGK,MAAC,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK;AAC3C,EAAE,0BAA0B,CAAC,MAAM,CAAC;AACpC,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM;AACvB,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,iBAAiB,CAAC;AAC9C,EAAE,MAAM,WAAW,GAAG,MAAM,kBAAkB,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC;AACvE,EAAE,IAAI,WAAW,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE;AAC9C,IAAI,MAAM,MAAM,GAAG,MAAM,kBAAkB,EAAE,CAAC,4BAA4B,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC;AAC1F,IAAI,IAAI,MAAM,KAAK,CAAC,EAAE;AACtB,MAAM,MAAM,KAAK;AACjB,QAAQ,GAAG;AACX,QAAQ;AACR,OAAO;AACP,IAAI;AACJ,EAAE;AACF,EAAE,MAAM,MAAM,GAAG,MAAM,eAAe,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;AACxD,EAAE,IAAI,MAAM,KAAK,WAAW,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,gBAAgB,CAAC;AAChE,EAAE,IAAI,MAAM,KAAK,eAAe;AAChC,IAAI,MAAM,KAAK,CAAC,GAAG,EAAE,wDAAwD,CAAC;AAC9E,EAAE,OAAO,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAChC;;;;"}
1
+ {"version":3,"file":"_server.ts-PFG4aGE3.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/api/users/_id_/disable/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { h as getPermissionStore, e as getAuthProvider } from \"../../../../../../../chunks/providers.server.js\";\nimport { c as requireManageInstanceUsers } from \"../../../../../../../chunks/access.server.js\";\nconst POST = async ({ params, locals }) => {\n requireManageInstanceUsers(locals);\n const { id } = params;\n if (!id) throw error(400, \"Missing user ID\");\n const targetPerms = await getPermissionStore().getFor(locals.ctx, id);\n if (targetPerms.includes(\"instance_admin\")) {\n const others = await getPermissionStore().countInstanceAdminsExcluding(locals.ctx, id);\n if (others === 0) {\n throw error(\n 409,\n \"Cannot disable the last instance admin. Promote another user to instance admin first.\"\n );\n }\n }\n const result = await getAuthProvider().disableUser(id);\n if (result === \"not_found\") throw error(404, \"User not found\");\n if (result === \"not_supported\")\n throw error(501, \"Disabling users is not supported by this auth provider\");\n return json({ success: true });\n};\nexport {\n POST\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAGK,MAAC,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK;AAC3C,EAAE,0BAA0B,CAAC,MAAM,CAAC;AACpC,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM;AACvB,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,iBAAiB,CAAC;AAC9C,EAAE,MAAM,WAAW,GAAG,MAAM,kBAAkB,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC;AACvE,EAAE,IAAI,WAAW,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE;AAC9C,IAAI,MAAM,MAAM,GAAG,MAAM,kBAAkB,EAAE,CAAC,4BAA4B,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC;AAC1F,IAAI,IAAI,MAAM,KAAK,CAAC,EAAE;AACtB,MAAM,MAAM,KAAK;AACjB,QAAQ,GAAG;AACX,QAAQ;AACR,OAAO;AACP,IAAI;AACJ,EAAE;AACF,EAAE,MAAM,MAAM,GAAG,MAAM,eAAe,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;AACxD,EAAE,IAAI,MAAM,KAAK,WAAW,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,gBAAgB,CAAC;AAChE,EAAE,IAAI,MAAM,KAAK,eAAe;AAChC,IAAI,MAAM,KAAK,CAAC,GAAG,EAAE,wDAAwD,CAAC;AAC9E,EAAE,OAAO,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAChC;;;;"}
@@ -1,9 +1,9 @@
1
1
  import { json } from '@sveltejs/kit';
2
2
  import { execSync } from 'child_process';
3
- import { g as getBootHealth, i as isDegraded } from './bootHealth.server-DwPUi_JC.js';
3
+ import { g as getBootHealth, i as isDegraded } from './bootHealth.server-CCMjOn0m.js';
4
4
  import './context-9tV9WxQ5.js';
5
5
  import 'zod';
6
- import './providers.server-gJvnJT_K.js';
6
+ import './providers.server-CuhJFeVB.js';
7
7
  import './shared-server-DaWdgxVh.js';
8
8
  import 'node:url';
9
9
  import 'node:path';
@@ -32,4 +32,4 @@ const GET = async () => {
32
32
  };
33
33
 
34
34
  export { GET };
35
- //# sourceMappingURL=_server.ts-MvJCHr1k.js.map
35
+ //# sourceMappingURL=_server.ts-SVtgpOfH.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-MvJCHr1k.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/health/_server.ts.js"],"sourcesContent":["import { json } from \"@sveltejs/kit\";\nimport { execSync } from \"child_process\";\nimport { g as getBootHealth, i as isDegraded } from \"../../../../chunks/bootHealth.server.js\";\nconst STARTUP_COMMIT = (() => {\n try {\n return execSync(\"git rev-parse HEAD\", { encoding: \"utf8\" }).trim();\n } catch {\n return null;\n }\n})();\nconst GET = async () => {\n const boot = await getBootHealth();\n const degraded = isDegraded(boot);\n const body = {\n status: degraded ? \"degraded\" : \"ok\",\n timestamp: (/* @__PURE__ */ new Date()).toISOString(),\n commit: STARTUP_COMMIT,\n boot\n };\n return json(body, { status: degraded ? 503 : 200 });\n};\nexport {\n GET\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAGA,MAAM,cAAc,GAAG,CAAC,MAAM;AAC9B,EAAE,IAAI;AACN,IAAI,OAAO,QAAQ,CAAC,oBAAoB,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE;AACtE,EAAE,CAAC,CAAC,MAAM;AACV,IAAI,OAAO,IAAI;AACf,EAAE;AACF,CAAC,GAAG;AACC,MAAC,GAAG,GAAG,YAAY;AACxB,EAAE,MAAM,IAAI,GAAG,MAAM,aAAa,EAAE;AACpC,EAAE,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC;AACnC,EAAE,MAAM,IAAI,GAAG;AACf,IAAI,MAAM,EAAE,QAAQ,GAAG,UAAU,GAAG,IAAI;AACxC,IAAI,SAAS,EAAE,iBAAiB,IAAI,IAAI,EAAE,EAAE,WAAW,EAAE;AACzD,IAAI,MAAM,EAAE,cAAc;AAC1B,IAAI;AACJ,GAAG;AACH,EAAE,OAAO,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,QAAQ,GAAG,GAAG,GAAG,GAAG,EAAE,CAAC;AACrD;;;;"}
1
+ {"version":3,"file":"_server.ts-SVtgpOfH.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/health/_server.ts.js"],"sourcesContent":["import { json } from \"@sveltejs/kit\";\nimport { execSync } from \"child_process\";\nimport { g as getBootHealth, i as isDegraded } from \"../../../../chunks/bootHealth.server.js\";\nconst STARTUP_COMMIT = (() => {\n try {\n return execSync(\"git rev-parse HEAD\", { encoding: \"utf8\" }).trim();\n } catch {\n return null;\n }\n})();\nconst GET = async () => {\n const boot = await getBootHealth();\n const degraded = isDegraded(boot);\n const body = {\n status: degraded ? \"degraded\" : \"ok\",\n timestamp: (/* @__PURE__ */ new Date()).toISOString(),\n commit: STARTUP_COMMIT,\n boot\n };\n return json(body, { status: degraded ? 503 : 200 });\n};\nexport {\n GET\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAGA,MAAM,cAAc,GAAG,CAAC,MAAM;AAC9B,EAAE,IAAI;AACN,IAAI,OAAO,QAAQ,CAAC,oBAAoB,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE;AACtE,EAAE,CAAC,CAAC,MAAM;AACV,IAAI,OAAO,IAAI;AACf,EAAE;AACF,CAAC,GAAG;AACC,MAAC,GAAG,GAAG,YAAY;AACxB,EAAE,MAAM,IAAI,GAAG,MAAM,aAAa,EAAE;AACpC,EAAE,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC;AACnC,EAAE,MAAM,IAAI,GAAG;AACf,IAAI,MAAM,EAAE,QAAQ,GAAG,UAAU,GAAG,IAAI;AACxC,IAAI,SAAS,EAAE,iBAAiB,IAAI,IAAI,EAAE,EAAE,WAAW,EAAE;AACzD,IAAI,MAAM,EAAE,cAAc;AAC1B,IAAI;AACJ,GAAG;AACH,EAAE,OAAO,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,QAAQ,GAAG,GAAG,GAAG,GAAG,EAAE,CAAC;AACrD;;;;"}
@@ -1,8 +1,8 @@
1
1
  import { error, json } from '@sveltejs/kit';
2
2
  import { z } from 'zod';
3
- import { h as getProjectProvider } from './providers.server-gJvnJT_K.js';
4
- import { a as requireInstanceAdmin } from './access.server-DGKSuoRH.js';
5
- import { h as handleApiError, t as throwZodError } from './api-errors-DSza0CJv.js';
3
+ import { h as getProjectProvider } from './providers.server-CuhJFeVB.js';
4
+ import { a as requireInstanceAdmin } from './access.server-BIbrdwtI.js';
5
+ import { h as handleApiError, t as throwZodError } from './api-errors-Dvd_bb0g.js';
6
6
  import { s as slugify } from './slug-BGuFQjqe.js';
7
7
  import { S as SYSTEM_CONTEXT } from './context-9tV9WxQ5.js';
8
8
  import './shared-server-DaWdgxVh.js';
@@ -72,4 +72,4 @@ const DELETE = async ({ params, locals }) => {
72
72
  };
73
73
 
74
74
  export { DELETE, GET, PATCH };
75
- //# sourceMappingURL=_server.ts-WfRBOO6r.js.map
75
+ //# sourceMappingURL=_server.ts-YJbrc522.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-WfRBOO6r.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/api/projects/_id_/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { z } from \"zod\";\nimport { b as getProjectProvider } from \"../../../../../../chunks/providers.server.js\";\nimport { a as requireInstanceAdmin } from \"../../../../../../chunks/access.server.js\";\nimport { h as handleApiError, t as throwZodError } from \"../../../../../../chunks/api-errors.js\";\nimport { s as slugify } from \"../../../../../../chunks/slug.js\";\nimport { S as SYSTEM_CONTEXT } from \"../../../../../../chunks/context.js\";\nconst UpdatePlatformProjectBody = z.object({\n name: z.string().min(1).max(128).trim(),\n description: z.string().max(2e3).nullish()\n}).partial();\nasync function loadPlatformProjectOr404(id) {\n const project = await getProjectProvider().getProject(SYSTEM_CONTEXT, id);\n if (!project || project.visibility !== \"platform\") {\n throw error(404, \"Platform project not found\");\n }\n return project;\n}\nconst GET = async ({ params, locals }) => {\n requireInstanceAdmin(locals);\n const { id } = params;\n if (!id) throw error(400, \"Missing project ID\");\n try {\n const project = await loadPlatformProjectOr404(id);\n return json(project);\n } catch (err) {\n handleApiError(err, \"Failed to load platform project\");\n }\n};\nconst PATCH = async ({ params, request, locals }) => {\n requireInstanceAdmin(locals);\n const { id } = params;\n if (!id) throw error(400, \"Missing project ID\");\n const body = await request.json().catch(() => null);\n const parsed = UpdatePlatformProjectBody.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n try {\n await loadPlatformProjectOr404(id);\n const patch = {};\n if (parsed.data.name !== void 0) {\n patch.name = parsed.data.name;\n patch.slug = slugify(parsed.data.name);\n }\n if (parsed.data.description !== void 0) {\n patch.description = parsed.data.description ?? void 0;\n }\n await getProjectProvider().updateProject(SYSTEM_CONTEXT, id, patch);\n return json({ success: true });\n } catch (err) {\n handleApiError(err, \"Failed to update platform project\");\n }\n};\nconst DELETE = async ({ params, locals }) => {\n requireInstanceAdmin(locals);\n const { id } = params;\n if (!id) throw error(400, \"Missing project ID\");\n try {\n await loadPlatformProjectOr404(id);\n await getProjectProvider().deleteProject(SYSTEM_CONTEXT, id);\n return json({ success: true });\n } catch (err) {\n handleApiError(err, \"Failed to delete platform project\");\n }\n};\nexport {\n DELETE,\n GET,\n PATCH\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_server.ts-YJbrc522.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/api/projects/_id_/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { z } from \"zod\";\nimport { b as getProjectProvider } from \"../../../../../../chunks/providers.server.js\";\nimport { a as requireInstanceAdmin } from \"../../../../../../chunks/access.server.js\";\nimport { h as handleApiError, t as throwZodError } from \"../../../../../../chunks/api-errors.js\";\nimport { s as slugify } from \"../../../../../../chunks/slug.js\";\nimport { S as SYSTEM_CONTEXT } from \"../../../../../../chunks/context.js\";\nconst UpdatePlatformProjectBody = z.object({\n name: z.string().min(1).max(128).trim(),\n description: z.string().max(2e3).nullish()\n}).partial();\nasync function loadPlatformProjectOr404(id) {\n const project = await getProjectProvider().getProject(SYSTEM_CONTEXT, id);\n if (!project || project.visibility !== \"platform\") {\n throw error(404, \"Platform project not found\");\n }\n return project;\n}\nconst GET = async ({ params, locals }) => {\n requireInstanceAdmin(locals);\n const { id } = params;\n if (!id) throw error(400, \"Missing project ID\");\n try {\n const project = await loadPlatformProjectOr404(id);\n return json(project);\n } catch (err) {\n handleApiError(err, \"Failed to load platform project\");\n }\n};\nconst PATCH = async ({ params, request, locals }) => {\n requireInstanceAdmin(locals);\n const { id } = params;\n if (!id) throw error(400, \"Missing project ID\");\n const body = await request.json().catch(() => null);\n const parsed = UpdatePlatformProjectBody.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n try {\n await loadPlatformProjectOr404(id);\n const patch = {};\n if (parsed.data.name !== void 0) {\n patch.name = parsed.data.name;\n patch.slug = slugify(parsed.data.name);\n }\n if (parsed.data.description !== void 0) {\n patch.description = parsed.data.description ?? void 0;\n }\n await getProjectProvider().updateProject(SYSTEM_CONTEXT, id, patch);\n return json({ success: true });\n } catch (err) {\n handleApiError(err, \"Failed to update platform project\");\n }\n};\nconst DELETE = async ({ params, locals }) => {\n requireInstanceAdmin(locals);\n const { id } = params;\n if (!id) throw error(400, \"Missing project ID\");\n try {\n await loadPlatformProjectOr404(id);\n await getProjectProvider().deleteProject(SYSTEM_CONTEXT, id);\n return json({ success: true });\n } catch (err) {\n handleApiError(err, \"Failed to delete platform project\");\n }\n};\nexport {\n DELETE,\n GET,\n PATCH\n};\n"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { json, error } from '@sveltejs/kit';
2
2
  import { randomUUID } from 'node:crypto';
3
- import { c as getOrganizationProvider, P as ProviderError, M as MAX_PAGE_LIMIT } from './providers.server-gJvnJT_K.js';
4
- import { a as requireInstanceAdmin } from './access.server-DGKSuoRH.js';
5
- import { h as handleApiError, t as throwZodError } from './api-errors-DSza0CJv.js';
3
+ import { c as getOrganizationProvider, P as ProviderError, M as MAX_PAGE_LIMIT } from './providers.server-CuhJFeVB.js';
4
+ import { a as requireInstanceAdmin } from './access.server-BIbrdwtI.js';
5
+ import { h as handleApiError, t as throwZodError } from './api-errors-Dvd_bb0g.js';
6
6
  import { C as CreateOrgSchema } from './context-9tV9WxQ5.js';
7
7
  import './shared-server-DaWdgxVh.js';
8
8
  import 'node:url';
@@ -55,4 +55,4 @@ const POST = async ({ request, locals }) => {
55
55
  };
56
56
 
57
57
  export { GET, POST };
58
- //# sourceMappingURL=_server.ts-VbLWxdNH.js.map
58
+ //# sourceMappingURL=_server.ts-bN4Lz9RH.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-VbLWxdNH.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/api/orgs/_server.ts.js"],"sourcesContent":["import { json, error } from \"@sveltejs/kit\";\nimport { randomUUID } from \"node:crypto\";\nimport { a as getOrganizationProvider, P as ProviderError, M as MAX_PAGE_LIMIT } from \"../../../../../chunks/providers.server.js\";\nimport { a as requireInstanceAdmin } from \"../../../../../chunks/access.server.js\";\nimport { h as handleApiError, t as throwZodError } from \"../../../../../chunks/api-errors.js\";\nimport { C as CreateOrgSchema } from \"../../../../../chunks/context.js\";\nconst GET = async ({ locals, url }) => {\n requireInstanceAdmin(locals);\n const ctx = locals.ctx;\n const rawLimit = Number(url.searchParams.get(\"limit\") ?? 200);\n const limit = Number.isFinite(rawLimit) ? Math.min(Math.max(rawLimit, 1), MAX_PAGE_LIMIT) : 200;\n const cursor = url.searchParams.get(\"cursor\") ?? void 0;\n try {\n const page = await getOrganizationProvider().listOrgs(ctx, { limit, cursor });\n return json({ orgs: page.items, nextCursor: page.nextCursor });\n } catch (err) {\n handleApiError(err, \"Failed to list orgs\");\n }\n};\nconst POST = async ({ request, locals }) => {\n const user = requireInstanceAdmin(locals);\n const ctx = locals.ctx;\n const body = await request.json().catch(() => null);\n const parsed = CreateOrgSchema.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n const now = (/* @__PURE__ */ new Date()).toISOString();\n const org = {\n id: randomUUID(),\n name: parsed.data.name,\n slug: parsed.data.slug,\n ownerId: user.id,\n createdBy: user.id,\n updatedBy: user.id,\n createdAt: now,\n updatedAt: now,\n deletedAt: null\n };\n try {\n await getOrganizationProvider().createOrg(ctx, org);\n return json(org, { status: 201 });\n } catch (err) {\n if (err instanceof ProviderError && err.statusCode === 409) {\n throw error(409, err.message);\n }\n handleApiError(err, \"Failed to create org\");\n }\n};\nexport {\n GET,\n POST\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAMK,MAAC,GAAG,GAAG,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK;AACvC,EAAE,oBAAoB,CAAC,MAAM,CAAC;AAC9B,EAAE,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG;AACxB,EAAE,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC;AAC/D,EAAE,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,cAAc,CAAC,GAAG,GAAG;AACjG,EAAE,MAAM,MAAM,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,MAAM;AACzD,EAAE,IAAI;AACN,IAAI,MAAM,IAAI,GAAG,MAAM,uBAAuB,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;AACjF,IAAI,OAAO,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;AAClE,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,qBAAqB,CAAC;AAC9C,EAAE;AACF;AACK,MAAC,IAAI,GAAG,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK;AAC5C,EAAE,MAAM,IAAI,GAAG,oBAAoB,CAAC,MAAM,CAAC;AAC3C,EAAE,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG;AACxB,EAAE,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC;AACrD,EAAE,MAAM,MAAM,GAAG,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC;AAChD,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC;AAClD,EAAE,MAAM,GAAG,GAAG,iBAAiB,IAAI,IAAI,EAAE,EAAE,WAAW,EAAE;AACxD,EAAE,MAAM,GAAG,GAAG;AACd,IAAI,EAAE,EAAE,UAAU,EAAE;AACpB,IAAI,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI;AAC1B,IAAI,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI;AAC1B,IAAI,OAAO,EAAE,IAAI,CAAC,EAAE;AACpB,IAAI,SAAS,EAAE,IAAI,CAAC,EAAE;AACtB,IAAI,SAAS,EAAE,IAAI,CAAC,EAAE;AACtB,IAAI,SAAS,EAAE,GAAG;AAClB,IAAI,SAAS,EAAE,GAAG;AAClB,IAAI,SAAS,EAAE;AACf,GAAG;AACH,EAAE,IAAI;AACN,IAAI,MAAM,uBAAuB,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC;AACvD,IAAI,OAAO,IAAI,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACrC,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,IAAI,GAAG,YAAY,aAAa,IAAI,GAAG,CAAC,UAAU,KAAK,GAAG,EAAE;AAChE,MAAM,MAAM,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,OAAO,CAAC;AACnC,IAAI;AACJ,IAAI,cAAc,CAAC,GAAG,EAAE,sBAAsB,CAAC;AAC/C,EAAE;AACF;;;;"}
1
+ {"version":3,"file":"_server.ts-bN4Lz9RH.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/api/orgs/_server.ts.js"],"sourcesContent":["import { json, error } from \"@sveltejs/kit\";\nimport { randomUUID } from \"node:crypto\";\nimport { a as getOrganizationProvider, P as ProviderError, M as MAX_PAGE_LIMIT } from \"../../../../../chunks/providers.server.js\";\nimport { a as requireInstanceAdmin } from \"../../../../../chunks/access.server.js\";\nimport { h as handleApiError, t as throwZodError } from \"../../../../../chunks/api-errors.js\";\nimport { C as CreateOrgSchema } from \"../../../../../chunks/context.js\";\nconst GET = async ({ locals, url }) => {\n requireInstanceAdmin(locals);\n const ctx = locals.ctx;\n const rawLimit = Number(url.searchParams.get(\"limit\") ?? 200);\n const limit = Number.isFinite(rawLimit) ? Math.min(Math.max(rawLimit, 1), MAX_PAGE_LIMIT) : 200;\n const cursor = url.searchParams.get(\"cursor\") ?? void 0;\n try {\n const page = await getOrganizationProvider().listOrgs(ctx, { limit, cursor });\n return json({ orgs: page.items, nextCursor: page.nextCursor });\n } catch (err) {\n handleApiError(err, \"Failed to list orgs\");\n }\n};\nconst POST = async ({ request, locals }) => {\n const user = requireInstanceAdmin(locals);\n const ctx = locals.ctx;\n const body = await request.json().catch(() => null);\n const parsed = CreateOrgSchema.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n const now = (/* @__PURE__ */ new Date()).toISOString();\n const org = {\n id: randomUUID(),\n name: parsed.data.name,\n slug: parsed.data.slug,\n ownerId: user.id,\n createdBy: user.id,\n updatedBy: user.id,\n createdAt: now,\n updatedAt: now,\n deletedAt: null\n };\n try {\n await getOrganizationProvider().createOrg(ctx, org);\n return json(org, { status: 201 });\n } catch (err) {\n if (err instanceof ProviderError && err.statusCode === 409) {\n throw error(409, err.message);\n }\n handleApiError(err, \"Failed to create org\");\n }\n};\nexport {\n GET,\n POST\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;AAMK,MAAC,GAAG,GAAG,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK;AACvC,EAAE,oBAAoB,CAAC,MAAM,CAAC;AAC9B,EAAE,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG;AACxB,EAAE,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC;AAC/D,EAAE,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,cAAc,CAAC,GAAG,GAAG;AACjG,EAAE,MAAM,MAAM,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,MAAM;AACzD,EAAE,IAAI;AACN,IAAI,MAAM,IAAI,GAAG,MAAM,uBAAuB,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;AACjF,IAAI,OAAO,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;AAClE,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,qBAAqB,CAAC;AAC9C,EAAE;AACF;AACK,MAAC,IAAI,GAAG,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK;AAC5C,EAAE,MAAM,IAAI,GAAG,oBAAoB,CAAC,MAAM,CAAC;AAC3C,EAAE,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG;AACxB,EAAE,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC;AACrD,EAAE,MAAM,MAAM,GAAG,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC;AAChD,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC;AAClD,EAAE,MAAM,GAAG,GAAG,iBAAiB,IAAI,IAAI,EAAE,EAAE,WAAW,EAAE;AACxD,EAAE,MAAM,GAAG,GAAG;AACd,IAAI,EAAE,EAAE,UAAU,EAAE;AACpB,IAAI,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI;AAC1B,IAAI,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI;AAC1B,IAAI,OAAO,EAAE,IAAI,CAAC,EAAE;AACpB,IAAI,SAAS,EAAE,IAAI,CAAC,EAAE;AACtB,IAAI,SAAS,EAAE,IAAI,CAAC,EAAE;AACtB,IAAI,SAAS,EAAE,GAAG;AAClB,IAAI,SAAS,EAAE,GAAG;AAClB,IAAI,SAAS,EAAE;AACf,GAAG;AACH,EAAE,IAAI;AACN,IAAI,MAAM,uBAAuB,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC;AACvD,IAAI,OAAO,IAAI,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACrC,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,IAAI,GAAG,YAAY,aAAa,IAAI,GAAG,CAAC,UAAU,KAAK,GAAG,EAAE;AAChE,MAAM,MAAM,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,OAAO,CAAC;AACnC,IAAI;AACJ,IAAI,cAAc,CAAC,GAAG,EAAE,sBAAsB,CAAC;AAC/C,EAAE;AACF;;;;"}
@@ -1,11 +1,11 @@
1
1
  import { error, json } from '@sveltejs/kit';
2
2
  import { z } from 'zod';
3
- import { l as getPermissionStore, g as getAuthProvider, n as getDataProvider, c as getOrganizationProvider } from './providers.server-gJvnJT_K.js';
4
- import { c as requireManageInstanceUsers } from './access.server-DGKSuoRH.js';
5
- import { t as throwZodError } from './api-errors-DSza0CJv.js';
3
+ import { l as getPermissionStore, g as getAuthProvider, n as getDataProvider, c as getOrganizationProvider } from './providers.server-CuhJFeVB.js';
4
+ import { c as requireManageInstanceUsers } from './access.server-BIbrdwtI.js';
5
+ import { t as throwZodError } from './api-errors-Dvd_bb0g.js';
6
6
  import { S as SYSTEM_CONTEXT, h as hasPermission, D as DEFAULT_ORG_PERMISSIONS, M as MEMBER_ASSIGNABLE_PERMISSIONS, P as PlatformPermissionSchema, O as OrgPermissionSchema } from './context-9tV9WxQ5.js';
7
7
  import { s as splitFlatPermissions } from './permissions-compat.server-DSV7bClF.js';
8
- import { s as setUserPlatformPermissions } from './permissions.server-toUY36oB.js';
8
+ import { s as setUserPlatformPermissions } from './permissions.server-Bfvp6EaK.js';
9
9
  import './shared-server-DaWdgxVh.js';
10
10
  import 'node:url';
11
11
  import 'node:path';
@@ -91,4 +91,4 @@ const DELETE = async ({ params, locals }) => {
91
91
  };
92
92
 
93
93
  export { DELETE, PATCH };
94
- //# sourceMappingURL=_server.ts-BEW1ndmL.js.map
94
+ //# sourceMappingURL=_server.ts-bnATlqbs.js.map