@selvajs/selva 4.0.0 → 4.2.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 (337) hide show
  1. package/build/client/_app/immutable/assets/0.vgCL98o5.css +1 -0
  2. package/build/client/_app/immutable/assets/0.vgCL98o5.css.br +0 -0
  3. package/build/client/_app/immutable/assets/0.vgCL98o5.css.gz +0 -0
  4. package/build/client/_app/immutable/chunks/{DGr_EUx4.js → 2n-qzJg2.js} +1 -1
  5. package/build/client/_app/immutable/chunks/2n-qzJg2.js.br +0 -0
  6. package/build/client/_app/immutable/chunks/2n-qzJg2.js.gz +0 -0
  7. package/build/client/_app/immutable/chunks/{DT5O4b-_.js → BQ0arxbK.js} +1 -1
  8. package/build/client/_app/immutable/chunks/BQ0arxbK.js.br +0 -0
  9. package/build/client/_app/immutable/chunks/BQ0arxbK.js.gz +0 -0
  10. package/build/client/_app/immutable/chunks/{7DlWX6a_.js → C1kpvSgW.js} +1 -1
  11. package/build/client/_app/immutable/chunks/C1kpvSgW.js.br +0 -0
  12. package/build/client/_app/immutable/chunks/C1kpvSgW.js.gz +0 -0
  13. package/build/client/_app/immutable/chunks/{C_pyGEAV.js → C98bdhQ5.js} +1 -1
  14. package/build/client/_app/immutable/chunks/C98bdhQ5.js.br +0 -0
  15. package/build/client/_app/immutable/chunks/C98bdhQ5.js.gz +0 -0
  16. package/build/client/_app/immutable/chunks/D-Fls4-N.js +1 -0
  17. package/build/client/_app/immutable/chunks/D-Fls4-N.js.br +0 -0
  18. package/build/client/_app/immutable/chunks/D-Fls4-N.js.gz +0 -0
  19. package/build/client/_app/immutable/chunks/{7OGPJeUM.js → D37hHIb0.js} +1 -1
  20. package/build/client/_app/immutable/chunks/D37hHIb0.js.br +0 -0
  21. package/build/client/_app/immutable/chunks/D37hHIb0.js.gz +0 -0
  22. package/build/client/_app/immutable/chunks/{D0kO1GS0.js → DNu_no60.js} +1 -1
  23. package/build/client/_app/immutable/chunks/DNu_no60.js.br +0 -0
  24. package/build/client/_app/immutable/chunks/DNu_no60.js.gz +0 -0
  25. package/build/client/_app/immutable/chunks/snZK0J5H.js +1 -0
  26. package/build/client/_app/immutable/chunks/snZK0J5H.js.br +0 -0
  27. package/build/client/_app/immutable/chunks/snZK0J5H.js.gz +0 -0
  28. package/build/client/_app/immutable/entry/app.1YljYqLj.js +2 -0
  29. package/build/client/_app/immutable/entry/app.1YljYqLj.js.br +0 -0
  30. package/build/client/_app/immutable/entry/app.1YljYqLj.js.gz +0 -0
  31. package/build/client/_app/immutable/entry/start.C41rnrMx.js +1 -0
  32. package/build/client/_app/immutable/entry/start.C41rnrMx.js.br +0 -0
  33. package/build/client/_app/immutable/entry/start.C41rnrMx.js.gz +0 -0
  34. package/build/client/_app/immutable/nodes/{1.NC0eJqYH.js → 1.5JE3G8iG.js} +1 -1
  35. package/build/client/_app/immutable/nodes/1.5JE3G8iG.js.br +0 -0
  36. package/build/client/_app/immutable/nodes/1.5JE3G8iG.js.gz +0 -0
  37. package/build/client/_app/immutable/nodes/11.Co2EmpEg.js +2 -0
  38. package/build/client/_app/immutable/nodes/11.Co2EmpEg.js.br +0 -0
  39. package/build/client/_app/immutable/nodes/11.Co2EmpEg.js.gz +0 -0
  40. package/build/client/_app/immutable/nodes/{13.DoCSNk6B.js → 13.D5OdE_HH.js} +1 -1
  41. package/build/client/_app/immutable/nodes/13.D5OdE_HH.js.br +0 -0
  42. package/build/client/_app/immutable/nodes/13.D5OdE_HH.js.gz +0 -0
  43. package/build/client/_app/immutable/nodes/{14.CGaF6W-i.js → 14.UGx5pLUS.js} +1 -1
  44. package/build/client/_app/immutable/nodes/14.UGx5pLUS.js.br +0 -0
  45. package/build/client/_app/immutable/nodes/14.UGx5pLUS.js.gz +0 -0
  46. package/build/client/_app/immutable/nodes/15.czhLtsoD.js +13 -0
  47. package/build/client/_app/immutable/nodes/15.czhLtsoD.js.br +0 -0
  48. package/build/client/_app/immutable/nodes/15.czhLtsoD.js.gz +0 -0
  49. package/build/client/_app/immutable/nodes/{16.CK0W0845.js → 16.CqZNgdz-.js} +1 -1
  50. package/build/client/_app/immutable/nodes/16.CqZNgdz-.js.br +0 -0
  51. package/build/client/_app/immutable/nodes/16.CqZNgdz-.js.gz +0 -0
  52. package/build/client/_app/immutable/nodes/{17.BLCtgsLP.js → 17.B1PHOW1Y.js} +1 -1
  53. package/build/client/_app/immutable/nodes/17.B1PHOW1Y.js.br +0 -0
  54. package/build/client/_app/immutable/nodes/17.B1PHOW1Y.js.gz +0 -0
  55. package/build/client/_app/immutable/nodes/{19.Dx5b18Qv.js → 19.ClB_k0uw.js} +1 -1
  56. package/build/client/_app/immutable/nodes/19.ClB_k0uw.js.br +0 -0
  57. package/build/client/_app/immutable/nodes/19.ClB_k0uw.js.gz +0 -0
  58. package/build/client/_app/immutable/nodes/{2.BxDq9fgp.js → 2.uPLLf3gR.js} +1 -1
  59. package/build/client/_app/immutable/nodes/2.uPLLf3gR.js.br +0 -0
  60. package/build/client/_app/immutable/nodes/2.uPLLf3gR.js.gz +0 -0
  61. package/build/client/_app/immutable/nodes/{20.Q9tlws_F.js → 20.C5BF7igP.js} +1 -1
  62. package/build/client/_app/immutable/nodes/20.C5BF7igP.js.br +0 -0
  63. package/build/client/_app/immutable/nodes/20.C5BF7igP.js.gz +0 -0
  64. package/build/client/_app/immutable/nodes/{21.Bbzr4DP5.js → 21.B1xX86Nz.js} +1 -1
  65. package/build/client/_app/immutable/nodes/21.B1xX86Nz.js.br +0 -0
  66. package/build/client/_app/immutable/nodes/21.B1xX86Nz.js.gz +0 -0
  67. package/build/client/_app/immutable/nodes/23.BWuAu45o.js +16 -0
  68. package/build/client/_app/immutable/nodes/23.BWuAu45o.js.br +0 -0
  69. package/build/client/_app/immutable/nodes/23.BWuAu45o.js.gz +0 -0
  70. package/build/client/_app/immutable/nodes/{24.B-_Qylvh.js → 24.DSWGE_q2.js} +1 -1
  71. package/build/client/_app/immutable/nodes/24.DSWGE_q2.js.br +0 -0
  72. package/build/client/_app/immutable/nodes/24.DSWGE_q2.js.gz +0 -0
  73. package/build/client/_app/immutable/nodes/{27.CKQ1fXCy.js → 27.CjlEhW_1.js} +1 -1
  74. package/build/client/_app/immutable/nodes/27.CjlEhW_1.js.br +0 -0
  75. package/build/client/_app/immutable/nodes/27.CjlEhW_1.js.gz +0 -0
  76. package/build/client/_app/immutable/nodes/{28.COTXtjAd.js → 28.U-BnDxlP.js} +1 -1
  77. package/build/client/_app/immutable/nodes/28.U-BnDxlP.js.br +0 -0
  78. package/build/client/_app/immutable/nodes/28.U-BnDxlP.js.gz +0 -0
  79. package/build/client/_app/immutable/nodes/{29.C1uWJrpk.js → 29.cl9udKxV.js} +1 -1
  80. package/build/client/_app/immutable/nodes/29.cl9udKxV.js.br +0 -0
  81. package/build/client/_app/immutable/nodes/29.cl9udKxV.js.gz +0 -0
  82. package/build/client/_app/immutable/nodes/{3.D5k6nFAD.js → 3.UKn7Q9OQ.js} +1 -1
  83. package/build/client/_app/immutable/nodes/3.UKn7Q9OQ.js.br +0 -0
  84. package/build/client/_app/immutable/nodes/3.UKn7Q9OQ.js.gz +0 -0
  85. package/build/client/_app/immutable/nodes/{30.iBr8WuRu.js → 30.DPqPYAg4.js} +1 -1
  86. package/build/client/_app/immutable/nodes/30.DPqPYAg4.js.br +0 -0
  87. package/build/client/_app/immutable/nodes/30.DPqPYAg4.js.gz +0 -0
  88. package/build/client/_app/immutable/nodes/{5.BNy6hwdy.js → 5.CbYguvwB.js} +1 -1
  89. package/build/client/_app/immutable/nodes/5.CbYguvwB.js.br +2 -0
  90. package/build/client/_app/immutable/nodes/5.CbYguvwB.js.gz +0 -0
  91. package/build/client/_app/immutable/nodes/{6.CaYtdaf2.js → 6.DZgUvAex.js} +1 -1
  92. package/build/client/_app/immutable/nodes/6.DZgUvAex.js.br +0 -0
  93. package/build/client/_app/immutable/nodes/6.DZgUvAex.js.gz +0 -0
  94. package/build/client/_app/immutable/nodes/{7.C1W_YRKU.js → 7.Cv7r8DBm.js} +1 -1
  95. package/build/client/_app/immutable/nodes/7.Cv7r8DBm.js.br +0 -0
  96. package/build/client/_app/immutable/nodes/7.Cv7r8DBm.js.gz +0 -0
  97. package/build/client/_app/immutable/nodes/{8.B9sIt6MS.js → 8.zr3bqaC_.js} +1 -1
  98. package/build/client/_app/immutable/nodes/8.zr3bqaC_.js.br +0 -0
  99. package/build/client/_app/immutable/nodes/8.zr3bqaC_.js.gz +0 -0
  100. package/build/client/_app/immutable/nodes/9.B2PU0xej.js +1 -0
  101. package/build/client/_app/immutable/nodes/9.B2PU0xej.js.br +0 -0
  102. package/build/client/_app/immutable/nodes/9.B2PU0xej.js.gz +0 -0
  103. package/build/client/_app/version.json +1 -1
  104. package/build/client/_app/version.json.br +0 -0
  105. package/build/client/_app/version.json.gz +0 -0
  106. package/build/server/chunks/{0-RraSrE7U.js → 0-v49L2HZX.js} +3 -3
  107. package/build/server/chunks/{0-RraSrE7U.js.map → 0-v49L2HZX.js.map} +1 -1
  108. package/build/server/chunks/{1-C99xqG8L.js → 1-B8xC9fBg.js} +2 -2
  109. package/build/server/chunks/{1-C99xqG8L.js.map → 1-B8xC9fBg.js.map} +1 -1
  110. package/build/server/chunks/{10-CpPov-q6.js → 10-BowWygfm.js} +4 -3
  111. package/build/server/chunks/{10-CpPov-q6.js.map → 10-BowWygfm.js.map} +1 -1
  112. package/build/server/chunks/{11-CgEVkMbf.js → 11-BLjiJpX4.js} +5 -5
  113. package/build/server/chunks/11-BLjiJpX4.js.map +1 -0
  114. package/build/server/chunks/{13-BsoV45dx.js → 13-CZeQX-Gk.js} +2 -2
  115. package/build/server/chunks/{13-BsoV45dx.js.map → 13-CZeQX-Gk.js.map} +1 -1
  116. package/build/server/chunks/{14-B3BJJIn3.js → 14-VgzSpObZ.js} +2 -2
  117. package/build/server/chunks/{14-B3BJJIn3.js.map → 14-VgzSpObZ.js.map} +1 -1
  118. package/build/server/chunks/{15-BqYjEVaA.js → 15-CKqEgZmF.js} +6 -5
  119. package/build/server/chunks/15-CKqEgZmF.js.map +1 -0
  120. package/build/server/chunks/{16-CQEqybxD.js → 16-9hO-6bzO.js} +5 -4
  121. package/build/server/chunks/{16-CQEqybxD.js.map → 16-9hO-6bzO.js.map} +1 -1
  122. package/build/server/chunks/{17-DPHGdRIj.js → 17-B9Aw6HdC.js} +2 -2
  123. package/build/server/chunks/{17-DPHGdRIj.js.map → 17-B9Aw6HdC.js.map} +1 -1
  124. package/build/server/chunks/{19-CkJN0M4_.js → 19-C9FaW__N.js} +2 -2
  125. package/build/server/chunks/{19-CkJN0M4_.js.map → 19-C9FaW__N.js.map} +1 -1
  126. package/build/server/chunks/{2-BJb8QIPX.js → 2-CwQhh3Hg.js} +5 -4
  127. package/build/server/chunks/{2-BJb8QIPX.js.map → 2-CwQhh3Hg.js.map} +1 -1
  128. package/build/server/chunks/{20-DGeV-MBL.js → 20-52YCUMK3.js} +6 -7
  129. package/build/server/chunks/20-52YCUMK3.js.map +1 -0
  130. package/build/server/chunks/{21-BQWXIChZ.js → 21-Dcz_2iKy.js} +2 -2
  131. package/build/server/chunks/{21-BQWXIChZ.js.map → 21-Dcz_2iKy.js.map} +1 -1
  132. package/build/server/chunks/{23-BmGaVmjO.js → 23-C-gTGofY.js} +5 -5
  133. package/build/server/chunks/{23-BmGaVmjO.js.map → 23-C-gTGofY.js.map} +1 -1
  134. package/build/server/chunks/{24-DC5Qi8Sm.js → 24-ukwP0nYw.js} +2 -2
  135. package/build/server/chunks/{24-DC5Qi8Sm.js.map → 24-ukwP0nYw.js.map} +1 -1
  136. package/build/server/chunks/{27-CJsZbiCR.js → 27-C9kRY1qj.js} +2 -2
  137. package/build/server/chunks/{27-CJsZbiCR.js.map → 27-C9kRY1qj.js.map} +1 -1
  138. package/build/server/chunks/{28-D6UoeYd3.js → 28-X583jLPJ.js} +2 -2
  139. package/build/server/chunks/{28-D6UoeYd3.js.map → 28-X583jLPJ.js.map} +1 -1
  140. package/build/server/chunks/{29-DZgNMmXD.js → 29-PJhSN-Wu.js} +2 -2
  141. package/build/server/chunks/{29-DZgNMmXD.js.map → 29-PJhSN-Wu.js.map} +1 -1
  142. package/build/server/chunks/{3-OhWAE0Wx.js → 3-DZiroZZA.js} +2 -2
  143. package/build/server/chunks/{3-OhWAE0Wx.js.map → 3-DZiroZZA.js.map} +1 -1
  144. package/build/server/chunks/{30-B_GStKPy.js → 30-DvqVphAd.js} +2 -2
  145. package/build/server/chunks/{30-B_GStKPy.js.map → 30-DvqVphAd.js.map} +1 -1
  146. package/build/server/chunks/{5-DLhfWemT.js → 5-QlPeCe4d.js} +2 -2
  147. package/build/server/chunks/{5-DLhfWemT.js.map → 5-QlPeCe4d.js.map} +1 -1
  148. package/build/server/chunks/{6-DnjCwAlp.js → 6-3t8NszBJ.js} +2 -2
  149. package/build/server/chunks/{6-DnjCwAlp.js.map → 6-3t8NszBJ.js.map} +1 -1
  150. package/build/server/chunks/{7-leNovc1s.js → 7-DgFxSLWj.js} +2 -2
  151. package/build/server/chunks/{7-leNovc1s.js.map → 7-DgFxSLWj.js.map} +1 -1
  152. package/build/server/chunks/{8-CAx64_UW.js → 8-BKivPkMd.js} +2 -2
  153. package/build/server/chunks/{8-CAx64_UW.js.map → 8-BKivPkMd.js.map} +1 -1
  154. package/build/server/chunks/{9-Dq-RLXVq.js → 9-COv3kpjW.js} +3 -3
  155. package/build/server/chunks/{9-Dq-RLXVq.js.map → 9-COv3kpjW.js.map} +1 -1
  156. package/build/server/chunks/{_page.svelte-DAu2h8jG.js → _page.svelte-CSZEgmHp.js} +5 -5
  157. package/build/server/chunks/_page.svelte-CSZEgmHp.js.map +1 -0
  158. package/build/server/chunks/{_page.svelte-DFgszLSu.js → _page.svelte-DSPm244d.js} +32 -11
  159. package/build/server/chunks/_page.svelte-DSPm244d.js.map +1 -0
  160. package/build/server/chunks/{_page.svelte-BXyLutv1.js → _page.svelte-DSYaUquf.js} +4 -17
  161. package/build/server/chunks/_page.svelte-DSYaUquf.js.map +1 -0
  162. package/build/server/chunks/{_page.svelte-Dz-6_oW1.js → _page.svelte-DlnKE8Z9.js} +382 -35
  163. package/build/server/chunks/_page.svelte-DlnKE8Z9.js.map +1 -0
  164. package/build/server/chunks/{_server.ts-aUFaewu4.js → _server.ts-17aVSHOa.js} +4 -3
  165. package/build/server/chunks/{_server.ts-aUFaewu4.js.map → _server.ts-17aVSHOa.js.map} +1 -1
  166. package/build/server/chunks/{_server.ts-BLC5g2H_.js → _server.ts-4eVxyBg6.js} +4 -3
  167. package/build/server/chunks/{_server.ts-BLC5g2H_.js.map → _server.ts-4eVxyBg6.js.map} +1 -1
  168. package/build/server/chunks/{_server.ts-BeyEUs6I.js → _server.ts-8ahOmk_6.js} +4 -3
  169. package/build/server/chunks/{_server.ts-BeyEUs6I.js.map → _server.ts-8ahOmk_6.js.map} +1 -1
  170. package/build/server/chunks/{_server.ts-DXqr0BIr.js → _server.ts-B0qq-nxh.js} +3 -3
  171. package/build/server/chunks/{_server.ts-DXqr0BIr.js.map → _server.ts-B0qq-nxh.js.map} +1 -1
  172. package/build/server/chunks/{_server.ts-BTWwyruR.js → _server.ts-B7X5-4kS.js} +4 -3
  173. package/build/server/chunks/{_server.ts-BTWwyruR.js.map → _server.ts-B7X5-4kS.js.map} +1 -1
  174. package/build/server/chunks/{_server.ts-CqCIfPI0.js → _server.ts-B7Z1RMy4.js} +4 -3
  175. package/build/server/chunks/{_server.ts-CqCIfPI0.js.map → _server.ts-B7Z1RMy4.js.map} +1 -1
  176. package/build/server/chunks/{_server.ts-CnVtonm0.js → _server.ts-BL7-YPnc.js} +4 -3
  177. package/build/server/chunks/{_server.ts-CnVtonm0.js.map → _server.ts-BL7-YPnc.js.map} +1 -1
  178. package/build/server/chunks/{_server.ts-B-1avpfE.js → _server.ts-BRjl7H1o.js} +4 -3
  179. package/build/server/chunks/{_server.ts-B-1avpfE.js.map → _server.ts-BRjl7H1o.js.map} +1 -1
  180. package/build/server/chunks/{_server.ts-k9Y_t-wX.js → _server.ts-B_KQteIy.js} +4 -3
  181. package/build/server/chunks/{_server.ts-k9Y_t-wX.js.map → _server.ts-B_KQteIy.js.map} +1 -1
  182. package/build/server/chunks/{_server.ts-Bkr-33U0.js → _server.ts-BiJbME_l.js} +3 -4
  183. package/build/server/chunks/_server.ts-BiJbME_l.js.map +1 -0
  184. package/build/server/chunks/{_server.ts-Dw630Jb2.js → _server.ts-Bq2BT6_L.js} +3 -4
  185. package/build/server/chunks/_server.ts-Bq2BT6_L.js.map +1 -0
  186. package/build/server/chunks/{_server.ts-C3CKmKpW.js → _server.ts-BqsgEogJ.js} +4 -3
  187. package/build/server/chunks/{_server.ts-C3CKmKpW.js.map → _server.ts-BqsgEogJ.js.map} +1 -1
  188. package/build/server/chunks/{_server.ts-C2A_Oiwe.js → _server.ts-BtXdHfbr.js} +4 -3
  189. package/build/server/chunks/{_server.ts-C2A_Oiwe.js.map → _server.ts-BtXdHfbr.js.map} +1 -1
  190. package/build/server/chunks/{_server.ts-EOYMi5x8.js → _server.ts-C-8S5O0H.js} +4 -3
  191. package/build/server/chunks/{_server.ts-EOYMi5x8.js.map → _server.ts-C-8S5O0H.js.map} +1 -1
  192. package/build/server/chunks/{_server.ts-BUEUSAPc.js → _server.ts-C3sOwl5l.js} +4 -3
  193. package/build/server/chunks/{_server.ts-BUEUSAPc.js.map → _server.ts-C3sOwl5l.js.map} +1 -1
  194. package/build/server/chunks/{_server.ts-BHizTPVg.js → _server.ts-CKvfxWeo.js} +4 -3
  195. package/build/server/chunks/{_server.ts-BHizTPVg.js.map → _server.ts-CKvfxWeo.js.map} +1 -1
  196. package/build/server/chunks/{_server.ts-D9iabXf8.js → _server.ts-CMKxt34Z.js} +4 -3
  197. package/build/server/chunks/{_server.ts-D9iabXf8.js.map → _server.ts-CMKxt34Z.js.map} +1 -1
  198. package/build/server/chunks/{_server.ts-C-w9ogA2.js → _server.ts-COWH7HN8.js} +4 -3
  199. package/build/server/chunks/{_server.ts-C-w9ogA2.js.map → _server.ts-COWH7HN8.js.map} +1 -1
  200. package/build/server/chunks/{_server.ts-Dp3_io85.js → _server.ts-CUcFObAP.js} +4 -3
  201. package/build/server/chunks/{_server.ts-Dp3_io85.js.map → _server.ts-CUcFObAP.js.map} +1 -1
  202. package/build/server/chunks/{_server.ts-Bm14E-bx.js → _server.ts-CW_1VZGk.js} +4 -3
  203. package/build/server/chunks/{_server.ts-Bm14E-bx.js.map → _server.ts-CW_1VZGk.js.map} +1 -1
  204. package/build/server/chunks/{_server.ts-DWAwxfXk.js → _server.ts-CXYPZtry.js} +4 -3
  205. package/build/server/chunks/{_server.ts-DWAwxfXk.js.map → _server.ts-CXYPZtry.js.map} +1 -1
  206. package/build/server/chunks/{_server.ts-C52CTPlo.js → _server.ts-Cbe4naEr.js} +4 -3
  207. package/build/server/chunks/{_server.ts-C52CTPlo.js.map → _server.ts-Cbe4naEr.js.map} +1 -1
  208. package/build/server/chunks/{_server.ts-BIQdiZfW.js → _server.ts-D4mOhrFH.js} +4 -3
  209. package/build/server/chunks/{_server.ts-BIQdiZfW.js.map → _server.ts-D4mOhrFH.js.map} +1 -1
  210. package/build/server/chunks/{_server.ts-DzG1eKRC.js → _server.ts-DK7t4rlY.js} +4 -3
  211. package/build/server/chunks/{_server.ts-DzG1eKRC.js.map → _server.ts-DK7t4rlY.js.map} +1 -1
  212. package/build/server/chunks/{_server.ts-BXJAFFdr.js → _server.ts-DMnMoi_a.js} +4 -3
  213. package/build/server/chunks/{_server.ts-BXJAFFdr.js.map → _server.ts-DMnMoi_a.js.map} +1 -1
  214. package/build/server/chunks/{_server.ts-BTSLBiLL.js → _server.ts-DgTNMZbG.js} +3 -3
  215. package/build/server/chunks/{_server.ts-BTSLBiLL.js.map → _server.ts-DgTNMZbG.js.map} +1 -1
  216. package/build/server/chunks/{_server.ts-DiJ2px88.js → _server.ts-DpkIJe-d.js} +4 -3
  217. package/build/server/chunks/{_server.ts-DiJ2px88.js.map → _server.ts-DpkIJe-d.js.map} +1 -1
  218. package/build/server/chunks/{_server.ts-CpC3cdzG.js → _server.ts-DsFj_8lL.js} +4 -3
  219. package/build/server/chunks/{_server.ts-CpC3cdzG.js.map → _server.ts-DsFj_8lL.js.map} +1 -1
  220. package/build/server/chunks/{_server.ts-DcRwP_gQ.js → _server.ts-Dsoq_gsI.js} +3 -3
  221. package/build/server/chunks/{_server.ts-DcRwP_gQ.js.map → _server.ts-Dsoq_gsI.js.map} +1 -1
  222. package/build/server/chunks/{_server.ts-BKtKkHZS.js → _server.ts-Du-NpBy4.js} +11 -6
  223. package/build/server/chunks/_server.ts-Du-NpBy4.js.map +1 -0
  224. package/build/server/chunks/{_server.ts-DuC2r20u.js → _server.ts-EnuOtr_j.js} +8 -6
  225. package/build/server/chunks/_server.ts-EnuOtr_j.js.map +1 -0
  226. package/build/server/chunks/_server.ts-ODEutN30.js +75 -0
  227. package/build/server/chunks/_server.ts-ODEutN30.js.map +1 -0
  228. package/build/server/chunks/{_server.ts-BOCvzY_U.js → _server.ts-bONEWPMV.js} +4 -3
  229. package/build/server/chunks/{_server.ts-BOCvzY_U.js.map → _server.ts-bONEWPMV.js.map} +1 -1
  230. package/build/server/chunks/{_server.ts-CJ8oDVHC.js → _server.ts-t9_veBtJ.js} +3 -2
  231. package/build/server/chunks/{_server.ts-CJ8oDVHC.js.map → _server.ts-t9_veBtJ.js.map} +1 -1
  232. package/build/server/chunks/{_server.ts-DDHHklcd.js → _server.ts-vURDyV-V.js} +4 -3
  233. package/build/server/chunks/{_server.ts-DDHHklcd.js.map → _server.ts-vURDyV-V.js.map} +1 -1
  234. package/build/server/chunks/{access.server-CGwRj2TY.js → access.server-BBglojso.js} +3 -2
  235. package/build/server/chunks/{access.server-CGwRj2TY.js.map → access.server-BBglojso.js.map} +1 -1
  236. package/build/server/chunks/{api-errors-b2AR_m1A.js → api-errors-agQVBoep.js} +21 -3
  237. package/build/server/chunks/api-errors-agQVBoep.js.map +1 -0
  238. package/build/server/chunks/refresh-cw-CiiW6Kvx.js +22 -0
  239. package/build/server/chunks/refresh-cw-CiiW6Kvx.js.map +1 -0
  240. package/build/server/chunks/{resolve.server2-BXKCfGfg.js → resolve.server-BXKCfGfg.js} +1 -1
  241. package/build/server/chunks/resolve.server-BXKCfGfg.js.map +1 -0
  242. package/build/server/chunks/triangle-alert-DuaFagu6.js +20 -0
  243. package/build/server/chunks/triangle-alert-DuaFagu6.js.map +1 -0
  244. package/build/server/index.js +1 -1
  245. package/build/server/index.js.map +1 -1
  246. package/build/server/manifest.js +67 -60
  247. package/build/server/manifest.js.map +1 -1
  248. package/package.json +5 -5
  249. package/build/client/_app/immutable/assets/0.D882LCPK.css +0 -1
  250. package/build/client/_app/immutable/assets/0.D882LCPK.css.br +0 -0
  251. package/build/client/_app/immutable/assets/0.D882LCPK.css.gz +0 -0
  252. package/build/client/_app/immutable/chunks/7DlWX6a_.js.br +0 -0
  253. package/build/client/_app/immutable/chunks/7DlWX6a_.js.gz +0 -0
  254. package/build/client/_app/immutable/chunks/7OGPJeUM.js.br +0 -0
  255. package/build/client/_app/immutable/chunks/7OGPJeUM.js.gz +0 -0
  256. package/build/client/_app/immutable/chunks/C_pyGEAV.js.br +0 -0
  257. package/build/client/_app/immutable/chunks/C_pyGEAV.js.gz +0 -0
  258. package/build/client/_app/immutable/chunks/D0kO1GS0.js.br +0 -0
  259. package/build/client/_app/immutable/chunks/D0kO1GS0.js.gz +0 -0
  260. package/build/client/_app/immutable/chunks/DGr_EUx4.js.br +0 -0
  261. package/build/client/_app/immutable/chunks/DGr_EUx4.js.gz +0 -0
  262. package/build/client/_app/immutable/chunks/DT5O4b-_.js.br +0 -0
  263. package/build/client/_app/immutable/chunks/DT5O4b-_.js.gz +0 -0
  264. package/build/client/_app/immutable/entry/app.DFWfpqb0.js +0 -2
  265. package/build/client/_app/immutable/entry/app.DFWfpqb0.js.br +0 -0
  266. package/build/client/_app/immutable/entry/app.DFWfpqb0.js.gz +0 -0
  267. package/build/client/_app/immutable/entry/start.-fCdkvY6.js +0 -1
  268. package/build/client/_app/immutable/entry/start.-fCdkvY6.js.br +0 -2
  269. package/build/client/_app/immutable/entry/start.-fCdkvY6.js.gz +0 -0
  270. package/build/client/_app/immutable/nodes/1.NC0eJqYH.js.br +0 -0
  271. package/build/client/_app/immutable/nodes/1.NC0eJqYH.js.gz +0 -0
  272. package/build/client/_app/immutable/nodes/11.DegwSwS4.js +0 -2
  273. package/build/client/_app/immutable/nodes/11.DegwSwS4.js.br +0 -0
  274. package/build/client/_app/immutable/nodes/11.DegwSwS4.js.gz +0 -0
  275. package/build/client/_app/immutable/nodes/13.DoCSNk6B.js.br +0 -0
  276. package/build/client/_app/immutable/nodes/13.DoCSNk6B.js.gz +0 -0
  277. package/build/client/_app/immutable/nodes/14.CGaF6W-i.js.br +0 -0
  278. package/build/client/_app/immutable/nodes/14.CGaF6W-i.js.gz +0 -0
  279. package/build/client/_app/immutable/nodes/15.CCL52sqQ.js +0 -16
  280. package/build/client/_app/immutable/nodes/15.CCL52sqQ.js.br +0 -0
  281. package/build/client/_app/immutable/nodes/15.CCL52sqQ.js.gz +0 -0
  282. package/build/client/_app/immutable/nodes/16.CK0W0845.js.br +0 -0
  283. package/build/client/_app/immutable/nodes/16.CK0W0845.js.gz +0 -0
  284. package/build/client/_app/immutable/nodes/17.BLCtgsLP.js.br +0 -0
  285. package/build/client/_app/immutable/nodes/17.BLCtgsLP.js.gz +0 -0
  286. package/build/client/_app/immutable/nodes/19.Dx5b18Qv.js.br +0 -0
  287. package/build/client/_app/immutable/nodes/19.Dx5b18Qv.js.gz +0 -0
  288. package/build/client/_app/immutable/nodes/2.BxDq9fgp.js.br +0 -0
  289. package/build/client/_app/immutable/nodes/2.BxDq9fgp.js.gz +0 -0
  290. package/build/client/_app/immutable/nodes/20.Q9tlws_F.js.br +0 -0
  291. package/build/client/_app/immutable/nodes/20.Q9tlws_F.js.gz +0 -0
  292. package/build/client/_app/immutable/nodes/21.Bbzr4DP5.js.br +0 -0
  293. package/build/client/_app/immutable/nodes/21.Bbzr4DP5.js.gz +0 -0
  294. package/build/client/_app/immutable/nodes/23.fhNJrKbS.js +0 -16
  295. package/build/client/_app/immutable/nodes/23.fhNJrKbS.js.br +0 -0
  296. package/build/client/_app/immutable/nodes/23.fhNJrKbS.js.gz +0 -0
  297. package/build/client/_app/immutable/nodes/24.B-_Qylvh.js.br +0 -0
  298. package/build/client/_app/immutable/nodes/24.B-_Qylvh.js.gz +0 -0
  299. package/build/client/_app/immutable/nodes/27.CKQ1fXCy.js.br +0 -0
  300. package/build/client/_app/immutable/nodes/27.CKQ1fXCy.js.gz +0 -0
  301. package/build/client/_app/immutable/nodes/28.COTXtjAd.js.br +0 -0
  302. package/build/client/_app/immutable/nodes/28.COTXtjAd.js.gz +0 -0
  303. package/build/client/_app/immutable/nodes/29.C1uWJrpk.js.br +0 -0
  304. package/build/client/_app/immutable/nodes/29.C1uWJrpk.js.gz +0 -0
  305. package/build/client/_app/immutable/nodes/3.D5k6nFAD.js.br +0 -0
  306. package/build/client/_app/immutable/nodes/3.D5k6nFAD.js.gz +0 -0
  307. package/build/client/_app/immutable/nodes/30.iBr8WuRu.js.br +0 -0
  308. package/build/client/_app/immutable/nodes/30.iBr8WuRu.js.gz +0 -0
  309. package/build/client/_app/immutable/nodes/5.BNy6hwdy.js.br +0 -0
  310. package/build/client/_app/immutable/nodes/5.BNy6hwdy.js.gz +0 -0
  311. package/build/client/_app/immutable/nodes/6.CaYtdaf2.js.br +0 -0
  312. package/build/client/_app/immutable/nodes/6.CaYtdaf2.js.gz +0 -0
  313. package/build/client/_app/immutable/nodes/7.C1W_YRKU.js.br +0 -0
  314. package/build/client/_app/immutable/nodes/7.C1W_YRKU.js.gz +0 -0
  315. package/build/client/_app/immutable/nodes/8.B9sIt6MS.js.br +0 -0
  316. package/build/client/_app/immutable/nodes/8.B9sIt6MS.js.gz +0 -0
  317. package/build/client/_app/immutable/nodes/9.K1-nNvYh.js +0 -1
  318. package/build/client/_app/immutable/nodes/9.K1-nNvYh.js.br +0 -0
  319. package/build/client/_app/immutable/nodes/9.K1-nNvYh.js.gz +0 -0
  320. package/build/server/chunks/11-CgEVkMbf.js.map +0 -1
  321. package/build/server/chunks/15-BqYjEVaA.js.map +0 -1
  322. package/build/server/chunks/20-DGeV-MBL.js.map +0 -1
  323. package/build/server/chunks/_page.svelte-BXyLutv1.js.map +0 -1
  324. package/build/server/chunks/_page.svelte-DAu2h8jG.js.map +0 -1
  325. package/build/server/chunks/_page.svelte-DFgszLSu.js.map +0 -1
  326. package/build/server/chunks/_page.svelte-Dz-6_oW1.js.map +0 -1
  327. package/build/server/chunks/_server.ts-BKtKkHZS.js.map +0 -1
  328. package/build/server/chunks/_server.ts-Bkr-33U0.js.map +0 -1
  329. package/build/server/chunks/_server.ts-DuC2r20u.js.map +0 -1
  330. package/build/server/chunks/_server.ts-Dw630Jb2.js.map +0 -1
  331. package/build/server/chunks/api-errors-b2AR_m1A.js.map +0 -1
  332. package/build/server/chunks/resolve.server-C5wZnxS_.js +0 -11
  333. package/build/server/chunks/resolve.server-C5wZnxS_.js.map +0 -1
  334. package/build/server/chunks/resolve.server2-BXKCfGfg.js.map +0 -1
  335. /package/build/client/_app/immutable/nodes/{0.kNRjuE1r.js → 0.Y-xP5pet.js} +0 -0
  336. /package/build/client/_app/immutable/nodes/{0.kNRjuE1r.js.br → 0.Y-xP5pet.js.br} +0 -0
  337. /package/build/client/_app/immutable/nodes/{0.kNRjuE1r.js.gz → 0.Y-xP5pet.js.gz} +0 -0
@@ -1 +0,0 @@
1
- {"version":3,"file":"_page.svelte-DAu2h8jG.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/admin/_page.svelte.js"],"sourcesContent":["import { aj as spread_props, T as head, am as stringify, G as ensure_array_like, j as attr, I as escape_html, y as derived } from \"../../../chunks/renderer.js\";\nimport { p as page } from \"../../../chunks/index.js\";\nimport { S as StatCard } from \"../../../chunks/StatCard.js\";\nimport { S as SectionHeader } from \"../../../chunks/SectionHeader.js\";\nimport { C as Card, a as Card_content } from \"../../../chunks/card-content.js\";\nimport { C as Card_header, a as Card_title } from \"../../../chunks/card-title.js\";\nimport { I as Icon } from \"../../../chunks/Icon2.js\";\nimport { U as Users } from \"../../../chunks/users.js\";\nimport { B as Building_2 } from \"../../../chunks/building-2.js\";\nimport { S as Server } from \"../../../chunks/server.js\";\nfunction Git_commit_horizontal($$renderer, $$props) {\n let { $$slots, $$events, ...props } = $$props;\n const iconNode = [\n [\"circle\", { \"cx\": \"12\", \"cy\": \"12\", \"r\": \"3\" }],\n [\"line\", { \"x1\": \"3\", \"x2\": \"9\", \"y1\": \"12\", \"y2\": \"12\" }],\n [\"line\", { \"x1\": \"15\", \"x2\": \"21\", \"y1\": \"12\", \"y2\": \"12\" }]\n ];\n Icon($$renderer, spread_props([{ name: \"git-commit-horizontal\" }, props, { iconNode }]));\n}\nfunction Layout_dashboard($$renderer, $$props) {\n let { $$slots, $$events, ...props } = $$props;\n const iconNode = [\n [\n \"rect\",\n { \"width\": \"7\", \"height\": \"9\", \"x\": \"3\", \"y\": \"3\", \"rx\": \"1\" }\n ],\n [\n \"rect\",\n { \"width\": \"7\", \"height\": \"5\", \"x\": \"14\", \"y\": \"3\", \"rx\": \"1\" }\n ],\n [\n \"rect\",\n { \"width\": \"7\", \"height\": \"9\", \"x\": \"14\", \"y\": \"12\", \"rx\": \"1\" }\n ],\n [\n \"rect\",\n { \"width\": \"7\", \"height\": \"5\", \"x\": \"3\", \"y\": \"16\", \"rx\": \"1\" }\n ]\n ];\n Icon($$renderer, spread_props([{ name: \"layout-dashboard\" }, props, { iconNode }]));\n}\nfunction _page($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n const brandName = derived(() => page.data.branding.name);\n let { data } = $$props;\n const build = {\n hash: \"601c8f8\",\n fullHash: \"601c8f8324ae6b22a11ef108c7075174bd25c8af\",\n message: \"feat: add tests for upload schema-validation gate functionality\",\n date: \"2026-05-29 20:42:45 +0200\"\n };\n const can = (p) => data.platformPermissions.includes(\"instance_admin\") || data.platformPermissions.includes(p);\n const tiles = derived(() => [\n {\n href: \"/admin/users\",\n icon: Users,\n value: data.stats.users ?? \"—\",\n label: data.stats.users === null ? \"User store unavailable\" : `User${data.stats.users === 1 ? \"\" : \"s\"}`,\n show: can(\"manage_instance_users\")\n },\n {\n href: \"/admin/organizations\",\n icon: Building_2,\n value: \"Organizations\",\n label: \"All orgs on this instance\",\n show: can(\"instance_admin\")\n },\n {\n href: \"/admin/compute\",\n icon: Server,\n value: \"Compute\",\n label: \"Servers, status & config\",\n show: can(\"manage_compute\")\n },\n {\n href: \"/projects\",\n icon: Layout_dashboard,\n value: \"Content\",\n label: \"Definitions & projects\",\n show: can(\"instance_admin\")\n }\n ].filter((t) => t.show));\n head(\"1jef3w8\", $$renderer2, ($$renderer3) => {\n $$renderer3.title(($$renderer4) => {\n $$renderer4.push(`<title>Admin · General</title>`);\n });\n });\n $$renderer2.push(`<div class=\"space-y-6\">`);\n SectionHeader($$renderer2, {\n eyebrow: \"Admin\",\n title: \"General\",\n description: `At-a-glance health of this ${stringify(brandName())} instance — users, compute, and content.`\n });\n $$renderer2.push(`<!----> <div class=\"grid gap-3 sm:grid-cols-2 lg:grid-cols-3\"><!--[-->`);\n const each_array = ensure_array_like(tiles());\n for (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n let tile = each_array[$$index];\n StatCard($$renderer2, spread_props([tile]));\n }\n $$renderer2.push(`<!--]--></div> `);\n if (Card) {\n $$renderer2.push(\"<!--[-->\");\n Card($$renderer2, {\n children: ($$renderer3) => {\n if (Card_header) {\n $$renderer3.push(\"<!--[-->\");\n Card_header($$renderer3, {\n children: ($$renderer4) => {\n if (Card_title) {\n $$renderer4.push(\"<!--[-->\");\n Card_title($$renderer4, {\n class: \"flex items-center gap-2 text-sm font-medium\",\n children: ($$renderer5) => {\n Git_commit_horizontal($$renderer5, { class: \"text-muted-foreground h-4 w-4\" });\n $$renderer5.push(`<!----> Web app build`);\n },\n $$slots: { default: true }\n });\n $$renderer4.push(\"<!--]-->\");\n } else {\n $$renderer4.push(\"<!--[!-->\");\n $$renderer4.push(\"<!--]-->\");\n }\n },\n $$slots: { default: true }\n });\n $$renderer3.push(\"<!--]-->\");\n } else {\n $$renderer3.push(\"<!--[!-->\");\n $$renderer3.push(\"<!--]-->\");\n }\n $$renderer3.push(` `);\n if (Card_content) {\n $$renderer3.push(\"<!--[-->\");\n Card_content($$renderer3, {\n children: ($$renderer4) => {\n $$renderer4.push(`<div class=\"flex flex-wrap items-baseline gap-x-3 gap-y-1\"><code class=\"text-foreground font-mono text-xs\"${attr(\"title\", build.fullHash)}>${escape_html(build.hash)}</code> <span class=\"text-muted-foreground text-xs\">${escape_html(build.message)}</span> <span class=\"text-muted-foreground text-xs\">${escape_html(build.date)}</span></div>`);\n },\n $$slots: { default: true }\n });\n $$renderer3.push(\"<!--]-->\");\n } else {\n $$renderer3.push(\"<!--[!-->\");\n $$renderer3.push(\"<!--]-->\");\n }\n },\n $$slots: { default: true }\n });\n $$renderer2.push(\"<!--]-->\");\n } else {\n $$renderer2.push(\"<!--[!-->\");\n $$renderer2.push(\"<!--]-->\");\n }\n $$renderer2.push(`</div>`);\n });\n}\nexport {\n _page as default\n};\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"_page.svelte-DFgszLSu.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/admin/compute/_page.svelte.js"],"sourcesContent":["import { aj as spread_props, T as head, G as ensure_array_like, k as attr_class, am as stringify, I as escape_html, j as attr } from \"../../../../chunks/renderer.js\";\nimport \"clsx\";\nimport { i as invalidateAll } from \"../../../../chunks/client.js\";\nimport { a as SvelteSet } from \"../../../../chunks/index-server.js\";\nimport { S as SectionHeader } from \"../../../../chunks/SectionHeader.js\";\nimport { C as Card, a as Card_content } from \"../../../../chunks/card-content.js\";\nimport { E as EmptyState } from \"../../../../chunks/EmptyState.js\";\nimport { P as Plus } from \"../../../../chunks/plus.js\";\nimport { I as Input } from \"../../../../chunks/input.js\";\nimport { S as Star } from \"../../../../chunks/star.js\";\nimport { C as Circle } from \"../../../../chunks/circle.js\";\nimport { B as Button } from \"../../../../chunks/button.js\";\nimport { T as Trash_2 } from \"../../../../chunks/trash-2.js\";\nimport { I as Icon } from \"../../../../chunks/Icon2.js\";\nimport { C as Chevron_down } from \"../../../../chunks/chevron-down2.js\";\nimport { t as toast } from \"../../../../chunks/toast-state.svelte.js\";\nimport { S as Server } from \"../../../../chunks/server.js\";\nimport { r as randomId } from \"../../../../chunks/randomId.js\";\nfunction Chevron_up($$renderer, $$props) {\n let { $$slots, $$events, ...props } = $$props;\n const iconNode = [[\"path\", { \"d\": \"m18 15-6-6-6 6\" }]];\n Icon($$renderer, spread_props([{ name: \"chevron-up\" }, props, { iconNode }]));\n}\nfunction useServerHealth(serverId) {\n let state = {\n state: \"checking\",\n reachable: false,\n rhinoVersion: null,\n computeVersion: null,\n selvaInstalled: false,\n selvaVersion: null,\n plugins: {}\n };\n function start() {\n return;\n }\n function stop() {\n }\n return {\n get state() {\n return state;\n },\n start,\n stop\n };\n}\nfunction _page($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n const API_KEY_CLEAR = \"__clear__\";\n let { data } = $$props;\n const statusConfig = {\n ok: { label: \"Online\", color: \"text-green-600 dark:text-green-400\" },\n warning: {\n label: \"Warning\",\n color: \"text-yellow-600 dark:text-yellow-400\"\n },\n error: { label: \"Offline\", color: \"text-red-600 dark:text-red-400\" },\n checking: {\n label: \"Checking…\",\n color: \"text-blue-600 dark:text-blue-400\"\n }\n };\n let servers = [];\n let defaultServerId = \"\";\n let saving = false;\n const dirtyIds = new SvelteSet();\n let expandedPlugins = {};\n let expandedSharing = {};\n function markDirty(id) {\n dirtyIds.add(id);\n }\n function discardChanges(id) {\n dirtyIds.delete(id);\n const original = data.servers.find((s) => s.id === id);\n const idx = servers.findIndex((s) => s.id === id);\n if (idx < 0) return;\n if (!original) {\n healthMap[id]?.stop();\n const { [id]: _, ...rest } = healthMap;\n healthMap = rest;\n servers = servers.filter((s) => s.id !== id);\n return;\n }\n servers[idx] = {\n id: original.id,\n label: original.label,\n serverUrl: original.serverUrl,\n sharedWith: original.sharedWith === \"all\" ? \"all\" : [...original.sharedWith],\n timeoutMs: original.timeoutMs ?? 3e4,\n retryCount: original.retryCount ?? 0,\n apiKey: \"\",\n hasApiKey: original.hasApiKey\n };\n defaultServerId = data.defaultServerId;\n }\n let healthMap = {};\n function addServer() {\n const id = randomId();\n if (servers.length === 0) defaultServerId = id;\n servers = [\n ...servers,\n {\n id,\n label: \"new-server\",\n serverUrl: \"http://localhost:5000\",\n sharedWith: \"all\",\n apiKey: \"\",\n hasApiKey: false,\n timeoutMs: 3e4,\n retryCount: 0\n }\n ];\n markDirty(id);\n }\n function removeServer(index) {\n const removed = servers[index];\n healthMap[removed.id]?.stop();\n const { [removed.id]: _, ...rest } = healthMap;\n healthMap = rest;\n servers = servers.filter((_2, i) => i !== index);\n if (defaultServerId === removed.id && servers[0]) {\n defaultServerId = servers[0].id;\n }\n for (const s of servers) markDirty(s.id);\n }\n async function save() {\n saving = true;\n try {\n const payload = {\n defaultServerId,\n servers: servers.map(({ apiKey, hasApiKey: _, retryCount, timeoutMs, ...s }) => ({\n ...s,\n timeoutMs: Math.min(3e5, Math.max(1e3, Number(timeoutMs) || 3e4)),\n ...apiKey === API_KEY_CLEAR ? { apiKey: null } : apiKey ? { apiKey } : {},\n ...Number(retryCount) ? { retryCount: Math.min(5, Math.max(0, Number(retryCount))) } : {}\n }))\n };\n const res = await fetch(\"/admin/api/compute\", {\n method: \"PUT\",\n headers: { \"Content-Type\": \"application/json\" },\n body: JSON.stringify(payload)\n });\n if (res.ok) {\n toast.success(\"Compute config saved\");\n await invalidateAll();\n dirtyIds.clear();\n for (const h of Object.values(healthMap)) h.stop();\n healthMap = {};\n for (const s of servers) {\n const id = s.id;\n const h = useServerHealth(() => id);\n healthMap[id] = h;\n h.start();\n }\n } else {\n const err = await res.json().catch(() => ({ error: \"Unknown error\" }));\n toast.error(err.message || err.error || `Failed to save (${res.status})`);\n }\n } catch {\n toast.error(\"Failed to save compute config\");\n } finally {\n saving = false;\n }\n }\n function sharingControl($$renderer3, server) {\n const isAll = server.sharedWith === \"all\";\n const orgIds = isAll ? /* @__PURE__ */ new Set() : new Set(server.sharedWith);\n const isDefault = server.id === defaultServerId;\n $$renderer3.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 ${stringify(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 ${stringify(!isAll ? \"bg-background shadow-sm\" : \"text-muted-foreground hover:text-foreground\")}`)}>Specific orgs</button></div> `);\n if (!isAll && data.orgs.length > 0) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.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 if (expandedSharing[server.id]) {\n $$renderer3.push(\"<!--[0-->\");\n Chevron_up($$renderer3, { class: \"h-3 w-3\" });\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n Chevron_down($$renderer3, { class: \"h-3 w-3\" });\n }\n $$renderer3.push(`<!--]--></button>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--></div> `);\n if (!isAll && expandedSharing[server.id]) {\n $$renderer3.push(\"<!--[0-->\");\n if (data.orgs.length === 0) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<p class=\"text-muted-foreground text-xs\">No organizations exist yet.</p>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n $$renderer3.push(`<div class=\"grid gap-1 sm:grid-cols-2\"><!--[-->`);\n const each_array = ensure_array_like(data.orgs);\n for (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n let org = each_array[$$index];\n $$renderer3.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 }\n $$renderer3.push(`<!--]--></div>`);\n }\n $$renderer3.push(`<!--]-->`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> `);\n if (!isAll && isDefault) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.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 } else if (!isAll && orgIds.size === 0) {\n $$renderer3.push(\"<!--[1-->\");\n $$renderer3.push(`<p class=\"text-muted-foreground text-xs\">No orgs selected — this server is dormant (admin-only).</p>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--></div>`);\n }\n function serverCard($$renderer3, server, i) {\n const health = healthMap[server.id]?.state;\n const sc = statusConfig[health?.state ?? \"checking\"];\n const pluginEntries = Object.entries(health?.plugins ?? {});\n const isDirty = dirtyIds.has(server.id);\n $$renderer3.push(`<div${attr_class(`space-y-3 rounded-lg border p-4 transition-colors ${stringify(isDirty ? \"border-amber-400/60 bg-amber-50/30 dark:border-amber-500/40 dark:bg-amber-950/10\" : \"bg-muted/30\")}`)}><div class=\"flex items-center justify-between\"><div class=\"flex items-center gap-2\">`);\n Input($$renderer3, {\n placeholder: \"label\",\n value: server.label,\n oninput: (e) => {\n const input = e.target;\n server.label = input.value.toLowerCase().replace(/[^a-z0-9_-]/g, \"\");\n input.value = server.label;\n markDirty(server.id);\n },\n class: \"h-7 w-32 font-mono text-xs\"\n });\n $$renderer3.push(`<!----> `);\n if (server.id === defaultServerId) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.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 Star($$renderer3, { class: \"h-3 w-3\" });\n $$renderer3.push(`<!----> default</span>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n $$renderer3.push(`<button class=\"text-muted-foreground hover:text-foreground text-xs underline-offset-2 hover:underline\">set as default</button>`);\n }\n $$renderer3.push(`<!--]--></div> <div class=\"flex items-center gap-3\"><div class=\"flex items-center gap-1.5\">`);\n Circle($$renderer3, {\n class: `h-2.5 w-2.5 shrink-0 fill-current ${stringify(sc.color)}`\n });\n $$renderer3.push(`<!----> <span${attr_class(`text-xs font-medium ${stringify(sc.color)}`)}>${escape_html(sc.label)}</span></div> `);\n if (isDirty) {\n $$renderer3.push(\"<!--[0-->\");\n Button($$renderer3, {\n variant: \"ghost\",\n size: \"sm\",\n onclick: () => discardChanges(server.id),\n disabled: saving,\n class: \"text-muted-foreground hover:text-foreground h-7\",\n children: ($$renderer4) => {\n $$renderer4.push(`<!---->Discard`);\n },\n $$slots: { default: true }\n });\n $$renderer3.push(`<!----> `);\n Button($$renderer3, {\n size: \"sm\",\n onclick: save,\n disabled: saving,\n class: \"h-7\",\n children: ($$renderer4) => {\n $$renderer4.push(`<!---->${escape_html(saving ? \"Saving…\" : \"Save changes\")}`);\n },\n $$slots: { default: true }\n });\n $$renderer3.push(`<!---->`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> `);\n Button($$renderer3, {\n variant: \"ghost\",\n size: \"sm\",\n onclick: () => removeServer(i),\n disabled: server.id === defaultServerId,\n title: server.id === defaultServerId ? \"Set another server as default before deleting\" : void 0,\n class: \"text-destructive hover:text-destructive h-7 w-7 p-0\",\n children: ($$renderer4) => {\n Trash_2($$renderer4, { class: \"h-3.5 w-3.5\" });\n },\n $$slots: { default: true }\n });\n $$renderer3.push(`<!----></div></div> `);\n if (health?.reachable) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.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 if (health.selvaInstalled) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`${escape_html(health.selvaVersion)}`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n $$renderer3.push(`<span class=\"text-red-600 dark:text-red-400\">Not installed</span>`);\n }\n $$renderer3.push(`<!--]--></p></div></div>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> <div class=\"grid gap-2 sm:grid-cols-2\"><div class=\"space-y-1\"><p class=\"text-muted-foreground text-xs\">Server URL</p> `);\n Input($$renderer3, {\n placeholder: \"http://localhost:5000\",\n oninput: () => markDirty(server.id),\n class: \"font-mono text-xs\",\n get value() {\n return server.serverUrl;\n },\n set value($$value) {\n server.serverUrl = $$value;\n $$settled = false;\n }\n });\n $$renderer3.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 Input($$renderer3, {\n type: \"password\",\n placeholder: 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 value: server.apiKey === API_KEY_CLEAR ? \"\" : server.apiKey,\n disabled: server.apiKey === API_KEY_CLEAR,\n oninput: (e) => {\n server.apiKey = e.target.value;\n markDirty(server.id);\n },\n class: \"font-mono text-xs\"\n });\n $$renderer3.push(`<!----> `);\n if (server.hasApiKey && server.apiKey !== API_KEY_CLEAR && !server.apiKey) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<button class=\"text-muted-foreground hover:text-destructive shrink-0 text-xs underline-offset-2 hover:underline\">Clear</button>`);\n } else if (server.apiKey === API_KEY_CLEAR) {\n $$renderer3.push(\"<!--[1-->\");\n $$renderer3.push(`<button class=\"text-muted-foreground hover:text-foreground shrink-0 text-xs underline-offset-2 hover:underline\">Undo</button>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--></div></div> <div class=\"space-y-1\"><p class=\"text-muted-foreground text-xs\">Timeout (ms)</p> `);\n Input($$renderer3, {\n type: \"number\",\n placeholder: \"30000\",\n oninput: () => markDirty(server.id),\n onblur: () => {\n server.timeoutMs = Math.min(3e5, Math.max(1e3, Number(server.timeoutMs) || 3e4));\n },\n class: \"text-xs\",\n get value() {\n return server.timeoutMs;\n },\n set value($$value) {\n server.timeoutMs = $$value;\n $$settled = false;\n }\n });\n $$renderer3.push(`<!----></div> <div class=\"space-y-1\"><p class=\"text-muted-foreground text-xs\">Retries</p> `);\n Input($$renderer3, {\n type: \"number\",\n placeholder: \"0\",\n oninput: () => markDirty(server.id),\n onblur: () => {\n server.retryCount = Math.min(5, Math.max(0, Number(server.retryCount) || 0));\n },\n class: \"text-xs\",\n get value() {\n return server.retryCount;\n },\n set value($$value) {\n server.retryCount = $$value;\n $$settled = false;\n }\n });\n $$renderer3.push(`<!----></div></div> `);\n if (data.tenancy !== \"single\") {\n $$renderer3.push(\"<!--[0-->\");\n sharingControl($$renderer3, server);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--> `);\n if (health?.reachable && pluginEntries.length > 0) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<div><button class=\"text-muted-foreground hover:text-foreground flex items-center gap-1 text-xs\">`);\n if (expandedPlugins[server.id]) {\n $$renderer3.push(\"<!--[0-->\");\n Chevron_up($$renderer3, { class: \"h-3 w-3\" });\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n Chevron_down($$renderer3, { class: \"h-3 w-3\" });\n }\n $$renderer3.push(`<!--]--> ${escape_html(pluginEntries.length)} Grasshopper plugin${escape_html(pluginEntries.length === 1 ? \"\" : \"s\")}</button> `);\n if (expandedPlugins[server.id]) {\n $$renderer3.push(\"<!--[0-->\");\n $$renderer3.push(`<div class=\"mt-2 grid gap-1.5 sm:grid-cols-2 lg:grid-cols-3\"><!--[-->`);\n const each_array_1 = ensure_array_like(pluginEntries);\n for (let $$index_1 = 0, $$length = each_array_1.length; $$index_1 < $$length; $$index_1++) {\n let [name, version] = each_array_1[$$index_1];\n $$renderer3.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 }\n $$renderer3.push(`<!--]--></div>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--></div>`);\n } else {\n $$renderer3.push(\"<!--[-1-->\");\n }\n $$renderer3.push(`<!--]--></div>`);\n }\n let $$settled = true;\n let $$inner_renderer;\n function $$render_inner($$renderer3) {\n head(\"1h8e46q\", $$renderer3, ($$renderer4) => {\n $$renderer4.title(($$renderer5) => {\n $$renderer5.push(`<title>Admin · Compute</title>`);\n });\n });\n $$renderer3.push(`<div class=\"space-y-6\">`);\n SectionHeader($$renderer3, {\n eyebrow: \"Admin\",\n title: \"Compute\",\n 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.\"\n });\n $$renderer3.push(`<!----> `);\n if (Card) {\n $$renderer3.push(\"<!--[-->\");\n Card($$renderer3, {\n children: ($$renderer4) => {\n if (Card_content) {\n $$renderer4.push(\"<!--[-->\");\n Card_content($$renderer4, {\n class: \"space-y-3 pt-6\",\n children: ($$renderer5) => {\n if (servers.length === 0) {\n $$renderer5.push(\"<!--[0-->\");\n {\n let actions = function($$renderer6) {\n Button($$renderer6, {\n variant: \"outline\",\n size: \"sm\",\n onclick: addServer,\n children: ($$renderer7) => {\n Plus($$renderer7, { class: \"mr-1.5 h-3.5 w-3.5\" });\n $$renderer7.push(`<!----> Add server`);\n },\n $$slots: { default: true }\n });\n };\n EmptyState($$renderer5, {\n icon: Server,\n title: \"No servers configured\",\n actions\n });\n }\n } else {\n $$renderer5.push(\"<!--[-1-->\");\n $$renderer5.push(`<!--[-->`);\n const each_array_2 = ensure_array_like(servers);\n for (let i = 0, $$length = each_array_2.length; i < $$length; i++) {\n let server = each_array_2[i];\n serverCard($$renderer5, server, i);\n }\n $$renderer5.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 Plus($$renderer5, { class: \"h-4 w-4\" });\n $$renderer5.push(`<!----> Add another server</button>`);\n }\n $$renderer5.push(`<!--]-->`);\n },\n $$slots: { default: true }\n });\n $$renderer4.push(\"<!--]-->\");\n } else {\n $$renderer4.push(\"<!--[!-->\");\n $$renderer4.push(\"<!--]-->\");\n }\n },\n $$slots: { default: true }\n });\n $$renderer3.push(\"<!--]-->\");\n } else {\n $$renderer3.push(\"<!--[!-->\");\n $$renderer3.push(\"<!--]-->\");\n }\n $$renderer3.push(`</div>`);\n }\n do {\n $$settled = true;\n $$inner_renderer = $$renderer2.copy();\n $$render_inner($$inner_renderer);\n } while (!$$settled);\n $$renderer2.subsume($$inner_renderer);\n });\n}\nexport {\n _page as default\n};\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"_page.svelte-Dz-6_oW1.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/admin/system/_page.svelte.js"],"sourcesContent":["import { aj as spread_props, I as escape_html, k as attr_class, am as stringify, T as head, G as ensure_array_like } from \"../../../../chunks/renderer.js\";\nimport { C as Card, a as Card_content } from \"../../../../chunks/card-content.js\";\nimport { C as Card_header, a as Card_title } from \"../../../../chunks/card-title.js\";\nimport { C as Card_description } from \"../../../../chunks/card-description.js\";\nimport { B as Button } from \"../../../../chunks/button.js\";\nimport { I as Icon } from \"../../../../chunks/Icon2.js\";\nimport { R as Root, b as Alert_dialog_content, e as Alert_dialog_header, f as Alert_dialog_title, c as Alert_dialog_description, d as Alert_dialog_footer, a as Alert_dialog_cancel, A as Alert_dialog_action } from \"../../../../chunks/index4.js\";\nimport { S as SectionHeader } from \"../../../../chunks/SectionHeader.js\";\nfunction Refresh_cw($$renderer, $$props) {\n let { $$slots, $$events, ...props } = $$props;\n const iconNode = [\n [\n \"path\",\n { \"d\": \"M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8\" }\n ],\n [\"path\", { \"d\": \"M21 3v5h-5\" }],\n [\n \"path\",\n { \"d\": \"M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16\" }\n ],\n [\"path\", { \"d\": \"M8 16H3v5\" }]\n ];\n Icon($$renderer, spread_props([{ name: \"refresh-cw\" }, props, { iconNode }]));\n}\nfunction UpdateSection($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let {\n currentVersion,\n isRunning = false,\n isRestarting = false,\n logs = \"\",\n exitCode = null,\n onRun\n } = $$props;\n let showRunConfirm = false;\n function buttonLabel() {\n if (isRestarting) return \"Restarting & verifying…\";\n if (isRunning) return \"Running…\";\n return \"Run Update\";\n }\n function statusMessage() {\n if (exitCode === null) return null;\n if (exitCode === 0) return { text: \"✓ Update completed successfully\", tone: \"success\" };\n if (exitCode === -2) return {\n text: \"⚠ App did not respond within 5 minutes after restart — check PM2 logs\",\n tone: \"destructive\"\n };\n return {\n text: `Update failed (exit code ${exitCode})`,\n tone: \"destructive\"\n };\n }\n function handleRunClick() {\n showRunConfirm = true;\n }\n function confirmRun() {\n showRunConfirm = false;\n onRun?.();\n }\n if (Card) {\n $$renderer2.push(\"<!--[-->\");\n Card($$renderer2, {\n children: ($$renderer3) => {\n if (Card_header) {\n $$renderer3.push(\"<!--[-->\");\n Card_header($$renderer3, {\n children: ($$renderer4) => {\n $$renderer4.push(`<div class=\"flex items-start justify-between gap-3\">`);\n if (Card_title) {\n $$renderer4.push(\"<!--[-->\");\n Card_title($$renderer4, {\n children: ($$renderer5) => {\n $$renderer5.push(`<!---->Application Update`);\n },\n $$slots: { default: true }\n });\n $$renderer4.push(\"<!--]-->\");\n } else {\n $$renderer4.push(\"<!--[!-->\");\n $$renderer4.push(\"<!--]-->\");\n }\n $$renderer4.push(` `);\n if (currentVersion) {\n $$renderer4.push(\"<!--[0-->\");\n $$renderer4.push(`<span class=\"border-border bg-muted text-muted-foreground rounded-full border px-2 py-0.5 font-mono text-xs\" title=\"Currently installed @selvajs/selva version\">v${escape_html(currentVersion)}</span>`);\n } else {\n $$renderer4.push(\"<!--[-1-->\");\n }\n $$renderer4.push(`<!--]--></div> `);\n if (Card_description) {\n $$renderer4.push(\"<!--[-->\");\n Card_description($$renderer4, {\n children: ($$renderer5) => {\n $$renderer5.push(`<!---->Run the update script to pull latest changes and restart`);\n },\n $$slots: { default: true }\n });\n $$renderer4.push(\"<!--]-->\");\n } else {\n $$renderer4.push(\"<!--[!-->\");\n $$renderer4.push(\"<!--]-->\");\n }\n },\n $$slots: { default: true }\n });\n $$renderer3.push(\"<!--]-->\");\n } else {\n $$renderer3.push(\"<!--[!-->\");\n $$renderer3.push(\"<!--]-->\");\n }\n $$renderer3.push(` `);\n if (Card_content) {\n $$renderer3.push(\"<!--[-->\");\n Card_content($$renderer3, {\n class: \"space-y-4\",\n children: ($$renderer4) => {\n Button($$renderer4, {\n onclick: handleRunClick,\n disabled: isRunning,\n variant: \"destructive\",\n children: ($$renderer5) => {\n if (isRestarting) {\n $$renderer5.push(\"<!--[0-->\");\n Refresh_cw($$renderer5, { class: \"mr-2 h-4 w-4 animate-spin\" });\n } else {\n $$renderer5.push(\"<!--[-1-->\");\n }\n $$renderer5.push(`<!--]--> ${escape_html(buttonLabel())}`);\n },\n $$slots: { default: true }\n });\n $$renderer4.push(`<!----> `);\n if (isRestarting && exitCode === null) {\n $$renderer4.push(\"<!--[0-->\");\n $$renderer4.push(`<div class=\"border-border bg-muted/50 text-muted-foreground flex items-center gap-2 rounded-md border px-3 py-2 text-sm\">`);\n Refresh_cw($$renderer4, { class: \"h-4 w-4 animate-spin\" });\n $$renderer4.push(`<!----> <span>PM2 is restarting the app — waiting for the new process to come online…</span></div>`);\n } else {\n $$renderer4.push(\"<!--[-1-->\");\n }\n $$renderer4.push(`<!--]--> `);\n if (logs) {\n $$renderer4.push(\"<!--[0-->\");\n $$renderer4.push(`<div class=\"space-y-2\"><h4 class=\"text-sm font-medium\">Update Logs</h4> <pre class=\"bg-muted text-foreground max-h-96 overflow-auto rounded-md p-4 font-mono text-xs\">${escape_html(logs)}</pre> `);\n if (statusMessage()) {\n $$renderer4.push(\"<!--[0-->\");\n const msg = statusMessage();\n $$renderer4.push(`<p${attr_class(`text-sm font-medium ${stringify(msg.tone === \"success\" ? \"text-success\" : msg.tone === \"destructive\" ? \"text-destructive\" : \"text-muted-foreground\")}`)}>${escape_html(msg.text)}</p>`);\n } else {\n $$renderer4.push(\"<!--[-1-->\");\n }\n $$renderer4.push(`<!--]--></div>`);\n } else {\n $$renderer4.push(\"<!--[-1-->\");\n }\n $$renderer4.push(`<!--]-->`);\n },\n $$slots: { default: true }\n });\n $$renderer3.push(\"<!--]-->\");\n } else {\n $$renderer3.push(\"<!--[!-->\");\n $$renderer3.push(\"<!--]-->\");\n }\n },\n $$slots: { default: true }\n });\n $$renderer2.push(\"<!--]-->\");\n } else {\n $$renderer2.push(\"<!--[!-->\");\n $$renderer2.push(\"<!--]-->\");\n }\n $$renderer2.push(` `);\n if (Root) {\n $$renderer2.push(\"<!--[-->\");\n Root($$renderer2, {\n open: showRunConfirm,\n onOpenChange: (o) => showRunConfirm = o,\n children: ($$renderer3) => {\n if (Alert_dialog_content) {\n $$renderer3.push(\"<!--[-->\");\n Alert_dialog_content($$renderer3, {\n children: ($$renderer4) => {\n if (Alert_dialog_header) {\n $$renderer4.push(\"<!--[-->\");\n Alert_dialog_header($$renderer4, {\n children: ($$renderer5) => {\n if (Alert_dialog_title) {\n $$renderer5.push(\"<!--[-->\");\n Alert_dialog_title($$renderer5, {\n children: ($$renderer6) => {\n $$renderer6.push(`<!---->Run Update?`);\n },\n $$slots: { default: true }\n });\n $$renderer5.push(\"<!--]-->\");\n } else {\n $$renderer5.push(\"<!--[!-->\");\n $$renderer5.push(\"<!--]-->\");\n }\n $$renderer5.push(` `);\n if (Alert_dialog_description) {\n $$renderer5.push(\"<!--[-->\");\n Alert_dialog_description($$renderer5, {\n children: ($$renderer6) => {\n $$renderer6.push(`<!---->This will pull the latest changes and restart the application. The service will be\n\t\t\t\ttemporarily unavailable.`);\n },\n $$slots: { default: true }\n });\n $$renderer5.push(\"<!--]-->\");\n } else {\n $$renderer5.push(\"<!--[!-->\");\n $$renderer5.push(\"<!--]-->\");\n }\n },\n $$slots: { default: true }\n });\n $$renderer4.push(\"<!--]-->\");\n } else {\n $$renderer4.push(\"<!--[!-->\");\n $$renderer4.push(\"<!--]-->\");\n }\n $$renderer4.push(` `);\n if (Alert_dialog_footer) {\n $$renderer4.push(\"<!--[-->\");\n Alert_dialog_footer($$renderer4, {\n children: ($$renderer5) => {\n if (Alert_dialog_cancel) {\n $$renderer5.push(\"<!--[-->\");\n Alert_dialog_cancel($$renderer5, {\n children: ($$renderer6) => {\n $$renderer6.push(`<!---->Cancel`);\n },\n $$slots: { default: true }\n });\n $$renderer5.push(\"<!--]-->\");\n } else {\n $$renderer5.push(\"<!--[!-->\");\n $$renderer5.push(\"<!--]-->\");\n }\n $$renderer5.push(` `);\n if (Alert_dialog_action) {\n $$renderer5.push(\"<!--[-->\");\n Alert_dialog_action($$renderer5, {\n onclick: confirmRun,\n disabled: isRunning,\n children: ($$renderer6) => {\n $$renderer6.push(`<!---->${escape_html(isRestarting ? \"Restarting…\" : \"Continue\")}`);\n },\n $$slots: { default: true }\n });\n $$renderer5.push(\"<!--]-->\");\n } else {\n $$renderer5.push(\"<!--[!-->\");\n $$renderer5.push(\"<!--]-->\");\n }\n },\n $$slots: { default: true }\n });\n $$renderer4.push(\"<!--]-->\");\n } else {\n $$renderer4.push(\"<!--[!-->\");\n $$renderer4.push(\"<!--]-->\");\n }\n },\n $$slots: { default: true }\n });\n $$renderer3.push(\"<!--]-->\");\n } else {\n $$renderer3.push(\"<!--[!-->\");\n $$renderer3.push(\"<!--]-->\");\n }\n },\n $$slots: { default: true }\n });\n $$renderer2.push(\"<!--]-->\");\n } else {\n $$renderer2.push(\"<!--[!-->\");\n $$renderer2.push(\"<!--]-->\");\n }\n });\n}\nfunction _page($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let { data } = $$props;\n const flagDescriptions = {\n ALLOW_CROSS_ORG_PUBLIC: \"When on, projects can be made visible to every authenticated user on the instance, not just their own org.\",\n ALLOW_ORG_COMPUTE_OVERRIDE: \"When on, individual orgs can configure their own Rhino.Compute server instead of the instance pool.\",\n ALLOW_ORG_CREATION: 'When on, signed-in users see a \"Create organization\" action. Off by default in self-hosted instances.',\n ENABLE_PLATFORM_PROJECTS: \"When on, the Admin → Projects surface is reachable: instance admins can create platform-owned projects and grant view/solve access to orgs or individual users. When off, the surface 404s and platform-visibility projects are hidden everywhere — existing rows are preserved.\",\n ENABLE_SHARING: \"When on, editors can mint per-definition share links that grant anonymous external access. When off, the mint/list/revoke routes return 404 and any previously-minted tokens stop resolving.\"\n };\n let updateRunning = false;\n let updateLogs = \"\";\n let updateExitCode = null;\n let updateRestarting = false;\n async function fetchHealth() {\n try {\n const res = await fetch(\"/api/health\", { cache: \"no-store\" });\n if (!res.ok) return null;\n return await res.json();\n } catch {\n return null;\n }\n }\n async function fetchUpdateLog() {\n try {\n const res = await fetch(\"/admin/api/system/update\", { cache: \"no-store\" });\n if (!res.ok) return null;\n return await res.text();\n } catch {\n return null;\n }\n }\n async function waitForAppRestart(previousCommit) {\n updateLogs += \"\\nWaiting for app to come back online…\\n\";\n await new Promise((r) => setTimeout(r, 2e3));\n const maxAttempts = 150;\n let consecutiveOk = 0;\n for (let i = 0; i < maxAttempts; i++) {\n const [health, log] = await Promise.all([fetchHealth(), fetchUpdateLog()]);\n if (log && log.trim().length > 0) {\n updateLogs = log;\n }\n if (health) {\n if (previousCommit && health.commit) {\n if (health.commit !== previousCommit) {\n updateLogs += `\n✓ App is back online on new commit ${health.commit.slice(0, 7)}\n`;\n updateExitCode = 0;\n updateRunning = false;\n updateRestarting = false;\n return;\n }\n consecutiveOk = 0;\n } else {\n consecutiveOk += 1;\n if (consecutiveOk >= 2) {\n updateLogs += \"\\n✓ App is back online!\\n\";\n updateExitCode = 0;\n updateRunning = false;\n updateRestarting = false;\n return;\n }\n }\n } else {\n consecutiveOk = 0;\n }\n await new Promise((r) => setTimeout(r, 2e3));\n }\n const finalLog = await fetchUpdateLog();\n if (finalLog && finalLog.trim().length > 0) updateLogs = finalLog;\n updateLogs += \"\\n⚠ App did not come back within 5 minutes — check PM2 logs.\\n\";\n updateExitCode = -2;\n updateRunning = false;\n updateRestarting = false;\n }\n async function runUpdate() {\n updateRunning = true;\n updateRestarting = false;\n updateLogs = \"\";\n updateExitCode = null;\n const preHealth = await fetchHealth();\n const previousCommit = preHealth?.commit ?? null;\n try {\n const response = await fetch(\"/admin/api/system/update\", { method: \"POST\" });\n if (!response.ok) {\n updateLogs = \"Failed to start update process\";\n updateExitCode = response.status;\n updateRunning = false;\n return;\n }\n const reader = response.body?.getReader();\n const decoder = new TextDecoder();\n if (!reader) {\n updateLogs = \"Failed to read response\";\n updateExitCode = -1;\n updateRunning = false;\n return;\n }\n let buffer = \"\";\n let sawRestarting = false;\n let sawExit = false;\n let streamExitCode = null;\n while (true) {\n const { done, value } = await reader.read();\n if (done) break;\n buffer += decoder.decode(value, { stream: true });\n const parts = buffer.split(\"\\n\\n\");\n buffer = parts.pop();\n for (const part of parts) {\n if (!part.startsWith(\"data: \")) continue;\n try {\n const event = JSON.parse(part.slice(6));\n if (event.type === \"log\") {\n updateLogs += event.data + \"\\n\";\n } else if (event.type === \"restarting\") {\n updateLogs += event.data + \"\\n\";\n updateRestarting = true;\n sawRestarting = true;\n } else if (event.type === \"exit\") {\n sawExit = true;\n streamExitCode = event.code;\n }\n } catch {\n }\n }\n }\n if (sawRestarting) {\n await waitForAppRestart(previousCommit);\n } else if (sawExit && streamExitCode === 0) {\n updateExitCode = 0;\n updateRunning = false;\n } else if (sawExit) {\n updateExitCode = streamExitCode ?? -1;\n updateRunning = false;\n } else {\n await waitForAppRestart(previousCommit);\n }\n } catch (err) {\n if (updateRestarting) {\n await waitForAppRestart(previousCommit);\n } else {\n updateLogs += \"\\nError: \" + (err instanceof Error ? err.message : \"Unknown error\");\n updateExitCode = -1;\n updateRunning = false;\n }\n }\n }\n head(\"1uq49ma\", $$renderer2, ($$renderer3) => {\n $$renderer3.title(($$renderer4) => {\n $$renderer4.push(`<title>Admin · System</title>`);\n });\n });\n $$renderer2.push(`<div class=\"space-y-6\">`);\n SectionHeader($$renderer2, {\n eyebrow: \"Admin\",\n title: \"System settings\",\n description: \"Instance-wide configuration, platform flags, and the update runner. To change platform flags, edit SELVA_FLAG_* in your .env and restart the app.\"\n });\n $$renderer2.push(`<!----> `);\n if (Card) {\n $$renderer2.push(\"<!--[-->\");\n Card($$renderer2, {\n children: ($$renderer3) => {\n if (Card_header) {\n $$renderer3.push(\"<!--[-->\");\n Card_header($$renderer3, {\n children: ($$renderer4) => {\n if (Card_title) {\n $$renderer4.push(\"<!--[-->\");\n Card_title($$renderer4, {\n class: \"text-sm font-medium\",\n children: ($$renderer5) => {\n $$renderer5.push(`<!---->Platform flags`);\n },\n $$slots: { default: true }\n });\n $$renderer4.push(\"<!--]-->\");\n } else {\n $$renderer4.push(\"<!--[!-->\");\n $$renderer4.push(\"<!--]-->\");\n }\n $$renderer4.push(` `);\n if (Card_description) {\n $$renderer4.push(\"<!--[-->\");\n Card_description($$renderer4, {\n children: ($$renderer5) => {\n $$renderer5.push(`<!---->Resolved state of the env-driven flags that control instance behavior. To change a flag,\n\t\t\t\tedit your environment configuration and restart the app.`);\n },\n $$slots: { default: true }\n });\n $$renderer4.push(\"<!--]-->\");\n } else {\n $$renderer4.push(\"<!--[!-->\");\n $$renderer4.push(\"<!--]-->\");\n }\n },\n $$slots: { default: true }\n });\n $$renderer3.push(\"<!--]-->\");\n } else {\n $$renderer3.push(\"<!--[!-->\");\n $$renderer3.push(\"<!--]-->\");\n }\n $$renderer3.push(` `);\n if (Card_content) {\n $$renderer3.push(\"<!--[-->\");\n Card_content($$renderer3, {\n children: ($$renderer4) => {\n $$renderer4.push(`<div class=\"divide-y rounded-lg border\"><!--[-->`);\n const each_array = ensure_array_like(Object.entries(data.flags));\n for (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n let [name, value] = each_array[$$index];\n $$renderer4.push(`<div class=\"flex items-start justify-between gap-4 px-4 py-3\"><div class=\"min-w-0 flex-1\"><code class=\"text-foreground font-mono text-xs\">${escape_html(name)}</code> <p class=\"text-muted-foreground mt-1 text-xs\">${escape_html(flagDescriptions[name])}</p></div> <span${attr_class(`rounded-full border px-2 py-0.5 font-mono text-[10px] tracking-wide uppercase ${value ? \"border-success/40 bg-success/10 text-success\" : \"border-border text-muted-foreground\"}`)}>${escape_html(value ? \"On\" : \"Off\")}</span></div>`);\n }\n $$renderer4.push(`<!--]--></div>`);\n },\n $$slots: { default: true }\n });\n $$renderer3.push(\"<!--]-->\");\n } else {\n $$renderer3.push(\"<!--[!-->\");\n $$renderer3.push(\"<!--]-->\");\n }\n },\n $$slots: { default: true }\n });\n $$renderer2.push(\"<!--]-->\");\n } else {\n $$renderer2.push(\"<!--[!-->\");\n $$renderer2.push(\"<!--]-->\");\n }\n $$renderer2.push(` `);\n if (data.canManageUpdates) {\n $$renderer2.push(\"<!--[0-->\");\n UpdateSection($$renderer2, {\n currentVersion: data.version,\n isRunning: updateRunning,\n isRestarting: updateRestarting,\n logs: updateLogs,\n exitCode: updateExitCode,\n onRun: runUpdate\n });\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n }\n $$renderer2.push(`<!--]--></div>`);\n });\n}\nexport {\n _page as default\n};\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"_server.ts-BKtKkHZS.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/compute/schema/_server.ts.js"],"sourcesContent":["import { r as resolveServerForOrg } from \"../../../../../chunks/resolve.server.js\";\nimport { r as requireCanCreateDefinition } from \"../../../../../chunks/access.server.js\";\nimport { error } from \"@sveltejs/kit\";\nimport { camelcaseKeys } from \"@selvajs/compute/core\";\nconst POST = async ({ request, locals, url }) => {\n const projectId = url.searchParams.get(\"projectId\");\n if (!projectId) {\n throw error(400, \"projectId query parameter is required\");\n }\n const { project } = await requireCanCreateDefinition(locals, projectId);\n const server = await resolveServerForOrg(locals.ctx, project.orgId);\n const formData = await request.formData();\n const schemaUrl = new URL(\"/grasshopper/schema\", server.serverUrl).toString();\n const headers = {};\n if (server.apiKey) {\n headers[\"RhinoComputeKey\"] = server.apiKey;\n }\n let response;\n try {\n response = await fetch(schemaUrl, { method: \"POST\", headers, body: formData });\n } catch {\n throw error(503, \"Compute server is unreachable\");\n }\n if (!response.ok) {\n throw error(response.status, \"Compute server error\");\n }\n const raw = await response.json();\n const results = camelcaseKeys(Array.isArray(raw) ? raw : [raw]);\n const schemas = results.flatMap((r) => r.schemas ?? []);\n if (schemas.length === 0) {\n throw error(422, \"No schemas found in definition\");\n }\n return new Response(JSON.stringify(schemas), {\n headers: { \"Content-Type\": \"application/json\" }\n });\n};\nexport {\n POST\n};\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAIK,MAAC,IAAI,GAAG,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,KAAK;AACjD,EAAE,MAAM,SAAS,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC;AACrD,EAAE,IAAI,CAAC,SAAS,EAAE;AAClB,IAAI,MAAM,KAAK,CAAC,GAAG,EAAE,uCAAuC,CAAC;AAC7D,EAAE;AACF,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,0BAA0B,CAAC,MAAM,EAAE,SAAS,CAAC;AACzE,EAAE,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC;AACrE,EAAE,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,QAAQ,EAAE;AAC3C,EAAE,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,qBAAqB,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,QAAQ,EAAE;AAC/E,EAAE,MAAM,OAAO,GAAG,EAAE;AACpB,EAAE,IAAI,MAAM,CAAC,MAAM,EAAE;AACrB,IAAI,OAAO,CAAC,iBAAiB,CAAC,GAAG,MAAM,CAAC,MAAM;AAC9C,EAAE;AACF,EAAE,IAAI,QAAQ;AACd,EAAE,IAAI;AACN,IAAI,QAAQ,GAAG,MAAM,KAAK,CAAC,SAAS,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AAClF,EAAE,CAAC,CAAC,MAAM;AACV,IAAI,MAAM,KAAK,CAAC,GAAG,EAAE,+BAA+B,CAAC;AACrD,EAAE;AACF,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE;AACpB,IAAI,MAAM,KAAK,CAAC,QAAQ,CAAC,MAAM,EAAE,sBAAsB,CAAC;AACxD,EAAE;AACF,EAAE,MAAM,GAAG,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE;AACnC,EAAE,MAAM,OAAO,GAAG,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;AACjE,EAAE,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC;AACzD,EAAE,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE;AAC5B,IAAI,MAAM,KAAK,CAAC,GAAG,EAAE,gCAAgC,CAAC;AACtD,EAAE;AACF,EAAE,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE;AAC/C,IAAI,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB;AACjD,GAAG,CAAC;AACJ;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"_server.ts-Bkr-33U0.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/definitions/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { randomUUID } from \"node:crypto\";\nimport { n as getProjectProvider, a as definitionService } from \"../../../../chunks/providers.server.js\";\nimport { r as requireCanCreateDefinition } from \"../../../../chunks/access.server.js\";\nimport { t as throwZodError, f as fetchSchemaFromCompute, h as handleApiError } from \"../../../../chunks/api-errors.js\";\nimport { G as GH_EXTENSIONS } from \"../../../../chunks/types.js\";\nimport { C as CreateDefinitionInputSchema } from \"../../../../chunks/context.js\";\nimport { M as MAX_GH_FILE_SIZE, a as MAX_IMAGE_FILE_SIZE } from \"../../../../chunks/computeLimits.js\";\nimport { r as resolveServerForOrg } from \"../../../../chunks/resolve.server.js\";\nfunction parseTags(raw) {\n if (typeof raw !== \"string\" || !raw.trim()) return void 0;\n const tags = raw.split(\",\").map((t) => t.trim()).filter(Boolean);\n return tags.length ? tags : void 0;\n}\nconst POST = async ({ request, locals }) => {\n const ctx = locals.ctx;\n const formData = await request.formData();\n const file = formData.get(\"file\");\n if (!(file instanceof File)) {\n throw error(400, \"A Grasshopper (.gh or .ghx) file is required\");\n }\n const ext = file.name.slice(file.name.lastIndexOf(\".\")).toLowerCase();\n if (!GH_EXTENSIONS.includes(ext)) {\n throw error(400, `File type not allowed. Allowed: ${GH_EXTENSIONS.join(\", \")}`);\n }\n if (file.size > MAX_GH_FILE_SIZE) {\n throw error(400, `File too large. Max size: ${MAX_GH_FILE_SIZE / (1024 * 1024)} MB`);\n }\n const imageFile = formData.get(\"image\");\n if (imageFile instanceof File && imageFile.size > MAX_IMAGE_FILE_SIZE) {\n throw error(400, `Image too large. Max size: ${MAX_IMAGE_FILE_SIZE / (1024 * 1024)} MB`);\n }\n let projectId = formData.get(\"projectId\");\n if (typeof projectId !== \"string\" || !projectId) {\n if (!ctx.actingOrgId) throw error(400, \"No active organization\");\n const projectsPage = await getProjectProvider().listProjects(ctx, ctx.actingOrgId, {\n limit: 1\n });\n const defaultProject = projectsPage.items[0];\n if (!defaultProject) throw error(500, \"No project configured\");\n projectId = defaultProject.id;\n }\n const { project } = await requireCanCreateDefinition(locals, projectId);\n const parsed = CreateDefinitionInputSchema.safeParse({\n displayName: formData.get(\"displayName\"),\n description: formData.get(\"description\") || void 0,\n category: formData.get(\"category\") || void 0,\n coverImage: formData.get(\"coverImage\") || void 0,\n tags: parseTags(formData.get(\"tags\")),\n projectId,\n computeServerId: formData.get(\"computeServerId\") || void 0\n });\n if (!parsed.success) throwZodError(parsed.error);\n const fileExt = ext.slice(1);\n const guid = randomUUID();\n try {\n const fileData = new Uint8Array(await file.arrayBuffer());\n const server = await resolveServerForOrg(ctx, project.orgId, {\n definitionPin: parsed.data.computeServerId ?? null\n });\n const schema = await fetchSchemaFromCompute(fileData, server);\n const { record, version } = await definitionService.create(\n ctx,\n {\n guid,\n projectId: parsed.data.projectId,\n ownerId: locals.user.id,\n fileExt,\n originalFilename: file.name,\n computeServerId: parsed.data.computeServerId,\n displayName: parsed.data.displayName.trim(),\n description: parsed.data.description,\n category: parsed.data.category,\n tags: parsed.data.tags,\n coverImage: parsed.data.coverImage\n },\n fileData,\n schema\n );\n let coverImage = record.coverImage;\n if (imageFile instanceof File && imageFile.size > 0) {\n const imageData = new Uint8Array(await imageFile.arrayBuffer());\n coverImage = await definitionService.saveCoverImage(ctx, guid, imageData);\n }\n return json({ success: true, guid, version, coverImage });\n } catch (err) {\n handleApiError(err, \"Failed to create definition\");\n }\n};\nexport {\n POST\n};\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"_server.ts-DuC2r20u.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/compute/_server.ts.js"],"sourcesContent":["import { TreeBuilder, GrasshopperClient } from \"@selvajs/compute\";\nimport { error, json, isHttpError } from \"@sveltejs/kit\";\nimport { r as resolveServerForOrg } from \"../../../../chunks/resolve.server.js\";\nimport { c as RATE_LIMIT_WINDOW_MS, R as RATE_LIMIT_MAX_REQUESTS, b as MAX_SOLVE_DURATION_MS, D as DEFINITION_CACHE_TTL_MS, d as REMOTE_DEFINITION_FETCH_TIMEOUT_MS, e as REMOTE_DEFINITION_MAX_BYTES, C as COMPUTE_REQUEST_MAX_BYTES } from \"../../../../chunks/computeLimits.js\";\nimport { e as requireMaxBodySize } from \"../../../../chunks/admin-auth.server.js\";\nimport { o as getStorageProvider, s as providers } from \"../../../../chunks/providers.server.js\";\nimport { k as requireCanEditDefinition, q as requireCanSolve } from \"../../../../chunks/access.server.js\";\nimport { t as tryResolveShareToken } from \"../../../../chunks/resolve.server2.js\";\nimport { f as fetchSchemaFromCompute } from \"../../../../chunks/api-errors.js\";\nfunction isSafeRemoteDefinitionUrl(raw) {\n let parsed;\n try {\n parsed = new URL(raw);\n } catch {\n return false;\n }\n if (parsed.protocol !== \"http:\" && parsed.protocol !== \"https:\") return false;\n const host = parsed.hostname.toLowerCase();\n if (!host) return false;\n if (host === \"localhost\" || host === \"0.0.0.0\" || host.endsWith(\".localhost\")) return false;\n if (host === \"::1\" || host === \"[::1]\") return false;\n if (/^127\\./.test(host)) return false;\n if (/^10\\./.test(host)) return false;\n if (/^192\\.168\\./.test(host)) return false;\n if (/^172\\.(1[6-9]|2[0-9]|3[0-1])\\./.test(host)) return false;\n if (/^169\\.254\\./.test(host)) return false;\n if (/^\\[?(fc|fd)[0-9a-f]{2}:/i.test(host)) return false;\n if (/^\\[?fe[89ab][0-9a-f]:/i.test(host)) return false;\n return true;\n}\nconst WINDOW_MS = RATE_LIMIT_WINDOW_MS;\nconst MAX_PER_WINDOW = RATE_LIMIT_MAX_REQUESTS;\nconst buckets = /* @__PURE__ */ new Map();\nfunction checkComputeRateLimit(key) {\n const now = Date.now();\n const entry = buckets.get(key);\n if (!entry || now > entry.resetAt) {\n buckets.set(key, { count: 1, resetAt: now + WINDOW_MS });\n return { allowed: true };\n }\n if (entry.count >= MAX_PER_WINDOW) {\n return { allowed: false, retryAfter: Math.ceil((entry.resetAt - now) / 1e3) };\n }\n entry.count += 1;\n return { allowed: true };\n}\nconst definitionCache = /* @__PURE__ */ new Map();\nlet cachedClient = null;\nlet cachedScheduler = null;\nlet cachedClientConfig = null;\nasync function getClient(serverConfig) {\n const currentConfig = {\n serverUrl: serverConfig.serverUrl,\n apiKey: serverConfig.apiKey\n };\n if (cachedClient && cachedScheduler && cachedClientConfig && cachedClientConfig.serverUrl === currentConfig.serverUrl && cachedClientConfig.apiKey === currentConfig.apiKey) {\n return { client: cachedClient, scheduler: cachedScheduler };\n }\n cachedScheduler?.dispose();\n cachedClient = await GrasshopperClient.create({\n serverUrl: currentConfig.serverUrl,\n apiKey: currentConfig.apiKey\n });\n cachedScheduler = cachedClient.createScheduler({\n mode: \"queue\",\n timeoutMs: MAX_SOLVE_DURATION_MS,\n cache: { maxEntries: 20, ttlMs: 5 * 6e4 }\n });\n cachedClientConfig = currentConfig;\n return { client: cachedClient, scheduler: cachedScheduler };\n}\nasync function loadRemoteDefinition(url) {\n if (!isSafeRemoteDefinitionUrl(url)) {\n throw new Error(\"Remote definition URL is not allowed\");\n }\n const now = Date.now();\n const cached = definitionCache.get(url);\n if (cached && now - cached.fetchedAt < DEFINITION_CACHE_TTL_MS) {\n return cached.data;\n }\n const controller = new AbortController();\n const timeout = setTimeout(() => controller.abort(), REMOTE_DEFINITION_FETCH_TIMEOUT_MS);\n let data;\n try {\n const response = await fetch(url, {\n signal: controller.signal,\n redirect: \"error\"\n });\n if (!response.ok) {\n throw new Error(`HTTP ${response.status}: ${response.statusText}`);\n }\n const declared = Number(response.headers.get(\"content-length\"));\n if (Number.isFinite(declared) && declared > REMOTE_DEFINITION_MAX_BYTES) {\n throw new Error(\"Remote definition exceeds size limit\");\n }\n const buffer = await response.arrayBuffer();\n if (buffer.byteLength > REMOTE_DEFINITION_MAX_BYTES) {\n throw new Error(\"Remote definition exceeds size limit\");\n }\n data = new Uint8Array(buffer);\n } finally {\n clearTimeout(timeout);\n }\n definitionCache.set(url, { data, fetchedAt: now });\n if (definitionCache.size > 50) {\n const entries = Array.from(definitionCache.entries());\n entries.sort((a, b) => a[1].fetchedAt - b[1].fetchedAt);\n for (let i = 0; i < 10; i++) {\n definitionCache.delete(entries[i][0]);\n }\n }\n return data;\n}\nfunction transformInputParameter(input, value) {\n const base = {\n description: input.description || \"\",\n name: input.nickname,\n nickname: input.nickname || null,\n id: input.id\n };\n if (input.paramType === \"number\" || input.paramType === \"integer\") {\n return {\n ...base,\n paramType: input.paramType === \"integer\" ? \"Integer\" : \"Number\",\n minimum: input.minimum,\n maximum: input.maximum,\n stepSize: input.paramType === \"integer\" ? 1 : input.stepSize,\n default: value ?? input.default\n };\n } else if (input.paramType === \"text\") {\n return {\n ...base,\n paramType: \"Text\",\n default: value ?? input.default ?? \"\"\n };\n } else if (input.paramType === \"boolean\") {\n return {\n ...base,\n paramType: \"Boolean\",\n default: value ?? input.default ?? false\n };\n }\n return {\n ...base,\n paramType: \"Text\",\n default: value ?? \"\"\n };\n}\nconst POST = async ({ request, locals, url }) => {\n const storage = getStorageProvider();\n requireMaxBodySize(request, COMPUTE_REQUEST_MAX_BYTES);\n try {\n const body = await request.json();\n const { inputs, values } = body;\n const definitionUrl = body.definitionUrl;\n const channel = body.channel ?? \"live\";\n if (!inputs || !values || !definitionUrl) {\n throw error(400, \"Missing required fields: inputs, values, or definitionUrl\");\n }\n if (channel !== \"live\" && channel !== \"draft\") {\n throw error(400, `Invalid channel: ${channel}. Must be 'live' or 'draft'.`);\n }\n let definitionSource;\n let localVersionForBackfill = null;\n let solveOrgId = null;\n let definitionPin = null;\n const isLocal = definitionUrl.startsWith(\"local:\");\n const guid = isLocal ? definitionUrl.substring(6) : null;\n const sharedAccess = isLocal && guid ? await tryResolveShareToken(request, url, guid, channel, { requireSolve: true }) : null;\n if (!sharedAccess && (!locals.ctx || !locals.user)) {\n throw error(401, \"Unauthorized\");\n }\n const solveCtx = sharedAccess?.ctx ?? locals.ctx;\n const rateLimitKey = sharedAccess ? `share:${sharedAccess.link.id}` : `user:${locals.user.id}`;\n const rateLimit = checkComputeRateLimit(rateLimitKey);\n if (!rateLimit.allowed) {\n const retryAfter = rateLimit.retryAfter ?? 1;\n return new Response(\n JSON.stringify({\n message: `Too many compute requests. Retry in ${retryAfter}s.`,\n retryAfter\n }),\n {\n status: 429,\n headers: {\n \"Content-Type\": \"application/json\",\n \"Retry-After\": String(retryAfter)\n }\n }\n );\n }\n if (isLocal && guid) {\n let record;\n try {\n record = await providers.data.definitions.get(solveCtx, guid);\n } catch (err) {\n console.error(`Failed to load local definition: ${guid}`, err);\n throw error(404, `Definition '${guid}' not found`);\n }\n if (!record) throw error(404, `Definition '${guid}' not found`);\n const project = await providers.data.projects.getProject(solveCtx, record.projectId);\n solveOrgId = project?.orgId ?? null;\n definitionPin = record.computeServerId ?? null;\n if (!sharedAccess) {\n if (channel === \"draft\") {\n await requireCanEditDefinition(locals, record.projectId, guid);\n } else {\n await requireCanSolve(locals, record.projectId);\n }\n }\n const versionId = channel === \"live\" ? record.liveVersionId : record.draftVersionId;\n if (!versionId) {\n throw error(404, `Definition '${guid}' has no ${channel} version yet`);\n }\n const version = await providers.data.definitions.getVersion(solveCtx, versionId);\n if (!version || version.definitionId !== guid) {\n throw error(404, `Definition '${guid}' ${channel} version is missing`);\n }\n localVersionForBackfill = { id: version.id, hasSchema: version.schema !== void 0 };\n try {\n const bytes = await storage.get(version.fileKey);\n if (!bytes) throw new Error(`Version blob missing: ${version.fileKey}`);\n definitionSource = bytes;\n } catch (err) {\n console.error(`Failed to load local definition blob: ${guid}`, err);\n throw error(404, `Definition '${guid}' not found`);\n }\n } else {\n try {\n definitionSource = await loadRemoteDefinition(definitionUrl);\n } catch (err) {\n console.error(`Failed to fetch definition from ${definitionUrl}:`, err);\n throw error(\n 400,\n `Failed to load definition: ${err instanceof Error ? err.message : String(err)}`\n );\n }\n }\n const inputTree = TreeBuilder.fromInputParams(\n inputs.filter((input) => input.paramType).map((input) => transformInputParameter(input, values[input.id]))\n );\n if (sharedAccess) {\n const next = await providers.data.shareLinks.tryIncrementSolveCount(\n solveCtx,\n sharedAccess.link.id\n );\n if (next === null) {\n throw error(429, \"Share link solve cap reached.\");\n }\n }\n const serverConfig = await resolveServerForOrg(solveCtx, solveOrgId, { definitionPin });\n if (localVersionForBackfill && !localVersionForBackfill.hasSchema) {\n const versionId = localVersionForBackfill.id;\n try {\n const schema = await fetchSchemaFromCompute(definitionSource, serverConfig);\n await providers.data.definitions.setVersionSchema(solveCtx, versionId, schema);\n } catch (err) {\n console.warn(`[API/Compute] Schema backfill failed for version ${versionId}:`, err);\n }\n }\n const { scheduler } = await getClient(serverConfig);\n let solvedDefinition;\n try {\n solvedDefinition = await scheduler.solve(definitionSource, inputTree, {\n signal: request.signal\n });\n } catch (err) {\n if (err instanceof Error && err.name === \"AbortError\") {\n if (request.signal.aborted) {\n throw error(499, \"Client closed request\");\n }\n throw error(\n 504,\n `Solve exceeded the ${Math.round(MAX_SOLVE_DURATION_MS / 1e3)}s deadline.`\n );\n }\n throw err;\n }\n return json(solvedDefinition);\n } catch (err) {\n if (isHttpError(err)) throw err;\n const message = err instanceof Error ? err.message : \"Unknown error\";\n console.error(\"[API/Compute] Error:\", message);\n if (err instanceof TypeError && message === \"fetch failed\") {\n throw error(503, \"Compute server is unreachable\");\n }\n throw error(500, message);\n }\n};\nexport {\n POST\n};\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"_server.ts-Dw630Jb2.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/definitions/_guid_/_server.ts.js"],"sourcesContent":["import { error, json } from \"@sveltejs/kit\";\nimport { a as definitionService, n as getProjectProvider } from \"../../../../../chunks/providers.server.js\";\nimport { t as requireEditableDefinition } from \"../../../../../chunks/access.server.js\";\nimport { h as handleApiError, f as fetchSchemaFromCompute, t as throwZodError } from \"../../../../../chunks/api-errors.js\";\nimport { G as GH_EXTENSIONS } from \"../../../../../chunks/types.js\";\nimport { G as GuidSchema, U as UpdateMetadataInputSchema } from \"../../../../../chunks/context.js\";\nimport { M as MAX_GH_FILE_SIZE } from \"../../../../../chunks/computeLimits.js\";\nimport { r as resolveServerForOrg } from \"../../../../../chunks/resolve.server.js\";\nconst POST = async ({ params, request, locals }) => {\n const guidParsed = GuidSchema.safeParse(params.guid);\n if (!guidParsed.success) throw error(400, \"Invalid or missing GUID\");\n const formData = await request.formData();\n const file = formData.get(\"file\");\n if (!(file instanceof File)) throw error(400, \"A Grasshopper (.gh or .ghx) file is required\");\n const changeNoteRaw = formData.get(\"changeNote\");\n const changeNote = typeof changeNoteRaw === \"string\" ? changeNoteRaw.slice(0, 1e3) : void 0;\n const ext = file.name.slice(file.name.lastIndexOf(\".\")).toLowerCase();\n if (!GH_EXTENSIONS.includes(ext)) {\n throw error(400, `File type not allowed. Allowed: ${GH_EXTENSIONS.join(\", \")}`);\n }\n if (file.size > MAX_GH_FILE_SIZE) {\n throw error(400, `File too large. Max size: ${MAX_GH_FILE_SIZE / (1024 * 1024)} MB`);\n }\n const { ctx, record } = await requireEditableDefinition(locals, guidParsed.data);\n const fileExt = ext.slice(1);\n try {\n const data = new Uint8Array(await file.arrayBuffer());\n const project = await getProjectProvider().getProject(ctx, record.projectId);\n const server = await resolveServerForOrg(ctx, project?.orgId ?? null, {\n definitionPin: record.computeServerId ?? null\n });\n const schema = await fetchSchemaFromCompute(data, server);\n const version = await definitionService.uploadVersion(\n ctx,\n guidParsed.data,\n data,\n fileExt,\n file.name,\n schema,\n changeNote\n );\n return json({ success: true, version });\n } catch (err) {\n handleApiError(err, \"Failed to upload definition version\");\n }\n};\nconst DELETE = async ({ params, locals }) => {\n const guidParsed = GuidSchema.safeParse(params.guid);\n if (!guidParsed.success) throw error(400, \"Invalid or missing GUID\");\n const { ctx } = await requireEditableDefinition(locals, guidParsed.data);\n try {\n await definitionService.delete(ctx, guidParsed.data);\n return json({ success: true });\n } catch (err) {\n handleApiError(err, \"Failed to delete definition\");\n }\n};\nconst PUT = async ({ params, request, locals }) => {\n const guidParsed = GuidSchema.safeParse(params.guid);\n if (!guidParsed.success) throw error(400, \"Invalid or missing GUID\");\n const { ctx } = await requireEditableDefinition(locals, guidParsed.data);\n const body = await request.json().catch(() => null);\n const parsed = UpdateMetadataInputSchema.safeParse(body);\n if (!parsed.success) throwZodError(parsed.error);\n try {\n await definitionService.updateMeta(ctx, guidParsed.data, parsed.data);\n return json({ success: true });\n } catch (err) {\n handleApiError(err, \"Failed to update definition\");\n }\n};\nexport {\n DELETE,\n POST,\n PUT\n};\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"api-errors-b2AR_m1A.js","sources":["../../../.svelte-kit/adapter-node/chunks/api-errors.js"],"sourcesContent":["import { error } from \"@sveltejs/kit\";\nimport \"./context.js\";\nimport { P as ProviderError } from \"./providers.server.js\";\nimport { camelcaseKeys } from \"@selvajs/compute/core\";\nclass SchemaExtractionError extends Error {\n constructor(kind, message) {\n super(message);\n this.kind = kind;\n this.name = \"SchemaExtractionError\";\n }\n kind;\n}\nasync function fetchSchemaFromCompute(definitionBytes, server) {\n const schemaUrl = new URL(\"/grasshopper/schema\", server.serverUrl).toString();\n const formData = new FormData();\n const blob = new Blob([new Uint8Array(definitionBytes)], { type: \"application/octet-stream\" });\n formData.append(\"file\", blob, \"definition.gh\");\n const headers = {};\n if (server.apiKey) {\n headers[\"RhinoComputeKey\"] = server.apiKey;\n }\n let response;\n try {\n response = await fetch(schemaUrl, { method: \"POST\", headers, body: formData });\n } catch (err) {\n throw new SchemaExtractionError(\n \"unreachable\",\n `Compute server is unreachable: ${err instanceof Error ? err.message : String(err)}`\n );\n }\n if (!response.ok) {\n throw new SchemaExtractionError(\n \"unreachable\",\n `Schema endpoint returned ${response.status}: ${response.statusText}`\n );\n }\n const raw = await response.json();\n const results = camelcaseKeys(Array.isArray(raw) ? raw : [raw]);\n const schemas = results.flatMap((r) => r.schemas ?? []);\n if (schemas.length === 0) {\n throw new SchemaExtractionError(\n \"invalid\",\n 'No schemas found in definition.\\n\\nIn Grasshopper, verify a Context Bake component with the output name \"Schema\" is present and wired to the solver.'\n );\n }\n return schemas[0];\n}\nfunction isSvelteKitError(err) {\n return !!err && typeof err === \"object\" && \"status\" in err && \"body\" in err;\n}\nconst UNIQUE_CONSTRAINT_MESSAGES = {\n projects_org_name_unique: \"A project with that name already exists in this organization.\",\n projects_org_id_slug_key: \"A project with that name already exists in this organization.\",\n orgs_slug_key: \"An organization with that slug already exists.\",\n definitions_pkey: \"A definition with that ID already exists.\"\n};\nfunction friendlyConstraintMessage(raw) {\n for (const [name, msg] of Object.entries(UNIQUE_CONSTRAINT_MESSAGES)) {\n if (raw.includes(name)) return msg;\n }\n return null;\n}\nfunction handleApiError(err, fallback) {\n if (isSvelteKitError(err)) throw err;\n if (err instanceof SchemaExtractionError) {\n throw error(err.kind === \"unreachable\" ? 503 : 422, err.message);\n }\n if (err instanceof ProviderError) {\n const friendly = friendlyConstraintMessage(err.message);\n throw error(err.statusCode, friendly ?? err.message);\n }\n console.error(`[API] ${fallback}:`, err);\n throw error(500, fallback);\n}\nfunction throwZodError(err) {\n const issue = err.issues[0];\n const path = issue.path.length ? `${issue.path.join(\".\")}: ` : \"\";\n throw error(400, `${path}${issue.message}`);\n}\nexport {\n fetchSchemaFromCompute as f,\n handleApiError as h,\n throwZodError as t\n};\n"],"names":[],"mappings":"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"}
@@ -1,11 +0,0 @@
1
- import './context-DKDYb-He.js';
2
- import { r as resolveServerForOrg$1 } from './utils2-D38XWwRv.js';
3
- import { e as getComputeServerConfigStore } from './providers.server-MD7TK-zQ.js';
4
-
5
- async function resolveServerForOrg(ctx, orgId, opts = {}) {
6
- const config = await getComputeServerConfigStore().getConfig(ctx);
7
- return resolveServerForOrg$1(config, orgId, { definitionPin: opts.definitionPin });
8
- }
9
-
10
- export { resolveServerForOrg as r };
11
- //# sourceMappingURL=resolve.server-C5wZnxS_.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"resolve.server-C5wZnxS_.js","sources":["../../../.svelte-kit/adapter-node/chunks/resolve.server.js"],"sourcesContent":["import \"./context.js\";\nimport { r as resolveServerForOrg$1 } from \"./utils2.js\";\nimport { e as getComputeServerConfigStore } from \"./providers.server.js\";\nasync function resolveServerForOrg(ctx, orgId, opts = {}) {\n const config = await getComputeServerConfigStore().getConfig(ctx);\n return resolveServerForOrg$1(config, orgId, { definitionPin: opts.definitionPin });\n}\nexport {\n resolveServerForOrg as r\n};\n"],"names":[],"mappings":";;;;AAGA,eAAe,mBAAmB,CAAC,GAAG,EAAE,KAAK,EAAE,IAAI,GAAG,EAAE,EAAE;AAC1D,EAAE,MAAM,MAAM,GAAG,MAAM,2BAA2B,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC;AACnE,EAAE,OAAO,qBAAqB,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC;AACpF;;;;"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"resolve.server2-BXKCfGfg.js","sources":["../../../.svelte-kit/adapter-node/chunks/resolve.server2.js"],"sourcesContent":["import { error } from \"@sveltejs/kit\";\nimport { S as SYSTEM_CONTEXT } from \"./context.js\";\nimport { s as providers, i as getDefinitionMeta, n as getProjectProvider, f as flag } from \"./providers.server.js\";\nimport { h as hashToken, l as looksLikeShareToken } from \"./token.server.js\";\nfunction readShareToken(request, url) {\n if (!flag(\"ENABLE_SHARING\")) return null;\n const q = url.searchParams.get(\"token\");\n if (q && looksLikeShareToken(q)) return q;\n const auth = request.headers.get(\"authorization\");\n if (auth?.startsWith(\"Bearer \")) {\n const candidate = auth.slice(\"Bearer \".length).trim();\n if (looksLikeShareToken(candidate)) return candidate;\n }\n return null;\n}\nasync function tryResolveShareToken(request, url, requestedDefinitionId, requestedChannel, opts) {\n const raw = readShareToken(request, url);\n if (!raw) return null;\n const tokenHash = hashToken(raw);\n const link = await providers.data.shareLinks.getByTokenHash(SYSTEM_CONTEXT, tokenHash);\n if (!link) throw error(401, \"Invalid or revoked share token.\");\n if (link.expiresAt && new Date(link.expiresAt).getTime() <= Date.now()) {\n throw error(401, \"Share token has expired.\");\n }\n if (link.definitionId !== requestedDefinitionId) {\n throw error(403, \"Share token is not valid for this definition.\");\n }\n if (link.channel !== requestedChannel) {\n throw error(403, `Share token is for the '${link.channel}' channel only.`);\n }\n if (opts.requireSolve && !link.allowSolve) {\n throw error(403, \"Share token grants view-only access.\");\n }\n const def = await getDefinitionMeta().get(SYSTEM_CONTEXT, link.definitionId);\n if (!def) throw error(401, \"Share token target no longer exists.\");\n const project = await getProjectProvider().getProject(SYSTEM_CONTEXT, def.projectId);\n if (!project) throw error(401, \"Share token target no longer exists.\");\n const ctx = {\n userId: \"\",\n actingOrgId: project.orgId,\n platformPermissions: [],\n orgPermissions: [],\n system: true\n };\n return { link, ctx };\n}\nexport {\n tryResolveShareToken as t\n};\n"],"names":[],"mappings":";;;;;AAIA,SAAS,cAAc,CAAC,OAAO,EAAE,GAAG,EAAE;AACtC,EAAE,IAAI,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,OAAO,IAAI;AAC1C,EAAE,MAAM,CAAC,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC;AACzC,EAAE,IAAI,CAAC,IAAI,mBAAmB,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC;AAC3C,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC;AACnD,EAAE,IAAI,IAAI,EAAE,UAAU,CAAC,SAAS,CAAC,EAAE;AACnC,IAAI,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE;AACzD,IAAI,IAAI,mBAAmB,CAAC,SAAS,CAAC,EAAE,OAAO,SAAS;AACxD,EAAE;AACF,EAAE,OAAO,IAAI;AACb;AACA,eAAe,oBAAoB,CAAC,OAAO,EAAE,GAAG,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,IAAI,EAAE;AACjG,EAAE,MAAM,GAAG,GAAG,cAAc,CAAC,OAAO,EAAE,GAAG,CAAC;AAC1C,EAAE,IAAI,CAAC,GAAG,EAAE,OAAO,IAAI;AACvB,EAAE,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC;AAClC,EAAE,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,cAAc,EAAE,SAAS,CAAC;AACxF,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,iCAAiC,CAAC;AAChE,EAAE,IAAI,IAAI,CAAC,SAAS,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,EAAE;AAC1E,IAAI,MAAM,KAAK,CAAC,GAAG,EAAE,0BAA0B,CAAC;AAChD,EAAE;AACF,EAAE,IAAI,IAAI,CAAC,YAAY,KAAK,qBAAqB,EAAE;AACnD,IAAI,MAAM,KAAK,CAAC,GAAG,EAAE,+CAA+C,CAAC;AACrE,EAAE;AACF,EAAE,IAAI,IAAI,CAAC,OAAO,KAAK,gBAAgB,EAAE;AACzC,IAAI,MAAM,KAAK,CAAC,GAAG,EAAE,CAAC,wBAAwB,EAAE,IAAI,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;AAC9E,EAAE;AACF,EAAE,IAAI,IAAI,CAAC,YAAY,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;AAC7C,IAAI,MAAM,KAAK,CAAC,GAAG,EAAE,sCAAsC,CAAC;AAC5D,EAAE;AACF,EAAE,MAAM,GAAG,GAAG,MAAM,iBAAiB,EAAE,CAAC,GAAG,CAAC,cAAc,EAAE,IAAI,CAAC,YAAY,CAAC;AAC9E,EAAE,IAAI,CAAC,GAAG,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,sCAAsC,CAAC;AACpE,EAAE,MAAM,OAAO,GAAG,MAAM,kBAAkB,EAAE,CAAC,UAAU,CAAC,cAAc,EAAE,GAAG,CAAC,SAAS,CAAC;AACtF,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,KAAK,CAAC,GAAG,EAAE,sCAAsC,CAAC;AACxE,EAAE,MAAM,GAAG,GAAG;AACd,IAAI,MAAM,EAAE,EAAE;AACd,IAAI,WAAW,EAAE,OAAO,CAAC,KAAK;AAC9B,IAAI,mBAAmB,EAAE,EAAE;AAC3B,IAAI,cAAc,EAAE,EAAE;AACtB,IAAI,MAAM,EAAE;AACZ,GAAG;AACH,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE;AACtB;;;;"}