@selvajs/selva 4.16.3 → 4.17.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (394) hide show
  1. package/build/client/_app/immutable/chunks/{D9mrwhjI.js → BU-V_Eiq.js} +1 -1
  2. package/build/client/_app/immutable/chunks/BU-V_Eiq.js.br +0 -0
  3. package/build/client/_app/immutable/chunks/BU-V_Eiq.js.gz +0 -0
  4. package/build/client/_app/immutable/chunks/{R7RfXtkr.js → BlQiAbNW.js} +1 -1
  5. package/build/client/_app/immutable/chunks/BlQiAbNW.js.br +0 -0
  6. package/build/client/_app/immutable/chunks/BlQiAbNW.js.gz +0 -0
  7. package/build/client/_app/immutable/chunks/{Ct0B1C-6.js → C0odTvPl.js} +1 -1
  8. package/build/client/_app/immutable/chunks/C0odTvPl.js.br +0 -0
  9. package/build/client/_app/immutable/chunks/C0odTvPl.js.gz +0 -0
  10. package/build/client/_app/immutable/chunks/C6gAy11g.js +1 -0
  11. package/build/client/_app/immutable/chunks/C6gAy11g.js.br +2 -0
  12. package/build/client/_app/immutable/chunks/C6gAy11g.js.gz +0 -0
  13. package/build/client/_app/immutable/chunks/{DDZHb50K.js → CIQYtnjl.js} +1 -1
  14. package/build/client/_app/immutable/chunks/CIQYtnjl.js.br +0 -0
  15. package/build/client/_app/immutable/chunks/CIQYtnjl.js.gz +0 -0
  16. package/build/client/_app/immutable/chunks/{CsdA-c5v.js → D1C2bDXQ.js} +2 -2
  17. package/build/client/_app/immutable/chunks/D1C2bDXQ.js.br +0 -0
  18. package/build/client/_app/immutable/chunks/D1C2bDXQ.js.gz +0 -0
  19. package/build/client/_app/immutable/chunks/{3g59Qd6G.js → DweBY5gq.js} +1 -1
  20. package/build/client/_app/immutable/chunks/DweBY5gq.js.br +0 -0
  21. package/build/client/_app/immutable/chunks/DweBY5gq.js.gz +0 -0
  22. package/build/client/_app/immutable/chunks/{DPMlkLnX.js → LCEeY5pO.js} +1 -1
  23. package/build/client/_app/immutable/chunks/LCEeY5pO.js.br +0 -0
  24. package/build/client/_app/immutable/chunks/LCEeY5pO.js.gz +0 -0
  25. package/build/client/_app/immutable/entry/{app.BMcWaHUc.js → app.gbRlrYPj.js} +2 -2
  26. package/build/client/_app/immutable/entry/app.gbRlrYPj.js.br +0 -0
  27. package/build/client/_app/immutable/entry/app.gbRlrYPj.js.gz +0 -0
  28. package/build/client/_app/immutable/entry/start.MZeFqq0d.js +1 -0
  29. package/build/client/_app/immutable/entry/start.MZeFqq0d.js.br +1 -0
  30. package/build/client/_app/immutable/entry/start.MZeFqq0d.js.gz +0 -0
  31. package/build/client/_app/immutable/nodes/{1.BgrhD8yg.js → 1.Bg3SAaiR.js} +1 -1
  32. package/build/client/_app/immutable/nodes/1.Bg3SAaiR.js.br +0 -0
  33. package/build/client/_app/immutable/nodes/1.Bg3SAaiR.js.gz +0 -0
  34. package/build/client/_app/immutable/nodes/11.DFY28UJL.js +3 -0
  35. package/build/client/_app/immutable/nodes/11.DFY28UJL.js.br +0 -0
  36. package/build/client/_app/immutable/nodes/11.DFY28UJL.js.gz +0 -0
  37. package/build/client/_app/immutable/nodes/{13.B2k79eQZ.js → 13.Bo7QBphQ.js} +1 -1
  38. package/build/client/_app/immutable/nodes/13.Bo7QBphQ.js.br +0 -0
  39. package/build/client/_app/immutable/nodes/13.Bo7QBphQ.js.gz +0 -0
  40. package/build/client/_app/immutable/nodes/{14.CfEpmHVX.js → 14.Dhg9S6ty.js} +1 -1
  41. package/build/client/_app/immutable/nodes/14.Dhg9S6ty.js.br +0 -0
  42. package/build/client/_app/immutable/nodes/14.Dhg9S6ty.js.gz +0 -0
  43. package/build/client/_app/immutable/nodes/{15.nl-fHTBN.js → 15.P81tZ1xb.js} +1 -1
  44. package/build/client/_app/immutable/nodes/15.P81tZ1xb.js.br +0 -0
  45. package/build/client/_app/immutable/nodes/15.P81tZ1xb.js.gz +0 -0
  46. package/build/client/_app/immutable/nodes/{16.DVzCWrup.js → 16.mLkhQAgh.js} +1 -1
  47. package/build/client/_app/immutable/nodes/16.mLkhQAgh.js.br +0 -0
  48. package/build/client/_app/immutable/nodes/16.mLkhQAgh.js.gz +0 -0
  49. package/build/client/_app/immutable/nodes/{17.Bf6Oda11.js → 17.C62-4V3U.js} +1 -1
  50. package/build/client/_app/immutable/nodes/17.C62-4V3U.js.br +0 -0
  51. package/build/client/_app/immutable/nodes/17.C62-4V3U.js.gz +0 -0
  52. package/build/client/_app/immutable/nodes/{19.CtApFLV7.js → 19.CLtct_Ys.js} +1 -1
  53. package/build/client/_app/immutable/nodes/19.CLtct_Ys.js.br +0 -0
  54. package/build/client/_app/immutable/nodes/19.CLtct_Ys.js.gz +0 -0
  55. package/build/client/_app/immutable/nodes/{2.MSrEo_3A.js → 2.BGhOXg8i.js} +1 -1
  56. package/build/client/_app/immutable/nodes/2.BGhOXg8i.js.br +0 -0
  57. package/build/client/_app/immutable/nodes/2.BGhOXg8i.js.gz +0 -0
  58. package/build/client/_app/immutable/nodes/{20.DBB_f9Te.js → 20.i1Sp3qRa.js} +1 -1
  59. package/build/client/_app/immutable/nodes/20.i1Sp3qRa.js.br +0 -0
  60. package/build/client/_app/immutable/nodes/20.i1Sp3qRa.js.gz +0 -0
  61. package/build/client/_app/immutable/nodes/{21.Jgkp9z8Y.js → 21.D3Lp9AqE.js} +2 -2
  62. package/build/client/_app/immutable/nodes/21.D3Lp9AqE.js.br +0 -0
  63. package/build/client/_app/immutable/nodes/21.D3Lp9AqE.js.gz +0 -0
  64. package/build/client/_app/immutable/nodes/{22.D42DZ008.js → 22.D5nqnzlG.js} +1 -1
  65. package/build/client/_app/immutable/nodes/22.D5nqnzlG.js.br +0 -0
  66. package/build/client/_app/immutable/nodes/22.D5nqnzlG.js.gz +0 -0
  67. package/build/client/_app/immutable/nodes/{24.D8reOFlb.js → 24.oqBL5J12.js} +1 -1
  68. package/build/client/_app/immutable/nodes/24.oqBL5J12.js.br +0 -0
  69. package/build/client/_app/immutable/nodes/24.oqBL5J12.js.gz +0 -0
  70. package/build/client/_app/immutable/nodes/{25.BOB3lBr0.js → 25.0IV8s2xX.js} +1 -1
  71. package/build/client/_app/immutable/nodes/25.0IV8s2xX.js.br +0 -0
  72. package/build/client/_app/immutable/nodes/25.0IV8s2xX.js.gz +0 -0
  73. package/build/client/_app/immutable/nodes/{28.DbBbdy20.js → 28.uC1Xk6WJ.js} +1 -1
  74. package/build/client/_app/immutable/nodes/28.uC1Xk6WJ.js.br +0 -0
  75. package/build/client/_app/immutable/nodes/28.uC1Xk6WJ.js.gz +0 -0
  76. package/build/client/_app/immutable/nodes/{29.S258JhtV.js → 29.BGsApASb.js} +1 -1
  77. package/build/client/_app/immutable/nodes/29.BGsApASb.js.br +0 -0
  78. package/build/client/_app/immutable/nodes/29.BGsApASb.js.gz +0 -0
  79. package/build/client/_app/immutable/nodes/{3.RzJ0Db4k.js → 3.CBEmUkKu.js} +1 -1
  80. package/build/client/_app/immutable/nodes/3.CBEmUkKu.js.br +0 -0
  81. package/build/client/_app/immutable/nodes/3.CBEmUkKu.js.gz +0 -0
  82. package/build/client/_app/immutable/nodes/{30.B4QJcyTH.js → 30.CNdRLhFz.js} +1 -1
  83. package/build/client/_app/immutable/nodes/30.CNdRLhFz.js.br +0 -0
  84. package/build/client/_app/immutable/nodes/30.CNdRLhFz.js.gz +0 -0
  85. package/build/client/_app/immutable/nodes/{31.CFNhxIOf.js → 31.uAKGPy2Q.js} +1 -1
  86. package/build/client/_app/immutable/nodes/31.uAKGPy2Q.js.br +0 -0
  87. package/build/client/_app/immutable/nodes/31.uAKGPy2Q.js.gz +0 -0
  88. package/build/client/_app/immutable/nodes/{33.Bdn-BdjA.js → 33.DFTBdfag.js} +1 -1
  89. package/build/client/_app/immutable/nodes/33.DFTBdfag.js.br +0 -0
  90. package/build/client/_app/immutable/nodes/33.DFTBdfag.js.gz +0 -0
  91. package/build/client/_app/immutable/nodes/{5.CvvYT2I_.js → 5.C5IUZLSG.js} +1 -1
  92. package/build/client/_app/immutable/nodes/5.C5IUZLSG.js.br +3 -0
  93. package/build/client/_app/immutable/nodes/5.C5IUZLSG.js.gz +0 -0
  94. package/build/client/_app/immutable/nodes/{6.CuP3PuQf.js → 6.D6Lv824Z.js} +1 -1
  95. package/build/client/_app/immutable/nodes/6.D6Lv824Z.js.br +0 -0
  96. package/build/client/_app/immutable/nodes/6.D6Lv824Z.js.gz +0 -0
  97. package/build/client/_app/immutable/nodes/{7.DyEE14eN.js → 7.DNTCMZZo.js} +1 -1
  98. package/build/client/_app/immutable/nodes/7.DNTCMZZo.js.br +0 -0
  99. package/build/client/_app/immutable/nodes/7.DNTCMZZo.js.gz +0 -0
  100. package/build/client/_app/immutable/nodes/{8.CUjeSVKZ.js → 8.ZZfeAr6G.js} +1 -1
  101. package/build/client/_app/immutable/nodes/8.ZZfeAr6G.js.br +0 -0
  102. package/build/client/_app/immutable/nodes/8.ZZfeAr6G.js.gz +0 -0
  103. package/build/client/_app/immutable/nodes/{9.BYQI2zVi.js → 9.ep7NU1In.js} +1 -1
  104. package/build/client/_app/immutable/nodes/9.ep7NU1In.js.br +0 -0
  105. package/build/client/_app/immutable/nodes/9.ep7NU1In.js.gz +0 -0
  106. package/build/client/_app/version.json +1 -1
  107. package/build/client/_app/version.json.br +0 -0
  108. package/build/client/_app/version.json.gz +0 -0
  109. package/build/handler.js +4 -4
  110. package/build/index.js +4 -4
  111. package/build/server/chunks/chunks/{AppHeader.js-l5eU3Q7z.js → AppHeader.js-C7-0gWg-.js} +3 -3
  112. package/build/server/chunks/chunks/{AppHeader.js-l5eU3Q7z.js.map → AppHeader.js-C7-0gWg-.js.map} +1 -1
  113. package/build/server/chunks/chunks/{SettingsMenu.js-DoHDbdTn.js → SettingsMenu.js-BjLWMAXR.js} +3 -3
  114. package/build/server/chunks/chunks/{SettingsMenu.js-DoHDbdTn.js.map → SettingsMenu.js-BjLWMAXR.js.map} +1 -1
  115. package/build/server/chunks/chunks/{SideNav.js-C5UYU-Yc.js → SideNav.js-BViz-8Rq.js} +2 -2
  116. package/build/server/chunks/chunks/{SideNav.js-C5UYU-Yc.js.map → SideNav.js-BViz-8Rq.js.map} +1 -1
  117. package/build/server/chunks/chunks/{client.js-B6kyzbcb.js → client.js-DZ5yHZ_u.js} +2 -2
  118. package/build/server/chunks/chunks/{client.js-B6kyzbcb.js.map → client.js-DZ5yHZ_u.js.map} +1 -1
  119. package/build/server/chunks/chunks/{engine.server.js-BvIpzyKd.js → engine.server.js-qoHdc5Q0.js} +18 -3
  120. package/build/server/chunks/chunks/engine.server.js-qoHdc5Q0.js.map +1 -0
  121. package/build/server/chunks/chunks/forms.js-BxbgaPtt.js +2 -0
  122. package/build/server/chunks/chunks/forms.js-BxbgaPtt.js.map +1 -0
  123. package/build/server/chunks/chunks/{handlers.js-Bnwbo5I4.js → handlers.js-Be7MGVko.js} +2 -2
  124. package/build/server/chunks/chunks/{handlers.js-Bnwbo5I4.js.map → handlers.js-Be7MGVko.js.map} +1 -1
  125. package/build/server/chunks/chunks/internal.js-ClJtIfiy.js.map +1 -1
  126. package/build/server/chunks/chunks/{internal2.js-DjTYEpjQ.js → internal2.js-DPy3-ScF.js} +2 -2
  127. package/build/server/chunks/chunks/{internal2.js-DjTYEpjQ.js.map → internal2.js-DPy3-ScF.js.map} +1 -1
  128. package/build/server/chunks/chunks/navigation.js-BxbgaPtt.js +2 -0
  129. package/build/server/chunks/chunks/navigation.js-BxbgaPtt.js.map +1 -0
  130. package/build/server/chunks/chunks/{package.js-D9xXD1Q_.js → package.js-VIfF3HO1.js} +2 -2
  131. package/build/server/chunks/chunks/{package.js-D9xXD1Q_.js.map → package.js-VIfF3HO1.js.map} +1 -1
  132. package/build/server/chunks/chunks/{paths.js-CG3tmqeo.js → paths.js-BqwpMKlA.js} +2 -2
  133. package/build/server/chunks/chunks/{paths.js-CG3tmqeo.js.map → paths.js-BqwpMKlA.js.map} +1 -1
  134. package/build/server/chunks/chunks/{solve.server.js-CjvwX-MW.js → solve.server.js-C87D54Ty.js} +2 -2
  135. package/build/server/chunks/chunks/{solve.server.js-CjvwX-MW.js.map → solve.server.js-C87D54Ty.js.map} +1 -1
  136. package/build/server/chunks/chunks/{state.js-BUoQTTL0.js → state.js-DMk5dEia.js} +2 -2
  137. package/build/server/chunks/chunks/{state.js-BUoQTTL0.js.map → state.js-DMk5dEia.js.map} +1 -1
  138. package/build/server/chunks/chunks/{stores.js-DcddBAKK.js → stores.js-CmsZzrkh.js} +2 -2
  139. package/build/server/chunks/chunks/{stores.js-DcddBAKK.js.map → stores.js-CmsZzrkh.js.map} +1 -1
  140. package/build/server/chunks/entries/endpoints/api/admin/compute/{_server.ts.js-DeYdqczc.js → _server.ts.js-CwHiigk0.js} +2 -2
  141. package/build/server/chunks/entries/endpoints/api/admin/compute/{_server.ts.js-DeYdqczc.js.map → _server.ts.js-CwHiigk0.js.map} +1 -1
  142. package/build/server/chunks/entries/endpoints/api/admin/compute/actions/{_server.ts.js-By1_1Jg_.js → _server.ts.js-BHDoi_b2.js} +30 -2
  143. package/build/server/chunks/entries/endpoints/api/admin/compute/actions/_server.ts.js-BHDoi_b2.js.map +1 -0
  144. package/build/server/chunks/entries/endpoints/api/diag/throughput/{_server.ts.js-BrVkVqbR.js → _server.ts.js-D7T_hcUe.js} +2 -2
  145. package/build/server/chunks/entries/endpoints/api/diag/throughput/{_server.ts.js-BrVkVqbR.js.map → _server.ts.js-D7T_hcUe.js.map} +1 -1
  146. package/build/server/chunks/entries/endpoints/api/v1/compute/{_server.ts.js-DQt5tUgv.js → _server.ts.js-DkrgwE6P.js} +3 -3
  147. package/build/server/chunks/entries/endpoints/api/v1/compute/{_server.ts.js-DQt5tUgv.js.map → _server.ts.js-DkrgwE6P.js.map} +1 -1
  148. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/{_server.ts.js-B9c-u9bU.js → _server.ts.js-bXZaNmzV.js} +3 -3
  149. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/{_server.ts.js-B9c-u9bU.js.map → _server.ts.js-bXZaNmzV.js.map} +1 -1
  150. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/image/{_server.ts.js-XdrMQe-x.js → _server.ts.js-DGUNa-ev.js} +3 -3
  151. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/image/{_server.ts.js-XdrMQe-x.js.map → _server.ts.js-DGUNa-ev.js.map} +1 -1
  152. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/publish/{_server.ts.js-CgL9q1f_.js → _server.ts.js-gF3zvOmk.js} +3 -3
  153. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/publish/{_server.ts.js-CgL9q1f_.js.map → _server.ts.js-gF3zvOmk.js.map} +1 -1
  154. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/schema/{_server.ts.js-DRuiOEQN.js → _server.ts.js-BNuLLqCt.js} +3 -3
  155. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/schema/{_server.ts.js-DRuiOEQN.js.map → _server.ts.js-BNuLLqCt.js.map} +1 -1
  156. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/share-links/_linkId_/{_server.ts.js-B-69nPNy.js → _server.ts.js-CTtzpVhd.js} +3 -3
  157. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/share-links/_linkId_/{_server.ts.js-B-69nPNy.js.map → _server.ts.js-CTtzpVhd.js.map} +1 -1
  158. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/share-links/{_server.ts.js-me0FjZ4h.js → _server.ts.js-BO7LPnX9.js} +3 -3
  159. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/share-links/{_server.ts.js-me0FjZ4h.js.map → _server.ts.js-BO7LPnX9.js.map} +1 -1
  160. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/solve/{_server.ts.js-BJWpoAJD.js → _server.ts.js-CbRSSYEa.js} +3 -3
  161. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/solve/{_server.ts.js-BJWpoAJD.js.map → _server.ts.js-CbRSSYEa.js.map} +1 -1
  162. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/{_server.ts.js-CLCrOpWF.js → _server.ts.js-rUAgK4dT.js} +3 -3
  163. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/{_server.ts.js-CLCrOpWF.js.map → _server.ts.js-rUAgK4dT.js.map} +1 -1
  164. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_versionId_/{_server.ts.js-BqeVicYp.js → _server.ts.js-B1gJHRAe.js} +3 -3
  165. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_versionId_/{_server.ts.js-BqeVicYp.js.map → _server.ts.js-B1gJHRAe.js.map} +1 -1
  166. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_versionId_/schema/{_server.ts.js-Cy_4aFGX.js → _server.ts.js-Bi60Ayu3.js} +3 -3
  167. package/build/server/chunks/entries/endpoints/api/v1/definitions/_guid_/versions/_versionId_/schema/{_server.ts.js-Cy_4aFGX.js.map → _server.ts.js-Bi60Ayu3.js.map} +1 -1
  168. package/build/server/chunks/entries/endpoints/api/v1/definitions/{_server.ts.js-DIfn8h7e.js → _server.ts.js-8AcHVYvx.js} +3 -3
  169. package/build/server/chunks/entries/endpoints/api/v1/definitions/{_server.ts.js-DIfn8h7e.js.map → _server.ts.js-8AcHVYvx.js.map} +1 -1
  170. package/build/server/chunks/entries/endpoints/api/v1/me/{_server.ts.js-Y6XMk6UN.js → _server.ts.js-BSiBuFhF.js} +3 -3
  171. package/build/server/chunks/entries/endpoints/api/v1/me/{_server.ts.js-Y6XMk6UN.js.map → _server.ts.js-BSiBuFhF.js.map} +1 -1
  172. package/build/server/chunks/entries/endpoints/api/v1/me/starred/_guid_/{_server.ts.js-DSDHjvxc.js → _server.ts.js-zTVuI16z.js} +3 -3
  173. package/build/server/chunks/entries/endpoints/api/v1/me/starred/_guid_/{_server.ts.js-DSDHjvxc.js.map → _server.ts.js-zTVuI16z.js.map} +1 -1
  174. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/{_server.ts.js-BlULPmZr.js → _server.ts.js-CczJwF-j.js} +3 -3
  175. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/{_server.ts.js-BlULPmZr.js.map → _server.ts.js-CczJwF-j.js.map} +1 -1
  176. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/assets/_kind_/{_server.ts.js-UHOIMMkn.js → _server.ts.js-BNwE7hZQ.js} +3 -3
  177. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/assets/_kind_/{_server.ts.js-UHOIMMkn.js.map → _server.ts.js-BNwE7hZQ.js.map} +1 -1
  178. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/compute/{_server.ts.js-CvL-1aLh.js → _server.ts.js-D9pAIdef.js} +3 -3
  179. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/compute/{_server.ts.js-CvL-1aLh.js.map → _server.ts.js-D9pAIdef.js.map} +1 -1
  180. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_id_/{_server.ts.js-Fau0TTm4.js → _server.ts.js-BGnkXGyr.js} +3 -3
  181. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_id_/{_server.ts.js-Fau0TTm4.js.map → _server.ts.js-BGnkXGyr.js.map} +1 -1
  182. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_id_/resend/{_server.ts.js-DFMYOPnz.js → _server.ts.js-FMeAfcsI.js} +3 -3
  183. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/_id_/resend/{_server.ts.js-DFMYOPnz.js.map → _server.ts.js-FMeAfcsI.js.map} +1 -1
  184. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/{_server.ts.js-CDSkHMs7.js → _server.ts.js-BrXHPEDL.js} +3 -3
  185. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/invites/{_server.ts.js-CDSkHMs7.js.map → _server.ts.js-BrXHPEDL.js.map} +1 -1
  186. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/members/{_server.ts.js-r7K8qlTp.js → _server.ts.js-BVoPWjDd.js} +3 -3
  187. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/members/{_server.ts.js-r7K8qlTp.js.map → _server.ts.js-BVoPWjDd.js.map} +1 -1
  188. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/members/_userId_/{_server.ts.js-CTN0TawY.js → _server.ts.js-BBsqU3KI.js} +3 -3
  189. package/build/server/chunks/entries/endpoints/api/v1/orgs/_orgId_/members/_userId_/{_server.ts.js-CTN0TawY.js.map → _server.ts.js-BBsqU3KI.js.map} +1 -1
  190. package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/{_server.ts.js-ZZfxa5d0.js → _server.ts.js-Kc1iq91R.js} +3 -3
  191. package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/{_server.ts.js-ZZfxa5d0.js.map → _server.ts.js-Kc1iq91R.js.map} +1 -1
  192. package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/members/{_server.ts.js-B6n2XnwS.js → _server.ts.js-DarqauaS.js} +3 -3
  193. package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/members/{_server.ts.js-B6n2XnwS.js.map → _server.ts.js-DarqauaS.js.map} +1 -1
  194. package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/members/_userId_/{_server.ts.js-B-fo2qya.js → _server.ts.js-UfoBH4i2.js} +3 -3
  195. package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/members/_userId_/{_server.ts.js-B-fo2qya.js.map → _server.ts.js-UfoBH4i2.js.map} +1 -1
  196. package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/reclaim/{_server.ts.js-DvE1YEv2.js → _server.ts.js-D4Hr0Ahk.js} +3 -3
  197. package/build/server/chunks/entries/endpoints/api/v1/projects/_id_/reclaim/{_server.ts.js-DvE1YEv2.js.map → _server.ts.js-D4Hr0Ahk.js.map} +1 -1
  198. package/build/server/chunks/entries/endpoints/api/v1/projects/{_server.ts.js-Bu3TPOXO.js → _server.ts.js-C-WOjeB8.js} +3 -3
  199. package/build/server/chunks/entries/endpoints/api/v1/projects/{_server.ts.js-Bu3TPOXO.js.map → _server.ts.js-C-WOjeB8.js.map} +1 -1
  200. package/build/server/chunks/entries/pages/{_error.svelte.js-8wWjYBAE.js → _error.svelte.js-BM-nVZ0r.js} +4 -4
  201. package/build/server/chunks/entries/pages/{_error.svelte.js-8wWjYBAE.js.map → _error.svelte.js-BM-nVZ0r.js.map} +1 -1
  202. package/build/server/chunks/entries/pages/{_page.svelte.js-CcUvgO7S.js → _page.svelte.js-CZjvvlfK.js} +6 -6
  203. package/build/server/chunks/entries/pages/{_page.svelte.js-CcUvgO7S.js.map → _page.svelte.js-CZjvvlfK.js.map} +1 -1
  204. package/build/server/chunks/entries/pages/accept-invite/{_page.svelte.js-H_iu_r6v.js → _page.svelte.js-Bn8rAcFJ.js} +4 -4
  205. package/build/server/chunks/entries/pages/accept-invite/{_page.svelte.js-H_iu_r6v.js.map → _page.svelte.js-Bn8rAcFJ.js.map} +1 -1
  206. package/build/server/chunks/entries/pages/admin/{_error.svelte.js-A2PrM82d.js → _error.svelte.js-_pIY8GZt.js} +4 -4
  207. package/build/server/chunks/entries/pages/admin/{_error.svelte.js-A2PrM82d.js.map → _error.svelte.js-_pIY8GZt.js.map} +1 -1
  208. package/build/server/chunks/entries/pages/admin/{_layout.svelte.js-CEmX0ctx.js → _layout.svelte.js-kYHWUUUk.js} +7 -7
  209. package/build/server/chunks/entries/pages/admin/{_layout.svelte.js-CEmX0ctx.js.map → _layout.svelte.js-kYHWUUUk.js.map} +1 -1
  210. package/build/server/chunks/entries/pages/admin/{_page.server.ts.js-DQnbHD9m.js → _page.server.ts.js-BW7lmmAh.js} +2 -2
  211. package/build/server/chunks/entries/pages/admin/{_page.server.ts.js-DQnbHD9m.js.map → _page.server.ts.js-BW7lmmAh.js.map} +1 -1
  212. package/build/server/chunks/entries/pages/admin/{_page.svelte.js-DFeZdd87.js → _page.svelte.js-DU54dWBG.js} +4 -4
  213. package/build/server/chunks/entries/pages/admin/{_page.svelte.js-DFeZdd87.js.map → _page.svelte.js-DU54dWBG.js.map} +1 -1
  214. package/build/server/chunks/entries/pages/admin/compute/{_page.server.ts.js-D0kp6PWn.js → _page.server.ts.js-bJIqw7I0.js} +2 -2
  215. package/build/server/chunks/entries/pages/admin/compute/{_page.server.ts.js-D0kp6PWn.js.map → _page.server.ts.js-bJIqw7I0.js.map} +1 -1
  216. package/build/server/chunks/entries/pages/admin/compute/{_page.svelte.js-CYFLCvL-.js → _page.svelte.js-CVNUfm2w.js} +69 -8
  217. package/build/server/chunks/entries/pages/admin/compute/_page.svelte.js-CVNUfm2w.js.map +1 -0
  218. package/build/server/chunks/entries/pages/admin/projects/_id_/{_page.svelte.js-CCBbU7qv.js → _page.svelte.js-Cyjs-5ff.js} +3 -3
  219. package/build/server/chunks/entries/pages/admin/projects/_id_/{_page.svelte.js-CCBbU7qv.js.map → _page.svelte.js-Cyjs-5ff.js.map} +1 -1
  220. package/build/server/chunks/entries/pages/admin/projects/{_page.svelte.js-Bkkd8GD6.js → _page.svelte.js-Bx0EZ0TV.js} +3 -3
  221. package/build/server/chunks/entries/pages/admin/projects/{_page.svelte.js-Bkkd8GD6.js.map → _page.svelte.js-Bx0EZ0TV.js.map} +1 -1
  222. package/build/server/chunks/entries/pages/admin/system/{_page.server.ts.js-D6Fpu7na.js → _page.server.ts.js-Bvx1HC3R.js} +2 -2
  223. package/build/server/chunks/entries/pages/admin/system/{_page.server.ts.js-D6Fpu7na.js.map → _page.server.ts.js-Bvx1HC3R.js.map} +1 -1
  224. package/build/server/chunks/entries/pages/admin/system/{_page.svelte.js-AJ46M2ES.js → _page.svelte.js-Dhsls68T.js} +3 -3
  225. package/build/server/chunks/entries/pages/admin/system/{_page.svelte.js-AJ46M2ES.js.map → _page.svelte.js-Dhsls68T.js.map} +1 -1
  226. package/build/server/chunks/entries/pages/admin/users/{_page.svelte.js-DjCwPBJI.js → _page.svelte.js-DaABJIY5.js} +3 -3
  227. package/build/server/chunks/entries/pages/admin/users/{_page.svelte.js-DjCwPBJI.js.map → _page.svelte.js-DaABJIY5.js.map} +1 -1
  228. package/build/server/chunks/entries/pages/auth/email/sent/{_page.svelte.js-Rm7eqPCP.js → _page.svelte.js-BTuy0dz7.js} +4 -4
  229. package/build/server/chunks/entries/pages/auth/email/sent/{_page.svelte.js-Rm7eqPCP.js.map → _page.svelte.js-BTuy0dz7.js.map} +1 -1
  230. package/build/server/chunks/entries/pages/docs/api/{_page.svelte.js-BVQfZ0Dd.js → _page.svelte.js-BopOmuh2.js} +3 -3
  231. package/build/server/chunks/entries/pages/docs/api/{_page.svelte.js-BVQfZ0Dd.js.map → _page.svelte.js-BopOmuh2.js.map} +1 -1
  232. package/build/server/chunks/entries/pages/library/_guid_/{_page.server.ts.js-GBu_874l.js → _page.server.ts.js-CO1DH33y.js} +2 -2
  233. package/build/server/chunks/entries/pages/library/_guid_/{_page.server.ts.js-GBu_874l.js.map → _page.server.ts.js-CO1DH33y.js.map} +1 -1
  234. package/build/server/chunks/entries/pages/library/_guid_/{_page.svelte.js-BqY1bOco.js → _page.svelte.js-CnLgXqlI.js} +5 -5
  235. package/build/server/chunks/entries/pages/library/_guid_/{_page.svelte.js-BqY1bOco.js.map → _page.svelte.js-CnLgXqlI.js.map} +1 -1
  236. package/build/server/chunks/entries/pages/library/{_page.svelte.js-Bj39JQj_.js → _page.svelte.js-xH5ciilc.js} +6 -6
  237. package/build/server/chunks/entries/pages/library/{_page.svelte.js-Bj39JQj_.js.map → _page.svelte.js-xH5ciilc.js.map} +1 -1
  238. package/build/server/chunks/entries/pages/login/{_page.svelte.js-DZ4whkuu.js → _page.svelte.js-O4sI9d8p.js} +4 -4
  239. package/build/server/chunks/entries/pages/login/{_page.svelte.js-DZ4whkuu.js.map → _page.svelte.js-O4sI9d8p.js.map} +1 -1
  240. package/build/server/chunks/entries/pages/projects/{_layout.svelte.js-DjsEOFDp.js → _layout.svelte.js-DIH4NLjj.js} +6 -6
  241. package/build/server/chunks/entries/pages/projects/{_layout.svelte.js-DjsEOFDp.js.map → _layout.svelte.js-DIH4NLjj.js.map} +1 -1
  242. package/build/server/chunks/entries/pages/projects/{_page.svelte.js-DfHRFGKI.js → _page.svelte.js-BGp4u5AC.js} +4 -4
  243. package/build/server/chunks/entries/pages/projects/{_page.svelte.js-DfHRFGKI.js.map → _page.svelte.js-BGp4u5AC.js.map} +1 -1
  244. package/build/server/chunks/entries/pages/setup/{_page.svelte.js-Cj-FQK8p.js → _page.svelte.js-BrqGvYjU.js} +4 -4
  245. package/build/server/chunks/entries/pages/setup/{_page.svelte.js-Cj-FQK8p.js.map → _page.svelte.js-BrqGvYjU.js.map} +1 -1
  246. package/build/server/chunks/entries/pages/team/{_layout.svelte.js-k39exnUu.js → _layout.svelte.js-BPaXzMHU.js} +8 -8
  247. package/build/server/chunks/entries/pages/team/{_layout.svelte.js-k39exnUu.js.map → _layout.svelte.js-BPaXzMHU.js.map} +1 -1
  248. package/build/server/chunks/entries/pages/team/compute/{_page.svelte.js-DTW-JwVq.js → _page.svelte.js-ClAfhyVc.js} +4 -4
  249. package/build/server/chunks/entries/pages/team/compute/{_page.svelte.js-DTW-JwVq.js.map → _page.svelte.js-ClAfhyVc.js.map} +1 -1
  250. package/build/server/chunks/entries/pages/team/members/{_page.svelte.js-Bqfq7Ap6.js → _page.svelte.js-BVTKeE8v.js} +3 -3
  251. package/build/server/chunks/entries/pages/team/members/{_page.svelte.js-Bqfq7Ap6.js.map → _page.svelte.js-BVTKeE8v.js.map} +1 -1
  252. package/build/server/chunks/entries/pages/team/projects/{_page.svelte.js-CsndEZLl.js → _page.svelte.js-8C2RnMjF.js} +3 -3
  253. package/build/server/chunks/entries/pages/team/projects/{_page.svelte.js-CsndEZLl.js.map → _page.svelte.js-8C2RnMjF.js.map} +1 -1
  254. package/build/server/chunks/entries/pages/team/reclaim/{_page.svelte.js-DNyMMl_1.js → _page.svelte.js-CjQSU5-x.js} +3 -3
  255. package/build/server/chunks/entries/pages/team/reclaim/{_page.svelte.js-DNyMMl_1.js.map → _page.svelte.js-CjQSU5-x.js.map} +1 -1
  256. package/build/server/chunks/entries/pages/team/shares/{_page.svelte.js-ybQpjAxm.js → _page.svelte.js-DRjOR6nf.js} +3 -3
  257. package/build/server/chunks/entries/pages/team/shares/{_page.svelte.js-ybQpjAxm.js.map → _page.svelte.js-DRjOR6nf.js.map} +1 -1
  258. package/build/server/chunks/{handler-C0uHF5Uf.js → handler-DCYPzYCM.js} +3 -3
  259. package/build/server/chunks/{handler-C0uHF5Uf.js.map → handler-DCYPzYCM.js.map} +1 -1
  260. package/build/server/chunks/{index.js-zgWzXcN1.js → index.js-BlZI7QAl.js} +2 -2
  261. package/build/server/chunks/{index.js-zgWzXcN1.js.map → index.js-BlZI7QAl.js.map} +1 -1
  262. package/build/server/chunks/{manifest.js-CEn5_oKp.js → manifest.js-DfDUXZZb.js} +57 -57
  263. package/build/server/chunks/{manifest.js-CEn5_oKp.js.map → manifest.js-DfDUXZZb.js.map} +1 -1
  264. package/build/server/chunks/nodes/{1.js-DYMJQVXb.js → 1.js-0k4Q1CUa.js} +3 -3
  265. package/build/server/chunks/nodes/{1.js-DYMJQVXb.js.map → 1.js-0k4Q1CUa.js.map} +1 -1
  266. package/build/server/chunks/nodes/{11.js-fhegAQaC.js → 11.js-BVMePxTN.js} +5 -5
  267. package/build/server/chunks/nodes/{11.js-fhegAQaC.js.map → 11.js-BVMePxTN.js.map} +1 -1
  268. package/build/server/chunks/nodes/{13.js-CYeHXH62.js → 13.js-DT3ER-mA.js} +3 -3
  269. package/build/server/chunks/nodes/{13.js-CYeHXH62.js.map → 13.js-DT3ER-mA.js.map} +1 -1
  270. package/build/server/chunks/nodes/{14.js-dEul16UA.js → 14.js-C3mWRw82.js} +3 -3
  271. package/build/server/chunks/nodes/{14.js-dEul16UA.js.map → 14.js-C3mWRw82.js.map} +1 -1
  272. package/build/server/chunks/nodes/{15.js-CDXio7Y4.js → 15.js-ClHtLekr.js} +5 -5
  273. package/build/server/chunks/nodes/{15.js-CDXio7Y4.js.map → 15.js-ClHtLekr.js.map} +1 -1
  274. package/build/server/chunks/nodes/{16.js-vy559aHs.js → 16.js-CKmU3T7x.js} +3 -3
  275. package/build/server/chunks/nodes/{16.js-vy559aHs.js.map → 16.js-CKmU3T7x.js.map} +1 -1
  276. package/build/server/chunks/nodes/{17.js-CwUy643m.js → 17.js-DDXCK7zX.js} +3 -3
  277. package/build/server/chunks/nodes/{17.js-CwUy643m.js.map → 17.js-DDXCK7zX.js.map} +1 -1
  278. package/build/server/chunks/nodes/{19.js-Do7i5eaR.js → 19.js-B1CvDggk.js} +3 -3
  279. package/build/server/chunks/nodes/{19.js-Do7i5eaR.js.map → 19.js-B1CvDggk.js.map} +1 -1
  280. package/build/server/chunks/nodes/{2.js-BXu7y1Xy.js → 2.js-DPOaiQc8.js} +3 -3
  281. package/build/server/chunks/nodes/{2.js-BXu7y1Xy.js.map → 2.js-DPOaiQc8.js.map} +1 -1
  282. package/build/server/chunks/nodes/{20.js-Cp2seFGs.js → 20.js-CHfw5XxR.js} +3 -3
  283. package/build/server/chunks/nodes/{20.js-Cp2seFGs.js.map → 20.js-CHfw5XxR.js.map} +1 -1
  284. package/build/server/chunks/nodes/{21.js-DOp_6rrP.js → 21.js-CEhXbvED.js} +5 -5
  285. package/build/server/chunks/nodes/{21.js-DOp_6rrP.js.map → 21.js-CEhXbvED.js.map} +1 -1
  286. package/build/server/chunks/nodes/{22.js-KjU4sEZJ.js → 22.js-CKYcnK6_.js} +3 -3
  287. package/build/server/chunks/nodes/{22.js-KjU4sEZJ.js.map → 22.js-CKYcnK6_.js.map} +1 -1
  288. package/build/server/chunks/nodes/{24.js-AJ92ZB8v.js → 24.js-BuUXZPiJ.js} +3 -3
  289. package/build/server/chunks/nodes/{24.js-AJ92ZB8v.js.map → 24.js-BuUXZPiJ.js.map} +1 -1
  290. package/build/server/chunks/nodes/{25.js-xeByPyE3.js → 25.js-Cs3OrJTb.js} +3 -3
  291. package/build/server/chunks/nodes/{25.js-xeByPyE3.js.map → 25.js-Cs3OrJTb.js.map} +1 -1
  292. package/build/server/chunks/nodes/{28.js-BWi16-3i.js → 28.js-7JQUcwBF.js} +3 -3
  293. package/build/server/chunks/nodes/{28.js-BWi16-3i.js.map → 28.js-7JQUcwBF.js.map} +1 -1
  294. package/build/server/chunks/nodes/{29.js-XmmelJr_.js → 29.js-CX6C8odg.js} +3 -3
  295. package/build/server/chunks/nodes/{29.js-XmmelJr_.js.map → 29.js-CX6C8odg.js.map} +1 -1
  296. package/build/server/chunks/nodes/{3.js-shK76PEw.js → 3.js-D0qrG17_.js} +3 -3
  297. package/build/server/chunks/nodes/{3.js-shK76PEw.js.map → 3.js-D0qrG17_.js.map} +1 -1
  298. package/build/server/chunks/nodes/{30.js-C_K39wnr.js → 30.js-hXqeecIA.js} +3 -3
  299. package/build/server/chunks/nodes/{30.js-C_K39wnr.js.map → 30.js-hXqeecIA.js.map} +1 -1
  300. package/build/server/chunks/nodes/{31.js-TlgbkCWV.js → 31.js-fX9eHsYv.js} +3 -3
  301. package/build/server/chunks/nodes/{31.js-TlgbkCWV.js.map → 31.js-fX9eHsYv.js.map} +1 -1
  302. package/build/server/chunks/nodes/{33.js-CawPxL7z.js → 33.js-CjVohrVM.js} +3 -3
  303. package/build/server/chunks/nodes/{33.js-CawPxL7z.js.map → 33.js-CjVohrVM.js.map} +1 -1
  304. package/build/server/chunks/nodes/{5.js-aIl-zEEW.js → 5.js-vY20Hgh4.js} +3 -3
  305. package/build/server/chunks/nodes/{5.js-aIl-zEEW.js.map → 5.js-vY20Hgh4.js.map} +1 -1
  306. package/build/server/chunks/nodes/{6.js-jXDkV9p2.js → 6.js-BYm5Y6p2.js} +3 -3
  307. package/build/server/chunks/nodes/{6.js-jXDkV9p2.js.map → 6.js-BYm5Y6p2.js.map} +1 -1
  308. package/build/server/chunks/nodes/{7.js-CHYZ92Kz.js → 7.js-CcyUjOk-.js} +3 -3
  309. package/build/server/chunks/nodes/{7.js-CHYZ92Kz.js.map → 7.js-CcyUjOk-.js.map} +1 -1
  310. package/build/server/chunks/nodes/{8.js-DPcnPjHj.js → 8.js-CJUqis2e.js} +3 -3
  311. package/build/server/chunks/nodes/{8.js-DPcnPjHj.js.map → 8.js-CJUqis2e.js.map} +1 -1
  312. package/build/server/chunks/nodes/{9.js-Cbo2i-US.js → 9.js-C2M9uKjl.js} +5 -5
  313. package/build/server/chunks/nodes/{9.js-Cbo2i-US.js.map → 9.js-C2M9uKjl.js.map} +1 -1
  314. package/package.json +8 -8
  315. package/build/client/_app/immutable/chunks/3g59Qd6G.js.br +0 -0
  316. package/build/client/_app/immutable/chunks/3g59Qd6G.js.gz +0 -0
  317. package/build/client/_app/immutable/chunks/CsdA-c5v.js.br +0 -0
  318. package/build/client/_app/immutable/chunks/CsdA-c5v.js.gz +0 -0
  319. package/build/client/_app/immutable/chunks/Ct0B1C-6.js.br +0 -0
  320. package/build/client/_app/immutable/chunks/Ct0B1C-6.js.gz +0 -0
  321. package/build/client/_app/immutable/chunks/D9mrwhjI.js.br +0 -0
  322. package/build/client/_app/immutable/chunks/D9mrwhjI.js.gz +0 -0
  323. package/build/client/_app/immutable/chunks/DDZHb50K.js.br +0 -0
  324. package/build/client/_app/immutable/chunks/DDZHb50K.js.gz +0 -0
  325. package/build/client/_app/immutable/chunks/DPMlkLnX.js.br +0 -3
  326. package/build/client/_app/immutable/chunks/DPMlkLnX.js.gz +0 -0
  327. package/build/client/_app/immutable/chunks/R7RfXtkr.js.br +0 -0
  328. package/build/client/_app/immutable/chunks/R7RfXtkr.js.gz +0 -0
  329. package/build/client/_app/immutable/chunks/RlomQNCr.js +0 -1
  330. package/build/client/_app/immutable/chunks/RlomQNCr.js.br +0 -2
  331. package/build/client/_app/immutable/chunks/RlomQNCr.js.gz +0 -0
  332. package/build/client/_app/immutable/entry/app.BMcWaHUc.js.br +0 -0
  333. package/build/client/_app/immutable/entry/app.BMcWaHUc.js.gz +0 -0
  334. package/build/client/_app/immutable/entry/start.BR7ivuzq.js +0 -1
  335. package/build/client/_app/immutable/entry/start.BR7ivuzq.js.br +0 -1
  336. package/build/client/_app/immutable/entry/start.BR7ivuzq.js.gz +0 -0
  337. package/build/client/_app/immutable/nodes/1.BgrhD8yg.js.br +0 -0
  338. package/build/client/_app/immutable/nodes/1.BgrhD8yg.js.gz +0 -0
  339. package/build/client/_app/immutable/nodes/11.DSnz7OuY.js +0 -3
  340. package/build/client/_app/immutable/nodes/11.DSnz7OuY.js.br +0 -0
  341. package/build/client/_app/immutable/nodes/11.DSnz7OuY.js.gz +0 -0
  342. package/build/client/_app/immutable/nodes/13.B2k79eQZ.js.br +0 -0
  343. package/build/client/_app/immutable/nodes/13.B2k79eQZ.js.gz +0 -0
  344. package/build/client/_app/immutable/nodes/14.CfEpmHVX.js.br +0 -0
  345. package/build/client/_app/immutable/nodes/14.CfEpmHVX.js.gz +0 -0
  346. package/build/client/_app/immutable/nodes/15.nl-fHTBN.js.br +0 -0
  347. package/build/client/_app/immutable/nodes/15.nl-fHTBN.js.gz +0 -0
  348. package/build/client/_app/immutable/nodes/16.DVzCWrup.js.br +0 -0
  349. package/build/client/_app/immutable/nodes/16.DVzCWrup.js.gz +0 -0
  350. package/build/client/_app/immutable/nodes/17.Bf6Oda11.js.br +0 -0
  351. package/build/client/_app/immutable/nodes/17.Bf6Oda11.js.gz +0 -0
  352. package/build/client/_app/immutable/nodes/19.CtApFLV7.js.br +0 -0
  353. package/build/client/_app/immutable/nodes/19.CtApFLV7.js.gz +0 -0
  354. package/build/client/_app/immutable/nodes/2.MSrEo_3A.js.br +0 -0
  355. package/build/client/_app/immutable/nodes/2.MSrEo_3A.js.gz +0 -0
  356. package/build/client/_app/immutable/nodes/20.DBB_f9Te.js.br +0 -0
  357. package/build/client/_app/immutable/nodes/20.DBB_f9Te.js.gz +0 -0
  358. package/build/client/_app/immutable/nodes/21.Jgkp9z8Y.js.br +0 -0
  359. package/build/client/_app/immutable/nodes/21.Jgkp9z8Y.js.gz +0 -0
  360. package/build/client/_app/immutable/nodes/22.D42DZ008.js.br +0 -0
  361. package/build/client/_app/immutable/nodes/22.D42DZ008.js.gz +0 -0
  362. package/build/client/_app/immutable/nodes/24.D8reOFlb.js.br +0 -0
  363. package/build/client/_app/immutable/nodes/24.D8reOFlb.js.gz +0 -0
  364. package/build/client/_app/immutable/nodes/25.BOB3lBr0.js.br +0 -0
  365. package/build/client/_app/immutable/nodes/25.BOB3lBr0.js.gz +0 -0
  366. package/build/client/_app/immutable/nodes/28.DbBbdy20.js.br +0 -0
  367. package/build/client/_app/immutable/nodes/28.DbBbdy20.js.gz +0 -0
  368. package/build/client/_app/immutable/nodes/29.S258JhtV.js.br +0 -0
  369. package/build/client/_app/immutable/nodes/29.S258JhtV.js.gz +0 -0
  370. package/build/client/_app/immutable/nodes/3.RzJ0Db4k.js.br +0 -0
  371. package/build/client/_app/immutable/nodes/3.RzJ0Db4k.js.gz +0 -0
  372. package/build/client/_app/immutable/nodes/30.B4QJcyTH.js.br +0 -0
  373. package/build/client/_app/immutable/nodes/30.B4QJcyTH.js.gz +0 -0
  374. package/build/client/_app/immutable/nodes/31.CFNhxIOf.js.br +0 -0
  375. package/build/client/_app/immutable/nodes/31.CFNhxIOf.js.gz +0 -0
  376. package/build/client/_app/immutable/nodes/33.Bdn-BdjA.js.br +0 -0
  377. package/build/client/_app/immutable/nodes/33.Bdn-BdjA.js.gz +0 -0
  378. package/build/client/_app/immutable/nodes/5.CvvYT2I_.js.br +0 -1
  379. package/build/client/_app/immutable/nodes/5.CvvYT2I_.js.gz +0 -0
  380. package/build/client/_app/immutable/nodes/6.CuP3PuQf.js.br +0 -0
  381. package/build/client/_app/immutable/nodes/6.CuP3PuQf.js.gz +0 -0
  382. package/build/client/_app/immutable/nodes/7.DyEE14eN.js.br +0 -0
  383. package/build/client/_app/immutable/nodes/7.DyEE14eN.js.gz +0 -0
  384. package/build/client/_app/immutable/nodes/8.CUjeSVKZ.js.br +0 -0
  385. package/build/client/_app/immutable/nodes/8.CUjeSVKZ.js.gz +0 -0
  386. package/build/client/_app/immutable/nodes/9.BYQI2zVi.js.br +0 -0
  387. package/build/client/_app/immutable/nodes/9.BYQI2zVi.js.gz +0 -0
  388. package/build/server/chunks/chunks/engine.server.js-BvIpzyKd.js.map +0 -1
  389. package/build/server/chunks/chunks/forms.js-CD_2z_-J.js +0 -2
  390. package/build/server/chunks/chunks/forms.js-CD_2z_-J.js.map +0 -1
  391. package/build/server/chunks/chunks/navigation.js-CD_2z_-J.js +0 -2
  392. package/build/server/chunks/chunks/navigation.js-CD_2z_-J.js.map +0 -1
  393. package/build/server/chunks/entries/endpoints/api/admin/compute/actions/_server.ts.js-By1_1Jg_.js.map +0 -1
  394. package/build/server/chunks/entries/pages/admin/compute/_page.svelte.js-CYFLCvL-.js.map +0 -1
@@ -1,3 +0,0 @@
1
- import{Bt as e,H as t,J as n,K as r,L as i,Lt as a,Mt as o,O as s,P as c,Q as l,Rt as u,U as d,V as f,Vt as p,_ as m,dt as h,ft as g,g as _,gt as v,it as y,j as b,jt as x,lt as S,mt as C,n as w,o as T,ot as E,pt as D,q as O,s as k,st as A,tt as j,v as ee,vt as M,w as N,xt as P,z as F}from"../chunks/BJr3_fzd.js";import{i as te}from"../chunks/CsdA-c5v.js";import"../chunks/xihTtKlq.js";import{i as I}from"../chunks/DlZ96M8I.js";import{n as L}from"../chunks/uEs1TBqf.js";import{t as R}from"../chunks/CxPNWG5P.js";import{t as ne}from"../chunks/CH79OQfl.js";import{t as re}from"../chunks/Kt9NbiMl.js";import{t as ie}from"../chunks/GnghUMa9.js";import{t as z}from"../chunks/BqEuA-Z7.js";import{t as ae}from"../chunks/BwN3gAty.js";import{t as oe}from"../chunks/ZT_LEMHt.js";import{t as se}from"../chunks/DHwu2YYq.js";import{t as ce}from"../chunks/Kh4cWZvP.js";import{t as le}from"../chunks/Eg7QSmtp.js";import{t as ue}from"../chunks/DwMfv5aD.js";import{t as B}from"../chunks/xldpSbJ4.js";import{n as de,t as fe}from"../chunks/CU86KVhA.js";import{n as V}from"../chunks/DhuzqlSG.js";import{t as pe}from"../chunks/DBYj-4Ic.js";import{t as me}from"../chunks/DqR8kuM6.js";import"../chunks/RlomQNCr.js";var H=new Set([`$$slots`,`$$events`,`$$legacy`]);function he(e,t){let n=T(t,H),r=[[`path`,{d:`M21 21H8a2 2 0 0 1-1.42-.587l-3.994-3.999a2 2 0 0 1 0-2.828l10-10a2 2 0 0 1 2.829 0l5.999 6a2 2 0 0 1 0 2.828L12.834 21`}],[`path`,{d:`m5.082 11.09 8.828 8.828`}]];L(e,k({name:`eraser`},()=>n,{get iconNode(){return r}}))}var U=new Set([`$$slots`,`$$events`,`$$legacy`]);function ge(e,t){let n=T(t,U),r=[[`path`,{d:`M12 2v10`}],[`path`,{d:`M18.4 6.6a9 9 0 1 1-12.77.04`}]];L(e,k({name:`power`},()=>n,{get iconNode(){return r}}))}var _e=6e4,ve=5e3;function ye(e){let t=M(C({state:`idle`,reachable:!1,ready:!1,rhinoVersion:null,computeVersion:null,selvaInstalled:!1,selvaVersion:null,plugins:{},activeChildren:null,idleSpanSeconds:null,failureSummary:null})),n=null,r=0,i=!1,a=!1;async function o(){if(i)return!1;try{let n=await fetch(`/api/admin/compute/status?serverId=${e()}`);if(i)return!1;if(!n.ok)return v(t,{...l(t),reachable:!1,ready:!1},!0),!1;let r=await n.json(),o=r.reachable,s=r.ready??o;return a=!o&&r.retryable===!1,v(t,{reachable:o,ready:s,failureSummary:r.failureSummary??null,rhinoVersion:r.rhinoVersion,computeVersion:r.computeVersion,selvaInstalled:r.selvaInstalled,selvaVersion:r.selvaVersion,plugins:r.plugins??{},activeChildren:r.activeChildren??null,idleSpanSeconds:r.idleSpanSeconds??null,state:o?s?r.selvaInstalled?`ok`:`warning`:`loading`:`error`},!0),s}catch{return a=!1,i||v(t,{...l(t),reachable:!1,ready:!1},!0),!1}}async function s(){let e=await o();if(!(i||e)){if(a){v(t,{...l(t),state:`error`,reachable:!1,ready:!1},!0);return}Date.now()<r?(l(t).state!==`loading`&&v(t,{...l(t),state:`checking`},!0),n=setTimeout(s,ve)):l(t).reachable?v(t,{...l(t),state:`warning`},!0):v(t,{...l(t),state:`error`,reachable:!1,ready:!1},!0)}}function c(){i||(n!==null&&(clearTimeout(n),n=null),r=Date.now()+_e,a=!1,v(t,{...l(t),state:`checking`,failureSummary:null},!0),s())}function u(){i=!0,n!==null&&(clearTimeout(n),n=null)}return{get state(){return l(t)},check:c,stop:u}}var be=d(`<p class="text-muted-foreground text-xs"> </p>`),xe=d(`<div class="space-y-2 rounded-lg border p-4"><div class="flex items-baseline justify-between gap-3"><div><p class="text-sm font-medium"> </p> <p class="text-muted-foreground text-xs"> </p></div> <div class="text-right"><p class="text-2xl font-semibold tabular-nums"> </p> <p class="text-muted-foreground text-xs">hit rate</p></div></div> <dl class="text-muted-foreground grid grid-cols-3 gap-2 text-xs"><div><dt>Hits</dt> <dd class="text-foreground font-mono tabular-nums"> </dd></div> <div><dt>Misses</dt> <dd class="text-foreground font-mono tabular-nums"> </dd></div> <div><dt>Evictions</dt> <dd class="text-foreground font-mono tabular-nums"> </dd></div></dl> <div class="text-muted-foreground flex items-center justify-between gap-3 border-t pt-2 text-xs"><span> </span> <code class="font-mono text-[10px]"> </code></div> <!></div>`),W=d(`<button class="text-muted-foreground hover:text-foreground ml-auto flex items-center gap-1 text-xs"> <!></button>`),Se=d(`<p class="text-muted-foreground text-xs">No organizations exist yet.</p>`),Ce=d(`<label class="hover:bg-muted/40 flex items-center gap-2 rounded px-2 py-1 text-xs"><input type="checkbox" class="h-3.5 w-3.5"/> <span class="truncate"> </span> <span class="text-muted-foreground ml-auto font-mono text-[10px]"> </span></label>`),we=d(`<div class="grid gap-1 sm:grid-cols-2"></div>`),Te=d(`<p class="text-muted-foreground text-xs">This server is the global default — it stays visible to every org regardless of the
2
- allowlist.</p>`),Ee=d(`<p class="text-muted-foreground text-xs">No orgs selected — this server is dormant (admin-only).</p>`),De=d(`<div class="space-y-2"><div class="flex items-center gap-3"><p class="text-muted-foreground text-xs">Available to</p> <div class="bg-muted inline-flex rounded-md p-0.5"><button>All orgs</button> <button>Specific orgs</button></div> <!></div> <!> <!></div>`),Oe=d(`<div class="flex items-center justify-between gap-3"><p class="text-destructive text-xs font-medium"><span class="line-through"> </span> will be removed when you save</p> <!></div>`),ke=d(`<span class="flex items-center gap-1 rounded-full bg-green-100 px-2 py-0.5 text-xs font-medium text-green-800 dark:bg-green-900/30 dark:text-green-400"><!> default</span>`),Ae=d(`<button class="text-muted-foreground hover:text-foreground text-xs underline-offset-2 hover:underline">set as default</button>`),je=d(`<!> `,1),Me=d(`<!> <!>`,1),Ne=d(`<span class="text-muted-foreground">Loading…</span>`),Pe=d(`<span class="text-red-600 dark:text-red-400">Not installed</span>`),Fe=d(`<div class="grid grid-cols-3 gap-2"><div class="bg-muted/40 rounded-md px-3 py-2"><p class="text-muted-foreground text-xs">Rhino</p> <p class="mt-0.5 text-xs font-medium"> </p></div> <div class="bg-muted/40 rounded-md px-3 py-2"><p class="text-muted-foreground text-xs">Compute</p> <p class="mt-0.5 text-xs font-medium"> </p></div> <div class="bg-muted/40 rounded-md px-3 py-2"><p class="text-muted-foreground text-xs">Selva Plugin</p> <p class="mt-0.5 text-xs font-medium"><!></p></div></div> <div class="grid grid-cols-2 gap-2"><div class="bg-muted/40 rounded-md px-3 py-2"><p class="text-muted-foreground text-xs">Active children</p> <p class="mt-0.5 text-xs font-medium"> </p></div> <div class="bg-muted/40 rounded-md px-3 py-2"><p class="text-muted-foreground text-xs">Idle for</p> <p class="mt-0.5 text-xs font-medium"> </p></div></div>`,1),Ie=d(`<button class="text-muted-foreground hover:text-destructive shrink-0 text-xs underline-offset-2 hover:underline">Clear</button>`),Le=d(`<button class="text-muted-foreground hover:text-foreground shrink-0 text-xs underline-offset-2 hover:underline">Undo</button>`),Re=d(`<div class="bg-muted/40 flex items-center justify-between rounded-md px-3 py-1.5"><span class="text-xs font-medium"> </span> <span class="text-muted-foreground text-xs"> </span></div>`),ze=d(`<div class="mt-2 grid gap-1.5 sm:grid-cols-2 lg:grid-cols-3"></div>`),Be=d(`<div><button class="text-muted-foreground hover:text-foreground flex items-center gap-1 text-xs"><!> </button> <!></div>`),Ve=d(`<div><!> <div><div class="flex items-center gap-2"><!> <!></div> <div class="flex items-center gap-3"><div class="flex items-center gap-1.5"><!> <span> </span></div> <!> <!> <!> <!></div></div> <!> <!> <div><div class="space-y-1"><p class="text-muted-foreground text-xs">Server URL</p> <!></div> <div class="space-y-1"><p class="text-muted-foreground text-xs">API Key (optional)</p> <div class="flex gap-1.5"><!> <!></div></div> <div class="space-y-1"><p class="text-muted-foreground text-xs">Timeout (ms)</p> <!></div> <div class="space-y-1"><p class="text-muted-foreground text-xs">Retries</p> <!></div></div> <!> <!></div>`),He=d(`<!> Add server`,1),Ue=d(`<!> <button type="button" class="border-muted-foreground/30 text-muted-foreground hover:border-foreground/50 hover:text-foreground hover:bg-muted/30 flex w-full items-center justify-center gap-2 rounded-lg border border-dashed py-4 text-sm font-medium transition-colors"><!> Add another server</button>`,1),We=d(`<span class="text-muted-foreground font-normal"> </span>`),Ge=d(`<div class="bg-background/95 sticky bottom-4 z-10 flex items-center justify-between gap-4 rounded-lg border border-amber-400/60 p-3 shadow-lg backdrop-blur dark:border-amber-500/40"><p class="text-sm font-medium"> <!></p> <div class="flex items-center gap-2"><!> <!></div></div>`),Ke=d(`<div class="space-y-6"><!> <!> <!> <!> <!></div> <!> <!> <!>`,1);function qe(d,T){o(T,!0);let O=(t,n=e,r=e,o=e,s=e,c=e)=>{let d=P(()=>_e(s()));var p=xe(),m=h(p),g=h(m),_=h(g),v=h(_,!0);u(_);var y=D(_,2),b=h(y,!0);u(y),u(g);var x=D(g,2),S=h(x),C=h(S,!0);u(S),a(2),u(x),u(m);var w=D(m,2),T=h(w),O=D(h(T),2),k=h(O,!0);u(O),u(T);var A=D(T,2),j=D(h(A),2),ee=h(j,!0);u(j),u(A);var M=D(A,2),N=D(h(M),2),te=h(N,!0);u(N),u(M),u(w);var I=D(w,2),L=h(I),R=h(L);u(L);var ne=D(L,2),re=h(ne,!0);u(ne),u(I);var ie=D(I,2),z=e=>{var t=be(),n=h(t,!0);u(t),E(()=>F(n,c())),f(e,t)};i(ie,e=>{c()&&e(z)}),u(p),E((e,t,i,a,c,u)=>{F(v,n()),F(b,r()),F(C,l(d)===null?`—`:`${l(d)}%`),F(k,e),F(ee,t),F(te,i),F(R,`${a??``}
3
- ${s().entries===1?`entry`:`entries`} · ${c??``} of ${u??``}`),F(re,o())},[()=>s().hits.toLocaleString(),()=>s().misses.toLocaleString(),()=>s().evictions.toLocaleString(),()=>s().entries.toLocaleString(),()=>U(s().bytes),()=>U(s().budgetBytes)]),f(t,p)},k=(r,a=e)=>{let o=P(()=>a().sharedWith===`all`),s=P(()=>l(o)?new Set:new Set(a().sharedWith)),d=P(()=>a().id===l(K));var p=De(),m=h(p),v=D(h(m),2),y=h(v),b=D(y,2);u(v);var x=D(v,2),S=e=>{var t=W(),r=h(t),o=D(r),c=e=>{re(e,{class:`h-3 w-3`})},d=e=>{ne(e,{class:`h-3 w-3`})};i(o,e=>{X[a().id]?e(c):e(d,-1)}),u(t),E(()=>F(r,`${l(s).size??``}/${T.data.orgs.length??``} selected `)),n(`click`,t,()=>X[a().id]=!X[a().id]),f(e,t)};i(x,e=>{!l(o)&&T.data.orgs.length>0&&e(S)}),u(m);var C=D(m,2),w=e=>{var r=t(),o=g(r),d=e=>{var t=Se();f(e,t)},p=e=>{var t=we();c(t,21,()=>T.data.orgs,e=>e.id,(e,t)=>{var r=Ce(),i=h(r);_(i);var o=D(i,2),c=h(o,!0);u(o);var d=D(o,2),p=h(d,!0);u(d),u(r),E(e=>{ee(i,e),F(c,l(t).name),F(p,l(t).slug)},[()=>l(s).has(l(t).id)]),n(`change`,i,()=>st(a(),l(t).id)),f(e,r)}),u(t),f(e,t)};i(o,e=>{T.data.orgs.length===0?e(d):e(p,-1)}),f(e,r)};i(C,e=>{!l(o)&&X[a().id]&&e(w)});var O=D(C,2),k=e=>{var t=Te();f(e,t)},A=e=>{var t=Ee();f(e,t)};i(O,e=>{!l(o)&&l(d)?e(k):!l(o)&&l(s).size===0&&e(A,1)}),u(p),E(()=>{N(y,1,`rounded px-2 py-0.5 text-xs ${l(o)?`bg-background shadow-sm`:`text-muted-foreground hover:text-foreground`}`),N(b,1,`rounded px-2 py-0.5 text-xs ${l(o)?`text-muted-foreground hover:text-foreground`:`bg-background shadow-sm`}`)}),n(`click`,y,()=>ot(a(),!0)),n(`click`,b,()=>ot(a(),!1)),f(r,p)},L=(t,o=e)=>{let s=P(()=>l(Q)[o().id]?.state),d=P(()=>qe[l(s)?.state??`idle`]),_=P(()=>l(s)?.state===`checking`||l(s)?.state===`loading`),y=P(()=>Object.entries(l(s)?.plugins??{})),b=P(()=>Y.has(o().id)),x=P(()=>J.has(o().id)&&!l(b));var S=Ve(),C=h(S),w=e=>{var t=Oe(),n=h(t),i=h(n),s=h(i,!0);u(i),a(),u(n);var c=D(n,2);R(c,{variant:`ghost`,size:`sm`,onclick:()=>at(o().id),get disabled(){return l(q)},class:`h-7`,children:(e,t)=>{a();var n=r(`Undo`);f(e,n)},$$slots:{default:!0}}),u(t),E(()=>F(s,o().label)),f(e,t)};i(C,e=>{l(b)&&e(w)});var O=D(C,2),A=h(O),j=h(A);B(j,{placeholder:`label`,get value(){return o().label},oninput:e=>{let t=e.target;o().label=t.value.toLowerCase().replace(/[^a-z0-9_-]/g,``),t.value=o().label,Z(o().id)},class:`h-7 w-32 font-mono text-xs`});var ee=D(j,2),M=e=>{var t=ke(),n=h(t);se(n,{class:`h-3 w-3`}),a(),u(t),f(e,t)},te=e=>{var t=Ae();n(`click`,t,()=>{v(K,o().id,!0),Z(o().id)}),f(e,t)};i(ee,e=>{o().id===l(K)?e(M):e(te,-1)}),u(A);var I=D(A,2),L=h(I),z=h(L);ie(z,{get class(){return`h-2.5 w-2.5 shrink-0 fill-current ${l(d).color??``}`}});var oe=D(z,2),le=h(oe,!0);u(oe),u(L);var ue=D(L,2);R(ue,{variant:`outline`,size:`sm`,onclick:()=>l(Q)[o().id]?.check(),get disabled(){return l(_)},class:`h-7`,title:`Probe this server's availability (retries for up to 1 min)`,children:(e,t)=>{var n=je(),r=g(n);{let e=P(()=>l(_)?`animate-spin`:``);ae(r,{get class(){return`mr-1.5 h-3.5 w-3.5 ${l(e)??``}`}})}var i=D(r);E(()=>F(i,` ${l(_)?`Checking…`:`Check`}`)),f(e,n)},$$slots:{default:!0}});var de=D(ue,2),fe=e=>{let t=P(()=>lt[o().id]);var n=Me(),r=g(n);{let e=P(()=>l(t)!==null&&l(t)!==void 0);R(r,{variant:`outline`,size:`sm`,onclick:()=>{v(ut,o(),!0),v(ft,!0)},get disabled(){return l(e)},class:`h-7`,title:`Clear cached solve results across this server's children (best-effort fleet-wide)`,children:(e,n)=>{var r=je(),i=g(r);he(i,{class:`mr-1.5 h-3.5 w-3.5`});var a=D(i);E(()=>F(a,` ${l(t)===`purge`?`Purging…`:`Purge cache`}`)),f(e,r)},$$slots:{default:!0}})}var i=D(r,2);{let e=P(()=>l(t)!==null&&l(t)!==void 0);R(i,{variant:`outline`,size:`sm`,onclick:()=>{v($,o(),!0),v(dt,!0)},get disabled(){return l(e)},class:`text-destructive hover:text-destructive h-7`,title:`Gracefully shut down all child processes (they auto-respawn on the next request)`,children:(e,n)=>{var r=je(),i=g(r);ge(i,{class:`mr-1.5 h-3.5 w-3.5`});var a=D(i);E(()=>F(a,` ${l(t)===`shutdown`?`Shutting down…`:`Shutdown children`}`)),f(e,r)},$$slots:{default:!0}})}f(e,n)};i(de,e=>{l(s)?.reachable&&e(fe)});var V=D(de,2),pe=e=>{R(e,{variant:`ghost`,size:`sm`,onclick:()=>et(o().id),get disabled(){return l(q)},class:`text-muted-foreground hover:text-foreground h-7`,title:`Revert this server to its saved values`,children:(e,t)=>{a();var n=r(`Discard`);f(e,n)},$$slots:{default:!0}})};i(V,e=>{l(x)&&e(pe)});var me=D(V,2);{let e=P(()=>o().id===l(K)),t=P(()=>o().id===l(K)?`Set another server as default before deleting`:void 0);R(me,{variant:`ghost`,size:`sm`,onclick:()=>{v(pt,o(),!0),v(mt,!0)},get disabled(){return l(e)},get title(){return l(t)},class:`text-destructive hover:text-destructive h-7 w-7 p-0`,children:(e,t)=>{ce(e,{class:`h-3.5 w-3.5`})},$$slots:{default:!0}})}u(I),u(O);var U=D(O,2),_e=e=>{var t=be(),n=h(t,!0);u(t),E(()=>F(n,l(s).failureSummary)),f(e,t)};i(U,e=>{l(s)?.failureSummary&&!l(s).reachable&&!l(b)&&e(_e)});var ye=D(U,2),xe=e=>{var t=Fe(),n=g(t),a=h(n),o=D(h(a),2),c=h(o,!0);u(o),u(a);var d=D(a,2),p=D(h(d),2),m=h(p,!0);u(p),u(d);var _=D(d,2),v=D(h(_),2),y=h(v),b=e=>{var t=r();E(()=>F(t,l(s).selvaVersion)),f(e,t)},x=e=>{var t=Ne();f(e,t)},S=e=>{var t=Pe();f(e,t)};i(y,e=>{l(s).selvaInstalled?e(b):l(s).ready?e(S,-1):e(x,1)}),u(v),u(_),u(n);var C=D(n,2),w=h(C),T=D(h(w),2),O=h(T,!0);u(T),u(w);var k=D(w,2),A=D(h(k),2),j=h(A,!0);u(A),u(k),u(C),E(e=>{F(c,l(s).rhinoVersion??`-`),F(m,l(s).computeVersion??`-`),F(O,l(s).activeChildren??`-`),F(j,e)},[()=>ve(l(s).idleSpanSeconds)]),f(e,t)};i(ye,e=>{l(s)?.reachable&&!l(b)&&e(xe)});var W=D(ye,2),Se=h(W),Ce=D(h(Se),2);B(Ce,{placeholder:`http://localhost:5000`,oninput:()=>Z(o().id),class:`font-mono text-xs`,get value(){return o().serverUrl},set value(e){o().serverUrl=e}}),u(Se);var we=D(Se,2),Te=D(h(we),2),Ee=h(Te);{let e=P(()=>o().hasApiKey&&o().apiKey!==H&&!o().apiKey?`Key set - enter new value to replace`:o().apiKey===H?`Key will be cleared on save`:``),t=P(()=>o().apiKey===H?``:o().apiKey),n=P(()=>o().apiKey===H);B(Ee,{type:`password`,get placeholder(){return l(e)},get value(){return l(t)},get disabled(){return l(n)},oninput:e=>{o().apiKey=e.target.value,Z(o().id)},class:`font-mono text-xs`})}var De=D(Ee,2),He=e=>{var t=Ie();n(`click`,t,()=>{o().apiKey=H,Z(o().id)}),f(e,t)},Ue=e=>{var t=Le();n(`click`,t,()=>o().apiKey=``),f(e,t)};i(De,e=>{o().hasApiKey&&o().apiKey!==H&&!o().apiKey?e(He):o().apiKey===H&&e(Ue,1)}),u(Te),u(we);var We=D(we,2),Ge=D(h(We),2);B(Ge,{type:`number`,placeholder:`30000`,oninput:()=>Z(o().id),onblur:()=>{o().timeoutMs=Math.min(3e5,Math.max(1e3,Number(o().timeoutMs)||3e4))},class:`text-xs`,get value(){return o().timeoutMs},set value(e){o().timeoutMs=e}}),u(We);var Ke=D(We,2),G=D(h(Ke),2);B(G,{type:`number`,placeholder:`0`,oninput:()=>Z(o().id),onblur:()=>{o().retryCount=Math.min(5,Math.max(0,Number(o().retryCount)||0))},class:`text-xs`,get value(){return o().retryCount},set value(e){o().retryCount=e}}),u(Ke),u(W);var X=D(W,2),Ye=e=>{k(e,o)};i(X,e=>{T.data.tenancy!==`single`&&!l(b)&&e(Ye)});var Xe=D(X,2),Ze=e=>{var t=Be(),r=h(t),a=h(r),s=e=>{re(e,{class:`h-3 w-3`})},d=e=>{ne(e,{class:`h-3 w-3`})};i(a,e=>{Je[o().id]?e(s):e(d,-1)});var m=D(a);u(r);var g=D(r,2),_=e=>{var t=ze();c(t,21,()=>l(y),([e,t])=>e,(e,t)=>{var n=P(()=>p(l(t),2));let r=()=>l(n)[0],i=()=>l(n)[1];var a=Re(),o=h(a),s=h(o,!0);u(o);var c=D(o,2),d=h(c,!0);u(c),u(a),E(()=>{F(s,r()),F(d,i())}),f(e,a)}),u(t),f(e,t)};i(g,e=>{Je[o().id]&&e(_)}),u(t),E(()=>F(m,` ${l(y).length??``} Grasshopper plugin${l(y).length===1?``:`s`}`)),n(`click`,r,()=>Je[o().id]=!Je[o().id]),f(e,t)};i(Xe,e=>{l(s)?.reachable&&l(y).length>0&&!l(b)&&e(Ze)}),u(S),E(()=>{N(S,1,`space-y-3 rounded-lg border p-4 transition-colors ${l(b)?`border-destructive/40 bg-destructive/5`:l(x)?`border-amber-400/60 bg-amber-50/30 dark:border-amber-500/40 dark:bg-amber-950/10`:`bg-muted/30`}`),N(O,1,`flex items-center justify-between ${l(b)?`pointer-events-none opacity-50`:``}`),m(L,`title`,l(s)?.failureSummary??void 0),N(oe,1,`text-xs font-medium ${l(d).color??``}`),F(le,l(d).label),N(W,1,`grid gap-2 sm:grid-cols-2 ${l(b)?`pointer-events-none opacity-50`:``}`)}),f(t,S)},H=`__clear__`;function U(e){return e>=1073741824?`${(e/1073741824).toFixed(1)} GB`:e>=1048576?`${Math.round(e/1048576)} MB`:e>=1024?`${Math.round(e/1024)} KB`:`${e} B`}function _e(e){let t=e.hits+e.misses;return t===0?null:Math.round(e.hits/t*100)}function ve(e){if(e===null)return`-`;if(e<5)return`just now`;if(e<60)return`${Math.round(e)}s`;let t=Math.floor(e/60);return t<60?`${t}m`:`${Math.floor(t/60)}h ${t%60}m`}let qe={idle:{label:`Not checked`,color:`text-muted-foreground`},ok:{label:`Online`,color:`text-green-600 dark:text-green-400`},warning:{label:`Warning`,color:`text-yellow-600 dark:text-yellow-400`},error:{label:`Offline`,color:`text-red-600 dark:text-red-400`},checking:{label:`Checking…`,color:`text-blue-600 dark:text-blue-400`},loading:{label:`Loading plugins…`,color:`text-blue-600 dark:text-blue-400`}},G=M(C([])),K=M(``),q=M(!1),J=new I,Y=new I,Je=C({}),X=C({});function Ye(e){return{id:e.id,label:e.label,serverUrl:e.serverUrl,sharedWith:e.sharedWith===`all`?`all`:[...e.sharedWith],timeoutMs:e.timeoutMs??3e4,retryCount:e.retryCount??0,apiKey:``,hasApiKey:e.hasApiKey}}function Z(e){J.add(e)}let Xe=P(()=>J.size+Y.size),Ze=P(()=>l(K)!==T.data.defaultServerId&&l(G).some(e=>!Y.has(e.id))),Qe=P(()=>l(Xe)>0||l(Ze));function $e(e){l(Q)[e]?.stop();let{[e]:t,...n}=l(Q);v(Q,n,!0)}function et(e){J.delete(e),Y.delete(e);let t=T.data.servers.find(t=>t.id===e);if(!t){$e(e),v(G,l(G).filter(t=>t.id!==e),!0);return}let n=l(G).findIndex(t=>t.id===e);n>=0&&(l(G)[n]=Ye(t))}function tt(){for(let e of[...J,...Y])T.data.servers.some(t=>t.id===e)||$e(e);J.clear(),Y.clear(),v(G,T.data.servers.map(Ye),!0),v(K,T.data.defaultServerId,!0)}let Q=M(C({}));function nt(e){return l(Q)[e]||(l(Q)[e]=ye(()=>e)),l(Q)[e]}A(()=>{J.size===0&&Y.size===0&&(v(G,T.data.servers.map(Ye),!0),v(K,T.data.defaultServerId,!0))}),A(()=>{let e=T.data.servers.map(e=>e.id);j(()=>{for(let t of e)nt(t)})}),w(()=>{for(let e of Object.values(l(Q)))e.stop()});function rt(){let e=me();l(G).length===0&&v(K,e,!0),v(G,[...l(G),{id:e,label:`new-server`,serverUrl:`http://localhost:5000`,sharedWith:`all`,apiKey:``,hasApiKey:!1,timeoutMs:3e4,retryCount:0}],!0),nt(e),Z(e)}function it(e){T.data.servers.some(t=>t.id===e.id)?(Y.add(e.id),J.delete(e.id)):(J.delete(e.id),$e(e.id),v(G,l(G).filter(t=>t.id!==e.id),!0)),v(mt,!1)}function at(e){Y.delete(e)}function ot(e,t){e.sharedWith=t?`all`:[],Z(e.id)}function st(e,t){e.sharedWith!==`all`&&(e.sharedWith=e.sharedWith.includes(t)?e.sharedWith.filter(e=>e!==t):[...e.sharedWith,t],Z(e.id))}async function ct(){v(q,!0);try{let e=l(G).filter(e=>!Y.has(e.id)),t={defaultServerId:e.some(e=>e.id===l(K))?l(K):e[0]?.id??``,servers:e.map(({apiKey:e,hasApiKey:t,retryCount:n,timeoutMs:r,...i})=>({...i,timeoutMs:Math.min(3e5,Math.max(1e3,Number(r)||3e4)),...e===H?{apiKey:null}:e?{apiKey:e}:{},...Number(n)?{retryCount:Math.min(5,Math.max(0,Number(n)))}:{}}))},n=await fetch(`/api/admin/compute`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify(t)});if(n.ok){V.success(Y.size>0?`Saved — ${Y.size} server${Y.size===1?``:`s`} removed`:`Compute config saved`);for(let e of Y)$e(e);await te(),J.clear(),Y.clear();for(let e of Object.values(l(Q)))e.stop();v(Q,{},!0);for(let e of l(G))nt(e.id)}else{let e=await n.json().catch(()=>({error:`Unknown error`}));V.error(e.message||e.error||`Failed to save (${n.status})`)}}catch{V.error(`Failed to save compute config`)}finally{v(q,!1)}}let lt=C({}),$=M(null),ut=M(null),dt=M(!1),ft=M(!1),pt=M(null),mt=M(!1);async function ht(e,t){lt[e.id]=t;try{let n=await fetch(`/api/admin/compute/actions`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({serverId:e.id,action:t})}),r=await n.json().catch(()=>({}));if(!n.ok){V.error(r.message||r.error||`Action failed (${n.status})`);return}if(t===`purge`){let{totalPurged:e=0,children:t=0,confident:n}=r;V.success(n?`Purged ${e} cached solve${e===1?``:`s`}`:`Purged ~${e} across ${t} children (best-effort)`),v(ft,!1)}else{let{shutdown:t=0,active:n=0}=r;V.success(`Shut down ${t} child${t===1?``:`ren`} (${n} still active)`),v(dt,!1),l(Q)[e.id]?.check()}}catch{V.error(`Failed to ${t} server`)}finally{lt[e.id]=null}}var gt=Ke();s(`1h8e46q`,e=>{y(()=>{S.title=`Admin · Compute`})});var _t=g(gt),vt=h(_t);le(vt,{eyebrow:`Admin`,title:`Compute`,description:`Manage compute servers. Share servers with specific orgs to expose them in pickers. When ALLOW_ORG_COMPUTE_OVERRIDE is on, org owners can configure their own servers.`});var yt=D(vt,2);b(yt,()=>de,(e,r)=>{r(e,{children:(e,r)=>{var o=t(),s=g(o);b(s,()=>fe,(e,r)=>{r(e,{class:`space-y-3 pt-6`,children:(e,r)=>{var o=t(),s=g(o),d=e=>{ue(e,{get icon(){return oe},title:`No servers configured`,actions:e=>{R(e,{variant:`outline`,size:`sm`,onclick:rt,children:(e,t)=>{var n=He(),r=g(n);z(r,{class:`mr-1.5 h-3.5 w-3.5`}),a(),f(e,n)},$$slots:{default:!0}})},$$slots:{actions:!0}})},p=e=>{var t=Ue(),r=g(t);c(r,17,()=>l(G),e=>e.id,(e,t)=>{L(e,()=>l(t))});var i=D(r,2),o=h(i);z(o,{class:`h-4 w-4`}),a(),u(i),n(`click`,i,rt),f(e,t)};i(s,e=>{l(G).length===0?e(d):e(p,-1)}),f(e,o)},$$slots:{default:!0}})}),f(e,o)},$$slots:{default:!0}})});var bt=D(yt,2),xt=e=>{var t=Ge(),n=h(t),o=h(n),s=D(o),c=e=>{var t=We(),n=h(t);u(t),E(()=>F(n,`· ${Y.size??``} pending removal`)),f(e,t)};i(s,e=>{Y.size>0&&e(c)}),u(n);var d=D(n,2),p=h(d);R(p,{variant:`ghost`,size:`sm`,onclick:tt,get disabled(){return l(q)},children:(e,t)=>{a();var n=r(`Discard all`);f(e,n)},$$slots:{default:!0}});var m=D(p,2);R(m,{size:`sm`,onclick:ct,get disabled(){return l(q)},children:(e,t)=>{a();var n=r();E(()=>F(n,l(q)?`Saving…`:`Save changes`)),f(e,n)},$$slots:{default:!0}}),u(d),u(t),E(()=>F(o,`${l(Xe)===0?`Default server changed`:`${l(Xe)} unsaved change${l(Xe)===1?``:`s`}`} `)),f(e,t)};i(bt,e=>{l(Qe)&&e(xt)});var St=D(bt,2);le(St,{title:`Caching`,description:`Whether solves are actually being served from memory. Counters are for this Selva instance and reset when it restarts; behind a load balancer each instance keeps its own.`});var Ct=D(St,2);b(Ct,()=>de,(e,n)=>{n(e,{children:(e,n)=>{var r=t(),i=g(r);b(i,()=>fe,(e,t)=>{t(e,{class:`grid gap-3 pt-6 sm:grid-cols-2`,children:(e,t)=>{var n=Me(),r=g(n);{let e=P(()=>`Budget is per compute server — ${T.data.caches.solve.warmClients} warm, so up to ${U(T.data.caches.solve.budgetTotalBytes)} total right now.`);O(r,()=>`Solve cache`,()=>`Results, so identical inputs skip Rhino entirely`,()=>`COMPUTE_SOLVE_CACHE_MB`,()=>T.data.caches.solve,()=>l(e))}var i=D(r,2);O(i,()=>`Definition cache`,()=>`.gh bytes, so a solve skips the storage read`,()=>`COMPUTE_DEFINITION_CACHE_MB`,()=>T.data.caches.definition,()=>null),f(e,n)},$$slots:{default:!0}})}),f(e,r)},$$slots:{default:!0}})}),u(_t);var wt=D(_t,2);{let e=P(()=>l($)?`Shut down ALL child processes on "${l($).label}"? In-flight solves on those children will be interrupted. The pool auto-respawns on the next request.`:void 0);pe(wt,{title:`Shutdown children?`,get description(){return l(e)},confirmLabel:`Shutdown`,pendingLabel:`Shutting down…`,variant:`destructive`,onConfirm:async()=>{l($)&&await ht(l($),`shutdown`)},get open(){return l(dt)},set open(e){v(dt,e,!0)}})}var Tt=D(wt,2);{let e=P(()=>l(ut)?`Clear cached solve results across "${l(ut).label}"'s children? This is best-effort across the pool.`:void 0);pe(Tt,{title:`Purge cache?`,get description(){return l(e)},confirmLabel:`Purge`,pendingLabel:`Purging…`,onConfirm:async()=>{l(ut)&&await ht(l(ut),`purge`)},get open(){return l(ft)},set open(e){v(ft,e,!0)}})}var Et=D(Tt,2);{let e=P(()=>l(pt)?`Remove "${l(pt).label}" from the compute config? It stays listed, struck through, until you save.`:void 0);pe(Et,{title:`Remove this server?`,get description(){return l(e)},confirmLabel:`Remove`,variant:`destructive`,onConfirm:()=>{l(pt)&&it(l(pt))},get open(){return l(mt)},set open(e){v(mt,e,!0)}})}f(d,gt),x()}O([`click`,`change`]);export{qe as component};
@@ -1 +0,0 @@
1
-   ��i��r �MT�J�m����|�s.��P�@ڝW���A�(yy+K�H �gcA����-�b�?q������v{V���D�|��m�k��,�U�@��mn�EB\�bqX]��
@@ -1 +0,0 @@
1
- {"version":3,"file":"engine.server.js-BvIpzyKd.js","sources":["../../../../.svelte-kit/output/server/chunks/engine.server.js"],"sourcesContent":["import { t as private_env } from \"./shared-server.js\";\nimport \"./src.js\";\nimport { f as getLogger, w as lazyLogger } from \"./providers.server.js\";\nimport { d as NoopLogger } from \"./definitions.js\";\nimport { c as e, f as s, m as t, r as W } from \"./core-PfYDuaFq.js\";\nimport { d as He, f as S$1, g as pe, m as et } from \"./schema.js\";\nimport { p as computeLimits } from \"./computeLimits.js\";\nimport { gunzipSync, gzip } from \"node:zlib\";\nimport { promisify } from \"node:util\";\n//#region ../solve/dist/server.js\nfunction p(e, t) {\n\tlet n = {\n\t\tid: e.id,\n\t\tname: e.nickname,\n\t\tnickname: e.nickname || null,\n\t\tdescription: e.description || ``,\n\t\tparamType: e.paramType === `dynamicValueList` ? `valueList` : e.paramType,\n\t\ttreeAccess: e.inputStructure === `tree`,\n\t\tminimum: e.minimum ?? null,\n\t\tmaximum: e.maximum ?? null,\n\t\tatLeast: 1,\n\t\tatMost: 1,\n\t\tstepSize: e.stepSize,\n\t\tdefault: t ?? e.default\n\t}, i = He(n), a = t ?? e.default;\n\treturn i.default == null && a != null && (Array.isArray(a) || i.paramType === `ValueList` && typeof a != `object`) && (i.default = a), i;\n}\nvar m = promisify(gzip);\nvar g = `X-Selva-Compute-Version`;\nfunction _(e, n) {\n\treturn et.fromInputParams(e.filter((e) => e.paramType).map((e) => p(e, n[e.id])));\n}\nasync function v(e$1) {\n\tlet { client: t$2, signal: n } = e$1, r = performance.now(), i = e$1.inputTree ?? _(e$1.inputs, e$1.values), s = performance.now() - r, c = t$2.solveMeta.seq, l = t$2.rhinoTiming.seq, u, d = performance.now();\n\ttry {\n\t\tu = await t$2.scheduler.solve(e$1.definitionSource, i, { signal: n });\n\t} catch (t$1) {\n\t\tlet r = performance.now() - d, i = t$1 instanceof Error && t$1.name === `AbortError` || t$1 instanceof t && t$1.code === e.ABORTED, s = t$1 instanceof t && t$1.code === e.TIMEOUT_ERROR;\n\t\tif (i || s) return i && n.aborted ? {\n\t\t\tkind: `client_abort`,\n\t\t\tdurationMs: r\n\t\t} : {\n\t\t\tkind: `timeout`,\n\t\t\tdurationMs: r,\n\t\t\tmessage: `Solve exceeded the ${Math.round(e$1.solveDeadlineMs / 1e3)}s deadline.`\n\t\t};\n\t\tif (t$1 instanceof t) {\n\t\t\tif (t$1.code === e.QUEUE_FULL) return {\n\t\t\t\tkind: `shed`,\n\t\t\t\tdurationMs: r,\n\t\t\t\treason: `queue_full`,\n\t\t\t\tretryAfterSeconds: 1,\n\t\t\t\tmessage: `Compute server is at capacity. Retry shortly.`\n\t\t\t};\n\t\t\tif (t$1.code === e.QUEUE_TIMEOUT) return {\n\t\t\t\tkind: `shed`,\n\t\t\t\tdurationMs: r,\n\t\t\t\treason: `queue_timeout`,\n\t\t\t\tretryAfterSeconds: 1,\n\t\t\t\tmessage: `Compute request waited too long in the queue. Retry shortly.`\n\t\t\t};\n\t\t}\n\t\treturn {\n\t\t\tkind: `compute_error`,\n\t\t\tdurationMs: r,\n\t\t\terror: t$1\n\t\t};\n\t}\n\tlet f = performance.now() - d, p = performance.now(), h;\n\ttry {\n\t\th = JSON.stringify(u);\n\t} catch (e) {\n\t\tif (e instanceof RangeError) return { kind: `too_large` };\n\t\tthrow e;\n\t}\n\tif (h.length > e$1.responseMaxBytes) return { kind: `too_large` };\n\tlet v = performance.now() - p, y = /\\bgzip\\b/i.test(e$1.acceptEncoding) && h.length > 1024, x = null, S = 0;\n\tif (y) {\n\t\tlet e = performance.now();\n\t\tx = await m(Buffer.from(h)), S = performance.now() - e;\n\t}\n\tlet C = performance.now() - e$1.loadStartMs, w = t$2.solveMeta.seq === c + 1 ? t$2.solveMeta.last : null, T = w && !w.fromCache && t$2.rhinoTiming.seq === l + 1 ? t$2.rhinoTiming.last : null, E = {\n\t\t\"Content-Type\": `application/json`,\n\t\t\"Server-Timing\": b({\n\t\t\tdefLoadMs: e$1.defLoadMs,\n\t\t\ttreeBuildMs: s,\n\t\t\tsolveMs: f,\n\t\t\tserializeMs: v,\n\t\t\tgzipMs: S,\n\t\t\tserverTotalMs: C,\n\t\t\trhino: T,\n\t\t\tsettle: w,\n\t\t\tbyteRefOutcome: e$1.byteRefOutcome,\n\t\t\tprepMarks: e$1.prepMarks ?? []\n\t\t}),\n\t\t[g]: `1`,\n\t\tVary: `Accept-Encoding`\n\t}, D = {\n\t\ttreeBuildMs: s,\n\t\tsolveMs: f,\n\t\tserializeMs: v,\n\t\tgzipMs: S,\n\t\tserverTotalMs: C,\n\t\tserializedBytes: h.length,\n\t\tcompressedBytes: x?.byteLength ?? null\n\t}, O;\n\treturn x ? (E[`Content-Encoding`] = `gzip`, E[`Content-Length`] = String(x.byteLength), O = {\n\t\tbody: new Uint8Array(x),\n\t\tencoding: `gzip`,\n\t\theaders: E,\n\t\tresult: u,\n\t\tmetrics: D\n\t}) : (E[`Content-Length`] = String(Buffer.byteLength(h)), O = {\n\t\tbody: h,\n\t\theaders: E,\n\t\tresult: u,\n\t\tmetrics: D\n\t}), {\n\t\tkind: `ok`,\n\t\tenvelope: O,\n\t\tsolveMs: f,\n\t\terrorCount: u.errors?.length ?? 0,\n\t\twarningCount: u.warnings?.length ?? 0\n\t};\n}\nfunction y(e, t) {\n\tlet n = /\\bgzip\\b/i.test(t);\n\tif (e.encoding === `gzip` && !n) {\n\t\tlet t = gunzipSync(e.body instanceof Uint8Array ? e.body : Buffer.from(e.body)).toString(`utf8`), n = { ...e.headers };\n\t\treturn delete n[`Content-Encoding`], n[`Content-Length`] = String(Buffer.byteLength(t)), {\n\t\t\tbody: t,\n\t\t\theaders: n\n\t\t};\n\t}\n\treturn {\n\t\tbody: e.body,\n\t\theaders: e.headers\n\t};\n}\nfunction b(e) {\n\tlet t = `load;dur=${e.defLoadMs.toFixed(1)}, tree;dur=${e.treeBuildMs.toFixed(1)}, solve;dur=${e.solveMs.toFixed(1)}, serialize;dur=${e.serializeMs.toFixed(1)}, gzip;dur=${e.gzipMs.toFixed(1)}, total;dur=${e.serverTotalMs.toFixed(1)}`, n = e.rhino;\n\tif (n) {\n\t\tlet r = n.decode + n.solve + n.encode, i = Math.max(0, e.solveMs - r);\n\t\tt += `, rhino_decode;dur=${n.decode.toFixed(1)}, rhino_solve;dur=${n.solve.toFixed(1)}, rhino_encode;dur=${n.encode.toFixed(1)}, compute_link;dur=${i.toFixed(1)}`;\n\t}\n\tfor (let [n, r] of e.prepMarks) t += `, p_${n};dur=${r.toFixed(1)}`;\n\tlet r = e.settle;\n\tr && (t += `, selva_cache;dur=${+!!r.fromCache}`, r.definitionReuploaded !== void 0 && (t += `, def_reupload;dur=${+!!r.definitionReuploaded}`));\n\tlet i = e.byteRefOutcome;\n\tif (i) {\n\t\tlet e = i.loaded ? i.fromCache ? `hit` : `miss` : `skipped`;\n\t\tt += `, def_bytes;desc=${e}`;\n\t}\n\treturn t;\n}\nvar S = 5e3;\nfunction C(t) {\n\tlet n = t.maxWarmComputeServers ?? 16, r = /* @__PURE__ */ new Map(), i = /* @__PURE__ */ new Map(), a = /* @__PURE__ */ new Map();\n\tt.debug === `verbose` && s();\n\tlet o = (e) => {\n\t\tt.debug && t.onDebugLog?.(e);\n\t};\n\tasync function c(n, r) {\n\t\tlet i = {\n\t\t\tlast: null,\n\t\t\tseq: 0\n\t\t}, a = {\n\t\t\tlast: null,\n\t\t\tseq: 0\n\t\t}, s = t.debug === `verbose`, c = {\n\t\t\tserverUrl: n.serverUrl,\n\t\t\tapiKey: n.apiKey,\n\t\t\tdebug: s,\n\t\t\tcachesolve: t.cachesolve,\n\t\t\tcacheerroredsolves: t.cacheerroredsolves,\n\t\t\tonServerTiming: (e) => {\n\t\t\t\tlet n = e.decode ?? 0, r = e.solve ?? 0, a = e.encode ?? 0;\n\t\t\t\tif (i.seq += 1, i.last = {\n\t\t\t\t\tdecode: n,\n\t\t\t\t\tsolve: r,\n\t\t\t\t\tencode: a\n\t\t\t\t}, !t.debug) return;\n\t\t\t\tlet s = n <= 1 ? `HIT (definition reused, no re-upload/parse)` : `miss (full parse)`, c = t.cachesolve && r <= 1 ? `HIT (cached result, solve skipped)` : t.cachesolve ? `miss (solved fresh)` : `off`;\n\t\t\t\to(`[Compute/rhino-cache] decode=${n}ms solve=${r}ms encode=${a}ms | definition-cache: ${s} | solve-cache (cachesolve): ${c}`);\n\t\t\t}\n\t\t};\n\t\tr && (c.headers = { \"X-Selva-Definition\": r });\n\t\tlet l = await pe.create(c), u = 1, d = 0, f = !1;\n\t\tasync function p(e) {\n\t\t\tif (!f) {\n\t\t\t\tf = !0;\n\t\t\t\ttry {\n\t\t\t\t\tlet t = await Promise.resolve(l.serverStats?.getActiveChildren({ initialize: !1 })).catch(() => null);\n\t\t\t\t\td = Date.now();\n\t\t\t\t\tlet n = !t || t <= 0 ? 1 : t;\n\t\t\t\t\tif (n === u) return;\n\t\t\t\t\to(`[Compute/client-cache] concurrency ${u} → ${n} (server child count)`), u = n, e?.setMaxConcurrent(n);\n\t\t\t\t} finally {\n\t\t\t\t\tf = !1;\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t\tawait p();\n\t\tlet m = l.createScheduler({\n\t\t\tmode: `queue`,\n\t\t\tmaxConcurrent: u,\n\t\t\tmaxQueueDepth: t.maxQueueDepth || void 0,\n\t\t\tqueueWaitMs: t.queueWaitMs || void 0,\n\t\t\ttimeoutMs: t.solveDeadlineMs,\n\t\t\tcache: t.responseCacheMaxBytes > 0 && { maxBytes: t.responseCacheMaxBytes },\n\t\t\treuseServerDefinitionCache: t.reuseServerDefinitionCache,\n\t\t\tonSettle: (e, n) => {\n\t\t\t\tif (a.seq += 1, n.status === `success` && (n.fromCache !== !0 && Date.now() - d >= 3e5 && p(m), a.last = {\n\t\t\t\t\tfromCache: n.fromCache === !0,\n\t\t\t\t\tdefinitionReuploaded: n.definitionReuploaded\n\t\t\t\t}, t.debug && (o(`[Compute/selva-cache] ${n.fromCache ? `HIT — served from cache (no compute call)` : `miss — went to Rhino.Compute`} (${Math.round(n.durationMs)}ms)`), n.fromCache || o(n.definitionReuploaded === !0 ? `[Compute/def-cache] miss — definition RE-UPLOADED (pointer was cold/stale)` : n.definitionReuploaded === !1 ? `[Compute/def-cache] HIT — definition reused from server cache (no upload)` : `[Compute/def-cache] n/a — reuse disabled or non-reusable definition`), !n.fromCache))) {\n\t\t\t\t\tlet e = n.response?.errors, r = Array.isArray(e) ? e.length : 0;\n\t\t\t\t\tif (r > 0) {\n\t\t\t\t\t\tlet n = t.cacheerroredsolves ? `cached (cacheerroredsolves on)` : `not cached (cacheerroredsolves off) — re-run until fixed`;\n\t\t\t\t\t\to(`[Compute/rhino-cache] ${r} GH error(s); ${n}. First: ${JSON.stringify(e[0])}`);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t});\n\t\treturn {\n\t\t\tclient: l,\n\t\t\tscheduler: m,\n\t\t\trhinoTiming: i,\n\t\t\tsolveMeta: a\n\t\t};\n\t}\n\treturn {\n\t\tasync getClient(e, t) {\n\t\t\tlet s = e.id, l = r.get(s);\n\t\t\tif (l) return r.delete(s), r.set(s, l), l;\n\t\t\tlet u = i.get(s);\n\t\t\tif (u) return u;\n\t\t\tlet d = a.get(s);\n\t\t\tif (d) {\n\t\t\t\tif (Date.now() - d.at < S) throw o(`[Compute/client-cache] server ${s} failed to build <${S}ms ago — replaying error`), d.error;\n\t\t\t\ta.delete(s);\n\t\t\t}\n\t\t\to(`[Compute/client-cache] miss — building warm client for server ${s}`);\n\t\t\tlet f = (async () => {\n\t\t\t\tlet i;\n\t\t\t\ttry {\n\t\t\t\t\ti = await c(e, t?.definitionGuid);\n\t\t\t\t} catch (e) {\n\t\t\t\t\tthrow a.set(s, {\n\t\t\t\t\t\terror: e,\n\t\t\t\t\t\tat: Date.now()\n\t\t\t\t\t}), e;\n\t\t\t\t}\n\t\t\t\tif (r.size >= n) {\n\t\t\t\t\tlet e = r.keys().next().value;\n\t\t\t\t\te !== void 0 && (o(`[Compute/client-cache] LRU evicted warm client for server ${e} (cap ${n})`), r.get(e)?.scheduler.dispose(), r.delete(e));\n\t\t\t\t}\n\t\t\t\treturn r.set(s, i), i;\n\t\t\t})().finally(() => i.delete(s));\n\t\t\treturn i.set(s, f), f;\n\t\t},\n\t\tevict(e) {\n\t\t\tlet t = e;\n\t\t\ta.delete(t);\n\t\t\tlet n = r.get(t);\n\t\t\tn && (o(`[Compute/client-cache] evicted warm client for server ${t} (config change)`), n.scheduler.dispose(), r.delete(t));\n\t\t},\n\t\tsolveCacheStats() {\n\t\t\tlet e = {\n\t\t\t\twarmClients: r.size,\n\t\t\t\tentries: 0,\n\t\t\t\tbytes: 0,\n\t\t\t\thits: 0,\n\t\t\t\tmisses: 0,\n\t\t\t\tevictions: 0\n\t\t\t};\n\t\t\tfor (let t of r.values()) {\n\t\t\t\tlet n = t.scheduler.cacheStats();\n\t\t\t\te.entries += n.entries, e.bytes += n.bytes, e.hits += n.hits, e.misses += n.misses, e.evictions += n.evictions;\n\t\t\t}\n\t\t\treturn e;\n\t\t},\n\t\tclearSolveCaches() {\n\t\t\to(`[Compute/client-cache] cleared solve caches on ${r.size} warm client(s)`);\n\t\t\tfor (let e of r.values()) e.scheduler.clearCache();\n\t\t},\n\t\tdisposeAll() {\n\t\t\to(`[Compute/client-cache] disposing all ${r.size} warm client(s)`);\n\t\t\tfor (let e of r.values()) e.scheduler.dispose();\n\t\t\tr.clear(), a.clear();\n\t\t}\n\t};\n}\nfunction w(e) {\n\tlet t = Math.max(0, Math.floor(e)), n = /* @__PURE__ */ new Map(), r = 0, i = {\n\t\thits: 0,\n\t\tmisses: 0,\n\t\tevictions: 0\n\t};\n\tfunction a(e, t) {\n\t\tn.delete(e), n.set(e, t);\n\t}\n\tfunction o() {\n\t\tfor (; r > t && n.size > 0;) {\n\t\t\tlet e = n.keys().next().value, t = n.get(e);\n\t\t\tn.delete(e), r -= t.bytes.byteLength, i.evictions += 1;\n\t\t}\n\t}\n\tfunction s(e, i) {\n\t\tif (t === 0 || i.byteLength > t) return;\n\t\tlet a = n.get(e);\n\t\ta && (r -= a.bytes.byteLength), n.set(e, { bytes: i }), r += i.byteLength, o();\n\t}\n\treturn {\n\t\tgetOrLoad(e, t) {\n\t\t\tlet r = {\n\t\t\t\tloaded: !1,\n\t\t\t\tfromCache: !1\n\t\t\t};\n\t\t\treturn {\n\t\t\t\tkey: e,\n\t\t\t\toutcome: r,\n\t\t\t\tload: async () => {\n\t\t\t\t\tlet o = n.get(e);\n\t\t\t\t\tif (o) return a(e, o), i.hits += 1, r.loaded = !0, r.fromCache = !0, o.bytes;\n\t\t\t\t\ti.misses += 1, r.loaded = !0, r.fromCache = !1;\n\t\t\t\t\tlet c = await t();\n\t\t\t\t\treturn s(e, c), c;\n\t\t\t\t}\n\t\t\t};\n\t\t},\n\t\tstats() {\n\t\t\treturn {\n\t\t\t\thits: i.hits,\n\t\t\t\tmisses: i.misses,\n\t\t\t\tevictions: i.evictions,\n\t\t\t\tentries: n.size,\n\t\t\t\tbytes: r\n\t\t\t};\n\t\t},\n\t\tclear() {\n\t\t\tn.clear(), r = 0;\n\t\t}\n\t};\n}\nfunction T(e = {}) {\n\tlet t = /* @__PURE__ */ new Map();\n\treturn {\n\t\trun(n, r, i) {\n\t\t\tlet a = t.get(n);\n\t\t\tif (a) return e.onJoin?.(n), a.notifyOwner?.(), a.promise;\n\t\t\tlet o = {\n\t\t\t\tnotifyOwner: i,\n\t\t\t\tpromise: void 0\n\t\t\t}, s = (async () => r())().finally(() => {\n\t\t\t\to.notifyOwner = void 0, t.get(n) === o && t.delete(n);\n\t\t\t});\n\t\t\treturn o.promise = s, t.set(n, o), s;\n\t\t},\n\t\tinFlight() {\n\t\t\treturn t.size;\n\t\t}\n\t};\n}\nfunction E(e) {\n\treturn typeof e == `object` && !!e && !(e instanceof Uint8Array) && `outcome` in e;\n}\nfunction D(e) {\n\treturn typeof e == `object` && !!e && !(e instanceof Uint8Array) && !(`outcome` in e) && !(`key` in e) && `versionId` in e;\n}\nvar O = class {\n\tlimits;\n\tclientCache;\n\tbyteCache;\n\tsingleFlight;\n\tconstructor(e) {\n\t\tthis.limits = e.limits;\n\t\tlet t = e.logger ?? new NoopLogger();\n\t\tthis.clientCache = C({\n\t\t\tsolveDeadlineMs: this.limits.solveDeadlineMs,\n\t\t\tcachesolve: this.limits.computeServerCachesolve,\n\t\t\tcacheerroredsolves: this.limits.computeCacheErroredSolves,\n\t\t\treuseServerDefinitionCache: this.limits.computeReuseDefinitionCache,\n\t\t\tmaxQueueDepth: this.limits.computeMaxQueueDepth,\n\t\t\tqueueWaitMs: this.limits.computeQueueWaitMs,\n\t\t\tresponseCacheMaxBytes: this.limits.computeSolveCacheBytes,\n\t\t\tdebug: e.debug ?? !1,\n\t\t\tmaxWarmComputeServers: e.maxWarmComputeServers,\n\t\t\tonDebugLog: e.onDebugLog ?? ((e) => t.debug(e, { component: `Compute/client-cache` }))\n\t\t}), this.byteCache = w(this.limits.computeDefinitionCacheBytes), this.singleFlight = T({ onJoin: e.onSolveCoalesced });\n\t}\n\tgetClient(e, t) {\n\t\treturn this.clientCache.getClient(e, t);\n\t}\n\tdefinitionRef(e, t) {\n\t\treturn this.byteCache.getOrLoad(e, t);\n\t}\n\tevictServer(e) {\n\t\tthis.clientCache.evict(e);\n\t}\n\tclearSolveCaches() {\n\t\tthis.clientCache.clearSolveCaches();\n\t}\n\tstats() {\n\t\treturn {\n\t\t\tclient: this.clientCache.solveCacheStats(),\n\t\t\tdefinitionBytes: this.byteCache.stats(),\n\t\t\tcoalescing: { inFlight: this.singleFlight.inFlight() }\n\t\t};\n\t}\n\tasync solve(e) {\n\t\tlet { definitionSource: t, byteRefOutcome: n, identity: r } = this.resolveDefinitionSource(e), a = await this.clientCache.getClient(e.server, { definitionGuid: e.definitionGuid }), o = _(e.inputs, e.values), s = `${r}:${e.server.id}:${S$1(o)}`, c = new AbortController(), l = !1, u = () => {\n\t\t\tl || c.abort();\n\t\t};\n\t\te.signal.addEventListener(`abort`, u, { once: !0 });\n\t\tlet d = e.acceptEncoding ?? ``, f;\n\t\ttry {\n\t\t\tf = await this.singleFlight.run(s, () => v({\n\t\t\t\tdefinitionSource: t,\n\t\t\t\tbyteRefOutcome: n,\n\t\t\t\tinputs: e.inputs,\n\t\t\t\tvalues: e.values,\n\t\t\t\tinputTree: o,\n\t\t\t\tclient: a,\n\t\t\t\tresponseMaxBytes: this.limits.computeResponseMaxBytes,\n\t\t\t\tsolveDeadlineMs: this.limits.solveDeadlineMs,\n\t\t\t\tacceptEncoding: d,\n\t\t\t\tsignal: c.signal,\n\t\t\t\tloadStartMs: e.loadStartMs ?? performance.now(),\n\t\t\t\tdefLoadMs: e.defLoadMs ?? 0,\n\t\t\t\tprepMarks: e.prepMarks\n\t\t\t}), () => {\n\t\t\t\tl = !0;\n\t\t\t});\n\t\t} finally {\n\t\t\te.signal.removeEventListener(`abort`, u);\n\t\t}\n\t\tif (f.kind !== `ok`) return f;\n\t\tlet p = y(f.envelope, d);\n\t\treturn {\n\t\t\t...f,\n\t\t\tenvelope: {\n\t\t\t\t...f.envelope,\n\t\t\t\tbody: p.body,\n\t\t\t\theaders: p.headers\n\t\t\t}\n\t\t};\n\t}\n\ttoResponse(e, t) {\n\t\tlet n = (e, n) => {\n\t\t\tt?.onError && t.onError(e, n);\n\t\t\tlet r = { \"Content-Type\": `application/json` };\n\t\t\treturn n.retryAfter !== void 0 && (r[`Retry-After`] = String(n.retryAfter)), {\n\t\t\t\tstatus: e,\n\t\t\t\theaders: r,\n\t\t\t\tbody: JSON.stringify(n)\n\t\t\t};\n\t\t};\n\t\tswitch (e.kind) {\n\t\t\tcase `ok`: return {\n\t\t\t\tstatus: 200,\n\t\t\t\theaders: e.envelope.headers,\n\t\t\t\tbody: e.envelope.body\n\t\t\t};\n\t\t\tcase `timeout`: return n(504, { message: e.message });\n\t\t\tcase `client_abort`: return n(499, { message: `Client closed request` });\n\t\t\tcase `too_large`: return n(413, { message: `Solve result is too large to return. This usually means a file output exceeds the supported size.` });\n\t\t\tcase `shed`: return n(503, {\n\t\t\t\tmessage: e.message,\n\t\t\t\tretryAfter: e.retryAfterSeconds\n\t\t\t});\n\t\t\tcase `compute_error`: throw e.error;\n\t\t}\n\t}\n\ttoWebResponse(e) {\n\t\tlet t = this.toResponse(e);\n\t\treturn new Response(typeof t.body == `string` ? t.body : new Uint8Array(t.body), {\n\t\t\tstatus: t.status,\n\t\t\theaders: t.headers\n\t\t});\n\t}\n\tresolveDefinitionSource(e) {\n\t\tlet t = e.definitionSource;\n\t\tif (D(t)) {\n\t\t\tlet e = this.byteCache.getOrLoad(t.versionId, t.load);\n\t\t\treturn {\n\t\t\t\tdefinitionSource: e,\n\t\t\t\tbyteRefOutcome: e.outcome,\n\t\t\t\tidentity: e.key\n\t\t\t};\n\t\t}\n\t\tif (E(t)) return {\n\t\t\tdefinitionSource: t,\n\t\t\tbyteRefOutcome: t.outcome,\n\t\t\tidentity: t.key\n\t\t};\n\t\tif (W(t)) return {\n\t\t\tdefinitionSource: t,\n\t\t\tidentity: t.key\n\t\t};\n\t\tif (!e.definitionKey) throw Error(`SolveEngine.solve(): definitionKey is required when definitionSource is raw bytes or a string.`);\n\t\treturn {\n\t\t\tdefinitionSource: t,\n\t\t\tidentity: e.definitionKey\n\t\t};\n\t}\n};\n//#endregion\n//#region src/lib/server/compute/engine.server.ts\n/**\n* App-wide `SolveEngine` instance (`@selvajs/solve/server`) — backs the warm\n* client cache, the definition-byte cache, and solve coalescing for the whole app.\n*/\n/**\n* `SELVA_FLAG_COMPUTE_DEBUG` is a three-way knob, not a boolean: `off` (default),\n* `on` (concise cache/timing logs), or `verbose` (adds full lib-level request/\n* response dumps, incl. base64 geometry). `verbose` implies `on`.\n*\n* `SELVA_FLAG_COMPUTE_DEBUG_VERBOSE` still honoured (as `verbose`) so an\n* operator's existing `.env` degrades to a warning instead of silently losing\n* the verbose logging they asked for.\n*/\nvar COMPUTE_DEBUG_MODE = (() => {\n\tconst raw = (private_env.SELVA_FLAG_COMPUTE_DEBUG ?? \"\").toLowerCase();\n\tif (raw === \"verbose\") return \"verbose\";\n\tconst on = [\n\t\t\"true\",\n\t\t\"1\",\n\t\t\"yes\",\n\t\t\"on\"\n\t].includes(raw);\n\tif ([\n\t\t\"true\",\n\t\t\"1\",\n\t\t\"yes\"\n\t].includes((private_env.SELVA_FLAG_COMPUTE_DEBUG_VERBOSE ?? \"\").toLowerCase())) {\n\t\tgetLogger().warn(\"Deprecated env var: rename it\", {\n\t\t\tcomponent: \"selva\",\n\t\t\tenvVar: \"SELVA_FLAG_COMPUTE_DEBUG_VERBOSE\",\n\t\t\trenamedTo: \"SELVA_FLAG_COMPUTE_DEBUG=verbose\"\n\t\t});\n\t\treturn \"verbose\";\n\t}\n\treturn on ? \"on\" : \"off\";\n})();\nvar COMPUTE_DEBUG = COMPUTE_DEBUG_MODE !== \"off\";\nvar engine = new O({\n\tlimits: computeLimits,\n\tlogger: lazyLogger,\n\tdebug: COMPUTE_DEBUG ? COMPUTE_DEBUG_MODE === \"verbose\" ? \"verbose\" : true : false,\n\tonDebugLog: (message) => getLogger().debug(message, { component: \"Compute/client-cache\" }),\n\tonSolveCoalesced: (key) => {\n\t\tif (COMPUTE_DEBUG) getLogger().debug(\"Coalesced onto in-flight solve\", {\n\t\t\tcomponent: \"Compute/single-flight\",\n\t\t\tkey: `${key.slice(0, 96)}…`\n\t\t});\n\t}\n});\n/** Get (or create) the warm client + scheduler for a resolved compute server. */\nfunction getClient(serverConfig, opts) {\n\treturn engine.getClient({\n\t\tid: serverConfig.id,\n\t\tserverUrl: serverConfig.serverUrl,\n\t\tapiKey: serverConfig.apiKey\n\t}, opts);\n}\n/** Drop the warm client for a server whose config just changed (URL/key rotation or deletion). */\nfunction evictComputeClient(id) {\n\tengine.evictServer(id);\n}\n/** Solve-cache counters for the admin panel's hit rate. */\nfunction solveCacheStats() {\n\treturn engine.stats().client;\n}\n/** Definition-byte-cache counters (hits/misses/evictions/entries/bytes) for admin/debug surfaces. */\nfunction definitionByteCacheStats() {\n\treturn engine.stats().definitionBytes;\n}\n//#endregion\nexport { getClient as a, evictComputeClient as i, definitionByteCacheStats as n, solveCacheStats as o, engine as r, COMPUTE_DEBUG as t };\n"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- import './client.js-B6kyzbcb.js';
2
- //# sourceMappingURL=forms.js-CD_2z_-J.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"forms.js-CD_2z_-J.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1,2 +0,0 @@
1
- import './client.js-B6kyzbcb.js';
2
- //# sourceMappingURL=navigation.js-CD_2z_-J.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"navigation.js-CD_2z_-J.js","sources":[],"sourcesContent":[],"names":[],"mappings":""}
@@ -1 +0,0 @@
1
- {"version":3,"file":"_server.ts.js-By1_1Jg_.js","sources":["../../../../../../../../../.svelte-kit/output/server/entries/endpoints/api/admin/compute/actions/_server.ts.js"],"sourcesContent":["import \"../../../../../../chunks/src.js\";\nimport { a as getComputeServerConfigStore } from \"../../../../../../chunks/providers.server.js\";\nimport { i as findServerById } from \"../../../../../../chunks/limits.js\";\nimport { y as requireManageCompute } from \"../../../../../../chunks/access.js\";\nimport { h } from \"../../../../../../chunks/schema.js\";\nimport { n as apiError, t as ApiErrorCode } from \"../../../../../../chunks/api-errors.js\";\nimport \"../../../../../../chunks/access2.server.js\";\nimport { json } from \"@sveltejs/kit\";\n//#region src/routes/api/admin/compute/actions/+server.ts\nvar POST = async ({ request, locals }) => {\n\trequireManageCompute(locals);\n\tconst body = await request.json().catch(() => null);\n\tif (!body || typeof body !== \"object\") apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Invalid request body\");\n\tconst { serverId, action } = body;\n\tif (!serverId) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"serverId required\");\n\tif (action !== \"purge\" && action !== \"shutdown\") apiError(400, ApiErrorCode.VALIDATION_FAILED, \"action must be 'purge' or 'shutdown'\");\n\tconst store = getComputeServerConfigStore();\n\tconst config = await store.getConfig(locals.ctx);\n\tconst server = findServerById(config, serverId);\n\tif (!server) apiError(404, ApiErrorCode.NOT_FOUND, \"Server not found\");\n\tconst apiKey = server.hasApiKey ? await store.getServerApiKey(locals.ctx, server.id) : void 0;\n\tconst stats = new h(server.serverUrl, apiKey);\n\ttry {\n\t\tif (action === \"purge\") {\n\t\t\tconst result = await stats.purgeAllChildren();\n\t\t\tif (result === null) apiError(502, ApiErrorCode.INTERNAL, \"Could not reach the server to purge its cache\");\n\t\t\treturn json({\n\t\t\t\taction,\n\t\t\t\t...result\n\t\t\t});\n\t\t}\n\t\tconst result = await stats.shutdownChildren();\n\t\tif (result === null) apiError(502, ApiErrorCode.INTERNAL, \"Could not reach the server to shut down its children\");\n\t\treturn json({\n\t\t\taction,\n\t\t\t...result\n\t\t});\n\t} finally {\n\t\tawait stats.dispose();\n\t}\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;AAQA;AACG,IAAC,IAAI,GAAG,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK;AAC1C,CAAC,oBAAoB,CAAC,MAAM,CAAC;AAC7B,CAAC,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC;AACpD,CAAC,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,iBAAiB,EAAE,sBAAsB,CAAC;AAC7G,CAAC,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,IAAI;AAClC,CAAC,IAAI,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,iBAAiB,EAAE,mBAAmB,CAAC;AAClF,CAAC,IAAI,MAAM,KAAK,OAAO,IAAI,MAAM,KAAK,UAAU,EAAE,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,iBAAiB,EAAE,sCAAsC,CAAC;AACvI,CAAC,MAAM,KAAK,GAAG,2BAA2B,EAAE;AAC5C,CAAC,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,GAAG,CAAC;AACjD,CAAC,MAAM,MAAM,GAAG,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC;AAChD,CAAC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,SAAS,EAAE,kBAAkB,CAAC;AACvE,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,GAAG,MAAM,KAAK,CAAC,eAAe,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,EAAE,CAAC,GAAG,MAAM;AAC9F,CAAC,MAAM,KAAK,GAAG,IAAI,CAAC,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC;AAC9C,CAAC,IAAI;AACL,EAAE,IAAI,MAAM,KAAK,OAAO,EAAE;AAC1B,GAAG,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,gBAAgB,EAAE;AAChD,GAAG,IAAI,MAAM,KAAK,IAAI,EAAE,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,QAAQ,EAAE,+CAA+C,CAAC;AAC7G,GAAG,OAAO,IAAI,CAAC;AACf,IAAI,MAAM;AACV,IAAI,GAAG;AACP,IAAI,CAAC;AACL,EAAE;AACF,EAAE,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,gBAAgB,EAAE;AAC/C,EAAE,IAAI,MAAM,KAAK,IAAI,EAAE,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,QAAQ,EAAE,sDAAsD,CAAC;AACnH,EAAE,OAAO,IAAI,CAAC;AACd,GAAG,MAAM;AACT,GAAG,GAAG;AACN,GAAG,CAAC;AACJ,CAAC,CAAC,SAAS;AACX,EAAE,MAAM,KAAK,CAAC,OAAO,EAAE;AACvB,CAAC;AACD;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"_page.svelte.js-CYFLCvL-.js","sources":["../../../../../../../.svelte-kit/output/server/entries/pages/admin/compute/_page.svelte.js"],"sourcesContent":["import { r as onDestroy } from \"../../../../chunks/index-server.js\";\nimport { A as escape_html, O as attr, a as derived, c as head, d as spread_props, p as stringify, s as ensure_array_like, t as attr_class } from \"../../../../chunks/server.js\";\nimport { r as SvelteSet } from \"../../../../chunks/index-server2.js\";\nimport { n as Icon } from \"../../../../chunks/utils2.js\";\nimport { t as Button } from \"../../../../chunks/button.js\";\nimport { t as Chevron_down } from \"../../../../chunks/chevron-down.js\";\nimport { t as Chevron_up } from \"../../../../chunks/chevron-up.js\";\nimport { t as Circle } from \"../../../../chunks/circle.js\";\nimport { t as Plus } from \"../../../../chunks/plus.js\";\nimport { t as Refresh_cw } from \"../../../../chunks/refresh-cw.js\";\nimport { t as Server } from \"../../../../chunks/server2.js\";\nimport { t as Star } from \"../../../../chunks/star.js\";\nimport { t as Trash_2 } from \"../../../../chunks/trash-2.js\";\nimport { n as invalidateAll } from \"../../../../chunks/client.js\";\nimport { t as SectionHeader } from \"../../../../chunks/SectionHeader.js\";\nimport { t as EmptyState } from \"../../../../chunks/EmptyState.js\";\nimport { t as Input } from \"../../../../chunks/input.js\";\nimport { n as Card, t as Card_content } from \"../../../../chunks/card-content.js\";\nimport { n as toast } from \"../../../../chunks/toast-state.svelte.js\";\nimport { t as ConfirmDialog } from \"../../../../chunks/ConfirmDialog.js\";\nimport { t as randomId } from \"../../../../chunks/randomId.js\";\nimport \"../../../../chunks/navigation.js\";\n//#region ../../node_modules/.pnpm/@lucide+svelte@1.35.0_svelte@5.56.10_@typescript-eslint+types@8.68.0_/node_modules/@lucide/svelte/dist/icons/eraser.svelte\nfunction Eraser($$renderer, $$props) {\n\tlet { $$slots, $$events, ...props } = $$props;\n\tIcon($$renderer, spread_props([\n\t\t{ name: \"eraser\" },\n\t\tprops,\n\t\t{ iconNode: [[\"path\", { \"d\": \"M21 21H8a2 2 0 0 1-1.42-.587l-3.994-3.999a2 2 0 0 1 0-2.828l10-10a2 2 0 0 1 2.829 0l5.999 6a2 2 0 0 1 0 2.828L12.834 21\" }], [\"path\", { \"d\": \"m5.082 11.09 8.828 8.828\" }]] }\n\t]));\n}\n//#endregion\n//#region ../../node_modules/.pnpm/@lucide+svelte@1.35.0_svelte@5.56.10_@typescript-eslint+types@8.68.0_/node_modules/@lucide/svelte/dist/icons/power.svelte\nfunction Power($$renderer, $$props) {\n\tlet { $$slots, $$events, ...props } = $$props;\n\tIcon($$renderer, spread_props([\n\t\t{ name: \"power\" },\n\t\tprops,\n\t\t{ iconNode: [[\"path\", { \"d\": \"M12 2v10\" }], [\"path\", { \"d\": \"M18.4 6.6a9 9 0 1 1-12.77.04\" }]] }\n\t]));\n}\nfunction useServerHealth(serverId) {\n\tlet state = {\n\t\tstate: \"idle\",\n\t\treachable: false,\n\t\tready: false,\n\t\trhinoVersion: null,\n\t\tcomputeVersion: null,\n\t\tselvaInstalled: false,\n\t\tselvaVersion: null,\n\t\tplugins: {},\n\t\tactiveChildren: null,\n\t\tidleSpanSeconds: null,\n\t\tfailureSummary: null\n\t};\n\tlet timerId = null;\n\tfunction check() {}\n\tfunction stop() {\n\t\tif (timerId !== null) {\n\t\t\tclearTimeout(timerId);\n\t\t\ttimerId = null;\n\t\t}\n\t}\n\treturn {\n\t\tget state() {\n\t\t\treturn state;\n\t\t},\n\t\tcheck,\n\t\tstop\n\t};\n}\n//#endregion\n//#region src/routes/admin/compute/+page.svelte\nfunction _page($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tconst API_KEY_CLEAR = \"__clear__\";\n\t\tlet { data } = $$props;\n\t\tfunction formatCacheBytes(bytes) {\n\t\t\tif (bytes >= 1073741824) return `${(bytes / 1073741824).toFixed(1)} GB`;\n\t\t\tif (bytes >= 1048576) return `${Math.round(bytes / 1048576)} MB`;\n\t\t\tif (bytes >= 1024) return `${Math.round(bytes / 1024)} KB`;\n\t\t\treturn `${bytes} B`;\n\t\t}\n\t\t/**\n\t\t* Hit rate as a percentage, or null before any solve has consulted the cache.\n\t\t* Reported as null rather than 0% because \"no data yet\" and \"nothing is\n\t\t* hitting\" are different answers to the question an operator is asking.\n\t\t*/\n\t\tfunction hitRate(c) {\n\t\t\tconst total = c.hits + c.misses;\n\t\t\treturn total === 0 ? null : Math.round(c.hits / total * 100);\n\t\t}\n\t\tfunction formatIdle(seconds) {\n\t\t\tif (seconds === null) return \"-\";\n\t\t\tif (seconds < 5) return \"just now\";\n\t\t\tif (seconds < 60) return `${Math.round(seconds)}s`;\n\t\t\tconst m = Math.floor(seconds / 60);\n\t\t\tif (m < 60) return `${m}m`;\n\t\t\treturn `${Math.floor(m / 60)}h ${m % 60}m`;\n\t\t}\n\t\tconst statusConfig = {\n\t\t\tidle: {\n\t\t\t\tlabel: \"Not checked\",\n\t\t\t\tcolor: \"text-muted-foreground\"\n\t\t\t},\n\t\t\tok: {\n\t\t\t\tlabel: \"Online\",\n\t\t\t\tcolor: \"text-green-600 dark:text-green-400\"\n\t\t\t},\n\t\t\twarning: {\n\t\t\t\tlabel: \"Warning\",\n\t\t\t\tcolor: \"text-yellow-600 dark:text-yellow-400\"\n\t\t\t},\n\t\t\terror: {\n\t\t\t\tlabel: \"Offline\",\n\t\t\t\tcolor: \"text-red-600 dark:text-red-400\"\n\t\t\t},\n\t\t\tchecking: {\n\t\t\t\tlabel: \"Checking…\",\n\t\t\t\tcolor: \"text-blue-600 dark:text-blue-400\"\n\t\t\t},\n\t\t\tloading: {\n\t\t\t\tlabel: \"Loading plugins…\",\n\t\t\t\tcolor: \"text-blue-600 dark:text-blue-400\"\n\t\t\t}\n\t\t};\n\t\tlet servers = [];\n\t\tlet defaultServerId = \"\";\n\t\tlet saving = false;\n\t\tconst dirtyIds = new SvelteSet();\n\t\tconst removedIds = new SvelteSet();\n\t\tlet expandedPlugins = {};\n\t\tlet expandedSharing = {};\n\t\tfunction toEntry(s) {\n\t\t\treturn {\n\t\t\t\tid: s.id,\n\t\t\t\tlabel: s.label,\n\t\t\t\tserverUrl: s.serverUrl,\n\t\t\t\tsharedWith: s.sharedWith === \"all\" ? \"all\" : [...s.sharedWith],\n\t\t\t\ttimeoutMs: s.timeoutMs ?? 3e4,\n\t\t\t\tretryCount: s.retryCount ?? 0,\n\t\t\t\tapiKey: \"\",\n\t\t\t\thasApiKey: s.hasApiKey\n\t\t\t};\n\t\t}\n\t\tfunction markDirty(id) {\n\t\t\tdirtyIds.add(id);\n\t\t}\n\t\tconst pendingCount = derived(() => dirtyIds.size + removedIds.size);\n\t\tconst defaultChanged = derived(() => defaultServerId !== data.defaultServerId && servers.some((s) => !removedIds.has(s.id)));\n\t\tconst hasChanges = derived(() => pendingCount() > 0 || defaultChanged());\n\t\tfunction forgetHealth(id) {\n\t\t\thealthMap[id]?.stop();\n\t\t\tconst { [id]: _, ...rest } = healthMap;\n\t\t\thealthMap = rest;\n\t\t}\n\t\tfunction discardChanges(id) {\n\t\t\tdirtyIds.delete(id);\n\t\t\tremovedIds.delete(id);\n\t\t\tconst original = data.servers.find((s) => s.id === id);\n\t\t\tif (!original) {\n\t\t\t\tforgetHealth(id);\n\t\t\t\tservers = servers.filter((s) => s.id !== id);\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tconst idx = servers.findIndex((s) => s.id === id);\n\t\t\tif (idx >= 0) servers[idx] = toEntry(original);\n\t\t}\n\t\tfunction discardAll() {\n\t\t\tfor (const id of [...dirtyIds, ...removedIds]) if (!data.servers.some((s) => s.id === id)) forgetHealth(id);\n\t\t\tdirtyIds.clear();\n\t\t\tremovedIds.clear();\n\t\t\tservers = data.servers.map(toEntry);\n\t\t\tdefaultServerId = data.defaultServerId;\n\t\t}\n\t\tlet healthMap = {};\n\t\tfunction ensureHealth(id) {\n\t\t\tif (!healthMap[id]) healthMap[id] = useServerHealth(() => id);\n\t\t\treturn healthMap[id];\n\t\t}\n\t\tonDestroy(() => {\n\t\t\tfor (const h of Object.values(healthMap)) h.stop();\n\t\t});\n\t\tfunction addServer() {\n\t\t\tconst id = randomId();\n\t\t\tif (servers.length === 0) defaultServerId = id;\n\t\t\tservers = [...servers, {\n\t\t\t\tid,\n\t\t\t\tlabel: \"new-server\",\n\t\t\t\tserverUrl: \"http://localhost:5000\",\n\t\t\t\tsharedWith: \"all\",\n\t\t\t\tapiKey: \"\",\n\t\t\t\thasApiKey: false,\n\t\t\t\ttimeoutMs: 3e4,\n\t\t\t\tretryCount: 0\n\t\t\t}];\n\t\t\tensureHealth(id);\n\t\t\tmarkDirty(id);\n\t\t}\n\t\tfunction removeServer(server) {\n\t\t\tif (!data.servers.some((s) => s.id === server.id)) {\n\t\t\t\tdirtyIds.delete(server.id);\n\t\t\t\tforgetHealth(server.id);\n\t\t\t\tservers = servers.filter((s) => s.id !== server.id);\n\t\t\t} else {\n\t\t\t\tremovedIds.add(server.id);\n\t\t\t\tdirtyIds.delete(server.id);\n\t\t\t}\n\t\t\tshowRemoveConfirm = false;\n\t\t}\n\t\tfunction undoRemove(id) {\n\t\t\tremovedIds.delete(id);\n\t\t}\n\t\tasync function save() {\n\t\t\tsaving = true;\n\t\t\ttry {\n\t\t\t\tconst kept = servers.filter((s) => !removedIds.has(s.id));\n\t\t\t\tconst payload = {\n\t\t\t\t\tdefaultServerId: kept.some((s) => s.id === defaultServerId) ? defaultServerId : kept[0]?.id ?? \"\",\n\t\t\t\t\tservers: kept.map(({ apiKey, hasApiKey: _, retryCount, timeoutMs, ...s }) => ({\n\t\t\t\t\t\t...s,\n\t\t\t\t\t\ttimeoutMs: Math.min(3e5, Math.max(1e3, Number(timeoutMs) || 3e4)),\n\t\t\t\t\t\t...apiKey === API_KEY_CLEAR ? { apiKey: null } : apiKey ? { apiKey } : {},\n\t\t\t\t\t\t...Number(retryCount) ? { retryCount: Math.min(5, Math.max(0, Number(retryCount))) } : {}\n\t\t\t\t\t}))\n\t\t\t\t};\n\t\t\t\tconst res = await fetch(\"/api/admin/compute\", {\n\t\t\t\t\tmethod: \"PUT\",\n\t\t\t\t\theaders: { \"Content-Type\": \"application/json\" },\n\t\t\t\t\tbody: JSON.stringify(payload)\n\t\t\t\t});\n\t\t\t\tif (res.ok) {\n\t\t\t\t\ttoast.success(removedIds.size > 0 ? `Saved — ${removedIds.size} server${removedIds.size === 1 ? \"\" : \"s\"} removed` : \"Compute config saved\");\n\t\t\t\t\tfor (const id of removedIds) forgetHealth(id);\n\t\t\t\t\tawait invalidateAll();\n\t\t\t\t\tdirtyIds.clear();\n\t\t\t\t\tremovedIds.clear();\n\t\t\t\t\tfor (const h of Object.values(healthMap)) h.stop();\n\t\t\t\t\thealthMap = {};\n\t\t\t\t\tfor (const s of servers) ensureHealth(s.id);\n\t\t\t\t} else {\n\t\t\t\t\tconst err = await res.json().catch(() => ({ error: \"Unknown error\" }));\n\t\t\t\t\ttoast.error(err.message || err.error || `Failed to save (${res.status})`);\n\t\t\t\t}\n\t\t\t} catch {\n\t\t\t\ttoast.error(\"Failed to save compute config\");\n\t\t\t} finally {\n\t\t\t\tsaving = false;\n\t\t\t}\n\t\t}\n\t\tlet busyAction = {};\n\t\tlet confirmingShutdown = null;\n\t\tlet confirmingPurge = null;\n\t\tlet showShutdownConfirm = false;\n\t\tlet showPurgeConfirm = false;\n\t\tlet confirmingRemove = null;\n\t\tlet showRemoveConfirm = false;\n\t\tasync function runAction(server, action) {\n\t\t\tbusyAction[server.id] = action;\n\t\t\ttry {\n\t\t\t\tconst res = await fetch(\"/api/admin/compute/actions\", {\n\t\t\t\t\tmethod: \"POST\",\n\t\t\t\t\theaders: { \"Content-Type\": \"application/json\" },\n\t\t\t\t\tbody: JSON.stringify({\n\t\t\t\t\t\tserverId: server.id,\n\t\t\t\t\t\taction\n\t\t\t\t\t})\n\t\t\t\t});\n\t\t\t\tconst data = await res.json().catch(() => ({}));\n\t\t\t\tif (!res.ok) {\n\t\t\t\t\ttoast.error(data.message || data.error || `Action failed (${res.status})`);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tif (action === \"purge\") {\n\t\t\t\t\tconst { totalPurged = 0, children = 0, confident } = data;\n\t\t\t\t\ttoast.success(confident ? `Purged ${totalPurged} cached solve${totalPurged === 1 ? \"\" : \"s\"}` : `Purged ~${totalPurged} across ${children} children (best-effort)`);\n\t\t\t\t\tshowPurgeConfirm = false;\n\t\t\t\t} else {\n\t\t\t\t\tconst { shutdown = 0, active = 0 } = data;\n\t\t\t\t\ttoast.success(`Shut down ${shutdown} child${shutdown === 1 ? \"\" : \"ren\"} (${active} still active)`);\n\t\t\t\t\tshowShutdownConfirm = false;\n\t\t\t\t\thealthMap[server.id]?.check();\n\t\t\t\t}\n\t\t\t} catch {\n\t\t\t\ttoast.error(`Failed to ${action} server`);\n\t\t\t} finally {\n\t\t\t\tbusyAction[server.id] = null;\n\t\t\t}\n\t\t}\n\t\tfunction cachePanel($$renderer, label, holds, envVar, c, note) {\n\t\t\tconst rate = hitRate(c);\n\t\t\t$$renderer.push(`<div class=\"space-y-2 rounded-lg border p-4\"><div class=\"flex items-baseline justify-between gap-3\"><div><p class=\"text-sm font-medium\">${escape_html(label)}</p> <p class=\"text-muted-foreground text-xs\">${escape_html(holds)}</p></div> <div class=\"text-right\"><p class=\"text-2xl font-semibold tabular-nums\">${escape_html(rate === null ? \"—\" : `${rate}%`)}</p> <p class=\"text-muted-foreground text-xs\">hit rate</p></div></div> <dl class=\"text-muted-foreground grid grid-cols-3 gap-2 text-xs\"><div><dt>Hits</dt> <dd class=\"text-foreground font-mono tabular-nums\">${escape_html(c.hits.toLocaleString())}</dd></div> <div><dt>Misses</dt> <dd class=\"text-foreground font-mono tabular-nums\">${escape_html(c.misses.toLocaleString())}</dd></div> <div><dt>Evictions</dt> <dd class=\"text-foreground font-mono tabular-nums\">${escape_html(c.evictions.toLocaleString())}</dd></div></dl> <div class=\"text-muted-foreground flex items-center justify-between gap-3 border-t pt-2 text-xs\"><span>${escape_html(c.entries.toLocaleString())}\n\t\t\t\t${escape_html(c.entries === 1 ? \"entry\" : \"entries\")} · ${escape_html(formatCacheBytes(c.bytes))} of ${escape_html(formatCacheBytes(c.budgetBytes))}</span> <code class=\"font-mono text-[10px]\">${escape_html(envVar)}</code></div> `);\n\t\t\tif (note) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<p class=\"text-muted-foreground text-xs\">${escape_html(note)}</p>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--></div>`);\n\t\t}\n\t\tfunction sharingControl($$renderer, server) {\n\t\t\tconst isAll = server.sharedWith === \"all\";\n\t\t\tconst orgIds = isAll ? /* @__PURE__ */ new Set() : new Set(server.sharedWith);\n\t\t\tconst isDefault = server.id === defaultServerId;\n\t\t\t$$renderer.push(`<div class=\"space-y-2\"><div class=\"flex items-center gap-3\"><p class=\"text-muted-foreground text-xs\">Available to</p> <div class=\"bg-muted inline-flex rounded-md p-0.5\"><button${attr_class(`rounded px-2 py-0.5 text-xs ${isAll ? \"bg-background shadow-sm\" : \"text-muted-foreground hover:text-foreground\"}`)}>All orgs</button> <button${attr_class(`rounded px-2 py-0.5 text-xs ${!isAll ? \"bg-background shadow-sm\" : \"text-muted-foreground hover:text-foreground\"}`)}>Specific orgs</button></div> `);\n\t\t\tif (!isAll && data.orgs.length > 0) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<button class=\"text-muted-foreground hover:text-foreground ml-auto flex items-center gap-1 text-xs\">${escape_html(orgIds.size)}/${escape_html(data.orgs.length)} selected `);\n\t\t\t\tif (expandedSharing[server.id]) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\tChevron_up($$renderer, { class: \"h-3 w-3\" });\n\t\t\t\t} else {\n\t\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\tChevron_down($$renderer, { class: \"h-3 w-3\" });\n\t\t\t\t}\n\t\t\t\t$$renderer.push(`<!--]--></button>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--></div> `);\n\t\t\tif (!isAll && expandedSharing[server.id]) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\tif (data.orgs.length === 0) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t$$renderer.push(`<p class=\"text-muted-foreground text-xs\">No organizations exist yet.</p>`);\n\t\t\t\t} else {\n\t\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\t$$renderer.push(`<div class=\"grid gap-1 sm:grid-cols-2\"><!--[-->`);\n\t\t\t\t\tconst each_array = ensure_array_like(data.orgs);\n\t\t\t\t\tfor (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n\t\t\t\t\t\tlet org = each_array[$$index];\n\t\t\t\t\t\t$$renderer.push(`<label class=\"hover:bg-muted/40 flex items-center gap-2 rounded px-2 py-1 text-xs\"><input type=\"checkbox\"${attr(\"checked\", orgIds.has(org.id), true)} class=\"h-3.5 w-3.5\"/> <span class=\"truncate\">${escape_html(org.name)}</span> <span class=\"text-muted-foreground ml-auto font-mono text-[10px]\">${escape_html(org.slug)}</span></label>`);\n\t\t\t\t\t}\n\t\t\t\t\t$$renderer.push(`<!--]--></div>`);\n\t\t\t\t}\n\t\t\t\t$$renderer.push(`<!--]-->`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> `);\n\t\t\tif (!isAll && isDefault) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<p class=\"text-muted-foreground text-xs\">This server is the global default — it stays visible to every org regardless of the\n\t\t\t\tallowlist.</p>`);\n\t\t\t} else if (!isAll && orgIds.size === 0) {\n\t\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t\t$$renderer.push(`<p class=\"text-muted-foreground text-xs\">No orgs selected — this server is dormant (admin-only).</p>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--></div>`);\n\t\t}\n\t\tfunction serverCard($$renderer, server) {\n\t\t\tconst health = healthMap[server.id]?.state;\n\t\t\tconst sc = statusConfig[health?.state ?? \"idle\"];\n\t\t\tconst isChecking = health?.state === \"checking\" || health?.state === \"loading\";\n\t\t\tconst pluginEntries = Object.entries(health?.plugins ?? {});\n\t\t\tconst isRemoved = removedIds.has(server.id);\n\t\t\tconst isDirty = dirtyIds.has(server.id) && !isRemoved;\n\t\t\t$$renderer.push(`<div${attr_class(`space-y-3 rounded-lg border p-4 transition-colors ${isRemoved ? \"border-destructive/40 bg-destructive/5\" : isDirty ? \"border-amber-400/60 bg-amber-50/30 dark:border-amber-500/40 dark:bg-amber-950/10\" : \"bg-muted/30\"}`)}>`);\n\t\t\tif (isRemoved) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<div class=\"flex items-center justify-between gap-3\"><p class=\"text-destructive text-xs font-medium\"><span class=\"line-through\">${escape_html(server.label)}</span> will be removed when you save</p> `);\n\t\t\t\tButton($$renderer, {\n\t\t\t\t\tvariant: \"ghost\",\n\t\t\t\t\tsize: \"sm\",\n\t\t\t\t\tonclick: () => undoRemove(server.id),\n\t\t\t\t\tdisabled: saving,\n\t\t\t\t\tclass: \"h-7\",\n\t\t\t\t\tchildren: ($$renderer) => {\n\t\t\t\t\t\t$$renderer.push(`<!---->Undo`);\n\t\t\t\t\t},\n\t\t\t\t\t$$slots: { default: true }\n\t\t\t\t});\n\t\t\t\t$$renderer.push(`<!----></div>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> <div${attr_class(`flex items-center justify-between ${isRemoved ? \"pointer-events-none opacity-50\" : \"\"}`)}><div class=\"flex items-center gap-2\">`);\n\t\t\tInput($$renderer, {\n\t\t\t\tplaceholder: \"label\",\n\t\t\t\tvalue: server.label,\n\t\t\t\toninput: (e) => {\n\t\t\t\t\tconst input = e.target;\n\t\t\t\t\tserver.label = input.value.toLowerCase().replace(/[^a-z0-9_-]/g, \"\");\n\t\t\t\t\tinput.value = server.label;\n\t\t\t\t\tmarkDirty(server.id);\n\t\t\t\t},\n\t\t\t\tclass: \"h-7 w-32 font-mono text-xs\"\n\t\t\t});\n\t\t\t$$renderer.push(`<!----> `);\n\t\t\tif (server.id === defaultServerId) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<span class=\"flex items-center gap-1 rounded-full bg-green-100 px-2 py-0.5 text-xs font-medium text-green-800 dark:bg-green-900/30 dark:text-green-400\">`);\n\t\t\t\tStar($$renderer, { class: \"h-3 w-3\" });\n\t\t\t\t$$renderer.push(`<!----> default</span>`);\n\t\t\t} else {\n\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t$$renderer.push(`<button class=\"text-muted-foreground hover:text-foreground text-xs underline-offset-2 hover:underline\">set as default</button>`);\n\t\t\t}\n\t\t\t$$renderer.push(`<!--]--></div> <div class=\"flex items-center gap-3\"><div class=\"flex items-center gap-1.5\"${attr(\"title\", health?.failureSummary ?? void 0)}>`);\n\t\t\tCircle($$renderer, { class: `h-2.5 w-2.5 shrink-0 fill-current ${stringify(sc.color)}` });\n\t\t\t$$renderer.push(`<!----> <span${attr_class(`text-xs font-medium ${stringify(sc.color)}`)}>${escape_html(sc.label)}</span></div> `);\n\t\t\tButton($$renderer, {\n\t\t\t\tvariant: \"outline\",\n\t\t\t\tsize: \"sm\",\n\t\t\t\tonclick: () => healthMap[server.id]?.check(),\n\t\t\t\tdisabled: isChecking,\n\t\t\t\tclass: \"h-7\",\n\t\t\t\ttitle: \"Probe this server's availability (retries for up to 1 min)\",\n\t\t\t\tchildren: ($$renderer) => {\n\t\t\t\t\tRefresh_cw($$renderer, { class: `mr-1.5 h-3.5 w-3.5 ${isChecking ? \"animate-spin\" : \"\"}` });\n\t\t\t\t\t$$renderer.push(`<!----> ${escape_html(isChecking ? \"Checking…\" : \"Check\")}`);\n\t\t\t\t},\n\t\t\t\t$$slots: { default: true }\n\t\t\t});\n\t\t\t$$renderer.push(`<!----> `);\n\t\t\tif (health?.reachable) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\tconst busy = busyAction[server.id];\n\t\t\t\tButton($$renderer, {\n\t\t\t\t\tvariant: \"outline\",\n\t\t\t\t\tsize: \"sm\",\n\t\t\t\t\tonclick: () => {\n\t\t\t\t\t\tconfirmingPurge = server;\n\t\t\t\t\t\tshowPurgeConfirm = true;\n\t\t\t\t\t},\n\t\t\t\t\tdisabled: busy !== null && busy !== void 0,\n\t\t\t\t\tclass: \"h-7\",\n\t\t\t\t\ttitle: \"Clear cached solve results across this server's children (best-effort fleet-wide)\",\n\t\t\t\t\tchildren: ($$renderer) => {\n\t\t\t\t\t\tEraser($$renderer, { class: \"mr-1.5 h-3.5 w-3.5\" });\n\t\t\t\t\t\t$$renderer.push(`<!----> ${escape_html(busy === \"purge\" ? \"Purging…\" : \"Purge cache\")}`);\n\t\t\t\t\t},\n\t\t\t\t\t$$slots: { default: true }\n\t\t\t\t});\n\t\t\t\t$$renderer.push(`<!----> `);\n\t\t\t\tButton($$renderer, {\n\t\t\t\t\tvariant: \"outline\",\n\t\t\t\t\tsize: \"sm\",\n\t\t\t\t\tonclick: () => {\n\t\t\t\t\t\tconfirmingShutdown = server;\n\t\t\t\t\t\tshowShutdownConfirm = true;\n\t\t\t\t\t},\n\t\t\t\t\tdisabled: busy !== null && busy !== void 0,\n\t\t\t\t\tclass: \"text-destructive hover:text-destructive h-7\",\n\t\t\t\t\ttitle: \"Gracefully shut down all child processes (they auto-respawn on the next request)\",\n\t\t\t\t\tchildren: ($$renderer) => {\n\t\t\t\t\t\tPower($$renderer, { class: \"mr-1.5 h-3.5 w-3.5\" });\n\t\t\t\t\t\t$$renderer.push(`<!----> ${escape_html(busy === \"shutdown\" ? \"Shutting down…\" : \"Shutdown children\")}`);\n\t\t\t\t\t},\n\t\t\t\t\t$$slots: { default: true }\n\t\t\t\t});\n\t\t\t\t$$renderer.push(`<!---->`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> `);\n\t\t\tif (isDirty) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\tButton($$renderer, {\n\t\t\t\t\tvariant: \"ghost\",\n\t\t\t\t\tsize: \"sm\",\n\t\t\t\t\tonclick: () => discardChanges(server.id),\n\t\t\t\t\tdisabled: saving,\n\t\t\t\t\tclass: \"text-muted-foreground hover:text-foreground h-7\",\n\t\t\t\t\ttitle: \"Revert this server to its saved values\",\n\t\t\t\t\tchildren: ($$renderer) => {\n\t\t\t\t\t\t$$renderer.push(`<!---->Discard`);\n\t\t\t\t\t},\n\t\t\t\t\t$$slots: { default: true }\n\t\t\t\t});\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> `);\n\t\t\tButton($$renderer, {\n\t\t\t\tvariant: \"ghost\",\n\t\t\t\tsize: \"sm\",\n\t\t\t\tonclick: () => {\n\t\t\t\t\tconfirmingRemove = server;\n\t\t\t\t\tshowRemoveConfirm = true;\n\t\t\t\t},\n\t\t\t\tdisabled: server.id === defaultServerId,\n\t\t\t\ttitle: server.id === defaultServerId ? \"Set another server as default before deleting\" : void 0,\n\t\t\t\tclass: \"text-destructive hover:text-destructive h-7 w-7 p-0\",\n\t\t\t\tchildren: ($$renderer) => {\n\t\t\t\t\tTrash_2($$renderer, { class: \"h-3.5 w-3.5\" });\n\t\t\t\t},\n\t\t\t\t$$slots: { default: true }\n\t\t\t});\n\t\t\t$$renderer.push(`<!----></div></div> `);\n\t\t\tif (health?.failureSummary && !health.reachable && !isRemoved) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<p class=\"text-muted-foreground text-xs\">${escape_html(health.failureSummary)}</p>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> `);\n\t\t\tif (health?.reachable && !isRemoved) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<div class=\"grid grid-cols-3 gap-2\"><div class=\"bg-muted/40 rounded-md px-3 py-2\"><p class=\"text-muted-foreground text-xs\">Rhino</p> <p class=\"mt-0.5 text-xs font-medium\">${escape_html(health.rhinoVersion ?? \"-\")}</p></div> <div class=\"bg-muted/40 rounded-md px-3 py-2\"><p class=\"text-muted-foreground text-xs\">Compute</p> <p class=\"mt-0.5 text-xs font-medium\">${escape_html(health.computeVersion ?? \"-\")}</p></div> <div class=\"bg-muted/40 rounded-md px-3 py-2\"><p class=\"text-muted-foreground text-xs\">Selva Plugin</p> <p class=\"mt-0.5 text-xs font-medium\">`);\n\t\t\t\tif (health.selvaInstalled) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t$$renderer.push(`${escape_html(health.selvaVersion)}`);\n\t\t\t\t} else if (!health.ready) {\n\t\t\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t\t\t$$renderer.push(`<span class=\"text-muted-foreground\">Loading…</span>`);\n\t\t\t\t} else {\n\t\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\t$$renderer.push(`<span class=\"text-red-600 dark:text-red-400\">Not installed</span>`);\n\t\t\t\t}\n\t\t\t\t$$renderer.push(`<!--]--></p></div></div> <div class=\"grid grid-cols-2 gap-2\"><div class=\"bg-muted/40 rounded-md px-3 py-2\"><p class=\"text-muted-foreground text-xs\">Active children</p> <p class=\"mt-0.5 text-xs font-medium\">${escape_html(health.activeChildren ?? \"-\")}</p></div> <div class=\"bg-muted/40 rounded-md px-3 py-2\"><p class=\"text-muted-foreground text-xs\">Idle for</p> <p class=\"mt-0.5 text-xs font-medium\">${escape_html(formatIdle(health.idleSpanSeconds))}</p></div></div>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> <div${attr_class(`grid gap-2 sm:grid-cols-2 ${isRemoved ? \"pointer-events-none opacity-50\" : \"\"}`)}><div class=\"space-y-1\"><p class=\"text-muted-foreground text-xs\">Server URL</p> `);\n\t\t\tInput($$renderer, {\n\t\t\t\tplaceholder: \"http://localhost:5000\",\n\t\t\t\toninput: () => markDirty(server.id),\n\t\t\t\tclass: \"font-mono text-xs\",\n\t\t\t\tget value() {\n\t\t\t\t\treturn server.serverUrl;\n\t\t\t\t},\n\t\t\t\tset value($$value) {\n\t\t\t\t\tserver.serverUrl = $$value;\n\t\t\t\t\t$$settled = false;\n\t\t\t\t}\n\t\t\t});\n\t\t\t$$renderer.push(`<!----></div> <div class=\"space-y-1\"><p class=\"text-muted-foreground text-xs\">API Key (optional)</p> <div class=\"flex gap-1.5\">`);\n\t\t\tInput($$renderer, {\n\t\t\t\ttype: \"password\",\n\t\t\t\tplaceholder: server.hasApiKey && server.apiKey !== API_KEY_CLEAR && !server.apiKey ? \"Key set - enter new value to replace\" : server.apiKey === API_KEY_CLEAR ? \"Key will be cleared on save\" : \"\",\n\t\t\t\tvalue: server.apiKey === API_KEY_CLEAR ? \"\" : server.apiKey,\n\t\t\t\tdisabled: server.apiKey === API_KEY_CLEAR,\n\t\t\t\toninput: (e) => {\n\t\t\t\t\tserver.apiKey = e.target.value;\n\t\t\t\t\tmarkDirty(server.id);\n\t\t\t\t},\n\t\t\t\tclass: \"font-mono text-xs\"\n\t\t\t});\n\t\t\t$$renderer.push(`<!----> `);\n\t\t\tif (server.hasApiKey && server.apiKey !== API_KEY_CLEAR && !server.apiKey) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<button class=\"text-muted-foreground hover:text-destructive shrink-0 text-xs underline-offset-2 hover:underline\">Clear</button>`);\n\t\t\t} else if (server.apiKey === API_KEY_CLEAR) {\n\t\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t\t$$renderer.push(`<button class=\"text-muted-foreground hover:text-foreground shrink-0 text-xs underline-offset-2 hover:underline\">Undo</button>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--></div></div> <div class=\"space-y-1\"><p class=\"text-muted-foreground text-xs\">Timeout (ms)</p> `);\n\t\t\tInput($$renderer, {\n\t\t\t\ttype: \"number\",\n\t\t\t\tplaceholder: \"30000\",\n\t\t\t\toninput: () => markDirty(server.id),\n\t\t\t\tonblur: () => {\n\t\t\t\t\tserver.timeoutMs = Math.min(3e5, Math.max(1e3, Number(server.timeoutMs) || 3e4));\n\t\t\t\t},\n\t\t\t\tclass: \"text-xs\",\n\t\t\t\tget value() {\n\t\t\t\t\treturn server.timeoutMs;\n\t\t\t\t},\n\t\t\t\tset value($$value) {\n\t\t\t\t\tserver.timeoutMs = $$value;\n\t\t\t\t\t$$settled = false;\n\t\t\t\t}\n\t\t\t});\n\t\t\t$$renderer.push(`<!----></div> <div class=\"space-y-1\"><p class=\"text-muted-foreground text-xs\">Retries</p> `);\n\t\t\tInput($$renderer, {\n\t\t\t\ttype: \"number\",\n\t\t\t\tplaceholder: \"0\",\n\t\t\t\toninput: () => markDirty(server.id),\n\t\t\t\tonblur: () => {\n\t\t\t\t\tserver.retryCount = Math.min(5, Math.max(0, Number(server.retryCount) || 0));\n\t\t\t\t},\n\t\t\t\tclass: \"text-xs\",\n\t\t\t\tget value() {\n\t\t\t\t\treturn server.retryCount;\n\t\t\t\t},\n\t\t\t\tset value($$value) {\n\t\t\t\t\tserver.retryCount = $$value;\n\t\t\t\t\t$$settled = false;\n\t\t\t\t}\n\t\t\t});\n\t\t\t$$renderer.push(`<!----></div></div> `);\n\t\t\tif (data.tenancy !== \"single\" && !isRemoved) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\tsharingControl($$renderer, server);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> `);\n\t\t\tif (health?.reachable && pluginEntries.length > 0 && !isRemoved) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<div><button class=\"text-muted-foreground hover:text-foreground flex items-center gap-1 text-xs\">`);\n\t\t\t\tif (expandedPlugins[server.id]) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\tChevron_up($$renderer, { class: \"h-3 w-3\" });\n\t\t\t\t} else {\n\t\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\tChevron_down($$renderer, { class: \"h-3 w-3\" });\n\t\t\t\t}\n\t\t\t\t$$renderer.push(`<!--]--> ${escape_html(pluginEntries.length)} Grasshopper plugin${escape_html(pluginEntries.length === 1 ? \"\" : \"s\")}</button> `);\n\t\t\t\tif (expandedPlugins[server.id]) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t$$renderer.push(`<div class=\"mt-2 grid gap-1.5 sm:grid-cols-2 lg:grid-cols-3\"><!--[-->`);\n\t\t\t\t\tconst each_array_1 = ensure_array_like(pluginEntries);\n\t\t\t\t\tfor (let $$index_1 = 0, $$length = each_array_1.length; $$index_1 < $$length; $$index_1++) {\n\t\t\t\t\t\tlet [name, version] = each_array_1[$$index_1];\n\t\t\t\t\t\t$$renderer.push(`<div class=\"bg-muted/40 flex items-center justify-between rounded-md px-3 py-1.5\"><span class=\"text-xs font-medium\">${escape_html(name)}</span> <span class=\"text-muted-foreground text-xs\">${escape_html(version)}</span></div>`);\n\t\t\t\t\t}\n\t\t\t\t\t$$renderer.push(`<!--]--></div>`);\n\t\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t\t$$renderer.push(`<!--]--></div>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--></div>`);\n\t\t}\n\t\tlet $$settled = true;\n\t\tlet $$inner_renderer;\n\t\tfunction $$render_inner($$renderer) {\n\t\t\thead(\"1h8e46q\", $$renderer, ($$renderer) => {\n\t\t\t\t$$renderer.title(($$renderer) => {\n\t\t\t\t\t$$renderer.push(`<title>Admin · Compute</title>`);\n\t\t\t\t});\n\t\t\t});\n\t\t\t$$renderer.push(`<div class=\"space-y-6\">`);\n\t\t\tSectionHeader($$renderer, {\n\t\t\t\teyebrow: \"Admin\",\n\t\t\t\ttitle: \"Compute\",\n\t\t\t\tdescription: \"Manage compute servers. Share servers with specific orgs to expose them in pickers. When ALLOW_ORG_COMPUTE_OVERRIDE is on, org owners can configure their own servers.\"\n\t\t\t});\n\t\t\t$$renderer.push(`<!----> `);\n\t\t\tif (Card) {\n\t\t\t\t$$renderer.push(\"<!--[-->\");\n\t\t\t\tCard($$renderer, {\n\t\t\t\t\tchildren: ($$renderer) => {\n\t\t\t\t\t\tif (Card_content) {\n\t\t\t\t\t\t\t$$renderer.push(\"<!--[-->\");\n\t\t\t\t\t\t\tCard_content($$renderer, {\n\t\t\t\t\t\t\t\tclass: \"space-y-3 pt-6\",\n\t\t\t\t\t\t\t\tchildren: ($$renderer) => {\n\t\t\t\t\t\t\t\t\tif (servers.length === 0) {\n\t\t\t\t\t\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t\t\t\t\t\t{\n\t\t\t\t\t\t\t\t\t\t\tfunction actions($$renderer) {\n\t\t\t\t\t\t\t\t\t\t\t\tButton($$renderer, {\n\t\t\t\t\t\t\t\t\t\t\t\t\tvariant: \"outline\",\n\t\t\t\t\t\t\t\t\t\t\t\t\tsize: \"sm\",\n\t\t\t\t\t\t\t\t\t\t\t\t\tonclick: addServer,\n\t\t\t\t\t\t\t\t\t\t\t\t\tchildren: ($$renderer) => {\n\t\t\t\t\t\t\t\t\t\t\t\t\t\tPlus($$renderer, { class: \"mr-1.5 h-3.5 w-3.5\" });\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t$$renderer.push(`<!----> Add server`);\n\t\t\t\t\t\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t\t\t\t\t\t$$slots: { default: true }\n\t\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t\tEmptyState($$renderer, {\n\t\t\t\t\t\t\t\t\t\t\t\ticon: Server,\n\t\t\t\t\t\t\t\t\t\t\t\ttitle: \"No servers configured\",\n\t\t\t\t\t\t\t\t\t\t\t\tactions,\n\t\t\t\t\t\t\t\t\t\t\t\t$$slots: { actions: true }\n\t\t\t\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t\t\t\t\t\t\t$$renderer.push(`<!--[-->`);\n\t\t\t\t\t\t\t\t\t\tconst each_array_2 = ensure_array_like(servers);\n\t\t\t\t\t\t\t\t\t\tfor (let $$index_2 = 0, $$length = each_array_2.length; $$index_2 < $$length; $$index_2++) {\n\t\t\t\t\t\t\t\t\t\t\tlet server = each_array_2[$$index_2];\n\t\t\t\t\t\t\t\t\t\t\tserverCard($$renderer, server);\n\t\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t\t$$renderer.push(`<!--]--> <button type=\"button\" class=\"border-muted-foreground/30 text-muted-foreground hover:border-foreground/50 hover:text-foreground hover:bg-muted/30 flex w-full items-center justify-center gap-2 rounded-lg border border-dashed py-4 text-sm font-medium transition-colors\">`);\n\t\t\t\t\t\t\t\t\t\tPlus($$renderer, { class: \"h-4 w-4\" });\n\t\t\t\t\t\t\t\t\t\t$$renderer.push(`<!----> Add another server</button>`);\n\t\t\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\t\t\t$$renderer.push(`<!--]-->`);\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t$$slots: { default: true }\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$$renderer.push(\"<!--[!-->\");\n\t\t\t\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t$$slots: { default: true }\n\t\t\t\t});\n\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t} else {\n\t\t\t\t$$renderer.push(\"<!--[!-->\");\n\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t}\n\t\t\t$$renderer.push(` `);\n\t\t\tif (hasChanges()) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<div class=\"bg-background/95 sticky bottom-4 z-10 flex items-center justify-between gap-4 rounded-lg border border-amber-400/60 p-3 shadow-lg backdrop-blur dark:border-amber-500/40\"><p class=\"text-sm font-medium\">${escape_html(pendingCount() === 0 ? \"Default server changed\" : `${pendingCount()} unsaved change${pendingCount() === 1 ? \"\" : \"s\"}`)} `);\n\t\t\t\tif (removedIds.size > 0) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t$$renderer.push(`<span class=\"text-muted-foreground font-normal\">· ${escape_html(removedIds.size)} pending removal</span>`);\n\t\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t\t$$renderer.push(`<!--]--></p> <div class=\"flex items-center gap-2\">`);\n\t\t\t\tButton($$renderer, {\n\t\t\t\t\tvariant: \"ghost\",\n\t\t\t\t\tsize: \"sm\",\n\t\t\t\t\tonclick: discardAll,\n\t\t\t\t\tdisabled: saving,\n\t\t\t\t\tchildren: ($$renderer) => {\n\t\t\t\t\t\t$$renderer.push(`<!---->Discard all`);\n\t\t\t\t\t},\n\t\t\t\t\t$$slots: { default: true }\n\t\t\t\t});\n\t\t\t\t$$renderer.push(`<!----> `);\n\t\t\t\tButton($$renderer, {\n\t\t\t\t\tsize: \"sm\",\n\t\t\t\t\tonclick: save,\n\t\t\t\t\tdisabled: saving,\n\t\t\t\t\tchildren: ($$renderer) => {\n\t\t\t\t\t\t$$renderer.push(`<!---->${escape_html(saving ? \"Saving…\" : \"Save changes\")}`);\n\t\t\t\t\t},\n\t\t\t\t\t$$slots: { default: true }\n\t\t\t\t});\n\t\t\t\t$$renderer.push(`<!----></div></div>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> `);\n\t\t\tSectionHeader($$renderer, {\n\t\t\t\ttitle: \"Caching\",\n\t\t\t\tdescription: \"Whether solves are actually being served from memory. Counters are for this Selva instance and reset when it restarts; behind a load balancer each instance keeps its own.\"\n\t\t\t});\n\t\t\t$$renderer.push(`<!----> `);\n\t\t\tif (Card) {\n\t\t\t\t$$renderer.push(\"<!--[-->\");\n\t\t\t\tCard($$renderer, {\n\t\t\t\t\tchildren: ($$renderer) => {\n\t\t\t\t\t\tif (Card_content) {\n\t\t\t\t\t\t\t$$renderer.push(\"<!--[-->\");\n\t\t\t\t\t\t\tCard_content($$renderer, {\n\t\t\t\t\t\t\t\tclass: \"grid gap-3 pt-6 sm:grid-cols-2\",\n\t\t\t\t\t\t\t\tchildren: ($$renderer) => {\n\t\t\t\t\t\t\t\t\tcachePanel($$renderer, \"Solve cache\", \"Results, so identical inputs skip Rhino entirely\", \"COMPUTE_SOLVE_CACHE_MB\", data.caches.solve, `Budget is per compute server — ${data.caches.solve.warmClients} warm, so up to ${formatCacheBytes(data.caches.solve.budgetTotalBytes)} total right now.`);\n\t\t\t\t\t\t\t\t\t$$renderer.push(`<!----> `);\n\t\t\t\t\t\t\t\t\tcachePanel($$renderer, \"Definition cache\", \".gh bytes, so a solve skips the storage read\", \"COMPUTE_DEFINITION_CACHE_MB\", data.caches.definition, null);\n\t\t\t\t\t\t\t\t\t$$renderer.push(`<!---->`);\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t\t$$slots: { default: true }\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t\t\t\t} else {\n\t\t\t\t\t\t\t$$renderer.push(\"<!--[!-->\");\n\t\t\t\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t\t\t\t}\n\t\t\t\t\t},\n\t\t\t\t\t$$slots: { default: true }\n\t\t\t\t});\n\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t} else {\n\t\t\t\t$$renderer.push(\"<!--[!-->\");\n\t\t\t\t$$renderer.push(\"<!--]-->\");\n\t\t\t}\n\t\t\t$$renderer.push(`</div> `);\n\t\t\tConfirmDialog($$renderer, {\n\t\t\t\ttitle: \"Shutdown children?\",\n\t\t\t\tdescription: confirmingShutdown ? `Shut down ALL child processes on \"${confirmingShutdown.label}\"? In-flight solves on those children will be interrupted. The pool auto-respawns on the next request.` : void 0,\n\t\t\t\tconfirmLabel: \"Shutdown\",\n\t\t\t\tpendingLabel: \"Shutting down…\",\n\t\t\t\tvariant: \"destructive\",\n\t\t\t\tonConfirm: async () => {\n\t\t\t\t\tif (confirmingShutdown) await runAction(confirmingShutdown, \"shutdown\");\n\t\t\t\t},\n\t\t\t\tget open() {\n\t\t\t\t\treturn showShutdownConfirm;\n\t\t\t\t},\n\t\t\t\tset open($$value) {\n\t\t\t\t\tshowShutdownConfirm = $$value;\n\t\t\t\t\t$$settled = false;\n\t\t\t\t}\n\t\t\t});\n\t\t\t$$renderer.push(`<!----> `);\n\t\t\tConfirmDialog($$renderer, {\n\t\t\t\ttitle: \"Purge cache?\",\n\t\t\t\tdescription: confirmingPurge ? `Clear cached solve results across \"${confirmingPurge.label}\"'s children? This is best-effort across the pool.` : void 0,\n\t\t\t\tconfirmLabel: \"Purge\",\n\t\t\t\tpendingLabel: \"Purging…\",\n\t\t\t\tonConfirm: async () => {\n\t\t\t\t\tif (confirmingPurge) await runAction(confirmingPurge, \"purge\");\n\t\t\t\t},\n\t\t\t\tget open() {\n\t\t\t\t\treturn showPurgeConfirm;\n\t\t\t\t},\n\t\t\t\tset open($$value) {\n\t\t\t\t\tshowPurgeConfirm = $$value;\n\t\t\t\t\t$$settled = false;\n\t\t\t\t}\n\t\t\t});\n\t\t\t$$renderer.push(`<!----> `);\n\t\t\tConfirmDialog($$renderer, {\n\t\t\t\ttitle: \"Remove this server?\",\n\t\t\t\tdescription: confirmingRemove ? `Remove \"${confirmingRemove.label}\" from the compute config? It stays listed, struck through, until you save.` : void 0,\n\t\t\t\tconfirmLabel: \"Remove\",\n\t\t\t\tvariant: \"destructive\",\n\t\t\t\tonConfirm: () => {\n\t\t\t\t\tif (confirmingRemove) removeServer(confirmingRemove);\n\t\t\t\t},\n\t\t\t\tget open() {\n\t\t\t\t\treturn showRemoveConfirm;\n\t\t\t\t},\n\t\t\t\tset open($$value) {\n\t\t\t\t\tshowRemoveConfirm = $$value;\n\t\t\t\t\t$$settled = false;\n\t\t\t\t}\n\t\t\t});\n\t\t\t$$renderer.push(`<!---->`);\n\t\t}\n\t\tdo {\n\t\t\t$$settled = true;\n\t\t\t$$inner_renderer = $$renderer.copy();\n\t\t\t$$render_inner($$inner_renderer);\n\t\t} while (!$$settled);\n\t\t$$renderer.subsume($$inner_renderer);\n\t});\n}\n//#endregion\nexport { _page as default };\n"],"names":[],"mappings":"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"}