@selvajs/selva 4.6.15 → 4.6.17

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 (260) hide show
  1. package/build/client/_app/immutable/chunks/{oqf_LH-v.js → BOnmqX01.js} +1 -1
  2. package/build/client/_app/immutable/chunks/BOnmqX01.js.br +0 -0
  3. package/build/client/_app/immutable/chunks/BOnmqX01.js.gz +0 -0
  4. package/build/client/_app/immutable/chunks/{DTrFhc7R.js → BY3o31MW.js} +1 -1
  5. package/build/client/_app/immutable/chunks/BY3o31MW.js.br +0 -0
  6. package/build/client/_app/immutable/chunks/BY3o31MW.js.gz +0 -0
  7. package/build/client/_app/immutable/chunks/{DCPwh0Sl.js → CbNz9-CM.js} +1 -1
  8. package/build/client/_app/immutable/chunks/CbNz9-CM.js.br +0 -0
  9. package/build/client/_app/immutable/chunks/CbNz9-CM.js.gz +0 -0
  10. package/build/client/_app/immutable/chunks/D1oEfDeA.js +1 -0
  11. package/build/client/_app/immutable/chunks/D1oEfDeA.js.br +0 -0
  12. package/build/client/_app/immutable/chunks/D1oEfDeA.js.gz +0 -0
  13. package/build/client/_app/immutable/chunks/{C-RRhi6_.js → Pte7A6Om.js} +1 -1
  14. package/build/client/_app/immutable/chunks/Pte7A6Om.js.br +0 -0
  15. package/build/client/_app/immutable/chunks/Pte7A6Om.js.gz +0 -0
  16. package/build/client/_app/immutable/chunks/{DYV9R36t.js → _i811ba7.js} +1 -1
  17. package/build/client/_app/immutable/chunks/_i811ba7.js.br +0 -0
  18. package/build/client/_app/immutable/chunks/_i811ba7.js.gz +0 -0
  19. package/build/client/_app/immutable/chunks/pQhmY_wH.js +1 -0
  20. package/build/client/_app/immutable/chunks/pQhmY_wH.js.br +0 -0
  21. package/build/client/_app/immutable/chunks/pQhmY_wH.js.gz +0 -0
  22. package/build/client/_app/immutable/chunks/{C69G1Ui7.js → rfOa0BQR.js} +1 -1
  23. package/build/client/_app/immutable/chunks/rfOa0BQR.js.br +0 -0
  24. package/build/client/_app/immutable/chunks/rfOa0BQR.js.gz +0 -0
  25. package/build/client/_app/immutable/entry/app.D9cDSDOn.js +2 -0
  26. package/build/client/_app/immutable/entry/app.D9cDSDOn.js.br +0 -0
  27. package/build/client/_app/immutable/entry/app.D9cDSDOn.js.gz +0 -0
  28. package/build/client/_app/immutable/entry/start.PySZ-94o.js +1 -0
  29. package/build/client/_app/immutable/entry/start.PySZ-94o.js.br +2 -0
  30. package/build/client/_app/immutable/entry/start.PySZ-94o.js.gz +0 -0
  31. package/build/client/_app/immutable/nodes/{1.Ca1sYC3C.js → 1.CZ6ti3QK.js} +1 -1
  32. package/build/client/_app/immutable/nodes/1.CZ6ti3QK.js.br +0 -0
  33. package/build/client/_app/immutable/nodes/1.CZ6ti3QK.js.gz +0 -0
  34. package/build/client/_app/immutable/nodes/{11.Dtd9aDLb.js → 11.C_GwV9Bj.js} +1 -1
  35. package/build/client/_app/immutable/nodes/11.C_GwV9Bj.js.br +0 -0
  36. package/build/client/_app/immutable/nodes/11.C_GwV9Bj.js.gz +0 -0
  37. package/build/client/_app/immutable/nodes/{13.CHN0kFwG.js → 13.B6HunFXY.js} +1 -1
  38. package/build/client/_app/immutable/nodes/13.B6HunFXY.js.br +0 -0
  39. package/build/client/_app/immutable/nodes/13.B6HunFXY.js.gz +0 -0
  40. package/build/client/_app/immutable/nodes/{14.DJxstHXG.js → 14.CApA_dlI.js} +1 -1
  41. package/build/client/_app/immutable/nodes/14.CApA_dlI.js.br +0 -0
  42. package/build/client/_app/immutable/nodes/14.CApA_dlI.js.gz +0 -0
  43. package/build/client/_app/immutable/nodes/15.HPNMduTX.js +21 -0
  44. package/build/client/_app/immutable/nodes/15.HPNMduTX.js.br +0 -0
  45. package/build/client/_app/immutable/nodes/15.HPNMduTX.js.gz +0 -0
  46. package/build/client/_app/immutable/nodes/{16.C_zI4n1Y.js → 16.SCUiwN43.js} +1 -1
  47. package/build/client/_app/immutable/nodes/16.SCUiwN43.js.br +0 -0
  48. package/build/client/_app/immutable/nodes/16.SCUiwN43.js.gz +0 -0
  49. package/build/client/_app/immutable/nodes/{17.B4XlUJIc.js → 17.DjaXtpMT.js} +1 -1
  50. package/build/client/_app/immutable/nodes/17.DjaXtpMT.js.br +0 -0
  51. package/build/client/_app/immutable/nodes/17.DjaXtpMT.js.gz +0 -0
  52. package/build/client/_app/immutable/nodes/{19.6SrCZ74e.js → 19.CN2i4AVz.js} +1 -1
  53. package/build/client/_app/immutable/nodes/19.CN2i4AVz.js.br +0 -0
  54. package/build/client/_app/immutable/nodes/19.CN2i4AVz.js.gz +0 -0
  55. package/build/client/_app/immutable/nodes/2.CprEjS64.js +1 -0
  56. package/build/client/_app/immutable/nodes/2.CprEjS64.js.br +0 -0
  57. package/build/client/_app/immutable/nodes/2.CprEjS64.js.gz +0 -0
  58. package/build/client/_app/immutable/nodes/20.pVjIXbFX.js +5021 -0
  59. package/build/client/_app/immutable/nodes/20.pVjIXbFX.js.br +0 -0
  60. package/build/client/_app/immutable/nodes/20.pVjIXbFX.js.gz +0 -0
  61. package/build/client/_app/immutable/nodes/{21.DJmF3TtF.js → 21.C_4vpZgh.js} +1 -1
  62. package/build/client/_app/immutable/nodes/21.C_4vpZgh.js.br +0 -0
  63. package/build/client/_app/immutable/nodes/21.C_4vpZgh.js.gz +0 -0
  64. package/build/client/_app/immutable/nodes/{23.Dw4lRr8X.js → 23.oeDvNaab.js} +1 -1
  65. package/build/client/_app/immutable/nodes/23.oeDvNaab.js.br +0 -0
  66. package/build/client/_app/immutable/nodes/23.oeDvNaab.js.gz +0 -0
  67. package/build/client/_app/immutable/nodes/{24.Cd-IaEah.js → 24.C4jPz0M0.js} +1 -1
  68. package/build/client/_app/immutable/nodes/24.C4jPz0M0.js.br +0 -0
  69. package/build/client/_app/immutable/nodes/24.C4jPz0M0.js.gz +0 -0
  70. package/build/client/_app/immutable/nodes/{27.BAA2sVK2.js → 27.Bjv06_yW.js} +1 -1
  71. package/build/client/_app/immutable/nodes/27.Bjv06_yW.js.br +0 -0
  72. package/build/client/_app/immutable/nodes/27.Bjv06_yW.js.gz +0 -0
  73. package/build/client/_app/immutable/nodes/{28.DN_eYRvY.js → 28.C5NQCChS.js} +1 -1
  74. package/build/client/_app/immutable/nodes/28.C5NQCChS.js.br +0 -0
  75. package/build/client/_app/immutable/nodes/28.C5NQCChS.js.gz +0 -0
  76. package/build/client/_app/immutable/nodes/{29.QCrqwmGF.js → 29.D7jOFlYP.js} +1 -1
  77. package/build/client/_app/immutable/nodes/29.D7jOFlYP.js.br +0 -0
  78. package/build/client/_app/immutable/nodes/29.D7jOFlYP.js.gz +0 -0
  79. package/build/client/_app/immutable/nodes/{3.C0x2C-jb.js → 3.BsAOhKfW.js} +1 -1
  80. package/build/client/_app/immutable/nodes/3.BsAOhKfW.js.br +0 -0
  81. package/build/client/_app/immutable/nodes/3.BsAOhKfW.js.gz +0 -0
  82. package/build/client/_app/immutable/nodes/{30.UDcwdvQt.js → 30.fXdhn2fS.js} +1 -1
  83. package/build/client/_app/immutable/nodes/30.fXdhn2fS.js.br +0 -0
  84. package/build/client/_app/immutable/nodes/30.fXdhn2fS.js.gz +0 -0
  85. package/build/client/_app/immutable/nodes/{5.BBP7zQci.js → 5.B1gLU4nT.js} +1 -1
  86. package/build/client/_app/immutable/nodes/5.B1gLU4nT.js.br +0 -0
  87. package/build/client/_app/immutable/nodes/5.B1gLU4nT.js.gz +0 -0
  88. package/build/client/_app/immutable/nodes/6.gBHoQstg.js +1 -0
  89. package/build/client/_app/immutable/nodes/6.gBHoQstg.js.br +0 -0
  90. package/build/client/_app/immutable/nodes/6.gBHoQstg.js.gz +0 -0
  91. package/build/client/_app/immutable/nodes/{7.Ly5yW6DM.js → 7.D8R5mnRo.js} +1 -1
  92. package/build/client/_app/immutable/nodes/7.D8R5mnRo.js.br +0 -0
  93. package/build/client/_app/immutable/nodes/7.D8R5mnRo.js.gz +0 -0
  94. package/build/client/_app/immutable/nodes/{8.BAHPwBRu.js → 8.xxszvZmC.js} +1 -1
  95. package/build/client/_app/immutable/nodes/8.xxszvZmC.js.br +0 -0
  96. package/build/client/_app/immutable/nodes/8.xxszvZmC.js.gz +0 -0
  97. package/build/client/_app/immutable/nodes/{9.BC3ZvZFD.js → 9.BZTQg6F_.js} +1 -1
  98. package/build/client/_app/immutable/nodes/9.BZTQg6F_.js.br +0 -0
  99. package/build/client/_app/immutable/nodes/9.BZTQg6F_.js.gz +0 -0
  100. package/build/client/_app/version.json +1 -1
  101. package/build/client/_app/version.json.br +0 -0
  102. package/build/client/_app/version.json.gz +0 -0
  103. package/build/client/baseHDR.hdr +0 -0
  104. package/build/handler.js +4 -4
  105. package/build/index.js +4 -4
  106. package/build/server/chunks/chunks/{SideNav.js-DmUkKbIq.js → SideNav.js-l2ERmV1U.js} +7 -16
  107. package/build/server/chunks/chunks/SideNav.js-l2ERmV1U.js.map +1 -0
  108. package/build/server/chunks/chunks/gauge.js-DMUtJJht.js +14 -0
  109. package/build/server/chunks/chunks/gauge.js-DMUtJJht.js.map +1 -0
  110. package/build/server/chunks/chunks/{internal.js-DkuT_d5I.js → internal.js-DUldHjE3.js} +3 -3
  111. package/build/server/chunks/chunks/internal.js-DUldHjE3.js.map +1 -0
  112. package/build/server/chunks/chunks/{package.js-yeb4qDIe.js → package.js-FSG5sWFK.js} +2 -2
  113. package/build/server/chunks/chunks/{package.js-yeb4qDIe.js.map → package.js-FSG5sWFK.js.map} +1 -1
  114. package/build/server/chunks/entries/endpoints/admin/api/system/throughput/_server.ts.js-CQZiKJH5.js +79 -0
  115. package/build/server/chunks/entries/endpoints/admin/api/system/throughput/_server.ts.js-CQZiKJH5.js.map +1 -0
  116. package/build/server/chunks/entries/endpoints/api/compute/{_server.ts.js-k5YwUAVY.js → _server.ts.js-Ct_7OEVp.js} +14 -3
  117. package/build/server/chunks/entries/endpoints/api/compute/_server.ts.js-Ct_7OEVp.js.map +1 -0
  118. package/build/server/chunks/entries/pages/admin/{_layout.svelte.js-BQTc-1yu.js → _layout.svelte.js-Mz-UsIAn.js} +3 -2
  119. package/build/server/chunks/entries/pages/admin/_layout.svelte.js-Mz-UsIAn.js.map +1 -0
  120. package/build/server/chunks/entries/pages/admin/{_page.server.ts.js-BsxiR6Xk.js → _page.server.ts.js-COIP__Oi.js} +2 -2
  121. package/build/server/chunks/entries/pages/admin/{_page.server.ts.js-BsxiR6Xk.js.map → _page.server.ts.js-COIP__Oi.js.map} +1 -1
  122. package/build/server/chunks/entries/pages/admin/system/{_page.server.ts.js-Xx9P6Uvj.js → _page.server.ts.js-BQ7XQXcR.js} +2 -2
  123. package/build/server/chunks/entries/pages/admin/system/{_page.server.ts.js-Xx9P6Uvj.js.map → _page.server.ts.js-BQ7XQXcR.js.map} +1 -1
  124. package/build/server/chunks/entries/pages/admin/system/{_page.svelte.js-DCVW0G-O.js → _page.svelte.js-CC2H0IO4.js} +246 -1
  125. package/build/server/chunks/entries/pages/admin/system/_page.svelte.js-CC2H0IO4.js.map +1 -0
  126. package/build/server/chunks/entries/pages/team/{_layout.svelte.js-fvMFVC5K.js → _layout.svelte.js-DVIHJU_l.js} +3 -2
  127. package/build/server/chunks/entries/pages/team/_layout.svelte.js-DVIHJU_l.js.map +1 -0
  128. package/build/server/chunks/{handler-1NYOIHhX.js → handler-8WbYsqTN.js} +3 -3
  129. package/build/server/chunks/{handler-1NYOIHhX.js.map → handler-8WbYsqTN.js.map} +1 -1
  130. package/build/server/chunks/{index.js-CbjK2lE2.js → index.js-DQiiVGnK.js} +2 -2
  131. package/build/server/chunks/{index.js-CbjK2lE2.js.map → index.js-DQiiVGnK.js.map} +1 -1
  132. package/build/server/chunks/{manifest.js-_hNVc-0C.js → manifest.js-4bS33Rny.js} +33 -26
  133. package/build/server/chunks/manifest.js-4bS33Rny.js.map +1 -0
  134. package/build/server/chunks/nodes/{1.js-1Ri1QQ5e.js → 1.js-BRkGtLuf.js} +2 -2
  135. package/build/server/chunks/nodes/{1.js-1Ri1QQ5e.js.map → 1.js-BRkGtLuf.js.map} +1 -1
  136. package/build/server/chunks/nodes/{11.js-CJ2UgNcS.js → 11.js-Cd5i4qnV.js} +2 -2
  137. package/build/server/chunks/nodes/{11.js-CJ2UgNcS.js.map → 11.js-Cd5i4qnV.js.map} +1 -1
  138. package/build/server/chunks/nodes/{13.js-w4iHL7Ns.js → 13.js-tStcvtm0.js} +2 -2
  139. package/build/server/chunks/nodes/{13.js-w4iHL7Ns.js.map → 13.js-tStcvtm0.js.map} +1 -1
  140. package/build/server/chunks/nodes/{14.js-DsEg-nSq.js → 14.js-BTua6A4z.js} +2 -2
  141. package/build/server/chunks/nodes/{14.js-DsEg-nSq.js.map → 14.js-BTua6A4z.js.map} +1 -1
  142. package/build/server/chunks/nodes/{15.js-Dt3HH0o5.js → 15.js-DbGAIzD7.js} +5 -5
  143. package/build/server/chunks/nodes/{15.js-Dt3HH0o5.js.map → 15.js-DbGAIzD7.js.map} +1 -1
  144. package/build/server/chunks/nodes/{16.js-DPOmq-GH.js → 16.js-CpyZ3DN9.js} +2 -2
  145. package/build/server/chunks/nodes/{16.js-DPOmq-GH.js.map → 16.js-CpyZ3DN9.js.map} +1 -1
  146. package/build/server/chunks/nodes/{17.js-BAZmN1Wj.js → 17.js-DdufYTa7.js} +2 -2
  147. package/build/server/chunks/nodes/{17.js-BAZmN1Wj.js.map → 17.js-DdufYTa7.js.map} +1 -1
  148. package/build/server/chunks/nodes/{19.js--iL0YMZH.js → 19.js-BjYa0tRp.js} +2 -2
  149. package/build/server/chunks/nodes/{19.js--iL0YMZH.js.map → 19.js-BjYa0tRp.js.map} +1 -1
  150. package/build/server/chunks/nodes/{2.js-BavOW1Ty.js → 2.js-BpaTME37.js} +3 -3
  151. package/build/server/chunks/nodes/2.js-BpaTME37.js.map +1 -0
  152. package/build/server/chunks/nodes/{20.js-QkKGfVf5.js → 20.js-0s-R-Oe5.js} +2 -2
  153. package/build/server/chunks/nodes/{20.js-QkKGfVf5.js.map → 20.js-0s-R-Oe5.js.map} +1 -1
  154. package/build/server/chunks/nodes/{21.js-CldsrpnP.js → 21.js-redDeL3V.js} +2 -2
  155. package/build/server/chunks/nodes/{21.js-CldsrpnP.js.map → 21.js-redDeL3V.js.map} +1 -1
  156. package/build/server/chunks/nodes/{23.js-BYyPhyHQ.js → 23.js-BtuPZz_g.js} +2 -2
  157. package/build/server/chunks/nodes/{23.js-BYyPhyHQ.js.map → 23.js-BtuPZz_g.js.map} +1 -1
  158. package/build/server/chunks/nodes/{24.js-B6xS5DOZ.js → 24.js-BKoTscF1.js} +2 -2
  159. package/build/server/chunks/nodes/{24.js-B6xS5DOZ.js.map → 24.js-BKoTscF1.js.map} +1 -1
  160. package/build/server/chunks/nodes/{27.js-DZzXM46i.js → 27.js-DKlcY_J1.js} +2 -2
  161. package/build/server/chunks/nodes/{27.js-DZzXM46i.js.map → 27.js-DKlcY_J1.js.map} +1 -1
  162. package/build/server/chunks/nodes/{28.js-D6YUO3v3.js → 28.js-BnSQFmRX.js} +2 -2
  163. package/build/server/chunks/nodes/{28.js-D6YUO3v3.js.map → 28.js-BnSQFmRX.js.map} +1 -1
  164. package/build/server/chunks/nodes/{29.js-mkblzNBv.js → 29.js-B_bPY-3I.js} +2 -2
  165. package/build/server/chunks/nodes/{29.js-mkblzNBv.js.map → 29.js-B_bPY-3I.js.map} +1 -1
  166. package/build/server/chunks/nodes/{3.js-GYQewbn5.js → 3.js-B_nXNZOS.js} +2 -2
  167. package/build/server/chunks/nodes/{3.js-GYQewbn5.js.map → 3.js-B_nXNZOS.js.map} +1 -1
  168. package/build/server/chunks/nodes/{30.js-Yqtj7Tev.js → 30.js-B4h8tS3c.js} +2 -2
  169. package/build/server/chunks/nodes/{30.js-Yqtj7Tev.js.map → 30.js-B4h8tS3c.js.map} +1 -1
  170. package/build/server/chunks/nodes/{5.js-Bu62ZxpK.js → 5.js-CBQKVVJP.js} +2 -2
  171. package/build/server/chunks/nodes/{5.js-Bu62ZxpK.js.map → 5.js-CBQKVVJP.js.map} +1 -1
  172. package/build/server/chunks/nodes/{6.js-4SsBZkGN.js → 6.js-DMRDoUK2.js} +3 -3
  173. package/build/server/chunks/nodes/6.js-DMRDoUK2.js.map +1 -0
  174. package/build/server/chunks/nodes/{7.js-0oliwifX.js → 7.js-BLtxA4EF.js} +2 -2
  175. package/build/server/chunks/nodes/{7.js-0oliwifX.js.map → 7.js-BLtxA4EF.js.map} +1 -1
  176. package/build/server/chunks/nodes/{8.js-yF4cRhKO.js → 8.js-xTfoLU7r.js} +2 -2
  177. package/build/server/chunks/nodes/{8.js-yF4cRhKO.js.map → 8.js-xTfoLU7r.js.map} +1 -1
  178. package/build/server/chunks/nodes/{9.js-DQrK6yQF.js → 9.js-DH7S4_91.js} +4 -4
  179. package/build/server/chunks/nodes/{9.js-DQrK6yQF.js.map → 9.js-DH7S4_91.js.map} +1 -1
  180. package/package.json +2 -2
  181. package/build/client/_app/immutable/chunks/0gTfzWiE.js +0 -1
  182. package/build/client/_app/immutable/chunks/0gTfzWiE.js.br +0 -0
  183. package/build/client/_app/immutable/chunks/0gTfzWiE.js.gz +0 -0
  184. package/build/client/_app/immutable/chunks/C-RRhi6_.js.br +0 -0
  185. package/build/client/_app/immutable/chunks/C-RRhi6_.js.gz +0 -0
  186. package/build/client/_app/immutable/chunks/C69G1Ui7.js.br +0 -0
  187. package/build/client/_app/immutable/chunks/C69G1Ui7.js.gz +0 -0
  188. package/build/client/_app/immutable/chunks/DCPwh0Sl.js.br +0 -0
  189. package/build/client/_app/immutable/chunks/DCPwh0Sl.js.gz +0 -0
  190. package/build/client/_app/immutable/chunks/DTrFhc7R.js.br +0 -0
  191. package/build/client/_app/immutable/chunks/DTrFhc7R.js.gz +0 -0
  192. package/build/client/_app/immutable/chunks/DYV9R36t.js.br +0 -0
  193. package/build/client/_app/immutable/chunks/DYV9R36t.js.gz +0 -0
  194. package/build/client/_app/immutable/chunks/oqf_LH-v.js.br +0 -0
  195. package/build/client/_app/immutable/chunks/oqf_LH-v.js.gz +0 -0
  196. package/build/client/_app/immutable/entry/app.xEM7RQ5g.js +0 -2
  197. package/build/client/_app/immutable/entry/app.xEM7RQ5g.js.br +0 -0
  198. package/build/client/_app/immutable/entry/app.xEM7RQ5g.js.gz +0 -0
  199. package/build/client/_app/immutable/entry/start.Dlwg0xzi.js +0 -1
  200. package/build/client/_app/immutable/entry/start.Dlwg0xzi.js.br +0 -2
  201. package/build/client/_app/immutable/entry/start.Dlwg0xzi.js.gz +0 -0
  202. package/build/client/_app/immutable/nodes/1.Ca1sYC3C.js.br +0 -0
  203. package/build/client/_app/immutable/nodes/1.Ca1sYC3C.js.gz +0 -0
  204. package/build/client/_app/immutable/nodes/11.Dtd9aDLb.js.br +0 -0
  205. package/build/client/_app/immutable/nodes/11.Dtd9aDLb.js.gz +0 -0
  206. package/build/client/_app/immutable/nodes/13.CHN0kFwG.js.br +0 -0
  207. package/build/client/_app/immutable/nodes/13.CHN0kFwG.js.gz +0 -0
  208. package/build/client/_app/immutable/nodes/14.DJxstHXG.js.br +0 -0
  209. package/build/client/_app/immutable/nodes/14.DJxstHXG.js.gz +0 -0
  210. package/build/client/_app/immutable/nodes/15.DF36Rx-D.js +0 -19
  211. package/build/client/_app/immutable/nodes/15.DF36Rx-D.js.br +0 -0
  212. package/build/client/_app/immutable/nodes/15.DF36Rx-D.js.gz +0 -0
  213. package/build/client/_app/immutable/nodes/16.C_zI4n1Y.js.br +0 -0
  214. package/build/client/_app/immutable/nodes/16.C_zI4n1Y.js.gz +0 -0
  215. package/build/client/_app/immutable/nodes/17.B4XlUJIc.js.br +0 -0
  216. package/build/client/_app/immutable/nodes/17.B4XlUJIc.js.gz +0 -0
  217. package/build/client/_app/immutable/nodes/19.6SrCZ74e.js.br +0 -0
  218. package/build/client/_app/immutable/nodes/19.6SrCZ74e.js.gz +0 -0
  219. package/build/client/_app/immutable/nodes/2.DTrVaRR9.js +0 -1
  220. package/build/client/_app/immutable/nodes/2.DTrVaRR9.js.br +0 -0
  221. package/build/client/_app/immutable/nodes/2.DTrVaRR9.js.gz +0 -0
  222. package/build/client/_app/immutable/nodes/20.ClWkj26y.js +0 -5021
  223. package/build/client/_app/immutable/nodes/20.ClWkj26y.js.br +0 -0
  224. package/build/client/_app/immutable/nodes/20.ClWkj26y.js.gz +0 -0
  225. package/build/client/_app/immutable/nodes/21.DJmF3TtF.js.br +0 -0
  226. package/build/client/_app/immutable/nodes/21.DJmF3TtF.js.gz +0 -0
  227. package/build/client/_app/immutable/nodes/23.Dw4lRr8X.js.br +0 -0
  228. package/build/client/_app/immutable/nodes/23.Dw4lRr8X.js.gz +0 -0
  229. package/build/client/_app/immutable/nodes/24.Cd-IaEah.js.br +0 -0
  230. package/build/client/_app/immutable/nodes/24.Cd-IaEah.js.gz +0 -0
  231. package/build/client/_app/immutable/nodes/27.BAA2sVK2.js.br +0 -0
  232. package/build/client/_app/immutable/nodes/27.BAA2sVK2.js.gz +0 -0
  233. package/build/client/_app/immutable/nodes/28.DN_eYRvY.js.br +0 -0
  234. package/build/client/_app/immutable/nodes/28.DN_eYRvY.js.gz +0 -0
  235. package/build/client/_app/immutable/nodes/29.QCrqwmGF.js.br +0 -0
  236. package/build/client/_app/immutable/nodes/29.QCrqwmGF.js.gz +0 -0
  237. package/build/client/_app/immutable/nodes/3.C0x2C-jb.js.br +0 -0
  238. package/build/client/_app/immutable/nodes/3.C0x2C-jb.js.gz +0 -0
  239. package/build/client/_app/immutable/nodes/30.UDcwdvQt.js.br +0 -0
  240. package/build/client/_app/immutable/nodes/30.UDcwdvQt.js.gz +0 -0
  241. package/build/client/_app/immutable/nodes/5.BBP7zQci.js.br +0 -0
  242. package/build/client/_app/immutable/nodes/5.BBP7zQci.js.gz +0 -0
  243. package/build/client/_app/immutable/nodes/6.D8jl9RMU.js +0 -1
  244. package/build/client/_app/immutable/nodes/6.D8jl9RMU.js.br +0 -0
  245. package/build/client/_app/immutable/nodes/6.D8jl9RMU.js.gz +0 -0
  246. package/build/client/_app/immutable/nodes/7.Ly5yW6DM.js.br +0 -0
  247. package/build/client/_app/immutable/nodes/7.Ly5yW6DM.js.gz +0 -0
  248. package/build/client/_app/immutable/nodes/8.BAHPwBRu.js.br +0 -0
  249. package/build/client/_app/immutable/nodes/8.BAHPwBRu.js.gz +0 -0
  250. package/build/client/_app/immutable/nodes/9.BC3ZvZFD.js.br +0 -0
  251. package/build/client/_app/immutable/nodes/9.BC3ZvZFD.js.gz +0 -0
  252. package/build/server/chunks/chunks/SideNav.js-DmUkKbIq.js.map +0 -1
  253. package/build/server/chunks/chunks/internal.js-DkuT_d5I.js.map +0 -1
  254. package/build/server/chunks/entries/endpoints/api/compute/_server.ts.js-k5YwUAVY.js.map +0 -1
  255. package/build/server/chunks/entries/pages/admin/_layout.svelte.js-BQTc-1yu.js.map +0 -1
  256. package/build/server/chunks/entries/pages/admin/system/_page.svelte.js-DCVW0G-O.js.map +0 -1
  257. package/build/server/chunks/entries/pages/team/_layout.svelte.js-fvMFVC5K.js.map +0 -1
  258. package/build/server/chunks/manifest.js-_hNVc-0C.js.map +0 -1
  259. package/build/server/chunks/nodes/2.js-BavOW1Ty.js.map +0 -1
  260. package/build/server/chunks/nodes/6.js-4SsBZkGN.js.map +0 -1
@@ -1 +1 @@
1
- {"version":"1783372473777"}
1
+ {"version":"1783412077798"}
Binary file
Binary file
Binary file
package/build/handler.js CHANGED
@@ -2,10 +2,10 @@ import './shims.js';
2
2
  import 'node:fs';
3
3
  import 'node:path';
4
4
  import 'node:process';
5
- export { h as handler } from './server/chunks/handler-1NYOIHhX.js';
5
+ export { h as handler } from './server/chunks/handler-8WbYsqTN.js';
6
6
  import '@sveltejs/kit/node';
7
- import './server/chunks/index.js-CbjK2lE2.js';
8
- import './server/chunks/manifest.js-_hNVc-0C.js';
7
+ import './server/chunks/index.js-DQiiVGnK.js';
8
+ import './server/chunks/manifest.js-4bS33Rny.js';
9
9
  import './env.js';
10
10
  import '@sveltejs/kit/node/polyfills';
11
11
  import 'node:http';
@@ -24,7 +24,7 @@ import './server/chunks/chunks/exports.js-BZBK1HC9.js';
24
24
  import './server/chunks/chunks/index.js-CC8M6P-h.js';
25
25
  import './server/chunks/chunks/renderer.js-CtAppMtw.js';
26
26
  import './server/chunks/chunks/shared-server.js-DaWdgxVh.js';
27
- import './server/chunks/chunks/internal.js-DkuT_d5I.js';
27
+ import './server/chunks/chunks/internal.js-DUldHjE3.js';
28
28
  import './server/chunks/chunks/root.js-BKNoOlLU.js';
29
29
  import './server/chunks/chunks/events.js-CzuTO9ni.js';
30
30
  //# sourceMappingURL=handler.js.map
package/build/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import http from 'node:http';
2
2
  import fs__default from 'node:fs';
3
3
  import process from 'node:process';
4
- import { p as polka, h as handler, f as format_listening_address } from './server/chunks/handler-1NYOIHhX.js';
4
+ import { p as polka, h as handler, f as format_listening_address } from './server/chunks/handler-8WbYsqTN.js';
5
5
  import { env, timeout_env } from './env.js';
6
6
  import { rm } from 'node:fs/promises';
7
7
  import './shims.js';
@@ -10,7 +10,7 @@ import 'node:path';
10
10
  import 'node:timers';
11
11
  import 'node:querystring';
12
12
  import '@sveltejs/kit/node';
13
- import './server/chunks/index.js-CbjK2lE2.js';
13
+ import './server/chunks/index.js-DQiiVGnK.js';
14
14
  import './server/chunks/chunks/utils.js-B8oGSXiQ.js';
15
15
  import './server/chunks/chunks/utils2.js-DGYJFmnf.js';
16
16
  import './server/chunks/chunks/render-context.js-CK-yhMaE.js';
@@ -23,10 +23,10 @@ import './server/chunks/chunks/exports.js-BZBK1HC9.js';
23
23
  import './server/chunks/chunks/index.js-CC8M6P-h.js';
24
24
  import './server/chunks/chunks/renderer.js-CtAppMtw.js';
25
25
  import './server/chunks/chunks/shared-server.js-DaWdgxVh.js';
26
- import './server/chunks/chunks/internal.js-DkuT_d5I.js';
26
+ import './server/chunks/chunks/internal.js-DUldHjE3.js';
27
27
  import './server/chunks/chunks/root.js-BKNoOlLU.js';
28
28
  import './server/chunks/chunks/events.js-CzuTO9ni.js';
29
- import './server/chunks/manifest.js-_hNVc-0C.js';
29
+ import './server/chunks/manifest.js-4bS33Rny.js';
30
30
  import 'node:url';
31
31
 
32
32
  const path = env('SOCKET_PATH', false);
@@ -1,15 +1,6 @@
1
- import { ae as attr_class, ag as escape_html, aa as ensure_array_like, a8 as attr, a7 as spread_props } from './renderer.js-CtAppMtw.js';
2
- import { I as Icon } from './utils3.js-DnU5kMfK.js';
1
+ import { ae as attr_class, ag as escape_html, aa as ensure_array_like, a8 as attr } from './renderer.js-CtAppMtw.js';
3
2
  import { p as page } from './index2.js-H5fG4YhB.js';
4
3
 
5
- function Gauge($$renderer, $$props) {
6
- let { $$slots, $$events, ...props } = $$props;
7
- const iconNode = [
8
- ["path", { "d": "m12 14 4-4" }],
9
- ["path", { "d": "M3.34 19a10 10 0 1 1 17.32 0" }]
10
- ];
11
- Icon($$renderer, spread_props([{ name: "gauge" }, props, { iconNode }]));
12
- }
13
4
  function SideNav($$renderer, $$props) {
14
5
  $$renderer.component(($$renderer2) => {
15
6
  let { items, eyebrow, header, footer, class: className = "" } = $$props;
@@ -39,7 +30,7 @@ function SideNav($$renderer, $$props) {
39
30
  for (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {
40
31
  let item = each_array[$$index];
41
32
  const active = isActive(item);
42
- const Icon2 = item.icon;
33
+ const Icon = item.icon;
43
34
  $$renderer2.push(`<a${attr("href", item.href)}${attr_class(`group gap-2 py-1.5 pr-2.5 relative flex w-full items-center text-left transition-colors ${active ? "pl-4 rounded-r-md bg-accent text-accent-foreground" : "mx-2 pl-2.5 rounded-md text-muted-foreground hover:bg-muted/60 hover:text-foreground"}`)}>`);
44
35
  if (active) {
45
36
  $$renderer2.push("<!--[0-->");
@@ -48,11 +39,11 @@ function SideNav($$renderer, $$props) {
48
39
  $$renderer2.push("<!--[-1-->");
49
40
  }
50
41
  $$renderer2.push(`<!--]--> `);
51
- if (Icon2) {
42
+ if (Icon) {
52
43
  $$renderer2.push("<!--[0-->");
53
- if (Icon2) {
44
+ if (Icon) {
54
45
  $$renderer2.push("<!--[-->");
55
- Icon2($$renderer2, { class: "h-3.5 w-3.5 shrink-0 opacity-70" });
46
+ Icon($$renderer2, { class: "h-3.5 w-3.5 shrink-0 opacity-70" });
56
47
  $$renderer2.push("<!--]-->");
57
48
  } else {
58
49
  $$renderer2.push("<!--[!-->");
@@ -83,5 +74,5 @@ function SideNav($$renderer, $$props) {
83
74
  });
84
75
  }
85
76
 
86
- export { Gauge as G, SideNav as S };
87
- //# sourceMappingURL=SideNav.js-DmUkKbIq.js.map
77
+ export { SideNav as S };
78
+ //# sourceMappingURL=SideNav.js-l2ERmV1U.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SideNav.js-l2ERmV1U.js","sources":["../../../../.svelte-kit/output/server/chunks/SideNav.js"],"sourcesContent":["import { b as attr_class, k as escape_html, e as ensure_array_like, a as attr } from \"./renderer.js\";\nimport { p as page } from \"./index2.js\";\nfunction SideNav($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let { items, eyebrow, header, footer, class: className = \"\" } = $$props;\n function isActive(item) {\n const path = page.url.pathname;\n if (item.match === \"prefix\") return path.startsWith(item.href);\n return path === item.href;\n }\n $$renderer2.push(`<aside${attr_class(`w-60 flex shrink-0 flex-col overflow-y-auto border-r border-border bg-background ${className}`)}>`);\n if (eyebrow) {\n $$renderer2.push(\"<!--[0-->\");\n $$renderer2.push(`<div class=\"px-4 pt-5 pb-3\"><span class=\"text-xs font-medium tracking-wider text-muted-foreground uppercase\">${escape_html(eyebrow)}</span></div>`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n }\n $$renderer2.push(`<!--]--> `);\n if (header) {\n $$renderer2.push(\"<!--[0-->\");\n $$renderer2.push(`<div class=\"px-3 pb-3\">`);\n header($$renderer2);\n $$renderer2.push(`<!----></div>`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n }\n $$renderer2.push(`<!--]--> <nav class=\"pb-4 pr-2 flex-1 space-y-px\"><!--[-->`);\n const each_array = ensure_array_like(items);\n for (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n let item = each_array[$$index];\n const active = isActive(item);\n const Icon = item.icon;\n $$renderer2.push(`<a${attr(\"href\", item.href)}${attr_class(`group gap-2 py-1.5 pr-2.5 relative flex w-full items-center text-left transition-colors ${active ? \"pl-4 rounded-r-md bg-accent text-accent-foreground\" : \"mx-2 pl-2.5 rounded-md text-muted-foreground hover:bg-muted/60 hover:text-foreground\"}`)}>`);\n if (active) {\n $$renderer2.push(\"<!--[0-->\");\n $$renderer2.push(`<span class=\"left-0 top-0 bottom-0 w-0.75 absolute bg-primary\" aria-hidden=\"true\"></span>`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n }\n $$renderer2.push(`<!--]--> `);\n if (Icon) {\n $$renderer2.push(\"<!--[0-->\");\n if (Icon) {\n $$renderer2.push(\"<!--[-->\");\n Icon($$renderer2, { class: \"h-3.5 w-3.5 shrink-0 opacity-70\" });\n $$renderer2.push(\"<!--]-->\");\n } else {\n $$renderer2.push(\"<!--[!-->\");\n $$renderer2.push(\"<!--]-->\");\n }\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n }\n $$renderer2.push(`<!--]--> <span class=\"text-sm font-medium flex-1 truncate\">${escape_html(item.label)}</span> `);\n if (item.badge !== void 0) {\n $$renderer2.push(\"<!--[0-->\");\n $$renderer2.push(`<span class=\"font-mono shrink-0 text-[11px] tabular-nums opacity-60\">${escape_html(item.badge)}</span>`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n }\n $$renderer2.push(`<!--]--></a>`);\n }\n $$renderer2.push(`<!--]--></nav> `);\n if (footer) {\n $$renderer2.push(\"<!--[0-->\");\n $$renderer2.push(`<div class=\"px-3 py-3 border-t border-border/60\">`);\n footer($$renderer2);\n $$renderer2.push(`<!----></div>`);\n } else {\n $$renderer2.push(\"<!--[-1-->\");\n }\n $$renderer2.push(`<!--]--></aside>`);\n });\n}\nexport {\n SideNav as S\n};\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,14 @@
1
+ import { a7 as spread_props } from './renderer.js-CtAppMtw.js';
2
+ import { I as Icon } from './utils3.js-DnU5kMfK.js';
3
+
4
+ function Gauge($$renderer, $$props) {
5
+ let { $$slots, $$events, ...props } = $$props;
6
+ const iconNode = [
7
+ ["path", { "d": "m12 14 4-4" }],
8
+ ["path", { "d": "M3.34 19a10 10 0 1 1 17.32 0" }]
9
+ ];
10
+ Icon($$renderer, spread_props([{ name: "gauge" }, props, { iconNode }]));
11
+ }
12
+
13
+ export { Gauge as G };
14
+ //# sourceMappingURL=gauge.js-DMUtJJht.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"gauge.js-DMUtJJht.js","sources":["../../../../.svelte-kit/output/server/chunks/gauge.js"],"sourcesContent":["import { j as spread_props } from \"./renderer.js\";\nimport { I as Icon } from \"./utils3.js\";\nfunction Gauge($$renderer, $$props) {\n let { $$slots, $$events, ...props } = $$props;\n const iconNode = [\n [\"path\", { \"d\": \"m12 14 4-4\" }],\n [\"path\", { \"d\": \"M3.34 19a10 10 0 1 1 17.32 0\" }]\n ];\n Icon($$renderer, spread_props([{ name: \"gauge\" }, props, { iconNode }]));\n}\nexport {\n Gauge as G\n};\n"],"names":[],"mappings":";;;AAEA,SAAS,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE;AACpC,EAAE,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,GAAG,OAAO;AAC/C,EAAE,MAAM,QAAQ,GAAG;AACnB,IAAI,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,YAAY,EAAE,CAAC;AACnC,IAAI,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,8BAA8B,EAAE;AACpD,GAAG;AACH,EAAE,IAAI,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,KAAK,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;AAC1E;;;;"}
@@ -22,7 +22,7 @@ const options = {
22
22
  service_worker_options: void 0,
23
23
  server_error_boundaries: false,
24
24
  templates: {
25
- app: ({ head, body, assets, nonce, env }) => '<!doctype html>\n<html lang="en">\n <head>\n <meta charset="utf-8" />\n <meta content="width=device-width, initial-scale=1" name="viewport" />\n <link rel="icon" type="image/png" href="/favicon/favicon-96x96.png" sizes="96x96" />\n <link rel="icon" type="image/svg+xml" href="/favicon/favicon.svg" />\n <link rel="shortcut icon" href="/favicon/favicon.ico" />\n <link rel="apple-touch-icon" sizes="180x180" href="/favicon/apple-touch-icon.png" />\n <meta name="apple-mobile-web-app-title" content="Selva" />\n <link rel="manifest" href="/favicon/site.webmanifest" />\n ' + head + '\n </head>\n <body data-sveltekit-preload-data="hover">\n <div style="display: contents">' + body + "</div>\n </body>\n</html>\n",
25
+ app: ({ head, body, assets, nonce, env }) => '<!doctype html>\n<html lang="en">\n <head>\n <meta charset="utf-8" />\n <meta content="width=device-width, initial-scale=1" name="viewport" />\n <link rel="icon" type="image/png" href="/favicon/favicon-96x96.png" sizes="96x96" />\n <link rel="icon" type="image/svg+xml" href="/favicon/favicon.svg" />\n <link rel="shortcut icon" href="/favicon/favicon.ico" />\n <link rel="apple-touch-icon" sizes="180x180" href="/favicon/apple-touch-icon.png" />\n <meta name="apple-mobile-web-app-title" content="Selva" />\n <link rel="manifest" href="/favicon/site.webmanifest" crossorigin="use-credentials" />\n ' + head + '\n </head>\n <body data-sveltekit-preload-data="hover">\n <div style="display: contents">' + body + "</div>\n </body>\n</html>\n",
26
26
  error: ({ status, message }) => '<!doctype html>\n<html lang="en">\n <head>\n <meta charset="utf-8" />\n <title>' + message + `</title>
27
27
 
28
28
  <style>
@@ -94,7 +94,7 @@ const options = {
94
94
  <div class="error">
95
95
  <span class="status">` + status + '</span>\n <div class="message">\n <h1>' + message + "</h1>\n </div>\n </div>\n </body>\n</html>\n"
96
96
  },
97
- version_hash: "1etd4hl"
97
+ version_hash: "1tdl3cp"
98
98
  };
99
99
  async function get_hooks() {
100
100
  let handle;
@@ -117,4 +117,4 @@ async function get_hooks() {
117
117
  }
118
118
 
119
119
  export { get_hooks as g, options as o, read_implementation as r, set_read_implementation as s };
120
- //# sourceMappingURL=internal.js-DkuT_d5I.js.map
120
+ //# sourceMappingURL=internal.js-DUldHjE3.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"internal.js-DUldHjE3.js","sources":["../../../../.svelte-kit/output/server/chunks/internal.js"],"sourcesContent":["import { r as root } from \"./root.js\";\nimport \"./environment.js\";\nimport \"./shared-server.js\";\nlet read_implementation = null;\nfunction set_read_implementation(fn) {\n read_implementation = fn;\n}\nfunction set_manifest(_) {\n}\nconst options = {\n app_template_contains_nonce: false,\n async: false,\n csp: { \"mode\": \"auto\", \"directives\": { \"upgrade-insecure-requests\": false, \"block-all-mixed-content\": false }, \"reportOnly\": { \"upgrade-insecure-requests\": false, \"block-all-mixed-content\": false } },\n csrf_check_origin: true,\n csrf_trusted_origins: [],\n embedded: false,\n env_public_prefix: \"PUBLIC_\",\n env_private_prefix: \"\",\n hash_routing: false,\n hooks: null,\n // added lazily, via `get_hooks`\n preload_strategy: \"modulepreload\",\n root,\n service_worker: false,\n service_worker_options: void 0,\n server_error_boundaries: false,\n templates: {\n app: ({ head, body, assets, nonce, env }) => '<!doctype html>\\n<html lang=\"en\">\\n\t<head>\\n\t\t<meta charset=\"utf-8\" />\\n\t\t<meta content=\"width=device-width, initial-scale=1\" name=\"viewport\" />\\n\t\t<link rel=\"icon\" type=\"image/png\" href=\"/favicon/favicon-96x96.png\" sizes=\"96x96\" />\\n\t\t<link rel=\"icon\" type=\"image/svg+xml\" href=\"/favicon/favicon.svg\" />\\n\t\t<link rel=\"shortcut icon\" href=\"/favicon/favicon.ico\" />\\n\t\t<link rel=\"apple-touch-icon\" sizes=\"180x180\" href=\"/favicon/apple-touch-icon.png\" />\\n\t\t<meta name=\"apple-mobile-web-app-title\" content=\"Selva\" />\\n\t\t<link rel=\"manifest\" href=\"/favicon/site.webmanifest\" crossorigin=\"use-credentials\" />\\n\t\t' + head + '\\n\t</head>\\n\t<body data-sveltekit-preload-data=\"hover\">\\n\t\t<div style=\"display: contents\">' + body + \"</div>\\n\t</body>\\n</html>\\n\",\n error: ({ status, message }) => '<!doctype html>\\n<html lang=\"en\">\\n\t<head>\\n\t\t<meta charset=\"utf-8\" />\\n\t\t<title>' + message + `</title>\n\n\t\t<style>\n\t\t\tbody {\n\t\t\t\t--bg: white;\n\t\t\t\t--fg: #222;\n\t\t\t\t--divider: #ccc;\n\t\t\t\tbackground: var(--bg);\n\t\t\t\tcolor: var(--fg);\n\t\t\t\tfont-family:\n\t\t\t\t\tsystem-ui,\n\t\t\t\t\t-apple-system,\n\t\t\t\t\tBlinkMacSystemFont,\n\t\t\t\t\t'Segoe UI',\n\t\t\t\t\tRoboto,\n\t\t\t\t\tOxygen,\n\t\t\t\t\tUbuntu,\n\t\t\t\t\tCantarell,\n\t\t\t\t\t'Open Sans',\n\t\t\t\t\t'Helvetica Neue',\n\t\t\t\t\tsans-serif;\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t\tjustify-content: center;\n\t\t\t\theight: 100vh;\n\t\t\t\tmargin: 0;\n\t\t\t}\n\n\t\t\t.error {\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t\tmax-width: 32rem;\n\t\t\t\tmargin: 0 1rem;\n\t\t\t}\n\n\t\t\t.status {\n\t\t\t\tfont-weight: 200;\n\t\t\t\tfont-size: 3rem;\n\t\t\t\tline-height: 1;\n\t\t\t\tposition: relative;\n\t\t\t\ttop: -0.05rem;\n\t\t\t}\n\n\t\t\t.message {\n\t\t\t\tborder-left: 1px solid var(--divider);\n\t\t\t\tpadding: 0 0 0 1rem;\n\t\t\t\tmargin: 0 0 0 1rem;\n\t\t\t\tmin-height: 2.5rem;\n\t\t\t\tdisplay: flex;\n\t\t\t\talign-items: center;\n\t\t\t}\n\n\t\t\t.message h1 {\n\t\t\t\tfont-weight: 400;\n\t\t\t\tfont-size: 1em;\n\t\t\t\tmargin: 0;\n\t\t\t}\n\n\t\t\t@media (prefers-color-scheme: dark) {\n\t\t\t\tbody {\n\t\t\t\t\t--bg: #222;\n\t\t\t\t\t--fg: #ddd;\n\t\t\t\t\t--divider: #666;\n\t\t\t\t}\n\t\t\t}\n\t\t</style>\n\t</head>\n\t<body>\n\t\t<div class=\"error\">\n\t\t\t<span class=\"status\">` + status + '</span>\\n\t\t\t<div class=\"message\">\\n\t\t\t\t<h1>' + message + \"</h1>\\n\t\t\t</div>\\n\t\t</div>\\n\t</body>\\n</html>\\n\"\n },\n version_hash: \"1tdl3cp\"\n};\nasync function get_hooks() {\n let handle;\n let handleFetch;\n let handleError;\n let handleValidationError;\n let init;\n ({ handle, handleFetch, handleError, handleValidationError, init } = await import(\"../entries/hooks.server.js\"));\n let reroute;\n let transport;\n return {\n handle,\n handleFetch,\n handleError,\n handleValidationError,\n init,\n reroute,\n transport\n };\n}\nexport {\n set_manifest as a,\n get_hooks as g,\n options as o,\n read_implementation as r,\n set_read_implementation as s\n};\n"],"names":[],"mappings":";;AAGG,IAAC,mBAAmB,GAAG;AAC1B,SAAS,uBAAuB,CAAC,EAAE,EAAE;AACrC,EAAE,mBAAmB,GAAG,EAAE;AAC1B;AAGK,MAAC,OAAO,GAAG;AAChB,EAAE,2BAA2B,EAAE,KAAK;AACpC,EAAE,KAAK,EAAE,KAAK;AACd,EAAE,GAAG,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,EAAE,2BAA2B,EAAE,KAAK,EAAE,yBAAyB,EAAE,KAAK,EAAE,EAAE,YAAY,EAAE,EAAE,2BAA2B,EAAE,KAAK,EAAE,yBAAyB,EAAE,KAAK,EAAE,EAAE;AACzM,EAAE,iBAAiB,EAAE,IAAI;AACzB,EAAE,oBAAoB,EAAE,EAAE;AAC1B,EAAE,QAAQ,EAAE,KAAK;AACjB,EAAE,iBAAiB,EAAE,SAAS;AAC9B,EAAE,kBAAkB,EAAE,EAAE;AACxB,EAAE,YAAY,EAAE,KAAK;AACrB,EAAE,KAAK,EAAE,IAAI;AACb;AACA,EAAE,gBAAgB,EAAE,eAAe;AACnC,EAAE,IAAI;AACN,EAAE,cAAc,EAAE,KAAK;AACvB,EAAE,sBAAsB,EAAE,MAAM;AAChC,EAAE,uBAAuB,EAAE,KAAK;AAChC,EAAE,SAAS,EAAE;AACb,IAAI,GAAG,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,KAAK,kmBAAkmB,GAAG,IAAI,GAAG,4FAA4F,GAAG,IAAI,GAAG,6BAA6B;AAChyB,IAAI,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,mFAAmF,GAAG,OAAO,GAAG,CAAC;;AAErI;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,wBAAwB,CAAC,GAAG,MAAM,GAAG,6CAA6C,GAAG,OAAO,GAAG;AAC/F,GAAG;AACH,EAAE,YAAY,EAAE;AAChB;AACA,eAAe,SAAS,GAAG;AAC3B,EAAE,IAAI,MAAM;AACZ,EAAE,IAAI,WAAW;AACjB,EAAE,IAAI,WAAW;AACjB,EAAE,IAAI,qBAAqB;AAC3B,EAAE,IAAI,IAAI;AACV,EAAE,CAAC,EAAE,MAAM,EAAE,WAAW,EAAE,WAAW,EAAE,qBAAqB,EAAE,IAAI,EAAE,GAAG,MAAM,OAAO,wCAA4B,CAAC;AACjH,EAAE,IAAI,OAAO;AACb,EAAE,IAAI,SAAS;AACf,EAAE,OAAO;AACT,IAAI,MAAM;AACV,IAAI,WAAW;AACf,IAAI,WAAW;AACf,IAAI,qBAAqB;AACzB,IAAI,IAAI;AACR,IAAI,OAAO;AACX,IAAI;AACJ,GAAG;AACH;;;;"}
@@ -1,5 +1,5 @@
1
1
  const name = "@selvajs/selva";
2
- const version = "4.6.15";
2
+ const version = "4.6.17";
3
3
  const description = "Selva — self-contained Grasshopper-driven web app. Install, configure via .env, deploy.";
4
4
  const license = "MIT";
5
5
  const publishConfig = { "access": "public" };
@@ -26,4 +26,4 @@ const pkg = {
26
26
  };
27
27
 
28
28
  export { pkg as p };
29
- //# sourceMappingURL=package.js-yeb4qDIe.js.map
29
+ //# sourceMappingURL=package.js-FSG5sWFK.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"package.js-yeb4qDIe.js","sources":["../../../../.svelte-kit/output/server/chunks/package.js"],"sourcesContent":["const name = \"@selvajs/selva\";\nconst version = \"4.6.15\";\nconst description = \"Selva — self-contained Grasshopper-driven web app. Install, configure via .env, deploy.\";\nconst license = \"MIT\";\nconst publishConfig = { \"access\": \"public\" };\nconst type = \"module\";\nconst main = \"./build/index.js\";\nconst files = [\"build\", \"templates\"];\nconst engines = { \"node\": \">=20.6.0\" };\nconst scripts = { \"dev\": \"vite dev\", \"build\": \"rimraf build && vite build && node ./scripts/generate-templates.js\", \"preview\": \"vite preview\", \"start\": \"node build/index.js\", \"clean\": \"rimraf build templates\", \"prepare\": \"svelte-kit sync || echo ''\", \"check\": \"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json\", \"type-check\": \"tsc --noEmit\", \"test\": \"vitest run\", \"test:watch\": \"vitest\", \"test:e2e\": \"playwright test\" };\nconst dependencies = { \"@lucide/svelte\": \"catalog:\", \"@selvajs/compute\": \"catalog:\", \"@supabase/supabase-js\": \"^2.104.1\", \"@sveltejs/kit\": \"catalog:\", \"bits-ui\": \"^2.18.0\", \"clsx\": \"catalog:\", \"mode-watcher\": \"catalog:\", \"rhino3dm\": \"8.17.0\", \"sharp\": \"^0.34.5\", \"tailwind-merge\": \"catalog:\", \"tailwind-variants\": \"^3.2.2\", \"three\": \"catalog:\", \"zod\": \"^4.3.6\" };\nconst devDependencies = { \"@selvajs/config\": \"workspace:*\", \"@selvajs/header-auth-provider\": \"workspace:*\", \"@selvajs/local-provider\": \"workspace:*\", \"@selvajs/platform\": \"workspace:*\", \"@selvajs/schemas\": \"workspace:*\", \"@selvajs/supabase-provider\": \"workspace:*\", \"@selvajs/ui\": \"workspace:*\", \"@playwright/test\": \"catalog:\", \"@sveltejs/adapter-node\": \"^5.5.4\", \"@types/three\": \"catalog:\", \"rimraf\": \"catalog:\", \"tw-animate-css\": \"catalog:\", \"vitest\": \"catalog:\" };\nconst pkg = {\n name,\n version,\n description,\n license,\n publishConfig,\n type,\n main,\n files,\n engines,\n scripts,\n dependencies,\n devDependencies\n};\nexport {\n pkg as p\n};\n"],"names":[],"mappings":"AAAA,MAAM,IAAI,GAAG,gBAAgB;AAC7B,MAAM,OAAO,GAAG,QAAQ;AACxB,MAAM,WAAW,GAAG,yFAAyF;AAC7G,MAAM,OAAO,GAAG,KAAK;AACrB,MAAM,aAAa,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE;AAC5C,MAAM,IAAI,GAAG,QAAQ;AACrB,MAAM,IAAI,GAAG,kBAAkB;AAC/B,MAAM,KAAK,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC;AACpC,MAAM,OAAO,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE;AACtC,MAAM,OAAO,GAAG,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,oEAAoE,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,qBAAqB,EAAE,OAAO,EAAE,wBAAwB,EAAE,SAAS,EAAE,4BAA4B,EAAE,OAAO,EAAE,4DAA4D,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,iBAAiB,EAAE;AAC7a,MAAM,YAAY,GAAG,EAAE,gBAAgB,EAAE,UAAU,EAAE,kBAAkB,EAAE,UAAU,EAAE,uBAAuB,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,UAAU,EAAE,mBAAmB,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE;AAC1W,MAAM,eAAe,GAAG,EAAE,iBAAiB,EAAE,aAAa,EAAE,+BAA+B,EAAE,aAAa,EAAE,yBAAyB,EAAE,aAAa,EAAE,mBAAmB,EAAE,aAAa,EAAE,kBAAkB,EAAE,aAAa,EAAE,4BAA4B,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,kBAAkB,EAAE,UAAU,EAAE,wBAAwB,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,gBAAgB,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE;AAC7c,MAAC,GAAG,GAAG;AACZ,EAAE,IAAI;AACN,EAAE,OAAO;AACT,EAAE,WAAW;AACb,EAAE,OAAO;AACT,EAAE,aAAa;AACf,EAAE,IAAI;AACN,EAAE,IAAI;AACN,EAAE,KAAK;AACP,EAAE,OAAO;AACT,EAAE,OAAO;AACT,EAAE,YAAY;AACd,EAAE;AACF;;;;"}
1
+ {"version":3,"file":"package.js-FSG5sWFK.js","sources":["../../../../.svelte-kit/output/server/chunks/package.js"],"sourcesContent":["const name = \"@selvajs/selva\";\nconst version = \"4.6.17\";\nconst description = \"Selva — self-contained Grasshopper-driven web app. Install, configure via .env, deploy.\";\nconst license = \"MIT\";\nconst publishConfig = { \"access\": \"public\" };\nconst type = \"module\";\nconst main = \"./build/index.js\";\nconst files = [\"build\", \"templates\"];\nconst engines = { \"node\": \">=20.6.0\" };\nconst scripts = { \"dev\": \"vite dev\", \"build\": \"rimraf build && vite build && node ./scripts/generate-templates.js\", \"preview\": \"vite preview\", \"start\": \"node build/index.js\", \"clean\": \"rimraf build templates\", \"prepare\": \"svelte-kit sync || echo ''\", \"check\": \"svelte-kit sync && svelte-check --tsconfig ./tsconfig.json\", \"type-check\": \"tsc --noEmit\", \"test\": \"vitest run\", \"test:watch\": \"vitest\", \"test:e2e\": \"playwright test\" };\nconst dependencies = { \"@lucide/svelte\": \"catalog:\", \"@selvajs/compute\": \"catalog:\", \"@supabase/supabase-js\": \"^2.104.1\", \"@sveltejs/kit\": \"catalog:\", \"bits-ui\": \"^2.18.0\", \"clsx\": \"catalog:\", \"mode-watcher\": \"catalog:\", \"rhino3dm\": \"8.17.0\", \"sharp\": \"^0.34.5\", \"tailwind-merge\": \"catalog:\", \"tailwind-variants\": \"^3.2.2\", \"three\": \"catalog:\", \"zod\": \"^4.3.6\" };\nconst devDependencies = { \"@selvajs/config\": \"workspace:*\", \"@selvajs/header-auth-provider\": \"workspace:*\", \"@selvajs/local-provider\": \"workspace:*\", \"@selvajs/platform\": \"workspace:*\", \"@selvajs/schemas\": \"workspace:*\", \"@selvajs/supabase-provider\": \"workspace:*\", \"@selvajs/ui\": \"workspace:*\", \"@playwright/test\": \"catalog:\", \"@sveltejs/adapter-node\": \"^5.5.4\", \"@types/three\": \"catalog:\", \"rimraf\": \"catalog:\", \"tw-animate-css\": \"catalog:\", \"vitest\": \"catalog:\" };\nconst pkg = {\n name,\n version,\n description,\n license,\n publishConfig,\n type,\n main,\n files,\n engines,\n scripts,\n dependencies,\n devDependencies\n};\nexport {\n pkg as p\n};\n"],"names":[],"mappings":"AAAA,MAAM,IAAI,GAAG,gBAAgB;AAC7B,MAAM,OAAO,GAAG,QAAQ;AACxB,MAAM,WAAW,GAAG,yFAAyF;AAC7G,MAAM,OAAO,GAAG,KAAK;AACrB,MAAM,aAAa,GAAG,EAAE,QAAQ,EAAE,QAAQ,EAAE;AAC5C,MAAM,IAAI,GAAG,QAAQ;AACrB,MAAM,IAAI,GAAG,kBAAkB;AAC/B,MAAM,KAAK,GAAG,CAAC,OAAO,EAAE,WAAW,CAAC;AACpC,MAAM,OAAO,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE;AACtC,MAAM,OAAO,GAAG,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,oEAAoE,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,qBAAqB,EAAE,OAAO,EAAE,wBAAwB,EAAE,SAAS,EAAE,4BAA4B,EAAE,OAAO,EAAE,4DAA4D,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,EAAE,iBAAiB,EAAE;AAC7a,MAAM,YAAY,GAAG,EAAE,gBAAgB,EAAE,UAAU,EAAE,kBAAkB,EAAE,UAAU,EAAE,uBAAuB,EAAE,UAAU,EAAE,eAAe,EAAE,UAAU,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,UAAU,EAAE,UAAU,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,gBAAgB,EAAE,UAAU,EAAE,mBAAmB,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE;AAC1W,MAAM,eAAe,GAAG,EAAE,iBAAiB,EAAE,aAAa,EAAE,+BAA+B,EAAE,aAAa,EAAE,yBAAyB,EAAE,aAAa,EAAE,mBAAmB,EAAE,aAAa,EAAE,kBAAkB,EAAE,aAAa,EAAE,4BAA4B,EAAE,aAAa,EAAE,aAAa,EAAE,aAAa,EAAE,kBAAkB,EAAE,UAAU,EAAE,wBAAwB,EAAE,QAAQ,EAAE,cAAc,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE,gBAAgB,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,EAAE;AAC7c,MAAC,GAAG,GAAG;AACZ,EAAE,IAAI;AACN,EAAE,OAAO;AACT,EAAE,WAAW;AACb,EAAE,OAAO;AACT,EAAE,aAAa;AACf,EAAE,IAAI;AACN,EAAE,IAAI;AACN,EAAE,KAAK;AACP,EAAE,OAAO;AACT,EAAE,OAAO;AACT,EAAE,YAAY;AACd,EAAE;AACF;;;;"}
@@ -0,0 +1,79 @@
1
+ import { randomFillSync } from 'node:crypto';
2
+ import { json } from '@sveltejs/kit';
3
+ import { a as apiError, A as ApiErrorCode } from '../../../../../../chunks/api-errors.js-B1VX-zf8.js';
4
+ import { d as requirePermission } from '../../../../../../chunks/access.server.js-x_KrjYJP.js';
5
+ import '../../../../../../chunks/context.js-D8E0GFTw.js';
6
+ import 'zod';
7
+ import '../../../../../../chunks/providers.server.js-Sbk117pY.js';
8
+ import '../../../../../../chunks/shared-server.js-DaWdgxVh.js';
9
+ import 'node:url';
10
+ import 'node:path';
11
+ import 'node:fs';
12
+ import 'node:fs/promises';
13
+ import '@supabase/supabase-js';
14
+ import '@selvajs/compute/core';
15
+ import '../../../../../../chunks/utils4.js-DvnSECfA.js';
16
+
17
+ const CHUNK_BYTES = 1024 * 1024;
18
+ const DOWNLOAD_DEFAULT_MB = 20;
19
+ const DOWNLOAD_MAX_MB = 256;
20
+ const UPLOAD_MAX_BYTES = 256 * 1024 * 1024;
21
+ const GET = async ({ locals, url }) => {
22
+ requirePermission(locals, "instance_admin");
23
+ const requested = Number(url.searchParams.get("mb"));
24
+ const mb = Math.min(
25
+ DOWNLOAD_MAX_MB,
26
+ Math.max(1, Number.isFinite(requested) ? requested : DOWNLOAD_DEFAULT_MB)
27
+ );
28
+ let sentChunks = 0;
29
+ const stream = new ReadableStream({
30
+ pull(controller) {
31
+ if (sentChunks >= mb) {
32
+ controller.close();
33
+ return;
34
+ }
35
+ const chunk = new Uint8Array(CHUNK_BYTES);
36
+ randomFillSync(chunk);
37
+ controller.enqueue(chunk);
38
+ sentChunks++;
39
+ }
40
+ });
41
+ return new Response(stream, {
42
+ headers: {
43
+ "Content-Type": "application/octet-stream",
44
+ "Content-Length": String(mb * CHUNK_BYTES),
45
+ "Cache-Control": "no-store"
46
+ }
47
+ });
48
+ };
49
+ const POST = async ({ locals, request }) => {
50
+ requirePermission(locals, "instance_admin");
51
+ const declared = Number(request.headers.get("content-length"));
52
+ if (Number.isFinite(declared) && declared > UPLOAD_MAX_BYTES) {
53
+ apiError(413, ApiErrorCode.VALIDATION_FAILED, "Upload exceeds the 256 MB probe limit");
54
+ }
55
+ if (!request.body) {
56
+ apiError(400, ApiErrorCode.VALIDATION_FAILED, "Missing request body");
57
+ }
58
+ const start = performance.now();
59
+ const reader = request.body.getReader();
60
+ let bytes = 0;
61
+ while (true) {
62
+ const { done, value } = await reader.read();
63
+ if (done) break;
64
+ bytes += value.byteLength;
65
+ if (bytes > UPLOAD_MAX_BYTES) {
66
+ await reader.cancel();
67
+ apiError(413, ApiErrorCode.VALIDATION_FAILED, "Upload exceeds the 256 MB probe limit");
68
+ }
69
+ }
70
+ const ms = performance.now() - start;
71
+ return json({
72
+ bytes,
73
+ ms: Math.round(ms),
74
+ mbps: ms > 0 ? Number((bytes / (1024 * 1024) / (ms / 1e3)).toFixed(2)) : null
75
+ });
76
+ };
77
+
78
+ export { GET, POST };
79
+ //# sourceMappingURL=_server.ts.js-CQZiKJH5.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts.js-CQZiKJH5.js","sources":["../../../../../../../../../.svelte-kit/output/server/entries/endpoints/admin/api/system/throughput/_server.ts.js"],"sourcesContent":["import { randomFillSync } from \"node:crypto\";\nimport { json } from \"@sveltejs/kit\";\nimport { a as apiError, A as ApiErrorCode } from \"../../../../../../chunks/api-errors.js\";\nimport { d as requirePermission } from \"../../../../../../chunks/access.server.js\";\nconst CHUNK_BYTES = 1024 * 1024;\nconst DOWNLOAD_DEFAULT_MB = 20;\nconst DOWNLOAD_MAX_MB = 256;\nconst UPLOAD_MAX_BYTES = 256 * 1024 * 1024;\nconst GET = async ({ locals, url }) => {\n requirePermission(locals, \"instance_admin\");\n const requested = Number(url.searchParams.get(\"mb\"));\n const mb = Math.min(\n DOWNLOAD_MAX_MB,\n Math.max(1, Number.isFinite(requested) ? requested : DOWNLOAD_DEFAULT_MB)\n );\n let sentChunks = 0;\n const stream = new ReadableStream({\n pull(controller) {\n if (sentChunks >= mb) {\n controller.close();\n return;\n }\n const chunk = new Uint8Array(CHUNK_BYTES);\n randomFillSync(chunk);\n controller.enqueue(chunk);\n sentChunks++;\n }\n });\n return new Response(stream, {\n headers: {\n \"Content-Type\": \"application/octet-stream\",\n \"Content-Length\": String(mb * CHUNK_BYTES),\n \"Cache-Control\": \"no-store\"\n }\n });\n};\nconst POST = async ({ locals, request }) => {\n requirePermission(locals, \"instance_admin\");\n const declared = Number(request.headers.get(\"content-length\"));\n if (Number.isFinite(declared) && declared > UPLOAD_MAX_BYTES) {\n apiError(413, ApiErrorCode.VALIDATION_FAILED, \"Upload exceeds the 256 MB probe limit\");\n }\n if (!request.body) {\n apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Missing request body\");\n }\n const start = performance.now();\n const reader = request.body.getReader();\n let bytes = 0;\n while (true) {\n const { done, value } = await reader.read();\n if (done) break;\n bytes += value.byteLength;\n if (bytes > UPLOAD_MAX_BYTES) {\n await reader.cancel();\n apiError(413, ApiErrorCode.VALIDATION_FAILED, \"Upload exceeds the 256 MB probe limit\");\n }\n }\n const ms = performance.now() - start;\n return json({\n bytes,\n ms: Math.round(ms),\n mbps: ms > 0 ? Number((bytes / (1024 * 1024) / (ms / 1e3)).toFixed(2)) : null\n });\n};\nexport {\n GET,\n POST\n};\n"],"names":[],"mappings":"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"}
@@ -148,7 +148,13 @@ function transformInputParameter(input, value) {
148
148
  name: input.nickname,
149
149
  nickname: input.nickname || null,
150
150
  description: input.description || "",
151
- paramType: input.paramType,
151
+ // Dynamic value lists ride the ValueList contract on the wire — the plugin's
152
+ // GetDynamicValueListParameter deliberately reuses TypeName "ValueList" so the
153
+ // compute fork's existing ValueList input case assigns it. processInput has no
154
+ // dynamicValueList handler; without this mapping it falls back to Geometry with
155
+ // a null default and TreeBuilder DROPS the input, so the user's selection never
156
+ // reaches the definition (the param then solves on its own stale fallback).
157
+ paramType: input.paramType === "dynamicValueList" ? "valueList" : input.paramType,
152
158
  treeAccess: input.inputStructure === "tree",
153
159
  minimum: input.minimum ?? null,
154
160
  maximum: input.maximum ?? null,
@@ -158,7 +164,12 @@ function transformInputParameter(input, value) {
158
164
  // The user's selection wins; otherwise the schema default.
159
165
  default: value ?? input.default
160
166
  };
161
- return processInput(raw);
167
+ const processed = processInput(raw);
168
+ const effective = value ?? input.default;
169
+ if (Array.isArray(effective) && processed.default == null) {
170
+ processed.default = effective;
171
+ }
172
+ return processed;
162
173
  }
163
174
  const COMPUTE_DEBUG = ["true", "1", "yes"].includes(
164
175
  (private_env.SELVA_FLAG_COMPUTE_DEBUG ?? "").toLowerCase()
@@ -638,4 +649,4 @@ const POST = async ({ request, locals, url }) => {
638
649
  };
639
650
 
640
651
  export { POST };
641
- //# sourceMappingURL=_server.ts.js-k5YwUAVY.js.map
652
+ //# sourceMappingURL=_server.ts.js-Ct_7OEVp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts.js-Ct_7OEVp.js","sources":["../../../../../../../.svelte-kit/output/server/entries/endpoints/api/compute/_server.ts.js"],"sourcesContent":["import { a as apiError, A as ApiErrorCode, r as resolveServerForOrg, f as fetchSchemaFromCompute, C as ComputeServerUnconfiguredError } from \"../../../../chunks/api-errors.js\";\nimport { processInput, enableDebugLogging, TreeBuilder, GrasshopperClient } from \"@selvajs/compute\";\nimport { b as private_env } from \"../../../../chunks/shared-server.js\";\nimport { isHttpError } from \"@sveltejs/kit\";\nimport { lookup } from \"node:dns/promises\";\nimport { isIP } from \"node:net\";\nimport { e as RATE_LIMIT_WINDOW_MS, d as RATE_LIMIT_MAX_REQUESTS, f as MAX_SOLVE_DURATION_MS, C as COMPUTE_RESPONSE_MAX_BYTES, D as DEFINITION_CACHE_TTL_MS, R as REMOTE_DEFINITION_FETCH_TIMEOUT_MS, a as REMOTE_DEFINITION_MAX_BYTES, g as COMPUTE_CACHE_ERRORED_SOLVES, h as COMPUTE_SERVER_CACHESOLVE, i as COMPUTE_REUSE_DEFINITION_CACHE, b as COMPUTE_REQUEST_MAX_BYTES } from \"../../../../chunks/computeLimits.js\";\nimport { gzipSync } from \"node:zlib\";\nimport { r as requireMaxBodySize } from \"../../../../chunks/admin-auth.server.js\";\nimport { r as getStorageProvider, s as getSolveMetricSink, p as providers } from \"../../../../chunks/providers.server.js\";\nimport { i as requireCanEditDefinition, j as requireCanSolve } from \"../../../../chunks/access.server.js\";\nimport { t as tryResolveShareToken } from \"../../../../chunks/resolve.server.js\";\nfunction isBlockedIp(ip) {\n let addr = ip.toLowerCase();\n const mappedDotted = /^::ffff:(\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3})$/.exec(addr);\n if (mappedDotted) {\n addr = mappedDotted[1];\n } else {\n const mappedHex = /^::ffff:([0-9a-f]{1,4}):([0-9a-f]{1,4})$/.exec(addr);\n if (mappedHex) {\n const hi = parseInt(mappedHex[1], 16);\n const lo = parseInt(mappedHex[2], 16);\n addr = [hi >> 8 & 255, hi & 255, lo >> 8 & 255, lo & 255].join(\".\");\n }\n }\n if (isIP(addr) === 4) {\n const octets = addr.split(\".\").map(Number);\n if (octets.length !== 4 || octets.some((o) => o > 255)) return true;\n const [a, b] = octets;\n if (a === 0) return true;\n if (a === 127) return true;\n if (a === 10) return true;\n if (a === 192 && b === 168) return true;\n if (a === 172 && b >= 16 && b <= 31) return true;\n if (a === 169 && b === 254) return true;\n return false;\n }\n if (addr === \"::1\" || addr === \"::\") return true;\n if (/^(fc|fd)[0-9a-f]{0,2}:/.test(addr)) return true;\n if (/^fe[89ab][0-9a-f]:/.test(addr)) return true;\n return false;\n}\nfunction canonicalizeNumericIpv4(host) {\n if (isIP(host) === 4) return host;\n const rawParts = host.split(\".\");\n if (rawParts.length === 0 || rawParts.length > 4) return null;\n const parseUInt = (s) => {\n if (s === \"\") return null;\n let n;\n if (/^0x[0-9a-f]+$/i.test(s)) n = parseInt(s, 16);\n else if (/^0[0-7]+$/.test(s)) n = parseInt(s, 8);\n else if (/^[0-9]+$/.test(s)) n = parseInt(s, 10);\n else return null;\n return Number.isFinite(n) ? n : null;\n };\n const nums = rawParts.map(parseUInt);\n if (nums.some((n) => n === null)) return null;\n const parts = nums;\n let value;\n switch (parts.length) {\n case 1:\n value = parts[0];\n break;\n case 2:\n if (parts[0] > 255 || parts[1] > 16777215) return null;\n value = parts[0] << 24 | parts[1];\n break;\n case 3:\n if (parts[0] > 255 || parts[1] > 255 || parts[2] > 65535) return null;\n value = parts[0] << 24 | parts[1] << 16 | parts[2];\n break;\n default:\n if (parts.some((p) => p > 255)) return null;\n value = parts[0] << 24 | parts[1] << 16 | parts[2] << 8 | parts[3];\n }\n value = value >>> 0;\n if (value > 4294967295) return null;\n return [value >>> 24 & 255, value >>> 16 & 255, value >>> 8 & 255, value & 255].join(\n \".\"\n );\n}\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 let host = parsed.hostname.toLowerCase();\n if (!host) return false;\n if (host === \"localhost\" || host.endsWith(\".localhost\")) return false;\n const isBracketed = host.startsWith(\"[\") && host.endsWith(\"]\");\n if (isBracketed) host = host.slice(1, -1);\n if (isIP(host) === 6) return !isBlockedIp(host);\n const canonical = canonicalizeNumericIpv4(host);\n if (canonical) return !isBlockedIp(canonical);\n return true;\n}\nasync function assertSafeRemoteDefinitionUrl(raw) {\n if (!isSafeRemoteDefinitionUrl(raw)) {\n throw new Error(\"Remote definition URL is not allowed\");\n }\n const host = new URL(raw).hostname.toLowerCase().replace(/^\\[|\\]$/g, \"\");\n if (isIP(host) !== 0 || canonicalizeNumericIpv4(host)) return raw;\n let resolved;\n try {\n resolved = await lookup(host, { all: true });\n } catch {\n throw new Error(\"Remote definition URL is not allowed\");\n }\n if (resolved.length === 0 || resolved.some((r) => isBlockedIp(r.address))) {\n throw new Error(\"Remote definition URL is not allowed\");\n }\n return raw;\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}\nfunction transformInputParameter(input, value) {\n const raw = {\n id: input.id,\n name: input.nickname,\n nickname: input.nickname || null,\n description: input.description || \"\",\n // Dynamic value lists ride the ValueList contract on the wire — the plugin's\n // GetDynamicValueListParameter deliberately reuses TypeName \"ValueList\" so the\n // compute fork's existing ValueList input case assigns it. processInput has no\n // dynamicValueList handler; without this mapping it falls back to Geometry with\n // a null default and TreeBuilder DROPS the input, so the user's selection never\n // reaches the definition (the param then solves on its own stale fallback).\n paramType: input.paramType === \"dynamicValueList\" ? \"valueList\" : input.paramType,\n treeAccess: input.inputStructure === \"tree\",\n minimum: input.minimum ?? null,\n maximum: input.maximum ?? null,\n atLeast: 1,\n atMost: 1,\n stepSize: input.stepSize,\n // The user's selection wins; otherwise the schema default.\n default: value ?? input.default\n };\n const processed = processInput(raw);\n const effective = value ?? input.default;\n if (Array.isArray(effective) && processed.default == null) {\n processed.default = effective;\n }\n return processed;\n}\nconst COMPUTE_DEBUG = [\"true\", \"1\", \"yes\"].includes(\n (private_env.SELVA_FLAG_COMPUTE_DEBUG ?? \"\").toLowerCase()\n);\nconst COMPUTE_DEBUG_VERBOSE = [\"true\", \"1\", \"yes\"].includes(\n (private_env.SELVA_FLAG_COMPUTE_DEBUG_VERBOSE ?? \"\").toLowerCase()\n);\nif (COMPUTE_DEBUG_VERBOSE) enableDebugLogging();\nfunction formatBytes(bytes) {\n if (bytes < 1024) return `${bytes} B`;\n if (bytes < 1024 * 1024) return `${(bytes / 1024).toFixed(1)} KB`;\n return `${(bytes / (1024 * 1024)).toFixed(2)} MB`;\n}\nconst definitionCache = /* @__PURE__ */ new Map();\nconst MAX_CACHED_CLIENTS = 16;\nconst clientCache = /* @__PURE__ */ new Map();\nfunction clientCacheKey(serverConfig) {\n return `${serverConfig.serverUrl}\\0${serverConfig.apiKey ?? \"\"}`;\n}\nasync function getClient(serverConfig) {\n const key = clientCacheKey(serverConfig);\n const existing = clientCache.get(key);\n if (existing) {\n clientCache.delete(key);\n clientCache.set(key, existing);\n return existing;\n }\n const rhinoTiming = { last: null };\n const solveMeta = { last: null };\n const client = await GrasshopperClient.create({\n serverUrl: serverConfig.serverUrl,\n apiKey: serverConfig.apiKey,\n // Lib-level debug is the verbose one (full payload logs); keep it on the\n // verbose flag so the concise cache logs can run without the noise.\n debug: COMPUTE_DEBUG_VERBOSE,\n // Ask Rhino.Compute to cache solve results and return them on identical\n // repeats (same definition + inputs), skipping the solve. Forwarded to both\n // the pointer and full-upload solve paths via applyOptionalComputeSettings.\n cachesolve: COMPUTE_SERVER_CACHESOLVE,\n // Opt-in: also cache solves that reported GH errors (errors-by-design\n // definitions still produce correct geometry). See COMPUTE_CACHE_ERRORED_SOLVES.\n cacheerroredsolves: COMPUTE_CACHE_ERRORED_SOLVES,\n // DEBUG (SELVA_FLAG_COMPUTE_DEBUG): the server's per-request timing breakdown,\n // which exposes the two SERVER-side caches at once:\n // • Definition cache (pointer reuse): `decode` = deserialize + LOAD\n // DEFINITION. A repeat solve loads the definition from the server's cache,\n // so `decode` drops to ~0; a full (re)upload shows a larger `decode`.\n // • Solve cache (cachesolve): when the server returns a CACHED RESULT it\n // skips the solve, so `solve` drops to ~0 while decode/encode still run.\n // We flag each below so the contrast is obvious in the logs.\n onServerTiming: (t) => {\n const decode = t.decode ?? 0;\n const solve = t.solve ?? 0;\n const encode = t.encode ?? 0;\n rhinoTiming.last = { decode, solve, encode };\n if (!COMPUTE_DEBUG) return;\n const defCache = decode <= 1 ? \"HIT (definition reused, no re-upload/parse)\" : \"miss (full parse)\";\n const solveCache = COMPUTE_SERVER_CACHESOLVE && solve <= 1 ? \"HIT (cached result, solve skipped)\" : COMPUTE_SERVER_CACHESOLVE ? \"miss (solved fresh)\" : \"off\";\n console.log(\n `[Compute/rhino-cache] decode=${decode}ms solve=${solve}ms encode=${encode}ms | definition-cache: ${defCache} | solve-cache (cachesolve): ${solveCache}`\n );\n }\n });\n const scheduler = client.createScheduler({\n mode: \"queue\",\n timeoutMs: MAX_SOLVE_DURATION_MS,\n cache: { maxEntries: 20, ttlMs: 5 * 6e4 },\n // Solve large definitions by server cache-key (pointer) instead of re-uploading\n // the full binary every solve. On a stale-pointer miss the client (@selvajs/compute\n // >= 2.4.0) transparently re-uploads; the miss is detected via the server's\n // `code: \"definition_not_cached\"` (VektorNode fork). Env-gated so a deployment on\n // an unknown compute server can disable it — see COMPUTE_REUSE_DEFINITION_CACHE.\n reuseServerDefinitionCache: COMPUTE_REUSE_DEFINITION_CACHE,\n // Observe the Selva in-process response cache. `fromCache === true` means\n // this solve was served from Selva's own cache — Rhino.Compute was never\n // called (you'll see NO [Compute/timing] line for it). `false` means it went\n // to the compute server. Always registered so the cache verdicts reach the\n // browser via Server-Timing; console logs stay debug-gated.\n onSettle: (_ctx, result) => {\n if (result.status !== \"success\") return;\n solveMeta.last = {\n fromCache: result.fromCache === true,\n definitionReuploaded: result.definitionReuploaded\n };\n if (!COMPUTE_DEBUG) return;\n console.log(\n `[Compute/selva-cache] ${result.fromCache ? \"HIT — served from Selva (no compute call)\" : \"miss — went to Rhino.Compute\"} (${Math.round(result.durationMs)}ms)`\n );\n if (!result.fromCache) {\n console.log(\n result.definitionReuploaded === true ? \"[Compute/def-cache] miss — definition RE-UPLOADED (pointer was cold/stale)\" : result.definitionReuploaded === false ? \"[Compute/def-cache] HIT — definition reused from server cache (no upload)\" : \"[Compute/def-cache] n/a — reuse disabled or non-reusable definition\"\n );\n }\n if (!result.fromCache) {\n const errs = result.response?.errors;\n const errCount = Array.isArray(errs) ? errs.length : 0;\n if (errCount > 0) {\n console.log(\n `[Compute/rhino-cache] ${errCount} GH error(s); not cacheable until fixed. First: ${JSON.stringify(errs[0])}`\n );\n }\n }\n }\n });\n const entry = { client, scheduler, rhinoTiming, solveMeta };\n if (clientCache.size >= MAX_CACHED_CLIENTS) {\n const oldestKey = clientCache.keys().next().value;\n if (oldestKey !== void 0) {\n clientCache.get(oldestKey)?.scheduler.dispose();\n clientCache.delete(oldestKey);\n }\n }\n clientCache.set(key, entry);\n return entry;\n}\nasync function readBodyWithCap(response, maxBytes, controller) {\n if (!response.body) {\n const buffer = await response.arrayBuffer();\n if (buffer.byteLength > maxBytes) throw new Error(\"Remote definition exceeds size limit\");\n return new Uint8Array(buffer);\n }\n const reader = response.body.getReader();\n const chunks = [];\n let total = 0;\n while (true) {\n const { done, value } = await reader.read();\n if (done) break;\n total += value.byteLength;\n if (total > maxBytes) {\n controller.abort();\n throw new Error(\"Remote definition exceeds size limit\");\n }\n chunks.push(value);\n }\n const out = new Uint8Array(total);\n let offset = 0;\n for (const chunk of chunks) {\n out.set(chunk, offset);\n offset += chunk.byteLength;\n }\n return out;\n}\nasync function loadRemoteDefinition(url) {\n await assertSafeRemoteDefinitionUrl(url);\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 data = await readBodyWithCap(response, REMOTE_DEFINITION_MAX_BYTES, controller);\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}\nconst POST = async ({ request, locals, url }) => {\n const storage = getStorageProvider();\n requireMaxBodySize(request, COMPUTE_REQUEST_MAX_BYTES);\n const loadStart = performance.now();\n const prepMarks = [];\n let prevMark = performance.now();\n const mark = (label) => {\n prepMarks.push([label, performance.now() - prevMark]);\n prevMark = performance.now();\n };\n try {\n const body = await request.json();\n mark(\"body\");\n const { inputs, values } = body;\n const definitionUrl = body.definitionUrl;\n const channel = body.channel ?? \"live\";\n const explicitVersionId = body.versionId ?? null;\n if (!inputs || !values || !definitionUrl) {\n apiError(\n 400,\n ApiErrorCode.VALIDATION_FAILED,\n \"Missing required fields: inputs, values, or definitionUrl\"\n );\n }\n if (channel !== \"live\" && channel !== \"draft\") {\n apiError(\n 400,\n ApiErrorCode.VALIDATION_FAILED,\n `Invalid channel: ${channel}. Must be 'live' or 'draft'.`\n );\n }\n let definitionSource;\n let localVersionForBackfill = null;\n let solveOrgId = null;\n let definitionPin = null;\n let metricDefinitionId = null;\n let metricVersionId = null;\n const isLocal = definitionUrl.startsWith(\"local:\");\n const guid = isLocal ? definitionUrl.substring(6) : null;\n const sharedAccess = isLocal && guid && !explicitVersionId ? await tryResolveShareToken(request, url, guid, channel, { requireSolve: true }) : null;\n mark(\"shareToken\");\n if (!sharedAccess && (!locals.ctx || !locals.user)) {\n apiError(401, ApiErrorCode.UNAUTHORIZED, \"Unauthorized\");\n }\n const solveCtx = sharedAccess?.ctx ?? locals.ctx;\n const recordMetric = (failureKind, extra = {}) => {\n void getSolveMetricSink().record(solveCtx, {\n definitionUrl,\n definitionId: metricDefinitionId,\n versionId: metricVersionId,\n channel,\n orgId: solveOrgId,\n durationMs: extra.durationMs ?? 0,\n ok: failureKind === \"ok\",\n failureKind,\n errorCount: extra.errorCount ?? 0,\n warningCount: extra.warningCount ?? 0\n });\n };\n const rateLimitKey = sharedAccess ? `share:${sharedAccess.link.id}` : `user:${locals.user.id}`;\n const rateLimit = checkComputeRateLimit(rateLimitKey);\n if (!rateLimit.allowed) {\n recordMetric(\"rate_limited\");\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 apiError(404, ApiErrorCode.NOT_FOUND, `Definition '${guid}' not found`);\n }\n if (!record) apiError(404, ApiErrorCode.NOT_FOUND, `Definition '${guid}' not found`);\n mark(\"defRecord\");\n const project = await providers.data.projects.getProject(solveCtx, record.projectId);\n solveOrgId = project?.orgId ?? null;\n definitionPin = record.computeServerId ?? null;\n mark(\"project\");\n if (!sharedAccess) {\n if (channel === \"draft\" || explicitVersionId) {\n await requireCanEditDefinition(locals, record.projectId, guid);\n } else {\n await requireCanSolve(locals, record.projectId);\n }\n }\n mark(\"access\");\n const versionId = explicitVersionId ?? (channel === \"live\" ? record.liveVersionId : record.draftVersionId);\n if (!versionId) {\n apiError(404, ApiErrorCode.NOT_FOUND, `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 apiError(404, ApiErrorCode.NOT_FOUND, `Definition '${guid}' version is missing`);\n }\n localVersionForBackfill = { id: version.id, hasSchema: version.schema !== void 0 };\n metricDefinitionId = guid;\n metricVersionId = version.id;\n mark(\"version\");\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 apiError(404, ApiErrorCode.NOT_FOUND, `Definition '${guid}' not found`);\n }\n mark(\"blob\");\n } else {\n try {\n definitionSource = await loadRemoteDefinition(definitionUrl);\n } catch (err) {\n console.error(`Failed to fetch definition from ${definitionUrl}:`, err);\n apiError(\n 400,\n ApiErrorCode.VALIDATION_FAILED,\n `Failed to load definition: ${err instanceof Error ? err.message : String(err)}`\n );\n }\n mark(\"remoteDef\");\n }\n const defLoadMs = performance.now() - loadStart;\n const treeBuildStart = performance.now();\n const inputTree = TreeBuilder.fromInputParams(\n inputs.filter((input) => input.paramType).map((input) => transformInputParameter(input, values[input.id]))\n );\n const treeBuildMs = performance.now() - treeBuildStart;\n prevMark = performance.now();\n if (sharedAccess) {\n const next = await providers.data.shareLinks.tryIncrementSolveCount(\n solveCtx,\n sharedAccess.link.id\n );\n if (next === null) {\n recordMetric(\"share_cap\");\n apiError(429, ApiErrorCode.INTERNAL, \"Share link solve cap reached.\");\n }\n mark(\"shareCap\");\n }\n const serverConfig = await resolveServerForOrg(solveCtx, solveOrgId, { definitionPin });\n mark(\"resolveServer\");\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 mark(\"schemaBackfill\");\n }\n const { scheduler, rhinoTiming, solveMeta } = await getClient(serverConfig);\n mark(\"client\");\n let solvedDefinition;\n let solveMs = 0;\n rhinoTiming.last = null;\n solveMeta.last = null;\n const solveStart = performance.now();\n try {\n solvedDefinition = await scheduler.solve(definitionSource, inputTree, {\n signal: request.signal\n });\n solveMs = performance.now() - solveStart;\n recordMetric(\"ok\", {\n durationMs: solveMs,\n errorCount: solvedDefinition.errors?.length ?? 0,\n warningCount: solvedDefinition.warnings?.length ?? 0\n });\n if (metricDefinitionId) {\n providers.data.definitions.incrementSolveCount(solveCtx, metricDefinitionId).catch(\n (err) => console.warn(\n `[API/Compute] solveCount increment failed for ${metricDefinitionId}:`,\n err\n )\n );\n }\n } catch (err) {\n const isAbort = err instanceof Error && err.name === \"AbortError\";\n const timedOut = isAbort && !request.signal.aborted;\n recordMetric(timedOut ? \"timeout\" : isAbort ? \"client_abort\" : \"compute_error\", {\n durationMs: performance.now() - solveStart\n });\n if (isAbort) {\n if (request.signal.aborted) {\n apiError(499, ApiErrorCode.INTERNAL, \"Client closed request\");\n }\n apiError(\n 504,\n ApiErrorCode.INTERNAL,\n `Solve exceeded the ${Math.round(MAX_SOLVE_DURATION_MS / 1e3)}s deadline.`\n );\n }\n throw err;\n }\n let serialized;\n const serializeStart = performance.now();\n try {\n serialized = JSON.stringify(solvedDefinition);\n } catch (err) {\n if (err instanceof RangeError) {\n recordMetric(\"too_large\");\n apiError(\n 413,\n ApiErrorCode.INTERNAL,\n \"Solve result is too large to return. This usually means a file output exceeds the supported size.\"\n );\n }\n throw err;\n }\n if (serialized.length > COMPUTE_RESPONSE_MAX_BYTES) {\n recordMetric(\"too_large\");\n apiError(\n 413,\n ApiErrorCode.INTERNAL,\n \"Solve result is too large to return. This usually means a file output exceeds the supported size.\"\n );\n }\n const serializeMs = performance.now() - serializeStart;\n const acceptEncoding = request.headers.get(\"accept-encoding\") ?? \"\";\n let compressed = null;\n let gzipMs = 0;\n if (/\\bgzip\\b/i.test(acceptEncoding) && serialized.length > 1024) {\n const gzipStart = performance.now();\n compressed = gzipSync(Buffer.from(serialized));\n gzipMs = performance.now() - gzipStart;\n }\n const serverTotalMs = performance.now() - loadStart;\n if (COMPUTE_DEBUG) {\n console.log(\n `[Compute/server] load=${defLoadMs.toFixed(0)}ms tree=${treeBuildMs.toFixed(0)}ms solve=${solveMs.toFixed(0)}ms serialize=${serializeMs.toFixed(0)}ms gzip=${gzipMs.toFixed(0)}ms total=${serverTotalMs.toFixed(0)}ms | result=${formatBytes(serialized.length)}`\n );\n if (compressed) {\n console.log(\n `[Compute/server] gzip ${formatBytes(serialized.length)} → ${formatBytes(compressed.byteLength)} (${(serialized.length / compressed.byteLength).toFixed(1)}×)`\n );\n } else {\n console.log(\n `[Compute/server] compression skipped — Accept-Encoding: \"${acceptEncoding || \"(absent)\"}\"`\n );\n }\n console.log(\n `[Compute/server] prep breakdown: ` + prepMarks.map(([label, ms]) => `${label}=${ms.toFixed(0)}ms`).join(\" \")\n );\n }\n let serverTimingHeader = `load;dur=${defLoadMs.toFixed(1)}, tree;dur=${treeBuildMs.toFixed(1)}, solve;dur=${solveMs.toFixed(1)}, serialize;dur=${serializeMs.toFixed(1)}, gzip;dur=${gzipMs.toFixed(1)}, total;dur=${serverTotalMs.toFixed(1)}`;\n const rhino = rhinoTiming.last;\n if (rhino) {\n const onRhinoMs = rhino.decode + rhino.solve + rhino.encode;\n const computeLinkMs = Math.max(0, solveMs - onRhinoMs);\n serverTimingHeader += `, rhino_decode;dur=${rhino.decode.toFixed(1)}, rhino_solve;dur=${rhino.solve.toFixed(1)}, rhino_encode;dur=${rhino.encode.toFixed(1)}, compute_link;dur=${computeLinkMs.toFixed(1)}`;\n }\n for (const [label, ms] of prepMarks) {\n serverTimingHeader += `, p_${label};dur=${ms.toFixed(1)}`;\n }\n const settle = solveMeta.last;\n if (settle) {\n serverTimingHeader += `, selva_cache;dur=${settle.fromCache ? 1 : 0}`;\n if (settle.definitionReuploaded !== void 0) {\n serverTimingHeader += `, def_reupload;dur=${settle.definitionReuploaded ? 1 : 0}`;\n }\n }\n const responseHeaders = {\n \"Content-Type\": \"application/json\",\n \"Server-Timing\": serverTimingHeader,\n Vary: \"Accept-Encoding\"\n };\n if (compressed) {\n responseHeaders[\"Content-Encoding\"] = \"gzip\";\n responseHeaders[\"Content-Length\"] = String(compressed.byteLength);\n return new Response(new Uint8Array(compressed), { headers: responseHeaders });\n }\n responseHeaders[\"Content-Length\"] = String(Buffer.byteLength(serialized));\n return new Response(serialized, { headers: responseHeaders });\n } catch (err) {\n if (isHttpError(err)) throw err;\n if (err instanceof ComputeServerUnconfiguredError) {\n apiError(503, ApiErrorCode.COMPUTE_UNAVAILABLE, err.message);\n }\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 apiError(503, ApiErrorCode.COMPUTE_UNAVAILABLE, \"Compute server is unreachable\");\n }\n apiError(500, ApiErrorCode.INTERNAL, message);\n }\n};\nexport {\n POST\n};\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import { R as derived } from '../../../chunks/renderer.js-CtAppMtw.js';
2
2
  import { A as AppHeader } from '../../../chunks/AppHeader.js-D1BAf8Eq.js';
3
- import { S as SideNav, G as Gauge } from '../../../chunks/SideNav.js-DmUkKbIq.js';
3
+ import { S as SideNav } from '../../../chunks/SideNav.js-l2ERmV1U.js';
4
+ import { G as Gauge } from '../../../chunks/gauge.js-DMUtJJht.js';
4
5
  import { B as Building_2 } from '../../../chunks/building-2.js-ChOoxKg1.js';
5
6
  import { F as Folders } from '../../../chunks/folders.js-B8ZM5-FI.js';
6
7
  import { U as Users } from '../../../chunks/users.js-UnXuN2He.js';
@@ -110,4 +111,4 @@ function _layout($$renderer, $$props) {
110
111
  }
111
112
 
112
113
  export { _layout as default };
113
- //# sourceMappingURL=_layout.svelte.js-BQTc-1yu.js.map
114
+ //# sourceMappingURL=_layout.svelte.js-Mz-UsIAn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_layout.svelte.js-Mz-UsIAn.js","sources":["../../../../../../.svelte-kit/output/server/entries/pages/admin/_layout.svelte.js"],"sourcesContent":["import { d as derived } from \"../../../chunks/renderer.js\";\nimport { A as AppHeader } from \"../../../chunks/AppHeader.js\";\nimport { S as SideNav } from \"../../../chunks/SideNav.js\";\nimport { G as Gauge } from \"../../../chunks/gauge.js\";\nimport { B as Building_2 } from \"../../../chunks/building-2.js\";\nimport { F as Folders } from \"../../../chunks/folders.js\";\nimport { U as Users } from \"../../../chunks/users.js\";\nimport { S as Server } from \"../../../chunks/server.js\";\nimport { S as Settings } from \"../../../chunks/settings.js\";\nimport { S as Scroll_text } from \"../../../chunks/scroll-text.js\";\nfunction _layout($$renderer, $$props) {\n $$renderer.component(($$renderer2) => {\n let { data, children } = $$props;\n const can = (p) => {\n if (data.platformPermissions.includes(\"instance_admin\")) return true;\n if (data.platformPermissions.includes(p)) return true;\n return data.orgPermissions.includes(p);\n };\n const items = derived(() => [\n { href: \"/admin\", label: \"General\", icon: Gauge, show: true },\n {\n href: \"/admin/organizations\",\n label: \"Organizations\",\n icon: Building_2,\n match: \"prefix\",\n show: can(\"instance_admin\") && data.tenancy !== \"single\"\n },\n {\n href: \"/admin/projects\",\n label: \"Projects\",\n icon: Folders,\n match: \"prefix\",\n show: can(\"instance_admin\") && data.platformProjectsEnabled\n },\n {\n href: \"/admin/users\",\n label: \"Users\",\n icon: Users,\n match: \"prefix\",\n show: can(\"manage_instance_users\")\n },\n {\n href: \"/admin/compute\",\n label: \"Compute\",\n icon: Server,\n match: \"prefix\",\n show: can(\"manage_compute\")\n },\n {\n href: \"/admin/system\",\n label: \"System\",\n icon: Settings,\n match: \"prefix\",\n show: can(\"manage_updates\")\n },\n {\n href: \"/admin/audit\",\n label: \"Audit log\",\n icon: Scroll_text,\n match: \"prefix\",\n show: can(\"instance_admin\") && data.auditAvailable\n }\n ].filter((i) => i.show));\n {\n let sidenav = function($$renderer3) {\n SideNav($$renderer3, { items: items(), eyebrow: \"Platform\" });\n };\n AppHeader($$renderer2, {\n sidenav,\n children: ($$renderer3) => {\n $$renderer3.push(`<div class=\"px-(--page-px) py-(--page-py)\">`);\n children?.($$renderer3);\n $$renderer3.push(`<!----></div>`);\n }\n });\n }\n });\n}\nexport {\n _layout as default\n};\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { g as getAuthProvider, d as getOrganizationProvider } from '../../../chunks/providers.server.js-Sbk117pY.js';
2
2
  import { h as hasPermission } from '../../../chunks/context.js-D8E0GFTw.js';
3
- import { p as pkg } from '../../../chunks/package.js-yeb4qDIe.js';
3
+ import { p as pkg } from '../../../chunks/package.js-FSG5sWFK.js';
4
4
 
5
5
  async function loadAdminOrg(ctx) {
6
6
  if (!ctx) return null;
@@ -43,4 +43,4 @@ var _page_server_ts = /*#__PURE__*/Object.freeze({
43
43
  });
44
44
 
45
45
  export { _page_server_ts as _ };
46
- //# sourceMappingURL=_page.server.ts.js-BsxiR6Xk.js.map
46
+ //# sourceMappingURL=_page.server.ts.js-COIP__Oi.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_page.server.ts.js-BsxiR6Xk.js","sources":["../../../../../../.svelte-kit/output/server/entries/pages/admin/_page.server.ts.js"],"sourcesContent":["import { g as getAuthProvider, c as getOrganizationProvider } from \"../../../chunks/providers.server.js\";\nimport { h as hasPermission } from \"../../../chunks/context.js\";\nimport { p as pkg } from \"../../../chunks/package.js\";\nasync function loadAdminOrg(ctx) {\n if (!ctx) return null;\n try {\n const page = await getOrganizationProvider().listOrgs(ctx, { limit: 1 });\n const org = page.items[0];\n return org ? { id: org.id, name: org.name, assets: org.assets ?? {} } : null;\n } catch (err) {\n console.error(\"Failed to load admin org for asset cards:\", err);\n return null;\n }\n}\nconst load = async ({ locals }) => {\n const ctx = locals.ctx;\n const canSeeUserStats = ctx ? hasPermission(ctx, \"manage_instance_users\") : false;\n const canManageOrg = ctx ? hasPermission(ctx, \"manage_org_members\") : false;\n const platformPermissions = ctx?.platformPermissions ?? [];\n const org = canManageOrg ? await loadAdminOrg(ctx) : null;\n if (!canSeeUserStats) {\n return { stats: { users: null }, platformPermissions, version: pkg.version, org };\n }\n try {\n const usersPage = await getAuthProvider().listUsers({ limit: 200 });\n return {\n stats: { users: usersPage?.items.length ?? null },\n platformPermissions,\n version: pkg.version,\n org\n };\n } catch (err) {\n if (err && typeof err === \"object\" && \"status\" in err) throw err;\n console.error(\"Failed to load admin dashboard:\", err);\n return { stats: { users: null }, platformPermissions, version: pkg.version, org };\n }\n};\nexport {\n load\n};\n"],"names":[],"mappings":";;;;AAGA,eAAe,YAAY,CAAC,GAAG,EAAE;AACjC,EAAE,IAAI,CAAC,GAAG,EAAE,OAAO,IAAI;AACvB,EAAE,IAAI;AACN,IAAI,MAAM,IAAI,GAAG,MAAM,uBAAuB,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;AAC5E,IAAI,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;AAC7B,IAAI,OAAO,GAAG,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,EAAE,EAAE,GAAG,IAAI;AAChF,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,OAAO,CAAC,KAAK,CAAC,2CAA2C,EAAE,GAAG,CAAC;AACnE,IAAI,OAAO,IAAI;AACf,EAAE;AACF;AACA,MAAM,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,KAAK;AACnC,EAAE,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG;AACxB,EAAE,MAAM,eAAe,GAAG,GAAG,GAAG,aAAa,CAAC,GAAG,EAAE,uBAAuB,CAAC,GAAG,KAAK;AACnF,EAAE,MAAM,YAAY,GAAG,GAAG,GAAG,aAAa,CAAC,GAAG,EAAE,oBAAoB,CAAC,GAAG,KAAK;AAC7E,EAAE,MAAM,mBAAmB,GAAG,GAAG,EAAE,mBAAmB,IAAI,EAAE;AAC5D,EAAE,MAAM,GAAG,GAAG,YAAY,GAAG,MAAM,YAAY,CAAC,GAAG,CAAC,GAAG,IAAI;AAC3D,EAAE,IAAI,CAAC,eAAe,EAAE;AACxB,IAAI,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,mBAAmB,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE;AACrF,EAAE;AACF,EAAE,IAAI;AACN,IAAI,MAAM,SAAS,GAAG,MAAM,eAAe,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;AACvE,IAAI,OAAO;AACX,MAAM,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,MAAM,IAAI,IAAI,EAAE;AACvD,MAAM,mBAAmB;AACzB,MAAM,OAAO,EAAE,GAAG,CAAC,OAAO;AAC1B,MAAM;AACN,KAAK;AACL,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,QAAQ,IAAI,GAAG,EAAE,MAAM,GAAG;AACpE,IAAI,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,GAAG,CAAC;AACzD,IAAI,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,mBAAmB,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE;AACrF,EAAE;AACF,CAAC;;;;;;;;;"}
1
+ {"version":3,"file":"_page.server.ts.js-COIP__Oi.js","sources":["../../../../../../.svelte-kit/output/server/entries/pages/admin/_page.server.ts.js"],"sourcesContent":["import { g as getAuthProvider, c as getOrganizationProvider } from \"../../../chunks/providers.server.js\";\nimport { h as hasPermission } from \"../../../chunks/context.js\";\nimport { p as pkg } from \"../../../chunks/package.js\";\nasync function loadAdminOrg(ctx) {\n if (!ctx) return null;\n try {\n const page = await getOrganizationProvider().listOrgs(ctx, { limit: 1 });\n const org = page.items[0];\n return org ? { id: org.id, name: org.name, assets: org.assets ?? {} } : null;\n } catch (err) {\n console.error(\"Failed to load admin org for asset cards:\", err);\n return null;\n }\n}\nconst load = async ({ locals }) => {\n const ctx = locals.ctx;\n const canSeeUserStats = ctx ? hasPermission(ctx, \"manage_instance_users\") : false;\n const canManageOrg = ctx ? hasPermission(ctx, \"manage_org_members\") : false;\n const platformPermissions = ctx?.platformPermissions ?? [];\n const org = canManageOrg ? await loadAdminOrg(ctx) : null;\n if (!canSeeUserStats) {\n return { stats: { users: null }, platformPermissions, version: pkg.version, org };\n }\n try {\n const usersPage = await getAuthProvider().listUsers({ limit: 200 });\n return {\n stats: { users: usersPage?.items.length ?? null },\n platformPermissions,\n version: pkg.version,\n org\n };\n } catch (err) {\n if (err && typeof err === \"object\" && \"status\" in err) throw err;\n console.error(\"Failed to load admin dashboard:\", err);\n return { stats: { users: null }, platformPermissions, version: pkg.version, org };\n }\n};\nexport {\n load\n};\n"],"names":[],"mappings":";;;;AAGA,eAAe,YAAY,CAAC,GAAG,EAAE;AACjC,EAAE,IAAI,CAAC,GAAG,EAAE,OAAO,IAAI;AACvB,EAAE,IAAI;AACN,IAAI,MAAM,IAAI,GAAG,MAAM,uBAAuB,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;AAC5E,IAAI,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC;AAC7B,IAAI,OAAO,GAAG,GAAG,EAAE,EAAE,EAAE,GAAG,CAAC,EAAE,EAAE,IAAI,EAAE,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,IAAI,EAAE,EAAE,GAAG,IAAI;AAChF,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,OAAO,CAAC,KAAK,CAAC,2CAA2C,EAAE,GAAG,CAAC;AACnE,IAAI,OAAO,IAAI;AACf,EAAE;AACF;AACA,MAAM,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,KAAK;AACnC,EAAE,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG;AACxB,EAAE,MAAM,eAAe,GAAG,GAAG,GAAG,aAAa,CAAC,GAAG,EAAE,uBAAuB,CAAC,GAAG,KAAK;AACnF,EAAE,MAAM,YAAY,GAAG,GAAG,GAAG,aAAa,CAAC,GAAG,EAAE,oBAAoB,CAAC,GAAG,KAAK;AAC7E,EAAE,MAAM,mBAAmB,GAAG,GAAG,EAAE,mBAAmB,IAAI,EAAE;AAC5D,EAAE,MAAM,GAAG,GAAG,YAAY,GAAG,MAAM,YAAY,CAAC,GAAG,CAAC,GAAG,IAAI;AAC3D,EAAE,IAAI,CAAC,eAAe,EAAE;AACxB,IAAI,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,mBAAmB,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE;AACrF,EAAE;AACF,EAAE,IAAI;AACN,IAAI,MAAM,SAAS,GAAG,MAAM,eAAe,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC;AACvE,IAAI,OAAO;AACX,MAAM,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,CAAC,MAAM,IAAI,IAAI,EAAE;AACvD,MAAM,mBAAmB;AACzB,MAAM,OAAO,EAAE,GAAG,CAAC,OAAO;AAC1B,MAAM;AACN,KAAK;AACL,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,IAAI,IAAI,GAAG,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,QAAQ,IAAI,GAAG,EAAE,MAAM,GAAG;AACpE,IAAI,OAAO,CAAC,KAAK,CAAC,iCAAiC,EAAE,GAAG,CAAC;AACzD,IAAI,OAAO,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE,mBAAmB,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE;AACrF,EAAE;AACF,CAAC;;;;;;;;;"}
@@ -4,7 +4,7 @@ import { f as flag } from '../../../../chunks/providers.server.js-Sbk117pY.js';
4
4
  import { w as writeChannel, r as readChannel, c as checkForUpdate } from '../../../../chunks/updateCheck.server.js-DdReI2pF.js';
5
5
  import { d as requirePermission } from '../../../../chunks/access.server.js-x_KrjYJP.js';
6
6
  import { D as DEFINITION_CACHE_TTL_MS, R as REMOTE_DEFINITION_FETCH_TIMEOUT_MS, a as REMOTE_DEFINITION_MAX_BYTES, C as COMPUTE_RESPONSE_MAX_BYTES, b as COMPUTE_REQUEST_MAX_BYTES, M as MAX_IMAGE_FILE_SIZE, c as MAX_GH_FILE_SIZE, d as RATE_LIMIT_MAX_REQUESTS, e as RATE_LIMIT_WINDOW_MS, f as MAX_SOLVE_DURATION_MS } from '../../../../chunks/computeLimits.js-CVHW4MyF.js';
7
- import { p as pkg } from '../../../../chunks/package.js-yeb4qDIe.js';
7
+ import { p as pkg } from '../../../../chunks/package.js-FSG5sWFK.js';
8
8
 
9
9
  const load = async ({ locals, fetch }) => {
10
10
  const ctx = locals.ctx;
@@ -69,4 +69,4 @@ var _page_server_ts = /*#__PURE__*/Object.freeze({
69
69
  });
70
70
 
71
71
  export { _page_server_ts as _ };
72
- //# sourceMappingURL=_page.server.ts.js-Xx9P6Uvj.js.map
72
+ //# sourceMappingURL=_page.server.ts.js-BQ7XQXcR.js.map