@selvajs/selva 4.5.0 → 4.5.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 (357) hide show
  1. package/build/client/_app/immutable/chunks/{DuHtWI31.js → BYBRW46Q.js} +1 -1
  2. package/build/client/_app/immutable/chunks/BYBRW46Q.js.br +0 -0
  3. package/build/client/_app/immutable/chunks/BYBRW46Q.js.gz +0 -0
  4. package/build/client/_app/immutable/chunks/{DsuMOTav.js → BfWZCn9D.js} +2 -2
  5. package/build/client/_app/immutable/chunks/BfWZCn9D.js.br +0 -0
  6. package/build/client/_app/immutable/chunks/BfWZCn9D.js.gz +0 -0
  7. package/build/client/_app/immutable/chunks/{DnURu9OT.js → BoelBenK.js} +1 -1
  8. package/build/client/_app/immutable/chunks/BoelBenK.js.br +0 -0
  9. package/build/client/_app/immutable/chunks/BoelBenK.js.gz +0 -0
  10. package/build/client/_app/immutable/chunks/{D_C_YIH8.js → BuvUOrz-.js} +1 -1
  11. package/build/client/_app/immutable/chunks/BuvUOrz-.js.br +0 -0
  12. package/build/client/_app/immutable/chunks/BuvUOrz-.js.gz +0 -0
  13. package/build/client/_app/immutable/chunks/{Dtx1M6QG.js → CQjJB6sZ.js} +1 -1
  14. package/build/client/_app/immutable/chunks/CQjJB6sZ.js.br +0 -0
  15. package/build/client/_app/immutable/chunks/CQjJB6sZ.js.gz +0 -0
  16. package/build/client/_app/immutable/chunks/{U_alzAUv.js → jJihnyaB.js} +1 -1
  17. package/build/client/_app/immutable/chunks/jJihnyaB.js.br +0 -0
  18. package/build/client/_app/immutable/chunks/jJihnyaB.js.gz +0 -0
  19. package/build/client/_app/immutable/entry/{app.DXOixdTQ.js → app.CUlU8Xgx.js} +2 -2
  20. package/build/client/_app/immutable/entry/app.CUlU8Xgx.js.br +0 -0
  21. package/build/client/_app/immutable/entry/app.CUlU8Xgx.js.gz +0 -0
  22. package/build/client/_app/immutable/entry/start.yXH7NuOH.js +1 -0
  23. package/build/client/_app/immutable/entry/start.yXH7NuOH.js.br +2 -0
  24. package/build/client/_app/immutable/entry/start.yXH7NuOH.js.gz +0 -0
  25. package/build/client/_app/immutable/nodes/{1.Cgpx1yHy.js → 1.ntriGXw3.js} +1 -1
  26. package/build/client/_app/immutable/nodes/1.ntriGXw3.js.br +0 -0
  27. package/build/client/_app/immutable/nodes/1.ntriGXw3.js.gz +0 -0
  28. package/build/client/_app/immutable/nodes/11.BBxGjNus.js +4 -0
  29. package/build/client/_app/immutable/nodes/11.BBxGjNus.js.br +0 -0
  30. package/build/client/_app/immutable/nodes/11.BBxGjNus.js.gz +0 -0
  31. package/build/client/_app/immutable/nodes/{13.ByWkldPP.js → 13.BOOSKgNQ.js} +1 -1
  32. package/build/client/_app/immutable/nodes/13.BOOSKgNQ.js.br +0 -0
  33. package/build/client/_app/immutable/nodes/13.BOOSKgNQ.js.gz +0 -0
  34. package/build/client/_app/immutable/nodes/{14.87fRSA-Y.js → 14.st6sThI5.js} +1 -1
  35. package/build/client/_app/immutable/nodes/14.st6sThI5.js.br +0 -0
  36. package/build/client/_app/immutable/nodes/14.st6sThI5.js.gz +0 -0
  37. package/build/client/_app/immutable/nodes/{16.DWG3CLUv.js → 16.fAXfHZXp.js} +1 -1
  38. package/build/client/_app/immutable/nodes/16.fAXfHZXp.js.br +0 -0
  39. package/build/client/_app/immutable/nodes/16.fAXfHZXp.js.gz +0 -0
  40. package/build/client/_app/immutable/nodes/{17.CgiETa37.js → 17.BL_btSTd.js} +1 -1
  41. package/build/client/_app/immutable/nodes/17.BL_btSTd.js.br +0 -0
  42. package/build/client/_app/immutable/nodes/17.BL_btSTd.js.gz +0 -0
  43. package/build/client/_app/immutable/nodes/{19.DO2ja5iW.js → 19.D4mkSjY9.js} +1 -1
  44. package/build/client/_app/immutable/nodes/19.D4mkSjY9.js.br +0 -0
  45. package/build/client/_app/immutable/nodes/19.D4mkSjY9.js.gz +0 -0
  46. package/build/client/_app/immutable/nodes/{2.DIAYMP4_.js → 2.CNkzjKpD.js} +1 -1
  47. package/build/client/_app/immutable/nodes/2.CNkzjKpD.js.br +0 -0
  48. package/build/client/_app/immutable/nodes/2.CNkzjKpD.js.gz +0 -0
  49. package/build/client/_app/immutable/nodes/{20.DYgQYcr-.js → 20.93bCfNGI.js} +188 -188
  50. package/build/client/_app/immutable/nodes/20.93bCfNGI.js.br +0 -0
  51. package/build/client/_app/immutable/nodes/20.93bCfNGI.js.gz +0 -0
  52. package/build/client/_app/immutable/nodes/{21.CTwryTPC.js → 21.ClzCdrlw.js} +1 -1
  53. package/build/client/_app/immutable/nodes/21.ClzCdrlw.js.br +0 -0
  54. package/build/client/_app/immutable/nodes/21.ClzCdrlw.js.gz +0 -0
  55. package/build/client/_app/immutable/nodes/{23.uUN6jlSq.js → 23.DJerRiZ2.js} +1 -1
  56. package/build/client/_app/immutable/nodes/23.DJerRiZ2.js.br +0 -0
  57. package/build/client/_app/immutable/nodes/23.DJerRiZ2.js.gz +0 -0
  58. package/build/client/_app/immutable/nodes/{24.cDDvPQLh.js → 24.DOHyLmBO.js} +1 -1
  59. package/build/client/_app/immutable/nodes/24.DOHyLmBO.js.br +0 -0
  60. package/build/client/_app/immutable/nodes/24.DOHyLmBO.js.gz +0 -0
  61. package/build/client/_app/immutable/nodes/{27.lHQ_8tDM.js → 27.CkzNBFns.js} +1 -1
  62. package/build/client/_app/immutable/nodes/27.CkzNBFns.js.br +0 -0
  63. package/build/client/_app/immutable/nodes/27.CkzNBFns.js.gz +0 -0
  64. package/build/client/_app/immutable/nodes/{28.DZO_WZjq.js → 28.BGNl-6WV.js} +1 -1
  65. package/build/client/_app/immutable/nodes/28.BGNl-6WV.js.br +0 -0
  66. package/build/client/_app/immutable/nodes/28.BGNl-6WV.js.gz +0 -0
  67. package/build/client/_app/immutable/nodes/{29.BBkvtbbm.js → 29.BF0JasWQ.js} +1 -1
  68. package/build/client/_app/immutable/nodes/29.BF0JasWQ.js.br +0 -0
  69. package/build/client/_app/immutable/nodes/29.BF0JasWQ.js.gz +0 -0
  70. package/build/client/_app/immutable/nodes/{3.Clu5JbAY.js → 3.BLNJLcvR.js} +1 -1
  71. package/build/client/_app/immutable/nodes/3.BLNJLcvR.js.br +0 -0
  72. package/build/client/_app/immutable/nodes/3.BLNJLcvR.js.gz +0 -0
  73. package/build/client/_app/immutable/nodes/{30.CunrYTKW.js → 30.C33KvKLy.js} +1 -1
  74. package/build/client/_app/immutable/nodes/30.C33KvKLy.js.br +0 -0
  75. package/build/client/_app/immutable/nodes/30.C33KvKLy.js.gz +0 -0
  76. package/build/client/_app/immutable/nodes/{5.CwEyn2eq.js → 5.DcViAFBY.js} +1 -1
  77. package/build/client/_app/immutable/nodes/5.DcViAFBY.js.br +1 -0
  78. package/build/client/_app/immutable/nodes/5.DcViAFBY.js.gz +0 -0
  79. package/build/client/_app/immutable/nodes/{6.Cybg-4zL.js → 6.Jpw_unqM.js} +1 -1
  80. package/build/client/_app/immutable/nodes/6.Jpw_unqM.js.br +0 -0
  81. package/build/client/_app/immutable/nodes/6.Jpw_unqM.js.gz +0 -0
  82. package/build/client/_app/immutable/nodes/{7.U-nwvAMy.js → 7.DI4lv1qr.js} +1 -1
  83. package/build/client/_app/immutable/nodes/7.DI4lv1qr.js.br +0 -0
  84. package/build/client/_app/immutable/nodes/7.DI4lv1qr.js.gz +0 -0
  85. package/build/client/_app/immutable/nodes/{8.Ds78IC3h.js → 8.BJeZ3Zka.js} +1 -1
  86. package/build/client/_app/immutable/nodes/8.BJeZ3Zka.js.br +0 -0
  87. package/build/client/_app/immutable/nodes/8.BJeZ3Zka.js.gz +0 -0
  88. package/build/client/_app/immutable/nodes/{9.B4Dh5-cJ.js → 9.BS42pKml.js} +1 -1
  89. package/build/client/_app/immutable/nodes/9.BS42pKml.js.br +0 -0
  90. package/build/client/_app/immutable/nodes/9.BS42pKml.js.gz +0 -0
  91. package/build/client/_app/version.json +1 -1
  92. package/build/client/_app/version.json.br +0 -0
  93. package/build/client/_app/version.json.gz +0 -0
  94. package/build/server/chunks/{1-B3qAsEuf.js → 1-CCtIB9oC.js} +2 -2
  95. package/build/server/chunks/{1-B3qAsEuf.js.map → 1-CCtIB9oC.js.map} +1 -1
  96. package/build/server/chunks/{10-YMBFU3cy.js → 10-Cj20BodR.js} +3 -3
  97. package/build/server/chunks/{10-YMBFU3cy.js.map → 10-Cj20BodR.js.map} +1 -1
  98. package/build/server/chunks/{11-DEH3nbKm.js → 11-C-goGrGx.js} +5 -5
  99. package/build/server/chunks/{11-DEH3nbKm.js.map → 11-C-goGrGx.js.map} +1 -1
  100. package/build/server/chunks/{13-D_djeolg.js → 13-DN-4EHom.js} +2 -2
  101. package/build/server/chunks/{13-D_djeolg.js.map → 13-DN-4EHom.js.map} +1 -1
  102. package/build/server/chunks/{14-B1A-3AIw.js → 14-j22gtg6q.js} +2 -2
  103. package/build/server/chunks/{14-B1A-3AIw.js.map → 14-j22gtg6q.js.map} +1 -1
  104. package/build/server/chunks/{15-KF7YQWQR.js → 15-CJJTHKeq.js} +2 -2
  105. package/build/server/chunks/{15-KF7YQWQR.js.map → 15-CJJTHKeq.js.map} +1 -1
  106. package/build/server/chunks/{16-27Ug2Gl4.js → 16-CPVRxJfK.js} +4 -4
  107. package/build/server/chunks/{16-27Ug2Gl4.js.map → 16-CPVRxJfK.js.map} +1 -1
  108. package/build/server/chunks/{17-B9EWzdfY.js → 17-CEs6NSIj.js} +2 -2
  109. package/build/server/chunks/{17-B9EWzdfY.js.map → 17-CEs6NSIj.js.map} +1 -1
  110. package/build/server/chunks/{19-DFpWVk9Q.js → 19-BK_uDFHq.js} +3 -3
  111. package/build/server/chunks/{19-DFpWVk9Q.js.map → 19-BK_uDFHq.js.map} +1 -1
  112. package/build/server/chunks/{2-psSdZh8h.js → 2-BBFUEdIk.js} +5 -5
  113. package/build/server/chunks/{2-psSdZh8h.js.map → 2-BBFUEdIk.js.map} +1 -1
  114. package/build/server/chunks/{20-B3RVyzHq.js → 20-TgvBHCqT.js} +7 -7
  115. package/build/server/chunks/{20-B3RVyzHq.js.map → 20-TgvBHCqT.js.map} +1 -1
  116. package/build/server/chunks/{21-DjJlF-s8.js → 21-CpVgaOZP.js} +2 -2
  117. package/build/server/chunks/{21-DjJlF-s8.js.map → 21-CpVgaOZP.js.map} +1 -1
  118. package/build/server/chunks/{23-Cv-iXsup.js → 23-DpZ-VAmj.js} +4 -4
  119. package/build/server/chunks/{23-Cv-iXsup.js.map → 23-DpZ-VAmj.js.map} +1 -1
  120. package/build/server/chunks/{24-C9N_eRrr.js → 24-IG8oF3LR.js} +2 -2
  121. package/build/server/chunks/{24-C9N_eRrr.js.map → 24-IG8oF3LR.js.map} +1 -1
  122. package/build/server/chunks/{27-HUwDEbMb.js → 27-BNuVmBlC.js} +2 -2
  123. package/build/server/chunks/{27-HUwDEbMb.js.map → 27-BNuVmBlC.js.map} +1 -1
  124. package/build/server/chunks/{28-l4BuMkhA.js → 28-O2gMewvR.js} +2 -2
  125. package/build/server/chunks/{28-l4BuMkhA.js.map → 28-O2gMewvR.js.map} +1 -1
  126. package/build/server/chunks/{29-DefkuWIf.js → 29-DeHI_lg6.js} +2 -2
  127. package/build/server/chunks/{29-DefkuWIf.js.map → 29-DeHI_lg6.js.map} +1 -1
  128. package/build/server/chunks/{3-FhxHeIS3.js → 3-_z4ofaYa.js} +2 -2
  129. package/build/server/chunks/{3-FhxHeIS3.js.map → 3-_z4ofaYa.js.map} +1 -1
  130. package/build/server/chunks/{30-BC7V7mS7.js → 30-B8zrsGBW.js} +2 -2
  131. package/build/server/chunks/{30-BC7V7mS7.js.map → 30-B8zrsGBW.js.map} +1 -1
  132. package/build/server/chunks/{5-BSabZ7B0.js → 5-jUoewty6.js} +3 -3
  133. package/build/server/chunks/{5-BSabZ7B0.js.map → 5-jUoewty6.js.map} +1 -1
  134. package/build/server/chunks/{6-BDAMjeLc.js → 6-Da49O-RB.js} +3 -3
  135. package/build/server/chunks/{6-BDAMjeLc.js.map → 6-Da49O-RB.js.map} +1 -1
  136. package/build/server/chunks/{7-C5uuYI8Y.js → 7-C4TEFQmD.js} +3 -3
  137. package/build/server/chunks/{7-C5uuYI8Y.js.map → 7-C4TEFQmD.js.map} +1 -1
  138. package/build/server/chunks/{8-Yg3bHJY8.js → 8-6Lblm8Bu.js} +2 -2
  139. package/build/server/chunks/{8-Yg3bHJY8.js.map → 8-6Lblm8Bu.js.map} +1 -1
  140. package/build/server/chunks/{9-BOWShy6C.js → 9-bV3k1piX.js} +3 -3
  141. package/build/server/chunks/{9-BOWShy6C.js.map → 9-bV3k1piX.js.map} +1 -1
  142. package/build/server/chunks/{AppHeader-vae2Doza.js → AppHeader-C76PLheq.js} +2 -2
  143. package/build/server/chunks/{AppHeader-vae2Doza.js.map → AppHeader-C76PLheq.js.map} +1 -1
  144. package/build/server/chunks/{UserChip-BPLEgzMp.js → UserChip-i0_3jHOb.js} +8 -3
  145. package/build/server/chunks/UserChip-i0_3jHOb.js.map +1 -0
  146. package/build/server/chunks/{_layout.svelte-D5GiNGr6.js → _layout.svelte-B-tWsdy4.js} +3 -3
  147. package/build/server/chunks/{_layout.svelte-D5GiNGr6.js.map → _layout.svelte-B-tWsdy4.js.map} +1 -1
  148. package/build/server/chunks/{_layout.svelte-_enyp5QE.js → _layout.svelte-B2RbgABg.js} +3 -3
  149. package/build/server/chunks/{_layout.svelte-_enyp5QE.js.map → _layout.svelte-B2RbgABg.js.map} +1 -1
  150. package/build/server/chunks/{_layout.svelte-aflz8r6I.js → _layout.svelte-DUeER8oS.js} +3 -3
  151. package/build/server/chunks/{_layout.svelte-aflz8r6I.js.map → _layout.svelte-DUeER8oS.js.map} +1 -1
  152. package/build/server/chunks/{_page.svelte-By_vYfbZ.js → _page.svelte-0KErHswo.js} +94 -4
  153. package/build/server/chunks/_page.svelte-0KErHswo.js.map +1 -0
  154. package/build/server/chunks/{_page.svelte-ZxjqrKH8.js → _page.svelte-BSHEM3UY.js} +3 -3
  155. package/build/server/chunks/{_page.svelte-ZxjqrKH8.js.map → _page.svelte-BSHEM3UY.js.map} +1 -1
  156. package/build/server/chunks/{_page.svelte-FDFRMnmB.js → _page.svelte-CDEfhXLp.js} +3 -3
  157. package/build/server/chunks/{_page.svelte-FDFRMnmB.js.map → _page.svelte-CDEfhXLp.js.map} +1 -1
  158. package/build/server/chunks/{_page.svelte-BDLD6pXj.js → _page.svelte-DDzV91b5.js} +124 -12
  159. package/build/server/chunks/{_page.svelte-BDLD6pXj.js.map → _page.svelte-DDzV91b5.js.map} +1 -1
  160. package/build/server/chunks/{_server.ts-DamGRKop.js → _server.ts-3LBSaM7L.js} +24 -12
  161. package/build/server/chunks/_server.ts-3LBSaM7L.js.map +1 -0
  162. package/build/server/chunks/{_server.ts-DRlwVsIx.js → _server.ts-B-un1ZTf.js} +3 -3
  163. package/build/server/chunks/{_server.ts-DRlwVsIx.js.map → _server.ts-B-un1ZTf.js.map} +1 -1
  164. package/build/server/chunks/{_server.ts-CF65FKS6.js → _server.ts-B6gtWjZd.js} +7 -7
  165. package/build/server/chunks/_server.ts-B6gtWjZd.js.map +1 -0
  166. package/build/server/chunks/{_server.ts-CMHRHdCD.js → _server.ts-B9Fdut8P.js} +14 -10
  167. package/build/server/chunks/_server.ts-B9Fdut8P.js.map +1 -0
  168. package/build/server/chunks/{_server.ts-kTCuqLDl.js → _server.ts-BJEEQ8tH.js} +15 -11
  169. package/build/server/chunks/_server.ts-BJEEQ8tH.js.map +1 -0
  170. package/build/server/chunks/{_server.ts-Ca_OJJFC.js → _server.ts-BKPaoj3Y.js} +14 -9
  171. package/build/server/chunks/_server.ts-BKPaoj3Y.js.map +1 -0
  172. package/build/server/chunks/{_server.ts-kbr9HYg5.js → _server.ts-BVpHuRup.js} +8 -8
  173. package/build/server/chunks/_server.ts-BVpHuRup.js.map +1 -0
  174. package/build/server/chunks/{_server.ts-DzA4EZf_.js → _server.ts-BplW_hNF.js} +7 -7
  175. package/build/server/chunks/_server.ts-BplW_hNF.js.map +1 -0
  176. package/build/server/chunks/{_server.ts-d6YTPmkY.js → _server.ts-Bv-G75Ze.js} +7 -7
  177. package/build/server/chunks/_server.ts-Bv-G75Ze.js.map +1 -0
  178. package/build/server/chunks/{_server.ts-DethCmgs.js → _server.ts-C5fD6gFa.js} +10 -10
  179. package/build/server/chunks/_server.ts-C5fD6gFa.js.map +1 -0
  180. package/build/server/chunks/{_server.ts-Cg6LtEov.js → _server.ts-C6rUlJpJ.js} +13 -6
  181. package/build/server/chunks/_server.ts-C6rUlJpJ.js.map +1 -0
  182. package/build/server/chunks/_server.ts-CLku3Kgz.js +66 -0
  183. package/build/server/chunks/_server.ts-CLku3Kgz.js.map +1 -0
  184. package/build/server/chunks/{_server.ts-AtxnIvMI.js → _server.ts-CNRwBoMm.js} +3 -3
  185. package/build/server/chunks/{_server.ts-AtxnIvMI.js.map → _server.ts-CNRwBoMm.js.map} +1 -1
  186. package/build/server/chunks/{_server.ts-BgVWq0qd.js → _server.ts-COuXITb8.js} +10 -10
  187. package/build/server/chunks/_server.ts-COuXITb8.js.map +1 -0
  188. package/build/server/chunks/{_server.ts-BZH3tqYX.js → _server.ts-CT1KXbVK.js} +34 -22
  189. package/build/server/chunks/_server.ts-CT1KXbVK.js.map +1 -0
  190. package/build/server/chunks/{_server.ts-Dz4bsmph.js → _server.ts-CTXCbdsb.js} +10 -9
  191. package/build/server/chunks/_server.ts-CTXCbdsb.js.map +1 -0
  192. package/build/server/chunks/{_server.ts-BQetLy9N.js → _server.ts-CXEl8kvu.js} +14 -13
  193. package/build/server/chunks/_server.ts-CXEl8kvu.js.map +1 -0
  194. package/build/server/chunks/{_server.ts-BmjNVAmP.js → _server.ts-CZ9lwb1J.js} +5 -5
  195. package/build/server/chunks/_server.ts-CZ9lwb1J.js.map +1 -0
  196. package/build/server/chunks/{_server.ts-Oi8Qzh0h.js → _server.ts-CaytsdFp.js} +7 -7
  197. package/build/server/chunks/_server.ts-CaytsdFp.js.map +1 -0
  198. package/build/server/chunks/{_server.ts-6F3Ly0cY.js → _server.ts-Cd6dVQ2J.js} +17 -9
  199. package/build/server/chunks/_server.ts-Cd6dVQ2J.js.map +1 -0
  200. package/build/server/chunks/{_server.ts-cHSphefi.js → _server.ts-CgRuMyJ9.js} +8 -8
  201. package/build/server/chunks/_server.ts-CgRuMyJ9.js.map +1 -0
  202. package/build/server/chunks/{_server.ts-PKbOblCf.js → _server.ts-CmCeYB9h.js} +25 -15
  203. package/build/server/chunks/_server.ts-CmCeYB9h.js.map +1 -0
  204. package/build/server/chunks/{_server.ts-13_Xvown.js → _server.ts-Codg_zX0.js} +8 -7
  205. package/build/server/chunks/_server.ts-Codg_zX0.js.map +1 -0
  206. package/build/server/chunks/{_server.ts-DW-Oh4l9.js → _server.ts-D-WjMJlD.js} +10 -6
  207. package/build/server/chunks/_server.ts-D-WjMJlD.js.map +1 -0
  208. package/build/server/chunks/{_server.ts-Bke_K04J.js → _server.ts-D4z7bYT1.js} +23 -10
  209. package/build/server/chunks/_server.ts-D4z7bYT1.js.map +1 -0
  210. package/build/server/chunks/{_server.ts-L9PpKy16.js → _server.ts-D7URpGBv.js} +13 -9
  211. package/build/server/chunks/_server.ts-D7URpGBv.js.map +1 -0
  212. package/build/server/chunks/{_server.ts-D2Qb9pui.js → _server.ts-DMwrtYEK.js} +13 -13
  213. package/build/server/chunks/_server.ts-DMwrtYEK.js.map +1 -0
  214. package/build/server/chunks/{_server.ts-B9uegfmw.js → _server.ts-DSVtVVVK.js} +16 -10
  215. package/build/server/chunks/_server.ts-DSVtVVVK.js.map +1 -0
  216. package/build/server/chunks/{_server.ts-Be15h83H.js → _server.ts-Df72lBuz.js} +23 -14
  217. package/build/server/chunks/_server.ts-Df72lBuz.js.map +1 -0
  218. package/build/server/chunks/{_server.ts-BlVwuKrl.js → _server.ts-DsXq-KLm.js} +25 -16
  219. package/build/server/chunks/_server.ts-DsXq-KLm.js.map +1 -0
  220. package/build/server/chunks/{_server.ts-DEBzt_W2.js → _server.ts-OQ5_sYi3.js} +30 -17
  221. package/build/server/chunks/_server.ts-OQ5_sYi3.js.map +1 -0
  222. package/build/server/chunks/{_server.ts-XAkApigL.js → _server.ts-UYOqhuxS.js} +11 -7
  223. package/build/server/chunks/_server.ts-UYOqhuxS.js.map +1 -0
  224. package/build/server/chunks/{_server.ts-DVOhTvBf.js → _server.ts-Xt4gRfAl.js} +15 -9
  225. package/build/server/chunks/_server.ts-Xt4gRfAl.js.map +1 -0
  226. package/build/server/chunks/{_server.ts-CpsGzKQC.js → _server.ts-ZtjukIa0.js} +15 -12
  227. package/build/server/chunks/_server.ts-ZtjukIa0.js.map +1 -0
  228. package/build/server/chunks/_server.ts-bR98vjY2.js +47 -0
  229. package/build/server/chunks/_server.ts-bR98vjY2.js.map +1 -0
  230. package/build/server/chunks/{_server.ts-Cg1WgIQn.js → _server.ts-deI69oUs.js} +7 -7
  231. package/build/server/chunks/_server.ts-deI69oUs.js.map +1 -0
  232. package/build/server/chunks/{_server.ts-bhjqtBoy.js → _server.ts-fxzTH5KH.js} +6 -6
  233. package/build/server/chunks/_server.ts-fxzTH5KH.js.map +1 -0
  234. package/build/server/chunks/{_server.ts-DvBucq0r.js → _server.ts-mFb6RwID.js} +6 -6
  235. package/build/server/chunks/_server.ts-mFb6RwID.js.map +1 -0
  236. package/build/server/chunks/{_server.ts-Cc-srcRk.js → _server.ts-sdl64bpd.js} +10 -7
  237. package/build/server/chunks/_server.ts-sdl64bpd.js.map +1 -0
  238. package/build/server/chunks/{access.server-CAPd1-c2.js → access.server-Rd56k7vs.js} +2 -2
  239. package/build/server/chunks/{access.server-CAPd1-c2.js.map → access.server-Rd56k7vs.js.map} +1 -1
  240. package/build/server/chunks/{api-errors-BhVEeWTV.js → api-errors-BrqxD-El.js} +52 -13
  241. package/build/server/chunks/api-errors-BrqxD-El.js.map +1 -0
  242. package/build/server/chunks/{computeLimits-DPO6NbLd.js → computeLimits-DnJ77wR9.js} +3 -3
  243. package/build/server/chunks/computeLimits-DnJ77wR9.js.map +1 -0
  244. package/build/server/chunks/{hooks.server-BEbVZKxO.js → hooks.server-BZKLAgww.js} +7 -6
  245. package/build/server/chunks/hooks.server-BZKLAgww.js.map +1 -0
  246. package/build/server/chunks/{package-MTlbeZ-4.js → package-K5EkWw87.js} +2 -2
  247. package/build/server/chunks/{package-MTlbeZ-4.js.map → package-K5EkWw87.js.map} +1 -1
  248. package/build/server/index.js +2 -2
  249. package/build/server/index.js.map +1 -1
  250. package/build/server/manifest.js +70 -63
  251. package/build/server/manifest.js.map +1 -1
  252. package/package.json +7 -7
  253. package/templates/.env.example +14 -5
  254. package/build/client/_app/immutable/chunks/D_C_YIH8.js.br +0 -0
  255. package/build/client/_app/immutable/chunks/D_C_YIH8.js.gz +0 -0
  256. package/build/client/_app/immutable/chunks/DnURu9OT.js.br +0 -0
  257. package/build/client/_app/immutable/chunks/DnURu9OT.js.gz +0 -0
  258. package/build/client/_app/immutable/chunks/DsuMOTav.js.br +0 -0
  259. package/build/client/_app/immutable/chunks/DsuMOTav.js.gz +0 -0
  260. package/build/client/_app/immutable/chunks/Dtx1M6QG.js.br +0 -0
  261. package/build/client/_app/immutable/chunks/Dtx1M6QG.js.gz +0 -0
  262. package/build/client/_app/immutable/chunks/DuHtWI31.js.br +0 -0
  263. package/build/client/_app/immutable/chunks/DuHtWI31.js.gz +0 -0
  264. package/build/client/_app/immutable/chunks/U_alzAUv.js.br +0 -0
  265. package/build/client/_app/immutable/chunks/U_alzAUv.js.gz +0 -0
  266. package/build/client/_app/immutable/entry/app.DXOixdTQ.js.br +0 -0
  267. package/build/client/_app/immutable/entry/app.DXOixdTQ.js.gz +0 -0
  268. package/build/client/_app/immutable/entry/start.lHsRDqJ_.js +0 -1
  269. package/build/client/_app/immutable/entry/start.lHsRDqJ_.js.br +0 -2
  270. package/build/client/_app/immutable/entry/start.lHsRDqJ_.js.gz +0 -0
  271. package/build/client/_app/immutable/nodes/1.Cgpx1yHy.js.br +0 -0
  272. package/build/client/_app/immutable/nodes/1.Cgpx1yHy.js.gz +0 -0
  273. package/build/client/_app/immutable/nodes/11.BIaqG9xz.js +0 -2
  274. package/build/client/_app/immutable/nodes/11.BIaqG9xz.js.br +0 -0
  275. package/build/client/_app/immutable/nodes/11.BIaqG9xz.js.gz +0 -0
  276. package/build/client/_app/immutable/nodes/13.ByWkldPP.js.br +0 -0
  277. package/build/client/_app/immutable/nodes/13.ByWkldPP.js.gz +0 -0
  278. package/build/client/_app/immutable/nodes/14.87fRSA-Y.js.br +0 -0
  279. package/build/client/_app/immutable/nodes/14.87fRSA-Y.js.gz +0 -0
  280. package/build/client/_app/immutable/nodes/16.DWG3CLUv.js.br +0 -0
  281. package/build/client/_app/immutable/nodes/16.DWG3CLUv.js.gz +0 -0
  282. package/build/client/_app/immutable/nodes/17.CgiETa37.js.br +0 -0
  283. package/build/client/_app/immutable/nodes/17.CgiETa37.js.gz +0 -0
  284. package/build/client/_app/immutable/nodes/19.DO2ja5iW.js.br +0 -0
  285. package/build/client/_app/immutable/nodes/19.DO2ja5iW.js.gz +0 -0
  286. package/build/client/_app/immutable/nodes/2.DIAYMP4_.js.br +0 -0
  287. package/build/client/_app/immutable/nodes/2.DIAYMP4_.js.gz +0 -0
  288. package/build/client/_app/immutable/nodes/20.DYgQYcr-.js.br +0 -0
  289. package/build/client/_app/immutable/nodes/20.DYgQYcr-.js.gz +0 -0
  290. package/build/client/_app/immutable/nodes/21.CTwryTPC.js.br +0 -0
  291. package/build/client/_app/immutable/nodes/21.CTwryTPC.js.gz +0 -0
  292. package/build/client/_app/immutable/nodes/23.uUN6jlSq.js.br +0 -0
  293. package/build/client/_app/immutable/nodes/23.uUN6jlSq.js.gz +0 -0
  294. package/build/client/_app/immutable/nodes/24.cDDvPQLh.js.br +0 -0
  295. package/build/client/_app/immutable/nodes/24.cDDvPQLh.js.gz +0 -0
  296. package/build/client/_app/immutable/nodes/27.lHQ_8tDM.js.br +0 -0
  297. package/build/client/_app/immutable/nodes/27.lHQ_8tDM.js.gz +0 -0
  298. package/build/client/_app/immutable/nodes/28.DZO_WZjq.js.br +0 -0
  299. package/build/client/_app/immutable/nodes/28.DZO_WZjq.js.gz +0 -0
  300. package/build/client/_app/immutable/nodes/29.BBkvtbbm.js.br +0 -0
  301. package/build/client/_app/immutable/nodes/29.BBkvtbbm.js.gz +0 -0
  302. package/build/client/_app/immutable/nodes/3.Clu5JbAY.js.br +0 -0
  303. package/build/client/_app/immutable/nodes/3.Clu5JbAY.js.gz +0 -0
  304. package/build/client/_app/immutable/nodes/30.CunrYTKW.js.br +0 -0
  305. package/build/client/_app/immutable/nodes/30.CunrYTKW.js.gz +0 -0
  306. package/build/client/_app/immutable/nodes/5.CwEyn2eq.js.br +0 -1
  307. package/build/client/_app/immutable/nodes/5.CwEyn2eq.js.gz +0 -0
  308. package/build/client/_app/immutable/nodes/6.Cybg-4zL.js.br +0 -0
  309. package/build/client/_app/immutable/nodes/6.Cybg-4zL.js.gz +0 -0
  310. package/build/client/_app/immutable/nodes/7.U-nwvAMy.js.br +0 -0
  311. package/build/client/_app/immutable/nodes/7.U-nwvAMy.js.gz +0 -0
  312. package/build/client/_app/immutable/nodes/8.Ds78IC3h.js.br +0 -0
  313. package/build/client/_app/immutable/nodes/8.Ds78IC3h.js.gz +0 -0
  314. package/build/client/_app/immutable/nodes/9.B4Dh5-cJ.js.br +0 -0
  315. package/build/client/_app/immutable/nodes/9.B4Dh5-cJ.js.gz +0 -0
  316. package/build/server/chunks/UserChip-BPLEgzMp.js.map +0 -1
  317. package/build/server/chunks/_page.svelte-By_vYfbZ.js.map +0 -1
  318. package/build/server/chunks/_server.ts-13_Xvown.js.map +0 -1
  319. package/build/server/chunks/_server.ts-6F3Ly0cY.js.map +0 -1
  320. package/build/server/chunks/_server.ts-B9uegfmw.js.map +0 -1
  321. package/build/server/chunks/_server.ts-BQetLy9N.js.map +0 -1
  322. package/build/server/chunks/_server.ts-BZH3tqYX.js.map +0 -1
  323. package/build/server/chunks/_server.ts-Be15h83H.js.map +0 -1
  324. package/build/server/chunks/_server.ts-BgVWq0qd.js.map +0 -1
  325. package/build/server/chunks/_server.ts-Bke_K04J.js.map +0 -1
  326. package/build/server/chunks/_server.ts-BlVwuKrl.js.map +0 -1
  327. package/build/server/chunks/_server.ts-BmjNVAmP.js.map +0 -1
  328. package/build/server/chunks/_server.ts-BwMyXo0z.js +0 -65
  329. package/build/server/chunks/_server.ts-BwMyXo0z.js.map +0 -1
  330. package/build/server/chunks/_server.ts-CF65FKS6.js.map +0 -1
  331. package/build/server/chunks/_server.ts-CMHRHdCD.js.map +0 -1
  332. package/build/server/chunks/_server.ts-Ca_OJJFC.js.map +0 -1
  333. package/build/server/chunks/_server.ts-Cc-srcRk.js.map +0 -1
  334. package/build/server/chunks/_server.ts-Cg1WgIQn.js.map +0 -1
  335. package/build/server/chunks/_server.ts-Cg6LtEov.js.map +0 -1
  336. package/build/server/chunks/_server.ts-CpsGzKQC.js.map +0 -1
  337. package/build/server/chunks/_server.ts-D2Qb9pui.js.map +0 -1
  338. package/build/server/chunks/_server.ts-DEBzt_W2.js.map +0 -1
  339. package/build/server/chunks/_server.ts-DVOhTvBf.js.map +0 -1
  340. package/build/server/chunks/_server.ts-DW-Oh4l9.js.map +0 -1
  341. package/build/server/chunks/_server.ts-DamGRKop.js.map +0 -1
  342. package/build/server/chunks/_server.ts-DethCmgs.js.map +0 -1
  343. package/build/server/chunks/_server.ts-DvBucq0r.js.map +0 -1
  344. package/build/server/chunks/_server.ts-Dz4bsmph.js.map +0 -1
  345. package/build/server/chunks/_server.ts-DzA4EZf_.js.map +0 -1
  346. package/build/server/chunks/_server.ts-L9PpKy16.js.map +0 -1
  347. package/build/server/chunks/_server.ts-Oi8Qzh0h.js.map +0 -1
  348. package/build/server/chunks/_server.ts-PKbOblCf.js.map +0 -1
  349. package/build/server/chunks/_server.ts-XAkApigL.js.map +0 -1
  350. package/build/server/chunks/_server.ts-bhjqtBoy.js.map +0 -1
  351. package/build/server/chunks/_server.ts-cHSphefi.js.map +0 -1
  352. package/build/server/chunks/_server.ts-d6YTPmkY.js.map +0 -1
  353. package/build/server/chunks/_server.ts-kTCuqLDl.js.map +0 -1
  354. package/build/server/chunks/_server.ts-kbr9HYg5.js.map +0 -1
  355. package/build/server/chunks/api-errors-BhVEeWTV.js.map +0 -1
  356. package/build/server/chunks/computeLimits-DPO6NbLd.js.map +0 -1
  357. package/build/server/chunks/hooks.server-BEbVZKxO.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"_server.ts-DamGRKop.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/definitions/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { randomUUID } from \"node:crypto\";\nimport { n as getProjectProvider, i as getDefinitionService } from \"../../../../chunks/providers.server.js\";\nimport { r as requireCanCreateDefinition } from \"../../../../chunks/access.server.js\";\nimport { t as throwZodError, r as resolveServerForOrg, f as fetchSchemaFromCompute, h as handleApiError } from \"../../../../chunks/api-errors.js\";\nimport { G as GH_EXTENSIONS } from \"../../../../chunks/types.js\";\nimport { C as CreateDefinitionInputSchema } from \"../../../../chunks/context.js\";\nimport { M as MAX_GH_FILE_SIZE, b 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 throw error(400, \"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 throw error(400, `File type not allowed. Allowed: ${GH_EXTENSIONS.join(\", \")}`);\n }\n if (file.size > MAX_GH_FILE_SIZE) {\n throw error(400, `File too large. Max size: ${MAX_GH_FILE_SIZE / (1024 * 1024)} MB`);\n }\n const imageFile = formData.get(\"image\");\n if (imageFile instanceof File && imageFile.size > MAX_IMAGE_FILE_SIZE) {\n throw error(400, `Image too large. Max size: ${MAX_IMAGE_FILE_SIZE / (1024 * 1024)} MB`);\n }\n let projectId = formData.get(\"projectId\");\n if (typeof projectId !== \"string\" || !projectId) {\n if (!ctx.actingOrgId) throw error(400, \"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) throw error(500, \"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({ success: true, guid, version, coverImage });\n } catch (err) {\n handleApiError(err, \"Failed to create definition\");\n }\n};\nexport {\n POST\n};\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"_server.ts-DethCmgs.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/api/projects/_id_/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { z } from \"zod\";\nimport { n as getProjectProvider } from \"../../../../../../chunks/providers.server.js\";\nimport { u as requireInstanceAdmin } from \"../../../../../../chunks/access.server.js\";\nimport { h as handleApiError, t as throwZodError } from \"../../../../../../chunks/api-errors.js\";\nimport { s as slugify } from \"../../../../../../chunks/slug.js\";\nimport { S as SYSTEM_CONTEXT } from \"../../../../../../chunks/context.js\";\nconst UpdatePlatformProjectBody = z.object({\n name: z.string().min(1).max(128).trim(),\n description: z.string().max(2e3).nullish()\n}).partial();\nasync function loadPlatformProjectOr404(id) {\n const project = await getProjectProvider().getProject(SYSTEM_CONTEXT, id);\n if (!project || project.visibility !== \"platform\") {\n throw error(404, \"Platform project not found\");\n }\n return project;\n}\nconst GET = async ({ params, locals }) => {\n requireInstanceAdmin(locals);\n const { id } = params;\n if (!id) throw error(400, \"Missing project ID\");\n try {\n const project = await loadPlatformProjectOr404(id);\n return json(project);\n } catch (err) {\n handleApiError(err, \"Failed to load platform project\");\n }\n};\nconst PATCH = async ({ params, request, locals }) => {\n requireInstanceAdmin(locals);\n const { id } = params;\n if (!id) throw error(400, \"Missing project ID\");\n const body = await request.json().catch(() => null);\n const parsed = UpdatePlatformProjectBody.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n try {\n await loadPlatformProjectOr404(id);\n const patch = {};\n if (parsed.data.name !== void 0) {\n patch.name = parsed.data.name;\n patch.slug = slugify(parsed.data.name);\n }\n if (parsed.data.description !== void 0) {\n patch.description = parsed.data.description ?? void 0;\n }\n await getProjectProvider().updateProject(SYSTEM_CONTEXT, id, patch);\n return json({ success: true });\n } catch (err) {\n handleApiError(err, \"Failed to update platform project\");\n }\n};\nconst DELETE = async ({ params, locals }) => {\n requireInstanceAdmin(locals);\n const { id } = params;\n if (!id) throw error(400, \"Missing project ID\");\n try {\n await loadPlatformProjectOr404(id);\n await getProjectProvider().deleteProject(SYSTEM_CONTEXT, id);\n return json({ success: true });\n } catch (err) {\n handleApiError(err, \"Failed to delete platform project\");\n }\n};\nexport {\n DELETE,\n GET,\n PATCH\n};\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"_server.ts-DvBucq0r.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/projects/_id_/reclaim/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { n as getProjectProvider } from \"../../../../../../chunks/providers.server.js\";\nimport { o as requireCanReclaim } from \"../../../../../../chunks/access.server.js\";\nimport { h as handleApiError } from \"../../../../../../chunks/api-errors.js\";\nconst POST = async ({ params, locals }) => {\n const { id } = params;\n if (!id) throw error(400, \"Missing project ID\");\n const { user, ctx } = await requireCanReclaim(locals, id);\n const now = (/* @__PURE__ */ new Date()).toISOString();\n const member = {\n projectId: id,\n userId: user.id,\n role: \"owner\",\n joinedAt: now,\n updatedAt: now,\n updatedBy: ctx.userId || user.id,\n deletedAt: null\n };\n try {\n await getProjectProvider().addProjectMember(ctx, member);\n return json({ success: true, member });\n } catch (err) {\n handleApiError(err, \"Failed to reclaim project\");\n }\n};\nexport {\n POST\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAIK,MAAC,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK;AAC3C,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM;AACvB,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,oBAAoB,CAAC;AACjD,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,MAAM,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC;AAC3D,EAAE,MAAM,GAAG,GAAG,iBAAiB,IAAI,IAAI,EAAE,EAAE,WAAW,EAAE;AACxD,EAAE,MAAM,MAAM,GAAG;AACjB,IAAI,SAAS,EAAE,EAAE;AACjB,IAAI,MAAM,EAAE,IAAI,CAAC,EAAE;AACnB,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,QAAQ,EAAE,GAAG;AACjB,IAAI,SAAS,EAAE,GAAG;AAClB,IAAI,SAAS,EAAE,GAAG,CAAC,MAAM,IAAI,IAAI,CAAC,EAAE;AACpC,IAAI,SAAS,EAAE;AACf,GAAG;AACH,EAAE,IAAI;AACN,IAAI,MAAM,kBAAkB,EAAE,CAAC,gBAAgB,CAAC,GAAG,EAAE,MAAM,CAAC;AAC5D,IAAI,OAAO,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AAC1C,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,2BAA2B,CAAC;AACpD,EAAE;AACF;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"_server.ts-Dz4bsmph.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/compute/schema/_server.ts.js"],"sourcesContent":["import { r as resolveServerForOrg, C as ComputeServerUnconfiguredError } from \"../../../../../chunks/api-errors.js\";\nimport { r as requireCanCreateDefinition } from \"../../../../../chunks/access.server.js\";\nimport { error } from \"@sveltejs/kit\";\nimport { camelcaseKeys } from \"@selvajs/compute/core\";\nconst POST = async ({ request, locals, url }) => {\n const projectId = url.searchParams.get(\"projectId\");\n if (!projectId) {\n throw error(400, \"projectId query parameter is required\");\n }\n const { project } = await requireCanCreateDefinition(locals, projectId);\n const computeServerId = url.searchParams.get(\"computeServerId\");\n let server;\n try {\n server = await resolveServerForOrg(locals.ctx, project.orgId, {\n definitionPin: computeServerId\n });\n } catch (err) {\n if (err instanceof ComputeServerUnconfiguredError) throw error(503, err.message);\n throw err;\n }\n const formData = await request.formData();\n const schemaUrl = new URL(\"/grasshopper/schema\", server.serverUrl).toString();\n const headers = {};\n if (server.apiKey) {\n headers[\"RhinoComputeKey\"] = server.apiKey;\n }\n let response;\n try {\n response = await fetch(schemaUrl, { method: \"POST\", headers, body: formData });\n } catch {\n throw error(503, \"Compute server is unreachable\");\n }\n if (!response.ok) {\n throw error(response.status, \"Compute server error\");\n }\n const raw = await response.json();\n const results = camelcaseKeys(Array.isArray(raw) ? raw : [raw]);\n const schemas = results.flatMap((r) => r.schemas ?? []);\n if (schemas.length === 0) {\n throw error(422, \"No schemas found in definition\");\n }\n return new Response(JSON.stringify(schemas), {\n headers: { \"Content-Type\": \"application/json\" }\n });\n};\nexport {\n POST\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAIK,MAAC,IAAI,GAAG,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK;AACjD,EAAE,MAAM,SAAS,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC;AACrD,EAAE,IAAI,CAAC,SAAS,EAAE;AAClB,IAAI,MAAM,KAAK,CAAC,GAAG,EAAE,uCAAuC,CAAC;AAC7D,EAAE;AACF,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,0BAA0B,CAAC,MAAM,EAAE,SAAS,CAAC;AACzE,EAAE,MAAM,eAAe,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,iBAAiB,CAAC;AACjE,EAAE,IAAI,MAAM;AACZ,EAAE,IAAI;AACN,IAAI,MAAM,GAAG,MAAM,mBAAmB,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,EAAE;AAClE,MAAM,aAAa,EAAE;AACrB,KAAK,CAAC;AACN,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,IAAI,GAAG,YAAY,8BAA8B,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,OAAO,CAAC;AACpF,IAAI,MAAM,GAAG;AACb,EAAE;AACF,EAAE,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,QAAQ,EAAE;AAC3C,EAAE,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,qBAAqB,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE;AAC/E,EAAE,MAAM,OAAO,GAAG,EAAE;AACpB,EAAE,IAAI,MAAM,CAAC,MAAM,EAAE;AACrB,IAAI,OAAO,CAAC,iBAAiB,CAAC,GAAG,MAAM,CAAC,MAAM;AAC9C,EAAE;AACF,EAAE,IAAI,QAAQ;AACd,EAAE,IAAI;AACN,IAAI,QAAQ,GAAG,MAAM,KAAK,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AAClF,EAAE,CAAC,CAAC,MAAM;AACV,IAAI,MAAM,KAAK,CAAC,GAAG,EAAE,+BAA+B,CAAC;AACrD,EAAE;AACF,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;AACpB,IAAI,MAAM,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,sBAAsB,CAAC;AACxD,EAAE;AACF,EAAE,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE;AACnC,EAAE,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;AACjE,EAAE,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC;AACzD,EAAE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;AAC5B,IAAI,MAAM,KAAK,CAAC,GAAG,EAAE,gCAAgC,CAAC;AACtD,EAAE;AACF,EAAE,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE;AAC/C,IAAI,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB;AACjD,GAAG,CAAC;AACJ;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"_server.ts-DzA4EZf_.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/invites/_id_/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { j as getInviteStore } from \"../../../../../chunks/providers.server.js\";\nimport { y as requireManageOrgMembers } from \"../../../../../chunks/access.server.js\";\nimport { 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) throw error(400, \"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) throw error(404, \"Invite not found\");\n await store.revoke(ctx, id);\n return json({ success: true });\n } catch (err) {\n handleApiError(err, \"Failed to revoke invite\");\n }\n};\nexport {\n DELETE\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAIK,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,MAAM,KAAK,CAAC,GAAG,EAAE,wBAAwB,CAAC;AAClE,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,MAAM,KAAK,CAAC,GAAG,EAAE,kBAAkB,CAAC;AACpD,IAAI,MAAM,KAAK,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC;AAC/B,IAAI,OAAO,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAClC,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,yBAAyB,CAAC;AAClD,EAAE;AACF;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"_server.ts-L9PpKy16.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/definitions/_guid_/image/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { i as getDefinitionService } from \"../../../../../../chunks/providers.server.js\";\nimport { t as requireEditableDefinition } from \"../../../../../../chunks/access.server.js\";\nimport { h as handleApiError } from \"../../../../../../chunks/api-errors.js\";\nimport { G as GuidSchema } from \"../../../../../../chunks/context.js\";\nimport { b as MAX_IMAGE_FILE_SIZE } from \"../../../../../../chunks/computeLimits.js\";\nconst POST = async ({ params, request, locals }) => {\n const guidParsed = GuidSchema.safeParse(params.guid);\n if (!guidParsed.success) throw error(400, \"Invalid GUID\");\n const guid = guidParsed.data;\n const { ctx } = await requireEditableDefinition(locals, guid);\n const formData = await request.formData();\n const file = formData.get(\"image\");\n if (!(file instanceof File) || file.size === 0) {\n throw error(400, \"Image file is required\");\n }\n if (file.size > MAX_IMAGE_FILE_SIZE) {\n throw error(400, `Image too large. Max size: ${MAX_IMAGE_FILE_SIZE / (1024 * 1024)} MB`);\n }\n try {\n const imageData = new Uint8Array(await file.arrayBuffer());\n const coverImage = await getDefinitionService().saveCoverImage(ctx, guid, imageData);\n return json({ success: true, coverImage });\n } catch (err) {\n handleApiError(err, \"Failed to upload image\");\n }\n};\nexport {\n POST\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAMK,MAAC,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK;AACpD,EAAE,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;AACtD,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,cAAc,CAAC;AAC3D,EAAE,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI;AAC9B,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,yBAAyB,CAAC,MAAM,EAAE,IAAI,CAAC;AAC/D,EAAE,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,QAAQ,EAAE;AAC3C,EAAE,MAAM,IAAI,GAAG,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;AACpC,EAAE,IAAI,EAAE,IAAI,YAAY,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,KAAK,CAAC,EAAE;AAClD,IAAI,MAAM,KAAK,CAAC,GAAG,EAAE,wBAAwB,CAAC;AAC9C,EAAE;AACF,EAAE,IAAI,IAAI,CAAC,IAAI,GAAG,mBAAmB,EAAE;AACvC,IAAI,MAAM,KAAK,CAAC,GAAG,EAAE,CAAC,2BAA2B,EAAE,mBAAmB,IAAI,IAAI,GAAG,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC;AAC5F,EAAE;AACF,EAAE,IAAI;AACN,IAAI,MAAM,SAAS,GAAG,IAAI,UAAU,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;AAC9D,IAAI,MAAM,UAAU,GAAG,MAAM,oBAAoB,EAAE,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,EAAE,SAAS,CAAC;AACxF,IAAI,OAAO,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,CAAC;AAC9C,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,wBAAwB,CAAC;AACjD,EAAE;AACF;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"_server.ts-Oi8Qzh0h.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/definitions/_guid_/versions/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { h as getDefinitionMeta, M as MAX_PAGE_LIMIT } from \"../../../../../../chunks/providers.server.js\";\nimport { h as handleApiError } from \"../../../../../../chunks/api-errors.js\";\nimport { s as requireCanViewProject } from \"../../../../../../chunks/access.server.js\";\nimport { G as GuidSchema } from \"../../../../../../chunks/context.js\";\nconst GET = async ({ params, locals, url }) => {\n const guidParsed = GuidSchema.safeParse(params.guid);\n if (!guidParsed.success) throw error(400, \"Invalid or missing GUID\");\n if (!locals.ctx) throw error(401, \"Unauthorized\");\n const rawLimit = Number(url.searchParams.get(\"limit\") ?? 50);\n const limit = Number.isFinite(rawLimit) ? Math.min(Math.max(rawLimit, 1), MAX_PAGE_LIMIT) : 50;\n const cursor = url.searchParams.get(\"cursor\") ?? void 0;\n try {\n const def = await getDefinitionMeta().get(locals.ctx, guidParsed.data);\n if (!def) throw error(404, \"Definition not found\");\n await requireCanViewProject(locals, def.projectId);\n const page = await getDefinitionMeta().listVersions(locals.ctx, guidParsed.data, {\n limit,\n cursor\n });\n return json({\n versions: page.items,\n nextCursor: page.nextCursor,\n liveVersionId: def.liveVersionId,\n draftVersionId: def.draftVersionId\n });\n } catch (err) {\n handleApiError(err, \"Failed to list versions\");\n }\n};\nexport {\n GET\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAKK,MAAC,GAAG,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK;AAC/C,EAAE,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;AACtD,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,yBAAyB,CAAC;AACtE,EAAE,IAAI,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,cAAc,CAAC;AACnD,EAAE,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;AAC9D,EAAE,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,EAAE,cAAc,CAAC,GAAG,EAAE;AAChG,EAAE,MAAM,MAAM,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,MAAM;AACzD,EAAE,IAAI;AACN,IAAI,MAAM,GAAG,GAAG,MAAM,iBAAiB,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,IAAI,CAAC;AAC1E,IAAI,IAAI,CAAC,GAAG,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,sBAAsB,CAAC;AACtD,IAAI,MAAM,qBAAqB,CAAC,MAAM,EAAE,GAAG,CAAC,SAAS,CAAC;AACtD,IAAI,MAAM,IAAI,GAAG,MAAM,iBAAiB,EAAE,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,IAAI,EAAE;AACrF,MAAM,KAAK;AACX,MAAM;AACN,KAAK,CAAC;AACN,IAAI,OAAO,IAAI,CAAC;AAChB,MAAM,QAAQ,EAAE,IAAI,CAAC,KAAK;AAC1B,MAAM,UAAU,EAAE,IAAI,CAAC,UAAU;AACjC,MAAM,aAAa,EAAE,GAAG,CAAC,aAAa;AACtC,MAAM,cAAc,EAAE,GAAG,CAAC;AAC1B,KAAK,CAAC;AACN,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,yBAAyB,CAAC;AAClD,EAAE;AACF;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"_server.ts-PKbOblCf.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/api/users/_id_/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { z } from \"zod\";\nimport { l as getPermissionStore, a as getAuthProvider, e as getDataProvider, k as getOrganizationProvider } from \"../../../../../../chunks/providers.server.js\";\nimport { w as requireManageInstanceUsers } from \"../../../../../../chunks/access.server.js\";\nimport { t as throwZodError } from \"../../../../../../chunks/api-errors.js\";\nimport { P as PlatformPermissionSchema, d as OrgPermissionSchema, S as SYSTEM_CONTEXT, j as hasPermission, D as DEFAULT_ORG_PERMISSIONS, M as MEMBER_ASSIGNABLE_PERMISSIONS } from \"../../../../../../chunks/context.js\";\nimport { s as splitFlatPermissions } from \"../../../../../../chunks/permissions-compat.server.js\";\nimport { s as setUserPlatformPermissions } from \"../../../../../../chunks/permissions.server.js\";\nconst FlatPermissionSchema = z.union([PlatformPermissionSchema, OrgPermissionSchema]);\nconst UpdatePermissionsBody = z.object({\n permissions: z.array(FlatPermissionSchema)\n});\nconst PATCH = async ({ params, request, locals }) => {\n requireManageInstanceUsers(locals);\n const { id } = params;\n if (!id) throw error(400, \"Missing user ID\");\n const body = await request.json().catch(() => null);\n const parsed = UpdatePermissionsBody.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n const { platform, org } = splitFlatPermissions(parsed.data.permissions);\n const existingPlatform = await getPermissionStore().getFor(locals.ctx, id);\n const platformChanged = platform.length !== existingPlatform.length || platform.some((p) => !existingPlatform.includes(p)) || existingPlatform.some((p) => !platform.includes(p));\n if (platformChanged && !hasPermission(locals.ctx, \"instance_admin\")) {\n throw error(403, \"Only a platform admin can change platform-scope permissions\");\n }\n const platformResult = await setUserPlatformPermissions(locals.ctx, id, platform);\n if (platformResult === \"not_found\") throw error(404, \"User not found\");\n if (platformResult === \"not_supported\")\n throw error(501, \"Platform permission updates not supported by this auth provider\");\n if (platformResult === \"last_admin\")\n throw error(\n 409,\n \"Cannot remove the last instance admin. Promote another user to instance admin first.\"\n );\n const orgId = locals.ctx?.actingOrgId;\n if (orgId) {\n const orgs = getOrganizationProvider();\n const existing = await orgs.getOrgMember(SYSTEM_CONTEXT, orgId, id);\n const resolvedPermissions = (role) => role === \"member\" ? org.filter((p) => MEMBER_ASSIGNABLE_PERMISSIONS.includes(p)) : [...DEFAULT_ORG_PERMISSIONS[role]];\n if (existing) {\n await orgs.updateOrgMemberPermissions(\n SYSTEM_CONTEXT,\n orgId,\n id,\n resolvedPermissions(existing.role)\n );\n } else {\n const joinedAt = (/* @__PURE__ */ new Date()).toISOString();\n await orgs.addOrgMember(SYSTEM_CONTEXT, {\n orgId,\n userId: id,\n role: \"member\",\n permissions: resolvedPermissions(\"member\"),\n joinedAt,\n updatedAt: joinedAt,\n updatedBy: locals.user?.id ?? id,\n deletedAt: null\n });\n }\n }\n return json({ success: true });\n};\nconst DELETE = async ({ params, locals }) => {\n requireManageInstanceUsers(locals);\n const { id } = params;\n if (!id) throw error(400, \"Missing user ID\");\n const targetPerms = await getPermissionStore().getFor(locals.ctx, id);\n if (targetPerms.includes(\"instance_admin\")) {\n const others = await getPermissionStore().countInstanceAdminsExcluding(locals.ctx, id);\n if (others === 0) {\n throw error(\n 409,\n \"Cannot delete the last instance admin. Promote another user to instance admin first.\"\n );\n }\n }\n const result = await getAuthProvider().deleteUser(id);\n if (result === \"not_found\") throw error(404, \"User not found\");\n if (result === \"not_supported\")\n throw error(501, \"User deletion not supported by this auth provider\");\n await getDataProvider().onUserDeleted(SYSTEM_CONTEXT, id);\n return json({ success: true });\n};\nexport {\n DELETE,\n PATCH\n};\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"_server.ts-XAkApigL.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/definitions/_guid_/share-links/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { randomUUID } from \"node:crypto\";\nimport { u as providers, f as flag } from \"../../../../../../chunks/providers.server.js\";\nimport { t as requireEditableDefinition } from \"../../../../../../chunks/access.server.js\";\nimport { h as handleApiError, t as throwZodError } from \"../../../../../../chunks/api-errors.js\";\nimport { G as GuidSchema, c as CreateShareLinkInputSchema } from \"../../../../../../chunks/context.js\";\nimport { D as DEFAULT_SHARE_LINK_MAX_SOLVES } from \"../../../../../../chunks/types2.js\";\nimport { m as mintRawToken, h as hashToken } from \"../../../../../../chunks/token.server.js\";\nfunction assertSharingEnabled() {\n if (!flag(\"ENABLE_SHARING\")) {\n throw error(404, \"Share links are disabled on this instance (ENABLE_SHARING).\");\n }\n}\nfunction strip(link) {\n const { tokenHash: _omit, ...rest } = link;\n return { ...rest, hasToken: true };\n}\nconst GET = async ({ params, locals }) => {\n assertSharingEnabled();\n const guidParsed = GuidSchema.safeParse(params.guid);\n if (!guidParsed.success) throw error(400, \"Invalid or missing GUID\");\n const { ctx } = await requireEditableDefinition(locals, guidParsed.data);\n try {\n const page = await providers.data.shareLinks.listByDefinition(ctx, guidParsed.data, {\n limit: 200\n });\n return json({\n links: page.items.map(strip),\n nextCursor: page.nextCursor\n });\n } catch (err) {\n handleApiError(err, \"Failed to list share links\");\n }\n};\nconst POST = async ({ params, request, locals }) => {\n assertSharingEnabled();\n const guidParsed = GuidSchema.safeParse(params.guid);\n if (!guidParsed.success) throw error(400, \"Invalid or missing GUID\");\n const { ctx } = await requireEditableDefinition(locals, guidParsed.data);\n const body = await request.json().catch(() => ({}));\n const parsed = CreateShareLinkInputSchema.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n const raw = mintRawToken();\n const now = (/* @__PURE__ */ new Date()).toISOString();\n const link = {\n id: randomUUID(),\n definitionId: guidParsed.data,\n channel: parsed.data.channel,\n tokenHash: hashToken(raw),\n name: parsed.data.name,\n createdBy: locals.user.id,\n createdAt: now,\n expiresAt: parsed.data.expiresAt ?? null,\n revokedAt: null,\n allowSolve: parsed.data.allowSolve,\n // Default applied only when the field is absent. `null` is a deliberate\n // \"uncap\" choice and is preserved.\n maxSolves: parsed.data.maxSolves === void 0 ? DEFAULT_SHARE_LINK_MAX_SOLVES : parsed.data.maxSolves,\n solveCount: 0\n };\n try {\n await providers.data.shareLinks.create(ctx, link);\n return json({ link: strip(link), token: raw }, { status: 201 });\n } catch (err) {\n handleApiError(err, \"Failed to create share link\");\n }\n};\nexport {\n GET,\n POST\n};\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"_server.ts-bhjqtBoy.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/definitions/_guid_/publish/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { i as getDefinitionService } from \"../../../../../../chunks/providers.server.js\";\nimport { t as requireEditableDefinition } from \"../../../../../../chunks/access.server.js\";\nimport { t as throwZodError, h as handleApiError } from \"../../../../../../chunks/api-errors.js\";\nimport { G as GuidSchema, h as PublishVersionInputSchema } from \"../../../../../../chunks/context.js\";\nconst POST = async ({ params, request, locals }) => {\n const guidParsed = GuidSchema.safeParse(params.guid);\n if (!guidParsed.success) throw error(400, \"Invalid or missing GUID\");\n const body = await request.json().catch(() => ({}));\n const parsed = PublishVersionInputSchema.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n const { ctx } = await requireEditableDefinition(locals, guidParsed.data);\n try {\n const version = await getDefinitionService().publish(\n ctx,\n guidParsed.data,\n parsed.data.versionId\n );\n return json({ success: true, version });\n } catch (err) {\n handleApiError(err, \"Failed to publish version\");\n }\n};\nexport {\n POST\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAKK,MAAC,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK;AACpD,EAAE,MAAM,UAAU,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,CAAC;AACtD,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,yBAAyB,CAAC;AACtE,EAAE,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;AACrD,EAAE,MAAM,MAAM,GAAG,yBAAyB,CAAC,SAAS,CAAC,IAAI,CAAC;AAC1D,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC;AAClD,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,yBAAyB,CAAC,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC;AAC1E,EAAE,IAAI;AACN,IAAI,MAAM,OAAO,GAAG,MAAM,oBAAoB,EAAE,CAAC,OAAO;AACxD,MAAM,GAAG;AACT,MAAM,UAAU,CAAC,IAAI;AACrB,MAAM,MAAM,CAAC,IAAI,CAAC;AAClB,KAAK;AACL,IAAI,OAAO,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;AAC3C,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,2BAA2B,CAAC;AACpD,EAAE;AACF;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"_server.ts-cHSphefi.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/api/orgs/_id_/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { k as getOrganizationProvider, P as ProviderError } from \"../../../../../../chunks/providers.server.js\";\nimport { u as requireInstanceAdmin } from \"../../../../../../chunks/access.server.js\";\nimport { h as handleApiError, t as throwZodError } from \"../../../../../../chunks/api-errors.js\";\nimport { i as UpdateOrgSchema } from \"../../../../../../chunks/context.js\";\nconst PATCH = async ({ params, request, locals }) => {\n requireInstanceAdmin(locals);\n const { id } = params;\n if (!id) throw error(400, \"Missing org ID\");\n const ctx = locals.ctx;\n const body = await request.json().catch(() => null);\n const parsed = UpdateOrgSchema.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n try {\n await getOrganizationProvider().updateOrg(ctx, id, parsed.data);\n const updated = await getOrganizationProvider().getOrg(ctx, id);\n return json(updated);\n } catch (err) {\n if (err instanceof ProviderError && err.statusCode === 409) {\n throw error(409, err.message);\n }\n handleApiError(err, \"Failed to update org\");\n }\n};\nconst DELETE = async ({ params, locals }) => {\n requireInstanceAdmin(locals);\n const { id } = params;\n if (!id) throw error(400, \"Missing org ID\");\n const ctx = locals.ctx;\n try {\n await getOrganizationProvider().deleteOrg(ctx, id);\n return json({ success: true });\n } catch (err) {\n handleApiError(err, \"Failed to delete org\");\n }\n};\nexport {\n DELETE,\n PATCH\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAKK,MAAC,KAAK,GAAG,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK;AACrD,EAAE,oBAAoB,CAAC,MAAM,CAAC;AAC9B,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM;AACvB,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,gBAAgB,CAAC;AAC7C,EAAE,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG;AACxB,EAAE,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC;AACrD,EAAE,MAAM,MAAM,GAAG,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC;AAChD,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC;AAClD,EAAE,IAAI;AACN,IAAI,MAAM,uBAAuB,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC;AACnE,IAAI,MAAM,OAAO,GAAG,MAAM,uBAAuB,EAAE,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC;AACnE,IAAI,OAAO,IAAI,CAAC,OAAO,CAAC;AACxB,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,IAAI,GAAG,YAAY,aAAa,IAAI,GAAG,CAAC,UAAU,KAAK,GAAG,EAAE;AAChE,MAAM,MAAM,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,OAAO,CAAC;AACnC,IAAI;AACJ,IAAI,cAAc,CAAC,GAAG,EAAE,sBAAsB,CAAC;AAC/C,EAAE;AACF;AACK,MAAC,MAAM,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK;AAC7C,EAAE,oBAAoB,CAAC,MAAM,CAAC;AAC9B,EAAE,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM;AACvB,EAAE,IAAI,CAAC,EAAE,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,gBAAgB,CAAC;AAC7C,EAAE,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG;AACxB,EAAE,IAAI;AACN,IAAI,MAAM,uBAAuB,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,CAAC;AACtD,IAAI,OAAO,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAClC,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,sBAAsB,CAAC;AAC/C,EAAE;AACF;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"_server.ts-d6YTPmkY.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/me/starred/_guid_/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { r as getUserProfileStore } from \"../../../../../../chunks/providers.server.js\";\nimport { h as handleApiError } from \"../../../../../../chunks/api-errors.js\";\nconst POST = async ({ params, locals }) => {\n if (!locals.user || !locals.ctx) throw error(401, \"Unauthorized\");\n const guid = params.guid;\n if (!guid) throw error(400, \"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) throw error(401, \"Unauthorized\");\n const guid = params.guid;\n if (!guid) throw error(400, \"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,MAAM,KAAK,CAAC,GAAG,EAAE,cAAc,CAAC;AACnE,EAAE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI;AAC1B,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,yBAAyB,CAAC;AACxD,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,MAAM,KAAK,CAAC,GAAG,EAAE,cAAc,CAAC;AACnE,EAAE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI;AAC1B,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,yBAAyB,CAAC;AACxD,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 +0,0 @@
1
- {"version":3,"file":"_server.ts-kTCuqLDl.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/projects/_id_/members/_userId_/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { z } from \"zod\";\nimport { n as getProjectProvider } from \"../../../../../../../chunks/providers.server.js\";\nimport { n as requireCanManageMembers, i as checkOwnerRemoval } from \"../../../../../../../chunks/access.server.js\";\nimport { h as handleApiError, t as throwZodError } from \"../../../../../../../chunks/api-errors.js\";\nimport { f as ProjectRoleSchema } from \"../../../../../../../chunks/context.js\";\nconst UpdateRoleSchema = z.object({ role: ProjectRoleSchema });\nconst PATCH = async ({ params, request, locals }) => {\n const { id, userId } = params;\n if (!id || !userId) throw error(400, \"Missing project ID or user ID\");\n await requireCanManageMembers(locals, id);\n const ctx = locals.ctx;\n const body = await request.json().catch(() => null);\n const parsed = UpdateRoleSchema.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n try {\n await getProjectProvider().updateProjectMemberRole(ctx, id, userId, parsed.data.role);\n return json({ success: true });\n } catch (err) {\n handleApiError(err, \"Failed to update role\");\n }\n};\nconst DELETE = async ({ params, url, locals }) => {\n const { id, userId } = params;\n if (!id || !userId) throw error(400, \"Missing project ID or user ID\");\n await requireCanManageMembers(locals, id);\n const ctx = locals.ctx;\n const confirmed = url.searchParams.get(\"confirm\") === \"true\";\n const projects = getProjectProvider();\n const target = await projects.getProjectMember(ctx, id, userId);\n if (!target) {\n return json({ success: true });\n }\n if (target.role === \"owner\") {\n const page = await projects.listProjectMembers(ctx, id, { limit: 200 });\n const decision = checkOwnerRemoval({\n target: { role: target.role },\n allMembers: page.items.map((m) => ({ role: m.role })),\n confirmed\n });\n if (decision === \"sole_owner\") {\n throw error(\n 409,\n \"Cannot remove the sole owner of a project. Assign another owner first, or use reclaim to add a co-owner.\"\n );\n }\n if (decision === \"needs_confirm\") {\n throw error(\n 409,\n \"Removing another project owner requires explicit confirmation. Retry with ?confirm=true.\"\n );\n }\n }\n try {\n await projects.removeProjectMember(ctx, id, userId);\n return json({ success: true });\n } catch (err) {\n handleApiError(err, \"Failed to remove member\");\n }\n};\nexport {\n DELETE,\n PATCH\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAMA,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,iBAAiB,EAAE,CAAC;AACzD,MAAC,KAAK,GAAG,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK;AACrD,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,MAAM;AAC/B,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,+BAA+B,CAAC;AACvE,EAAE,MAAM,uBAAuB,CAAC,MAAM,EAAE,EAAE,CAAC;AAC3C,EAAE,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG;AACxB,EAAE,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC;AACrD,EAAE,MAAM,MAAM,GAAG,gBAAgB,CAAC,SAAS,CAAC,IAAI,CAAC;AACjD,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,aAAa,CAAC,MAAM,CAAC,KAAK,CAAC;AAClD,EAAE,IAAI;AACN,IAAI,MAAM,kBAAkB,EAAE,CAAC,uBAAuB,CAAC,GAAG,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;AACzF,IAAI,OAAO,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAClC,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,uBAAuB,CAAC;AAChD,EAAE;AACF;AACK,MAAC,MAAM,GAAG,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK;AAClD,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,MAAM;AAC/B,EAAE,IAAI,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,+BAA+B,CAAC;AACvE,EAAE,MAAM,uBAAuB,CAAC,MAAM,EAAE,EAAE,CAAC;AAC3C,EAAE,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG;AACxB,EAAE,MAAM,SAAS,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,MAAM;AAC9D,EAAE,MAAM,QAAQ,GAAG,kBAAkB,EAAE;AACvC,EAAE,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,gBAAgB,CAAC,GAAG,EAAE,EAAE,EAAE,MAAM,CAAC;AACjE,EAAE,IAAI,CAAC,MAAM,EAAE;AACf,IAAI,OAAO,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAClC,EAAE;AACF,EAAE,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE;AAC/B,IAAI,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,kBAAkB,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;AAC3E,IAAI,MAAM,QAAQ,GAAG,iBAAiB,CAAC;AACvC,MAAM,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE;AACnC,MAAM,UAAU,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;AAC3D,MAAM;AACN,KAAK,CAAC;AACN,IAAI,IAAI,QAAQ,KAAK,YAAY,EAAE;AACnC,MAAM,MAAM,KAAK;AACjB,QAAQ,GAAG;AACX,QAAQ;AACR,OAAO;AACP,IAAI;AACJ,IAAI,IAAI,QAAQ,KAAK,eAAe,EAAE;AACtC,MAAM,MAAM,KAAK;AACjB,QAAQ,GAAG;AACX,QAAQ;AACR,OAAO;AACP,IAAI;AACJ,EAAE;AACF,EAAE,IAAI;AACN,IAAI,MAAM,QAAQ,CAAC,mBAAmB,CAAC,GAAG,EAAE,EAAE,EAAE,MAAM,CAAC;AACvD,IAAI,OAAO,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;AAClC,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,cAAc,CAAC,GAAG,EAAE,yBAAyB,CAAC;AAClD,EAAE;AACF;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"_server.ts-kbr9HYg5.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/invites/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { randomUUID } from \"node:crypto\";\nimport { z } from \"zod\";\nimport { j as getInviteStore } from \"../../../../chunks/providers.server.js\";\nimport { y as requireManageOrgMembers } from \"../../../../chunks/access.server.js\";\nimport { h as handleApiError, t as throwZodError } from \"../../../../chunks/api-errors.js\";\nimport { P as PlatformPermissionSchema, d as OrgPermissionSchema, e as OrgRoleSchema, M as MEMBER_ASSIGNABLE_PERMISSIONS, D as DEFAULT_ORG_PERMISSIONS } from \"../../../../chunks/context.js\";\nimport { s as splitFlatPermissions } from \"../../../../chunks/permissions-compat.server.js\";\nimport { m as mintRawToken, h as hashToken } from \"../../../../chunks/token.server2.js\";\nconst FlatPermissionSchema = z.union([PlatformPermissionSchema, OrgPermissionSchema]);\nconst CreateBody = z.object({\n email: z.string().email(\"Valid email is required\").transform((s) => s.toLowerCase().trim()),\n orgRole: OrgRoleSchema.default(\"member\"),\n permissions: z.array(FlatPermissionSchema).default([])\n});\nconst INVITE_TTL_MS = 7 * 24 * 60 * 60 * 1e3;\nconst GET = async ({ locals }) => {\n requireManageOrgMembers(locals);\n const ctx = locals.ctx;\n if (!ctx.actingOrgId) throw error(400, \"No active organization\");\n try {\n const page = await getInviteStore().listByOrg(ctx, ctx.actingOrgId, { limit: 200 });\n const items = page.items.map(({ tokenHash: _omit, ...rest }) => rest);\n return json(items);\n } catch (err) {\n handleApiError(err, \"Failed to list invites\");\n }\n};\nconst POST = async ({ request, locals, url }) => {\n requireManageOrgMembers(locals);\n const ctx = locals.ctx;\n const user = locals.user;\n if (!ctx.actingOrgId) throw error(400, \"No active organization\");\n const body = await request.json().catch(() => null);\n const parsed = CreateBody.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n try {\n const { org: submittedOrgPerms } = splitFlatPermissions(parsed.data.permissions);\n const orgPermissions = parsed.data.orgRole === \"member\" ? submittedOrgPerms.filter((p) => MEMBER_ASSIGNABLE_PERMISSIONS.includes(p)) : [...DEFAULT_ORG_PERMISSIONS[parsed.data.orgRole]];\n const rawToken = mintRawToken();\n const now = /* @__PURE__ */ new Date();\n const invite = {\n id: randomUUID(),\n tokenHash: hashToken(rawToken),\n email: parsed.data.email,\n orgId: ctx.actingOrgId,\n orgRole: parsed.data.orgRole,\n orgPermissions,\n invitedBy: user.id,\n createdAt: now.toISOString(),\n expiresAt: new Date(now.getTime() + INVITE_TTL_MS).toISOString()\n };\n await getInviteStore().create(ctx, invite);\n const acceptUrl = `${url.origin}/accept-invite?token=${rawToken}`;\n const { tokenHash: _omit, ...inviteForClient } = invite;\n return json({ invite: inviteForClient, acceptUrl }, { status: 201 });\n } catch (err) {\n handleApiError(err, \"Failed to create invite\");\n }\n};\nexport {\n GET,\n POST\n};\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"api-errors-BhVEeWTV.js","sources":["../../../.svelte-kit/adapter-node/chunks/api-errors.js"],"sourcesContent":["import { error } from \"@sveltejs/kit\";\nimport \"./context.js\";\nimport { c as getComputeServerConfigStore, P as ProviderError } from \"./providers.server.js\";\nimport { camelcaseKeys } from \"@selvajs/compute/core\";\nimport { r as resolveServerForOrg$1 } from \"./utils2.js\";\nclass SchemaExtractionError extends Error {\n constructor(kind, message) {\n super(message);\n this.kind = kind;\n this.name = \"SchemaExtractionError\";\n }\n kind;\n}\nasync function fetchSchemaFromCompute(definitionBytes, server) {\n const schemaUrl = new URL(\"/grasshopper/schema\", server.serverUrl).toString();\n const formData = new FormData();\n const blob = new Blob([new Uint8Array(definitionBytes)], { type: \"application/octet-stream\" });\n formData.append(\"file\", blob, \"definition.gh\");\n const headers = {};\n if (server.apiKey) {\n headers[\"RhinoComputeKey\"] = server.apiKey;\n }\n let response;\n try {\n response = await fetch(schemaUrl, { method: \"POST\", headers, body: formData });\n } catch (err) {\n throw new SchemaExtractionError(\n \"unreachable\",\n `Compute server is unreachable: ${err instanceof Error ? err.message : String(err)}`\n );\n }\n if (!response.ok) {\n throw new SchemaExtractionError(\n \"unreachable\",\n `Schema endpoint returned ${response.status}: ${response.statusText}`\n );\n }\n const raw = await response.json();\n const results = camelcaseKeys(Array.isArray(raw) ? raw : [raw]);\n const schemas = results.flatMap((r) => r.schemas ?? []);\n if (schemas.length === 0) {\n throw new SchemaExtractionError(\n \"invalid\",\n 'No schemas found in definition.\\n\\nIn Grasshopper, verify a Context Bake component with the output name \"Schema\" is present and wired to the solver.'\n );\n }\n return schemas[0];\n}\nclass ComputeServerUnconfiguredError extends Error {\n constructor(message = \"No compute server configured. Ask an admin to add one in /admin/compute.\") {\n super(message);\n this.name = \"ComputeServerUnconfiguredError\";\n }\n}\nasync function resolveServerForOrg(ctx, orgId, opts = {}) {\n const config = await getComputeServerConfigStore().getConfig(ctx);\n try {\n return resolveServerForOrg$1(config, orgId, { definitionPin: opts.definitionPin });\n } catch (err) {\n throw new ComputeServerUnconfiguredError(err instanceof Error ? err.message : void 0);\n }\n}\nfunction isSvelteKitError(err) {\n return !!err && typeof err === \"object\" && \"status\" in err && \"body\" in err;\n}\nconst UNIQUE_CONSTRAINT_MESSAGES = {\n projects_org_name_unique: \"A project with that name already exists in this organization.\",\n projects_org_id_slug_key: \"A project with that name already exists in this organization.\",\n orgs_slug_key: \"An organization with that slug already exists.\",\n definitions_pkey: \"A definition with that ID already exists.\"\n};\nfunction friendlyConstraintMessage(raw) {\n for (const [name, msg] of Object.entries(UNIQUE_CONSTRAINT_MESSAGES)) {\n if (raw.includes(name)) return msg;\n }\n return null;\n}\nfunction handleApiError(err, fallback) {\n if (isSvelteKitError(err)) throw err;\n if (err instanceof SchemaExtractionError) {\n throw error(err.kind === \"unreachable\" ? 503 : 422, err.message);\n }\n if (err instanceof ComputeServerUnconfiguredError) {\n throw error(503, err.message);\n }\n if (err instanceof ProviderError) {\n const friendly = friendlyConstraintMessage(err.message);\n throw error(err.statusCode, friendly ?? err.message);\n }\n console.error(`[API] ${fallback}:`, err);\n throw error(500, fallback);\n}\nfunction throwZodError(err) {\n const issue = err.issues[0];\n const path = issue.path.length ? `${issue.path.join(\".\")}: ` : \"\";\n throw error(400, `${path}${issue.message}`);\n}\nexport {\n ComputeServerUnconfiguredError as C,\n fetchSchemaFromCompute as f,\n handleApiError as h,\n resolveServerForOrg as r,\n throwZodError as t\n};\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"computeLimits-DPO6NbLd.js","sources":["../../../.svelte-kit/adapter-node/chunks/computeLimits.js"],"sourcesContent":["function readPositiveInt(name, fallback) {\n const raw = process.env[name];\n if (!raw) return fallback;\n const parsed = Number(raw);\n if (!Number.isFinite(parsed) || parsed <= 0) {\n console.warn(`[computeLimits] Invalid ${name}=${raw}, falling back to ${fallback}`);\n return fallback;\n }\n return Math.floor(parsed);\n}\nconst MB = 1024 * 1024;\nconst MAX_SOLVE_DURATION_MS = readPositiveInt(\"MAX_SOLVE_DURATION_MS\", 1e5);\nconst RATE_LIMIT_WINDOW_MS = readPositiveInt(\"COMPUTE_RATE_LIMIT_WINDOW_MS\", 1e5);\nconst RATE_LIMIT_MAX_REQUESTS = readPositiveInt(\"COMPUTE_RATE_LIMIT_MAX\", 120);\nconst MAX_GH_FILE_SIZE = readPositiveInt(\"MAX_GH_FILE_SIZE_BYTES\", 50 * MB);\nconst MAX_IMAGE_FILE_SIZE = readPositiveInt(\"MAX_IMAGE_FILE_SIZE_BYTES\", 10 * MB);\nconst COMPUTE_REQUEST_MAX_BYTES = readPositiveInt(\"COMPUTE_REQUEST_MAX_BYTES\", 210 * MB);\nconst COMPUTE_RESPONSE_MAX_BYTES = readPositiveInt(\"COMPUTE_RESPONSE_MAX_BYTES\", 300 * MB);\nconst REMOTE_DEFINITION_MAX_BYTES = MAX_GH_FILE_SIZE;\nconst REMOTE_DEFINITION_FETCH_TIMEOUT_MS = readPositiveInt(\n \"REMOTE_DEFINITION_FETCH_TIMEOUT_MS\",\n 3e4\n);\nconst DEFINITION_CACHE_TTL_MS = readPositiveInt(\"DEFINITION_CACHE_TTL_MS\", 5 * 60 * 1e3);\nexport {\n COMPUTE_REQUEST_MAX_BYTES as C,\n DEFINITION_CACHE_TTL_MS as D,\n MAX_GH_FILE_SIZE as M,\n RATE_LIMIT_MAX_REQUESTS as R,\n COMPUTE_RESPONSE_MAX_BYTES as a,\n MAX_IMAGE_FILE_SIZE as b,\n MAX_SOLVE_DURATION_MS as c,\n RATE_LIMIT_WINDOW_MS as d,\n REMOTE_DEFINITION_FETCH_TIMEOUT_MS as e,\n REMOTE_DEFINITION_MAX_BYTES as f\n};\n"],"names":[],"mappings":"AAAA,SAAS,eAAe,CAAC,IAAI,EAAE,QAAQ,EAAE;AACzC,EAAE,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC;AAC/B,EAAE,IAAI,CAAC,GAAG,EAAE,OAAO,QAAQ;AAC3B,EAAE,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAC;AAC5B,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,EAAE;AAC/C,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC,wBAAwB,EAAE,IAAI,CAAC,CAAC,EAAE,GAAG,CAAC,kBAAkB,EAAE,QAAQ,CAAC,CAAC,CAAC;AACvF,IAAI,OAAO,QAAQ;AACnB,EAAE;AACF,EAAE,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;AAC3B;AACA,MAAM,EAAE,GAAG,IAAI,GAAG,IAAI;AACjB,MAAC,qBAAqB,GAAG,eAAe,CAAC,uBAAuB,EAAE,GAAG;AACrE,MAAC,oBAAoB,GAAG,eAAe,CAAC,8BAA8B,EAAE,GAAG;AAC3E,MAAC,uBAAuB,GAAG,eAAe,CAAC,wBAAwB,EAAE,GAAG;AACxE,MAAC,gBAAgB,GAAG,eAAe,CAAC,wBAAwB,EAAE,EAAE,GAAG,EAAE;AACrE,MAAC,mBAAmB,GAAG,eAAe,CAAC,2BAA2B,EAAE,EAAE,GAAG,EAAE;AAC3E,MAAC,yBAAyB,GAAG,eAAe,CAAC,2BAA2B,EAAE,GAAG,GAAG,EAAE;AAClF,MAAC,0BAA0B,GAAG,eAAe,CAAC,4BAA4B,EAAE,GAAG,GAAG,EAAE;AACpF,MAAC,2BAA2B,GAAG;AAC/B,MAAC,kCAAkC,GAAG,eAAe;AAC1D,EAAE,oCAAoC;AACtC,EAAE;AACF;AACK,MAAC,uBAAuB,GAAG,eAAe,CAAC,yBAAyB,EAAE,CAAC,GAAG,EAAE,GAAG,GAAG;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"hooks.server-BEbVZKxO.js","sources":["../../../.svelte-kit/adapter-node/entries/hooks.server.js"],"sourcesContent":["import { redirect, isHttpError } from \"@sveltejs/kit\";\nimport { S as SYSTEM_CONTEXT } from \"../chunks/context.js\";\nimport { u as providers } from \"../chunks/providers.server.js\";\nimport { g as getBootHealth } from \"../chunks/bootHealth.server.js\";\nimport { w as wireHeaderAuthBootstrap, b as bootstrapUserSession } from \"../chunks/auth-bootstrap.server.js\";\nimport { g as getRefreshToken, h as setSessionCookie, f as setRefreshCookie, b as clearRefreshCookie } from \"../chunks/admin-auth.server.js\";\nfunction emptyProfile(userId) {\n return { userId, starredDefinitions: [], recentRuns: [] };\n}\nlet headerAuthBootstrapWired = false;\nlet bootHealthKicked = false;\nlet proxyAuthLoginMissWarned = false;\nlet firstRunResolved = false;\nasync function isFirstRun() {\n if (firstRunResolved) return false;\n const usersPage = await providers.auth.listUsers({ limit: 1 });\n if (usersPage === null) {\n firstRunResolved = true;\n return false;\n }\n if (usersPage.items.length === 0) return true;\n firstRunResolved = true;\n return false;\n}\nasync function buildContext(user, sessionToken) {\n let actingOrgId;\n let orgPermissions = [];\n const platformPermissions = await providers.data.permissions.getFor(SYSTEM_CONTEXT, user.id);\n const membership = await providers.data.orgs.findUserMembership(SYSTEM_CONTEXT, user.id);\n if (membership) {\n actingOrgId = membership.org.id;\n orgPermissions = membership.member.permissions;\n }\n if (!actingOrgId && platformPermissions.includes(\"instance_admin\")) {\n const firstOrgPage = await providers.data.orgs.listOrgs(SYSTEM_CONTEXT, { limit: 1 });\n const firstOrg = firstOrgPage.items[0];\n if (firstOrg) actingOrgId = firstOrg.id;\n }\n return {\n userId: user.id,\n actingOrgId,\n platformPermissions,\n orgPermissions,\n adapterContext: sessionToken ? { sessionToken } : void 0\n };\n}\nconst PUBLIC_PAGE_ROUTES = /* @__PURE__ */ new Set([\n \"/\",\n // landing — guests see it; authed users get redirected by +page.server.ts\n \"/login\",\n \"/setup\",\n \"/accept-invite\"\n]);\nconst PUBLIC_PATH_PREFIXES = [\"/auth/\", \"/logout\"];\nconst PUBLIC_API_ROUTES = /* @__PURE__ */ new Set([\"/api/health\"]);\nconst STATIC_ASSET_PREFIXES = [\"/_app/\", \"/favicon/\"];\nconst STATIC_ASSET_PATHS = /* @__PURE__ */ new Set([\"/favicon.svg\", \"/robots.txt\"]);\nfunction isStaticAsset(pathname) {\n if (STATIC_ASSET_PATHS.has(pathname)) return true;\n return STATIC_ASSET_PREFIXES.some((p) => pathname.startsWith(p));\n}\nfunction isPublicRoute(pathname) {\n if (PUBLIC_PAGE_ROUTES.has(pathname)) return true;\n if (PUBLIC_API_ROUTES.has(pathname)) return true;\n return PUBLIC_PATH_PREFIXES.some((p) => pathname.startsWith(p));\n}\nconst handle = async ({ event, resolve }) => {\n event.locals.providers = providers;\n if (!headerAuthBootstrapWired) {\n wireHeaderAuthBootstrap();\n headerAuthBootstrapWired = true;\n }\n if (!bootHealthKicked) {\n bootHealthKicked = true;\n void getBootHealth();\n }\n const { pathname } = event.url;\n if (isStaticAsset(pathname)) {\n return applySecurityHeaders(await resolve(event), pathname);\n }\n if (pathname === \"/api/health\") {\n return applySecurityHeaders(await resolve(event), pathname);\n }\n const publicRoute = isPublicRoute(pathname);\n const isJsonApiRoute = pathname.startsWith(\"/api/\") || pathname.startsWith(\"/admin/api/\");\n if (!publicRoute) {\n if (await isFirstRun()) {\n if (isJsonApiRoute) {\n return applySecurityHeaders(\n new Response(JSON.stringify({ error: \"Setup required\" }), {\n status: 503,\n headers: { \"Content-Type\": \"application/json\" }\n }),\n pathname\n );\n }\n redirect(303, \"/setup\");\n }\n }\n const needsAuth = !publicRoute;\n if (needsAuth) {\n let token = event.cookies.get(\"admin_session\") ?? \"\";\n let user = await providers.auth.verifyToken(token);\n if (!user) {\n const refreshToken = getRefreshToken(event.cookies);\n const oauth = providers.auth.oauth;\n if (refreshToken && oauth) {\n const refreshed = await oauth.refreshSession(refreshToken);\n if (refreshed) {\n setSessionCookie(event.cookies, refreshed.sessionToken);\n setRefreshCookie(event.cookies, refreshed.refreshToken);\n token = refreshed.sessionToken;\n user = await providers.auth.verifyToken(token);\n } else {\n clearRefreshCookie(event.cookies);\n }\n }\n }\n if (!user && providers.auth.proxyAuth) {\n user = await providers.auth.proxyAuth.identifyFromHeaders(event.request.headers);\n if (user) await bootstrapUserSession(user);\n }\n if (!user) {\n if (isJsonApiRoute) {\n return applySecurityHeaders(\n new Response(JSON.stringify({ error: \"Unauthorized\" }), {\n status: 401,\n headers: { \"Content-Type\": \"application/json\" }\n }),\n pathname\n );\n }\n redirect(303, `/login?redirectTo=${encodeURIComponent(pathname)}`);\n }\n await providers.data.ensureUser(SYSTEM_CONTEXT, user.id);\n event.locals.user = user;\n event.locals.profile = await providers.data.userProfile.getProfile(SYSTEM_CONTEXT, user.id) ?? emptyProfile(user.id);\n event.locals.ctx = await buildContext(user, token);\n } else {\n const isPublicPage = PUBLIC_PAGE_ROUTES.has(pathname);\n const token = isPublicPage ? event.cookies.get(\"admin_session\") ?? \"\" : \"\";\n let user = token ? await providers.auth.verifyToken(token) : null;\n if (!user && isPublicPage && providers.auth.proxyAuth) {\n user = await providers.auth.proxyAuth.identifyFromHeaders(event.request.headers);\n if (!user && pathname === \"/login\" && !proxyAuthLoginMissWarned) {\n proxyAuthLoginMissWarned = true;\n const proxyAuth = providers.auth.proxyAuth;\n const noHeaders = proxyAuth.hasNoIdentityHeaders(event.request.headers);\n const configured = proxyAuth.configuredHeaderNames.join(\", \");\n if (noHeaders) {\n console.warn(\n `[HeaderAuth] /login was hit and NONE of the configured identity headers (${configured}) arrived on the request. The forward-auth proxy is not reaching this process, or it is not forwarding the configured headers. See the @selvajs/header-auth-provider README \"Verification\" section.`\n );\n } else {\n console.warn(\n `[HeaderAuth] /login was hit but the UPN header was missing or the user is not allowlisted. Configured headers: ${configured}. Some headers arrived but identification still failed — check that the UPN header is populated and that the user has been added to header-allowlist.json.`\n );\n }\n }\n }\n if (user) {\n await providers.data.ensureUser(SYSTEM_CONTEXT, user.id);\n event.locals.user = user;\n event.locals.profile = await providers.data.userProfile.getProfile(SYSTEM_CONTEXT, user.id) ?? emptyProfile(user.id);\n event.locals.ctx = await buildContext(user, token);\n }\n }\n return applySecurityHeaders(await resolve(event), pathname);\n};\nfunction applySecurityHeaders(response, pathname) {\n response.headers.set(\"X-Content-Type-Options\", \"nosniff\");\n response.headers.set(\"Referrer-Policy\", \"strict-origin-when-cross-origin\");\n response.headers.set(\n \"Permissions-Policy\",\n \"accelerometer=(), camera=(), geolocation=(), gyroscope=(), magnetometer=(), microphone=(), payment=(), usb=()\"\n );\n if (process.env.NODE_ENV === \"production\") {\n response.headers.set(\"Strict-Transport-Security\", \"max-age=31536000; includeSubDomains\");\n }\n if (pathname.startsWith(\"/_app/\")) {\n response.headers.set(\"Cache-Control\", \"public, max-age=31536000, immutable\");\n } else if (pathname.startsWith(\"/favicon/\") || pathname === \"/favicon.svg\" || pathname === \"/robots.txt\") {\n response.headers.set(\"Cache-Control\", \"public, max-age=604800\");\n }\n return response;\n}\nconst handleError = ({\n error,\n status,\n event\n}) => {\n if (isHttpError(error)) {\n return { message: error.body.message };\n }\n if (status === 404) {\n return { message: \"Page not found.\" };\n }\n const rendered = error instanceof Error ? error.stack ?? error.message : (() => {\n try {\n return JSON.stringify(error);\n } catch {\n return String(error);\n }\n })();\n const cause = error instanceof Error && error.cause ? `\n caused by: ${error.cause}` : \"\";\n console.error(\n `[Unhandled error] ${event.request.method} ${event.url.pathname}\n ${rendered}${cause}`\n );\n return { message: \"An unexpected error occurred.\" };\n};\nexport {\n handle,\n handleError,\n isPublicRoute,\n isStaticAsset\n};\n"],"names":[],"mappings":"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"}