@selvajs/selva 4.6.0-beta.2 → 4.6.1

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 (470) hide show
  1. package/build/client/_app/immutable/assets/0.Cj1PUDYF.css +1 -0
  2. package/build/client/_app/immutable/assets/0.Cj1PUDYF.css.br +0 -0
  3. package/build/client/_app/immutable/assets/0.Cj1PUDYF.css.gz +0 -0
  4. package/build/client/_app/immutable/chunks/{Cd8uUagh.js → 9HY6WY44.js} +1 -1
  5. package/build/client/_app/immutable/chunks/9HY6WY44.js.br +0 -0
  6. package/build/client/_app/immutable/chunks/9HY6WY44.js.gz +0 -0
  7. package/build/client/_app/immutable/chunks/{KecTfFG2.js → C09zQKpt.js} +1 -1
  8. package/build/client/_app/immutable/chunks/C09zQKpt.js.br +0 -0
  9. package/build/client/_app/immutable/chunks/C09zQKpt.js.gz +0 -0
  10. package/build/client/_app/immutable/chunks/{Dh9wssNG.js → C78kFeb_.js} +1 -1
  11. package/build/client/_app/immutable/chunks/C78kFeb_.js.br +0 -0
  12. package/build/client/_app/immutable/chunks/C78kFeb_.js.gz +0 -0
  13. package/build/client/_app/immutable/chunks/{o-qHmMxg.js → CkCtbFiD.js} +1 -1
  14. package/build/client/_app/immutable/chunks/CkCtbFiD.js.br +0 -0
  15. package/build/client/_app/immutable/chunks/CkCtbFiD.js.gz +0 -0
  16. package/build/client/_app/immutable/chunks/{Dj6REzZ0.js → CpG0Drvc.js} +1 -1
  17. package/build/client/_app/immutable/chunks/CpG0Drvc.js.br +0 -0
  18. package/build/client/_app/immutable/chunks/CpG0Drvc.js.gz +0 -0
  19. package/build/client/_app/immutable/chunks/{DE1IAae-.js → CpLycSEC.js} +4 -4
  20. package/build/client/_app/immutable/chunks/CpLycSEC.js.br +0 -0
  21. package/build/client/_app/immutable/chunks/CpLycSEC.js.gz +0 -0
  22. package/build/client/_app/immutable/chunks/{D-RnPGVi.js → DratyCsz.js} +1 -1
  23. package/build/client/_app/immutable/chunks/DratyCsz.js.br +0 -0
  24. package/build/client/_app/immutable/chunks/DratyCsz.js.gz +0 -0
  25. package/build/client/_app/immutable/chunks/oxLLzYjR.js +3 -0
  26. package/build/client/_app/immutable/chunks/oxLLzYjR.js.br +0 -0
  27. package/build/client/_app/immutable/chunks/oxLLzYjR.js.gz +0 -0
  28. package/build/client/_app/immutable/entry/app.BuRdIZOQ.js +2 -0
  29. package/build/client/_app/immutable/entry/app.BuRdIZOQ.js.br +0 -0
  30. package/build/client/_app/immutable/entry/app.BuRdIZOQ.js.gz +0 -0
  31. package/build/client/_app/immutable/entry/start.BWJhki94.js +1 -0
  32. package/build/client/_app/immutable/entry/start.BWJhki94.js.br +2 -0
  33. package/build/client/_app/immutable/entry/start.BWJhki94.js.gz +0 -0
  34. package/build/client/_app/immutable/nodes/{1.h5RSNGbs.js → 1.DOBPqhlR.js} +1 -1
  35. package/build/client/_app/immutable/nodes/1.DOBPqhlR.js.br +0 -0
  36. package/build/client/_app/immutable/nodes/1.DOBPqhlR.js.gz +0 -0
  37. package/build/client/_app/immutable/nodes/{11.BrUohDzR.js → 11.ujEuLS2O.js} +1 -1
  38. package/build/client/_app/immutable/nodes/11.ujEuLS2O.js.br +0 -0
  39. package/build/client/_app/immutable/nodes/11.ujEuLS2O.js.gz +0 -0
  40. package/build/client/_app/immutable/nodes/{13.RPUAXFD4.js → 13.B_xDd6Uy.js} +1 -1
  41. package/build/client/_app/immutable/nodes/13.B_xDd6Uy.js.br +0 -0
  42. package/build/client/_app/immutable/nodes/13.B_xDd6Uy.js.gz +0 -0
  43. package/build/client/_app/immutable/nodes/{14.DD25MrcN.js → 14.Chsd0OoI.js} +1 -1
  44. package/build/client/_app/immutable/nodes/14.Chsd0OoI.js.br +0 -0
  45. package/build/client/_app/immutable/nodes/14.Chsd0OoI.js.gz +0 -0
  46. package/build/client/_app/immutable/nodes/{15.2borWKNj.js → 15.BblFO--0.js} +13 -13
  47. package/build/client/_app/immutable/nodes/15.BblFO--0.js.br +0 -0
  48. package/build/client/_app/immutable/nodes/15.BblFO--0.js.gz +0 -0
  49. package/build/client/_app/immutable/nodes/{16.AnMZqiO6.js → 16.Viw6zmPA.js} +1 -1
  50. package/build/client/_app/immutable/nodes/16.Viw6zmPA.js.br +0 -0
  51. package/build/client/_app/immutable/nodes/16.Viw6zmPA.js.gz +0 -0
  52. package/build/client/_app/immutable/nodes/{17.MCt65051.js → 17.CDhTNsyV.js} +1 -1
  53. package/build/client/_app/immutable/nodes/17.CDhTNsyV.js.br +0 -0
  54. package/build/client/_app/immutable/nodes/17.CDhTNsyV.js.gz +0 -0
  55. package/build/client/_app/immutable/nodes/{19.6aT-fTMy.js → 19.Cbp1paON.js} +1 -1
  56. package/build/client/_app/immutable/nodes/19.Cbp1paON.js.br +0 -0
  57. package/build/client/_app/immutable/nodes/19.Cbp1paON.js.gz +0 -0
  58. package/build/client/_app/immutable/nodes/{2.DTLt5gvF.js → 2.C-gHZYwt.js} +1 -1
  59. package/build/client/_app/immutable/nodes/2.C-gHZYwt.js.br +0 -0
  60. package/build/client/_app/immutable/nodes/2.C-gHZYwt.js.gz +0 -0
  61. package/build/client/_app/immutable/nodes/{20.CpXK8jYA.js → 20.Z_-DinA0.js} +192 -192
  62. package/build/client/_app/immutable/nodes/20.Z_-DinA0.js.br +0 -0
  63. package/build/client/_app/immutable/nodes/20.Z_-DinA0.js.gz +0 -0
  64. package/build/client/_app/immutable/nodes/{21.hMALoCev.js → 21.BZHMTYK3.js} +1 -1
  65. package/build/client/_app/immutable/nodes/21.BZHMTYK3.js.br +0 -0
  66. package/build/client/_app/immutable/nodes/21.BZHMTYK3.js.gz +0 -0
  67. package/build/client/_app/immutable/nodes/23.BQPxRSVN.js +16 -0
  68. package/build/client/_app/immutable/nodes/23.BQPxRSVN.js.br +0 -0
  69. package/build/client/_app/immutable/nodes/23.BQPxRSVN.js.gz +0 -0
  70. package/build/client/_app/immutable/nodes/{24.D4e0bX6T.js → 24.BcXB86Iq.js} +1 -1
  71. package/build/client/_app/immutable/nodes/24.BcXB86Iq.js.br +0 -0
  72. package/build/client/_app/immutable/nodes/24.BcXB86Iq.js.gz +0 -0
  73. package/build/client/_app/immutable/nodes/{27.CBtqq6qp.js → 27.CZFwtrmd.js} +1 -1
  74. package/build/client/_app/immutable/nodes/27.CZFwtrmd.js.br +0 -0
  75. package/build/client/_app/immutable/nodes/27.CZFwtrmd.js.gz +0 -0
  76. package/build/client/_app/immutable/nodes/{28.2dbj6GEG.js → 28.CcCJ29U1.js} +1 -1
  77. package/build/client/_app/immutable/nodes/28.CcCJ29U1.js.br +0 -0
  78. package/build/client/_app/immutable/nodes/{28.2dbj6GEG.js.gz → 28.CcCJ29U1.js.gz} +0 -0
  79. package/build/client/_app/immutable/nodes/{29.Cni5D37m.js → 29.BIRGR5YI.js} +1 -1
  80. package/build/client/_app/immutable/nodes/29.BIRGR5YI.js.br +0 -0
  81. package/build/client/_app/immutable/nodes/29.BIRGR5YI.js.gz +0 -0
  82. package/build/client/_app/immutable/nodes/{3.CfZ37YEr.js → 3.DYxxVfIY.js} +1 -1
  83. package/build/client/_app/immutable/nodes/3.DYxxVfIY.js.br +0 -0
  84. package/build/client/_app/immutable/nodes/3.DYxxVfIY.js.gz +0 -0
  85. package/build/client/_app/immutable/nodes/{30.B5u2_6d1.js → 30.DJKZS6xg.js} +1 -1
  86. package/build/client/_app/immutable/nodes/30.DJKZS6xg.js.br +0 -0
  87. package/build/client/_app/immutable/nodes/30.DJKZS6xg.js.gz +0 -0
  88. package/build/client/_app/immutable/nodes/{5.Co5caC3o.js → 5.ydvn0DlC.js} +1 -1
  89. package/build/client/_app/immutable/nodes/5.ydvn0DlC.js.br +1 -0
  90. package/build/client/_app/immutable/nodes/5.ydvn0DlC.js.gz +0 -0
  91. package/build/client/_app/immutable/nodes/{6.PNCZDQUQ.js → 6.5b6WuEeg.js} +1 -1
  92. package/build/client/_app/immutable/nodes/6.5b6WuEeg.js.br +0 -0
  93. package/build/client/_app/immutable/nodes/6.5b6WuEeg.js.gz +0 -0
  94. package/build/client/_app/immutable/nodes/{7.B-MS6ohL.js → 7.BePGtom3.js} +1 -1
  95. package/build/client/_app/immutable/nodes/7.BePGtom3.js.br +0 -0
  96. package/build/client/_app/immutable/nodes/7.BePGtom3.js.gz +0 -0
  97. package/build/client/_app/immutable/nodes/{8.BuLcFKAl.js → 8.DUhCMLQ8.js} +1 -1
  98. package/build/client/_app/immutable/nodes/8.DUhCMLQ8.js.br +0 -0
  99. package/build/client/_app/immutable/nodes/8.DUhCMLQ8.js.gz +0 -0
  100. package/build/client/_app/immutable/nodes/9.Io3h0BI-.js +1 -0
  101. package/build/client/_app/immutable/nodes/9.Io3h0BI-.js.br +0 -0
  102. package/build/client/_app/immutable/nodes/9.Io3h0BI-.js.gz +0 -0
  103. package/build/client/_app/version.json +1 -1
  104. package/build/client/_app/version.json.br +0 -0
  105. package/build/client/_app/version.json.gz +0 -0
  106. package/build/handler.js +4 -4
  107. package/build/index.js +4 -4
  108. package/build/server/chunks/chunks/{AppHeader.js-DPS1L7af.js → AppHeader.js-D1BAf8Eq.js} +2 -2
  109. package/build/server/chunks/chunks/{AppHeader.js-DPS1L7af.js.map → AppHeader.js-D1BAf8Eq.js.map} +1 -1
  110. package/build/server/chunks/chunks/{UserChip.js-BD3_PDH3.js → UserChip.js-DIRuYUCH.js} +2 -2
  111. package/build/server/chunks/chunks/{UserChip.js-BD3_PDH3.js.map → UserChip.js-DIRuYUCH.js.map} +1 -1
  112. package/build/server/chunks/chunks/{access.server.js-7luP5O4P.js → access.server.js-x_KrjYJP.js} +16 -6
  113. package/build/server/chunks/chunks/access.server.js-x_KrjYJP.js.map +1 -0
  114. package/build/server/chunks/chunks/{api-errors.js-DjgsTHzx.js → api-errors.js-B1VX-zf8.js} +4 -4
  115. package/build/server/chunks/chunks/{api-errors.js-DjgsTHzx.js.map → api-errors.js-B1VX-zf8.js.map} +1 -1
  116. package/build/server/chunks/chunks/{auth-bootstrap.server.js-Bg-Qy-YX.js → auth-bootstrap.server.js-C3M4bN44.js} +3 -3
  117. package/build/server/chunks/chunks/{auth-bootstrap.server.js-Bg-Qy-YX.js.map → auth-bootstrap.server.js-C3M4bN44.js.map} +1 -1
  118. package/build/server/chunks/chunks/{bootHealth.server.js-C24EAEVt.js → bootHealth.server.js-o9cAZ837.js} +3 -3
  119. package/build/server/chunks/chunks/{bootHealth.server.js-C24EAEVt.js.map → bootHealth.server.js-o9cAZ837.js.map} +1 -1
  120. package/build/server/chunks/chunks/{context.js-CYsGbpHa.js → context.js-D8E0GFTw.js} +57 -2
  121. package/build/server/chunks/chunks/context.js-D8E0GFTw.js.map +1 -0
  122. package/build/server/chunks/chunks/{index4.js-CMkITbZa.js → index3.js-CMkITbZa.js} +1 -1
  123. package/build/server/chunks/chunks/{index4.js-CMkITbZa.js.map → index3.js-CMkITbZa.js.map} +1 -1
  124. package/build/server/chunks/chunks/{index3.js-DBDmmwF4.js → index4.js-DBDmmwF4.js} +1 -1
  125. package/build/server/chunks/chunks/{index3.js-DBDmmwF4.js.map → index4.js-DBDmmwF4.js.map} +1 -1
  126. package/build/server/chunks/chunks/{internal.js-Xh6As0I_.js → internal.js-ygQzH1ZO.js} +3 -3
  127. package/build/server/chunks/chunks/{internal.js-Xh6As0I_.js.map → internal.js-ygQzH1ZO.js.map} +1 -1
  128. package/build/server/chunks/chunks/{package.js-CRz9GLaw.js → package.js-BKafpnBH.js} +2 -2
  129. package/build/server/chunks/chunks/package.js-BKafpnBH.js.map +1 -0
  130. package/build/server/chunks/chunks/{permissions-compat.server.js-BRYePqvR.js → permissions-compat.server.js-BfoBZYSH.js} +2 -2
  131. package/build/server/chunks/chunks/{permissions-compat.server.js-BRYePqvR.js.map → permissions-compat.server.js-BfoBZYSH.js.map} +1 -1
  132. package/build/server/chunks/chunks/{permissions.server.js-D61RQTaQ.js → permissions.server.js-B1Spnvnp.js} +2 -2
  133. package/build/server/chunks/chunks/{permissions.server.js-D61RQTaQ.js.map → permissions.server.js-B1Spnvnp.js.map} +1 -1
  134. package/build/server/chunks/chunks/{providers.server.js-CvFPEaVE.js → providers.server.js-Sbk117pY.js} +99 -12
  135. package/build/server/chunks/chunks/providers.server.js-Sbk117pY.js.map +1 -0
  136. package/build/server/chunks/chunks/{resolve.server.js-C-Ts05L6.js → resolve.server.js-oRLjLsp2.js} +3 -3
  137. package/build/server/chunks/chunks/{resolve.server.js-C-Ts05L6.js.map → resolve.server.js-oRLjLsp2.js.map} +1 -1
  138. package/build/server/chunks/chunks/{types2.js-DdHhYSMF.js → types.js-DdHhYSMF.js} +1 -1
  139. package/build/server/chunks/chunks/types.js-DdHhYSMF.js.map +1 -0
  140. package/build/server/chunks/chunks/{utils4.js-CzzZn2eq.js → utils4.js-DvnSECfA.js} +2 -2
  141. package/build/server/chunks/chunks/{utils4.js-CzzZn2eq.js.map → utils4.js-DvnSECfA.js.map} +1 -1
  142. package/build/server/chunks/entries/endpoints/admin/api/compute/{_server.ts.js-BgLRpUtK.js → _server.ts.js-At2WPXTO.js} +6 -6
  143. package/build/server/chunks/entries/endpoints/admin/api/compute/{_server.ts.js-BgLRpUtK.js.map → _server.ts.js-At2WPXTO.js.map} +1 -1
  144. package/build/server/chunks/entries/endpoints/admin/api/compute/actions/{_server.ts.js-D5dm9VRE.js → _server.ts.js-C7IxEmV_.js} +6 -6
  145. package/build/server/chunks/entries/endpoints/admin/api/compute/actions/{_server.ts.js-D5dm9VRE.js.map → _server.ts.js-C7IxEmV_.js.map} +1 -1
  146. package/build/server/chunks/entries/endpoints/admin/api/compute/status/{_server.ts.js-DH93ywqu.js → _server.ts.js-C3wKOPU7.js} +6 -6
  147. package/build/server/chunks/entries/endpoints/admin/api/compute/status/{_server.ts.js-DH93ywqu.js.map → _server.ts.js-C3wKOPU7.js.map} +1 -1
  148. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/{_server.ts.js-34QzYRnZ.js → _server.ts.js-DPXSSURv.js} +6 -6
  149. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/{_server.ts.js-34QzYRnZ.js.map → _server.ts.js-DPXSSURv.js.map} +1 -1
  150. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/assets/_kind_/_server.ts.js-C3h2a4jh.js +78 -0
  151. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/assets/_kind_/_server.ts.js-C3h2a4jh.js.map +1 -0
  152. package/build/server/chunks/entries/endpoints/admin/api/orgs/{_server.ts.js-DUYn5akM.js → _server.ts.js-CWC6GVdY.js} +6 -6
  153. package/build/server/chunks/entries/endpoints/admin/api/orgs/{_server.ts.js-DUYn5akM.js.map → _server.ts.js-CWC6GVdY.js.map} +1 -1
  154. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/{_server.ts.js-CSz_2jk0.js → _server.ts.js-CS5ErY1M.js} +6 -6
  155. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/{_server.ts.js-CSz_2jk0.js.map → _server.ts.js-CS5ErY1M.js.map} +1 -1
  156. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/_grantId_/{_server.ts.js-LYhsZcY-.js → _server.ts.js-DU_gLDs6.js} +6 -6
  157. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/_grantId_/{_server.ts.js-LYhsZcY-.js.map → _server.ts.js-DU_gLDs6.js.map} +1 -1
  158. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/{_server.ts.js-C4K7fnEv.js → _server.ts.js-DMxdDGgQ.js} +6 -6
  159. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/{_server.ts.js-C4K7fnEv.js.map → _server.ts.js-DMxdDGgQ.js.map} +1 -1
  160. package/build/server/chunks/entries/endpoints/admin/api/projects/{_server.ts.js-CUPY6YtC.js → _server.ts.js-DvyK27Fl.js} +6 -6
  161. package/build/server/chunks/entries/endpoints/admin/api/projects/{_server.ts.js-CUPY6YtC.js.map → _server.ts.js-DvyK27Fl.js.map} +1 -1
  162. package/build/server/chunks/entries/endpoints/admin/api/system/health/{_server.ts.js-DRad-P2w.js → _server.ts.js-CWBVKNdf.js} +6 -6
  163. package/build/server/chunks/entries/endpoints/admin/api/system/health/{_server.ts.js-DRad-P2w.js.map → _server.ts.js-CWBVKNdf.js.map} +1 -1
  164. package/build/server/chunks/entries/endpoints/admin/api/system/update/{_server.ts.js-B8GIFRxz.js → _server.ts.js-Bm7Ktrs8.js} +6 -6
  165. package/build/server/chunks/entries/endpoints/admin/api/system/update/{_server.ts.js-B8GIFRxz.js.map → _server.ts.js-Bm7Ktrs8.js.map} +1 -1
  166. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/{_server.ts.js-D0CEHD1q.js → _server.ts.js-Bo9FJ97l.js} +8 -8
  167. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/{_server.ts.js-D0CEHD1q.js.map → _server.ts.js-Bo9FJ97l.js.map} +1 -1
  168. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/disable/{_server.ts.js-CcyFddp3.js → _server.ts.js-DIwBwpnn.js} +6 -6
  169. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/disable/{_server.ts.js-CcyFddp3.js.map → _server.ts.js-DIwBwpnn.js.map} +1 -1
  170. package/build/server/chunks/entries/endpoints/admin/api/users/{_server.ts.js-CH64KfJa.js → _server.ts.js-C1svi-Ld.js} +8 -8
  171. package/build/server/chunks/entries/endpoints/admin/api/users/{_server.ts.js-CH64KfJa.js.map → _server.ts.js-C1svi-Ld.js.map} +1 -1
  172. package/build/server/chunks/entries/endpoints/api/compute/{_server.ts.js-PDUSGtWL.js → _server.ts.js-D_9YzrC7.js} +12 -11
  173. package/build/server/chunks/entries/endpoints/api/compute/_server.ts.js-D_9YzrC7.js.map +1 -0
  174. package/build/server/chunks/entries/endpoints/api/compute/schema/{_server.ts.js-CRdaMbr5.js → _server.ts.js-CS7DNpIB.js} +6 -6
  175. package/build/server/chunks/entries/endpoints/api/compute/schema/{_server.ts.js-CRdaMbr5.js.map → _server.ts.js-CS7DNpIB.js.map} +1 -1
  176. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/{_server.ts.js-CcVYY8qB.js → _server.ts.js-C1bI6fx_.js} +6 -7
  177. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/_server.ts.js-C1bI6fx_.js.map +1 -0
  178. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_filename_/{_server.ts.js-Dty9JTwS.js → _server.ts.js-DG0bgqAW.js} +6 -7
  179. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_filename_/_server.ts.js-DG0bgqAW.js.map +1 -0
  180. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/{_server.ts.js-B5Ff8JLF.js → _server.ts.js-vURofqUH.js} +6 -6
  181. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/{_server.ts.js-B5Ff8JLF.js.map → _server.ts.js-vURofqUH.js.map} +1 -1
  182. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/publish/{_server.ts.js-BsxirCwS.js → _server.ts.js-tDF_TKqq.js} +6 -6
  183. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/publish/{_server.ts.js-BsxirCwS.js.map → _server.ts.js-tDF_TKqq.js.map} +1 -1
  184. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_linkId_/{_server.ts.js-DTHTIL25.js → _server.ts.js-BKFS4e1E.js} +6 -6
  185. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_linkId_/{_server.ts.js-DTHTIL25.js.map → _server.ts.js-BKFS4e1E.js.map} +1 -1
  186. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/{_server.ts.js-BSk-XMi6.js → _server.ts.js-BTVUUKaO.js} +7 -7
  187. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_server.ts.js-BTVUUKaO.js.map +1 -0
  188. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/{_server.ts.js-DHaix4jV.js → _server.ts.js-BPTGDGrE.js} +6 -6
  189. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/{_server.ts.js-DHaix4jV.js.map → _server.ts.js-BPTGDGrE.js.map} +1 -1
  190. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/_versionId_/{_server.ts.js-DgsqUpvy.js → _server.ts.js-DmpMY-tz.js} +6 -6
  191. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/_versionId_/{_server.ts.js-DgsqUpvy.js.map → _server.ts.js-DmpMY-tz.js.map} +1 -1
  192. package/build/server/chunks/entries/endpoints/api/definitions/{_server.ts.js-CSlXv8pl.js → _server.ts.js-CgDtxILD.js} +6 -7
  193. package/build/server/chunks/entries/endpoints/api/definitions/_server.ts.js-CgDtxILD.js.map +1 -0
  194. package/build/server/chunks/entries/endpoints/api/files/_...path_/_server.ts.js-JYCUGi0C.js +66 -0
  195. package/build/server/chunks/entries/endpoints/api/files/_...path_/_server.ts.js-JYCUGi0C.js.map +1 -0
  196. package/build/server/chunks/entries/endpoints/api/health/{_server.ts.js---TaqOG4.js → _server.ts.js-CcG69a2b.js} +4 -4
  197. package/build/server/chunks/entries/endpoints/api/health/{_server.ts.js---TaqOG4.js.map → _server.ts.js-CcG69a2b.js.map} +1 -1
  198. package/build/server/chunks/entries/endpoints/api/invites/_id_/{_server.ts.js-D8PLQyfl.js → _server.ts.js-CpTViiM7.js} +6 -6
  199. package/build/server/chunks/entries/endpoints/api/invites/_id_/{_server.ts.js-D8PLQyfl.js.map → _server.ts.js-CpTViiM7.js.map} +1 -1
  200. package/build/server/chunks/entries/endpoints/api/invites/{_server.ts.js-bw5-SMCA.js → _server.ts.js-DveWNfQf.js} +7 -7
  201. package/build/server/chunks/entries/endpoints/api/invites/{_server.ts.js-bw5-SMCA.js.map → _server.ts.js-DveWNfQf.js.map} +1 -1
  202. package/build/server/chunks/entries/endpoints/api/me/starred/_guid_/{_server.ts.js-xb3Bmd1T.js → _server.ts.js-DvBZkOHM.js} +5 -5
  203. package/build/server/chunks/entries/endpoints/api/me/starred/_guid_/{_server.ts.js-xb3Bmd1T.js.map → _server.ts.js-DvBZkOHM.js.map} +1 -1
  204. package/build/server/chunks/entries/endpoints/api/org/compute/{_server.ts.js-Md2vW_JR.js → _server.ts.js-jFG7Wq0K.js} +6 -6
  205. package/build/server/chunks/entries/endpoints/api/org/compute/{_server.ts.js-Md2vW_JR.js.map → _server.ts.js-jFG7Wq0K.js.map} +1 -1
  206. package/build/server/chunks/entries/endpoints/api/orgs/_orgId_/members/_userId_/{_server.ts.js-BnDxcUMX.js → _server.ts.js-B2ycg2AE.js} +6 -6
  207. package/build/server/chunks/entries/endpoints/api/orgs/_orgId_/members/_userId_/{_server.ts.js-BnDxcUMX.js.map → _server.ts.js-B2ycg2AE.js.map} +1 -1
  208. package/build/server/chunks/entries/endpoints/api/projects/_id_/{_server.ts.js-BDBuktWA.js → _server.ts.js-CNP_RE3t.js} +6 -6
  209. package/build/server/chunks/entries/endpoints/api/projects/_id_/{_server.ts.js-BDBuktWA.js.map → _server.ts.js-CNP_RE3t.js.map} +1 -1
  210. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/{_server.ts.js-C6jztoDj.js → _server.ts.js-Bn5xwjry.js} +6 -6
  211. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/{_server.ts.js-C6jztoDj.js.map → _server.ts.js-Bn5xwjry.js.map} +1 -1
  212. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/_userId_/{_server.ts.js-bnRRtqNM.js → _server.ts.js-BM6OdR6F.js} +6 -6
  213. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/_userId_/{_server.ts.js-bnRRtqNM.js.map → _server.ts.js-BM6OdR6F.js.map} +1 -1
  214. package/build/server/chunks/entries/endpoints/api/projects/_id_/reclaim/{_server.ts.js-CwPJVSlh.js → _server.ts.js-kZpX0JUe.js} +6 -6
  215. package/build/server/chunks/entries/endpoints/api/projects/_id_/reclaim/{_server.ts.js-CwPJVSlh.js.map → _server.ts.js-kZpX0JUe.js.map} +1 -1
  216. package/build/server/chunks/entries/endpoints/api/projects/{_server.ts.js-DFtwR98t.js → _server.ts.js-B-9USbyM.js} +6 -6
  217. package/build/server/chunks/entries/endpoints/api/projects/{_server.ts.js-DFtwR98t.js.map → _server.ts.js-B-9USbyM.js.map} +1 -1
  218. package/build/server/chunks/entries/endpoints/auth/email/callback/{_server.ts.js-RrX9l-Lx.js → _server.ts.js-BBxTiBOV.js} +6 -6
  219. package/build/server/chunks/entries/endpoints/auth/email/callback/{_server.ts.js-RrX9l-Lx.js.map → _server.ts.js-BBxTiBOV.js.map} +1 -1
  220. package/build/server/chunks/entries/endpoints/auth/supabase/callback/{_server.ts.js-BD35FhKQ.js → _server.ts.js-C2ENZLn1.js} +6 -6
  221. package/build/server/chunks/entries/endpoints/auth/supabase/callback/{_server.ts.js-BD35FhKQ.js.map → _server.ts.js-C2ENZLn1.js.map} +1 -1
  222. package/build/server/chunks/entries/endpoints/auth/supabase/start/{_server.ts.js-4f91Kqiq.js → _server.ts.js-DQkl2H6i.js} +5 -5
  223. package/build/server/chunks/entries/endpoints/auth/supabase/start/{_server.ts.js-4f91Kqiq.js.map → _server.ts.js-DQkl2H6i.js.map} +1 -1
  224. package/build/server/chunks/entries/{hooks.server.js-COXVYevB.js → hooks.server.js-CEJghe6K.js} +14 -8
  225. package/build/server/chunks/entries/hooks.server.js-CEJghe6K.js.map +1 -0
  226. package/build/server/chunks/entries/pages/{_layout.server.ts.js-GUqRaAWY.js → _layout.server.ts.js-BJt_Hh-8.js} +2 -2
  227. package/build/server/chunks/entries/pages/{_layout.server.ts.js-GUqRaAWY.js.map → _layout.server.ts.js-BJt_Hh-8.js.map} +1 -1
  228. package/build/server/chunks/entries/pages/{_page.svelte.js-DGriO6RK.js → _page.svelte.js-DYHX2cXS.js} +4 -4
  229. package/build/server/chunks/entries/pages/{_page.svelte.js-DGriO6RK.js.map → _page.svelte.js-DYHX2cXS.js.map} +1 -1
  230. package/build/server/chunks/entries/pages/accept-invite/{_page.server.ts.js-fXauaTHa.js → _page.server.ts.js-p0Ur2D2z.js} +3 -3
  231. package/build/server/chunks/entries/pages/accept-invite/{_page.server.ts.js-fXauaTHa.js.map → _page.server.ts.js-p0Ur2D2z.js.map} +1 -1
  232. package/build/server/chunks/entries/pages/admin/{_layout.server.ts.js-C0CrUKMc.js → _layout.server.ts.js-CwHlKomC.js} +3 -3
  233. package/build/server/chunks/entries/pages/admin/{_layout.server.ts.js-C0CrUKMc.js.map → _layout.server.ts.js-CwHlKomC.js.map} +1 -1
  234. package/build/server/chunks/entries/pages/admin/{_layout.svelte.js-m5w7AtPm.js → _layout.svelte.js-BQTc-1yu.js} +4 -4
  235. package/build/server/chunks/entries/pages/admin/{_layout.svelte.js-m5w7AtPm.js.map → _layout.svelte.js-BQTc-1yu.js.map} +1 -1
  236. package/build/server/chunks/entries/pages/admin/_page.server.ts.js-xV1aLIlx.js +46 -0
  237. package/build/server/chunks/entries/pages/admin/_page.server.ts.js-xV1aLIlx.js.map +1 -0
  238. package/build/server/chunks/entries/pages/admin/_page.svelte.js-pR3aIlUh.js +343 -0
  239. package/build/server/chunks/entries/pages/admin/_page.svelte.js-pR3aIlUh.js.map +1 -0
  240. package/build/server/chunks/entries/pages/admin/audit/{_page.server.ts.js-CmQyI84L.js → _page.server.ts.js-B2E4712L.js} +4 -4
  241. package/build/server/chunks/entries/pages/admin/audit/{_page.server.ts.js-CmQyI84L.js.map → _page.server.ts.js-B2E4712L.js.map} +1 -1
  242. package/build/server/chunks/entries/pages/admin/audit/{_page.svelte.js-DKnhcr0i.js → _page.svelte.js-Qrf4BkvU.js} +2 -2
  243. package/build/server/chunks/entries/pages/admin/audit/{_page.svelte.js-DKnhcr0i.js.map → _page.svelte.js-Qrf4BkvU.js.map} +1 -1
  244. package/build/server/chunks/entries/pages/admin/compute/{_page.server.ts.js-DbdS__5V.js → _page.server.ts.js-X7vOXVx_.js} +5 -5
  245. package/build/server/chunks/entries/pages/admin/compute/{_page.server.ts.js-DbdS__5V.js.map → _page.server.ts.js-X7vOXVx_.js.map} +1 -1
  246. package/build/server/chunks/entries/pages/admin/organizations/{_page.server.ts.js-B5gIXJYU.js → _page.server.ts.js-C9ThvUZW.js} +3 -3
  247. package/build/server/chunks/entries/pages/admin/organizations/{_page.server.ts.js-B5gIXJYU.js.map → _page.server.ts.js-C9ThvUZW.js.map} +1 -1
  248. package/build/server/chunks/entries/pages/admin/projects/_id_/{_page.server.ts.js-DZo022zC.js → _page.server.ts.js-CbYQUdsT.js} +3 -3
  249. package/build/server/chunks/entries/pages/admin/projects/_id_/{_page.server.ts.js-DZo022zC.js.map → _page.server.ts.js-CbYQUdsT.js.map} +1 -1
  250. package/build/server/chunks/entries/pages/admin/projects/{_page.server.ts.js-DMCzmhaO.js → _page.server.ts.js-Bwzbc5U7.js} +3 -3
  251. package/build/server/chunks/entries/pages/admin/projects/{_page.server.ts.js-DMCzmhaO.js.map → _page.server.ts.js-Bwzbc5U7.js.map} +1 -1
  252. package/build/server/chunks/entries/pages/admin/system/{_page.server.ts.js-DLtoSAtZ.js → _page.server.ts.js-B1v99a9p.js} +5 -5
  253. package/build/server/chunks/entries/pages/admin/system/{_page.server.ts.js-DLtoSAtZ.js.map → _page.server.ts.js-B1v99a9p.js.map} +1 -1
  254. package/build/server/chunks/entries/pages/admin/system/{_page.svelte.js-D40qz7h1.js → _page.svelte.js-DCVW0G-O.js} +11 -9
  255. package/build/server/chunks/entries/pages/admin/system/_page.svelte.js-DCVW0G-O.js.map +1 -0
  256. package/build/server/chunks/entries/pages/admin/users/{_page.server.ts.js-CoesHwNn.js → _page.server.ts.js-5CoqZYu7.js} +5 -5
  257. package/build/server/chunks/entries/pages/admin/users/{_page.server.ts.js-CoesHwNn.js.map → _page.server.ts.js-5CoqZYu7.js.map} +1 -1
  258. package/build/server/chunks/entries/pages/admin/users/{_page.svelte.js-B8lliTJb.js → _page.svelte.js-C4nuIM5S.js} +2 -2
  259. package/build/server/chunks/entries/pages/admin/users/{_page.svelte.js-B8lliTJb.js.map → _page.svelte.js-C4nuIM5S.js.map} +1 -1
  260. package/build/server/chunks/entries/pages/auth/email/start/{_page.server.ts.js-CytdSW2U.js → _page.server.ts.js-CJVxmsjJ.js} +2 -2
  261. package/build/server/chunks/entries/pages/auth/email/start/{_page.server.ts.js-CytdSW2U.js.map → _page.server.ts.js-CJVxmsjJ.js.map} +1 -1
  262. package/build/server/chunks/entries/pages/library/_guid_/{_page.server.ts.js-Bg8aqgge.js → _page.server.ts.js-CdsnDM7L.js} +32 -13
  263. package/build/server/chunks/entries/pages/library/_guid_/_page.server.ts.js-CdsnDM7L.js.map +1 -0
  264. package/build/server/chunks/entries/pages/library/_guid_/{_page.svelte.js-64m55aas.js → _page.svelte.js-BKgJcySA.js} +25 -8
  265. package/build/server/chunks/entries/pages/library/_guid_/_page.svelte.js-BKgJcySA.js.map +1 -0
  266. package/build/server/chunks/entries/pages/library/{_page.server.ts.js-D4HeAIm2.js → _page.server.ts.js-CGuuDwN6.js} +3 -3
  267. package/build/server/chunks/entries/pages/library/{_page.server.ts.js-D4HeAIm2.js.map → _page.server.ts.js-CGuuDwN6.js.map} +1 -1
  268. package/build/server/chunks/entries/pages/library/{_page.svelte.js-DCyL3B8c.js → _page.svelte.js-5i6dSCN0.js} +4 -4
  269. package/build/server/chunks/entries/pages/library/{_page.svelte.js-DCyL3B8c.js.map → _page.svelte.js-5i6dSCN0.js.map} +1 -1
  270. package/build/server/chunks/entries/pages/login/{_page.server.ts.js-F5J46dSA.js → _page.server.ts.js-DKowuYxD.js} +2 -2
  271. package/build/server/chunks/entries/pages/login/{_page.server.ts.js-F5J46dSA.js.map → _page.server.ts.js-DKowuYxD.js.map} +1 -1
  272. package/build/server/chunks/entries/pages/projects/{_layout.server.ts.js-DKAa-WX1.js → _layout.server.ts.js-CNMJpFAK.js} +2 -2
  273. package/build/server/chunks/entries/pages/projects/{_layout.server.ts.js-DKAa-WX1.js.map → _layout.server.ts.js-CNMJpFAK.js.map} +1 -1
  274. package/build/server/chunks/entries/pages/projects/{_layout.svelte.js-CnS5vZg7.js → _layout.svelte.js-BhualuOA.js} +4 -4
  275. package/build/server/chunks/entries/pages/projects/{_layout.svelte.js-CnS5vZg7.js.map → _layout.svelte.js-BhualuOA.js.map} +1 -1
  276. package/build/server/chunks/entries/pages/projects/{_page.server.ts.js-BjETS8O4.js → _page.server.ts.js-DUSltMia.js} +5 -5
  277. package/build/server/chunks/entries/pages/projects/{_page.server.ts.js-BjETS8O4.js.map → _page.server.ts.js-DUSltMia.js.map} +1 -1
  278. package/build/server/chunks/entries/pages/projects/{_page.svelte.js-CAqDXDn_.js → _page.svelte.js-BJ2zx31e.js} +20 -36
  279. package/build/server/chunks/entries/pages/projects/_page.svelte.js-BJ2zx31e.js.map +1 -0
  280. package/build/server/chunks/entries/pages/setup/{_page.server.ts.js-CB9mBWz8.js → _page.server.ts.js-Bi43FW5A.js} +4 -4
  281. package/build/server/chunks/entries/pages/setup/{_page.server.ts.js-CB9mBWz8.js.map → _page.server.ts.js-Bi43FW5A.js.map} +1 -1
  282. package/build/server/chunks/entries/pages/team/{_layout.server.ts.js-BS38iHNQ.js → _layout.server.ts.js-kTT4BcsF.js} +2 -2
  283. package/build/server/chunks/entries/pages/team/{_layout.server.ts.js-BS38iHNQ.js.map → _layout.server.ts.js-kTT4BcsF.js.map} +1 -1
  284. package/build/server/chunks/entries/pages/team/{_layout.svelte.js-DsH0R5CP.js → _layout.svelte.js-fvMFVC5K.js} +4 -4
  285. package/build/server/chunks/entries/pages/team/{_layout.svelte.js-DsH0R5CP.js.map → _layout.svelte.js-fvMFVC5K.js.map} +1 -1
  286. package/build/server/chunks/entries/pages/team/{_page.server.ts.js-DaPu8CKH.js → _page.server.ts.js-BM0HjGiv.js} +2 -2
  287. package/build/server/chunks/entries/pages/team/{_page.server.ts.js-DaPu8CKH.js.map → _page.server.ts.js-BM0HjGiv.js.map} +1 -1
  288. package/build/server/chunks/entries/pages/team/compute/{_page.server.ts.js-Dzz9klWW.js → _page.server.ts.js-DSVbfXjJ.js} +4 -4
  289. package/build/server/chunks/entries/pages/team/compute/{_page.server.ts.js-Dzz9klWW.js.map → _page.server.ts.js-DSVbfXjJ.js.map} +1 -1
  290. package/build/server/chunks/entries/pages/team/members/{_page.server.ts.js-BXhljlWE.js → _page.server.ts.js-B8od5Y-v.js} +3 -3
  291. package/build/server/chunks/entries/pages/team/members/{_page.server.ts.js-BXhljlWE.js.map → _page.server.ts.js-B8od5Y-v.js.map} +1 -1
  292. package/build/server/chunks/entries/pages/team/members/{_page.svelte.js-Dy7GTJgI.js → _page.svelte.js-DwmoagP7.js} +2 -2
  293. package/build/server/chunks/entries/pages/team/members/{_page.svelte.js-Dy7GTJgI.js.map → _page.svelte.js-DwmoagP7.js.map} +1 -1
  294. package/build/server/chunks/entries/pages/team/projects/{_page.server.ts.js-AfkRGQXS.js → _page.server.ts.js-BU18iBCr.js} +3 -3
  295. package/build/server/chunks/entries/pages/team/projects/{_page.server.ts.js-AfkRGQXS.js.map → _page.server.ts.js-BU18iBCr.js.map} +1 -1
  296. package/build/server/chunks/entries/pages/team/reclaim/{_page.server.ts.js--s1Cxd4d.js → _page.server.ts.js-DQR8CiW5.js} +3 -3
  297. package/build/server/chunks/entries/pages/team/reclaim/{_page.server.ts.js--s1Cxd4d.js.map → _page.server.ts.js-DQR8CiW5.js.map} +1 -1
  298. package/build/server/chunks/entries/pages/team/settings/{_page.server.ts.js-D8NAShTy.js → _page.server.ts.js-Ds2Ncl_k.js} +3 -3
  299. package/build/server/chunks/entries/pages/team/settings/{_page.server.ts.js-D8NAShTy.js.map → _page.server.ts.js-Ds2Ncl_k.js.map} +1 -1
  300. package/build/server/chunks/entries/pages/team/shares/{_page.server.ts.js-CcFjlszF.js → _page.server.ts.js-BPApcgSj.js} +2 -2
  301. package/build/server/chunks/entries/pages/team/shares/{_page.server.ts.js-CcFjlszF.js.map → _page.server.ts.js-BPApcgSj.js.map} +1 -1
  302. package/build/server/chunks/{handler-eGoBEmyE.js → handler-CIfYOlGM.js} +3 -3
  303. package/build/server/chunks/{handler-eGoBEmyE.js.map → handler-CIfYOlGM.js.map} +1 -1
  304. package/build/server/chunks/{index.js-CQyjqGjX.js → index.js-DFJ2nKrZ.js} +2 -2
  305. package/build/server/chunks/{index.js-CQyjqGjX.js.map → index.js-DFJ2nKrZ.js.map} +1 -1
  306. package/build/server/chunks/{manifest.js-CxNOAaGX.js → manifest.js-6ZmE-R1H.js} +79 -72
  307. package/build/server/chunks/manifest.js-6ZmE-R1H.js.map +1 -0
  308. package/build/server/chunks/nodes/{0.js-PcSktsRm.js → 0.js-CSowTy6s.js} +6 -6
  309. package/build/server/chunks/nodes/{0.js-PcSktsRm.js.map → 0.js-CSowTy6s.js.map} +1 -1
  310. package/build/server/chunks/nodes/{1.js-ChXxsPw8.js → 1.js-DjN2qTfJ.js} +2 -2
  311. package/build/server/chunks/nodes/{1.js-ChXxsPw8.js.map → 1.js-DjN2qTfJ.js.map} +1 -1
  312. package/build/server/chunks/nodes/{10.js-lAWyY09k.js → 10.js-H0usRAOJ.js} +8 -8
  313. package/build/server/chunks/nodes/{10.js-lAWyY09k.js.map → 10.js-H0usRAOJ.js.map} +1 -1
  314. package/build/server/chunks/nodes/{11.js-wBUVvXW0.js → 11.js-DOXf13kE.js} +8 -8
  315. package/build/server/chunks/nodes/{11.js-wBUVvXW0.js.map → 11.js-DOXf13kE.js.map} +1 -1
  316. package/build/server/chunks/nodes/{12.js-DKvWtkL1.js → 12.js-Hi7yiemE.js} +4 -4
  317. package/build/server/chunks/nodes/{12.js-DKvWtkL1.js.map → 12.js-Hi7yiemE.js.map} +1 -1
  318. package/build/server/chunks/nodes/{13.js-MWWbkVdz.js → 13.js-Bt0Cb2qz.js} +5 -5
  319. package/build/server/chunks/nodes/{13.js-MWWbkVdz.js.map → 13.js-Bt0Cb2qz.js.map} +1 -1
  320. package/build/server/chunks/nodes/{14.js-DQIXjqDn.js → 14.js-jGowHFUf.js} +5 -5
  321. package/build/server/chunks/nodes/{14.js-DQIXjqDn.js.map → 14.js-jGowHFUf.js.map} +1 -1
  322. package/build/server/chunks/nodes/{15.js-tr_0nQ1v.js → 15.js-BJm-NISR.js} +10 -10
  323. package/build/server/chunks/nodes/{15.js-tr_0nQ1v.js.map → 15.js-BJm-NISR.js.map} +1 -1
  324. package/build/server/chunks/nodes/{16.js--K69LBee.js → 16.js-BJRndz1J.js} +10 -10
  325. package/build/server/chunks/nodes/{16.js--K69LBee.js.map → 16.js-BJRndz1J.js.map} +1 -1
  326. package/build/server/chunks/nodes/{17.js-3ynjiEFj.js → 17.js-D7alTcvy.js} +2 -2
  327. package/build/server/chunks/nodes/{17.js-3ynjiEFj.js.map → 17.js-D7alTcvy.js.map} +1 -1
  328. package/build/server/chunks/nodes/{18.js-D85x42Pd.js → 18.js-DGcj7w2M.js} +4 -4
  329. package/build/server/chunks/nodes/{18.js-D85x42Pd.js.map → 18.js-DGcj7w2M.js.map} +1 -1
  330. package/build/server/chunks/nodes/{19.js-Cd61FaK8.js → 19.js-DwxW0UEO.js} +6 -6
  331. package/build/server/chunks/nodes/{19.js-Cd61FaK8.js.map → 19.js-DwxW0UEO.js.map} +1 -1
  332. package/build/server/chunks/nodes/{2.js-Chf3iuzZ.js → 2.js-DxeXJpRS.js} +9 -9
  333. package/build/server/chunks/nodes/{2.js-Chf3iuzZ.js.map → 2.js-DxeXJpRS.js.map} +1 -1
  334. package/build/server/chunks/nodes/{20.js-Dk1BWuh0.js → 20.js-CMDMUGWe.js} +10 -10
  335. package/build/server/chunks/nodes/{20.js-Dk1BWuh0.js.map → 20.js-CMDMUGWe.js.map} +1 -1
  336. package/build/server/chunks/nodes/{21.js-BYpV6WJ_.js → 21.js-DC8u0yyk.js} +5 -5
  337. package/build/server/chunks/nodes/{21.js-BYpV6WJ_.js.map → 21.js-DC8u0yyk.js.map} +1 -1
  338. package/build/server/chunks/nodes/{23.js-CXSDFivZ.js → 23.js-zOI5F-YM.js} +9 -9
  339. package/build/server/chunks/nodes/{23.js-CXSDFivZ.js.map → 23.js-zOI5F-YM.js.map} +1 -1
  340. package/build/server/chunks/nodes/{24.js-Bli5zZo9.js → 24.js-Ci_eNef5.js} +6 -6
  341. package/build/server/chunks/nodes/{24.js-Bli5zZo9.js.map → 24.js-Ci_eNef5.js.map} +1 -1
  342. package/build/server/chunks/nodes/{25.js-D7N3t-6a.js → 25.js-Dz_tw4Pc.js} +4 -4
  343. package/build/server/chunks/nodes/{25.js-D7N3t-6a.js.map → 25.js-Dz_tw4Pc.js.map} +1 -1
  344. package/build/server/chunks/nodes/{27.js-4swICaaU.js → 27.js-B6hIXgA3.js} +6 -6
  345. package/build/server/chunks/nodes/{27.js-4swICaaU.js.map → 27.js-B6hIXgA3.js.map} +1 -1
  346. package/build/server/chunks/nodes/{28.js-DDulqtuY.js → 28.js-DrQCyu0k.js} +6 -6
  347. package/build/server/chunks/nodes/{28.js-DDulqtuY.js.map → 28.js-DrQCyu0k.js.map} +1 -1
  348. package/build/server/chunks/nodes/{29.js-Dwc6d9G9.js → 29.js-BHx34EVq.js} +5 -5
  349. package/build/server/chunks/nodes/{29.js-Dwc6d9G9.js.map → 29.js-BHx34EVq.js.map} +1 -1
  350. package/build/server/chunks/nodes/{3.js-huEbI-kz.js → 3.js-Hp1wzbSo.js} +2 -2
  351. package/build/server/chunks/nodes/{3.js-huEbI-kz.js.map → 3.js-Hp1wzbSo.js.map} +1 -1
  352. package/build/server/chunks/nodes/{30.js-BakSwhvf.js → 30.js-Bx8s2RoG.js} +5 -5
  353. package/build/server/chunks/nodes/{30.js-BakSwhvf.js.map → 30.js-Bx8s2RoG.js.map} +1 -1
  354. package/build/server/chunks/nodes/{31.js-2-KePkFt.js → 31.js-C6TEDhTN.js} +4 -4
  355. package/build/server/chunks/nodes/{31.js-2-KePkFt.js.map → 31.js-C6TEDhTN.js.map} +1 -1
  356. package/build/server/chunks/nodes/{32.js-GzMFQ-NT.js → 32.js-B2ywocPi.js} +4 -4
  357. package/build/server/chunks/nodes/{32.js-GzMFQ-NT.js.map → 32.js-B2ywocPi.js.map} +1 -1
  358. package/build/server/chunks/nodes/{5.js-DoQQZ_BT.js → 5.js-Dpgmn_GA.js} +5 -5
  359. package/build/server/chunks/nodes/{5.js-DoQQZ_BT.js.map → 5.js-Dpgmn_GA.js.map} +1 -1
  360. package/build/server/chunks/nodes/{6.js-BIFmdlrm.js → 6.js-CccYExp_.js} +6 -6
  361. package/build/server/chunks/nodes/{6.js-BIFmdlrm.js.map → 6.js-CccYExp_.js.map} +1 -1
  362. package/build/server/chunks/nodes/{7.js-BRw0-0zy.js → 7.js-Xdo3iRGi.js} +3 -3
  363. package/build/server/chunks/nodes/{7.js-BRw0-0zy.js.map → 7.js-Xdo3iRGi.js.map} +1 -1
  364. package/build/server/chunks/nodes/{8.js-BnwlKqWj.js → 8.js-DumYFD1j.js} +5 -5
  365. package/build/server/chunks/nodes/{8.js-BnwlKqWj.js.map → 8.js-DumYFD1j.js.map} +1 -1
  366. package/build/server/chunks/nodes/9.js-VAZy_0K8.js +23 -0
  367. package/build/server/chunks/nodes/9.js-VAZy_0K8.js.map +1 -0
  368. package/package.json +6 -6
  369. package/build/client/_app/immutable/assets/0.Df7_lxfV.css +0 -1
  370. package/build/client/_app/immutable/assets/0.Df7_lxfV.css.br +0 -0
  371. package/build/client/_app/immutable/assets/0.Df7_lxfV.css.gz +0 -0
  372. package/build/client/_app/immutable/chunks/BNlGWnEa.js +0 -3
  373. package/build/client/_app/immutable/chunks/BNlGWnEa.js.br +0 -0
  374. package/build/client/_app/immutable/chunks/BNlGWnEa.js.gz +0 -0
  375. package/build/client/_app/immutable/chunks/Cd8uUagh.js.br +0 -0
  376. package/build/client/_app/immutable/chunks/Cd8uUagh.js.gz +0 -0
  377. package/build/client/_app/immutable/chunks/D-RnPGVi.js.br +0 -0
  378. package/build/client/_app/immutable/chunks/D-RnPGVi.js.gz +0 -0
  379. package/build/client/_app/immutable/chunks/DE1IAae-.js.br +0 -0
  380. package/build/client/_app/immutable/chunks/DE1IAae-.js.gz +0 -0
  381. package/build/client/_app/immutable/chunks/Dh9wssNG.js.br +0 -0
  382. package/build/client/_app/immutable/chunks/Dh9wssNG.js.gz +0 -0
  383. package/build/client/_app/immutable/chunks/Dj6REzZ0.js.br +0 -0
  384. package/build/client/_app/immutable/chunks/Dj6REzZ0.js.gz +0 -0
  385. package/build/client/_app/immutable/chunks/KecTfFG2.js.br +0 -0
  386. package/build/client/_app/immutable/chunks/KecTfFG2.js.gz +0 -0
  387. package/build/client/_app/immutable/chunks/o-qHmMxg.js.br +0 -0
  388. package/build/client/_app/immutable/chunks/o-qHmMxg.js.gz +0 -0
  389. package/build/client/_app/immutable/entry/app.BeT-AHPr.js +0 -2
  390. package/build/client/_app/immutable/entry/app.BeT-AHPr.js.br +0 -0
  391. package/build/client/_app/immutable/entry/app.BeT-AHPr.js.gz +0 -0
  392. package/build/client/_app/immutable/entry/start.CrvouL8l.js +0 -1
  393. package/build/client/_app/immutable/entry/start.CrvouL8l.js.br +0 -2
  394. package/build/client/_app/immutable/entry/start.CrvouL8l.js.gz +0 -0
  395. package/build/client/_app/immutable/nodes/1.h5RSNGbs.js.br +0 -0
  396. package/build/client/_app/immutable/nodes/1.h5RSNGbs.js.gz +0 -0
  397. package/build/client/_app/immutable/nodes/11.BrUohDzR.js.br +0 -0
  398. package/build/client/_app/immutable/nodes/11.BrUohDzR.js.gz +0 -0
  399. package/build/client/_app/immutable/nodes/13.RPUAXFD4.js.br +0 -0
  400. package/build/client/_app/immutable/nodes/13.RPUAXFD4.js.gz +0 -0
  401. package/build/client/_app/immutable/nodes/14.DD25MrcN.js.br +0 -0
  402. package/build/client/_app/immutable/nodes/14.DD25MrcN.js.gz +0 -0
  403. package/build/client/_app/immutable/nodes/15.2borWKNj.js.br +0 -0
  404. package/build/client/_app/immutable/nodes/15.2borWKNj.js.gz +0 -0
  405. package/build/client/_app/immutable/nodes/16.AnMZqiO6.js.br +0 -0
  406. package/build/client/_app/immutable/nodes/16.AnMZqiO6.js.gz +0 -0
  407. package/build/client/_app/immutable/nodes/17.MCt65051.js.br +0 -0
  408. package/build/client/_app/immutable/nodes/17.MCt65051.js.gz +0 -0
  409. package/build/client/_app/immutable/nodes/19.6aT-fTMy.js.br +0 -0
  410. package/build/client/_app/immutable/nodes/19.6aT-fTMy.js.gz +0 -0
  411. package/build/client/_app/immutable/nodes/2.DTLt5gvF.js.br +0 -0
  412. package/build/client/_app/immutable/nodes/2.DTLt5gvF.js.gz +0 -0
  413. package/build/client/_app/immutable/nodes/20.CpXK8jYA.js.br +0 -0
  414. package/build/client/_app/immutable/nodes/20.CpXK8jYA.js.gz +0 -0
  415. package/build/client/_app/immutable/nodes/21.hMALoCev.js.br +0 -0
  416. package/build/client/_app/immutable/nodes/21.hMALoCev.js.gz +0 -0
  417. package/build/client/_app/immutable/nodes/23.BHMRNMwo.js +0 -16
  418. package/build/client/_app/immutable/nodes/23.BHMRNMwo.js.br +0 -0
  419. package/build/client/_app/immutable/nodes/23.BHMRNMwo.js.gz +0 -0
  420. package/build/client/_app/immutable/nodes/24.D4e0bX6T.js.br +0 -0
  421. package/build/client/_app/immutable/nodes/24.D4e0bX6T.js.gz +0 -0
  422. package/build/client/_app/immutable/nodes/27.CBtqq6qp.js.br +0 -0
  423. package/build/client/_app/immutable/nodes/27.CBtqq6qp.js.gz +0 -0
  424. package/build/client/_app/immutable/nodes/28.2dbj6GEG.js.br +0 -0
  425. package/build/client/_app/immutable/nodes/29.Cni5D37m.js.br +0 -0
  426. package/build/client/_app/immutable/nodes/29.Cni5D37m.js.gz +0 -0
  427. package/build/client/_app/immutable/nodes/3.CfZ37YEr.js.br +0 -0
  428. package/build/client/_app/immutable/nodes/3.CfZ37YEr.js.gz +0 -0
  429. package/build/client/_app/immutable/nodes/30.B5u2_6d1.js.br +0 -0
  430. package/build/client/_app/immutable/nodes/30.B5u2_6d1.js.gz +0 -0
  431. package/build/client/_app/immutable/nodes/5.Co5caC3o.js.br +0 -0
  432. package/build/client/_app/immutable/nodes/5.Co5caC3o.js.gz +0 -0
  433. package/build/client/_app/immutable/nodes/6.PNCZDQUQ.js.br +0 -0
  434. package/build/client/_app/immutable/nodes/6.PNCZDQUQ.js.gz +0 -0
  435. package/build/client/_app/immutable/nodes/7.B-MS6ohL.js.br +0 -0
  436. package/build/client/_app/immutable/nodes/7.B-MS6ohL.js.gz +0 -0
  437. package/build/client/_app/immutable/nodes/8.BuLcFKAl.js.br +0 -0
  438. package/build/client/_app/immutable/nodes/8.BuLcFKAl.js.gz +0 -0
  439. package/build/client/_app/immutable/nodes/9.KKtWtrqc.js +0 -1
  440. package/build/client/_app/immutable/nodes/9.KKtWtrqc.js.br +0 -0
  441. package/build/client/_app/immutable/nodes/9.KKtWtrqc.js.gz +0 -0
  442. package/build/server/chunks/chunks/access.server.js-7luP5O4P.js.map +0 -1
  443. package/build/server/chunks/chunks/context.js-CYsGbpHa.js.map +0 -1
  444. package/build/server/chunks/chunks/package.js-CRz9GLaw.js.map +0 -1
  445. package/build/server/chunks/chunks/providers.server.js-CvFPEaVE.js.map +0 -1
  446. package/build/server/chunks/chunks/types.js-DxzJoaA4.js +0 -11
  447. package/build/server/chunks/chunks/types.js-DxzJoaA4.js.map +0 -1
  448. package/build/server/chunks/chunks/types2.js-DdHhYSMF.js.map +0 -1
  449. package/build/server/chunks/entries/endpoints/api/compute/_server.ts.js-PDUSGtWL.js.map +0 -1
  450. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/_server.ts.js-CcVYY8qB.js.map +0 -1
  451. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_filename_/_server.ts.js-Dty9JTwS.js.map +0 -1
  452. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_server.ts.js-BSk-XMi6.js.map +0 -1
  453. package/build/server/chunks/entries/endpoints/api/definitions/_server.ts.js-CSlXv8pl.js.map +0 -1
  454. package/build/server/chunks/entries/endpoints/api/files/_...path_/_server.ts.js-BNV_mEcx.js +0 -51
  455. package/build/server/chunks/entries/endpoints/api/files/_...path_/_server.ts.js-BNV_mEcx.js.map +0 -1
  456. package/build/server/chunks/entries/hooks.server.js-COXVYevB.js.map +0 -1
  457. package/build/server/chunks/entries/pages/admin/_page.server.ts.js-Ch_K9Eqm.js +0 -32
  458. package/build/server/chunks/entries/pages/admin/_page.server.ts.js-Ch_K9Eqm.js.map +0 -1
  459. package/build/server/chunks/entries/pages/admin/_page.svelte.js-Cazj7gb_.js +0 -173
  460. package/build/server/chunks/entries/pages/admin/_page.svelte.js-Cazj7gb_.js.map +0 -1
  461. package/build/server/chunks/entries/pages/admin/system/_page.svelte.js-D40qz7h1.js.map +0 -1
  462. package/build/server/chunks/entries/pages/library/_guid_/_page.server.ts.js-Bg8aqgge.js.map +0 -1
  463. package/build/server/chunks/entries/pages/library/_guid_/_page.svelte.js-64m55aas.js.map +0 -1
  464. package/build/server/chunks/entries/pages/projects/_page.svelte.js-CAqDXDn_.js.map +0 -1
  465. package/build/server/chunks/manifest.js-CxNOAaGX.js.map +0 -1
  466. package/build/server/chunks/nodes/9.js-BfWwYBB0.js +0 -23
  467. package/build/server/chunks/nodes/9.js-BfWwYBB0.js.map +0 -1
  468. /package/build/client/_app/immutable/nodes/{0.DbHFFbkB.js → 0.CpKGgbSx.js} +0 -0
  469. /package/build/client/_app/immutable/nodes/{0.DbHFFbkB.js.br → 0.CpKGgbSx.js.br} +0 -0
  470. /package/build/client/_app/immutable/nodes/{0.DbHFFbkB.js.gz → 0.CpKGgbSx.js.gz} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts.js-DgsqUpvy.js","sources":["../../../../../../../../../../.svelte-kit/output/server/entries/endpoints/api/definitions/_guid_/versions/_versionId_/_server.ts.js"],"sourcesContent":["import { s as getDefinitionService } from \"../../../../../../../chunks/providers.server.js\";\nimport { k as requireEditableDefinition } from \"../../../../../../../chunks/access.server.js\";\nimport { a as apiError, h as handleApiError, A as ApiErrorCode } from \"../../../../../../../chunks/api-errors.js\";\nimport { G as GuidSchema } from \"../../../../../../../chunks/context.js\";\nconst DELETE = async ({ params, locals }) => {\n const guidParsed = GuidSchema.safeParse(params.guid);\n if (!guidParsed.success) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Invalid or missing GUID\");\n const versionParsed = GuidSchema.safeParse(params.versionId);\n if (!versionParsed.success)\n apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Invalid or missing version ID\");\n const { ctx } = await requireEditableDefinition(locals, guidParsed.data);\n try {\n await getDefinitionService().deleteVersion(ctx, guidParsed.data, versionParsed.data);\n return new Response(null, { status: 204 });\n } catch (err) {\n handleApiError(err, \"Failed to delete version\");\n }\n};\nexport {\n DELETE\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAIK,MAAC,MAAM,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK;AAC7C,EAAE,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;AACtD,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,iBAAiB,EAAE,yBAAyB,CAAC;AACnG,EAAE,MAAM,aAAa,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC;AAC9D,EAAE,IAAI,CAAC,aAAa,CAAC,OAAO;AAC5B,IAAI,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,iBAAiB,EAAE,+BAA+B,CAAC;AAClF,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,yBAAyB,CAAC,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC;AAC1E,EAAE,IAAI;AACN,IAAI,MAAM,oBAAoB,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,UAAU,CAAC,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC;AACxF,IAAI,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AAC9C,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,0BAA0B,CAAC;AACnD,EAAE;AACF;;;;"}
1
+ {"version":3,"file":"_server.ts.js-DmpMY-tz.js","sources":["../../../../../../../../../../.svelte-kit/output/server/entries/endpoints/api/definitions/_guid_/versions/_versionId_/_server.ts.js"],"sourcesContent":["import { t as getDefinitionService } from \"../../../../../../../chunks/providers.server.js\";\nimport { l as requireEditableDefinition } from \"../../../../../../../chunks/access.server.js\";\nimport { a as apiError, h as handleApiError, A as ApiErrorCode } from \"../../../../../../../chunks/api-errors.js\";\nimport { f as GuidSchema } from \"../../../../../../../chunks/context.js\";\nconst DELETE = async ({ params, locals }) => {\n const guidParsed = GuidSchema.safeParse(params.guid);\n if (!guidParsed.success) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Invalid or missing GUID\");\n const versionParsed = GuidSchema.safeParse(params.versionId);\n if (!versionParsed.success)\n apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Invalid or missing version ID\");\n const { ctx } = await requireEditableDefinition(locals, guidParsed.data);\n try {\n await getDefinitionService().deleteVersion(ctx, guidParsed.data, versionParsed.data);\n return new Response(null, { status: 204 });\n } catch (err) {\n handleApiError(err, \"Failed to delete version\");\n }\n};\nexport {\n DELETE\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAIK,MAAC,MAAM,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK;AAC7C,EAAE,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;AACtD,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,iBAAiB,EAAE,yBAAyB,CAAC;AACnG,EAAE,MAAM,aAAa,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC;AAC9D,EAAE,IAAI,CAAC,aAAa,CAAC,OAAO;AAC5B,IAAI,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,iBAAiB,EAAE,+BAA+B,CAAC;AAClF,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,yBAAyB,CAAC,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC;AAC1E,EAAE,IAAI;AACN,IAAI,MAAM,oBAAoB,EAAE,CAAC,aAAa,CAAC,GAAG,EAAE,UAAU,CAAC,IAAI,EAAE,aAAa,CAAC,IAAI,CAAC;AACxF,IAAI,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AAC9C,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,0BAA0B,CAAC;AACnD,EAAE;AACF;;;;"}
@@ -1,10 +1,9 @@
1
1
  import { json } from '@sveltejs/kit';
2
2
  import { randomUUID } from 'node:crypto';
3
- import { e as getProjectProvider, t as getDefinitionService } from '../../../../chunks/providers.server.js-CvFPEaVE.js';
4
- import { j as requireCanCreateDefinition } from '../../../../chunks/access.server.js-7luP5O4P.js';
5
- import { a as apiError, t as throwZodError, r as resolveServerForOrg, f as fetchSchemaFromCompute, h as handleApiError, A as ApiErrorCode } from '../../../../chunks/api-errors.js-DjgsTHzx.js';
6
- import { G as GH_EXTENSIONS } from '../../../../chunks/types.js-DxzJoaA4.js';
7
- import { b as CreateDefinitionInputSchema } from '../../../../chunks/context.js-CYsGbpHa.js';
3
+ import { e as getProjectProvider, u as getDefinitionService } from '../../../../chunks/providers.server.js-Sbk117pY.js';
4
+ import { k as requireCanCreateDefinition } from '../../../../chunks/access.server.js-x_KrjYJP.js';
5
+ import { a as apiError, t as throwZodError, r as resolveServerForOrg, f as fetchSchemaFromCompute, h as handleApiError, A as ApiErrorCode } from '../../../../chunks/api-errors.js-B1VX-zf8.js';
6
+ import { G as GH_EXTENSIONS, d as CreateDefinitionInputSchema } from '../../../../chunks/context.js-D8E0GFTw.js';
8
7
  import { c as MAX_GH_FILE_SIZE, M as MAX_IMAGE_FILE_SIZE } from '../../../../chunks/computeLimits.js-CVHW4MyF.js';
9
8
  import '../../../../chunks/shared-server.js-DaWdgxVh.js';
10
9
  import 'node:url';
@@ -14,7 +13,7 @@ import 'node:fs/promises';
14
13
  import '@supabase/supabase-js';
15
14
  import 'zod';
16
15
  import '@selvajs/compute/core';
17
- import '../../../../chunks/utils4.js-CzzZn2eq.js';
16
+ import '../../../../chunks/utils4.js-DvnSECfA.js';
18
17
 
19
18
  function parseTags(raw) {
20
19
  if (typeof raw !== "string" || !raw.trim()) return void 0;
@@ -110,4 +109,4 @@ const POST = async ({ request, locals }) => {
110
109
  };
111
110
 
112
111
  export { POST };
113
- //# sourceMappingURL=_server.ts.js-CSlXv8pl.js.map
112
+ //# sourceMappingURL=_server.ts.js-CgDtxILD.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts.js-CgDtxILD.js","sources":["../../../../../../../.svelte-kit/output/server/entries/endpoints/api/definitions/_server.ts.js"],"sourcesContent":["import { json } from \"@sveltejs/kit\";\nimport { randomUUID } from \"node:crypto\";\nimport { k as getProjectProvider, t as getDefinitionService } from \"../../../../chunks/providers.server.js\";\nimport { k as requireCanCreateDefinition } from \"../../../../chunks/access.server.js\";\nimport { a as apiError, t as throwZodError, r as resolveServerForOrg, f as fetchSchemaFromCompute, h as handleApiError, A as ApiErrorCode } from \"../../../../chunks/api-errors.js\";\nimport { G as GH_EXTENSIONS, e as CreateDefinitionInputSchema } from \"../../../../chunks/context.js\";\nimport { c as MAX_GH_FILE_SIZE, M as MAX_IMAGE_FILE_SIZE } from \"../../../../chunks/computeLimits.js\";\nfunction parseTags(raw) {\n if (typeof raw !== \"string\" || !raw.trim()) return void 0;\n const tags = raw.split(\",\").map((t) => t.trim()).filter(Boolean);\n return tags.length ? tags : void 0;\n}\nconst POST = async ({ request, locals }) => {\n const ctx = locals.ctx;\n const formData = await request.formData();\n const file = formData.get(\"file\");\n if (!(file instanceof File)) {\n apiError(400, ApiErrorCode.VALIDATION_FAILED, \"A Grasshopper (.gh or .ghx) file is required\");\n }\n const ext = file.name.slice(file.name.lastIndexOf(\".\")).toLowerCase();\n if (!GH_EXTENSIONS.includes(ext)) {\n apiError(\n 400,\n ApiErrorCode.VALIDATION_FAILED,\n `File type not allowed. Allowed: ${GH_EXTENSIONS.join(\", \")}`\n );\n }\n if (file.size > MAX_GH_FILE_SIZE) {\n apiError(\n 400,\n ApiErrorCode.VALIDATION_FAILED,\n `File too large. Max size: ${MAX_GH_FILE_SIZE / (1024 * 1024)} MB`\n );\n }\n const imageFile = formData.get(\"image\");\n if (imageFile instanceof File && imageFile.size > MAX_IMAGE_FILE_SIZE) {\n apiError(\n 400,\n ApiErrorCode.VALIDATION_FAILED,\n `Image too large. Max size: ${MAX_IMAGE_FILE_SIZE / (1024 * 1024)} MB`\n );\n }\n let projectId = formData.get(\"projectId\");\n if (typeof projectId !== \"string\" || !projectId) {\n if (!ctx.actingOrgId) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"No active organization\");\n const projectsPage = await getProjectProvider().listProjects(ctx, ctx.actingOrgId, {\n limit: 1\n });\n const defaultProject = projectsPage.items[0];\n if (!defaultProject) apiError(500, ApiErrorCode.INTERNAL, \"No project configured\");\n projectId = defaultProject.id;\n }\n const { project } = await requireCanCreateDefinition(locals, projectId);\n const parsed = CreateDefinitionInputSchema.safeParse({\n displayName: formData.get(\"displayName\"),\n description: formData.get(\"description\") || void 0,\n category: formData.get(\"category\") || void 0,\n coverImage: formData.get(\"coverImage\") || void 0,\n tags: parseTags(formData.get(\"tags\")),\n projectId,\n computeServerId: formData.get(\"computeServerId\") || void 0\n });\n if (!parsed.success) throwZodError(parsed.error);\n const fileExt = ext.slice(1);\n const guid = randomUUID();\n try {\n const fileData = new Uint8Array(await file.arrayBuffer());\n const server = await resolveServerForOrg(ctx, project.orgId, {\n definitionPin: parsed.data.computeServerId ?? null\n });\n const schema = await fetchSchemaFromCompute(fileData, server);\n const { record, version } = await getDefinitionService().create(\n ctx,\n {\n guid,\n projectId: parsed.data.projectId,\n ownerId: locals.user.id,\n fileExt,\n originalFilename: file.name,\n computeServerId: parsed.data.computeServerId,\n displayName: parsed.data.displayName.trim(),\n description: parsed.data.description,\n category: parsed.data.category,\n tags: parsed.data.tags,\n coverImage: parsed.data.coverImage\n },\n fileData,\n schema\n );\n let coverImage = record.coverImage;\n if (imageFile instanceof File && imageFile.size > 0) {\n const imageData = new Uint8Array(await imageFile.arrayBuffer());\n coverImage = await getDefinitionService().saveCoverImage(ctx, guid, imageData);\n }\n return json({ guid, version, coverImage }, { status: 201 });\n } catch (err) {\n handleApiError(err, \"Failed to create definition\");\n }\n};\nexport {\n POST\n};\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,66 @@
1
+ import { a as apiError, A as ApiErrorCode } from '../../../../../chunks/api-errors.js-B1VX-zf8.js';
2
+ import { c as classifyAssetPath, e as GuidSchema, g as COVER_IMAGE_CONTENT_TYPES } from '../../../../../chunks/context.js-D8E0GFTw.js';
3
+ import { k as getDefinitionMeta, v as definitionPaths, q as getStorageProvider } from '../../../../../chunks/providers.server.js-Sbk117pY.js';
4
+ import { m as requireCanViewProject, n as requireCanViewOrg } from '../../../../../chunks/access.server.js-x_KrjYJP.js';
5
+ import '@sveltejs/kit';
6
+ import '@selvajs/compute/core';
7
+ import '../../../../../chunks/utils4.js-DvnSECfA.js';
8
+ import 'zod';
9
+ import '../../../../../chunks/shared-server.js-DaWdgxVh.js';
10
+ import 'node:url';
11
+ import 'node:path';
12
+ import 'node:fs';
13
+ import 'node:crypto';
14
+ import 'node:fs/promises';
15
+ import '@supabase/supabase-js';
16
+
17
+ const CONTENT_TYPE_BY_EXT = {
18
+ ...COVER_IMAGE_CONTENT_TYPES,
19
+ ".pdf": "application/pdf"
20
+ };
21
+ function contentTypeFor(storagePath) {
22
+ const dot = storagePath.lastIndexOf(".");
23
+ const ext = dot === -1 ? "" : storagePath.slice(dot).toLowerCase();
24
+ return CONTENT_TYPE_BY_EXT[ext] ?? "application/octet-stream";
25
+ }
26
+ const GET = async ({ params, locals }) => {
27
+ const storagePath = params.path;
28
+ if (!storagePath) apiError(400, ApiErrorCode.VALIDATION_FAILED, "Missing path");
29
+ const match = classifyAssetPath(storagePath);
30
+ if (!match) apiError(404, ApiErrorCode.NOT_FOUND, "File not found");
31
+ let canonicalPath = storagePath;
32
+ switch (match.class.visibility) {
33
+ case "public":
34
+ break;
35
+ case "org": {
36
+ if (!locals.ctx) apiError(401, ApiErrorCode.UNAUTHORIZED, "Unauthorized");
37
+ const orgId = match.scopeId;
38
+ if (!orgId) apiError(404, ApiErrorCode.NOT_FOUND, "File not found");
39
+ await requireCanViewOrg(locals, orgId);
40
+ break;
41
+ }
42
+ case "project": {
43
+ if (!locals.ctx) apiError(401, ApiErrorCode.UNAUTHORIZED, "Unauthorized");
44
+ const guid = match.scopeId;
45
+ const guidParsed = GuidSchema.safeParse(guid);
46
+ if (!guidParsed.success) apiError(404, ApiErrorCode.NOT_FOUND, "File not found");
47
+ const record = await getDefinitionMeta().get(locals.ctx, guidParsed.data);
48
+ if (!record) apiError(404, ApiErrorCode.NOT_FOUND, "File not found");
49
+ await requireCanViewProject(locals, record.projectId);
50
+ canonicalPath = definitionPaths.image(guidParsed.data);
51
+ break;
52
+ }
53
+ }
54
+ const bytes = await getStorageProvider().get(canonicalPath);
55
+ if (!bytes) apiError(404, ApiErrorCode.NOT_FOUND, "File not found");
56
+ const cacheControl = match.class.visibility === "public" ? "public, max-age=3600" : "private, max-age=3600";
57
+ return new Response(Buffer.from(bytes), {
58
+ headers: {
59
+ "Content-Type": contentTypeFor(canonicalPath),
60
+ "Cache-Control": cacheControl
61
+ }
62
+ });
63
+ };
64
+
65
+ export { GET };
66
+ //# sourceMappingURL=_server.ts.js-JYCUGi0C.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts.js-JYCUGi0C.js","sources":["../../../../../../../../.svelte-kit/output/server/entries/endpoints/api/files/_...path_/_server.ts.js"],"sourcesContent":["import { a as apiError, A as ApiErrorCode } from \"../../../../../chunks/api-errors.js\";\nimport { c as classifyAssetPath, f as GuidSchema, i as COVER_IMAGE_CONTENT_TYPES } from \"../../../../../chunks/context.js\";\nimport { o as getDefinitionMeta, u as definitionPaths, r as getStorageProvider } from \"../../../../../chunks/providers.server.js\";\nimport { m as requireCanViewProject, n as requireCanViewOrg } from \"../../../../../chunks/access.server.js\";\nconst CONTENT_TYPE_BY_EXT = {\n ...COVER_IMAGE_CONTENT_TYPES,\n \".pdf\": \"application/pdf\"\n};\nfunction contentTypeFor(storagePath) {\n const dot = storagePath.lastIndexOf(\".\");\n const ext = dot === -1 ? \"\" : storagePath.slice(dot).toLowerCase();\n return CONTENT_TYPE_BY_EXT[ext] ?? \"application/octet-stream\";\n}\nconst GET = async ({ params, locals }) => {\n const storagePath = params.path;\n if (!storagePath) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Missing path\");\n const match = classifyAssetPath(storagePath);\n if (!match) apiError(404, ApiErrorCode.NOT_FOUND, \"File not found\");\n let canonicalPath = storagePath;\n switch (match.class.visibility) {\n case \"public\":\n break;\n case \"org\": {\n if (!locals.ctx) apiError(401, ApiErrorCode.UNAUTHORIZED, \"Unauthorized\");\n const orgId = match.scopeId;\n if (!orgId) apiError(404, ApiErrorCode.NOT_FOUND, \"File not found\");\n await requireCanViewOrg(locals, orgId);\n break;\n }\n case \"project\": {\n if (!locals.ctx) apiError(401, ApiErrorCode.UNAUTHORIZED, \"Unauthorized\");\n const guid = match.scopeId;\n const guidParsed = GuidSchema.safeParse(guid);\n if (!guidParsed.success) apiError(404, ApiErrorCode.NOT_FOUND, \"File not found\");\n const record = await getDefinitionMeta().get(locals.ctx, guidParsed.data);\n if (!record) apiError(404, ApiErrorCode.NOT_FOUND, \"File not found\");\n await requireCanViewProject(locals, record.projectId);\n canonicalPath = definitionPaths.image(guidParsed.data);\n break;\n }\n }\n const bytes = await getStorageProvider().get(canonicalPath);\n if (!bytes) apiError(404, ApiErrorCode.NOT_FOUND, \"File not found\");\n const cacheControl = match.class.visibility === \"public\" ? \"public, max-age=3600\" : \"private, max-age=3600\";\n return new Response(Buffer.from(bytes), {\n headers: {\n \"Content-Type\": contentTypeFor(canonicalPath),\n \"Cache-Control\": cacheControl\n }\n });\n};\nexport {\n GET\n};\n"],"names":[],"mappings":"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"}
@@ -1,10 +1,10 @@
1
1
  import { json } from '@sveltejs/kit';
2
2
  import { randomUUID } from 'crypto';
3
3
  import { createRequire } from 'module';
4
- import { g as getBootHealth, i as isDegraded } from '../../../../chunks/bootHealth.server.js-C24EAEVt.js';
5
- import '../../../../chunks/context.js-CYsGbpHa.js';
4
+ import { g as getBootHealth, i as isDegraded } from '../../../../chunks/bootHealth.server.js-o9cAZ837.js';
5
+ import '../../../../chunks/context.js-D8E0GFTw.js';
6
6
  import 'zod';
7
- import '../../../../chunks/providers.server.js-CvFPEaVE.js';
7
+ import '../../../../chunks/providers.server.js-Sbk117pY.js';
8
8
  import '../../../../chunks/shared-server.js-DaWdgxVh.js';
9
9
  import 'node:url';
10
10
  import 'node:path';
@@ -36,4 +36,4 @@ const GET = async () => {
36
36
  };
37
37
 
38
38
  export { GET };
39
- //# sourceMappingURL=_server.ts.js---TaqOG4.js.map
39
+ //# sourceMappingURL=_server.ts.js-CcG69a2b.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts.js---TaqOG4.js","sources":["../../../../../../../.svelte-kit/output/server/entries/endpoints/api/health/_server.ts.js"],"sourcesContent":["import { json } from \"@sveltejs/kit\";\nimport { randomUUID } from \"crypto\";\nimport { createRequire } from \"module\";\nimport { g as getBootHealth, i as isDegraded } from \"../../../../chunks/bootHealth.server.js\";\nconst INSTANCE_ID = randomUUID();\nconst RUNTIME_VERSION = (() => {\n try {\n const require2 = createRequire(import.meta.url);\n return require2(\"@selvajs/selva/package.json\").version;\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 instanceId: INSTANCE_ID,\n version: RUNTIME_VERSION,\n boot\n };\n return json(body, { status: degraded ? 503 : 200 });\n};\nexport {\n GET\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;AAIA,MAAM,WAAW,GAAG,UAAU,EAAE;AAChC,MAAM,eAAe,GAAG,CAAC,MAAM;AAC/B,EAAE,IAAI;AACN,IAAI,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;AACnD,IAAI,OAAO,QAAQ,CAAC,6BAA6B,CAAC,CAAC,OAAO;AAC1D,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,UAAU,EAAE,WAAW;AAC3B,IAAI,OAAO,EAAE,eAAe;AAC5B,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.js-CcG69a2b.js","sources":["../../../../../../../.svelte-kit/output/server/entries/endpoints/api/health/_server.ts.js"],"sourcesContent":["import { json } from \"@sveltejs/kit\";\nimport { randomUUID } from \"crypto\";\nimport { createRequire } from \"module\";\nimport { g as getBootHealth, i as isDegraded } from \"../../../../chunks/bootHealth.server.js\";\nconst INSTANCE_ID = randomUUID();\nconst RUNTIME_VERSION = (() => {\n try {\n const require2 = createRequire(import.meta.url);\n return require2(\"@selvajs/selva/package.json\").version;\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 instanceId: INSTANCE_ID,\n version: RUNTIME_VERSION,\n boot\n };\n return json(body, { status: degraded ? 503 : 200 });\n};\nexport {\n GET\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;AAIA,MAAM,WAAW,GAAG,UAAU,EAAE;AAChC,MAAM,eAAe,GAAG,CAAC,MAAM;AAC/B,EAAE,IAAI;AACN,IAAI,MAAM,QAAQ,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;AACnD,IAAI,OAAO,QAAQ,CAAC,6BAA6B,CAAC,CAAC,OAAO;AAC1D,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,UAAU,EAAE,WAAW;AAC3B,IAAI,OAAO,EAAE,eAAe;AAC5B,IAAI;AACJ,GAAG;AACH,EAAE,OAAO,IAAI,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,QAAQ,GAAG,GAAG,GAAG,GAAG,EAAE,CAAC;AACrD;;;;"}
@@ -1,18 +1,18 @@
1
- import { n as getInviteStore } from '../../../../../chunks/providers.server.js-CvFPEaVE.js';
2
- import { m as requireManageOrgMembers } from '../../../../../chunks/access.server.js-7luP5O4P.js';
3
- import { a as apiError, A as ApiErrorCode, h as handleApiError } from '../../../../../chunks/api-errors.js-DjgsTHzx.js';
1
+ import { n as getInviteStore } from '../../../../../chunks/providers.server.js-Sbk117pY.js';
2
+ import { c as requireManageOrgMembers } from '../../../../../chunks/access.server.js-x_KrjYJP.js';
3
+ import { a as apiError, A as ApiErrorCode, h as handleApiError } from '../../../../../chunks/api-errors.js-B1VX-zf8.js';
4
4
  import '../../../../../chunks/shared-server.js-DaWdgxVh.js';
5
5
  import 'node:url';
6
6
  import 'node:path';
7
7
  import 'node:fs';
8
- import '../../../../../chunks/context.js-CYsGbpHa.js';
8
+ import '../../../../../chunks/context.js-D8E0GFTw.js';
9
9
  import 'zod';
10
10
  import 'node:crypto';
11
11
  import 'node:fs/promises';
12
12
  import '@supabase/supabase-js';
13
13
  import '@sveltejs/kit';
14
14
  import '@selvajs/compute/core';
15
- import '../../../../../chunks/utils4.js-CzzZn2eq.js';
15
+ import '../../../../../chunks/utils4.js-DvnSECfA.js';
16
16
 
17
17
  const DELETE = async ({ params, locals }) => {
18
18
  requireManageOrgMembers(locals);
@@ -40,4 +40,4 @@ const DELETE = async ({ params, locals }) => {
40
40
  };
41
41
 
42
42
  export { DELETE };
43
- //# sourceMappingURL=_server.ts.js-D8PLQyfl.js.map
43
+ //# sourceMappingURL=_server.ts.js-CpTViiM7.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts.js-D8PLQyfl.js","sources":["../../../../../../../../.svelte-kit/output/server/entries/endpoints/api/invites/_id_/_server.ts.js"],"sourcesContent":["import { b as getInviteStore } from \"../../../../../chunks/providers.server.js\";\nimport { m as requireManageOrgMembers } from \"../../../../../chunks/access.server.js\";\nimport { a as apiError, A as ApiErrorCode, h as handleApiError } from \"../../../../../chunks/api-errors.js\";\nconst DELETE = async ({ params, locals }) => {\n requireManageOrgMembers(locals);\n const ctx = locals.ctx;\n if (!ctx.actingOrgId) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"No active organization\");\n const id = params.id;\n try {\n const store = getInviteStore();\n let cursor;\n let found = false;\n do {\n const page = await store.listByOrg(ctx, ctx.actingOrgId, { limit: 200, cursor });\n if (page.items.some((i) => i.id === id)) {\n found = true;\n break;\n }\n cursor = page.nextCursor ?? void 0;\n } while (cursor);\n if (!found) apiError(404, ApiErrorCode.NOT_FOUND, \"Invite not found\");\n await store.revoke(ctx, id);\n return new Response(null, { status: 204 });\n } catch (err) {\n handleApiError(err, \"Failed to revoke invite\");\n }\n};\nexport {\n DELETE\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAGK,MAAC,MAAM,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK;AAC7C,EAAE,uBAAuB,CAAC,MAAM,CAAC;AACjC,EAAE,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG;AACxB,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,iBAAiB,EAAE,wBAAwB,CAAC;AAC/F,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE;AACtB,EAAE,IAAI;AACN,IAAI,MAAM,KAAK,GAAG,cAAc,EAAE;AAClC,IAAI,IAAI,MAAM;AACd,IAAI,IAAI,KAAK,GAAG,KAAK;AACrB,IAAI,GAAG;AACP,MAAM,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;AACtF,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE;AAC/C,QAAQ,KAAK,GAAG,IAAI;AACpB,QAAQ;AACR,MAAM;AACN,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,IAAI,KAAK,CAAC;AACxC,IAAI,CAAC,QAAQ,MAAM;AACnB,IAAI,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,SAAS,EAAE,kBAAkB,CAAC;AACzE,IAAI,MAAM,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC;AAC/B,IAAI,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AAC9C,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,yBAAyB,CAAC;AAClD,EAAE;AACF;;;;"}
1
+ {"version":3,"file":"_server.ts.js-CpTViiM7.js","sources":["../../../../../../../../.svelte-kit/output/server/entries/endpoints/api/invites/_id_/_server.ts.js"],"sourcesContent":["import { b as getInviteStore } from \"../../../../../chunks/providers.server.js\";\nimport { c as requireManageOrgMembers } from \"../../../../../chunks/access.server.js\";\nimport { a as apiError, A as ApiErrorCode, h as handleApiError } from \"../../../../../chunks/api-errors.js\";\nconst DELETE = async ({ params, locals }) => {\n requireManageOrgMembers(locals);\n const ctx = locals.ctx;\n if (!ctx.actingOrgId) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"No active organization\");\n const id = params.id;\n try {\n const store = getInviteStore();\n let cursor;\n let found = false;\n do {\n const page = await store.listByOrg(ctx, ctx.actingOrgId, { limit: 200, cursor });\n if (page.items.some((i) => i.id === id)) {\n found = true;\n break;\n }\n cursor = page.nextCursor ?? void 0;\n } while (cursor);\n if (!found) apiError(404, ApiErrorCode.NOT_FOUND, \"Invite not found\");\n await store.revoke(ctx, id);\n return new Response(null, { status: 204 });\n } catch (err) {\n handleApiError(err, \"Failed to revoke invite\");\n }\n};\nexport {\n DELETE\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAGK,MAAC,MAAM,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK;AAC7C,EAAE,uBAAuB,CAAC,MAAM,CAAC;AACjC,EAAE,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG;AACxB,EAAE,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,iBAAiB,EAAE,wBAAwB,CAAC;AAC/F,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,EAAE;AACtB,EAAE,IAAI;AACN,IAAI,MAAM,KAAK,GAAG,cAAc,EAAE;AAClC,IAAI,IAAI,MAAM;AACd,IAAI,IAAI,KAAK,GAAG,KAAK;AACrB,IAAI,GAAG;AACP,MAAM,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE,GAAG,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC;AACtF,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE;AAC/C,QAAQ,KAAK,GAAG,IAAI;AACpB,QAAQ;AACR,MAAM;AACN,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,IAAI,KAAK,CAAC;AACxC,IAAI,CAAC,QAAQ,MAAM;AACnB,IAAI,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,SAAS,EAAE,kBAAkB,CAAC;AACzE,IAAI,MAAM,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC;AAC/B,IAAI,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AAC9C,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,yBAAyB,CAAC;AAClD,EAAE;AACF;;;;"}
@@ -1,11 +1,11 @@
1
1
  import { json } from '@sveltejs/kit';
2
2
  import { randomUUID } from 'node:crypto';
3
3
  import { z } from 'zod';
4
- import { n as getInviteStore } from '../../../../chunks/providers.server.js-CvFPEaVE.js';
5
- import { m as requireManageOrgMembers } from '../../../../chunks/access.server.js-7luP5O4P.js';
6
- import { a as apiError, h as handleApiError, t as throwZodError, A as ApiErrorCode } from '../../../../chunks/api-errors.js-DjgsTHzx.js';
7
- import { M as MEMBER_ASSIGNABLE_PERMISSIONS, D as DEFAULT_ORG_PERMISSIONS, f as OrgRoleSchema, P as PlatformPermissionSchema, O as OrgPermissionSchema } from '../../../../chunks/context.js-CYsGbpHa.js';
8
- import { s as splitFlatPermissions } from '../../../../chunks/permissions-compat.server.js-BRYePqvR.js';
4
+ import { n as getInviteStore } from '../../../../chunks/providers.server.js-Sbk117pY.js';
5
+ import { c as requireManageOrgMembers } from '../../../../chunks/access.server.js-x_KrjYJP.js';
6
+ import { a as apiError, h as handleApiError, t as throwZodError, A as ApiErrorCode } from '../../../../chunks/api-errors.js-B1VX-zf8.js';
7
+ import { M as MEMBER_ASSIGNABLE_PERMISSIONS, D as DEFAULT_ORG_PERMISSIONS, k as OrgRoleSchema, P as PlatformPermissionSchema, b as OrgPermissionSchema } from '../../../../chunks/context.js-D8E0GFTw.js';
8
+ import { s as splitFlatPermissions } from '../../../../chunks/permissions-compat.server.js-BfoBZYSH.js';
9
9
  import { m as mintRawToken, h as hashToken } from '../../../../chunks/token.server.js-q3fv9Fqo.js';
10
10
  import '../../../../chunks/shared-server.js-DaWdgxVh.js';
11
11
  import 'node:url';
@@ -14,7 +14,7 @@ import 'node:fs';
14
14
  import 'node:fs/promises';
15
15
  import '@supabase/supabase-js';
16
16
  import '@selvajs/compute/core';
17
- import '../../../../chunks/utils4.js-CzzZn2eq.js';
17
+ import '../../../../chunks/utils4.js-DvnSECfA.js';
18
18
 
19
19
  const FlatPermissionSchema = z.union([PlatformPermissionSchema, OrgPermissionSchema]);
20
20
  const CreateBody = z.object({
@@ -69,4 +69,4 @@ const POST = async ({ request, locals, url }) => {
69
69
  };
70
70
 
71
71
  export { GET, POST };
72
- //# sourceMappingURL=_server.ts.js-bw5-SMCA.js.map
72
+ //# sourceMappingURL=_server.ts.js-DveWNfQf.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts.js-bw5-SMCA.js","sources":["../../../../../../../.svelte-kit/output/server/entries/endpoints/api/invites/_server.ts.js"],"sourcesContent":["import { json } from \"@sveltejs/kit\";\nimport { randomUUID } from \"node:crypto\";\nimport { z } from \"zod\";\nimport { b as getInviteStore } from \"../../../../chunks/providers.server.js\";\nimport { m as requireManageOrgMembers } from \"../../../../chunks/access.server.js\";\nimport { a as apiError, h as handleApiError, t as throwZodError, A as ApiErrorCode } from \"../../../../chunks/api-errors.js\";\nimport { P as PlatformPermissionSchema, O as OrgPermissionSchema, g 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.server.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) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"No active organization\");\n try {\n const page = await getInviteStore().listByOrg(ctx, ctx.actingOrgId, { limit: 200 });\n const invites = page.items.map(({ tokenHash: _omit, ...rest }) => rest);\n return json({ invites });\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) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"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.js-DveWNfQf.js","sources":["../../../../../../../.svelte-kit/output/server/entries/endpoints/api/invites/_server.ts.js"],"sourcesContent":["import { json } from \"@sveltejs/kit\";\nimport { randomUUID } from \"node:crypto\";\nimport { z } from \"zod\";\nimport { b as getInviteStore } from \"../../../../chunks/providers.server.js\";\nimport { c as requireManageOrgMembers } from \"../../../../chunks/access.server.js\";\nimport { a as apiError, h as handleApiError, t as throwZodError, A as ApiErrorCode } from \"../../../../chunks/api-errors.js\";\nimport { P as PlatformPermissionSchema, a as OrgPermissionSchema, l 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.server.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) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"No active organization\");\n try {\n const page = await getInviteStore().listByOrg(ctx, ctx.actingOrgId, { limit: 200 });\n const invites = page.items.map(({ tokenHash: _omit, ...rest }) => rest);\n return json({ invites });\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) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"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,17 +1,17 @@
1
1
  import { json } from '@sveltejs/kit';
2
- import { o as getUserProfileStore } from '../../../../../../chunks/providers.server.js-CvFPEaVE.js';
3
- import { a as apiError, h as handleApiError, A as ApiErrorCode } from '../../../../../../chunks/api-errors.js-DjgsTHzx.js';
2
+ import { o as getUserProfileStore } from '../../../../../../chunks/providers.server.js-Sbk117pY.js';
3
+ import { a as apiError, h as handleApiError, A as ApiErrorCode } from '../../../../../../chunks/api-errors.js-B1VX-zf8.js';
4
4
  import '../../../../../../chunks/shared-server.js-DaWdgxVh.js';
5
5
  import 'node:url';
6
6
  import 'node:path';
7
7
  import 'node:fs';
8
- import '../../../../../../chunks/context.js-CYsGbpHa.js';
8
+ import '../../../../../../chunks/context.js-D8E0GFTw.js';
9
9
  import 'zod';
10
10
  import 'node:crypto';
11
11
  import 'node:fs/promises';
12
12
  import '@supabase/supabase-js';
13
13
  import '@selvajs/compute/core';
14
- import '../../../../../../chunks/utils4.js-CzzZn2eq.js';
14
+ import '../../../../../../chunks/utils4.js-DvnSECfA.js';
15
15
 
16
16
  const POST = async ({ params, locals }) => {
17
17
  if (!locals.user || !locals.ctx) apiError(401, ApiErrorCode.UNAUTHORIZED, "Unauthorized");
@@ -37,4 +37,4 @@ const DELETE = async ({ params, locals }) => {
37
37
  };
38
38
 
39
39
  export { DELETE, POST };
40
- //# sourceMappingURL=_server.ts.js-xb3Bmd1T.js.map
40
+ //# sourceMappingURL=_server.ts.js-DvBZkOHM.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts.js-xb3Bmd1T.js","sources":["../../../../../../../../../.svelte-kit/output/server/entries/endpoints/api/me/starred/_guid_/_server.ts.js"],"sourcesContent":["import { json } from \"@sveltejs/kit\";\nimport { d as getUserProfileStore } from \"../../../../../../chunks/providers.server.js\";\nimport { a as apiError, h as handleApiError, A as ApiErrorCode } from \"../../../../../../chunks/api-errors.js\";\nconst POST = async ({ params, locals }) => {\n if (!locals.user || !locals.ctx) apiError(401, ApiErrorCode.UNAUTHORIZED, \"Unauthorized\");\n const guid = params.guid;\n if (!guid) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Missing definition guid\");\n try {\n await getUserProfileStore().starDefinition(locals.ctx, locals.user.id, guid);\n return json({ starred: true });\n } catch (err) {\n handleApiError(err, \"Failed to star definition\");\n }\n};\nconst DELETE = async ({ params, locals }) => {\n if (!locals.user || !locals.ctx) apiError(401, ApiErrorCode.UNAUTHORIZED, \"Unauthorized\");\n const guid = params.guid;\n if (!guid) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Missing definition guid\");\n try {\n await getUserProfileStore().unstarDefinition(locals.ctx, locals.user.id, guid);\n return json({ starred: false });\n } catch (err) {\n handleApiError(err, \"Failed to unstar definition\");\n }\n};\nexport {\n DELETE,\n POST\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;AAGK,MAAC,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK;AAC3C,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,YAAY,EAAE,cAAc,CAAC;AAC3F,EAAE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI;AAC1B,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,iBAAiB,EAAE,yBAAyB,CAAC;AACrF,EAAE,IAAI;AACN,IAAI,MAAM,mBAAmB,EAAE,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC;AAChF,IAAI,OAAO,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAClC,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,2BAA2B,CAAC;AACpD,EAAE;AACF;AACK,MAAC,MAAM,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK;AAC7C,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,YAAY,EAAE,cAAc,CAAC;AAC3F,EAAE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI;AAC1B,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,iBAAiB,EAAE,yBAAyB,CAAC;AACrF,EAAE,IAAI;AACN,IAAI,MAAM,mBAAmB,EAAE,CAAC,gBAAgB,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC;AAClF,IAAI,OAAO,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;AACnC,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,6BAA6B,CAAC;AACtD,EAAE;AACF;;;;"}
1
+ {"version":3,"file":"_server.ts.js-DvBZkOHM.js","sources":["../../../../../../../../../.svelte-kit/output/server/entries/endpoints/api/me/starred/_guid_/_server.ts.js"],"sourcesContent":["import { json } from \"@sveltejs/kit\";\nimport { d as getUserProfileStore } from \"../../../../../../chunks/providers.server.js\";\nimport { a as apiError, h as handleApiError, A as ApiErrorCode } from \"../../../../../../chunks/api-errors.js\";\nconst POST = async ({ params, locals }) => {\n if (!locals.user || !locals.ctx) apiError(401, ApiErrorCode.UNAUTHORIZED, \"Unauthorized\");\n const guid = params.guid;\n if (!guid) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Missing definition guid\");\n try {\n await getUserProfileStore().starDefinition(locals.ctx, locals.user.id, guid);\n return json({ starred: true });\n } catch (err) {\n handleApiError(err, \"Failed to star definition\");\n }\n};\nconst DELETE = async ({ params, locals }) => {\n if (!locals.user || !locals.ctx) apiError(401, ApiErrorCode.UNAUTHORIZED, \"Unauthorized\");\n const guid = params.guid;\n if (!guid) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Missing definition guid\");\n try {\n await getUserProfileStore().unstarDefinition(locals.ctx, locals.user.id, guid);\n return json({ starred: false });\n } catch (err) {\n handleApiError(err, \"Failed to unstar definition\");\n }\n};\nexport {\n DELETE,\n POST\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;AAGK,MAAC,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK;AAC3C,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,YAAY,EAAE,cAAc,CAAC;AAC3F,EAAE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI;AAC1B,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,iBAAiB,EAAE,yBAAyB,CAAC;AACrF,EAAE,IAAI;AACN,IAAI,MAAM,mBAAmB,EAAE,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC;AAChF,IAAI,OAAO,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAClC,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,2BAA2B,CAAC;AACpD,EAAE;AACF;AACK,MAAC,MAAM,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK;AAC7C,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,YAAY,EAAE,cAAc,CAAC;AAC3F,EAAE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI;AAC1B,EAAE,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,iBAAiB,EAAE,yBAAyB,CAAC;AACrF,EAAE,IAAI;AACN,IAAI,MAAM,mBAAmB,EAAE,CAAC,gBAAgB,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC;AAClF,IAAI,OAAO,IAAI,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC;AACnC,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,6BAA6B,CAAC;AACtD,EAAE;AACF;;;;"}
@@ -1,9 +1,9 @@
1
1
  import { json } from '@sveltejs/kit';
2
- import { a as apiError, A as ApiErrorCode } from '../../../../../chunks/api-errors.js-DjgsTHzx.js';
3
- import { j as getComputeServerConfigStore, r as isOrgServer, i as isPlatformServer, f as flag } from '../../../../../chunks/providers.server.js-CvFPEaVE.js';
4
- import { n as requireManageOrgCompute } from '../../../../../chunks/access.server.js-7luP5O4P.js';
5
- import '../../../../../chunks/context.js-CYsGbpHa.js';
6
- import { s as serversVisibleTo } from '../../../../../chunks/utils4.js-CzzZn2eq.js';
2
+ import { a as apiError, A as ApiErrorCode } from '../../../../../chunks/api-errors.js-B1VX-zf8.js';
3
+ import { j as getComputeServerConfigStore, r as isOrgServer, i as isPlatformServer, f as flag } from '../../../../../chunks/providers.server.js-Sbk117pY.js';
4
+ import { o as requireManageOrgCompute } from '../../../../../chunks/access.server.js-x_KrjYJP.js';
5
+ import '../../../../../chunks/context.js-D8E0GFTw.js';
6
+ import { s as serversVisibleTo } from '../../../../../chunks/utils4.js-DvnSECfA.js';
7
7
  import '@selvajs/compute/core';
8
8
  import '../../../../../chunks/shared-server.js-DaWdgxVh.js';
9
9
  import 'node:url';
@@ -117,4 +117,4 @@ const PUT = async ({ request, locals }) => {
117
117
  };
118
118
 
119
119
  export { GET, PUT };
120
- //# sourceMappingURL=_server.ts.js-Md2vW_JR.js.map
120
+ //# sourceMappingURL=_server.ts.js-jFG7Wq0K.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts.js-Md2vW_JR.js","sources":["../../../../../../../../.svelte-kit/output/server/entries/endpoints/api/org/compute/_server.ts.js"],"sourcesContent":["import { json } from \"@sveltejs/kit\";\nimport { a as apiError, A as ApiErrorCode } from \"../../../../../chunks/api-errors.js\";\nimport { i as getComputeServerConfigStore, u as isOrgServer, o as isPlatformServer, f as flag } from \"../../../../../chunks/providers.server.js\";\nimport { n as requireManageOrgCompute } from \"../../../../../chunks/access.server.js\";\nimport \"../../../../../chunks/context.js\";\nimport { s as serversVisibleTo } from \"../../../../../chunks/utils4.js\";\nfunction requireFlag() {\n if (!flag(\"ALLOW_ORG_COMPUTE_OVERRIDE\")) {\n apiError(\n 403,\n ApiErrorCode.FORBIDDEN,\n \"Per-org compute override is disabled on this instance (ALLOW_ORG_COMPUTE_OVERRIDE).\"\n );\n }\n}\nconst GET = async ({ locals }) => {\n requireFlag();\n requireManageOrgCompute(locals);\n const ctx = locals.ctx;\n if (!ctx.actingOrgId) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"No active organization\");\n const config = await getComputeServerConfigStore().getConfig(ctx);\n const orgId = ctx.actingOrgId;\n const owned = config.servers.filter((s) => isOrgServer(s) && s.ownerOrgId === orgId).map((s) => {\n const orgServer = s;\n const { apiKey, ...rest } = orgServer;\n return { ...rest, hasApiKey: !!apiKey };\n });\n const visible = serversVisibleTo(config, orgId);\n const catalog = visible.map((s) => ({\n id: s.id,\n label: s.label,\n serverUrl: s.serverUrl,\n scope: s.scope,\n source: isPlatformServer(s) ? \"platform\" : \"org\",\n timeoutMs: s.timeoutMs,\n retryCount: s.retryCount\n }));\n return json({\n servers: owned,\n defaultServerId: config.orgDefaults?.[orgId] ?? null,\n globalDefaultServerId: config.defaultServerId ?? null,\n catalog\n });\n};\nconst PUT = async ({ request, locals }) => {\n requireFlag();\n requireManageOrgCompute(locals);\n const ctx = locals.ctx;\n if (!ctx.actingOrgId) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"No active organization\");\n const orgId = ctx.actingOrgId;\n const body = await request.json().catch(() => null);\n if (!body || typeof body !== \"object\")\n apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Invalid request body\");\n const incoming = body;\n if (!Array.isArray(incoming.servers))\n apiError(400, ApiErrorCode.VALIDATION_FAILED, \"servers must be an array\");\n for (const s of incoming.servers) {\n if (!s.id || typeof s.id !== \"string\")\n apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Each server needs an id\");\n if (!s.label || typeof s.label !== \"string\")\n apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Each server needs a label\");\n if (!s.serverUrl || typeof s.serverUrl !== \"string\")\n apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Each server needs a serverUrl\");\n try {\n new URL(s.serverUrl);\n } catch {\n apiError(400, ApiErrorCode.VALIDATION_FAILED, `Invalid serverUrl: ${s.serverUrl}`);\n }\n if (s.apiKey !== void 0 && s.apiKey !== null && typeof s.apiKey !== \"string\")\n apiError(400, ApiErrorCode.VALIDATION_FAILED, \"apiKey must be a string, null, or omitted\");\n }\n const provider = getComputeServerConfigStore();\n const existing = await provider.getConfig(ctx);\n const storedKeyById = new Map(\n existing.servers.filter((s) => isOrgServer(s) && s.ownerOrgId === orgId).map((s) => [s.id, s.apiKey])\n );\n const next = incoming.servers.map((s) => ({\n id: s.id,\n scope: \"org\",\n ownerOrgId: orgId,\n label: s.label,\n serverUrl: s.serverUrl,\n timeoutMs: s.timeoutMs,\n retryCount: s.retryCount,\n apiKey: s.apiKey === null ? void 0 : s.apiKey ? s.apiKey : storedKeyById.get(s.id)\n }));\n if (typeof incoming.defaultServerId === \"string\") {\n const projected = {\n servers: [\n ...existing.servers.filter((s) => !(isOrgServer(s) && s.ownerOrgId === orgId)),\n ...next\n ],\n defaultServerId: existing.defaultServerId,\n orgDefaults: existing.orgDefaults\n };\n const visibleIds = new Set(serversVisibleTo(projected, orgId).map((s) => s.id));\n if (!visibleIds.has(incoming.defaultServerId)) {\n apiError(\n 400,\n ApiErrorCode.VALIDATION_FAILED,\n \"defaultServerId must reference a server visible to this organization\"\n );\n }\n }\n await provider.saveOrgServers(ctx, orgId, next, incoming.defaultServerId);\n return new Response(null, { status: 204 });\n};\nexport {\n GET,\n PUT\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_server.ts.js-jFG7Wq0K.js","sources":["../../../../../../../../.svelte-kit/output/server/entries/endpoints/api/org/compute/_server.ts.js"],"sourcesContent":["import { json } from \"@sveltejs/kit\";\nimport { a as apiError, A as ApiErrorCode } from \"../../../../../chunks/api-errors.js\";\nimport { i as getComputeServerConfigStore, v as isOrgServer, q as isPlatformServer, f as flag } from \"../../../../../chunks/providers.server.js\";\nimport { o as requireManageOrgCompute } from \"../../../../../chunks/access.server.js\";\nimport \"../../../../../chunks/context.js\";\nimport { s as serversVisibleTo } from \"../../../../../chunks/utils4.js\";\nfunction requireFlag() {\n if (!flag(\"ALLOW_ORG_COMPUTE_OVERRIDE\")) {\n apiError(\n 403,\n ApiErrorCode.FORBIDDEN,\n \"Per-org compute override is disabled on this instance (ALLOW_ORG_COMPUTE_OVERRIDE).\"\n );\n }\n}\nconst GET = async ({ locals }) => {\n requireFlag();\n requireManageOrgCompute(locals);\n const ctx = locals.ctx;\n if (!ctx.actingOrgId) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"No active organization\");\n const config = await getComputeServerConfigStore().getConfig(ctx);\n const orgId = ctx.actingOrgId;\n const owned = config.servers.filter((s) => isOrgServer(s) && s.ownerOrgId === orgId).map((s) => {\n const orgServer = s;\n const { apiKey, ...rest } = orgServer;\n return { ...rest, hasApiKey: !!apiKey };\n });\n const visible = serversVisibleTo(config, orgId);\n const catalog = visible.map((s) => ({\n id: s.id,\n label: s.label,\n serverUrl: s.serverUrl,\n scope: s.scope,\n source: isPlatformServer(s) ? \"platform\" : \"org\",\n timeoutMs: s.timeoutMs,\n retryCount: s.retryCount\n }));\n return json({\n servers: owned,\n defaultServerId: config.orgDefaults?.[orgId] ?? null,\n globalDefaultServerId: config.defaultServerId ?? null,\n catalog\n });\n};\nconst PUT = async ({ request, locals }) => {\n requireFlag();\n requireManageOrgCompute(locals);\n const ctx = locals.ctx;\n if (!ctx.actingOrgId) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"No active organization\");\n const orgId = ctx.actingOrgId;\n const body = await request.json().catch(() => null);\n if (!body || typeof body !== \"object\")\n apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Invalid request body\");\n const incoming = body;\n if (!Array.isArray(incoming.servers))\n apiError(400, ApiErrorCode.VALIDATION_FAILED, \"servers must be an array\");\n for (const s of incoming.servers) {\n if (!s.id || typeof s.id !== \"string\")\n apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Each server needs an id\");\n if (!s.label || typeof s.label !== \"string\")\n apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Each server needs a label\");\n if (!s.serverUrl || typeof s.serverUrl !== \"string\")\n apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Each server needs a serverUrl\");\n try {\n new URL(s.serverUrl);\n } catch {\n apiError(400, ApiErrorCode.VALIDATION_FAILED, `Invalid serverUrl: ${s.serverUrl}`);\n }\n if (s.apiKey !== void 0 && s.apiKey !== null && typeof s.apiKey !== \"string\")\n apiError(400, ApiErrorCode.VALIDATION_FAILED, \"apiKey must be a string, null, or omitted\");\n }\n const provider = getComputeServerConfigStore();\n const existing = await provider.getConfig(ctx);\n const storedKeyById = new Map(\n existing.servers.filter((s) => isOrgServer(s) && s.ownerOrgId === orgId).map((s) => [s.id, s.apiKey])\n );\n const next = incoming.servers.map((s) => ({\n id: s.id,\n scope: \"org\",\n ownerOrgId: orgId,\n label: s.label,\n serverUrl: s.serverUrl,\n timeoutMs: s.timeoutMs,\n retryCount: s.retryCount,\n apiKey: s.apiKey === null ? void 0 : s.apiKey ? s.apiKey : storedKeyById.get(s.id)\n }));\n if (typeof incoming.defaultServerId === \"string\") {\n const projected = {\n servers: [\n ...existing.servers.filter((s) => !(isOrgServer(s) && s.ownerOrgId === orgId)),\n ...next\n ],\n defaultServerId: existing.defaultServerId,\n orgDefaults: existing.orgDefaults\n };\n const visibleIds = new Set(serversVisibleTo(projected, orgId).map((s) => s.id));\n if (!visibleIds.has(incoming.defaultServerId)) {\n apiError(\n 400,\n ApiErrorCode.VALIDATION_FAILED,\n \"defaultServerId must reference a server visible to this organization\"\n );\n }\n }\n await provider.saveOrgServers(ctx, orgId, next, incoming.defaultServerId);\n return new Response(null, { status: 204 });\n};\nexport {\n GET,\n PUT\n};\n"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
1
  import { z } from 'zod';
2
- import { M as MEMBER_ASSIGNABLE_PERMISSIONS, a as ALL_ORG_PERMISSIONS, f as OrgRoleSchema } from '../../../../../../../chunks/context.js-CYsGbpHa.js';
3
- import { d as getOrganizationProvider } from '../../../../../../../chunks/providers.server.js-CvFPEaVE.js';
4
- import { m as requireManageOrgMembers } from '../../../../../../../chunks/access.server.js-7luP5O4P.js';
5
- import { a as apiError, t as throwZodError, A as ApiErrorCode, h as handleApiError } from '../../../../../../../chunks/api-errors.js-DjgsTHzx.js';
2
+ import { M as MEMBER_ASSIGNABLE_PERMISSIONS, a as ALL_ORG_PERMISSIONS, k as OrgRoleSchema } from '../../../../../../../chunks/context.js-D8E0GFTw.js';
3
+ import { d as getOrganizationProvider } from '../../../../../../../chunks/providers.server.js-Sbk117pY.js';
4
+ import { c as requireManageOrgMembers } from '../../../../../../../chunks/access.server.js-x_KrjYJP.js';
5
+ import { a as apiError, t as throwZodError, A as ApiErrorCode, h as handleApiError } from '../../../../../../../chunks/api-errors.js-B1VX-zf8.js';
6
6
  import '../../../../../../../chunks/shared-server.js-DaWdgxVh.js';
7
7
  import 'node:url';
8
8
  import 'node:path';
@@ -12,7 +12,7 @@ import 'node:fs/promises';
12
12
  import '@supabase/supabase-js';
13
13
  import '@sveltejs/kit';
14
14
  import '@selvajs/compute/core';
15
- import '../../../../../../../chunks/utils4.js-CzzZn2eq.js';
15
+ import '../../../../../../../chunks/utils4.js-DvnSECfA.js';
16
16
 
17
17
  const PERMISSIONS_SCHEMA = z.array(
18
18
  z.enum(ALL_ORG_PERMISSIONS)
@@ -83,4 +83,4 @@ const PATCH = async ({ params, request, locals }) => {
83
83
  };
84
84
 
85
85
  export { PATCH };
86
- //# sourceMappingURL=_server.ts.js-BnDxcUMX.js.map
86
+ //# sourceMappingURL=_server.ts.js-B2ycg2AE.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts.js-BnDxcUMX.js","sources":["../../../../../../../../../../.svelte-kit/output/server/entries/endpoints/api/orgs/_orgId_/members/_userId_/_server.ts.js"],"sourcesContent":["import { z } from \"zod\";\nimport { a as ALL_ORG_PERMISSIONS, g as OrgRoleSchema, M as MEMBER_ASSIGNABLE_PERMISSIONS } from \"../../../../../../../chunks/context.js\";\nimport { c as getOrganizationProvider } from \"../../../../../../../chunks/providers.server.js\";\nimport { m as requireManageOrgMembers } from \"../../../../../../../chunks/access.server.js\";\nimport { a as apiError, t as throwZodError, A as ApiErrorCode, h as handleApiError } from \"../../../../../../../chunks/api-errors.js\";\nconst PERMISSIONS_SCHEMA = z.array(\n z.enum(ALL_ORG_PERMISSIONS)\n);\nconst PatchSchema = z.object({\n role: OrgRoleSchema.optional(),\n permissions: PERMISSIONS_SCHEMA.optional()\n}).refine((b) => b.role !== void 0 || b.permissions !== void 0, {\n message: \"Provide at least one of role, permissions\"\n});\nconst PATCH = async ({ params, request, locals }) => {\n const { orgId, userId } = params;\n if (!orgId || !userId) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Missing org ID or user ID\");\n requireManageOrgMembers(locals);\n const ctx = locals.ctx;\n if (ctx.actingOrgId !== orgId) {\n apiError(403, ApiErrorCode.FORBIDDEN, \"Acting org does not match the target org.\");\n }\n const body = await request.json().catch(() => null);\n const parsed = PatchSchema.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n const patch = parsed.data;\n const orgs = getOrganizationProvider();\n const [actorMember, target] = await Promise.all([\n orgs.getOrgMember(ctx, orgId, ctx.userId),\n orgs.getOrgMember(ctx, orgId, userId)\n ]);\n if (!target) apiError(404, ApiErrorCode.NOT_FOUND, \"Member not found in this organization.\");\n if (!actorMember)\n apiError(403, ApiErrorCode.FORBIDDEN, \"You are not a member of this organization.\");\n if (patch.role !== void 0 && patch.role !== target.role) {\n if (actorMember.role !== \"owner\") {\n apiError(403, ApiErrorCode.FORBIDDEN, \"Only the org owner can change roles.\");\n }\n if (target.role === \"owner\" && patch.role !== \"owner\") {\n const page = await orgs.listOrgMembers(ctx, orgId, { limit: 200 });\n const otherOwners = page.items.filter(\n (m) => m.role === \"owner\" && m.userId !== target.userId && !m.deletedAt\n );\n if (otherOwners.length === 0) {\n apiError(\n 409,\n ApiErrorCode.CONFLICT,\n \"Cannot demote the sole owner of this organization. Promote another member to owner first.\"\n );\n }\n }\n await orgs.updateOrgMemberRole(ctx, orgId, userId, patch.role);\n }\n if (patch.permissions !== void 0) {\n const effectiveRole = patch.role ?? target.role;\n const valid = effectiveRole === \"member\" ? new Set(MEMBER_ASSIGNABLE_PERMISSIONS) : new Set(ALL_ORG_PERMISSIONS);\n const invalid = patch.permissions.filter((p) => !valid.has(p));\n if (invalid.length > 0) {\n apiError(\n 400,\n ApiErrorCode.VALIDATION_FAILED,\n `Permissions [${invalid.join(\", \")}] cannot be assigned to a ${effectiveRole}.`\n );\n }\n try {\n await orgs.updateOrgMemberPermissions(ctx, orgId, userId, patch.permissions);\n } catch (err) {\n handleApiError(err, \"Failed to update permissions\");\n }\n }\n return new Response(null, { status: 204 });\n};\nexport {\n PATCH\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_server.ts.js-B2ycg2AE.js","sources":["../../../../../../../../../../.svelte-kit/output/server/entries/endpoints/api/orgs/_orgId_/members/_userId_/_server.ts.js"],"sourcesContent":["import { z } from \"zod\";\nimport { b as ALL_ORG_PERMISSIONS, l as OrgRoleSchema, M as MEMBER_ASSIGNABLE_PERMISSIONS } from \"../../../../../../../chunks/context.js\";\nimport { c as getOrganizationProvider } from \"../../../../../../../chunks/providers.server.js\";\nimport { c as requireManageOrgMembers } from \"../../../../../../../chunks/access.server.js\";\nimport { a as apiError, t as throwZodError, A as ApiErrorCode, h as handleApiError } from \"../../../../../../../chunks/api-errors.js\";\nconst PERMISSIONS_SCHEMA = z.array(\n z.enum(ALL_ORG_PERMISSIONS)\n);\nconst PatchSchema = z.object({\n role: OrgRoleSchema.optional(),\n permissions: PERMISSIONS_SCHEMA.optional()\n}).refine((b) => b.role !== void 0 || b.permissions !== void 0, {\n message: \"Provide at least one of role, permissions\"\n});\nconst PATCH = async ({ params, request, locals }) => {\n const { orgId, userId } = params;\n if (!orgId || !userId) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Missing org ID or user ID\");\n requireManageOrgMembers(locals);\n const ctx = locals.ctx;\n if (ctx.actingOrgId !== orgId) {\n apiError(403, ApiErrorCode.FORBIDDEN, \"Acting org does not match the target org.\");\n }\n const body = await request.json().catch(() => null);\n const parsed = PatchSchema.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n const patch = parsed.data;\n const orgs = getOrganizationProvider();\n const [actorMember, target] = await Promise.all([\n orgs.getOrgMember(ctx, orgId, ctx.userId),\n orgs.getOrgMember(ctx, orgId, userId)\n ]);\n if (!target) apiError(404, ApiErrorCode.NOT_FOUND, \"Member not found in this organization.\");\n if (!actorMember)\n apiError(403, ApiErrorCode.FORBIDDEN, \"You are not a member of this organization.\");\n if (patch.role !== void 0 && patch.role !== target.role) {\n if (actorMember.role !== \"owner\") {\n apiError(403, ApiErrorCode.FORBIDDEN, \"Only the org owner can change roles.\");\n }\n if (target.role === \"owner\" && patch.role !== \"owner\") {\n const page = await orgs.listOrgMembers(ctx, orgId, { limit: 200 });\n const otherOwners = page.items.filter(\n (m) => m.role === \"owner\" && m.userId !== target.userId && !m.deletedAt\n );\n if (otherOwners.length === 0) {\n apiError(\n 409,\n ApiErrorCode.CONFLICT,\n \"Cannot demote the sole owner of this organization. Promote another member to owner first.\"\n );\n }\n }\n await orgs.updateOrgMemberRole(ctx, orgId, userId, patch.role);\n }\n if (patch.permissions !== void 0) {\n const effectiveRole = patch.role ?? target.role;\n const valid = effectiveRole === \"member\" ? new Set(MEMBER_ASSIGNABLE_PERMISSIONS) : new Set(ALL_ORG_PERMISSIONS);\n const invalid = patch.permissions.filter((p) => !valid.has(p));\n if (invalid.length > 0) {\n apiError(\n 400,\n ApiErrorCode.VALIDATION_FAILED,\n `Permissions [${invalid.join(\", \")}] cannot be assigned to a ${effectiveRole}.`\n );\n }\n try {\n await orgs.updateOrgMemberPermissions(ctx, orgId, userId, patch.permissions);\n } catch (err) {\n handleApiError(err, \"Failed to update permissions\");\n }\n }\n return new Response(null, { status: 204 });\n};\nexport {\n PATCH\n};\n"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import { z } from 'zod';
2
- import { e as getProjectProvider, d as getOrganizationProvider } from '../../../../../chunks/providers.server.js-CvFPEaVE.js';
3
- import { p as requireCanManage, q as requireCanEditProjectSettings, w as withAdminBypass, s as canChangeVisibilityToPublic } from '../../../../../chunks/access.server.js-7luP5O4P.js';
4
- import { a as apiError, h as handleApiError, t as throwZodError, A as ApiErrorCode } from '../../../../../chunks/api-errors.js-DjgsTHzx.js';
2
+ import { e as getProjectProvider, d as getOrganizationProvider } from '../../../../../chunks/providers.server.js-Sbk117pY.js';
3
+ import { q as requireCanManage, s as requireCanEditProjectSettings, w as withAdminBypass, t as canChangeVisibilityToPublic } from '../../../../../chunks/access.server.js-x_KrjYJP.js';
4
+ import { a as apiError, h as handleApiError, t as throwZodError, A as ApiErrorCode } from '../../../../../chunks/api-errors.js-B1VX-zf8.js';
5
5
  import { s as slugify } from '../../../../../chunks/slug.js-BGuFQjqe.js';
6
- import { g as ProjectVisibilitySchema, v as validateProjectFlags } from '../../../../../chunks/context.js-CYsGbpHa.js';
6
+ import { l as ProjectVisibilitySchema, v as validateProjectFlags } from '../../../../../chunks/context.js-D8E0GFTw.js';
7
7
  import '../../../../../chunks/shared-server.js-DaWdgxVh.js';
8
8
  import 'node:url';
9
9
  import 'node:path';
@@ -13,7 +13,7 @@ import 'node:fs/promises';
13
13
  import '@supabase/supabase-js';
14
14
  import '@sveltejs/kit';
15
15
  import '@selvajs/compute/core';
16
- import '../../../../../chunks/utils4.js-CzzZn2eq.js';
16
+ import '../../../../../chunks/utils4.js-DvnSECfA.js';
17
17
 
18
18
  const UpdateProjectBody = z.object({
19
19
  name: z.string().min(1).max(128).trim(),
@@ -84,4 +84,4 @@ const DELETE = async ({ params, locals }) => {
84
84
  };
85
85
 
86
86
  export { DELETE, PATCH };
87
- //# sourceMappingURL=_server.ts.js-BDBuktWA.js.map
87
+ //# sourceMappingURL=_server.ts.js-CNP_RE3t.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts.js-BDBuktWA.js","sources":["../../../../../../../../.svelte-kit/output/server/entries/endpoints/api/projects/_id_/_server.ts.js"],"sourcesContent":["import { z } from \"zod\";\nimport { j as getProjectProvider, c as getOrganizationProvider } from \"../../../../../chunks/providers.server.js\";\nimport { p as requireCanManage, q as requireCanEditProjectSettings, w as withAdminBypass, s as canChangeVisibilityToPublic } from \"../../../../../chunks/access.server.js\";\nimport { a as apiError, h as handleApiError, t as throwZodError, A as ApiErrorCode } from \"../../../../../chunks/api-errors.js\";\nimport { s as slugify } from \"../../../../../chunks/slug.js\";\nimport { i as ProjectVisibilitySchema, v as validateProjectFlags } from \"../../../../../chunks/context.js\";\nconst UpdateProjectBody = z.object({\n name: z.string().min(1).max(128).trim(),\n description: z.string().max(2e3).nullish(),\n visibility: ProjectVisibilitySchema,\n autoJoinOnUpload: z.boolean()\n}).partial();\nconst PATCH = async ({ params, request, locals }) => {\n const { id } = params;\n if (!id) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Missing project ID\");\n const { ctx, project: existing } = await requireCanEditProjectSettings(locals, id);\n const body = await request.json().catch(() => null);\n const parsed = UpdateProjectBody.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n if (parsed.data.visibility !== void 0 && parsed.data.visibility === \"public\" && existing.visibility !== \"public\") {\n const orgMember = await getOrganizationProvider().getOrgMember(ctx, existing.orgId, ctx.userId);\n const passes = withAdminBypass(\n ctx.platformPermissions,\n () => canChangeVisibilityToPublic({ orgMember })\n );\n if (!passes) {\n apiError(403, ApiErrorCode.FORBIDDEN, \"Only org owners or admins can make a project public.\");\n }\n }\n const mergedVisibility = parsed.data.visibility ?? existing.visibility;\n const mergedAutoJoin = parsed.data.autoJoinOnUpload ?? existing.autoJoinOnUpload;\n const flagIssues = validateProjectFlags({\n visibility: mergedVisibility,\n autoJoinOnUpload: mergedAutoJoin\n });\n if (flagIssues.length > 0) {\n apiError(\n 400,\n ApiErrorCode.VALIDATION_FAILED,\n flagIssues.map((i) => `${i.path}: ${i.message}`).join(\"; \")\n );\n }\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 if (parsed.data.visibility !== void 0) patch.visibility = parsed.data.visibility;\n if (parsed.data.autoJoinOnUpload !== void 0) {\n patch.autoJoinOnUpload = parsed.data.autoJoinOnUpload;\n }\n try {\n await getProjectProvider().updateProject(ctx, id, patch);\n return new Response(null, { status: 204 });\n } catch (err) {\n handleApiError(err, \"Failed to update project\");\n }\n};\nconst DELETE = async ({ params, locals }) => {\n const { id } = params;\n if (!id) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Missing project ID\");\n await requireCanManage(locals, id);\n const ctx = locals.ctx;\n try {\n await getProjectProvider().deleteProject(ctx, id);\n return new Response(null, { status: 204 });\n } catch (err) {\n handleApiError(err, \"Failed to delete project\");\n }\n};\nexport {\n DELETE,\n PATCH\n};\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_server.ts.js-CNP_RE3t.js","sources":["../../../../../../../../.svelte-kit/output/server/entries/endpoints/api/projects/_id_/_server.ts.js"],"sourcesContent":["import { z } from \"zod\";\nimport { k as getProjectProvider, c as getOrganizationProvider } from \"../../../../../chunks/providers.server.js\";\nimport { q as requireCanManage, s as requireCanEditProjectSettings, w as withAdminBypass, t as canChangeVisibilityToPublic } from \"../../../../../chunks/access.server.js\";\nimport { a as apiError, h as handleApiError, t as throwZodError, A as ApiErrorCode } from \"../../../../../chunks/api-errors.js\";\nimport { s as slugify } from \"../../../../../chunks/slug.js\";\nimport { m as ProjectVisibilitySchema, v as validateProjectFlags } from \"../../../../../chunks/context.js\";\nconst UpdateProjectBody = z.object({\n name: z.string().min(1).max(128).trim(),\n description: z.string().max(2e3).nullish(),\n visibility: ProjectVisibilitySchema,\n autoJoinOnUpload: z.boolean()\n}).partial();\nconst PATCH = async ({ params, request, locals }) => {\n const { id } = params;\n if (!id) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Missing project ID\");\n const { ctx, project: existing } = await requireCanEditProjectSettings(locals, id);\n const body = await request.json().catch(() => null);\n const parsed = UpdateProjectBody.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n if (parsed.data.visibility !== void 0 && parsed.data.visibility === \"public\" && existing.visibility !== \"public\") {\n const orgMember = await getOrganizationProvider().getOrgMember(ctx, existing.orgId, ctx.userId);\n const passes = withAdminBypass(\n ctx.platformPermissions,\n () => canChangeVisibilityToPublic({ orgMember })\n );\n if (!passes) {\n apiError(403, ApiErrorCode.FORBIDDEN, \"Only org owners or admins can make a project public.\");\n }\n }\n const mergedVisibility = parsed.data.visibility ?? existing.visibility;\n const mergedAutoJoin = parsed.data.autoJoinOnUpload ?? existing.autoJoinOnUpload;\n const flagIssues = validateProjectFlags({\n visibility: mergedVisibility,\n autoJoinOnUpload: mergedAutoJoin\n });\n if (flagIssues.length > 0) {\n apiError(\n 400,\n ApiErrorCode.VALIDATION_FAILED,\n flagIssues.map((i) => `${i.path}: ${i.message}`).join(\"; \")\n );\n }\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 if (parsed.data.visibility !== void 0) patch.visibility = parsed.data.visibility;\n if (parsed.data.autoJoinOnUpload !== void 0) {\n patch.autoJoinOnUpload = parsed.data.autoJoinOnUpload;\n }\n try {\n await getProjectProvider().updateProject(ctx, id, patch);\n return new Response(null, { status: 204 });\n } catch (err) {\n handleApiError(err, \"Failed to update project\");\n }\n};\nconst DELETE = async ({ params, locals }) => {\n const { id } = params;\n if (!id) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Missing project ID\");\n await requireCanManage(locals, id);\n const ctx = locals.ctx;\n try {\n await getProjectProvider().deleteProject(ctx, id);\n return new Response(null, { status: 204 });\n } catch (err) {\n handleApiError(err, \"Failed to delete project\");\n }\n};\nexport {\n DELETE,\n PATCH\n};\n"],"names":[],"mappings":"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"}
@@ -1,9 +1,9 @@
1
1
  import { json } from '@sveltejs/kit';
2
2
  import { z } from 'zod';
3
- import { e as getProjectProvider } from '../../../../../../chunks/providers.server.js-CvFPEaVE.js';
4
- import { t as requireCanManageMembers, u as requireTargetIsOrgMember } from '../../../../../../chunks/access.server.js-7luP5O4P.js';
5
- import { a as apiError, h as handleApiError, t as throwZodError, A as ApiErrorCode } from '../../../../../../chunks/api-errors.js-DjgsTHzx.js';
6
- import { i as ProjectRoleSchema } from '../../../../../../chunks/context.js-CYsGbpHa.js';
3
+ import { e as getProjectProvider } from '../../../../../../chunks/providers.server.js-Sbk117pY.js';
4
+ import { u as requireCanManageMembers, v as requireTargetIsOrgMember } from '../../../../../../chunks/access.server.js-x_KrjYJP.js';
5
+ import { a as apiError, h as handleApiError, t as throwZodError, A as ApiErrorCode } from '../../../../../../chunks/api-errors.js-B1VX-zf8.js';
6
+ import { m as ProjectRoleSchema } from '../../../../../../chunks/context.js-D8E0GFTw.js';
7
7
  import '../../../../../../chunks/shared-server.js-DaWdgxVh.js';
8
8
  import 'node:url';
9
9
  import 'node:path';
@@ -12,7 +12,7 @@ import 'node:crypto';
12
12
  import 'node:fs/promises';
13
13
  import '@supabase/supabase-js';
14
14
  import '@selvajs/compute/core';
15
- import '../../../../../../chunks/utils4.js-CzzZn2eq.js';
15
+ import '../../../../../../chunks/utils4.js-DvnSECfA.js';
16
16
 
17
17
  const AddMemberSchema = z.object({
18
18
  userId: z.string().min(1, "userId is required"),
@@ -60,4 +60,4 @@ const POST = async ({ params, request, locals }) => {
60
60
  };
61
61
 
62
62
  export { GET, POST };
63
- //# sourceMappingURL=_server.ts.js-C6jztoDj.js.map
63
+ //# sourceMappingURL=_server.ts.js-Bn5xwjry.js.map