@selvajs/selva 4.7.1 → 4.7.2

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 (830) hide show
  1. package/build/client/_app/immutable/assets/0.C_NYyhEq.css +2 -0
  2. package/build/client/_app/immutable/assets/0.C_NYyhEq.css.br +0 -0
  3. package/build/client/_app/immutable/assets/0.C_NYyhEq.css.gz +0 -0
  4. package/build/client/_app/immutable/assets/rhino3dm.c7Dt22ey.wasm +0 -0
  5. package/build/client/_app/immutable/assets/rhino3dm.c7Dt22ey.wasm.br +0 -0
  6. package/build/client/_app/immutable/assets/rhino3dm.c7Dt22ey.wasm.gz +0 -0
  7. package/build/client/_app/immutable/chunks/BFoE6XI72.js +7 -0
  8. package/build/client/_app/immutable/chunks/BFoE6XI72.js.br +0 -0
  9. package/build/client/_app/immutable/chunks/BFoE6XI72.js.gz +0 -0
  10. package/build/client/_app/immutable/chunks/BH_AsplL.js +2 -0
  11. package/build/client/_app/immutable/chunks/BH_AsplL.js.br +0 -0
  12. package/build/client/_app/immutable/chunks/BH_AsplL.js.gz +0 -0
  13. package/build/client/_app/immutable/chunks/BY-g58bE.js +1 -0
  14. package/build/client/_app/immutable/chunks/BY-g58bE.js.br +0 -0
  15. package/build/client/_app/immutable/chunks/BY-g58bE.js.gz +0 -0
  16. package/build/client/_app/immutable/chunks/BbD3QanV2.js +1 -0
  17. package/build/client/_app/immutable/chunks/BbD3QanV2.js.br +0 -0
  18. package/build/client/_app/immutable/chunks/BbD3QanV2.js.gz +0 -0
  19. package/build/client/_app/immutable/chunks/Bq18tj_a2.js +1 -0
  20. package/build/client/_app/immutable/chunks/Bq18tj_a2.js.br +0 -0
  21. package/build/client/_app/immutable/chunks/Bq18tj_a2.js.gz +0 -0
  22. package/build/client/_app/immutable/chunks/C5qitKDD2.js +1 -0
  23. package/build/client/_app/immutable/chunks/C5qitKDD2.js.br +2 -0
  24. package/build/client/_app/immutable/chunks/C5qitKDD2.js.gz +0 -0
  25. package/build/client/_app/immutable/chunks/CQAfTXcm.js +1 -0
  26. package/build/client/_app/immutable/chunks/CQAfTXcm.js.br +0 -0
  27. package/build/client/_app/immutable/chunks/CQAfTXcm.js.gz +0 -0
  28. package/build/client/_app/immutable/chunks/CVGG5cou.js +2 -0
  29. package/build/client/_app/immutable/chunks/CVGG5cou.js.br +0 -0
  30. package/build/client/_app/immutable/chunks/CVGG5cou.js.gz +0 -0
  31. package/build/client/_app/immutable/chunks/DexxF51_.js +1 -0
  32. package/build/client/_app/immutable/chunks/DexxF51_.js.br +3 -0
  33. package/build/client/_app/immutable/chunks/DexxF51_.js.gz +0 -0
  34. package/build/client/_app/immutable/entry/app.D-RJkHIt.js +2 -0
  35. package/build/client/_app/immutable/entry/app.D-RJkHIt.js.br +0 -0
  36. package/build/client/_app/immutable/entry/app.D-RJkHIt.js.gz +0 -0
  37. package/build/client/_app/immutable/entry/start.I2pqBGf4.js +1 -0
  38. package/build/client/_app/immutable/entry/start.I2pqBGf4.js.br +0 -0
  39. package/build/client/_app/immutable/entry/start.I2pqBGf4.js.gz +0 -0
  40. package/build/client/_app/immutable/nodes/1.DVyoAMuu.js +1 -0
  41. package/build/client/_app/immutable/nodes/1.DVyoAMuu.js.br +0 -0
  42. package/build/client/_app/immutable/nodes/1.DVyoAMuu.js.gz +0 -0
  43. package/build/client/_app/immutable/nodes/11.CQbreiqk.js +2 -0
  44. package/build/client/_app/immutable/nodes/11.CQbreiqk.js.br +0 -0
  45. package/build/client/_app/immutable/nodes/11.CQbreiqk.js.gz +0 -0
  46. package/build/client/_app/immutable/nodes/13.C4vZxwnQ.js +2 -0
  47. package/build/client/_app/immutable/nodes/13.C4vZxwnQ.js.br +0 -0
  48. package/build/client/_app/immutable/nodes/13.C4vZxwnQ.js.gz +0 -0
  49. package/build/client/_app/immutable/nodes/14.DASy3nb-.js +2 -0
  50. package/build/client/_app/immutable/nodes/14.DASy3nb-.js.br +0 -0
  51. package/build/client/_app/immutable/nodes/14.DASy3nb-.js.gz +0 -0
  52. package/build/client/_app/immutable/nodes/15.BC1C3cKb.js +21 -0
  53. package/build/client/_app/immutable/nodes/15.BC1C3cKb.js.br +0 -0
  54. package/build/client/_app/immutable/nodes/15.BC1C3cKb.js.gz +0 -0
  55. package/build/client/_app/immutable/nodes/16.ndEU45yq.js +6 -0
  56. package/build/client/_app/immutable/nodes/16.ndEU45yq.js.br +0 -0
  57. package/build/client/_app/immutable/nodes/16.ndEU45yq.js.gz +0 -0
  58. package/build/client/_app/immutable/nodes/17.LLtsCwzz.js +2 -0
  59. package/build/client/_app/immutable/nodes/17.LLtsCwzz.js.br +0 -0
  60. package/build/client/_app/immutable/nodes/17.LLtsCwzz.js.gz +0 -0
  61. package/build/client/_app/immutable/nodes/19.CD3DqCqe.js +2 -0
  62. package/build/client/_app/immutable/nodes/19.CD3DqCqe.js.br +0 -0
  63. package/build/client/_app/immutable/nodes/19.CD3DqCqe.js.gz +0 -0
  64. package/build/client/_app/immutable/nodes/2.BlsyZJiA.js +1 -0
  65. package/build/client/_app/immutable/nodes/2.BlsyZJiA.js.br +0 -0
  66. package/build/client/_app/immutable/nodes/2.BlsyZJiA.js.gz +0 -0
  67. package/build/client/_app/immutable/nodes/20.BFohqiKN.js +12 -0
  68. package/build/client/_app/immutable/nodes/20.BFohqiKN.js.br +0 -0
  69. package/build/client/_app/immutable/nodes/20.BFohqiKN.js.gz +0 -0
  70. package/build/client/_app/immutable/nodes/21.DZiGzC7Z.js +6 -0
  71. package/build/client/_app/immutable/nodes/21.DZiGzC7Z.js.br +0 -0
  72. package/build/client/_app/immutable/nodes/21.DZiGzC7Z.js.gz +0 -0
  73. package/build/client/_app/immutable/nodes/23.C46hjmtc.js +16 -0
  74. package/build/client/_app/immutable/nodes/23.C46hjmtc.js.br +0 -0
  75. package/build/client/_app/immutable/nodes/23.C46hjmtc.js.gz +0 -0
  76. package/build/client/_app/immutable/nodes/24.DCmyEKJz.js +6 -0
  77. package/build/client/_app/immutable/nodes/24.DCmyEKJz.js.br +0 -0
  78. package/build/client/_app/immutable/nodes/24.DCmyEKJz.js.gz +0 -0
  79. package/build/client/_app/immutable/nodes/27.DyMg91My.js +4 -0
  80. package/build/client/_app/immutable/nodes/27.DyMg91My.js.br +0 -0
  81. package/build/client/_app/immutable/nodes/27.DyMg91My.js.gz +0 -0
  82. package/build/client/_app/immutable/nodes/28.CPR6YRXC.js +4 -0
  83. package/build/client/_app/immutable/nodes/28.CPR6YRXC.js.br +0 -0
  84. package/build/client/_app/immutable/nodes/28.CPR6YRXC.js.gz +0 -0
  85. package/build/client/_app/immutable/nodes/29.Coy1qPJ_.js +2 -0
  86. package/build/client/_app/immutable/nodes/29.Coy1qPJ_.js.br +0 -0
  87. package/build/client/_app/immutable/nodes/29.Coy1qPJ_.js.gz +0 -0
  88. package/build/client/_app/immutable/nodes/3.CZJ4gpKN.js +1 -0
  89. package/build/client/_app/immutable/nodes/3.CZJ4gpKN.js.br +0 -0
  90. package/build/client/_app/immutable/nodes/3.CZJ4gpKN.js.gz +0 -0
  91. package/build/client/_app/immutable/nodes/30.CzJyrCok.js +2 -0
  92. package/build/client/_app/immutable/nodes/30.CzJyrCok.js.br +0 -0
  93. package/build/client/_app/immutable/nodes/30.CzJyrCok.js.gz +0 -0
  94. package/build/client/_app/immutable/nodes/5.DNdojkB1.js +1 -0
  95. package/build/client/_app/immutable/nodes/5.DNdojkB1.js.br +0 -0
  96. package/build/client/_app/immutable/nodes/5.DNdojkB1.js.gz +0 -0
  97. package/build/client/_app/immutable/nodes/6.4pxciwO2.js +1 -0
  98. package/build/client/_app/immutable/nodes/6.4pxciwO2.js.br +0 -0
  99. package/build/client/_app/immutable/nodes/6.4pxciwO2.js.gz +0 -0
  100. package/build/client/_app/immutable/nodes/7.DvXhnRZv.js +1 -0
  101. package/build/client/_app/immutable/nodes/7.DvXhnRZv.js.br +0 -0
  102. package/build/client/_app/immutable/nodes/7.DvXhnRZv.js.gz +0 -0
  103. package/build/client/_app/immutable/nodes/8.DVVhiAKi.js +2 -0
  104. package/build/client/_app/immutable/nodes/8.DVVhiAKi.js.br +0 -0
  105. package/build/client/_app/immutable/nodes/8.DVVhiAKi.js.gz +0 -0
  106. package/build/client/_app/immutable/nodes/9.Brd0DUUz.js +1 -0
  107. package/build/client/_app/immutable/nodes/9.Brd0DUUz.js.br +0 -0
  108. package/build/client/_app/immutable/nodes/9.Brd0DUUz.js.gz +0 -0
  109. package/build/client/_app/version.json +1 -1
  110. package/build/client/_app/version.json.br +0 -0
  111. package/build/client/_app/version.json.gz +0 -0
  112. package/build/handler.js +4 -4
  113. package/build/index.js +4 -4
  114. package/build/server/chunks/chunks/AppHeader.js-CNlN8xDO.js +281 -0
  115. package/build/server/chunks/chunks/AppHeader.js-CNlN8xDO.js.map +1 -0
  116. package/build/server/chunks/chunks/SideNav.js-CU5TFjXQ.js +67 -0
  117. package/build/server/chunks/chunks/SideNav.js-CU5TFjXQ.js.map +1 -0
  118. package/build/server/chunks/chunks/UserChip.js-DwXHanLA.js +1163 -0
  119. package/build/server/chunks/chunks/UserChip.js-DwXHanLA.js.map +1 -0
  120. package/build/server/chunks/chunks/access.server.js-CzBCyDoD.js +453 -0
  121. package/build/server/chunks/chunks/access.server.js-CzBCyDoD.js.map +1 -0
  122. package/build/server/chunks/chunks/access2.server.js-BONknTul.js +20 -0
  123. package/build/server/chunks/chunks/access2.server.js-BONknTul.js.map +1 -0
  124. package/build/server/chunks/chunks/admin-config.js-BXnSbuRl.js +3 -0
  125. package/build/server/chunks/chunks/admin-config.js-BXnSbuRl.js.map +1 -0
  126. package/build/server/chunks/chunks/api-errors.js-BLGSIpxK.js +141 -0
  127. package/build/server/chunks/chunks/api-errors.js-BLGSIpxK.js.map +1 -0
  128. package/build/server/chunks/chunks/auth-bootstrap.server.js-2xuTUNHO.js +162 -0
  129. package/build/server/chunks/chunks/auth-bootstrap.server.js-2xuTUNHO.js.map +1 -0
  130. package/build/server/chunks/chunks/auth.server.js-CnOciBEi.js +2 -0
  131. package/build/server/chunks/chunks/auth.server.js-CnOciBEi.js.map +1 -0
  132. package/build/server/chunks/chunks/bootHealth.server.js-MXd4euZW.js +91 -0
  133. package/build/server/chunks/chunks/bootHealth.server.js-MXd4euZW.js.map +1 -0
  134. package/build/server/chunks/chunks/client.js-D-cqOdzj.js +58 -0
  135. package/build/server/chunks/chunks/client.js-D-cqOdzj.js.map +1 -0
  136. package/build/server/chunks/chunks/clientCache.server.js-DB1NkYeo.js +195 -0
  137. package/build/server/chunks/chunks/clientCache.server.js-DB1NkYeo.js.map +1 -0
  138. package/build/server/chunks/chunks/computeLimits.js-B_SlcTdp.js +48 -0
  139. package/build/server/chunks/chunks/computeLimits.js-B_SlcTdp.js.map +1 -0
  140. package/build/server/chunks/chunks/evictChangedServers.js-G5on-4-K.js +29 -0
  141. package/build/server/chunks/chunks/evictChangedServers.js-G5on-4-K.js.map +1 -0
  142. package/build/server/chunks/chunks/forms.js-DT1udT9D.js +2 -0
  143. package/build/server/chunks/chunks/forms.js-DT1udT9D.js.map +1 -0
  144. package/build/server/chunks/chunks/internal.js-WBVEU67X.js.map +1 -1
  145. package/build/server/chunks/chunks/internal2.js-CWvNgH57.js +224 -0
  146. package/build/server/chunks/chunks/internal2.js-CWvNgH57.js.map +1 -0
  147. package/build/server/chunks/chunks/navigation.js-DT1udT9D.js +2 -0
  148. package/build/server/chunks/chunks/navigation.js-DT1udT9D.js.map +1 -0
  149. package/build/server/chunks/chunks/org-members.server.js-CWd6Guql.js +35 -0
  150. package/build/server/chunks/chunks/org-members.server.js-CWd6Guql.js.map +1 -0
  151. package/build/server/chunks/chunks/package.js-fCdNMx2E.js +76 -0
  152. package/build/server/chunks/chunks/package.js-fCdNMx2E.js.map +1 -0
  153. package/build/server/chunks/chunks/permissions.server.js-CTvpP-8K.js +15 -0
  154. package/build/server/chunks/chunks/permissions.server.js-CTvpP-8K.js.map +1 -0
  155. package/build/server/chunks/chunks/providers.server.js-Wjp7cRza.js +6312 -0
  156. package/build/server/chunks/chunks/providers.server.js-Wjp7cRza.js.map +1 -0
  157. package/build/server/chunks/chunks/resolve.server.js-sJadSbGv.js +62 -0
  158. package/build/server/chunks/chunks/resolve.server.js-sJadSbGv.js.map +1 -0
  159. package/build/server/chunks/chunks/selfUpdate.server.js-CUzx8d4Z.js +152 -0
  160. package/build/server/chunks/chunks/selfUpdate.server.js-CUzx8d4Z.js.map +1 -0
  161. package/build/server/chunks/chunks/state.js-0D9l5k29.js +64 -0
  162. package/build/server/chunks/chunks/state.js-0D9l5k29.js.map +1 -0
  163. package/build/server/chunks/chunks/stores.js-ByO7j12C.js +35 -0
  164. package/build/server/chunks/chunks/stores.js-ByO7j12C.js.map +1 -0
  165. package/build/server/chunks/chunks/utils2.js-DzUQOoCX.js +62 -0
  166. package/build/server/chunks/chunks/utils2.js-DzUQOoCX.js.map +1 -0
  167. package/build/server/chunks/entries/endpoints/admin/api/compute/_server.ts.js-CSSjL1aU.js +93 -0
  168. package/build/server/chunks/entries/endpoints/admin/api/compute/_server.ts.js-CSSjL1aU.js.map +1 -0
  169. package/build/server/chunks/entries/endpoints/admin/api/compute/actions/_server.ts.js-CMq4u8W0.js +53 -0
  170. package/build/server/chunks/entries/endpoints/admin/api/compute/actions/_server.ts.js-CMq4u8W0.js.map +1 -0
  171. package/build/server/chunks/entries/endpoints/admin/api/compute/status/_server.ts.js-fdh4b1g6.js +79 -0
  172. package/build/server/chunks/entries/endpoints/admin/api/compute/status/_server.ts.js-fdh4b1g6.js.map +1 -0
  173. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/_server.ts.js-BpJ3JwCW.js +50 -0
  174. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/_server.ts.js-BpJ3JwCW.js.map +1 -0
  175. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/assets/_kind_/_server.ts.js-C7N8_NaN.js +86 -0
  176. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/assets/_kind_/_server.ts.js-C7N8_NaN.js.map +1 -0
  177. package/build/server/chunks/entries/endpoints/admin/api/orgs/_server.ts.js-NEuAvShS.js +72 -0
  178. package/build/server/chunks/entries/endpoints/admin/api/orgs/_server.ts.js-NEuAvShS.js.map +1 -0
  179. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/_server.ts.js-D97Zcsl3.js +74 -0
  180. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/_server.ts.js-D97Zcsl3.js.map +1 -0
  181. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/_grantId_/_server.ts.js-B6TojUBT.js +34 -0
  182. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/_grantId_/_server.ts.js-B6TojUBT.js.map +1 -0
  183. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/_server.ts.js-CQfCYMlk.js +71 -0
  184. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/_server.ts.js-CQfCYMlk.js.map +1 -0
  185. package/build/server/chunks/entries/endpoints/admin/api/projects/_server.ts.js-Gyjialsx.js +103 -0
  186. package/build/server/chunks/entries/endpoints/admin/api/projects/_server.ts.js-Gyjialsx.js.map +1 -0
  187. package/build/server/chunks/entries/endpoints/admin/api/system/health/_server.ts.js-DSpJSpmq.js +208 -0
  188. package/build/server/chunks/entries/endpoints/admin/api/system/health/_server.ts.js-DSpJSpmq.js.map +1 -0
  189. package/build/server/chunks/entries/endpoints/admin/api/system/throughput/_server.ts.js-BjnIUQv7.js +90 -0
  190. package/build/server/chunks/entries/endpoints/admin/api/system/throughput/_server.ts.js-BjnIUQv7.js.map +1 -0
  191. package/build/server/chunks/entries/endpoints/admin/api/system/update/_server.ts.js-CXE4GneZ.js +403 -0
  192. package/build/server/chunks/entries/endpoints/admin/api/system/update/_server.ts.js-CXE4GneZ.js.map +1 -0
  193. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/_server.ts.js-Bk8THYuD.js +76 -0
  194. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/_server.ts.js-Bk8THYuD.js.map +1 -0
  195. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/disable/_server.ts.js-B4doN1wn.js +46 -0
  196. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/disable/_server.ts.js-B4doN1wn.js.map +1 -0
  197. package/build/server/chunks/entries/endpoints/admin/api/users/_server.ts.js-C4oeSdME.js +86 -0
  198. package/build/server/chunks/entries/endpoints/admin/api/users/_server.ts.js-C4oeSdME.js.map +1 -0
  199. package/build/server/chunks/entries/endpoints/api/compute/_server.ts.js-DEYsMeB-.js +0 -0
  200. package/build/server/chunks/entries/endpoints/api/compute/_server.ts.js-DEYsMeB-.js.map +1 -0
  201. package/build/server/chunks/entries/endpoints/api/compute/schema/_server.ts.js-DFfzNLtj.js +68 -0
  202. package/build/server/chunks/entries/endpoints/api/compute/schema/_server.ts.js-DFfzNLtj.js.map +1 -0
  203. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/_server.ts.js-DcdyTQq_.js +75 -0
  204. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/_server.ts.js-DcdyTQq_.js.map +1 -0
  205. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_filename_/_server.ts.js-BvxZZthH.js +46 -0
  206. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_filename_/_server.ts.js-BvxZZthH.js.map +1 -0
  207. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_server.ts.js-CO3TnH5n.js +44 -0
  208. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_server.ts.js-CO3TnH5n.js.map +1 -0
  209. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/publish/_server.ts.js-CQLfmHeQ.js +40 -0
  210. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/publish/_server.ts.js-CQLfmHeQ.js.map +1 -0
  211. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_linkId_/_server.ts.js-CmX16JIT.js +46 -0
  212. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_linkId_/_server.ts.js-CmX16JIT.js.map +1 -0
  213. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_server.ts.js-Xi54QgJT.js +84 -0
  214. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_server.ts.js-Xi54QgJT.js.map +1 -0
  215. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/_server.ts.js-DArge1B-.js +47 -0
  216. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/_server.ts.js-DArge1B-.js.map +1 -0
  217. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/_versionId_/_server.ts.js-CA5kyuF4.js +40 -0
  218. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/_versionId_/_server.ts.js-CA5kyuF4.js.map +1 -0
  219. package/build/server/chunks/entries/endpoints/api/definitions/_server.ts.js-D8V5knOs.js +94 -0
  220. package/build/server/chunks/entries/endpoints/api/definitions/_server.ts.js-D8V5knOs.js.map +1 -0
  221. package/build/server/chunks/entries/endpoints/api/diag/throughput/_server.ts.js-8fiP1Kvb.js +59 -0
  222. package/build/server/chunks/entries/endpoints/api/diag/throughput/_server.ts.js-8fiP1Kvb.js.map +1 -0
  223. package/build/server/chunks/entries/endpoints/api/files/_...path_/_server.ts.js-D00SGxLm.js +89 -0
  224. package/build/server/chunks/entries/endpoints/api/files/_...path_/_server.ts.js-D00SGxLm.js.map +1 -0
  225. package/build/server/chunks/entries/endpoints/api/health/_server.ts.js-2iVLHYFq.js +56 -0
  226. package/build/server/chunks/entries/endpoints/api/health/_server.ts.js-2iVLHYFq.js.map +1 -0
  227. package/build/server/chunks/entries/endpoints/api/invites/_id_/_server.ts.js-BAC7u5_k.js +49 -0
  228. package/build/server/chunks/entries/endpoints/api/invites/_id_/_server.ts.js-BAC7u5_k.js.map +1 -0
  229. package/build/server/chunks/entries/endpoints/api/invites/_server.ts.js-BsGsD_EG.js +77 -0
  230. package/build/server/chunks/entries/endpoints/api/invites/_server.ts.js-BsGsD_EG.js.map +1 -0
  231. package/build/server/chunks/entries/endpoints/api/me/starred/_guid_/_server.ts.js-Bg1VMXkr.js +45 -0
  232. package/build/server/chunks/entries/endpoints/api/me/starred/_guid_/_server.ts.js-Bg1VMXkr.js.map +1 -0
  233. package/build/server/chunks/entries/endpoints/api/org/compute/_server.ts.js-BgM1YoUT.js +110 -0
  234. package/build/server/chunks/entries/endpoints/api/org/compute/_server.ts.js-BgM1YoUT.js.map +1 -0
  235. package/build/server/chunks/entries/endpoints/api/orgs/_orgId_/members/_userId_/_server.ts.js-DTBgdsQ-.js +79 -0
  236. package/build/server/chunks/entries/endpoints/api/orgs/_orgId_/members/_userId_/_server.ts.js-DTBgdsQ-.js.map +1 -0
  237. package/build/server/chunks/entries/endpoints/api/projects/_id_/_server.ts.js-CkxHsZUH.js +71 -0
  238. package/build/server/chunks/entries/endpoints/api/projects/_id_/_server.ts.js-CkxHsZUH.js.map +1 -0
  239. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/_server.ts.js-Gw2Y_4NQ.js +65 -0
  240. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/_server.ts.js-Gw2Y_4NQ.js.map +1 -0
  241. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/_userId_/_server.ts.js-UbN3QXPq.js +64 -0
  242. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/_userId_/_server.ts.js-UbN3QXPq.js.map +1 -0
  243. package/build/server/chunks/entries/endpoints/api/projects/_id_/reclaim/_server.ts.js-CPI5Lgo_.js +48 -0
  244. package/build/server/chunks/entries/endpoints/api/projects/_id_/reclaim/_server.ts.js-CPI5Lgo_.js.map +1 -0
  245. package/build/server/chunks/entries/endpoints/api/projects/_server.ts.js-B8r1kMW3.js +85 -0
  246. package/build/server/chunks/entries/endpoints/api/projects/_server.ts.js-B8r1kMW3.js.map +1 -0
  247. package/build/server/chunks/entries/endpoints/auth/email/callback/_server.ts.js-Bb915SbG.js +48 -0
  248. package/build/server/chunks/entries/endpoints/auth/email/callback/_server.ts.js-Bb915SbG.js.map +1 -0
  249. package/build/server/chunks/entries/endpoints/auth/supabase/callback/_server.ts.js-5SMFLI8g.js +52 -0
  250. package/build/server/chunks/entries/endpoints/auth/supabase/callback/_server.ts.js-5SMFLI8g.js.map +1 -0
  251. package/build/server/chunks/entries/endpoints/auth/supabase/start/_server.ts.js-lGwb9U-4.js +51 -0
  252. package/build/server/chunks/entries/endpoints/auth/supabase/start/_server.ts.js-lGwb9U-4.js.map +1 -0
  253. package/build/server/chunks/entries/hooks.server.js-DePwqtK0.js +341 -0
  254. package/build/server/chunks/entries/hooks.server.js-DePwqtK0.js.map +1 -0
  255. package/build/server/chunks/entries/pages/_error.svelte.js-CWCmCecR.js +35 -0
  256. package/build/server/chunks/entries/pages/_error.svelte.js-CWCmCecR.js.map +1 -0
  257. package/build/server/chunks/entries/pages/_layout.server.ts.js-B6KYjzmH.js +34 -0
  258. package/build/server/chunks/entries/pages/_layout.server.ts.js-B6KYjzmH.js.map +1 -0
  259. package/build/server/chunks/entries/pages/_page.svelte.js-CI8uwVff.js +76 -0
  260. package/build/server/chunks/entries/pages/_page.svelte.js-CI8uwVff.js.map +1 -0
  261. package/build/server/chunks/entries/pages/accept-invite/_page.server.ts.js-DSfBzMqL.js +109 -0
  262. package/build/server/chunks/entries/pages/accept-invite/_page.server.ts.js-DSfBzMqL.js.map +1 -0
  263. package/build/server/chunks/entries/pages/accept-invite/_page.svelte.js-CQQAFwl1.js +148 -0
  264. package/build/server/chunks/entries/pages/accept-invite/_page.svelte.js-CQQAFwl1.js.map +1 -0
  265. package/build/server/chunks/entries/pages/admin/_error.svelte.js-C96JJBHE.js +36 -0
  266. package/build/server/chunks/entries/pages/admin/_error.svelte.js-C96JJBHE.js.map +1 -0
  267. package/build/server/chunks/entries/pages/admin/_layout.server.ts.js-CXC4E9hR.js +31 -0
  268. package/build/server/chunks/entries/pages/admin/_layout.server.ts.js-CXC4E9hR.js.map +1 -0
  269. package/build/server/chunks/entries/pages/admin/_layout.svelte.js-VKAqu-dr.js +121 -0
  270. package/build/server/chunks/entries/pages/admin/_layout.svelte.js-VKAqu-dr.js.map +1 -0
  271. package/build/server/chunks/entries/pages/admin/_page.server.ts.js-DCjhQohV.js +75 -0
  272. package/build/server/chunks/entries/pages/admin/_page.server.ts.js-DCjhQohV.js.map +1 -0
  273. package/build/server/chunks/entries/pages/admin/_page.svelte.js-CaRZ22CF.js +359 -0
  274. package/build/server/chunks/entries/pages/admin/_page.svelte.js-CaRZ22CF.js.map +1 -0
  275. package/build/server/chunks/entries/pages/admin/audit/_page.server.ts.js-DXv7dWhK.js +245 -0
  276. package/build/server/chunks/entries/pages/admin/audit/_page.server.ts.js-DXv7dWhK.js.map +1 -0
  277. package/build/server/chunks/entries/pages/admin/compute/_page.server.ts.js-DTScln2J.js +45 -0
  278. package/build/server/chunks/entries/pages/admin/compute/_page.server.ts.js-DTScln2J.js.map +1 -0
  279. package/build/server/chunks/entries/pages/admin/compute/_page.svelte.js-BheaUvpz.js +612 -0
  280. package/build/server/chunks/entries/pages/admin/compute/_page.svelte.js-BheaUvpz.js.map +1 -0
  281. package/build/server/chunks/entries/pages/admin/organizations/_page.server.ts.js-Cmg3zFs-.js +35 -0
  282. package/build/server/chunks/entries/pages/admin/organizations/_page.server.ts.js-Cmg3zFs-.js.map +1 -0
  283. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.server.ts.js-CpVVJpVi.js +86 -0
  284. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.server.ts.js-CpVVJpVi.js.map +1 -0
  285. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.svelte.js-DMOvTFjN.js +616 -0
  286. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.svelte.js-DMOvTFjN.js.map +1 -0
  287. package/build/server/chunks/entries/pages/admin/projects/_page.server.ts.js-d_rFu7ap.js +42 -0
  288. package/build/server/chunks/entries/pages/admin/projects/_page.server.ts.js-d_rFu7ap.js.map +1 -0
  289. package/build/server/chunks/entries/pages/admin/projects/_page.svelte.js-DvO9y2XD.js +282 -0
  290. package/build/server/chunks/entries/pages/admin/projects/_page.svelte.js-DvO9y2XD.js.map +1 -0
  291. package/build/server/chunks/entries/pages/admin/system/_page.server.ts.js-BOGl22j9.js +79 -0
  292. package/build/server/chunks/entries/pages/admin/system/_page.server.ts.js-BOGl22j9.js.map +1 -0
  293. package/build/server/chunks/entries/pages/admin/system/_page.svelte.js-CovWU5Af.js +1363 -0
  294. package/build/server/chunks/entries/pages/admin/system/_page.svelte.js-CovWU5Af.js.map +1 -0
  295. package/build/server/chunks/entries/pages/admin/users/_page.server.ts.js-jrtfuXDZ.js +70 -0
  296. package/build/server/chunks/entries/pages/admin/users/_page.server.ts.js-jrtfuXDZ.js.map +1 -0
  297. package/build/server/chunks/entries/pages/admin/users/_page.svelte.js-2mav2es6.js +681 -0
  298. package/build/server/chunks/entries/pages/admin/users/_page.svelte.js-2mav2es6.js.map +1 -0
  299. package/build/server/chunks/entries/pages/auth/email/sent/_page.svelte.js-TqjhNJn4.js +62 -0
  300. package/build/server/chunks/entries/pages/auth/email/sent/_page.svelte.js-TqjhNJn4.js.map +1 -0
  301. package/build/server/chunks/entries/pages/auth/email/start/_page.server.ts.js-CsEVG4Qi.js +62 -0
  302. package/build/server/chunks/entries/pages/auth/email/start/_page.server.ts.js-CsEVG4Qi.js.map +1 -0
  303. package/build/server/chunks/entries/pages/library/_guid_/_page.server.ts.js-D4BsGogS.js +124 -0
  304. package/build/server/chunks/entries/pages/library/_guid_/_page.server.ts.js-D4BsGogS.js.map +1 -0
  305. package/build/server/chunks/entries/pages/library/_guid_/_page.svelte.js-02voe6h3.js +12096 -0
  306. package/build/server/chunks/entries/pages/library/_guid_/_page.svelte.js-02voe6h3.js.map +1 -0
  307. package/build/server/chunks/entries/pages/library/_page.server.ts.js-DoZYMSFL.js +73 -0
  308. package/build/server/chunks/entries/pages/library/_page.server.ts.js-DoZYMSFL.js.map +1 -0
  309. package/build/server/chunks/entries/pages/library/_page.svelte.js-kQg7prrI.js +328 -0
  310. package/build/server/chunks/entries/pages/library/_page.svelte.js-kQg7prrI.js.map +1 -0
  311. package/build/server/chunks/entries/pages/login/_page.server.ts.js-crSVM6nE.js +76 -0
  312. package/build/server/chunks/entries/pages/login/_page.server.ts.js-crSVM6nE.js.map +1 -0
  313. package/build/server/chunks/entries/pages/login/_page.svelte.js-DFc8B7zz.js +256 -0
  314. package/build/server/chunks/entries/pages/login/_page.svelte.js-DFc8B7zz.js.map +1 -0
  315. package/build/server/chunks/entries/pages/projects/_layout.svelte.js-C0WQJqig.js +49 -0
  316. package/build/server/chunks/entries/pages/projects/_layout.svelte.js-C0WQJqig.js.map +1 -0
  317. package/build/server/chunks/entries/pages/projects/_page.server.ts.js-DF1WeYyF.js +101 -0
  318. package/build/server/chunks/entries/pages/projects/_page.server.ts.js-DF1WeYyF.js.map +1 -0
  319. package/build/server/chunks/entries/pages/projects/_page.svelte.js-UA4Ub5QH.js +3770 -0
  320. package/build/server/chunks/entries/pages/projects/_page.svelte.js-UA4Ub5QH.js.map +1 -0
  321. package/build/server/chunks/entries/pages/setup/_page.server.ts.js-DH6_gIb7.js +113 -0
  322. package/build/server/chunks/entries/pages/setup/_page.server.ts.js-DH6_gIb7.js.map +1 -0
  323. package/build/server/chunks/entries/pages/setup/_page.svelte.js-DdjWjdMZ.js +321 -0
  324. package/build/server/chunks/entries/pages/setup/_page.svelte.js-DdjWjdMZ.js.map +1 -0
  325. package/build/server/chunks/entries/pages/team/_layout.server.ts.js-DLa2-7lS.js +28 -0
  326. package/build/server/chunks/entries/pages/team/_layout.server.ts.js-DLa2-7lS.js.map +1 -0
  327. package/build/server/chunks/entries/pages/team/_layout.svelte.js-DcS_pi8Q.js +162 -0
  328. package/build/server/chunks/entries/pages/team/_layout.svelte.js-DcS_pi8Q.js.map +1 -0
  329. package/build/server/chunks/entries/pages/team/_page.server.ts.js-DGAiQdZI.js +35 -0
  330. package/build/server/chunks/entries/pages/team/_page.server.ts.js-DGAiQdZI.js.map +1 -0
  331. package/build/server/chunks/entries/pages/team/compute/_page.server.ts.js-CYiX10yQ.js +42 -0
  332. package/build/server/chunks/entries/pages/team/compute/_page.server.ts.js-CYiX10yQ.js.map +1 -0
  333. package/build/server/chunks/entries/pages/team/compute/_page.svelte.js-x-kNR95q.js +593 -0
  334. package/build/server/chunks/entries/pages/team/compute/_page.svelte.js-x-kNR95q.js.map +1 -0
  335. package/build/server/chunks/entries/pages/team/members/_page.server.ts.js-C2oNd-tt.js +58 -0
  336. package/build/server/chunks/entries/pages/team/members/_page.server.ts.js-C2oNd-tt.js.map +1 -0
  337. package/build/server/chunks/entries/pages/team/members/_page.svelte.js-BnZELsgA.js +539 -0
  338. package/build/server/chunks/entries/pages/team/members/_page.svelte.js-BnZELsgA.js.map +1 -0
  339. package/build/server/chunks/entries/pages/team/projects/_page.server.ts.js-DbK6fG9x.js +42 -0
  340. package/build/server/chunks/entries/pages/team/projects/_page.server.ts.js-DbK6fG9x.js.map +1 -0
  341. package/build/server/chunks/entries/pages/team/projects/_page.svelte.js-CNvUx0-V.js +436 -0
  342. package/build/server/chunks/entries/pages/team/projects/_page.svelte.js-CNvUx0-V.js.map +1 -0
  343. package/build/server/chunks/entries/pages/team/reclaim/_page.server.ts.js-Covcwasu.js +50 -0
  344. package/build/server/chunks/entries/pages/team/reclaim/_page.server.ts.js-Covcwasu.js.map +1 -0
  345. package/build/server/chunks/entries/pages/team/reclaim/_page.svelte.js-BI6Y_-xD.js +262 -0
  346. package/build/server/chunks/entries/pages/team/reclaim/_page.svelte.js-BI6Y_-xD.js.map +1 -0
  347. package/build/server/chunks/entries/pages/team/settings/_page.server.ts.js-Cts7JADL.js +32 -0
  348. package/build/server/chunks/entries/pages/team/settings/_page.server.ts.js-Cts7JADL.js.map +1 -0
  349. package/build/server/chunks/entries/pages/team/shares/_page.server.ts.js-DrDde3K0.js +16 -0
  350. package/build/server/chunks/entries/pages/team/shares/_page.server.ts.js-DrDde3K0.js.map +1 -0
  351. package/build/server/chunks/handler-ZE5xWjCD.js +1206 -0
  352. package/build/server/chunks/handler-ZE5xWjCD.js.map +1 -0
  353. package/build/server/chunks/index.js-B6xuXumZ.js +3747 -0
  354. package/build/server/chunks/index.js-B6xuXumZ.js.map +1 -0
  355. package/build/server/chunks/manifest.js-BwdukJwC.js +548 -0
  356. package/build/server/chunks/manifest.js-BwdukJwC.js.map +1 -0
  357. package/build/server/chunks/nodes/0.js-DKuQ3PA2.js +25 -0
  358. package/build/server/chunks/nodes/0.js-DKuQ3PA2.js.map +1 -0
  359. package/build/server/chunks/nodes/1.js-mHFYMGF2.js +9 -0
  360. package/build/server/chunks/nodes/1.js-mHFYMGF2.js.map +1 -0
  361. package/build/server/chunks/nodes/10.js-BN9OT7So.js +27 -0
  362. package/build/server/chunks/nodes/10.js-BN9OT7So.js.map +1 -0
  363. package/build/server/chunks/nodes/11.js-DM3Hz345.js +28 -0
  364. package/build/server/chunks/nodes/11.js-DM3Hz345.js.map +1 -0
  365. package/build/server/chunks/nodes/12.js-D0tJacZx.js +26 -0
  366. package/build/server/chunks/nodes/12.js-D0tJacZx.js.map +1 -0
  367. package/build/server/chunks/nodes/13.js-BqvfcLwo.js +26 -0
  368. package/build/server/chunks/nodes/13.js-BqvfcLwo.js.map +1 -0
  369. package/build/server/chunks/nodes/14.js-CngfosqV.js +26 -0
  370. package/build/server/chunks/nodes/14.js-CngfosqV.js.map +1 -0
  371. package/build/server/chunks/nodes/15.js-DwNNUCsj.js +38 -0
  372. package/build/server/chunks/nodes/15.js-DwNNUCsj.js.map +1 -0
  373. package/build/server/chunks/nodes/16.js-D_LnVEKm.js +29 -0
  374. package/build/server/chunks/nodes/16.js-D_LnVEKm.js.map +1 -0
  375. package/build/server/chunks/nodes/17.js-Cae_zNwu.js +9 -0
  376. package/build/server/chunks/nodes/17.js-Cae_zNwu.js.map +1 -0
  377. package/build/server/chunks/nodes/18.js-BiSh_xo0.js +34 -0
  378. package/build/server/chunks/nodes/18.js-BiSh_xo0.js.map +1 -0
  379. package/build/server/chunks/nodes/19.js-Di2BtNSf.js +27 -0
  380. package/build/server/chunks/nodes/19.js-Di2BtNSf.js.map +1 -0
  381. package/build/server/chunks/nodes/2.js-DIKJP0o1.js +27 -0
  382. package/build/server/chunks/nodes/2.js-DIKJP0o1.js.map +1 -0
  383. package/build/server/chunks/nodes/20.js-Drhlsfzl.js +40 -0
  384. package/build/server/chunks/nodes/20.js-Drhlsfzl.js.map +1 -0
  385. package/build/server/chunks/nodes/21.js-CWGLNePo.js +34 -0
  386. package/build/server/chunks/nodes/21.js-CWGLNePo.js.map +1 -0
  387. package/build/server/chunks/nodes/23.js-Brf-hDaf.js +28 -0
  388. package/build/server/chunks/nodes/23.js-Brf-hDaf.js.map +1 -0
  389. package/build/server/chunks/nodes/24.js-B99rorTq.js +34 -0
  390. package/build/server/chunks/nodes/24.js-B99rorTq.js.map +1 -0
  391. package/build/server/chunks/nodes/25.js-D9rFPXHZ.js +26 -0
  392. package/build/server/chunks/nodes/25.js-D9rFPXHZ.js.map +1 -0
  393. package/build/server/chunks/nodes/27.js-C7PvXWdZ.js +27 -0
  394. package/build/server/chunks/nodes/27.js-C7PvXWdZ.js.map +1 -0
  395. package/build/server/chunks/nodes/28.js-DJNPfQkg.js +26 -0
  396. package/build/server/chunks/nodes/28.js-DJNPfQkg.js.map +1 -0
  397. package/build/server/chunks/nodes/29.js-C_MjxADb.js +26 -0
  398. package/build/server/chunks/nodes/29.js-C_MjxADb.js.map +1 -0
  399. package/build/server/chunks/nodes/3.js-DjlKd1FC.js +9 -0
  400. package/build/server/chunks/nodes/3.js-DjlKd1FC.js.map +1 -0
  401. package/build/server/chunks/nodes/30.js-BHRjlMrP.js +26 -0
  402. package/build/server/chunks/nodes/30.js-BHRjlMrP.js.map +1 -0
  403. package/build/server/chunks/nodes/31.js-C7qEcMAp.js +26 -0
  404. package/build/server/chunks/nodes/31.js-C7qEcMAp.js.map +1 -0
  405. package/build/server/chunks/nodes/32.js-z0efXLLV.js +26 -0
  406. package/build/server/chunks/nodes/32.js-z0efXLLV.js.map +1 -0
  407. package/build/server/chunks/nodes/5.js-CFhg0Xbu.js +15 -0
  408. package/build/server/chunks/nodes/5.js-CFhg0Xbu.js.map +1 -0
  409. package/build/server/chunks/nodes/6.js-D_hWn87f.js +26 -0
  410. package/build/server/chunks/nodes/6.js-D_hWn87f.js.map +1 -0
  411. package/build/server/chunks/nodes/7.js-D5_GW-qV.js +12 -0
  412. package/build/server/chunks/nodes/7.js-D5_GW-qV.js.map +1 -0
  413. package/build/server/chunks/nodes/8.js-C-l5tKPg.js +35 -0
  414. package/build/server/chunks/nodes/8.js-C-l5tKPg.js.map +1 -0
  415. package/build/server/chunks/nodes/9.js-CxwOKm_Y.js +26 -0
  416. package/build/server/chunks/nodes/9.js-CxwOKm_Y.js.map +1 -0
  417. package/package.json +6 -6
  418. package/build/client/_app/immutable/assets/0.CHkzgE-e.css +0 -2
  419. package/build/client/_app/immutable/assets/0.CHkzgE-e.css.br +0 -0
  420. package/build/client/_app/immutable/assets/0.CHkzgE-e.css.gz +0 -0
  421. package/build/client/_app/immutable/assets/rhino3dm.BI8ESrUA.wasm +0 -0
  422. package/build/client/_app/immutable/assets/rhino3dm.BI8ESrUA.wasm.br +0 -0
  423. package/build/client/_app/immutable/assets/rhino3dm.BI8ESrUA.wasm.gz +0 -0
  424. package/build/client/_app/immutable/chunks/BGbIB54K2.js +0 -35
  425. package/build/client/_app/immutable/chunks/BGbIB54K2.js.br +0 -0
  426. package/build/client/_app/immutable/chunks/BGbIB54K2.js.gz +0 -0
  427. package/build/client/_app/immutable/chunks/BPBitdYF2.js +0 -1
  428. package/build/client/_app/immutable/chunks/BPBitdYF2.js.br +0 -2
  429. package/build/client/_app/immutable/chunks/BPBitdYF2.js.gz +0 -0
  430. package/build/client/_app/immutable/chunks/CFZAGLaG.js +0 -1
  431. package/build/client/_app/immutable/chunks/CFZAGLaG.js.br +0 -0
  432. package/build/client/_app/immutable/chunks/CFZAGLaG.js.gz +0 -0
  433. package/build/client/_app/immutable/chunks/DdMrdjcg.js +0 -2
  434. package/build/client/_app/immutable/chunks/DdMrdjcg.js.br +0 -0
  435. package/build/client/_app/immutable/chunks/DdMrdjcg.js.gz +0 -0
  436. package/build/client/_app/immutable/chunks/Dsn1fz8W2.js +0 -1
  437. package/build/client/_app/immutable/chunks/Dsn1fz8W2.js.br +0 -0
  438. package/build/client/_app/immutable/chunks/Dsn1fz8W2.js.gz +0 -0
  439. package/build/client/_app/immutable/chunks/fTSQz1Kg2.js +0 -1
  440. package/build/client/_app/immutable/chunks/fTSQz1Kg2.js.br +0 -0
  441. package/build/client/_app/immutable/chunks/fTSQz1Kg2.js.gz +0 -0
  442. package/build/client/_app/immutable/chunks/i3ciDDDG.js +0 -2
  443. package/build/client/_app/immutable/chunks/i3ciDDDG.js.br +0 -0
  444. package/build/client/_app/immutable/chunks/i3ciDDDG.js.gz +0 -0
  445. package/build/client/_app/immutable/chunks/trjcEs8l.js +0 -1
  446. package/build/client/_app/immutable/chunks/trjcEs8l.js.br +0 -0
  447. package/build/client/_app/immutable/chunks/trjcEs8l.js.gz +0 -0
  448. package/build/client/_app/immutable/chunks/wdAk4dta.js +0 -1
  449. package/build/client/_app/immutable/chunks/wdAk4dta.js.br +0 -2
  450. package/build/client/_app/immutable/chunks/wdAk4dta.js.gz +0 -0
  451. package/build/client/_app/immutable/entry/app.CrSndv5b.js +0 -2
  452. package/build/client/_app/immutable/entry/app.CrSndv5b.js.br +0 -0
  453. package/build/client/_app/immutable/entry/app.CrSndv5b.js.gz +0 -0
  454. package/build/client/_app/immutable/entry/start.CCPDJ6Xw.js +0 -1
  455. package/build/client/_app/immutable/entry/start.CCPDJ6Xw.js.br +0 -0
  456. package/build/client/_app/immutable/entry/start.CCPDJ6Xw.js.gz +0 -0
  457. package/build/client/_app/immutable/nodes/1.BTI-41f5.js +0 -1
  458. package/build/client/_app/immutable/nodes/1.BTI-41f5.js.br +0 -0
  459. package/build/client/_app/immutable/nodes/1.BTI-41f5.js.gz +0 -0
  460. package/build/client/_app/immutable/nodes/11.BbJzwklN.js +0 -2
  461. package/build/client/_app/immutable/nodes/11.BbJzwklN.js.br +0 -0
  462. package/build/client/_app/immutable/nodes/11.BbJzwklN.js.gz +0 -0
  463. package/build/client/_app/immutable/nodes/13.Rsrqnc4K.js +0 -2
  464. package/build/client/_app/immutable/nodes/13.Rsrqnc4K.js.br +0 -0
  465. package/build/client/_app/immutable/nodes/13.Rsrqnc4K.js.gz +0 -0
  466. package/build/client/_app/immutable/nodes/14.C5UlQUj6.js +0 -2
  467. package/build/client/_app/immutable/nodes/14.C5UlQUj6.js.br +0 -0
  468. package/build/client/_app/immutable/nodes/14.C5UlQUj6.js.gz +0 -0
  469. package/build/client/_app/immutable/nodes/15.BGjzK93z.js +0 -21
  470. package/build/client/_app/immutable/nodes/15.BGjzK93z.js.br +0 -0
  471. package/build/client/_app/immutable/nodes/15.BGjzK93z.js.gz +0 -0
  472. package/build/client/_app/immutable/nodes/16.BSVt8WLC.js +0 -6
  473. package/build/client/_app/immutable/nodes/16.BSVt8WLC.js.br +0 -0
  474. package/build/client/_app/immutable/nodes/16.BSVt8WLC.js.gz +0 -0
  475. package/build/client/_app/immutable/nodes/17.CPH7i8QF.js +0 -2
  476. package/build/client/_app/immutable/nodes/17.CPH7i8QF.js.br +0 -0
  477. package/build/client/_app/immutable/nodes/17.CPH7i8QF.js.gz +0 -0
  478. package/build/client/_app/immutable/nodes/19.DhzUTVYU.js +0 -2
  479. package/build/client/_app/immutable/nodes/19.DhzUTVYU.js.br +0 -0
  480. package/build/client/_app/immutable/nodes/19.DhzUTVYU.js.gz +0 -0
  481. package/build/client/_app/immutable/nodes/2.BWA5iacm.js +0 -1
  482. package/build/client/_app/immutable/nodes/2.BWA5iacm.js.br +0 -0
  483. package/build/client/_app/immutable/nodes/2.BWA5iacm.js.gz +0 -0
  484. package/build/client/_app/immutable/nodes/20.CbLCGp2k.js +0 -12
  485. package/build/client/_app/immutable/nodes/20.CbLCGp2k.js.br +0 -0
  486. package/build/client/_app/immutable/nodes/20.CbLCGp2k.js.gz +0 -0
  487. package/build/client/_app/immutable/nodes/21.I56kfXdG.js +0 -6
  488. package/build/client/_app/immutable/nodes/21.I56kfXdG.js.br +0 -0
  489. package/build/client/_app/immutable/nodes/21.I56kfXdG.js.gz +0 -0
  490. package/build/client/_app/immutable/nodes/23.DbD-Ow3X.js +0 -16
  491. package/build/client/_app/immutable/nodes/23.DbD-Ow3X.js.br +0 -0
  492. package/build/client/_app/immutable/nodes/23.DbD-Ow3X.js.gz +0 -0
  493. package/build/client/_app/immutable/nodes/24.l6_jybsu.js +0 -6
  494. package/build/client/_app/immutable/nodes/24.l6_jybsu.js.br +0 -0
  495. package/build/client/_app/immutable/nodes/24.l6_jybsu.js.gz +0 -0
  496. package/build/client/_app/immutable/nodes/27.BTeDYfZi.js +0 -4
  497. package/build/client/_app/immutable/nodes/27.BTeDYfZi.js.br +0 -0
  498. package/build/client/_app/immutable/nodes/27.BTeDYfZi.js.gz +0 -0
  499. package/build/client/_app/immutable/nodes/28.KhJITPgY.js +0 -4
  500. package/build/client/_app/immutable/nodes/28.KhJITPgY.js.br +0 -0
  501. package/build/client/_app/immutable/nodes/28.KhJITPgY.js.gz +0 -0
  502. package/build/client/_app/immutable/nodes/29.BHUCwxdA.js +0 -2
  503. package/build/client/_app/immutable/nodes/29.BHUCwxdA.js.br +0 -0
  504. package/build/client/_app/immutable/nodes/29.BHUCwxdA.js.gz +0 -0
  505. package/build/client/_app/immutable/nodes/3.Dt5PzLy0.js +0 -1
  506. package/build/client/_app/immutable/nodes/3.Dt5PzLy0.js.br +0 -0
  507. package/build/client/_app/immutable/nodes/3.Dt5PzLy0.js.gz +0 -0
  508. package/build/client/_app/immutable/nodes/30.M54wXOIa.js +0 -2
  509. package/build/client/_app/immutable/nodes/30.M54wXOIa.js.br +0 -0
  510. package/build/client/_app/immutable/nodes/30.M54wXOIa.js.gz +0 -0
  511. package/build/client/_app/immutable/nodes/5.42Fl41jf.js +0 -1
  512. package/build/client/_app/immutable/nodes/5.42Fl41jf.js.br +0 -0
  513. package/build/client/_app/immutable/nodes/5.42Fl41jf.js.gz +0 -0
  514. package/build/client/_app/immutable/nodes/6.BmJHgXTt.js +0 -1
  515. package/build/client/_app/immutable/nodes/6.BmJHgXTt.js.br +0 -0
  516. package/build/client/_app/immutable/nodes/6.BmJHgXTt.js.gz +0 -0
  517. package/build/client/_app/immutable/nodes/7.BZqdw6YN.js +0 -1
  518. package/build/client/_app/immutable/nodes/7.BZqdw6YN.js.br +0 -0
  519. package/build/client/_app/immutable/nodes/7.BZqdw6YN.js.gz +0 -0
  520. package/build/client/_app/immutable/nodes/8.B1LKmT7t.js +0 -2
  521. package/build/client/_app/immutable/nodes/8.B1LKmT7t.js.br +0 -0
  522. package/build/client/_app/immutable/nodes/8.B1LKmT7t.js.gz +0 -0
  523. package/build/client/_app/immutable/nodes/9.B7dJ-0op.js +0 -1
  524. package/build/client/_app/immutable/nodes/9.B7dJ-0op.js.br +0 -0
  525. package/build/client/_app/immutable/nodes/9.B7dJ-0op.js.gz +0 -0
  526. package/build/server/chunks/chunks/AppHeader.js-7cJ1EcsG.js +0 -281
  527. package/build/server/chunks/chunks/AppHeader.js-7cJ1EcsG.js.map +0 -1
  528. package/build/server/chunks/chunks/SideNav.js-B1QWUE8U.js +0 -67
  529. package/build/server/chunks/chunks/SideNav.js-B1QWUE8U.js.map +0 -1
  530. package/build/server/chunks/chunks/UserChip.js-DCZWyxAb.js +0 -1163
  531. package/build/server/chunks/chunks/UserChip.js-DCZWyxAb.js.map +0 -1
  532. package/build/server/chunks/chunks/access.server.js-aJ141RPV.js +0 -453
  533. package/build/server/chunks/chunks/access.server.js-aJ141RPV.js.map +0 -1
  534. package/build/server/chunks/chunks/access2.server.js-BFemUtMV.js +0 -20
  535. package/build/server/chunks/chunks/access2.server.js-BFemUtMV.js.map +0 -1
  536. package/build/server/chunks/chunks/admin-config.js-DZLX-QS4.js +0 -3
  537. package/build/server/chunks/chunks/admin-config.js-DZLX-QS4.js.map +0 -1
  538. package/build/server/chunks/chunks/api-errors.js-DrpuLm84.js +0 -141
  539. package/build/server/chunks/chunks/api-errors.js-DrpuLm84.js.map +0 -1
  540. package/build/server/chunks/chunks/auth-bootstrap.server.js-tG8Ad_6I.js +0 -162
  541. package/build/server/chunks/chunks/auth-bootstrap.server.js-tG8Ad_6I.js.map +0 -1
  542. package/build/server/chunks/chunks/auth.server.js-CXqdXZCz.js +0 -2
  543. package/build/server/chunks/chunks/auth.server.js-CXqdXZCz.js.map +0 -1
  544. package/build/server/chunks/chunks/bootHealth.server.js-DPLyorD9.js +0 -91
  545. package/build/server/chunks/chunks/bootHealth.server.js-DPLyorD9.js.map +0 -1
  546. package/build/server/chunks/chunks/client.js-DlB2VO4L.js +0 -58
  547. package/build/server/chunks/chunks/client.js-DlB2VO4L.js.map +0 -1
  548. package/build/server/chunks/chunks/clientCache.server.js-BCaSztNc.js +0 -195
  549. package/build/server/chunks/chunks/clientCache.server.js-BCaSztNc.js.map +0 -1
  550. package/build/server/chunks/chunks/computeLimits.js-CdZ4dOBZ.js +0 -48
  551. package/build/server/chunks/chunks/computeLimits.js-CdZ4dOBZ.js.map +0 -1
  552. package/build/server/chunks/chunks/evictChangedServers.js-BVKGKc-5.js +0 -29
  553. package/build/server/chunks/chunks/evictChangedServers.js-BVKGKc-5.js.map +0 -1
  554. package/build/server/chunks/chunks/forms.js-CTlpUb2-.js +0 -2
  555. package/build/server/chunks/chunks/forms.js-CTlpUb2-.js.map +0 -1
  556. package/build/server/chunks/chunks/internal2.js-IhS7qvGk.js +0 -224
  557. package/build/server/chunks/chunks/internal2.js-IhS7qvGk.js.map +0 -1
  558. package/build/server/chunks/chunks/navigation.js-CTlpUb2-.js +0 -2
  559. package/build/server/chunks/chunks/navigation.js-CTlpUb2-.js.map +0 -1
  560. package/build/server/chunks/chunks/org-members.server.js-DV1B4uCO.js +0 -35
  561. package/build/server/chunks/chunks/org-members.server.js-DV1B4uCO.js.map +0 -1
  562. package/build/server/chunks/chunks/package.js-KFdbi84h.js +0 -76
  563. package/build/server/chunks/chunks/package.js-KFdbi84h.js.map +0 -1
  564. package/build/server/chunks/chunks/permissions.server.js-BmpNuzGS.js +0 -15
  565. package/build/server/chunks/chunks/permissions.server.js-BmpNuzGS.js.map +0 -1
  566. package/build/server/chunks/chunks/providers.server.js-B9uTkfN5.js +0 -6276
  567. package/build/server/chunks/chunks/providers.server.js-B9uTkfN5.js.map +0 -1
  568. package/build/server/chunks/chunks/resolve.server.js-BfNTMkGf.js +0 -62
  569. package/build/server/chunks/chunks/resolve.server.js-BfNTMkGf.js.map +0 -1
  570. package/build/server/chunks/chunks/selfUpdate.server.js-CChpRyO3.js +0 -152
  571. package/build/server/chunks/chunks/selfUpdate.server.js-CChpRyO3.js.map +0 -1
  572. package/build/server/chunks/chunks/state.js-BUZy-3FS.js +0 -64
  573. package/build/server/chunks/chunks/state.js-BUZy-3FS.js.map +0 -1
  574. package/build/server/chunks/chunks/stores.js-B610FZTl.js +0 -35
  575. package/build/server/chunks/chunks/stores.js-B610FZTl.js.map +0 -1
  576. package/build/server/chunks/chunks/utils2.js-Bk5D4lDi.js +0 -62
  577. package/build/server/chunks/chunks/utils2.js-Bk5D4lDi.js.map +0 -1
  578. package/build/server/chunks/entries/endpoints/admin/api/compute/_server.ts.js-BmEPQS7Y.js +0 -93
  579. package/build/server/chunks/entries/endpoints/admin/api/compute/_server.ts.js-BmEPQS7Y.js.map +0 -1
  580. package/build/server/chunks/entries/endpoints/admin/api/compute/actions/_server.ts.js-De6gpwX9.js +0 -53
  581. package/build/server/chunks/entries/endpoints/admin/api/compute/actions/_server.ts.js-De6gpwX9.js.map +0 -1
  582. package/build/server/chunks/entries/endpoints/admin/api/compute/status/_server.ts.js-DyIZ7oJt.js +0 -79
  583. package/build/server/chunks/entries/endpoints/admin/api/compute/status/_server.ts.js-DyIZ7oJt.js.map +0 -1
  584. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/_server.ts.js-BueV-tW0.js +0 -50
  585. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/_server.ts.js-BueV-tW0.js.map +0 -1
  586. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/assets/_kind_/_server.ts.js-Wi305-P7.js +0 -86
  587. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/assets/_kind_/_server.ts.js-Wi305-P7.js.map +0 -1
  588. package/build/server/chunks/entries/endpoints/admin/api/orgs/_server.ts.js-CoHuB2wQ.js +0 -72
  589. package/build/server/chunks/entries/endpoints/admin/api/orgs/_server.ts.js-CoHuB2wQ.js.map +0 -1
  590. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/_server.ts.js-BBiHXAF1.js +0 -74
  591. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/_server.ts.js-BBiHXAF1.js.map +0 -1
  592. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/_grantId_/_server.ts.js-Bm667NPs.js +0 -34
  593. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/_grantId_/_server.ts.js-Bm667NPs.js.map +0 -1
  594. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/_server.ts.js-Dvt2_wgx.js +0 -71
  595. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/_server.ts.js-Dvt2_wgx.js.map +0 -1
  596. package/build/server/chunks/entries/endpoints/admin/api/projects/_server.ts.js-XZczgdAW.js +0 -103
  597. package/build/server/chunks/entries/endpoints/admin/api/projects/_server.ts.js-XZczgdAW.js.map +0 -1
  598. package/build/server/chunks/entries/endpoints/admin/api/system/health/_server.ts.js-ByAfhYeA.js +0 -208
  599. package/build/server/chunks/entries/endpoints/admin/api/system/health/_server.ts.js-ByAfhYeA.js.map +0 -1
  600. package/build/server/chunks/entries/endpoints/admin/api/system/throughput/_server.ts.js-C1QilQab.js +0 -90
  601. package/build/server/chunks/entries/endpoints/admin/api/system/throughput/_server.ts.js-C1QilQab.js.map +0 -1
  602. package/build/server/chunks/entries/endpoints/admin/api/system/update/_server.ts.js-LnUmt2ka.js +0 -403
  603. package/build/server/chunks/entries/endpoints/admin/api/system/update/_server.ts.js-LnUmt2ka.js.map +0 -1
  604. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/_server.ts.js-Cdiun4_I.js +0 -76
  605. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/_server.ts.js-Cdiun4_I.js.map +0 -1
  606. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/disable/_server.ts.js-QltSlN1s.js +0 -46
  607. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/disable/_server.ts.js-QltSlN1s.js.map +0 -1
  608. package/build/server/chunks/entries/endpoints/admin/api/users/_server.ts.js-ItnKq2QL.js +0 -86
  609. package/build/server/chunks/entries/endpoints/admin/api/users/_server.ts.js-ItnKq2QL.js.map +0 -1
  610. package/build/server/chunks/entries/endpoints/api/compute/_server.ts.js-CS4Ovf4U.js +0 -0
  611. package/build/server/chunks/entries/endpoints/api/compute/_server.ts.js-CS4Ovf4U.js.map +0 -1
  612. package/build/server/chunks/entries/endpoints/api/compute/schema/_server.ts.js-D90y8bZz.js +0 -68
  613. package/build/server/chunks/entries/endpoints/api/compute/schema/_server.ts.js-D90y8bZz.js.map +0 -1
  614. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/_server.ts.js-DV-JfeEq.js +0 -75
  615. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/_server.ts.js-DV-JfeEq.js.map +0 -1
  616. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_filename_/_server.ts.js-sMVj9K_i.js +0 -46
  617. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_filename_/_server.ts.js-sMVj9K_i.js.map +0 -1
  618. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_server.ts.js-BZqJxlxW.js +0 -44
  619. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_server.ts.js-BZqJxlxW.js.map +0 -1
  620. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/publish/_server.ts.js-WoVRLQmM.js +0 -40
  621. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/publish/_server.ts.js-WoVRLQmM.js.map +0 -1
  622. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_linkId_/_server.ts.js-BzySkZdC.js +0 -46
  623. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_linkId_/_server.ts.js-BzySkZdC.js.map +0 -1
  624. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_server.ts.js-znLimiQZ.js +0 -84
  625. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_server.ts.js-znLimiQZ.js.map +0 -1
  626. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/_server.ts.js-BttAoZm4.js +0 -47
  627. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/_server.ts.js-BttAoZm4.js.map +0 -1
  628. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/_versionId_/_server.ts.js-CdWQjiwT.js +0 -40
  629. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/_versionId_/_server.ts.js-CdWQjiwT.js.map +0 -1
  630. package/build/server/chunks/entries/endpoints/api/definitions/_server.ts.js-CUgUSYEu.js +0 -94
  631. package/build/server/chunks/entries/endpoints/api/definitions/_server.ts.js-CUgUSYEu.js.map +0 -1
  632. package/build/server/chunks/entries/endpoints/api/diag/throughput/_server.ts.js-D5Kx1cCg.js +0 -59
  633. package/build/server/chunks/entries/endpoints/api/diag/throughput/_server.ts.js-D5Kx1cCg.js.map +0 -1
  634. package/build/server/chunks/entries/endpoints/api/files/_...path_/_server.ts.js-9LkaVSqF.js +0 -89
  635. package/build/server/chunks/entries/endpoints/api/files/_...path_/_server.ts.js-9LkaVSqF.js.map +0 -1
  636. package/build/server/chunks/entries/endpoints/api/health/_server.ts.js-N8a8PWhB.js +0 -56
  637. package/build/server/chunks/entries/endpoints/api/health/_server.ts.js-N8a8PWhB.js.map +0 -1
  638. package/build/server/chunks/entries/endpoints/api/invites/_id_/_server.ts.js-D_W44WZA.js +0 -49
  639. package/build/server/chunks/entries/endpoints/api/invites/_id_/_server.ts.js-D_W44WZA.js.map +0 -1
  640. package/build/server/chunks/entries/endpoints/api/invites/_server.ts.js-CzNZgze9.js +0 -77
  641. package/build/server/chunks/entries/endpoints/api/invites/_server.ts.js-CzNZgze9.js.map +0 -1
  642. package/build/server/chunks/entries/endpoints/api/me/starred/_guid_/_server.ts.js-CH_v-8sa.js +0 -45
  643. package/build/server/chunks/entries/endpoints/api/me/starred/_guid_/_server.ts.js-CH_v-8sa.js.map +0 -1
  644. package/build/server/chunks/entries/endpoints/api/org/compute/_server.ts.js-DTPaKHZf.js +0 -110
  645. package/build/server/chunks/entries/endpoints/api/org/compute/_server.ts.js-DTPaKHZf.js.map +0 -1
  646. package/build/server/chunks/entries/endpoints/api/orgs/_orgId_/members/_userId_/_server.ts.js-DpVCj03G.js +0 -79
  647. package/build/server/chunks/entries/endpoints/api/orgs/_orgId_/members/_userId_/_server.ts.js-DpVCj03G.js.map +0 -1
  648. package/build/server/chunks/entries/endpoints/api/projects/_id_/_server.ts.js-IZvT4yhz.js +0 -71
  649. package/build/server/chunks/entries/endpoints/api/projects/_id_/_server.ts.js-IZvT4yhz.js.map +0 -1
  650. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/_server.ts.js-BNGgQ7gp.js +0 -65
  651. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/_server.ts.js-BNGgQ7gp.js.map +0 -1
  652. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/_userId_/_server.ts.js-BPPGOAMn.js +0 -64
  653. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/_userId_/_server.ts.js-BPPGOAMn.js.map +0 -1
  654. package/build/server/chunks/entries/endpoints/api/projects/_id_/reclaim/_server.ts.js-DUYIzgX_.js +0 -48
  655. package/build/server/chunks/entries/endpoints/api/projects/_id_/reclaim/_server.ts.js-DUYIzgX_.js.map +0 -1
  656. package/build/server/chunks/entries/endpoints/api/projects/_server.ts.js-C4uoBZGm.js +0 -85
  657. package/build/server/chunks/entries/endpoints/api/projects/_server.ts.js-C4uoBZGm.js.map +0 -1
  658. package/build/server/chunks/entries/endpoints/auth/email/callback/_server.ts.js-C_-mlKGX.js +0 -48
  659. package/build/server/chunks/entries/endpoints/auth/email/callback/_server.ts.js-C_-mlKGX.js.map +0 -1
  660. package/build/server/chunks/entries/endpoints/auth/supabase/callback/_server.ts.js-DuqbRQGb.js +0 -52
  661. package/build/server/chunks/entries/endpoints/auth/supabase/callback/_server.ts.js-DuqbRQGb.js.map +0 -1
  662. package/build/server/chunks/entries/endpoints/auth/supabase/start/_server.ts.js-foOT1YAN.js +0 -51
  663. package/build/server/chunks/entries/endpoints/auth/supabase/start/_server.ts.js-foOT1YAN.js.map +0 -1
  664. package/build/server/chunks/entries/hooks.server.js-BE9yIan3.js +0 -341
  665. package/build/server/chunks/entries/hooks.server.js-BE9yIan3.js.map +0 -1
  666. package/build/server/chunks/entries/pages/_error.svelte.js-BAJeJA54.js +0 -35
  667. package/build/server/chunks/entries/pages/_error.svelte.js-BAJeJA54.js.map +0 -1
  668. package/build/server/chunks/entries/pages/_layout.server.ts.js-CZiupOzL.js +0 -34
  669. package/build/server/chunks/entries/pages/_layout.server.ts.js-CZiupOzL.js.map +0 -1
  670. package/build/server/chunks/entries/pages/_page.svelte.js-DnR6EGLz.js +0 -76
  671. package/build/server/chunks/entries/pages/_page.svelte.js-DnR6EGLz.js.map +0 -1
  672. package/build/server/chunks/entries/pages/accept-invite/_page.server.ts.js-NBjHbL8Y.js +0 -109
  673. package/build/server/chunks/entries/pages/accept-invite/_page.server.ts.js-NBjHbL8Y.js.map +0 -1
  674. package/build/server/chunks/entries/pages/accept-invite/_page.svelte.js-BNU1_4nl.js +0 -148
  675. package/build/server/chunks/entries/pages/accept-invite/_page.svelte.js-BNU1_4nl.js.map +0 -1
  676. package/build/server/chunks/entries/pages/admin/_error.svelte.js-BEBRBnkg.js +0 -36
  677. package/build/server/chunks/entries/pages/admin/_error.svelte.js-BEBRBnkg.js.map +0 -1
  678. package/build/server/chunks/entries/pages/admin/_layout.server.ts.js-BwgT9SNW.js +0 -31
  679. package/build/server/chunks/entries/pages/admin/_layout.server.ts.js-BwgT9SNW.js.map +0 -1
  680. package/build/server/chunks/entries/pages/admin/_layout.svelte.js-t0p0at-s.js +0 -121
  681. package/build/server/chunks/entries/pages/admin/_layout.svelte.js-t0p0at-s.js.map +0 -1
  682. package/build/server/chunks/entries/pages/admin/_page.server.ts.js-AWUyBYXt.js +0 -75
  683. package/build/server/chunks/entries/pages/admin/_page.server.ts.js-AWUyBYXt.js.map +0 -1
  684. package/build/server/chunks/entries/pages/admin/_page.svelte.js-BawoeBdK.js +0 -359
  685. package/build/server/chunks/entries/pages/admin/_page.svelte.js-BawoeBdK.js.map +0 -1
  686. package/build/server/chunks/entries/pages/admin/audit/_page.server.ts.js-B_eYKzr5.js +0 -245
  687. package/build/server/chunks/entries/pages/admin/audit/_page.server.ts.js-B_eYKzr5.js.map +0 -1
  688. package/build/server/chunks/entries/pages/admin/compute/_page.server.ts.js-BJqvnw-C.js +0 -45
  689. package/build/server/chunks/entries/pages/admin/compute/_page.server.ts.js-BJqvnw-C.js.map +0 -1
  690. package/build/server/chunks/entries/pages/admin/compute/_page.svelte.js-vzjoJjoa.js +0 -612
  691. package/build/server/chunks/entries/pages/admin/compute/_page.svelte.js-vzjoJjoa.js.map +0 -1
  692. package/build/server/chunks/entries/pages/admin/organizations/_page.server.ts.js-D0HI-NV5.js +0 -35
  693. package/build/server/chunks/entries/pages/admin/organizations/_page.server.ts.js-D0HI-NV5.js.map +0 -1
  694. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.server.ts.js-sdsbPfC4.js +0 -86
  695. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.server.ts.js-sdsbPfC4.js.map +0 -1
  696. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.svelte.js-Cn-FViRy.js +0 -616
  697. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.svelte.js-Cn-FViRy.js.map +0 -1
  698. package/build/server/chunks/entries/pages/admin/projects/_page.server.ts.js-K-GJHT8B.js +0 -42
  699. package/build/server/chunks/entries/pages/admin/projects/_page.server.ts.js-K-GJHT8B.js.map +0 -1
  700. package/build/server/chunks/entries/pages/admin/projects/_page.svelte.js-CTfkrvkc.js +0 -282
  701. package/build/server/chunks/entries/pages/admin/projects/_page.svelte.js-CTfkrvkc.js.map +0 -1
  702. package/build/server/chunks/entries/pages/admin/system/_page.server.ts.js-DdUylygZ.js +0 -79
  703. package/build/server/chunks/entries/pages/admin/system/_page.server.ts.js-DdUylygZ.js.map +0 -1
  704. package/build/server/chunks/entries/pages/admin/system/_page.svelte.js-Diy2c28_.js +0 -1363
  705. package/build/server/chunks/entries/pages/admin/system/_page.svelte.js-Diy2c28_.js.map +0 -1
  706. package/build/server/chunks/entries/pages/admin/users/_page.server.ts.js-dkecZ1Y9.js +0 -70
  707. package/build/server/chunks/entries/pages/admin/users/_page.server.ts.js-dkecZ1Y9.js.map +0 -1
  708. package/build/server/chunks/entries/pages/admin/users/_page.svelte.js-B97rHqOd.js +0 -681
  709. package/build/server/chunks/entries/pages/admin/users/_page.svelte.js-B97rHqOd.js.map +0 -1
  710. package/build/server/chunks/entries/pages/auth/email/sent/_page.svelte.js-BuIB8DpJ.js +0 -62
  711. package/build/server/chunks/entries/pages/auth/email/sent/_page.svelte.js-BuIB8DpJ.js.map +0 -1
  712. package/build/server/chunks/entries/pages/auth/email/start/_page.server.ts.js-TLKtiPZl.js +0 -62
  713. package/build/server/chunks/entries/pages/auth/email/start/_page.server.ts.js-TLKtiPZl.js.map +0 -1
  714. package/build/server/chunks/entries/pages/library/_guid_/_page.server.ts.js-8oTR34J0.js +0 -124
  715. package/build/server/chunks/entries/pages/library/_guid_/_page.server.ts.js-8oTR34J0.js.map +0 -1
  716. package/build/server/chunks/entries/pages/library/_guid_/_page.svelte.js-Ck-YsYyt.js +0 -12096
  717. package/build/server/chunks/entries/pages/library/_guid_/_page.svelte.js-Ck-YsYyt.js.map +0 -1
  718. package/build/server/chunks/entries/pages/library/_page.server.ts.js-B-dT9Dwt.js +0 -73
  719. package/build/server/chunks/entries/pages/library/_page.server.ts.js-B-dT9Dwt.js.map +0 -1
  720. package/build/server/chunks/entries/pages/library/_page.svelte.js-ztaLQH9d.js +0 -328
  721. package/build/server/chunks/entries/pages/library/_page.svelte.js-ztaLQH9d.js.map +0 -1
  722. package/build/server/chunks/entries/pages/login/_page.server.ts.js-Brx7sbD0.js +0 -76
  723. package/build/server/chunks/entries/pages/login/_page.server.ts.js-Brx7sbD0.js.map +0 -1
  724. package/build/server/chunks/entries/pages/login/_page.svelte.js-CZ2b2C6w.js +0 -256
  725. package/build/server/chunks/entries/pages/login/_page.svelte.js-CZ2b2C6w.js.map +0 -1
  726. package/build/server/chunks/entries/pages/projects/_layout.svelte.js-BFtB32qP.js +0 -49
  727. package/build/server/chunks/entries/pages/projects/_layout.svelte.js-BFtB32qP.js.map +0 -1
  728. package/build/server/chunks/entries/pages/projects/_page.server.ts.js-C-eE67hd.js +0 -101
  729. package/build/server/chunks/entries/pages/projects/_page.server.ts.js-C-eE67hd.js.map +0 -1
  730. package/build/server/chunks/entries/pages/projects/_page.svelte.js-JW-fq8WI.js +0 -3745
  731. package/build/server/chunks/entries/pages/projects/_page.svelte.js-JW-fq8WI.js.map +0 -1
  732. package/build/server/chunks/entries/pages/setup/_page.server.ts.js-MKhzFKxc.js +0 -113
  733. package/build/server/chunks/entries/pages/setup/_page.server.ts.js-MKhzFKxc.js.map +0 -1
  734. package/build/server/chunks/entries/pages/setup/_page.svelte.js-KCdx7RYq.js +0 -321
  735. package/build/server/chunks/entries/pages/setup/_page.svelte.js-KCdx7RYq.js.map +0 -1
  736. package/build/server/chunks/entries/pages/team/_layout.server.ts.js-C9u4jIPQ.js +0 -28
  737. package/build/server/chunks/entries/pages/team/_layout.server.ts.js-C9u4jIPQ.js.map +0 -1
  738. package/build/server/chunks/entries/pages/team/_layout.svelte.js-GHr9IuDg.js +0 -162
  739. package/build/server/chunks/entries/pages/team/_layout.svelte.js-GHr9IuDg.js.map +0 -1
  740. package/build/server/chunks/entries/pages/team/_page.server.ts.js-Djl8c3xz.js +0 -35
  741. package/build/server/chunks/entries/pages/team/_page.server.ts.js-Djl8c3xz.js.map +0 -1
  742. package/build/server/chunks/entries/pages/team/compute/_page.server.ts.js-Dj-C-q5m.js +0 -42
  743. package/build/server/chunks/entries/pages/team/compute/_page.server.ts.js-Dj-C-q5m.js.map +0 -1
  744. package/build/server/chunks/entries/pages/team/compute/_page.svelte.js-DlLlWIvr.js +0 -593
  745. package/build/server/chunks/entries/pages/team/compute/_page.svelte.js-DlLlWIvr.js.map +0 -1
  746. package/build/server/chunks/entries/pages/team/members/_page.server.ts.js-Du6NQnzd.js +0 -58
  747. package/build/server/chunks/entries/pages/team/members/_page.server.ts.js-Du6NQnzd.js.map +0 -1
  748. package/build/server/chunks/entries/pages/team/members/_page.svelte.js-Donx0t4M.js +0 -539
  749. package/build/server/chunks/entries/pages/team/members/_page.svelte.js-Donx0t4M.js.map +0 -1
  750. package/build/server/chunks/entries/pages/team/projects/_page.server.ts.js-CPWNduiA.js +0 -42
  751. package/build/server/chunks/entries/pages/team/projects/_page.server.ts.js-CPWNduiA.js.map +0 -1
  752. package/build/server/chunks/entries/pages/team/projects/_page.svelte.js-LE8f8DO6.js +0 -436
  753. package/build/server/chunks/entries/pages/team/projects/_page.svelte.js-LE8f8DO6.js.map +0 -1
  754. package/build/server/chunks/entries/pages/team/reclaim/_page.server.ts.js-BQxyn9ah.js +0 -50
  755. package/build/server/chunks/entries/pages/team/reclaim/_page.server.ts.js-BQxyn9ah.js.map +0 -1
  756. package/build/server/chunks/entries/pages/team/reclaim/_page.svelte.js-BKrBWval.js +0 -262
  757. package/build/server/chunks/entries/pages/team/reclaim/_page.svelte.js-BKrBWval.js.map +0 -1
  758. package/build/server/chunks/entries/pages/team/settings/_page.server.ts.js-DZzJ_aku.js +0 -32
  759. package/build/server/chunks/entries/pages/team/settings/_page.server.ts.js-DZzJ_aku.js.map +0 -1
  760. package/build/server/chunks/entries/pages/team/shares/_page.server.ts.js-xo0D6ywc.js +0 -16
  761. package/build/server/chunks/entries/pages/team/shares/_page.server.ts.js-xo0D6ywc.js.map +0 -1
  762. package/build/server/chunks/handler-gLIfR_iV.js +0 -1206
  763. package/build/server/chunks/handler-gLIfR_iV.js.map +0 -1
  764. package/build/server/chunks/index.js-DESRGQp_.js +0 -3747
  765. package/build/server/chunks/index.js-DESRGQp_.js.map +0 -1
  766. package/build/server/chunks/manifest.js-Cp9zLwNV.js +0 -548
  767. package/build/server/chunks/manifest.js-Cp9zLwNV.js.map +0 -1
  768. package/build/server/chunks/nodes/0.js-ykmNBBYN.js +0 -25
  769. package/build/server/chunks/nodes/0.js-ykmNBBYN.js.map +0 -1
  770. package/build/server/chunks/nodes/1.js-C9HOFYIS.js +0 -9
  771. package/build/server/chunks/nodes/1.js-C9HOFYIS.js.map +0 -1
  772. package/build/server/chunks/nodes/10.js-f4umvKo6.js +0 -27
  773. package/build/server/chunks/nodes/10.js-f4umvKo6.js.map +0 -1
  774. package/build/server/chunks/nodes/11.js-H_Tl1-mC.js +0 -28
  775. package/build/server/chunks/nodes/11.js-H_Tl1-mC.js.map +0 -1
  776. package/build/server/chunks/nodes/12.js-BsVM2edF.js +0 -26
  777. package/build/server/chunks/nodes/12.js-BsVM2edF.js.map +0 -1
  778. package/build/server/chunks/nodes/13.js-vwkpTyfG.js +0 -26
  779. package/build/server/chunks/nodes/13.js-vwkpTyfG.js.map +0 -1
  780. package/build/server/chunks/nodes/14.js-C0ioY7mQ.js +0 -26
  781. package/build/server/chunks/nodes/14.js-C0ioY7mQ.js.map +0 -1
  782. package/build/server/chunks/nodes/15.js-BAldYNBs.js +0 -38
  783. package/build/server/chunks/nodes/15.js-BAldYNBs.js.map +0 -1
  784. package/build/server/chunks/nodes/16.js-Dq9S7DUP.js +0 -29
  785. package/build/server/chunks/nodes/16.js-Dq9S7DUP.js.map +0 -1
  786. package/build/server/chunks/nodes/17.js-C_6YUex5.js +0 -9
  787. package/build/server/chunks/nodes/17.js-C_6YUex5.js.map +0 -1
  788. package/build/server/chunks/nodes/18.js-CZUJZUJo.js +0 -34
  789. package/build/server/chunks/nodes/18.js-CZUJZUJo.js.map +0 -1
  790. package/build/server/chunks/nodes/19.js-BB7uBbXp.js +0 -27
  791. package/build/server/chunks/nodes/19.js-BB7uBbXp.js.map +0 -1
  792. package/build/server/chunks/nodes/2.js-DwKKDDJy.js +0 -27
  793. package/build/server/chunks/nodes/2.js-DwKKDDJy.js.map +0 -1
  794. package/build/server/chunks/nodes/20.js-C_PE3QvJ.js +0 -40
  795. package/build/server/chunks/nodes/20.js-C_PE3QvJ.js.map +0 -1
  796. package/build/server/chunks/nodes/21.js-2BEnVufL.js +0 -34
  797. package/build/server/chunks/nodes/21.js-2BEnVufL.js.map +0 -1
  798. package/build/server/chunks/nodes/23.js-MiYUZw7L.js +0 -28
  799. package/build/server/chunks/nodes/23.js-MiYUZw7L.js.map +0 -1
  800. package/build/server/chunks/nodes/24.js-BNJbAlny.js +0 -34
  801. package/build/server/chunks/nodes/24.js-BNJbAlny.js.map +0 -1
  802. package/build/server/chunks/nodes/25.js-DRnoAV3W.js +0 -26
  803. package/build/server/chunks/nodes/25.js-DRnoAV3W.js.map +0 -1
  804. package/build/server/chunks/nodes/27.js-NJNjlxYv.js +0 -27
  805. package/build/server/chunks/nodes/27.js-NJNjlxYv.js.map +0 -1
  806. package/build/server/chunks/nodes/28.js-nRy4JBLG.js +0 -26
  807. package/build/server/chunks/nodes/28.js-nRy4JBLG.js.map +0 -1
  808. package/build/server/chunks/nodes/29.js-DOAV9pJR.js +0 -26
  809. package/build/server/chunks/nodes/29.js-DOAV9pJR.js.map +0 -1
  810. package/build/server/chunks/nodes/3.js-DyBoMKKy.js +0 -9
  811. package/build/server/chunks/nodes/3.js-DyBoMKKy.js.map +0 -1
  812. package/build/server/chunks/nodes/30.js-Dw66AxAw.js +0 -26
  813. package/build/server/chunks/nodes/30.js-Dw66AxAw.js.map +0 -1
  814. package/build/server/chunks/nodes/31.js-D3fANEyT.js +0 -26
  815. package/build/server/chunks/nodes/31.js-D3fANEyT.js.map +0 -1
  816. package/build/server/chunks/nodes/32.js-C9JPIJPq.js +0 -26
  817. package/build/server/chunks/nodes/32.js-C9JPIJPq.js.map +0 -1
  818. package/build/server/chunks/nodes/5.js-DEuxktAm.js +0 -15
  819. package/build/server/chunks/nodes/5.js-DEuxktAm.js.map +0 -1
  820. package/build/server/chunks/nodes/6.js-DL0Ke2YB.js +0 -26
  821. package/build/server/chunks/nodes/6.js-DL0Ke2YB.js.map +0 -1
  822. package/build/server/chunks/nodes/7.js-uEkKcL-_.js +0 -12
  823. package/build/server/chunks/nodes/7.js-uEkKcL-_.js.map +0 -1
  824. package/build/server/chunks/nodes/8.js-DO7MdX6m.js +0 -35
  825. package/build/server/chunks/nodes/8.js-DO7MdX6m.js.map +0 -1
  826. package/build/server/chunks/nodes/9.js-DYdpHFfb.js +0 -26
  827. package/build/server/chunks/nodes/9.js-DYdpHFfb.js.map +0 -1
  828. /package/build/client/_app/immutable/nodes/{0.D7urdCm3.js → 0.Bn31RLpu.js} +0 -0
  829. /package/build/client/_app/immutable/nodes/{0.D7urdCm3.js.br → 0.Bn31RLpu.js.br} +0 -0
  830. /package/build/client/_app/immutable/nodes/{0.D7urdCm3.js.gz → 0.Bn31RLpu.js.gz} +0 -0
@@ -0,0 +1 @@
1
+ import"./CVGG5cou.js";
@@ -0,0 +1,2 @@
1
+
2
+ �import"./CVGG5cou.js";
@@ -0,0 +1 @@
1
+ import{A as e,At as t,B as n,C as r,F as i,Ft as a,G as o,It as s,K as c,L as l,M as u,V as d,W as f,X as p,a as m,c as h,dt as g,ft as _,g as v,gt as y,it as b,k as x,kt as S,o as C,pt as w,q as T,s as E,ut as D,vt as O,w as k,xt as A,z as j}from"./CL3s_3g5.js";import"./xihTtKlq.js";import{i as M}from"./D3VSOnNo.js";import{n as N,t as P}from"./BH_AsplL.js";import{t as F}from"./BMx84FKI.js";import{t as I}from"./D4YBJLId.js";import{t as L}from"./DNVbFK9q.js";import{t as R}from"./DWPCC0_6.js";import{t as z}from"./DexxF51_.js";var B=new Set([`$$slots`,`$$events`,`$$legacy`]);function V(e,t){let n=C(t,B),r=[[`path`,{d:`M15 6a9 9 0 0 0-9 9V3`}],[`circle`,{cx:`18`,cy:`6`,r:`3`}],[`circle`,{cx:`6`,cy:`18`,r:`3`}]];M(e,E({name:`git-branch`},()=>n,{get iconNode(){return r}}))}var H=new Set([`$$slots`,`$$events`,`$$legacy`]);function U(e,t){let n=C(t,H),r=[[`rect`,{width:`7`,height:`7`,x:`3`,y:`3`,rx:`1`}],[`rect`,{width:`7`,height:`7`,x:`14`,y:`3`,rx:`1`}],[`rect`,{width:`7`,height:`7`,x:`14`,y:`14`,rx:`1`}],[`rect`,{width:`7`,height:`7`,x:`3`,y:`14`,rx:`1`}]];M(e,E({name:`layout-grid`},()=>n,{get iconNode(){return r}}))}var W=d(`<a><!> </a>`);function G(e,i){t(i,!0);let a=A(()=>z.data.ctx),o=A(()=>(p(a)?.platformPermissions??[]).includes(`instance_admin`)||(p(a)?.orgPermissions??[]).some(e=>e===`manage_definitions`||e===`manage_projects`)),c=A(()=>[{href:`/library`,label:`Library`,icon:U,match:`prefix`,show:!0},{href:`/projects`,label:`Projects`,icon:V,match:`prefix`,show:p(o)}].filter(e=>e.show));function d(e){let t=z.url.pathname;return e.match===`prefix`?t.startsWith(e.href):t===e.href}var f=n();u(_(f),17,()=>p(c),e=>e.href,(e,t)=>{let n=A(()=>d(p(t))),i=A(()=>p(t).icon);var a=W(),o=g(a);x(o,()=>p(i),(e,t)=>{t(e,{class:`h-3.5 w-3.5`})});var c=w(o);s(a),b(e=>{v(a,`href`,p(t).href),r(a,1,e),l(c,` ${p(t).label??``}`)},[()=>k([`flex h-8 items-center gap-1.5 rounded-md px-2.5 text-sm font-medium transition-colors`,p(n)?`bg-accent text-accent-foreground`:`text-muted-foreground hover:bg-accent/50 hover:text-foreground`].join(` `))]),j(e,a)}),j(e,f),S()}var K=d(`<a role="menuitem"><!> <div class="min-w-0 flex-1"><p class="leading-tight font-medium"> </p> <p class="text-muted-foreground mt-0.5 text-xs leading-snug"> </p></div></a>`),q=d(`<div role="menu" class="border-border bg-popover text-popover-foreground absolute top-full right-0 z-50 mt-1.5 w-64 overflow-hidden rounded-md border shadow-md"><div class="p-1"></div></div>`),J=d(`<div class="relative"><!> <!></div>`);function Y(e,a){t(a,!0);let o=m(a,`platformPermissions`,19,()=>[]),d=m(a,`orgPermissions`,19,()=>[]),f=O(!1),C=O(null),E=O(null),k=A(()=>o().includes(`instance_admin`)),M=[`instance_admin`,`manage_compute`,`manage_instance_users`,`manage_updates`],N=[`manage_org_members`,`manage_org_compute`,`manage_definitions`,`manage_projects`],P=A(()=>p(k)||M.some(e=>o().includes(e))),B=A(()=>p(k)||N.some(e=>d().includes(e))),V=A(()=>[{href:`/team`,label:`Team`,description:`Members, projects, and org-wide settings`,icon:R,show:p(B),match:`prefix`},{href:`/admin`,label:`Admin`,description:`Platform configuration and instance settings`,icon:L,show:p(P),match:`prefix`}].filter(e=>e.show)),H=A(()=>p(V).length>0);function U(e){return z.url.pathname.startsWith(e)}function W(e){if(!p(f))return;let t=e.target;p(C)?.contains(t)||p(E)?.contains(t)||y(f,!1)}function G(e){e.key===`Escape`&&p(f)&&y(f,!1)}var Y=n();T(`click`,D,W),T(`keydown`,D,G);var X=_(Y),Z=e=>{var t=J(),n=g(t);F(n,{onclick:()=>y(f,!p(f)),variant:`outline`,size:`icon`,"aria-label":`Settings`,get"aria-expanded"(){return p(f)},"aria-haspopup":`menu`,get ref(){return p(C)},set ref(e){y(C,e,!0)},children:(e,t)=>{I(e,{class:`h-[1.2rem] w-[1.2rem]`})},$$slots:{default:!0}});var a=w(n,2),o=e=>{var t=q(),n=g(t);u(n,21,()=>p(V),e=>e.href,(e,t)=>{let n=A(()=>p(t).icon),i=A(()=>U(p(t).href));var a=K(),o=g(a);x(o,()=>p(n),(e,t)=>{t(e,{class:`mt-0.5 h-3.5 w-3.5 shrink-0 opacity-70`})});var u=w(o,2),d=g(u),m=g(d,!0);s(d);var h=w(d,2),_=g(h,!0);s(h),s(u),s(a),b(()=>{v(a,`href`,p(t).href),r(a,1,`flex items-start gap-2.5 rounded-sm px-2.5 py-2 text-sm transition-colors ${p(i)?`bg-accent text-accent-foreground`:`text-foreground hover:bg-muted/60`}`),l(m,p(t).label),l(_,p(t).description)}),c(`click`,a,()=>y(f,!1)),j(e,a)}),s(n),s(t),h(t,e=>y(E,e),()=>p(E)),j(e,t)};i(a,e=>{p(f)&&e(o)}),s(t),j(e,t)};i(X,e=>{p(H)&&e(Z)}),j(e,Y),S()}o([`click`]);var X=d(`<!> <!>`,1);function Z(r,o){t(o,!0);let s=m(o,`homeUrl`,3,`/library`),c=m(o,`title`,3,void 0),l=m(o,`mode`,3,`scroll`),u=m(o,`showMainNav`,3,!0),d=A(()=>z.data),h=A(()=>!!p(d).user),g=A(()=>p(d).user?.platformPermissions??[]),v=A(()=>p(d).ctx?.orgPermissions??[]),y=A(()=>p(d).branding?.name??`Selva`),b=A(()=>p(d).branding?.copyrightName??p(y));N(r,{get homeUrl(){return s()},get title(){return c()},get mode(){return l()},get sidenav(){return o.sidenav},get brandName(){return p(y)},get copyrightName(){return p(b)},showFooter:!0,navItems:e=>{var t=n(),r=_(t),a=e=>{G(e,{})};i(r,e=>{p(h)&&u()&&e(a)}),j(e,t)},rightContent:t=>{var r=X(),s=_(r),c=t=>{var r=n();e(_(r),()=>o.rightExtras),j(t,r)};i(s,e=>{o.rightExtras&&e(c)});var l=w(s,2),u=e=>{var t=X(),n=_(t);P(n,{}),Y(w(n,2),{get platformPermissions(){return p(g)},get orgPermissions(){return p(v)}}),j(e,t)},d=e=>{F(e,{href:`/login`,size:`sm`,children:(e,t)=>{a(),j(e,f(`Sign in`))},$$slots:{default:!0}})};i(l,e=>{p(h)?e(u):e(d,-1)}),j(t,r)},children:(t,r)=>{var i=n();e(_(i),()=>o.children),j(t,i)},$$slots:{navItems:!0,rightContent:!0,default:!0}}),S()}export{Z as t};
@@ -0,0 +1,2 @@
1
+ import{Q as e,Tt as t,X as n,Z as r,gt as i,r as a,t as o,vt as s}from"./CL3s_3g5.js";var c=class{constructor(e,t){this.status=e,typeof t==`string`?this.body={message:t}:t?this.body=t:this.body={message:`Error: ${e}`}}toString(){return JSON.stringify(this.body)}},l=class{constructor(e,t){try{new Headers({location:t})}catch{throw Error(`Invalid redirect location ${JSON.stringify(t)}: this string contains characters that cannot be used in HTTP headers`)}this.status=e,this.location=t}},u=class extends Error{constructor(e,t,n){super(n),this.status=e,this.text=t}};new URL(`sveltekit-internal://`);function d(e,t){return e===`/`||t===`ignore`?e:t===`never`?e.endsWith(`/`)?e.slice(0,-1):e:t===`always`&&!e.endsWith(`/`)?e+`/`:e}function f(e){return e.split(`%25`).map(decodeURI).join(`%25`)}function p(e){for(let t in e)e[t]=decodeURIComponent(e[t]);return e}function m({href:e}){return e.split(`#`)[0]}function h(){}function ee(...e){let t=5381;for(let n of e)if(typeof n==`string`){let e=n.length;for(;e;)t=t*33^n.charCodeAt(--e)}else if(ArrayBuffer.isView(n)){let e=new Uint8Array(n.buffer,n.byteOffset,n.byteLength),r=e.length;for(;r;)t=t*33^e[--r]}else throw TypeError(`value must be a string or TypedArray`);return(t>>>0).toString(36)}new TextEncoder;function g(e){let t=atob(e),n=new Uint8Array(t.length);for(let e=0;e<t.length;e++)n[e]=t.charCodeAt(e);return n}var _=window.fetch;window.fetch=(e,t)=>((e instanceof Request?e.method:t?.method||`GET`)!==`GET`&&v.delete(x(e)),_(e,t));var v=new Map;function y(e,t){let n=x(e,t),r=document.querySelector(n);if(r?.textContent){r.remove();let{body:e,...t}=JSON.parse(r.textContent);r.getAttribute(`data-b64`)!==null&&(e=g(e));let i=r.getAttribute(`data-ttl`);return i&&v.set(n,{body:e,init:t,ttl:1e3*Number(i)}),Promise.resolve(new Response(e,t))}return window.fetch(e,t)}function b(e,t,n){if(v.size>0){let t=x(e,n),r=v.get(t);if(r){if(performance.now()<r.ttl&&[`default`,`force-cache`,`only-if-cached`,void 0].includes(n?.cache))return new Response(r.body,r.init);v.delete(t)}}return window.fetch(t,n)}function x(e,t){let n=`script[data-sveltekit-fetched][data-url=${JSON.stringify(e instanceof Request?e.url:e)}]`;if(t?.headers||t?.body){let e=[];t.headers&&e.push([...new Headers(t.headers)].join(`,`)),t.body&&(typeof t.body==`string`||ArrayBuffer.isView(t.body))&&e.push(t.body),n+=`[data-hash="${ee(...e)}"]`}return n}var te=/^(\[)?(\.\.\.)?(\w+)(?:=(\w+))?(\])?$/,ne=/^\/\((?:[^)]+)\)$/;function re(e){let t=[];return{pattern:e===`/`||ne.test(e)?/^\/$/:RegExp(`^${ae(e).map(e=>{let n=/^\[\.\.\.(\w+)(?:=(\w+))?\]$/.exec(e);if(n)return t.push({name:n[1],matcher:n[2],optional:!1,rest:!0,chained:!0}),`(?:/([^]*))?`;let r=/^\[\[(\w+)(?:=(\w+))?\]\]$/.exec(e);if(r)return t.push({name:r[1],matcher:r[2],optional:!0,rest:!1,chained:!0}),`(?:/([^/]+))?`;if(!e)return;let i=e.split(/\[(.+?)\](?!\])/);return`/`+i.map((e,n)=>{if(n%2){if(e.startsWith(`x+`))return se(String.fromCharCode(parseInt(e.slice(2),16)));if(e.startsWith(`u+`))return se(String.fromCharCode(...e.slice(2).split(`-`).map(e=>parseInt(e,16))));let[,r,a,o,s]=te.exec(e);return t.push({name:o,matcher:s,optional:!!r,rest:!!a,chained:a?n===1&&i[0]===``:!1}),a?`([^]*?)`:r?`([^/]*)?`:`([^/]+?)`}return se(e)}).join(``)}).join(``)}/?$`),params:t}}function ie(e){return e!==``&&!/^\([^)]+\)$/.test(e)}function ae(e){return e.slice(1).split(`/`).filter(ie)}function oe(e,t,n){let r={},i=e.slice(1),a=i.filter(e=>e!==void 0),o=0;for(let e=0;e<t.length;e+=1){let s=t[e],c=i[e-o];if(s.chained&&s.rest&&o&&(c=i.slice(e-o,e+1).filter(e=>e).join(`/`),o=0),c===void 0)if(s.rest)c=``;else continue;if(!s.matcher||n[s.matcher](c)){r[s.name]=c;let n=t[e+1],l=i[e+1];n&&!n.rest&&n.optional&&l&&s.chained&&(o=0),!n&&!l&&Object.keys(r).length===a.length&&(o=0);continue}if(s.optional&&s.chained){o++;continue}return}if(!o)return r}function se(e){return e.normalize().replace(/[[\]]/g,`\\$&`).replace(/%/g,`%25`).replace(/\//g,`%2[Ff]`).replace(/\?/g,`%3[Ff]`).replace(/#/g,`%23`).replace(/[.*+?^${}()|\\]/g,`\\$&`)}function ce({nodes:e,server_loads:t,dictionary:n,matchers:r}){let i=new Set(t);return Object.entries(n).map(([t,[n,i,s]])=>{let{pattern:c,params:l}=re(t),u={id:t,exec:e=>{let t=c.exec(e);if(t)return oe(t,l,r)},errors:[1,...s||[]].map(t=>e[t]),layouts:[0,...i||[]].map(o),leaf:a(n)};return u.errors.length=u.layouts.length=Math.max(u.errors.length,u.layouts.length),u});function a(t){let n=t<0;return n&&(t=~t),[n,e[t]]}function o(t){return t===void 0?t:[i.has(t),e[t]]}}function le(e,t=JSON.parse){try{return t(sessionStorage[e])}catch{}}function ue(e,t,n=JSON.stringify){let r=n(t);try{sessionStorage[e]=r}catch{}}var S=globalThis.__sveltekit_j8h1mg?.base??``,de=globalThis.__sveltekit_j8h1mg?.assets??S??``,fe=`1785346086955`,pe=`sveltekit:snapshot`,me=`sveltekit:scroll`,he=`sveltekit:states`,C=`sveltekit:history`,w=`sveltekit:navigation`,T={tap:1,hover:2,viewport:3,eager:4,off:-1,false:-1},E=location.origin;function ge(e){if(e instanceof URL)return e;let t=document.baseURI;if(!t){let e=document.getElementsByTagName(`base`);t=e.length?e[0].href:document.URL}return new URL(e,t)}function D(){return{x:pageXOffset,y:pageYOffset}}function O(e,t){return e.getAttribute(`data-sveltekit-${t}`)}var _e={...T,"":T.hover};function ve(e){let t=e.assignedSlot??e.parentNode;return t?.nodeType===11&&(t=t.host),t}function ye(e,t){for(;e&&e!==t;){if(e.nodeName.toUpperCase()===`A`&&e.hasAttribute(`href`))return e;e=ve(e)}}function be(e,t,n){let r;try{if(r=new URL(e instanceof SVGAElement?e.href.baseVal:e.href,document.baseURI),n&&r.hash.match(/^#[^/]/)){let e=location.hash.split(`#`)[1]||`/`;r.hash=`#${e}${r.hash}`}}catch{}let i=e instanceof SVGAElement?e.target.baseVal:e.target,a=!r||!!i||Te(r,t,n)||(e.getAttribute(`rel`)||``).split(/\s+/).includes(`external`),o=r?.origin===E&&e.hasAttribute(`download`);return{url:r,external:a,target:i,download:o}}function xe(e){let t=null,n=null,r=null,i=null,a=null,o=null,s=e;for(;s&&s!==document.documentElement;)r===null&&(r=O(s,`preload-code`)),i===null&&(i=O(s,`preload-data`)),t===null&&(t=O(s,`keepfocus`)),n===null&&(n=O(s,`noscroll`)),a===null&&(a=O(s,`reload`)),o===null&&(o=O(s,`replacestate`)),s=ve(s);function c(e){switch(e){case``:case`true`:return!0;case`off`:case`false`:return!1;default:return}}return{preload_code:_e[r??`off`],preload_data:_e[i??`off`],keepfocus:c(t),noscroll:c(n),reload:c(a),replace_state:c(o)}}function Se(e){let n=t(e),r=!0;function i(){r=!0,n.update(e=>e)}function a(e){r=!1,n.set(e)}function o(e){let t;return n.subscribe(n=>{(t===void 0||r&&n!==t)&&e(t=n)})}return{notify:i,set:a,subscribe:o}}var Ce={v:h};function we(){let{set:e,subscribe:n}=t(!1);async function r(){clearTimeout(void 0);try{let t=await fetch(`${de}/_app/version.json`,{headers:{pragma:`no-cache`,"cache-control":`no-cache`}});if(!t.ok)return!1;let n=(await t.json()).version!==fe;return n&&(e(!0),Ce.v(),clearTimeout(void 0)),n}catch{return!1}}return{subscribe:n,check:r}}function Te(e,t,n){return e.origin!==E||!e.pathname.startsWith(t)?!0:n?e.pathname!==location.pathname:!1}function Ee(e){}var De=2**32-1,Oe=De-1;function ke(e){return!(!Number.isInteger(e)||e<0||e>Oe)}function Ae(e){return!(!Number.isInteger(e)||e<0||e>De)}function je(e){return Uint8Array.fromBase64(e).buffer}function Me(e){return Uint8Array.from(Buffer.from(e,`base64`)).buffer}function Ne(e){let t=atob(e),n=t.length,r=new Uint8Array(n);for(let e=0;e<n;e++)r[e]=t.charCodeAt(e);return r.buffer}var Pe=typeof Uint8Array.fromBase64==`function`,Fe=typeof process==`object`&&process.versions?.node!==void 0,Ie=Pe?je:Fe?Me:Ne;function Le(e,t){return Re(JSON.parse(e),t)}function Re(e,t){if(typeof e==`number`)return a(e,!0);if(!Array.isArray(e)||e.length===0)throw Error(`Invalid input`);let n=e,r=Array(n.length),i=null;function a(e,o=!1){if(e===-1)return;if(e===-3)return NaN;if(e===-4)return 1/0;if(e===-5)return-1/0;if(e===-6)return-0;if(o||typeof e!=`number`)throw Error(`Invalid input`);if(e in r)return r[e];let s=n[e];if(!s||typeof s!=`object`)r[e]=s;else if(Array.isArray(s))if(typeof s[0]==`string`){let o=s[0],c=t&&Object.hasOwn(t,o)?t[o]:void 0;if(c){let t=s[1];if(typeof t!=`number`&&(t=n.push(s[1])-1),i??=new Set,i.has(t))throw Error(`Invalid circular reference`);return i.add(t),r[e]=c(a(t)),i.delete(t),r[e]}switch(o){case`Date`:r[e]=new Date(s[1]);break;case`Set`:let t=new Set;r[e]=t;for(let e=1;e<s.length;e+=1)t.add(a(s[e]));break;case`Map`:let i=new Map;r[e]=i;for(let e=1;e<s.length;e+=2)i.set(a(s[e]),a(s[e+1]));break;case`RegExp`:r[e]=new RegExp(s[1],s[2]);break;case`Object`:{let t=s[1];if(typeof n[t]==`object`&&n[t][0]!==`BigInt`)throw Error(`Invalid input`);r[e]=Object(a(t));break}case`BigInt`:r[e]=BigInt(s[1]);break;case`null`:let c=Object.create(null);r[e]=c;for(let e=1;e<s.length;e+=2){if(s[e]===`__proto__`)throw Error("Cannot parse an object with a `__proto__` property");c[s[e]]=a(s[e+1])}break;case`Int8Array`:case`Uint8Array`:case`Uint8ClampedArray`:case`Int16Array`:case`Uint16Array`:case`Float16Array`:case`Int32Array`:case`Uint32Array`:case`Float32Array`:case`Float64Array`:case`BigInt64Array`:case`BigUint64Array`:case`DataView`:{if(n[s[1]][0]!==`ArrayBuffer`)throw Error(`Invalid data`);let t=globalThis[o],i=a(s[1]);r[e]=s[2]===void 0?new t(i):new t(i,s[2],s[3]);break}case`ArrayBuffer`:{let t=s[1];if(typeof t!=`string`)throw Error(`Invalid ArrayBuffer encoding`);let n=Ie(t);r[e]=n;break}case`Temporal.Duration`:case`Temporal.Instant`:case`Temporal.PlainDate`:case`Temporal.PlainTime`:case`Temporal.PlainDateTime`:case`Temporal.PlainMonthDay`:case`Temporal.PlainYearMonth`:case`Temporal.ZonedDateTime`:{let t=o.slice(9);r[e]=Temporal[t].from(s[1]);break}case`URL`:{let t=new URL(s[1]);r[e]=t;break}case`URLSearchParams`:{let t=new URLSearchParams(s[1]);r[e]=t;break}default:throw Error(`Unknown type ${o}`)}}else if(s[0]===-7){let t=s[1];if(!Ae(t))throw Error(`Invalid input`);let n=[];r[e]=n,n[Oe]=void 0,delete n[Oe];for(let e=2;e<s.length;e+=2){let r=s[e];if(!ke(r)||r>=t)throw Error(`Invalid input`);n[r]=a(s[e+1])}n.length=t}else{let t=Array(s.length);r[e]=t;for(let e=0;e<s.length;e+=1){let n=s[e];n!==-2&&(t[e]=a(n))}}else{let t={};r[e]=t;for(let e of Object.keys(s)){if(e===`__proto__`)throw Error("Cannot parse an object with a `__proto__` property");let n=s[e];t[e]=a(n)}}return r[e]}return a(0)}var ze=new Set([`load`,`prerender`,`csr`,`ssr`,`trailingSlash`,`config`]);[...ze],[...new Set([...ze])];function Be(e){return e.filter(e=>e!=null)}var Ve=`x-sveltekit-invalidated`,He=`x-sveltekit-trailing-slash`;function k(e,t){return e+`/`+t}function Ue(e){return e instanceof c||e instanceof u?e.status:500}function We(e){return e instanceof u?e.text:`Internal Error`}var A,j,Ge,Ke=a.toString().includes(`$$`)||/function \w+\(\) \{\}/.test(a.toString()),qe=`a:`;Ke?(A={data:{},form:null,error:null,params:{},route:{id:null},state:{},status:-1,url:new URL(qe)},j={current:null},Ge={current:!1}):(A=new class{#e=s({});get data(){return n(this.#e)}set data(e){i(this.#e,e)}#t=s(null);get form(){return n(this.#t)}set form(e){i(this.#t,e)}#n=s(null);get error(){return n(this.#n)}set error(e){i(this.#n,e)}#r=s({});get params(){return n(this.#r)}set params(e){i(this.#r,e)}#i=s({id:null});get route(){return n(this.#i)}set route(e){i(this.#i,e)}#a=s({});get state(){return n(this.#a)}set state(e){i(this.#a,e)}#o=s(-1);get status(){return n(this.#o)}set status(e){i(this.#o,e)}#s=s(new URL(qe));get url(){return n(this.#s)}set url(e){i(this.#s,e)}},j=new class{#e=s(null);get current(){return n(this.#e)}set current(e){i(this.#e,e)}},Ge=new class{#e=s(!1);get current(){return n(this.#e)}set current(e){i(this.#e,e)}},Ce.v=()=>Ge.current=!0);function Je(e){Object.assign(A,e)}var Ye=`/__data.json`,Xe=`.html__data.json`;function Ze(e){return e.endsWith(`.html`)?e.replace(/\.html$/,Xe):e.replace(/\/$/,``)+Ye}async function*Qe(e,t){let n=!1,r=``,i=new TextDecoder;for(;;){let a=r.indexOf(t);for(;a!==-1;)yield r.slice(0,a),r=r.slice(a+t.length),a=r.indexOf(t);if(n){r&&(yield r);return}let o=await e.read();n=o.done,o.value&&(r+=i.decode(o.value,{stream:!0})),n&&(r+=i.decode())}}async function*$e(e){for await(let t of Qe(e,`
2
+ `)){let e=t.trim();e&&(yield JSON.parse(e))}}var{onMount:et,tick:tt}=o,nt=new Set([`icon`,`shortcut icon`,`apple-touch-icon`]),M=null,N=le(`sveltekit:scroll`)??{},P=le(`sveltekit:snapshot`)??{},F={url:Se({}),page:Se({}),navigating:t(null),updated:we()};function rt(e){N[e]=D()}function it(e,t){let n=e+1;for(;N[n];)delete N[n],n+=1;for(n=t+1;P[n];)delete P[n],n+=1}function I(e,t=!1){return t?location.replace(e.href):location.href=e.href,new Promise(h)}async function at(){if(`serviceWorker`in navigator){let e=await navigator.serviceWorker.getRegistration(S||`/`);e&&await e.update()}}var ot,st,ct,L,lt,R,ut={},dt={},ft=[],pt=[],z=null;function B(){z?.fork?.then(e=>e?.discard()),z=null,Q={element:void 0,href:void 0}}var mt=new Map,ht=new Set,gt=new Set,V=new Set,H={branch:[],error:null,url:null,nav:null},_t=!1,vt=!1,yt=!0,U=!1,W=!1,bt=!1,G=!1,K,q,J,Y,X=new Set,xt,St=new Map,Ct=new Map;async function wt(e,t,n){if(globalThis.__sveltekit_j8h1mg.data){let{q:e={},p:t={},l:n={},f:r={}}=globalThis.__sveltekit_j8h1mg.data;for(let t in e)ut[t]=e[t];for(let e in n)ut[e]=n[e];for(let e in r)ut[e]=r[e];for(let e in t)dt[e]=t[e]}document.URL!==location.href&&(location.href=location.href),R=e,await e.hooks.init?.(),ot=ce(e),L=document.documentElement,lt=t,st=e.nodes[0],ct=e.nodes[1],st(),ct(),q=history.state?.[C],J=history.state?.[w],q||(q=J=Date.now(),history.replaceState({...history.state,[C]:q,[w]:J},``));let r=N[q];function i(){r&&(history.scrollRestoration=`manual`,scrollTo(r.x,r.y))}n?(i(),await rn(lt,n)):(await Z({type:`enter`,url:ge(R.hash?fn(new URL(location.href)):location.href),replace_state:!0}),i()),nn()}async function Tt(e=!0,t=!0){if(await(xt||=Promise.resolve()),!xt)return;xt=null;let n=Y={},r=await Gt(H.url,!0);B();let i=new Map;if(G){for(let e of St.values())for(let{resource:t}of e.values())t.refresh();for(let[e,t]of Ct)for(let[n,{resource:r}]of t){let t=k(e,n),a=r.reconnect();a.catch(h),i.set(t,a)}}if(e){let e=A.state,i=r&&await Vt(r);if(!i||n!==Y)return;if(i.type===`redirect`)return At(new URL(i.location,H.url).href,{replaceState:!0},1,n);t||(i.props.page.state=e),Je(i.props.page),H={...i.state,nav:H.nav},Et(),K.$set(i.props)}else Et();let a=[];for(let e of St.values())for(let{resource:t}of e.values())a.push(t);for(let[e,t]of Ct)for(let n of t.keys()){let t=k(e,n),r=i.get(t);r&&a.push(r)}await Promise.all(a).catch(h)}function Et(){ft.length=0,G=!1}function Dt(e){pt.some(e=>e?.snapshot)&&(P[e]=pt.map(e=>e?.snapshot?.capture()))}function Ot(e){P[e]?.forEach((e,t)=>{pt[t]?.snapshot?.restore(e)})}function kt(){rt(q),ue(me,N),Dt(J),ue(pe,P)}async function At(t,n,r,i){let a,o;n.invalidateAll&&B(),await Z({type:`goto`,url:ge(t),keepfocus:n.keepFocus,noscroll:n.noScroll,replace_state:n.replaceState,state:n.state,redirect_count:r,nav_token:i,accept:()=>{if(n.invalidateAll){G=!0,a=new Set;for(let[e,t]of St)for(let[n,r]of t)r.resource?.reset(),a.add(k(e,n));o=new Set;for(let[e,t]of Ct)for(let n of t.keys())o.add(k(e,n))}n.invalidate&&n.invalidate.forEach(Qt)}}),n.invalidateAll&&e().then(e).then(()=>{for(let[e,t]of St)for(let[n,{resource:r}]of t)a?.has(k(e,n))&&r.start();for(let[e,t]of Ct)for(let[n,{resource:r}]of t)o?.has(k(e,n))&&r.reconnect()})}async function jt(e){if(e.id!==z?.id){B();let t={};X.add(t),z={id:e.id,token:t,promise:Vt({...e,preload:t}).then(e=>(X.delete(t),e.type===`loaded`&&e.state.error&&B(),e)),fork:null}}return z.promise}async function Mt(e){let t=(await Gt(e,!1))?.route;t&&await Promise.all([...t.layouts,t.leaf].filter(Boolean).map(e=>e[1]()))}async function Nt(e,t,n){let r={params:H.params,route:{id:H.route?.id??null},url:new URL(location.href)};if(H={...e.state,nav:r},Je(e.props.page),K=new R.root({target:t,props:{...e.props,stores:F,components:pt},hydrate:n,sync:!1,transformError:void 0}),await Promise.resolve(),n){let e={from:null,to:{...r,scroll:N[q]??D()},willUnload:!1,type:`enter`,complete:Promise.resolve()};V.forEach(t=>t(e))}Ot(J),vt=!0}async function Pt({url:e,params:t,branch:n,errors:r,status:i,error:a,route:o,form:s}){let c=`never`;if(S&&(e.pathname===S||e.pathname===S+`/`))c=`always`;else for(let e of n)e?.slash!==void 0&&(c=e.slash);e.pathname=d(e.pathname,c),e.search=e.search;let l={type:`loaded`,state:{url:e,params:t,branch:n,error:a,route:o},props:{constructors:Be(n).map(e=>e.node.component),page:dn(A)}};s!==void 0&&(l.props.form=s);let u={},f=!A,p=0;for(let e=0;e<Math.max(n.length,H.branch.length);e+=1){let t=n[e],r=H.branch[e];t?.data!==r?.data&&(f=!0),t&&(u={...u,...t.data},f&&(l.props[`data_${p}`]=u),p+=1)}return(!H.url||e.href!==H.url.href||H.error!==a||s!==void 0&&s!==A.form||f)&&(l.props.page={error:a,params:t,route:{id:o?.id??null},state:{},status:i,url:new URL(e),form:s??null,data:f?u:A.data}),l}async function Ft({loader:e,parent:t,url:n,params:r,route:i,server_data_node:a}){let o={dependencies:new Set,params:new Set,parent:!1,route:!1,url:!1,search_params:new Set},s=await e();return{node:s,loader:e,server:a,universal:s.universal?.load?{type:`data`,data:null,uses:o}:null,data:a?.data??null,slash:s.universal?.trailingSlash??a?.slash}}function It(e,t,n){let r=e instanceof Request?e.url:e,i=new URL(r,n);return i.origin===n.origin&&(r=i.href.slice(n.origin.length)),{resolved:i,promise:vt?b(r,i.href,t):y(r,t)}}function Lt(e,t,n,r,i,a){if(G)return!0;if(!i)return!1;if(i.parent&&e||i.route&&t||i.url&&n)return!0;for(let e of i.search_params)if(r.has(e))return!0;for(let e of i.params)if(a[e]!==H.params[e])return!0;for(let e of i.dependencies)if(ft.some(t=>t(new URL(e))))return!0;return!1}function Rt(e,t){return e?.type===`data`?e:e?.type===`skip`?t??null:null}function zt(e,t){if(!e)return new Set(t.searchParams.keys());let n=new Set([...e.searchParams.keys(),...t.searchParams.keys()]);for(let r of n){let i=e.searchParams.getAll(r),a=t.searchParams.getAll(r);i.every(e=>a.includes(e))&&a.every(e=>i.includes(e))&&n.delete(r)}return n}function Bt({error:e,url:t,route:n,params:r}){return{type:`loaded`,state:{error:e,url:t,route:n,params:r,branch:[]},props:{page:dn(A),constructors:[]}}}async function Vt({id:e,invalidating:t,url:n,params:r,route:i,preload:a}){if(z?.id===e)return X.delete(z.token),z.promise;let{errors:o,layouts:s,leaf:u}=i,d=[...s,u];o.forEach(e=>e?.().catch(h)),d.forEach(e=>e?.[1]().catch(h));let f=null,p=H.url?e!==qt(H.url):!1,m=H.route?i.id!==H.route.id:!1,ee=zt(H.url,n),g=!1;{let t=d.map((e,t)=>{let n=H.branch[t],i=!!e?.[0]&&(n?.loader!==e[1]||Lt(g,m,p,ee,n.server?.uses,r));return i&&(g=!0),i});if(t.some(Boolean)){try{f=await an(n,t)}catch(t){let o=await $(t,{url:n,params:r,route:{id:e}});return a&&X.has(a)?Bt({error:o,url:n,params:r,route:i}):Ut({status:Ue(t),error:o,url:n,route:i})}if(f.type===`redirect`)return f}}let _=f?.nodes,v=!1,y=d.map(async(e,t)=>{if(!e)return;let a=H.branch[t],o=_?.[t];if((!o||o.type===`skip`)&&e[1]===a?.loader&&!Lt(v,m,p,ee,a.universal?.uses,r))return a;if(v=!0,o?.type===`error`)throw o;return Ft({loader:e[1],url:n,params:r,route:i,parent:async()=>{let e={};for(let n=0;n<t;n+=1)Object.assign(e,(await y[n])?.data);return e},server_data_node:Rt(o===void 0&&e[0]?{type:`skip`}:o??null,e[0]?a?.server:void 0)})});for(let e of y)e.catch(h);let b=[];for(let e=0;e<d.length;e+=1)if(d[e])try{b.push(await y[e])}catch(t){if(t instanceof l)return{type:`redirect`,location:t.location};if(a&&X.has(a))return Bt({error:await $(t,{params:r,url:n,route:{id:i.id}}),url:n,params:r,route:i});let s=Ue(t),u;if(_?.includes(t))s=t.status??s,u=t.error;else if(t instanceof c)u=t.body;else{if(await F.updated.check())return await at(),await I(n);u=await $(t,{params:r,url:n,route:{id:i.id}})}let d=await Ht(e,b,o);return d?Pt({url:n,params:r,branch:b.slice(0,d.idx).concat(d.node),errors:o,status:s,error:u,route:i}):await Yt(n,{id:i.id},u,s)}else b.push(void 0);return Pt({url:n,params:r,branch:b,errors:o,status:200,error:null,route:i,form:t?void 0:null})}async function Ht(e,t,n){for(;e--;)if(n[e]){let r=e;for(;!t[r];)--r;try{return{idx:r+1,node:{node:await n[e](),loader:n[e],data:{},server:null,universal:null}}}catch{continue}}}async function Ut({status:e,error:t,url:n,route:r}){let i={},a=null;if(R.server_loads[0]===0)try{let e=await an(n,[!0]);if(e.type!==`data`||e.nodes[0]&&e.nodes[0].type!==`data`)throw 0;a=e.nodes[0]??null}catch(e){if(!(e instanceof c&&e.status===404)&&(n.origin!==E||n.pathname!==location.pathname||_t))return await I(n)}try{return Pt({url:n,params:i,branch:[await Ft({loader:st,url:n,params:i,route:r,parent:()=>Promise.resolve({}),server_data_node:Rt(a)}),{node:await ct(),loader:ct,universal:null,server:null,data:null}],status:e,error:t,errors:[],route:null})}catch(t){if(t instanceof l){await At(new URL(t.location,location.href),{},0);return}let a=await R.get_error_template(),o=await $(t,{url:n,params:i,route:r}),s=a({status:e,message:String(o?.message??``).replace(/&/g,`&amp;`).replace(/</g,`&lt;`).replace(/>/g,`&gt;`)}),c=new DOMParser().parseFromString(s,`text/html`);throw document.documentElement.replaceChild(document.adoptNode(c.head),document.head),document.documentElement.replaceChild(document.adoptNode(c.body),document.body),t}}async function Wt(e){let t=e.href;if(mt.has(t))return mt.get(t);let n;try{let r=(async()=>{let t=await R.hooks.reroute({url:new URL(e),fetch:async(t,n)=>It(t,n,e).promise})??e;if(typeof t==`string`){let n=new URL(e);R.hash?n.hash=t:n.pathname=t,t=n}return t})();mt.set(t,r),n=await r}catch{mt.delete(t);return}return n}async function Gt(e,t){if(e&&!Te(e,S,R.hash)){let n=await Wt(e);if(!n)return;let r=Kt(n);for(let n of ot){let i=n.exec(r);if(i)return{id:qt(e),invalidating:t,route:n,params:p(i),url:e}}}}function Kt(e){return f(R.hash?e.hash.replace(/^#/,``).replace(/[?#].+/,``):e.pathname.slice(S.length))||`/`}function qt(e){return(R.hash?e.hash.replace(/^#/,``):e.pathname)+e.search}function Jt({url:e,type:t,intent:n,delta:r,event:i,scroll:a}){let o=!1,s=un(H,n,e,t,a??null);r!==void 0&&(s.navigation.delta=r),i!==void 0&&(s.navigation.event=i);let c={...s.navigation,cancel:()=>{o=!0,s.reject(Error(`navigation cancelled`))}};return U||ht.forEach(e=>e(c)),o?null:s}async function Z({type:t,url:n,popped:i,keepfocus:a,noscroll:o,replace_state:s,state:c={},redirect_count:l=0,nav_token:d={},accept:f=h,block:p=h,event:m}){let ee=Y;Y=d;let g=await Gt(n,!1),_=t===`enter`?un(H,g,n,t):Jt({url:n,type:t,delta:i?.delta,intent:g,scroll:i?.scroll,event:m});if(!_){p(),Y===d&&(Y=ee);return}let v=q,y=J;f(),U=!0,vt&&_.navigation.type!==`enter`&&F.navigating.set(j.current=_.navigation);let b=g&&await Vt(g);if(!b){if(Te(n,S,R.hash))return await I(n,s);b=await Yt(n,{id:null},await $(new u(404,`Not Found`,`Not found: ${n.pathname}`),{url:n,params:{},route:{id:null}}),404,s)}if(n=g?.url||n,Y!==d){_.reject(Error(`navigation aborted`));return}if(!b)return;if(b.type===`redirect`){if(l<20){await Z({type:t,url:new URL(b.location,n),popped:i,keepfocus:a,noscroll:o,replace_state:s,state:c,redirect_count:l+1,nav_token:d}),_.fulfil(void 0);return}if(b=await Ut({status:500,error:await $(Error(`Redirect loop`),{url:n,params:{},route:{id:null}}),url:n,route:{id:null}}),!b)return}else if(b.props.page.status>=400&&await F.updated.check())return await at(),await I(n,s);if(Et(),rt(v),Dt(y),b.props.page.url.pathname!==n.pathname&&(n.pathname=b.props.page.url.pathname),c=i?i.state:c,!i){let e=+!s,t={[C]:q+=e,[w]:J+=e,[he]:c};(s?history.replaceState:history.pushState).call(history,t,``,n),s||it(q,J)}let x=g&&z?.id===g.id?z.fork:null;z?.fork&&!x?B():(z=null,Q={element:void 0,href:void 0}),b.props.page.state=c;let te;if(vt){let e=(await Promise.all(Array.from(gt,e=>e(_.navigation)))).filter(e=>typeof e==`function`);if(e.length>0){function t(){e.forEach(e=>{V.delete(e)})}e.push(t),e.forEach(e=>{V.add(e)})}let t=_.navigation.to;H={...b.state,nav:{params:t.params,route:t.route,url:t.url}},b.props.page&&(b.props.page.url=n),!a&&document.activeElement instanceof HTMLElement&&document.activeElement!==document.body&&document.activeElement.blur();let i=x&&await x;i?te=i.commit():(M=null,K.$set(b.props),M&&Object.assign(b.props.page,M),Je(b.props.page),te=r?.()),bt=!0}else await Nt(b,lt,!1);let{activeElement:ne}=document;if(await te,await e(),await e(),Y!==d){_.reject(Error(`navigation aborted`));return}b.props.page&&M&&Object.assign(b.props.page,M);let re=null;if(yt){let e=i?i.scroll:o?D():null;e?scrollTo(e.x,e.y):(re=n.hash&&document.getElementById(pn(n)))?re.scrollIntoView():scrollTo(0,0)}let ie=document.activeElement!==ne&&document.activeElement!==document.body;!a&&!ie&&ln(n,!re),yt=!0,U=!1,_.fulfil(void 0),_.navigation.to&&(_.navigation.to.scroll=D()),V.forEach(e=>e(_.navigation)),t===`popstate`&&Ot(J),F.navigating.set(j.current=null)}async function Yt(e,t,n,r,i){return e.origin===E&&e.pathname===location.pathname&&!_t?await Ut({status:r,error:n,url:e,route:t}):await I(e,i)}var Q={element:void 0,href:void 0};function Xt(){let e,t;L.addEventListener(`mousemove`,t=>{let n=t.target;clearTimeout(e),e=setTimeout(()=>{i(n,T.hover)},20)});function n(e){e.defaultPrevented||i(e.composedPath()[0],T.tap)}L.addEventListener(`mousedown`,n),L.addEventListener(`touchstart`,n,{passive:!0});let r=new IntersectionObserver(e=>{for(let t of e)t.isIntersecting&&(Mt(new URL(t.target.href)),r.unobserve(t.target))},{threshold:0});async function i(e,n){let r=ye(e,L),i=r===Q.element&&r?.href===Q.href&&n>=t;if(!r||i)return;let{url:a,external:o,download:s}=be(r,S,R.hash);if(o||s)return;let c=xe(r),l=a&&qt(H.url)===qt(a);if(!(c.reload||l))if(n<=c.preload_data){Q={element:r,href:r.href},t=T.tap;let e=await Gt(a,!1);if(!e)return;jt(e)}else n<=c.preload_code&&(Q={element:r,href:r.href},t=n,Mt(a))}function a(){r.disconnect();for(let e of L.querySelectorAll(`a`)){let{url:t,external:n,download:i}=be(e,S,R.hash);if(n||i)continue;let a=xe(e);a.reload||(a.preload_code===T.viewport&&r.observe(e),a.preload_code===T.eager&&Mt(t))}}V.add(a),a()}function $(e,t){if(e instanceof c)return e.body;let n=Ue(e),r=We(e);return R.hooks.handleError({error:e,event:t,status:n,message:r})??{message:r}}function Zt(e,t={}){return e=new URL(ge(e)),e.origin===E?At(e,t,0):Promise.reject(Error(`goto: invalid URL`))}function Qt(e){if(typeof e==`function`)ft.push(e);else{let{href:t}=new URL(e,location.href);ft.push(e=>e.href===t)}}function $t(){return G=!0,Tt()}async function en(e){e.type===`error`?await tn(e.error,e.status):e.type===`redirect`?await At(e.location,{invalidateAll:!0},0):(A.form=e.data,A.status=e.status,K.$set({form:null,page:dn(A)}),await tt(),K.$set({form:e.data}),e.type===`success`&&ln(A.url))}async function tn(e,t=500){let n=new URL(location.href),{branch:r,route:i}=H;if(!i)return;let a=await Ht(H.branch.length,r,i.errors);if(a){let o=await Pt({url:n,params:H.params,branch:r.slice(0,a.idx).concat(a.node),status:t,error:e,route:i});H={...o.state,nav:H.nav},K.$set(o.props),Je(o.props.page),tt().then(()=>ln(H.url))}}function nn(){history.scrollRestoration=`manual`,addEventListener(`beforeunload`,e=>{let t=!1;if(kt(),!U){let e=un(H,void 0,null,`leave`),n={...e.navigation,cancel:()=>{t=!0,e.reject(Error(`navigation cancelled`))}};ht.forEach(e=>e(n))}t?(e.preventDefault(),e.returnValue=``):history.scrollRestoration=`auto`}),addEventListener(`visibilitychange`,()=>{document.visibilityState===`hidden`&&kt()}),navigator.connection?.saveData||Xt(),L.addEventListener(`click`,async t=>{if(t.button||t.which!==1||t.metaKey||t.ctrlKey||t.shiftKey||t.altKey||t.defaultPrevented)return;let n=ye(t.composedPath()[0],L);if(!n)return;let{url:r,external:i,target:a,download:o}=be(n,S,R.hash);if(!r)return;if(a===`_parent`||a===`_top`){if(window.parent!==window)return}else if(a&&a!==`_self`)return;let s=xe(n);if(!(n instanceof SVGAElement)&&r.protocol!==location.protocol&&!(r.protocol===`https:`||r.protocol===`http:`)||o)return;let[c,l]=(R.hash?r.hash.replace(/^#/,``):r.href).split(`#`),u=c===m(location);if(i||s.reload&&(!u||!l)){Jt({url:r,type:`link`,event:t})?U=!0:t.preventDefault();return}if(l!==void 0&&u){let[,i]=H.url.href.split(`#`);if(i===l){if(t.preventDefault(),l===``||l===`top`&&n.ownerDocument.getElementById(`top`)===null)scrollTo({top:0});else{let e=n.ownerDocument.getElementById(decodeURIComponent(l));e&&(e.scrollIntoView(),e.focus())}return}if(W=!0,rt(q),e(r),!s.replace_state)return;W=!1}t.preventDefault(),await new Promise(e=>{requestAnimationFrame(()=>{setTimeout(e,0)}),setTimeout(e,100)}),await Z({type:`link`,url:r,keepfocus:s.keepfocus,noscroll:s.noscroll,replace_state:s.replace_state??r.href===location.href,event:t})}),L.addEventListener(`submit`,e=>{if(e.defaultPrevented)return;let t=HTMLFormElement.prototype.cloneNode.call(e.target),n=e.submitter;if((n?.formTarget||t.target)===`_blank`||(n?.formMethod||t.method)!==`get`)return;let r=new URL(n?.hasAttribute(`formaction`)&&n?.formAction||t.action);if(Te(r,S,!1))return;let i=e.target,a=xe(i);if(a.reload)return;e.preventDefault(),e.stopPropagation();let o=new FormData(i,n);r.search=new URLSearchParams(o).toString(),Z({type:`form`,url:r,keepfocus:a.keepfocus,noscroll:a.noscroll,replace_state:a.replace_state??r.href===location.href,event:e})}),addEventListener(`popstate`,async t=>{if(!cn)if(t.state?.[`sveltekit:history`]){let n=t.state[C];if(Y={},n===q)return;let r=N[n],i=t.state[`sveltekit:states`]??{},a=new URL(t.state[`sveltekit:pageurl`]??location.href),o=t.state[w],s=H.url?m(location)===m(H.url):!1;if(o===J&&(bt||s)){i!==A.state&&(A.state=i),e(a),N[q]=D(),r&&scrollTo(r.x,r.y),q=n;return}let c=n-q;await Z({type:`popstate`,url:a,popped:{state:i,scroll:r,delta:c},accept:()=>{q=n,J=o},block:()=>{history.go(-c)},nav_token:Y,event:t})}else W||(e(new URL(location.href)),R.hash&&location.reload())}),addEventListener(`hashchange`,()=>{W&&(W=!1,history.replaceState({...history.state,[C]:++q,[w]:J},``,location.href))});for(let e of document.querySelectorAll(`link`))nt.has(e.rel)&&(e.href=e.href);addEventListener(`pageshow`,e=>{e.persisted&&F.navigating.set(j.current=null)});function e(e){H.url=A.url=e,F.page.set(dn(A)),F.page.notify()}}async function rn(e,{status:t=200,error:n,node_ids:r,params:i,route:a,server_route:o,data:s,form:c}){_t=!0;let u=new URL(location.href),d;({params:i={},route:a={id:null}}=await Gt(u,!1)||{}),d=ot.find(({id:e})=>e===a.id);let f,p=!0;try{let e=r.map(async(t,n)=>{let r=s[n];return r?.uses&&(r.uses=sn(r.uses)),Ft({loader:R.nodes[t],url:u,params:i,route:a,parent:async()=>{let t={};for(let r=0;r<n;r+=1)Object.assign(t,(await e[r]).data);return t},server_data_node:Rt(r)})}),o=await Promise.all(e);if(d){let e=d.layouts;for(let t=0;t<e.length;t++)e[t]||o.splice(t,0,void 0)}f=await Pt({url:u,params:i,branch:o,status:t,error:n,errors:d?.errors,form:c,route:d??null})}catch(t){if(t instanceof l)return await I(new URL(t.location,location.href));f=await Ut({status:Ue(t),error:await $(t,{url:u,params:i,route:a}),url:u,route:a}),e.textContent=``,p=!1}f&&(f.props.page&&(f.props.page.state={}),await Nt(f,e,p))}async function an(e,t){let n=new URL(e);n.pathname=Ze(e.pathname),e.pathname.endsWith(`/`)&&n.searchParams.append(He,`1`),n.searchParams.append(Ve,t.map(e=>e?`1`:`0`).join(``));let r=await(0,window.fetch)(n.href,{});if(!r.ok){let e;throw r.headers.get(`content-type`)?.includes(`application/json`)?e=await r.json():r.status===404?e=`Not Found`:r.status===500&&(e=`Internal Error`),new c(r.status,e)}return new Promise((e,t)=>{on(e,r).catch(t)})}async function on(e,t){let n=t.body.getReader(),r=new Map;function i(e){return Re(e,{...R.decoders,Promise:e=>new Promise((t,n)=>{r.set(e,{fulfil:t,reject:n})})})}for await(let t of $e(n)){if(t.type===`redirect`)return e(t);if(t.type===`data`)t.nodes?.forEach(e=>{e?.type===`data`&&(e.uses=sn(e.uses),e.data=i(e.data))}),e(t);else if(t.type===`chunk`){let{id:e,data:n,error:a}=t,o=r.get(e);r.delete(e),a?o.reject(i(a)):o.fulfil(i(n))}}}function sn(e){return{dependencies:new Set(e?.dependencies??[]),params:new Set(e?.params??[]),parent:!!e?.parent,route:!!e?.route,url:!!e?.url,search_params:new Set(e?.search_params??[])}}var cn=!1;function ln(e,t=!0){let n=document.querySelector(`[autofocus]`);if(n)n.focus();else{let n=pn(e);if(n&&document.getElementById(n)){let{x:r,y:i}=D();setTimeout(()=>{let a=history.state;cn=!0,location.replace(new URL(`#${n}`,location.href)),history.replaceState(a,``,e),t&&scrollTo(r,i),cn=!1})}else{let e=document.body,t=e.getAttribute(`tabindex`);e.tabIndex=-1,e.focus({preventScroll:!0,focusVisible:!1}),t===null?e.removeAttribute(`tabindex`):e.setAttribute(`tabindex`,t)}let r=getSelection();if(r&&r.type!==`None`){let e=[];for(let t=0;t<r.rangeCount;t+=1)e.push(r.getRangeAt(t));setTimeout(()=>{if(r.rangeCount===e.length){for(let t=0;t<r.rangeCount;t+=1){let n=e[t],i=r.getRangeAt(t);if(n.commonAncestorContainer!==i.commonAncestorContainer||n.startContainer!==i.startContainer||n.endContainer!==i.endContainer||n.startOffset!==i.startOffset||n.endOffset!==i.endOffset)return}r.removeAllRanges()}})}}}function un(e,t,n,r,i=null){let a,o,s=new Promise((e,t)=>{a=e,o=t});return s.catch(h),{navigation:{from:{params:e.params,route:{id:e.route?.id??null},url:e.url,scroll:D()},to:n&&{params:t?.params??null,route:{id:t?.route?.id??null},url:n,scroll:i},willUnload:!t,type:r,complete:s},fulfil:a,reject:o}}function dn(e){return{data:e.data,error:e.error,form:e.form,params:e.params,route:e.route,state:e.state,status:e.status,url:e.url}}function fn(e){let t=new URL(e);return t.hash=decodeURIComponent(e.hash),t}function pn(e){let t;if(R.hash){let[,,n]=e.hash.split(`#`,3);t=n??``}else t=e.hash.slice(1);return decodeURIComponent(t)}export{wt as a,A as c,Ee as d,h as f,$t as i,Ge as l,en as n,F as o,Zt as r,j as s,R as t,Le as u};
@@ -0,0 +1 @@
1
+ import"./CL3s_3g5.js";import{c as e,o as t}from"./CVGG5cou.js";var n={get data(){return e.data},get error(){return e.error},get form(){return e.form},get params(){return e.params},get route(){return e.route},get state(){return e.state},get status(){return e.status},get url(){return e.url}};t.updated.check;var r=n;export{r as t};
@@ -0,0 +1,3 @@
1
+ I@���m�*��1=�K""����'�b���)dTf���4L��A��3w�Xi��њ�|�¯���Ƒ�g�<�U��41�ؚ.%���j���.���`넘�5���:�
2
+ D�[�0
3
+ ,3Jq����s��Z���4
@@ -0,0 +1,2 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../nodes/0.Bn31RLpu.js","../chunks/CL3s_3g5.js","../chunks/QTnfLwEv.js","../chunks/xihTtKlq.js","../chunks/laOiH5FT.js","../chunks/DoI8t0cF.js","../chunks/35-OQSYE2.js","../assets/0.C_NYyhEq.css","../nodes/1.DVyoAMuu.js","../chunks/DexxF51_.js","../chunks/CVGG5cou.js","../chunks/CMZsPk6c.js","../chunks/D3VSOnNo.js","../chunks/BMx84FKI.js","../chunks/DdLtOT1b.js","../chunks/BjWOHXTN.js","../chunks/CFFv3oN9.js","../chunks/Ciz-tExL2.js","../nodes/2.BlsyZJiA.js","../chunks/CWIBiefo.js","../chunks/DvbQzS922.js","../chunks/DAZNh3B6.js","../chunks/CQAfTXcm.js","../chunks/BH_AsplL.js","../chunks/hfCvJzwQ.js","../chunks/CAToUyMt.js","../chunks/BtkBkYMP.js","../chunks/BfI32HyH.js","../chunks/Ca2rRgYg.js","../chunks/CadtTpP_.js","../chunks/CqixH_hy.js","../chunks/DbfF2wEw.js","../chunks/UeEPBo0V.js","../chunks/DXS9GeHI.js","../chunks/HclGiUj8.js","../chunks/Bq18tj_a2.js","../chunks/C5qitKDD2.js","../chunks/D4YBJLId.js","../chunks/DNVbFK9q.js","../chunks/DWPCC0_6.js","../chunks/DG2wOVmu.js","../chunks/Cn-AOzef.js","../chunks/BY-g58bE.js","../nodes/3.CZJ4gpKN.js","../nodes/4.CT-8QP_q.js","../nodes/5.DNdojkB1.js","../nodes/6.4pxciwO2.js","../chunks/oI3J06TA.js","../chunks/BGDynKNS.js","../chunks/BX5J3njl.js","../chunks/Q4vGvM2S.js","../chunks/BbD3QanV2.js","../nodes/7.DvXhnRZv.js","../nodes/8.DVVhiAKi.js","../chunks/XAfNJj4O.js","../chunks/Dt77lQ3V2.js","../chunks/BN8xa1dZ2.js","../nodes/9.Brd0DUUz.js","../chunks/xnWCJBmG.js","../chunks/Ot8VM1_P.js","../chunks/Biu_T4Iy.js","../chunks/iVsN6nmV2.js","../chunks/CdwjLyny.js","../nodes/10.BtVz3VRC.js","../chunks/BzJx6omo.js","../chunks/DZfZ3649.js","../chunks/Cv5WJ8WQ.js","../chunks/CaGxax7M.js","../assets/select.CV-KWLNP.css","../chunks/p42Je1322.js","../nodes/11.CQbreiqk.js","../chunks/N19EYJwE.js","../chunks/BcvLMt3u.js","../chunks/0Bff9sTL.js","../chunks/CT5oxrR3.js","../chunks/DNL96-hz.js","../chunks/DqR8kuM62.js","../nodes/12.oeQtPVlU.js","../chunks/B7wd2Kj42.js","../nodes/13.C4vZxwnQ.js","../nodes/14.DASy3nb-.js","../chunks/CACZJiWS.js","../chunks/iO9OM2Vo.js","../nodes/15.BC1C3cKb.js","../chunks/BGbeR-fH.js","../chunks/B4n-OjCm.js","../nodes/16.ndEU45yq.js","../chunks/B3_WmU5u.js","../chunks/DOfEstn5.js","../chunks/DW4WVvYR2.js","../nodes/17.LLtsCwzz.js","../nodes/18.Df6brJKh.js","../nodes/19.CD3DqCqe.js","../chunks/CNLFdBld.js","../chunks/CFBprvLO.js","../nodes/20.BFohqiKN.js","../chunks/zm1p3CI2.js","../chunks/B8eqaxfc2.js","../chunks/DxuIu10f.js","../chunks/Cums1AjR.js","../assets/20._Lx8kfnW.css","../nodes/21.DZiGzC7Z.js","../nodes/23.C46hjmtc.js","../chunks/CGtjofto.js","../chunks/DZABOdll2.js","../nodes/24.DCmyEKJz.js","../nodes/25.CweTxf-0.js","../nodes/26.BoPjubts.js","../nodes/27.DyMg91My.js","../nodes/28.CPR6YRXC.js","../nodes/29.Coy1qPJ_.js","../nodes/30.CzJyrCok.js","../nodes/31.V7XQDJEJ.js","../nodes/32.Opc9fkyM.js"])))=>i.map(i=>d[i]);
2
+ import{At as e,B as t,F as n,It as r,L as i,Q as a,V as o,W as s,X as c,a as l,at as u,c as d,dt as f,ft as p,gt as m,i as h,it as g,k as _,kt as v,ot as y,pt as b,r as x,vt as S,xt as C,z as w}from"../chunks/CL3s_3g5.js";import{t as T}from"../chunks/HclGiUj8.js";import"../chunks/xihTtKlq.js";var E={},D=o(`<div id="svelte-announcer" aria-live="assertive" aria-atomic="true" style="position: absolute; left: 0; top: 0; clip: rect(0 0 0 0); clip-path: inset(50%); overflow: hidden; white-space: nowrap; width: 1px; height: 1px"><!></div>`),O=o(`<!> <!>`,1);function k(o,h){e(h,!0);let T=l(h,`components`,23,()=>[]),E=l(h,`data_0`,3,null),k=l(h,`data_1`,3,null),A=l(h,`data_2`,3,null);y(()=>h.stores.page.set(h.page)),u(()=>{h.stores,h.page,h.constructors,T(),h.form,E(),k(),A(),h.stores.page.notify()});let j=S(!1),M=S(!1),N=S(null);x(()=>{let e=h.stores.page.subscribe(()=>{c(j)&&(m(M,!0),a().then(()=>{m(N,document.title||`untitled page`,!0)}))});return m(j,!0),e});let P=C(()=>h.constructors[2]);var F=O(),I=p(F),L=e=>{let r=C(()=>h.constructors[0]);var i=t();_(p(i),()=>c(r),(e,r)=>{d(r(e,{get data(){return E()},get form(){return h.form},get params(){return h.page.params},children:(e,r)=>{var i=t(),a=p(i),o=e=>{let n=C(()=>h.constructors[1]);var r=t();_(p(r),()=>c(n),(e,n)=>{d(n(e,{get data(){return k()},get form(){return h.form},get params(){return h.page.params},children:(e,n)=>{var r=t();_(p(r),()=>c(P),(e,t)=>{d(t(e,{get data(){return A()},get form(){return h.form},get params(){return h.page.params}}),e=>T()[2]=e,()=>T()?.[2])}),w(e,r)},$$slots:{default:!0}}),e=>T()[1]=e,()=>T()?.[1])}),w(e,r)},s=e=>{let n=C(()=>h.constructors[1]);var r=t();_(p(r),()=>c(n),(e,t)=>{d(t(e,{get data(){return k()},get form(){return h.form},get params(){return h.page.params}}),e=>T()[1]=e,()=>T()?.[1])}),w(e,r)};n(a,e=>{h.constructors[2]?e(o):e(s,-1)}),w(e,i)},$$slots:{default:!0}}),e=>T()[0]=e,()=>T()?.[0])}),w(e,i)},R=e=>{let n=C(()=>h.constructors[0]);var r=t();_(p(r),()=>c(n),(e,t)=>{d(t(e,{get data(){return E()},get form(){return h.form},get params(){return h.page.params}}),e=>T()[0]=e,()=>T()?.[0])}),w(e,r)};n(I,e=>{h.constructors[1]?e(L):e(R,-1)});var z=b(I,2),B=e=>{var t=D(),a=f(t),o=e=>{var t=s();g(()=>i(t,c(N))),w(e,t)};n(a,e=>{c(M)&&e(o)}),r(t),w(e,t)};n(z,e=>{c(j)&&e(B)}),w(o,F),v()}var A=h(k),j=[()=>T(()=>import(`../nodes/0.Bn31RLpu.js`),__vite__mapDeps([0,1,2,3,4,5,6,7]),import.meta.url),()=>T(()=>import(`../nodes/1.DVyoAMuu.js`),__vite__mapDeps([8,1,2,3,9,10,11,12,13,14,15,16,17]),import.meta.url),()=>T(()=>import(`../nodes/2.BlsyZJiA.js`),__vite__mapDeps([18,1,2,3,19,12,20,21,22,23,4,5,24,13,14,25,26,15,27,28,29,30,31,32,33,34,9,10,35,36,37,38,39,40,41,42]),import.meta.url),()=>T(()=>import(`../nodes/3.CZJ4gpKN.js`),__vite__mapDeps([43,1,2,3,9,10,11,12,13,14,15,16,17]),import.meta.url),()=>T(()=>import(`../nodes/4.CT-8QP_q.js`),__vite__mapDeps([44,1,2,3]),import.meta.url),()=>T(()=>import(`../nodes/5.DNdojkB1.js`),__vite__mapDeps([45,1,2,3,22,12,23,4,5,24,13,14,25,26,15,27,28,29,30,31,32,33,34,9,10,35,36,37,38,39]),import.meta.url),()=>T(()=>import(`../nodes/6.4pxciwO2.js`),__vite__mapDeps([46,1,2,3,12,47,48,21,22,23,4,5,24,13,14,25,26,15,27,28,29,30,31,32,33,34,9,10,35,36,37,38,39,49,50,41,42,51]),import.meta.url),()=>T(()=>import(`../nodes/7.DvXhnRZv.js`),__vite__mapDeps([52,1,2,3,13,12,14,22,23,4,5,24,25,26,15,27,28,29,30,31,32,33,34,9,10,35,36,37,38,39]),import.meta.url),()=>T(()=>import(`../nodes/8.DVVhiAKi.js`),__vite__mapDeps([53,1,2,3,13,12,14,15,54,24,9,10,55,56]),import.meta.url),()=>T(()=>import(`../nodes/9.Brd0DUUz.js`),__vite__mapDeps([57,1,2,10,3,12,13,14,19,41,58,39,9,59,16,60,17,6,36,61,62]),import.meta.url),()=>T(()=>import(`../nodes/10.BtVz3VRC.js`),__vite__mapDeps([63,1,2,3,13,12,14,25,26,40,64,32,65,5,24,66,67,28,29,68,54,59,16,17,55,69]),import.meta.url),()=>T(()=>import(`../nodes/11.CQbreiqk.js`),__vite__mapDeps([70,1,2,10,3,5,12,13,14,25,67,71,72,73,41,74,58,59,75,16,55,6,76,36]),import.meta.url),()=>T(()=>import(`../nodes/12.oeQtPVlU.js`),__vite__mapDeps([77,1,2,3,19,12,59,75,16,78]),import.meta.url),()=>T(()=>import(`../nodes/13.C4vZxwnQ.js`),__vite__mapDeps([79,1,2,10,3,13,12,14,20,72,54,24,59,75,16,55,6,78,36]),import.meta.url),()=>T(()=>import(`../nodes/14.DASy3nb-.js`),__vite__mapDeps([80,1,2,10,3,12,13,14,81,72,37,38,58,32,54,24,82,5,28,59,75,16,55,6,78,36]),import.meta.url),()=>T(()=>import(`../nodes/15.BC1C3cKb.js`),__vite__mapDeps([83,1,2,3,12,13,14,84,21,73,64,27,85,24,28,5,29,30,59,16,60,17,35,10,36]),import.meta.url),()=>T(()=>import(`../nodes/16.ndEU45yq.js`),__vite__mapDeps([86,1,2,10,3,13,12,14,25,26,87,88,72,64,58,32,59,75,16,60,17,55,6,36,89]),import.meta.url),()=>T(()=>import(`../nodes/17.LLtsCwzz.js`),__vite__mapDeps([90,1,2,3,88,12,9,10,56,14]),import.meta.url),()=>T(()=>import(`../nodes/18.Df6brJKh.js`),__vite__mapDeps([91,1,2,3]),import.meta.url),()=>T(()=>import(`../nodes/19.CD3DqCqe.js`),__vite__mapDeps([92,1,2,10,3,12,62,22,23,4,5,24,13,14,25,26,15,27,28,29,30,31,32,33,34,9,35,36,37,38,39,93,94,41,74,59,75,6]),import.meta.url),()=>T(()=>import(`../nodes/20.BFohqiKN.js`),__vite__mapDeps([95,2,1,34,3,4,5,24,12,23,13,14,25,26,15,27,28,29,30,31,32,33,9,10,35,36,66,67,84,96,97,94,41,65,68,54,82,98,99,16,60,17,55,76,100]),import.meta.url),()=>T(()=>import(`../nodes/21.DZiGzC7Z.js`),__vite__mapDeps([101,1,2,3,13,12,14,15,54,24,9,10,55,56]),import.meta.url),()=>T(()=>import(`../chunks/BvRk9kiK2.js`),[],import.meta.url),()=>T(()=>import(`../nodes/23.C46hjmtc.js`),__vite__mapDeps([102,1,2,10,3,5,24,12,13,14,81,66,71,87,96,97,93,62,94,41,74,32,49,72,37,58,27,103,39,85,28,29,30,31,54,82,59,75,55,69,6,104,25,36,51,89]),import.meta.url),()=>T(()=>import(`../nodes/24.DCmyEKJz.js`),__vite__mapDeps([105,1,2,3,13,12,14,15,54,24,9,10,55,56]),import.meta.url),()=>T(()=>import(`../nodes/25.CweTxf-0.js`),__vite__mapDeps([106,1,2,3,19,12,48,39,59,16,17,61,62]),import.meta.url),()=>T(()=>import(`../nodes/26.BoPjubts.js`),__vite__mapDeps([107,1,2,3,47,12,64,59,16,17]),import.meta.url),()=>T(()=>import(`../nodes/27.DyMg91My.js`),__vite__mapDeps([108,1,2,10,3,13,12,14,72,41,74,58,9,59,75,16,60,17,55,69,6,104,66,25,94,76,36]),import.meta.url),()=>T(()=>import(`../nodes/28.CPR6YRXC.js`),__vite__mapDeps([109,1,2,10,3,13,12,14,87,88,58,103,32,59,75,16,60,17,55,6,36]),import.meta.url),()=>T(()=>import(`../nodes/29.Coy1qPJ_.js`),__vite__mapDeps([110,1,2,10,3,12,13,14,48,72,58,85,24,28,5,29,30,59,75,16,55,6,78,36]),import.meta.url),()=>T(()=>import(`../nodes/30.CzJyrCok.js`),__vite__mapDeps([111,1,2,10,3,13,12,14,97,50,85,24,28,5,29,30,59,75,16,6,78,36]),import.meta.url),()=>T(()=>import(`../nodes/31.V7XQDJEJ.js`),__vite__mapDeps([112,1,2,3,12,58,59,16,60,17]),import.meta.url),()=>T(()=>import(`../nodes/32.Opc9fkyM.js`),__vite__mapDeps([113,1,2,3,49,12,64,59,16,17]),import.meta.url)],M=[0,2,5,6],N={"/":[-8],"/accept-invite":[-9],"/admin":[-10,[2],[3]],"/admin/audit":[-11,[2],[3]],"/admin/compute":[-12,[2],[3]],"/admin/organizations":[-13,[2],[3]],"/admin/projects":[-14,[2],[3]],"/admin/projects/[id]":[-15,[2],[3]],"/admin/system":[-16,[2],[3]],"/admin/users":[-17,[2],[3]],"/auth/email/sent":[17],"/auth/email/start":[-19],"/library":[-20,[4]],"/library/[guid]":[-21,[4]],"/login":[-22],"/logout":[22],"/projects":[-24,[5]],"/setup":[-25],"/team":[-26,[6]],"/team/activity":[26,[6]],"/team/compute":[-28,[6]],"/team/members":[-29,[6]],"/team/projects":[-30,[6]],"/team/reclaim":[-31,[6]],"/team/settings":[-32,[6]],"/team/shares":[-33,[6]]},P={handleError:(({error:e})=>{console.error(e)}),reroute:(()=>{}),transport:{}},F=Object.fromEntries(Object.entries(P.transport).map(([e,t])=>[e,t.decode])),I=Object.fromEntries(Object.entries(P.transport).map(([e,t])=>[e,t.encode])),L=!1,R=(e,t)=>F[e](t),z=()=>T(()=>import(`../chunks/Bjy-W4x22.js`).then(e=>e.default),[],import.meta.url);export{R as decode,F as decoders,N as dictionary,I as encoders,z as get_error_template,L as hash,P as hooks,E as matchers,j as nodes,A as root,M as server_loads};
@@ -0,0 +1 @@
1
+ import{a as e,d as t}from"../chunks/CVGG5cou.js";export{t as load_css,e as start};
@@ -0,0 +1 @@
1
+ import{At as e,X as t,kt as n,xt as r}from"../chunks/CL3s_3g5.js";import"../chunks/xihTtKlq.js";import{t as i}from"../chunks/DexxF51_.js";import{t as a}from"../chunks/CMZsPk6c.js";function o(o,s){e(s,!0);{let e=r(()=>i.error?.message),n=r(()=>i.error&&typeof i.error==`object`&&`details`in i.error?i.error.details:void 0);a(o,{get status(){return i.status},get message(){return t(e)},get details(){return t(n)}})}n()}export{o as component};
@@ -0,0 +1,2 @@
1
+ import{$ as e,At as t,B as n,C as r,D as i,F as a,Ft as o,G as s,It as c,K as l,L as u,M as d,Rt as f,V as p,W as m,X as h,_ as g,at as _,dt as v,ft as y,gt as b,h as x,it as S,k as C,kt as w,lt as T,mt as E,n as D,nt as O,o as k,pt as A,s as j,vt as M,xt as N,z as P,zt as ee}from"../chunks/CL3s_3g5.js";import{i as F}from"../chunks/CVGG5cou.js";import"../chunks/xihTtKlq.js";import{i as te}from"../chunks/DoI8t0cF.js";import{i as I}from"../chunks/D3VSOnNo.js";import{t as L}from"../chunks/BMx84FKI.js";import{t as ne}from"../chunks/CAToUyMt.js";import{t as re}from"../chunks/CaGxax7M.js";import{t as ie}from"../chunks/N19EYJwE.js";import{t as R}from"../chunks/BcvLMt3u.js";import{t as ae}from"../chunks/0Bff9sTL.js";import{t as oe}from"../chunks/Cn-AOzef.js";import{t as se}from"../chunks/CT5oxrR3.js";import{t as ce}from"../chunks/xnWCJBmG.js";import{t as le}from"../chunks/Ot8VM1_P.js";import{t as ue}from"../chunks/DNL96-hz.js";import{n as de,t as fe}from"../chunks/CFFv3oN9.js";import{t as z}from"../chunks/Dt77lQ3V2.js";import{n as B}from"../chunks/35-OQSYE2.js";import{t as pe}from"../chunks/DqR8kuM62.js";import"../chunks/C5qitKDD2.js";var me=new Set([`$$slots`,`$$events`,`$$legacy`]);function he(e,t){let n=k(t,me),r=[[`path`,{d:`M21 21H8a2 2 0 0 1-1.42-.587l-3.994-3.999a2 2 0 0 1 0-2.828l10-10a2 2 0 0 1 2.829 0l5.999 6a2 2 0 0 1 0 2.828L12.834 21`}],[`path`,{d:`m5.082 11.09 8.828 8.828`}]];I(e,j({name:`eraser`},()=>n,{get iconNode(){return r}}))}var ge=new Set([`$$slots`,`$$events`,`$$legacy`]);function _e(e,t){let n=k(t,ge),r=[[`path`,{d:`M12 2v10`}],[`path`,{d:`M18.4 6.6a9 9 0 1 1-12.77.04`}]];I(e,j({name:`power`},()=>n,{get iconNode(){return r}}))}var V=6e4,H=5e3;function ve(e){let t=M(E({state:`idle`,reachable:!1,ready:!1,rhinoVersion:null,computeVersion:null,selvaInstalled:!1,selvaVersion:null,plugins:{},activeChildren:null,idleSpanSeconds:null})),n=null,r=0,i=!1;async function a(){if(i)return!1;try{let n=await fetch(`/admin/api/compute/status?serverId=${e()}`);if(i)return!1;if(!n.ok)return b(t,{...h(t),reachable:!1,ready:!1},!0),!1;let r=await n.json(),a=r.reachable,o=r.ready??a;return b(t,{reachable:a,ready:o,rhinoVersion:r.rhinoVersion,computeVersion:r.computeVersion,selvaInstalled:r.selvaInstalled,selvaVersion:r.selvaVersion,plugins:r.plugins??{},activeChildren:r.activeChildren??null,idleSpanSeconds:r.idleSpanSeconds??null,state:a?o?r.selvaInstalled?`ok`:`warning`:`loading`:`error`},!0),o}catch{return i||b(t,{...h(t),reachable:!1,ready:!1},!0),!1}}async function o(){let e=await a();i||e||(Date.now()<r?(h(t).state!==`loading`&&b(t,{...h(t),state:`checking`},!0),n=setTimeout(o,H)):h(t).reachable?b(t,{...h(t),state:`warning`},!0):b(t,{...h(t),state:`error`,reachable:!1,ready:!1},!0))}function s(){i||(n!==null&&(clearTimeout(n),n=null),r=Date.now()+V,b(t,{...h(t),state:`checking`},!0),o())}function c(){i=!0,n!==null&&(clearTimeout(n),n=null)}return{get state(){return h(t)},check:s,stop:c}}var U=p(`<button class="text-muted-foreground hover:text-foreground ml-auto flex items-center gap-1 text-xs"> <!></button>`),W=p(`<p class="text-muted-foreground text-xs">No organizations exist yet.</p>`),G=p(`<label class="hover:bg-muted/40 flex items-center gap-2 rounded px-2 py-1 text-xs"><input type="checkbox" class="h-3.5 w-3.5"/> <span class="truncate"> </span> <span class="text-muted-foreground ml-auto font-mono text-[10px]"> </span></label>`),ye=p(`<div class="grid gap-1 sm:grid-cols-2"></div>`),be=p(`<p class="text-muted-foreground text-xs">This server is the global default — it stays visible to every org regardless of the
2
+ allowlist.</p>`),xe=p(`<p class="text-muted-foreground text-xs">No orgs selected — this server is dormant (admin-only).</p>`),Se=p(`<div class="space-y-2"><div class="flex items-center gap-3"><p class="text-muted-foreground text-xs">Available to</p> <div class="bg-muted inline-flex rounded-md p-0.5"><button>All orgs</button> <button>Specific orgs</button></div> <!></div> <!> <!></div>`),Ce=p(`<span class="flex items-center gap-1 rounded-full bg-green-100 px-2 py-0.5 text-xs font-medium text-green-800 dark:bg-green-900/30 dark:text-green-400"><!> default</span>`),we=p(`<button class="text-muted-foreground hover:text-foreground text-xs underline-offset-2 hover:underline">set as default</button>`),Te=p(`<!> `,1),Ee=p(`<!> <!>`,1),De=p(`<span class="text-muted-foreground">Loading…</span>`),Oe=p(`<span class="text-red-600 dark:text-red-400">Not installed</span>`),ke=p(`<div class="grid grid-cols-3 gap-2"><div class="bg-muted/40 rounded-md px-3 py-2"><p class="text-muted-foreground text-xs">Rhino</p> <p class="mt-0.5 text-xs font-medium"> </p></div> <div class="bg-muted/40 rounded-md px-3 py-2"><p class="text-muted-foreground text-xs">Compute</p> <p class="mt-0.5 text-xs font-medium"> </p></div> <div class="bg-muted/40 rounded-md px-3 py-2"><p class="text-muted-foreground text-xs">Selva Plugin</p> <p class="mt-0.5 text-xs font-medium"><!></p></div></div> <div class="grid grid-cols-2 gap-2"><div class="bg-muted/40 rounded-md px-3 py-2"><p class="text-muted-foreground text-xs">Active children</p> <p class="mt-0.5 text-xs font-medium"> </p></div> <div class="bg-muted/40 rounded-md px-3 py-2"><p class="text-muted-foreground text-xs">Idle for</p> <p class="mt-0.5 text-xs font-medium"> </p></div></div>`,1),Ae=p(`<button class="text-muted-foreground hover:text-destructive shrink-0 text-xs underline-offset-2 hover:underline">Clear</button>`),je=p(`<button class="text-muted-foreground hover:text-foreground shrink-0 text-xs underline-offset-2 hover:underline">Undo</button>`),Me=p(`<div class="bg-muted/40 flex items-center justify-between rounded-md px-3 py-1.5"><span class="text-xs font-medium"> </span> <span class="text-muted-foreground text-xs"> </span></div>`),Ne=p(`<div class="mt-2 grid gap-1.5 sm:grid-cols-2 lg:grid-cols-3"></div>`),Pe=p(`<div><button class="text-muted-foreground hover:text-foreground flex items-center gap-1 text-xs"><!> </button> <!></div>`),Fe=p(`<div><div class="flex items-center justify-between"><div class="flex items-center gap-2"><!> <!></div> <div class="flex items-center gap-3"><div class="flex items-center gap-1.5"><!> <span> </span></div> <!> <!> <!> <!></div></div> <!> <div class="grid gap-2 sm:grid-cols-2"><div class="space-y-1"><p class="text-muted-foreground text-xs">Server URL</p> <!></div> <div class="space-y-1"><p class="text-muted-foreground text-xs">API Key (optional)</p> <div class="flex gap-1.5"><!> <!></div></div> <div class="space-y-1"><p class="text-muted-foreground text-xs">Timeout (ms)</p> <!></div> <div class="space-y-1"><p class="text-muted-foreground text-xs">Retries</p> <!></div></div> <!> <!></div>`),Ie=p(`<!> Add server`,1),K=p(`<!> <button type="button" class="border-muted-foreground/30 text-muted-foreground hover:border-foreground/50 hover:text-foreground hover:bg-muted/30 flex w-full items-center justify-center gap-2 rounded-lg border border-dashed py-4 text-sm font-medium transition-colors"><!> Add another server</button>`,1),Le=p(`<div class="space-y-6"><!> <!></div>`);function q(s,p){t(p,!0);let k=(e,t=f)=>{let i=N(()=>t().sharedWith===`all`),o=N(()=>h(i)?new Set:new Set(t().sharedWith)),s=N(()=>t().id===h(H));var m=Se(),_=v(m),b=A(v(_),2),C=v(b),w=A(C,2);c(b);var T=A(b,2),E=e=>{var n=U(),r=v(n),i=A(r),s=e=>{re(e,{class:`h-3 w-3`})},d=e=>{ne(e,{class:`h-3 w-3`})};a(i,e=>{X[t().id]?e(s):e(d,-1)}),c(n),S(()=>u(r,`${h(o).size??``}/${p.data.orgs.length??``} selected `)),l(`click`,n,()=>X[t().id]=!X[t().id]),P(e,n)};a(T,e=>{!h(i)&&p.data.orgs.length>0&&e(E)}),c(_);var D=A(_,2),O=e=>{var r=n(),i=y(r),s=e=>{P(e,W())},f=e=>{var n=ye();d(n,21,()=>p.data.orgs,e=>e.id,(e,n)=>{var r=G(),i=v(r);x(i);var a=A(i,2),s=v(a,!0);c(a);var d=A(a,2),f=v(d,!0);c(d),c(r),S(e=>{g(i,e),u(s,h(n).name),u(f,h(n).slug)},[()=>h(o).has(h(n).id)]),l(`change`,i,()=>He(t(),h(n).id)),P(e,r)}),c(n),P(e,n)};a(i,e=>{p.data.orgs.length===0?e(s):e(f,-1)}),P(e,r)};a(D,e=>{!h(i)&&X[t().id]&&e(O)});var k=A(D,2),j=e=>{P(e,be())},M=e=>{P(e,xe())};a(k,e=>{!h(i)&&h(s)?e(j):!h(i)&&h(o).size===0&&e(M,1)}),c(m),S(()=>{r(C,1,`rounded px-2 py-0.5 text-xs ${h(i)?`bg-background shadow-sm`:`text-muted-foreground hover:text-foreground`}`),r(w,1,`rounded px-2 py-0.5 text-xs ${h(i)?`text-muted-foreground hover:text-foreground`:`bg-background shadow-sm`}`)}),l(`click`,C,()=>Ve(t(),!0)),l(`click`,w,()=>Ve(t(),!1)),P(e,m)},j=(e,t=f,n=f)=>{let i=N(()=>h(Q)[t().id]?.state),s=N(()=>ge[h(i)?.state??`idle`]),g=N(()=>h(i)?.state===`checking`||h(i)?.state===`loading`),_=N(()=>Object.entries(h(i)?.plugins??{})),x=N(()=>J.has(t().id));var C=Fe(),w=v(C),T=v(w),E=v(T);z(E,{placeholder:`label`,get value(){return t().label},oninput:e=>{let n=e.target;t().label=n.value.toLowerCase().replace(/[^a-z0-9_-]/g,``),n.value=t().label,Z(t().id)},class:`h-7 w-32 font-mono text-xs`});var D=A(E,2),O=e=>{var t=Ce();se(v(t),{class:`h-3 w-3`}),o(),c(t),P(e,t)},j=e=>{var n=we();l(`click`,n,()=>{b(H,t().id,!0),Z(t().id)}),P(e,n)};a(D,e=>{t().id===h(H)?e(O):e(j,-1)}),c(T);var M=A(T,2),F=v(M),te=v(F);ie(te,{get class(){return`h-2.5 w-2.5 shrink-0 fill-current ${h(s).color??``}`}});var R=A(te,2),oe=v(R,!0);c(R),c(F);var le=A(F,2);L(le,{variant:`outline`,size:`sm`,onclick:()=>h(Q)[t().id]?.check(),get disabled(){return h(g)},class:`h-7`,title:`Probe this server's availability (retries for up to 1 min)`,children:(e,t)=>{var n=Te(),r=y(n);{let e=N(()=>h(g)?`animate-spin`:``);ae(r,{get class(){return`mr-1.5 h-3.5 w-3.5 ${h(e)??``}`}})}var i=A(r);S(()=>u(i,` ${h(g)?`Checking…`:`Check`}`)),P(e,n)},$$slots:{default:!0}});var ue=A(le,2),de=e=>{let n=N(()=>We[t().id]);var r=Ee(),i=y(r);{let e=N(()=>h(n)!==null&&h(n)!==void 0);L(i,{variant:`outline`,size:`sm`,onclick:()=>Ge(t(),`purge`),get disabled(){return h(e)},class:`h-7`,title:`Clear cached solve results across this server's children (best-effort fleet-wide)`,children:(e,t)=>{var r=Te(),i=y(r);he(i,{class:`mr-1.5 h-3.5 w-3.5`});var a=A(i);S(()=>u(a,` ${h(n)===`purge`?`Purging…`:`Purge cache`}`)),P(e,r)},$$slots:{default:!0}})}var a=A(i,2);{let e=N(()=>h(n)!==null&&h(n)!==void 0);L(a,{variant:`outline`,size:`sm`,onclick:()=>Ge(t(),`shutdown`),get disabled(){return h(e)},class:`text-destructive hover:text-destructive h-7`,title:`Gracefully shut down all child processes (they auto-respawn on the next request)`,children:(e,t)=>{var r=Te(),i=y(r);_e(i,{class:`mr-1.5 h-3.5 w-3.5`});var a=A(i);S(()=>u(a,` ${h(n)===`shutdown`?`Shutting down…`:`Shutdown children`}`)),P(e,r)},$$slots:{default:!0}})}P(e,r)};a(ue,e=>{h(i)?.reachable&&e(de)});var fe=A(ue,2),B=e=>{var n=Ee(),r=y(n);L(r,{variant:`ghost`,size:`sm`,onclick:()=>Re(t().id),get disabled(){return h(q)},class:`text-muted-foreground hover:text-foreground h-7`,children:(e,t)=>{o(),P(e,m(`Discard`))},$$slots:{default:!0}}),L(A(r,2),{size:`sm`,onclick:Ue,get disabled(){return h(q)},class:`h-7`,children:(e,t)=>{o();var n=m();S(()=>u(n,h(q)?`Saving…`:`Save changes`)),P(e,n)},$$slots:{default:!0}}),P(e,n)};a(fe,e=>{h(x)&&e(B)});var pe=A(fe,2);{let e=N(()=>t().id===h(H)),r=N(()=>t().id===h(H)?`Set another server as default before deleting`:void 0);L(pe,{variant:`ghost`,size:`sm`,onclick:()=>Be(n()),get disabled(){return h(e)},get title(){return h(r)},class:`text-destructive hover:text-destructive h-7 w-7 p-0`,children:(e,t)=>{ce(e,{class:`h-3.5 w-3.5`})},$$slots:{default:!0}})}c(M),c(w);var V=A(w,2),ve=e=>{var t=ke(),n=y(t),r=v(n),o=A(v(r),2),s=v(o,!0);c(o),c(r);var l=A(r,2),d=A(v(l),2),f=v(d,!0);c(d),c(l);var p=A(l,2),g=A(v(p),2),_=v(g),b=e=>{var t=m();S(()=>u(t,h(i).selvaVersion)),P(e,t)},x=e=>{P(e,De())},C=e=>{P(e,Oe())};a(_,e=>{h(i).selvaInstalled?e(b):h(i).ready?e(C,-1):e(x,1)}),c(g),c(p),c(n);var w=A(n,2),T=v(w),E=A(v(T),2),D=v(E,!0);c(E),c(T);var O=A(T,2),k=A(v(O),2),j=v(k,!0);c(k),c(O),c(w),S(e=>{u(s,h(i).rhinoVersion??`-`),u(f,h(i).computeVersion??`-`),u(D,h(i).activeChildren??`-`),u(j,e)},[()=>me(h(i).idleSpanSeconds)]),P(e,t)};a(V,e=>{h(i)?.reachable&&e(ve)});var U=A(V,2),W=v(U);z(A(v(W),2),{placeholder:`http://localhost:5000`,oninput:()=>Z(t().id),class:`font-mono text-xs`,get value(){return t().serverUrl},set value(e){t().serverUrl=e}}),c(W);var G=A(W,2),ye=A(v(G),2),be=v(ye);{let e=N(()=>t().hasApiKey&&t().apiKey!==I&&!t().apiKey?`Key set - enter new value to replace`:t().apiKey===I?`Key will be cleared on save`:``),n=N(()=>t().apiKey===I?``:t().apiKey),r=N(()=>t().apiKey===I);z(be,{type:`password`,get placeholder(){return h(e)},get value(){return h(n)},get disabled(){return h(r)},oninput:e=>{t().apiKey=e.target.value,Z(t().id)},class:`font-mono text-xs`})}var xe=A(be,2),Se=e=>{var n=Ae();l(`click`,n,()=>{t().apiKey=I,Z(t().id)}),P(e,n)},Ie=e=>{var n=je();l(`click`,n,()=>t().apiKey=``),P(e,n)};a(xe,e=>{t().hasApiKey&&t().apiKey!==I&&!t().apiKey?e(Se):t().apiKey===I&&e(Ie,1)}),c(ye),c(G);var K=A(G,2);z(A(v(K),2),{type:`number`,placeholder:`30000`,oninput:()=>Z(t().id),onblur:()=>{t().timeoutMs=Math.min(3e5,Math.max(1e3,Number(t().timeoutMs)||3e4))},class:`text-xs`,get value(){return t().timeoutMs},set value(e){t().timeoutMs=e}}),c(K);var Le=A(K,2);z(A(v(Le),2),{type:`number`,placeholder:`0`,oninput:()=>Z(t().id),onblur:()=>{t().retryCount=Math.min(5,Math.max(0,Number(t().retryCount)||0))},class:`text-xs`,get value(){return t().retryCount},set value(e){t().retryCount=e}}),c(Le),c(U);var X=A(U,2),$=e=>{k(e,t)};a(X,e=>{p.data.tenancy!==`single`&&e($)});var ze=A(X,2),Ve=e=>{var n=Pe(),r=v(n),i=v(r),o=e=>{re(e,{class:`h-3 w-3`})},s=e=>{ne(e,{class:`h-3 w-3`})};a(i,e=>{Y[t().id]?e(o):e(s,-1)});var f=A(i);c(r);var p=A(r,2),m=e=>{var t=Ne();d(t,21,()=>h(_),([e,t])=>e,(e,t)=>{var n=N(()=>ee(h(t),2));let r=()=>h(n)[0],i=()=>h(n)[1];var a=Me(),o=v(a),s=v(o,!0);c(o);var l=A(o,2),d=v(l,!0);c(l),c(a),S(()=>{u(s,r()),u(d,i())}),P(e,a)}),c(t),P(e,t)};a(p,e=>{Y[t().id]&&e(m)}),c(n),S(()=>u(f,` ${h(_).length??``} Grasshopper plugin${h(_).length===1?``:`s`}`)),l(`click`,r,()=>Y[t().id]=!Y[t().id]),P(e,n)};a(ze,e=>{h(i)?.reachable&&h(_).length>0&&e(Ve)}),c(C),S(()=>{r(C,1,`space-y-3 rounded-lg border p-4 transition-colors ${h(x)?`border-amber-400/60 bg-amber-50/30 dark:border-amber-500/40 dark:bg-amber-950/10`:`bg-muted/30`}`),r(R,1,`text-xs font-medium ${h(s).color??``}`),u(oe,h(s).label)}),P(e,C)},I=`__clear__`;function me(e){if(e===null)return`-`;if(e<5)return`just now`;if(e<60)return`${Math.round(e)}s`;let t=Math.floor(e/60);return t<60?`${t}m`:`${Math.floor(t/60)}h ${t%60}m`}let ge={idle:{label:`Not checked`,color:`text-muted-foreground`},ok:{label:`Online`,color:`text-green-600 dark:text-green-400`},warning:{label:`Warning`,color:`text-yellow-600 dark:text-yellow-400`},error:{label:`Offline`,color:`text-red-600 dark:text-red-400`},checking:{label:`Checking…`,color:`text-blue-600 dark:text-blue-400`},loading:{label:`Loading plugins…`,color:`text-blue-600 dark:text-blue-400`}},V=M(E([])),H=M(``),q=M(!1),J=new te,Y=E({}),X=E({});function Z(e){J.add(e)}function Re(e){J.delete(e);let t=p.data.servers.find(t=>t.id===e),n=h(V).findIndex(t=>t.id===e);if(!(n<0)){if(!t){h(Q)[e]?.stop();let{[e]:t,...n}=h(Q);b(Q,n,!0),b(V,h(V).filter(t=>t.id!==e),!0);return}h(V)[n]={id:t.id,label:t.label,serverUrl:t.serverUrl,sharedWith:t.sharedWith===`all`?`all`:[...t.sharedWith],timeoutMs:t.timeoutMs??3e4,retryCount:t.retryCount??0,apiKey:``,hasApiKey:t.hasApiKey},b(H,p.data.defaultServerId,!0)}}let Q=M(E({}));function $(e){return h(Q)[e]||(h(Q)[e]=ve(()=>e)),h(Q)[e]}_(()=>{J.size===0&&(b(V,p.data.servers.map(e=>({id:e.id,label:e.label,serverUrl:e.serverUrl,sharedWith:e.sharedWith===`all`?`all`:[...e.sharedWith],timeoutMs:e.timeoutMs??3e4,retryCount:e.retryCount??0,apiKey:``,hasApiKey:e.hasApiKey})),!0),b(H,p.data.defaultServerId,!0))}),_(()=>{let t=p.data.servers.map(e=>e.id);e(()=>{for(let e of t)$(e)})}),D(()=>{for(let e of Object.values(h(Q)))e.stop()});function ze(){let e=pe();h(V).length===0&&b(H,e,!0),b(V,[...h(V),{id:e,label:`new-server`,serverUrl:`http://localhost:5000`,sharedWith:`all`,apiKey:``,hasApiKey:!1,timeoutMs:3e4,retryCount:0}],!0),$(e),Z(e)}function Be(e){let t=h(V)[e];h(Q)[t.id]?.stop();let{[t.id]:n,...r}=h(Q);b(Q,r,!0),b(V,h(V).filter((t,n)=>n!==e),!0),h(H)===t.id&&h(V)[0]&&b(H,h(V)[0].id,!0);for(let e of h(V))Z(e.id)}function Ve(e,t){e.sharedWith=t?`all`:[],Z(e.id)}function He(e,t){e.sharedWith!==`all`&&(e.sharedWith=e.sharedWith.includes(t)?e.sharedWith.filter(e=>e!==t):[...e.sharedWith,t],Z(e.id))}async function Ue(){b(q,!0);try{let e={defaultServerId:h(H),servers:h(V).map(({apiKey:e,hasApiKey:t,retryCount:n,timeoutMs:r,...i})=>({...i,timeoutMs:Math.min(3e5,Math.max(1e3,Number(r)||3e4)),...e===I?{apiKey:null}:e?{apiKey:e}:{},...Number(n)?{retryCount:Math.min(5,Math.max(0,Number(n)))}:{}}))},t=await fetch(`/admin/api/compute`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e)});if(t.ok){B.success(`Compute config saved`),await F(),J.clear();for(let e of Object.values(h(Q)))e.stop();b(Q,{},!0);for(let e of h(V))$(e.id)}else{let e=await t.json().catch(()=>({error:`Unknown error`}));B.error(e.message||e.error||`Failed to save (${t.status})`)}}catch{B.error(`Failed to save compute config`)}finally{b(q,!1)}}let We=E({});async function Ge(e,t){if(!(t===`shutdown`&&!confirm(`Shut down ALL child processes on "${e.label}"?\n\nIn-flight solves on those children will be interrupted. The pool auto-respawns on the next request.`))){We[e.id]=t;try{let n=await fetch(`/admin/api/compute/actions`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({serverId:e.id,action:t})}),r=await n.json().catch(()=>({}));if(!n.ok){B.error(r.message||r.error||`Action failed (${n.status})`);return}if(t===`purge`){let{totalPurged:e=0,children:t=0,confident:n}=r;B.success(n?`Purged ${e} cached solve${e===1?``:`s`}`:`Purged ~${e} across ${t} children (best-effort)`)}else{let{shutdown:t=0,active:n=0}=r;B.success(`Shut down ${t} child${t===1?``:`ren`} (${n} still active)`),h(Q)[e.id]?.check()}}catch{B.error(`Failed to ${t} server`)}finally{We[e.id]=null}}}var Ke=Le();i(`1h8e46q`,e=>{O(()=>{T.title=`Admin · Compute`})});var qe=v(Ke);le(qe,{eyebrow:`Admin`,title:`Compute`,description:`Manage compute servers. Share servers with specific orgs to expose them in pickers. When ALLOW_ORG_COMPUTE_OVERRIDE is on, org owners can configure their own servers.`}),C(A(qe,2),()=>de,(e,t)=>{t(e,{children:(e,t)=>{var r=n();C(y(r),()=>fe,(e,t)=>{t(e,{class:`space-y-3 pt-6`,children:(e,t)=>{var r=n(),i=y(r),s=e=>{ue(e,{get icon(){return oe},title:`No servers configured`,actions:e=>{L(e,{variant:`outline`,size:`sm`,onclick:ze,children:(e,t)=>{var n=Ie();R(y(n),{class:`mr-1.5 h-3.5 w-3.5`}),o(),P(e,n)},$$slots:{default:!0}})},$$slots:{actions:!0}})},u=e=>{var t=K(),n=y(t);d(n,19,()=>h(V),e=>e.id,(e,t,n)=>{j(e,()=>h(t),()=>h(n))});var r=A(n,2);R(v(r),{class:`h-4 w-4`}),o(),c(r),l(`click`,r,ze),P(e,t)};a(i,e=>{h(V).length===0?e(s):e(u,-1)}),P(e,r)},$$slots:{default:!0}})}),P(e,r)},$$slots:{default:!0}})}),c(Ke),P(s,Ke),w()}s([`click`,`change`]);export{q as component};
@@ -0,0 +1,2 @@
1
+ import{At as e,B as t,D as n,F as r,Ft as i,It as a,L as o,M as s,Rt as c,V as l,W as u,X as d,at as f,dt as p,ft as m,g as h,gt as g,it as _,k as v,kt as y,lt as b,nt as x,pt as S,vt as C,y as w,z as T}from"../chunks/CL3s_3g5.js";import{i as E,r as D}from"../chunks/CVGG5cou.js";import"../chunks/xihTtKlq.js";import{t as O}from"../chunks/BMx84FKI.js";import{t as k}from"../chunks/DvbQzS922.js";import{t as A}from"../chunks/BcvLMt3u.js";import{t as j}from"../chunks/XAfNJj4O.js";import{t as M}from"../chunks/Ot8VM1_P.js";import{t as N}from"../chunks/DNL96-hz.js";import{n as P,t as F}from"../chunks/CFFv3oN9.js";import{t as I}from"../chunks/Dt77lQ3V2.js";import{n as L}from"../chunks/35-OQSYE2.js";import{t as R}from"../chunks/B7wd2Kj42.js";import"../chunks/C5qitKDD2.js";var z=l(`<!> New project`,1),B=l(`<option> </option>`),V=l(`<div class="space-y-1.5"><!> <!></div> <div class="space-y-1.5"><!> <!></div> <div class="space-y-1.5"><!> <select id="new-org" class="border-input bg-background h-10 w-full rounded-md border px-3 text-sm"></select> <p class="text-muted-foreground text-xs">Storage and compute use this org. Membership in this org does NOT grant access —
2
+ visibility = platform overrides.</p></div> <div class="flex justify-end gap-2 pt-2"><!> <!></div>`,1),H=l(`<a class="min-w-0 hover:underline"><p class="truncate text-sm font-medium"> </p> <p class="text-muted-foreground truncate font-mono text-xs"> </p></a> <span class="truncate text-sm"> </span> <span class="text-muted-foreground text-right text-xs"> </span>`,1),U=l(`<div class="space-y-6"><!> <!> <!></div>`);function W(l,W){e(W,!0);let G=C(!1),K=C(!1),q=C(``),J=C(``),Y=C(``);f(()=>{d(G)&&!d(Y)&&W.data.orgOptions.length>0&&g(Y,W.data.orgOptions[0].id,!0)});async function X(){if(!d(q).trim()){L.error(`Name is required`);return}g(K,!0);try{let e=await fetch(`/admin/api/projects`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({name:d(q).trim(),description:d(J).trim()||void 0,orgId:d(Y)||void 0})});if(!e.ok){let t=await e.json().catch(()=>({}));throw Error(t.message??`HTTP ${e.status}`)}let t=await e.json();L.success(`Created “${t.name}”`),g(G,!1),g(q,``),g(J,``),await E(),D(`/admin/projects/${t.id}`)}catch(e){L.error(e.message)}finally{g(K,!1)}}var Z=U();n(`1bzxaev`,e=>{x(()=>{b.title=`Admin · Platform projects`})});var Q=p(Z);M(Q,{eyebrow:`Admin`,title:`Platform projects`,description:`Projects owned by platform admins. Grant orgs or individual users view/solve access without project membership.`,actions:e=>{O(e,{size:`sm`,onclick:()=>g(G,!0),class:`gap-1.5`,children:(e,t)=>{var n=z();A(m(n),{class:`h-3.5 w-3.5`}),i(),T(e,n)},$$slots:{default:!0}})},$$slots:{actions:!0}});var $=S(Q,2),ee=e=>{var n=t();v(m(n),()=>P,(e,n)=>{n(e,{children:(e,n)=>{var r=t();v(m(r),()=>F,(e,t)=>{t(e,{class:`space-y-4 pt-6`,children:(e,t)=>{var n=V(),r=m(n),c=p(r);j(c,{for:`new-name`,children:(e,t)=>{i(),T(e,u(`Name`))},$$slots:{default:!0}}),I(S(c,2),{id:`new-name`,placeholder:`Shared templates`,get value(){return d(q)},set value(e){g(q,e,!0)}}),a(r);var l=S(r,2),f=p(l);j(f,{for:`new-desc`,children:(e,t)=>{i(),T(e,u(`Description (optional)`))},$$slots:{default:!0}}),I(S(f,2),{id:`new-desc`,get value(){return d(J)},set value(e){g(J,e,!0)}}),a(l);var h=S(l,2),v=p(h);j(v,{for:`new-org`,children:(e,t)=>{i(),T(e,u(`Host organization`))},$$slots:{default:!0}});var y=S(v,2);s(y,21,()=>W.data.orgOptions,e=>e.id,(e,t)=>{var n=B(),r=p(n);a(n);var i={};_(()=>{o(r,`${d(t).name??``} (${d(t).slug??``})`),i!==(i=d(t).id)&&(n.value=(n.__value=d(t).id)??``)}),T(e,n)}),a(y),i(2),a(h);var b=S(h,2),x=p(b);O(x,{variant:`outline`,size:`sm`,onclick:()=>g(G,!1),children:(e,t)=>{i(),T(e,u(`Cancel`))},$$slots:{default:!0}}),O(S(x,2),{size:`sm`,get disabled(){return d(K)},onclick:X,children:(e,t)=>{i();var n=u();_(()=>o(n,d(K)?`Creating…`:`Create`)),T(e,n)},$$slots:{default:!0}}),a(b),w(y,()=>d(Y),e=>g(Y,e)),T(e,n)},$$slots:{default:!0}})}),T(e,r)},$$slots:{default:!0}})}),T(e,n)};r($,e=>{d(G)&&e(ee)}),v(S($,2),()=>P,(e,n)=>{n(e,{children:(e,n)=>{var i=t();v(m(i),()=>F,(e,n)=>{n(e,{class:`pt-6`,children:(e,n)=>{var i=t(),s=m(i),l=e=>{N(e,{get icon(){return k},title:`No platform projects`,description:`Click “New project” to create one. Platform projects are managed by instance admins and granted to orgs or individual users.`})},u=e=>{R(e,{get rows(){return W.data.projects},getKey:e=>e.id,columns:[{label:`Project`},{label:`Host org`,width:`200px`},{label:`Created`,width:`140px`,align:`right`}],row:(e,t=c)=>{var n=H(),r=m(n),i=p(r),s=p(i,!0);a(i);var l=S(i,2),u=p(l,!0);a(l),a(r);var d=S(r,2),f=p(d,!0);a(d);var g=S(d,2),v=p(g,!0);a(g),_(e=>{h(r,`href`,`/admin/projects/${t().id}`),o(s,t().name),o(u,t().slug),o(f,t().hostOrgName),o(v,e)},[()=>new Date(t().createdAt).toLocaleDateString()]),T(e,n)},$$slots:{row:!0}})};r(s,e=>{W.data.projects.length===0?e(l):e(u,-1)}),T(e,i)},$$slots:{default:!0}})}),T(e,i)},$$slots:{default:!0}})}),a(Z),T(l,Z),y()}export{W as component};
@@ -0,0 +1,2 @@
1
+ import{At as e,B as t,D as n,F as r,Ft as i,It as a,L as o,M as s,Rt as c,V as l,W as u,X as d,at as f,dt as p,ft as m,g as h,gt as g,h as _,it as v,k as y,kt as b,l as x,lt as S,mt as C,o as w,pt as T,s as E,tt as ee,vt as D,xt as O,y as te,z as k}from"../chunks/CL3s_3g5.js";import{i as A,r as j}from"../chunks/CVGG5cou.js";import"../chunks/xihTtKlq.js";import{i as M}from"../chunks/D3VSOnNo.js";import{t as N}from"../chunks/BMx84FKI.js";import{t as ne}from"../chunks/CACZJiWS.js";import{t as re}from"../chunks/BcvLMt3u.js";import{t as ie}from"../chunks/D4YBJLId.js";import{t as ae}from"../chunks/DNVbFK9q.js";import{t as oe}from"../chunks/xnWCJBmG.js";import{t as se}from"../chunks/UeEPBo0V.js";import{t as P}from"../chunks/XAfNJj4O.js";import{a as ce,i as F,n as I,r as le,t as ue}from"../chunks/iO9OM2Vo.js";import{t as de}from"../chunks/Ot8VM1_P.js";import{t as L}from"../chunks/DNL96-hz.js";import{n as R,t as z}from"../chunks/CFFv3oN9.js";import{t as fe}from"../chunks/Dt77lQ3V2.js";import{n as B}from"../chunks/35-OQSYE2.js";import{t as V}from"../chunks/B7wd2Kj42.js";import"../chunks/C5qitKDD2.js";var H=new Set([`$$slots`,`$$events`,`$$legacy`]);function pe(e,t){let n=w(t,H),r=[[`path`,{d:`M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z`}],[`path`,{d:`M14 2v5a1 1 0 0 0 1 1h5`}],[`path`,{d:`M10 9H8`}],[`path`,{d:`M16 13H8`}],[`path`,{d:`M16 17H8`}]];M(e,E({name:`file-text`},()=>n,{get iconNode(){return r}}))}var me=l(`<!> Grants <span class="text-muted-foreground ml-1 font-mono text-[11px]"> </span>`,1),he=l(`<!> Definitions <span class="text-muted-foreground ml-1 font-mono text-[11px]"> </span>`,1),ge=l(`<!> Settings`,1),_e=l(`<!> <!> <!>`,1),ve=l(`<!> Add grant`,1),ye=l(`<option> </option>`),be=l(`<div class="bg-muted/30 space-y-3 rounded-lg border p-4"><div class="space-y-1.5"><!> <div class="flex gap-2"><!> <!></div></div> <div class="space-y-1.5"><!> <select id="grantee-id" class="border-input bg-background h-10 w-full rounded-md border px-3 text-sm"></select></div> <label class="flex items-center gap-2 text-sm"><input type="checkbox"/> Allow solving (uncheck for view-only)</label> <div class="flex justify-end gap-2"><!> <!></div></div>`),xe=l(`<p class="text-muted-foreground truncate text-xs"> </p>`),Se=l(`<div class="min-w-0"><p class="truncate text-sm font-medium"> </p> <!></div> <span class="text-xs capitalize"> </span> <span class="text-xs"> </span> <div class="text-right"><!></div>`,1),Ce=l(`<div class="flex items-center justify-between"><div><p class="text-sm font-medium">Access grants</p> <p class="text-muted-foreground text-xs">Orgs or users you've granted view/solve access. Instance admins always have full
2
+ access.</p></div> <!></div> <!> <!>`,1),we=l(`<a class="min-w-0 hover:underline"><p class="truncate text-sm font-medium"> </p> <p class="text-muted-foreground truncate font-mono text-xs"> </p></a> <span class="text-xs capitalize"> </span> <span class="text-muted-foreground text-right text-xs"> </span>`,1),Te=l(`<div class="flex items-center justify-between"><div><p class="text-sm font-medium">Definitions</p> <p class="text-muted-foreground text-xs">Upload and edit definitions through the standard project view.</p></div> <!></div> <!>`,1),Ee=l(`<!> `,1),De=l(`<div class="space-y-1.5"><!> <!></div> <div class="space-y-1.5"><!> <!></div> <div class="flex items-center justify-between pt-2"><!> <!></div>`,1),Oe=l(`<!> <!> <!> <!>`,1),ke=l(`<div class="space-y-6"><div><a href="/admin/projects" class="text-muted-foreground hover:text-foreground inline-flex items-center gap-1 text-xs"><!> Platform projects</a></div> <!> <!></div>`);function U(l,w){e(w,!0);let E=D(C(w.data.project.name)),M=D(C(w.data.project.description??``)),H=D(!1),U=D(!1);f(()=>{g(E,w.data.project.name,!0),g(M,w.data.project.description??``,!0)});async function Ae(){if(!d(E).trim()){B.error(`Name is required`);return}g(H,!0);try{let e=await fetch(`/admin/api/projects/${w.data.project.id}`,{method:`PATCH`,headers:{"Content-Type":`application/json`},body:JSON.stringify({name:d(E).trim(),description:d(M).trim()||null})});if(!e.ok){let t=await e.json().catch(()=>({}));throw Error(t.message??`HTTP ${e.status}`)}B.success(`Saved`),await A()}catch(e){B.error(e.message)}finally{g(H,!1)}}async function je(){if(confirm(`Delete “${w.data.project.name}”? This cannot be undone.`)){g(U,!0);try{let e=await fetch(`/admin/api/projects/${w.data.project.id}`,{method:`DELETE`});if(!e.ok){let t=await e.json().catch(()=>({}));throw Error(t.message??`HTTP ${e.status}`)}B.success(`Project deleted`),j(`/admin/projects`)}catch(e){B.error(e.message),g(U,!1)}}}let W=D(!1),G=D(`org`),K=D(``),q=D(!0),J=D(!1),Y=D(null),X=O(()=>d(G)===`org`?w.data.orgOptions.map(e=>({id:e.id,label:e.name,sub:e.slug})):w.data.userOptions.map(e=>({id:e.id,label:e.displayName??e.email??e.id,sub:e.displayName&&e.email?e.email:void 0}))),Z=O(()=>new Set(w.data.grants.filter(e=>e.granteeType===d(G)).map(e=>e.granteeId)));f(()=>{d(X).find(e=>e.id===d(K))||g(K,d(X).find(e=>!d(Z).has(e.id))?.id??``,!0)});async function Me(){if(!d(K)){B.error(`Pick a grantee`);return}g(J,!0);try{let e=await fetch(`/admin/api/projects/${w.data.project.id}/grants`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({granteeType:d(G),granteeId:d(K),canSolve:d(q)})});if(!e.ok){let t=await e.json().catch(()=>({}));throw Error(t.message??`HTTP ${e.status}`)}B.success(`Grant added`),g(W,!1),g(K,``),g(q,!0),await A()}catch(e){B.error(e.message)}finally{g(J,!1)}}async function Ne(e){g(Y,e,!0);try{let t=await fetch(`/admin/api/projects/${w.data.project.id}/grants/${e}`,{method:`DELETE`});if(!t.ok){let e=await t.json().catch(()=>({}));throw Error(e.message??`HTTP ${t.status}`)}B.success(`Grant revoked`),await A()}catch(e){B.error(e.message)}finally{g(Y,null)}}var Q=ke();n(`t02vfz`,e=>{ee(()=>{S.title=`Admin · ${w.data.project.name??``}`})});var $=p(Q),Pe=p($);ne(p(Pe),{class:`h-3 w-3`}),i(),a(Pe),a($);var Fe=T($,2);{let e=O(()=>w.data.project.description??void 0);de(Fe,{eyebrow:`Platform project`,get title(){return w.data.project.name},get description(){return d(e)}})}y(T(Fe,2),()=>ce,(e,n)=>{n(e,{value:`grants`,children:(e,n)=>{var l=Oe(),f=m(l);y(f,()=>le,(e,t)=>{t(e,{children:(e,t)=>{var n=_e(),r=m(n);y(r,()=>I,(e,t)=>{t(e,{value:`grants`,class:`gap-1.5`,children:(e,t)=>{var n=me(),r=m(n);ae(r,{class:`h-3.5 w-3.5`});var i=T(r,2),s=p(i,!0);a(i),v(()=>o(s,w.data.grants.length)),k(e,n)},$$slots:{default:!0}})});var s=T(r,2);y(s,()=>I,(e,t)=>{t(e,{value:`definitions`,class:`gap-1.5`,children:(e,t)=>{var n=he(),r=m(n);pe(r,{class:`h-3.5 w-3.5`});var i=T(r,2),s=p(i,!0);a(i),v(()=>o(s,w.data.definitions.length)),k(e,n)},$$slots:{default:!0}})}),y(T(s,2),()=>I,(e,t)=>{t(e,{value:`settings`,class:`gap-1.5`,children:(e,t)=>{var n=ge();ie(m(n),{class:`h-3.5 w-3.5`}),i(),k(e,n)},$$slots:{default:!0}})}),k(e,n)},$$slots:{default:!0}})});var b=T(f,2);y(b,()=>F,(e,n)=>{n(e,{value:`grants`,class:`mt-4 space-y-4`,children:(e,n)=>{var l=t();y(m(l),()=>R,(e,n)=>{n(e,{children:(e,n)=>{var l=t();y(m(l),()=>z,(e,t)=>{t(e,{class:`space-y-4 pt-6`,children:(e,t)=>{var n=Ce(),l=m(n);N(T(p(l),2),{size:`sm`,onclick:()=>g(W,!d(W)),class:`gap-1.5`,children:(e,t)=>{var n=ve();re(m(n),{class:`h-3.5 w-3.5`}),i(),k(e,n)},$$slots:{default:!0}}),a(l);var f=T(l,2),h=e=>{var t=be(),n=p(t),r=p(n);P(r,{children:(e,t)=>{i(),k(e,u(`Grantee type`))},$$slots:{default:!0}});var c=T(r,2),l=p(c);{let e=O(()=>d(G)===`org`?`default`:`outline`);N(l,{get variant(){return d(e)},size:`sm`,onclick:()=>g(G,`org`),children:(e,t)=>{i(),k(e,u(`Organization`))},$$slots:{default:!0}})}var f=T(l,2);{let e=O(()=>d(G)===`user`?`default`:`outline`);N(f,{get variant(){return d(e)},size:`sm`,onclick:()=>g(G,`user`),children:(e,t)=>{i(),k(e,u(`Individual user`))},$$slots:{default:!0}})}a(c),a(n);var m=T(n,2),h=p(m);P(h,{for:`grantee-id`,children:(e,t)=>{i();var n=u();v(()=>o(n,d(G)===`org`?`Organization`:`User`)),k(e,n)},$$slots:{default:!0}});var y=T(h,2);s(y,21,()=>d(X),e=>e.id,(e,t)=>{var n=ye(),r=p(n);a(n);var i={};v((e,a)=>{n.disabled=e,o(r,`${d(t).label??``}${d(t).sub?` — ${d(t).sub}`:``}${a??``}`),i!==(i=d(t).id)&&(n.value=(n.__value=d(t).id)??``)},[()=>d(Z).has(d(t).id),()=>d(Z).has(d(t).id)?` (already granted)`:``]),k(e,n)}),a(y),a(m);var b=T(m,2),S=p(b);_(S),i(),a(b);var C=T(b,2),w=p(C);N(w,{variant:`outline`,size:`sm`,onclick:()=>g(W,!1),children:(e,t)=>{i(),k(e,u(`Cancel`))},$$slots:{default:!0}});var E=T(w,2);{let e=O(()=>d(J)||!d(K));N(E,{size:`sm`,get disabled(){return d(e)},onclick:Me,children:(e,t)=>{i();var n=u();v(()=>o(n,d(J)?`Adding…`:`Add grant`)),k(e,n)},$$slots:{default:!0}})}a(C),a(t),te(y,()=>d(K),e=>g(K,e)),x(S,()=>d(q),e=>g(q,e)),k(e,t)};r(f,e=>{d(W)&&e(h)});var y=T(f,2),b=e=>{L(e,{size:`sm`,get icon(){return ae},title:`No grants yet`,description:`Add a grant to share this project with an org or specific user.`})},S=e=>{V(e,{get rows(){return w.data.grants},getKey:e=>e.id,columns:[{label:`Grantee`},{label:`Type`,width:`120px`},{label:`Access`,width:`120px`},{label:``,width:`40px`,align:`right`}],row:(e,t=c)=>{var n=Se(),i=m(n),s=p(i),l=p(s,!0);a(s);var u=T(s,2),f=e=>{var n=xe(),r=p(n,!0);a(n),v(()=>o(r,t().granteeSubtitle)),k(e,n)};r(u,e=>{t().granteeSubtitle&&e(f)}),a(i);var h=T(i,2),g=p(h,!0);a(h);var _=T(h,2),y=p(_,!0);a(_);var b=T(_,2),x=p(b);{let e=O(()=>d(Y)===t().id);N(x,{variant:`ghost`,size:`sm`,class:`text-destructive hover:text-destructive h-7 w-7 p-0`,get disabled(){return d(e)},onclick:()=>Ne(t().id),children:(e,t)=>{se(e,{class:`h-3.5 w-3.5`})},$$slots:{default:!0}})}a(b),v(()=>{o(l,t().granteeName),o(g,t().granteeType),o(y,t().canSolve?`View + solve`:`View only`)}),k(e,n)},$$slots:{row:!0}})};r(y,e=>{w.data.grants.length===0?e(b):e(S,-1)}),k(e,n)},$$slots:{default:!0}})}),k(e,l)},$$slots:{default:!0}})}),k(e,l)},$$slots:{default:!0}})});var S=T(b,2);y(S,()=>F,(e,n)=>{n(e,{value:`definitions`,class:`mt-4 space-y-4`,children:(e,n)=>{var s=t();y(m(s),()=>R,(e,n)=>{n(e,{children:(e,n)=>{var s=t();y(m(s),()=>z,(e,t)=>{t(e,{class:`space-y-4 pt-6`,children:(e,t)=>{var n=Te(),s=m(n);N(T(p(s),2),{size:`sm`,variant:`outline`,onclick:()=>j(`/projects?project=${w.data.project.slug}`),children:(e,t)=>{i(),k(e,u(`Open in projects`))},$$slots:{default:!0}}),a(s);var l=T(s,2),d=e=>{L(e,{size:`sm`,get icon(){return pe},title:`No definitions yet`,description:`Open this project in the projects view to upload .gh files.`})},f=e=>{V(e,{get rows(){return w.data.definitions},getKey:e=>e.guid,columns:[{label:`Definition`},{label:`Status`,width:`120px`},{label:`Updated`,width:`140px`,align:`right`}],row:(e,t=c)=>{var n=we(),r=m(n),i=p(r),s=p(i,!0);a(i);var l=T(i,2),u=p(l,!0);a(l),a(r);var d=T(r,2),f=p(d,!0);a(d);var g=T(d,2),_=p(g,!0);a(g),v(e=>{h(r,`href`,`/library/${t().guid}`),o(s,t().displayName),o(u,t().guid),o(f,t().status),o(_,e)},[()=>new Date(t().updatedAt).toLocaleDateString()]),k(e,n)},$$slots:{row:!0}})};r(l,e=>{w.data.definitions.length===0?e(d):e(f,-1)}),k(e,n)},$$slots:{default:!0}})}),k(e,s)},$$slots:{default:!0}})}),k(e,s)},$$slots:{default:!0}})}),y(T(S,2),()=>F,(e,n)=>{n(e,{value:`settings`,class:`mt-4 space-y-4`,children:(e,n)=>{var r=t();y(m(r),()=>R,(e,n)=>{n(e,{children:(e,n)=>{var r=t();y(m(r),()=>z,(e,t)=>{t(e,{class:`space-y-4 pt-6`,children:(e,t)=>{var n=De(),r=m(n),s=p(r);P(s,{for:`proj-name`,children:(e,t)=>{i(),k(e,u(`Name`))},$$slots:{default:!0}}),fe(T(s,2),{id:`proj-name`,get value(){return d(E)},set value(e){g(E,e,!0)}}),a(r);var c=T(r,2),l=p(c);P(l,{for:`proj-desc`,children:(e,t)=>{i(),k(e,u(`Description`))},$$slots:{default:!0}}),ue(T(l,2),{id:`proj-desc`,rows:3,get value(){return d(M)},set value(e){g(M,e,!0)}}),a(c);var f=T(c,2),h=p(f);N(h,{onclick:je,variant:`ghost`,size:`sm`,get disabled(){return d(U)},class:`text-destructive hover:text-destructive gap-1.5 px-2`,children:(e,t)=>{var n=Ee(),r=m(n);oe(r,{class:`h-3.5 w-3.5`});var i=T(r);v(()=>o(i,` ${d(U)?`Deleting…`:`Delete project`}`)),k(e,n)},$$slots:{default:!0}}),N(T(h,2),{size:`sm`,get disabled(){return d(H)},onclick:Ae,children:(e,t)=>{i();var n=u();v(()=>o(n,d(H)?`Saving…`:`Save`)),k(e,n)},$$slots:{default:!0}}),a(f),k(e,n)},$$slots:{default:!0}})}),k(e,r)},$$slots:{default:!0}})}),k(e,r)},$$slots:{default:!0}})}),k(e,l)},$$slots:{default:!0}})}),a(Q),k(l,Q),b()}export{U as component};
@@ -0,0 +1,21 @@
1
+ import{$ as e,At as t,B as n,C as r,D as i,E as a,F as o,Ft as s,It as c,L as l,M as u,P as d,V as f,W as p,X as m,a as h,at as g,c as _,d as v,dt as y,ft as b,g as x,gt as S,h as C,it as w,k as T,kt as E,lt as D,mt as O,nt as k,o as A,pt as j,s as M,vt as N,xt as P,y as F,z as I,zt as ee}from"../chunks/CL3s_3g5.js";import"../chunks/xihTtKlq.js";import{i as L}from"../chunks/D3VSOnNo.js";import{t as R}from"../chunks/BMx84FKI.js";import{n as z,r as B,t as V}from"../chunks/BGbeR-fH.js";import{t as H}from"../chunks/DAZNh3B6.js";import{t as U}from"../chunks/0Bff9sTL.js";import{t as W}from"../chunks/BzJx6omo.js";import{t as G}from"../chunks/BfI32HyH.js";import{a as te,c as ne,i as re,n as ie,o as ae,r as oe,s as se,t as ce}from"../chunks/B4n-OjCm.js";import{t as le}from"../chunks/Ot8VM1_P.js";import{n as K,t as q}from"../chunks/CFFv3oN9.js";import{t as J}from"../chunks/Biu_T4Iy.js";import{n as Y,t as X}from"../chunks/Ciz-tExL2.js";import{t as ue}from"../chunks/Bq18tj_a2.js";var de=new Set([`$$slots`,`$$events`,`$$legacy`]);function fe(e,t){let n=A(t,de),r=[[`path`,{d:`M12 5v14`}],[`path`,{d:`m19 12-7 7-7-7`}]];L(e,M({name:`arrow-down`},()=>n,{get iconNode(){return r}}))}var pe=new Set([`$$slots`,`$$events`,`$$legacy`]);function me(e,t){let n=A(t,pe),r=[[`path`,{d:`m5 12 7-7 7 7`}],[`path`,{d:`M12 19V5`}]];L(e,M({name:`arrow-up`},()=>n,{get iconNode(){return r}}))}var he=new Set([`$$slots`,`$$events`,`$$legacy`]);function ge(e,t){let n=A(t,he),r=[[`circle`,{cx:`12`,cy:`12`,r:`10`}],[`path`,{d:`m16 12-4-4-4 4`}],[`path`,{d:`M12 16V8`}]];L(e,M({name:`circle-arrow-up`},()=>n,{get iconNode(){return r}}))}var _e=new Set([`$$slots`,`$$events`,`$$legacy`]);function ve(e,t){let n=A(t,_e),r=[[`circle`,{cx:`12`,cy:`12`,r:`10`}],[`path`,{d:`m15 9-6 6`}],[`path`,{d:`m9 9 6 6`}]];L(e,M({name:`circle-x`},()=>n,{get iconNode(){return r}}))}var ye=new Set([`$$slots`,`$$events`,`$$legacy`]);function be(e,t){let n=A(t,ye),r=[[`path`,{d:`M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2`}],[`path`,{d:`M6.453 15h11.094`}],[`path`,{d:`M8.5 2h7`}]];L(e,M({name:`flask-conical`},()=>n,{get iconNode(){return r}}))}var xe=new Set([`$$slots`,`$$events`,`$$legacy`]);function Se(e,t){let n=A(t,xe),r=[[`path`,{d:`M11 2v2`}],[`path`,{d:`M5 2v2`}],[`path`,{d:`M5 3H4a2 2 0 0 0-2 2v4a6 6 0 0 0 12 0V5a2 2 0 0 0-2-2h-1`}],[`path`,{d:`M8 15a6 6 0 0 0 12 0v-3`}],[`circle`,{cx:`20`,cy:`10`,r:`2`}]];L(e,M({name:`stethoscope`},()=>n,{get iconNode(){return r}}))}function Ce(e,t){let n=t.exec(e);return n?n[1]:void 0}function we(e){let t=/Available:\s*(\d+\.\d+\.\d+[^\s]*)\s*(?:→|->)\s*(\d+\.\d+\.\d+[^\s]*)/.exec(e);return t?{from:t[1],to:t[2]}:{from:Ce(e,/Current @selvajs\/selva:\s*v?(\d+\.\d+\.\d+[^\s]*)/),to:Ce(e,/New @selvajs\/selva:\s*v?(\d+\.\d+\.\d+[^\s]*)/)}}function Z(e,t){return e.includes(t)}function Te(e,t){let{from:n,to:r}=we(t);return e===null?{severity:`pending`,title:`Update in progress…`}:e===6||Z(t,`Manual recovery required`)||Z(t,`manual intervention required`)?{severity:`critical`,title:`Update failed AND rollback failed — the app may be OFFLINE`,detail:"Both the new version and the rollback failed their health check. SSH into the server and run: `pm2 logs selva-compute`, then `pm2 start ecosystem.config.cjs` from the deployment directory.",from:n,to:r}:e===-2?{severity:`critical`,title:`App did not come back online within 5 minutes`,detail:"The update may still be finishing in the background, or the new process is crash-looping. Check `pm2 logs selva-compute`. Do not re-run the update until you have confirmed the current state.",from:n,to:r}:e===5||Z(t,`Rolled back`)?{severity:`warning`,title:`Update failed — safely rolled back${n?` to ${n}`:``}. The app is online.`,detail:`The new version failed its health check, so the previous version was restored and is serving normally. Review the log below for why the new version failed before retrying.`,from:n,to:r}:Z(t,`npm cache may be stale`)||Z(t,`No version change`)?{severity:`warning`,title:`No version change — npm installed the same version.`,detail:"Your npm cache may be stale. On the server: `npm cache clean --force`, remove node_modules + package-lock.json, then `npm install --prefer-online`.",from:n,to:r}:e===0?Z(t,`Already on the latest version`)||Z(t,`Nothing to do`)?{severity:`info`,title:`Already up to date${n?` (${n})`:``} — nothing to install.`,detail:`No changes were made and the app was not restarted.`,from:n,to:r}:n&&r&&n!==r?{severity:`success`,title:`Updated ${n} → ${r}. The app is back online.`,from:n,to:r}:r?{severity:`success`,title:`Update complete — now on ${r}. The app is back online.`,from:n,to:r}:{severity:`success`,title:`Update completed and the app is back online.`,from:n,to:r}:{severity:`critical`,title:`Update failed (exit code ${e}).`,detail:"The update did not complete cleanly. Review the log below, and check `pm2 logs selva-compute` to confirm whether the app is currently online.",from:n,to:r}}var Ee=f(`<span title="Currently installed @selvajs/selva version"> </span>`),De=f(`Update @selvajs/* to the latest <span class="font-medium"> </span> release and restart`,1),Oe=f(`<div class="flex items-start justify-between gap-3"><!> <!></div> <!>`,1),ke=f(`<div class="border-warning/40 bg-warning/10 text-warning flex items-center gap-2 rounded-md border px-3 py-2 text-sm" role="status"><!> <span> <span class="font-mono"> </span> → <span class="font-mono"> </span></span></div>`),Ae=f(`<p class="text-muted-foreground text-sm"> <span class="font-mono"> </span>).</p>`),je=f(`<!> `,1),Me=f(`<div class="border-border bg-muted/50 text-muted-foreground flex items-center gap-2 rounded-md border px-3 py-2 text-sm"><!> <span>PM2 is restarting the app — waiting for the new process to come online…</span></div>`),Ne=f(`<p class="text-muted-foreground font-mono text-xs"> </p>`),Pe=f(`<p class="text-muted-foreground text-xs whitespace-pre-line"> </p>`),Fe=f(`<div><!> <div class="min-w-0 space-y-1"><p> </p> <!> <!></div></div>`),Ie=f(`<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"> </pre></div>`),Le=f(`<!> <!> <!> <!> <!>`,1),Q=f(`<!> <!>`,1);function Re(e,i){t(i,!0);let a=h(i,`latestVersion`,3,null),u=h(i,`updateAvailable`,3,!1),d=h(i,`channel`,3,`stable`),f=h(i,`isRunning`,3,!1),v=h(i,`isRestarting`,3,!1),C=h(i,`logs`,3,``),D=h(i,`exitCode`,3,null),O=P(()=>d()===`beta`?`beta`:`stable`),k=N(void 0),A=N(!1),M=P(()=>D()===null?null:Te(D(),C())),F={success:{text:`text-success`,border:`border-success/40`,bg:`bg-success/10`,icon:B},info:{text:`text-foreground`,border:`border-border`,bg:`bg-muted/50`,icon:z},warning:{text:`text-warning`,border:`border-warning/40`,bg:`bg-warning/10`,icon:G},critical:{text:`text-destructive`,border:`border-destructive/40`,bg:`bg-destructive/10`,icon:ve},pending:{text:`text-muted-foreground`,border:`border-border`,bg:`bg-muted/50`,icon:U}};g(()=>{C()&&m(k)&&(m(k).scrollTop=m(k).scrollHeight)});function ee(){return v()?`Restarting & verifying…`:f()?`Running…`:`Run Update`}function L(){S(A,!0)}function V(){S(A,!1),i.onRun?.()}var H=Q(),W=b(H);T(W,()=>K,(e,t)=>{t(e,{children:(e,t)=>{var n=Q(),d=b(n);T(d,()=>Y,(e,t)=>{t(e,{children:(e,t)=>{var n=Oe(),a=b(n),d=y(a);T(d,()=>X,(e,t)=>{t(e,{children:(e,t)=>{s(),I(e,p(`Application Update`))},$$slots:{default:!0}})});var f=j(d,2),h=e=>{var t=Ee(),n=y(t);c(t),w(()=>{r(t,1,`rounded-full border px-2 py-0.5 font-mono text-xs ${u()?`border-warning/40 bg-warning/10 text-warning`:`border-border bg-muted text-muted-foreground`}`),l(n,`v${i.currentVersion??``}`)}),I(e,t)};o(f,e=>{i.currentVersion&&e(h)}),c(a),T(j(a,2),()=>J,(e,t)=>{t(e,{children:(e,t)=>{s();var n=De(),r=j(b(n)),i=y(r,!0);c(r),s(),w(()=>l(i,m(O))),I(e,n)},$$slots:{default:!0}})}),I(e,n)},$$slots:{default:!0}})}),T(j(d,2),()=>q,(e,t)=>{t(e,{class:`space-y-4`,children:(e,t)=>{var n=Le(),d=b(n),p=e=>{var t=ke(),n=y(t);ge(n,{class:`h-4 w-4 shrink-0`});var r=j(n,2),o=y(r),s=j(o),u=y(s);c(s);var d=j(s,2),f=y(d);c(d),c(r),c(t),w(()=>{l(o,`${m(O)??``} release available — `),l(u,`v${i.currentVersion??``}`),l(f,`v${a()??``}`)}),I(e,t)},h=e=>{var t=Ae(),n=y(t),r=j(n),a=y(r);c(r),s(),c(t),w(()=>{l(n,`You're on the latest ${m(O)??``} release (`),l(a,`v${i.currentVersion??``}`)}),I(e,t)};o(d,e=>{u()&&a()?e(p):i.currentVersion&&a()&&e(h,1)});var g=j(d,2);R(g,{onclick:L,get disabled(){return f()},variant:`destructive`,children:(e,t)=>{var n=je(),r=b(n),i=e=>{U(e,{class:`mr-2 h-4 w-4 animate-spin`})};o(r,e=>{v()&&e(i)});var a=j(r);w(e=>l(a,` ${e??``}`),[()=>ee()]),I(e,n)},$$slots:{default:!0}});var E=j(g,2),A=e=>{var t=Me();U(y(t),{class:`h-4 w-4 animate-spin`}),s(2),c(t),I(e,t)};o(E,e=>{v()&&D()===null&&e(A)});var N=j(E,2),z=e=>{let t=P(()=>F[m(M).severity]),n=P(()=>m(t).icon);var i=Fe(),a=y(i);T(a,()=>m(n),(e,n)=>{n(e,{get class(){return`mt-0.5 h-5 w-5 shrink-0 ${m(t).text??``}`}})});var s=j(a,2),u=y(s),d=y(u,!0);c(u);var f=j(u,2),p=e=>{var t=Ne(),n=y(t);c(t),w(()=>l(n,`${m(M).from??``} → ${m(M).to??``}`)),I(e,t)};o(f,e=>{m(M).from&&m(M).to&&m(M).from!==m(M).to&&e(p)});var h=j(f,2),g=e=>{var t=Pe(),n=y(t,!0);c(t),w(()=>l(n,m(M).detail)),I(e,t)};o(h,e=>{m(M).detail&&e(g)}),c(s),c(i),w(()=>{r(i,1,`flex items-start gap-3 rounded-md border px-3 py-3 ${m(t).border??``} ${m(t).bg??``}`),x(i,`role`,m(M).severity===`critical`?`alert`:`status`),x(i,`aria-live`,m(M).severity===`critical`?`assertive`:`polite`),r(u,1,`text-sm font-medium ${m(t).text??``}`),l(d,m(M).title)}),I(e,i)};o(N,e=>{m(M)&&e(z)});var B=j(N,2),V=e=>{var t=Ie(),n=j(y(t),2),r=y(n,!0);c(n),_(n,e=>S(k,e),()=>m(k)),c(t),w(()=>l(r,C())),I(e,t)};o(B,e=>{C()&&e(V)}),I(e,n)},$$slots:{default:!0}})}),I(e,n)},$$slots:{default:!0}})}),T(j(W,2),()=>ce,(e,t)=>{t(e,{get open(){return m(A)},onOpenChange:e=>S(A,e,!0),children:(e,t)=>{var r=n();T(b(r),()=>oe,(e,t)=>{t(e,{children:(e,t)=>{var n=Q(),r=b(n);T(r,()=>re,(e,t)=>{t(e,{children:(e,t)=>{var n=Q(),r=b(n);T(r,()=>ne,(e,t)=>{t(e,{children:(e,t)=>{s(),I(e,p(`Run Update?`))},$$slots:{default:!0}})}),T(j(r,2),()=>ie,(e,t)=>{t(e,{children:(e,t)=>{s();var n=p();w(()=>l(n,`This will update @selvajs/* to the latest ${m(O)??``} release and restart the application.
2
+ The service will be temporarily unavailable.`)),I(e,n)},$$slots:{default:!0}})}),I(e,n)},$$slots:{default:!0}})}),T(j(r,2),()=>te,(e,t)=>{t(e,{children:(e,t)=>{var n=Q(),r=b(n);T(r,()=>ae,(e,t)=>{t(e,{children:(e,t)=>{s(),I(e,p(`Cancel`))},$$slots:{default:!0}})}),T(j(r,2),()=>se,(e,t)=>{t(e,{onclick:V,get disabled(){return f()},children:(e,t)=>{s(),I(e,p(`Continue`))},$$slots:{default:!0}})}),I(e,n)},$$slots:{default:!0}})}),I(e,n)},$$slots:{default:!0}})}),I(e,r)},$$slots:{default:!0}})}),I(e,H),E()}var ze=f(`<div class="flex items-start justify-between gap-3"><!> <span title="The channel this deployment currently tracks"> </span></div> <!>`,1),Be=f(`<div class="border-warning/40 bg-warning/10 text-warning mt-3 flex items-start gap-2 rounded-md border px-3 py-2 text-xs" role="status"><!> <span>Beta builds may be unstable. You can revert to Stable here at any time and run an update
3
+ to roll back to the latest stable release.</span></div>`),Ve=f(`<span class="text-muted-foreground text-xs">Switches to <span class="font-medium"> </span> — run
4
+ an update to apply.</span>`),He=f(`<form method="POST" action="?/setChannel"><div class="grid gap-3 sm:grid-cols-2"><label><input type="radio" name="channel" class="sr-only"/> <!> <div class="min-w-0"><p class="text-sm font-medium">Stable</p> <p class="text-muted-foreground mt-0.5 text-xs">Production releases (npm <code class="font-mono">latest</code>). The default.</p></div></label> <label><input type="radio" name="channel" class="sr-only"/> <!> <div class="min-w-0"><p class="text-sm font-medium">Beta</p> <p class="text-muted-foreground mt-0.5 text-xs">Pre-release builds (npm <code class="font-mono">beta</code>). Early features, less
5
+ tested.</p></div></label></div> <!> <div class="mt-4 flex items-center gap-3"><!> <!></div></form>`),Ue=f(`<!> <!>`,1);function We(i,u){t(u,!0);let d=[],f=h(u,`disabled`,3,!1),g=N(O(e(()=>u.channel))),_=N(!1),x=P(()=>m(g)!==u.channel);var D=n();T(b(D),()=>K,(e,t)=>{t(e,{children:(e,t)=>{var n=Ue(),i=b(n);T(i,()=>Y,(e,t)=>{t(e,{children:(e,t)=>{var n=ze(),i=b(n),a=y(i);T(a,()=>X,(e,t)=>{t(e,{children:(e,t)=>{s(),I(e,p(`Release channel`))},$$slots:{default:!0}})});var o=j(a,2),d=y(o,!0);c(o),c(i),T(j(i,2),()=>J,(e,t)=>{t(e,{children:(e,t)=>{s(),I(e,p(`Which published line of @selvajs/* this instance updates to. Switching here only changes the
6
+ channel — run an update afterwards to install from it.`))},$$slots:{default:!0}})}),w(()=>{r(o,1,`rounded-full border px-2 py-0.5 font-mono text-xs ${u.channel===`beta`?`border-warning/40 bg-warning/10 text-warning`:`border-border bg-muted text-muted-foreground`}`),l(d,u.channel===`beta`?`Beta`:`Stable`)}),I(e,n)},$$slots:{default:!0}})}),T(j(i,2),()=>q,(e,t)=>{t(e,{class:`space-y-4`,children:(e,t)=>{var n=He(),i=y(n),u=y(i),h=y(u);C(h),h.value=h.__value=`stable`,W(j(h,2),{class:`text-success mt-0.5 h-5 w-5 shrink-0`}),s(2),c(u);var b=j(u,2),T=y(b);C(T),T.value=T.__value=`beta`,be(j(T,2),{class:`text-warning mt-0.5 h-5 w-5 shrink-0`}),s(2),c(b),c(i);var E=j(i,2),D=e=>{var t=Be();G(y(t),{class:`mt-0.5 h-4 w-4 shrink-0`}),s(2),c(t),I(e,t)};o(E,e=>{m(g)===`beta`&&e(D)});var O=j(E,2),k=y(O);{let e=P(()=>!m(x)||m(_)||f());R(k,{type:`submit`,get disabled(){return m(e)},children:(e,t)=>{s();var n=p();w(()=>l(n,m(_)?`Saving…`:`Save channel`)),I(e,n)},$$slots:{default:!0}})}var A=j(k,2),M=e=>{var t=Ve(),n=j(y(t)),r=y(n,!0);c(n),s(),c(t),w(()=>l(r,m(g)===`beta`?`Beta`:`Stable`)),I(e,t)};o(A,e=>{m(x)&&e(M)}),c(O),c(n),a(n,(e,t)=>ue?.(e,t),()=>()=>(S(_,!0),async({update:e})=>{await e({reset:!1}),S(_,!1)})),w(()=>{r(u,1,`flex cursor-pointer items-start gap-3 rounded-lg border px-4 py-3 transition-colors ${m(g)===`stable`?`border-primary bg-primary/5`:`border-border hover:bg-muted/50`}`),h.disabled=f(),r(b,1,`flex cursor-pointer items-start gap-3 rounded-lg border px-4 py-3 transition-colors ${m(g)===`beta`?`border-primary bg-primary/5`:`border-border hover:bg-muted/50`}`),T.disabled=f()}),v(d,[],h,()=>m(g),e=>S(g,e)),v(d,[],T,()=>m(g),e=>S(g,e)),I(e,n)},$$slots:{default:!0}})}),I(e,n)},$$slots:{default:!0}})}),I(i,D),E()}var Ge=f(`<!> <!>`,1),Ke=f(`<!> `,1),qe=f(`<div class="border-destructive/40 bg-destructive/10 text-destructive flex items-start gap-2 rounded-md border px-3 py-2 text-sm" role="alert"><!> <span> </span></div>`),Je=f(`<p class="text-foreground text-xs"> </p>`),Ye=f(`<div class="flex items-start gap-3 px-4 py-3"><!> <div class="min-w-0 flex-1 space-y-1"><div class="flex items-center justify-between gap-2"><span class="text-sm font-medium"> </span> <span> </span></div> <p class="text-muted-foreground text-xs"> </p> <!></div></div>`),Xe=f(`<div class="space-y-3"><div><!> <span> </span> <span class="text-muted-foreground ml-auto text-xs font-normal"> </span></div> <div class="divide-y rounded-lg border"></div></div>`),Ze=f(`<!> <!> <!>`,1);function Qe(e,i){t(i,!0);let a=N(!1),d=N(null),f=N(null),h={ok:{text:`text-success`,icon:B,label:`OK`},degraded:{text:`text-warning`,icon:G,label:`Degraded`},error:{text:`text-destructive`,icon:ve,label:`Error`},not_applicable:{text:`text-muted-foreground`,icon:V,label:`N/A`}};async function g(){S(a,!0),S(f,null);try{let e=await fetch(`/admin/api/system/health`,{cache:`no-store`});if(!e.ok){S(f,`Health check request failed (HTTP ${e.status}).`),S(d,null);return}S(d,await e.json(),!0)}catch(e){S(f,e instanceof Error?e.message:`Health check request failed.`,!0),S(d,null)}finally{S(a,!1)}}var _=n();T(b(_),()=>K,(e,t)=>{t(e,{children:(e,t)=>{var n=Ge(),i=b(n);T(i,()=>Y,(e,t)=>{t(e,{children:(e,t)=>{var n=Ge(),r=b(n);T(r,()=>X,(e,t)=>{t(e,{class:`text-sm font-medium`,children:(e,t)=>{s(),I(e,p(`System health`))},$$slots:{default:!0}})}),T(j(r,2),()=>J,(e,t)=>{t(e,{children:(e,t)=>{s(),I(e,p(`Re-runs runtime integrity checks live (not the cached boot snapshot), so results reflect the
7
+ current state after any fix.`))},$$slots:{default:!0}})}),I(e,n)},$$slots:{default:!0}})}),T(j(i,2),()=>q,(e,t)=>{t(e,{class:`space-y-4`,children:(e,t)=>{var n=Ze(),i=b(n);R(i,{onclick:g,get disabled(){return m(a)},variant:`outline`,children:(e,t)=>{var n=Ke(),r=b(n);{let e=P(()=>m(a)?`animate-pulse`:``);Se(r,{get class(){return`mr-2 h-4 w-4 ${m(e)??``}`}})}var i=j(r);w(()=>l(i,` ${m(a)?`Checking…`:`Run health check`}`)),I(e,n)},$$slots:{default:!0}});var s=j(i,2),p=e=>{var t=qe(),n=y(t);ve(n,{class:`mt-0.5 h-4 w-4 shrink-0`});var r=j(n,2),i=y(r,!0);c(r),c(t),w(()=>l(i,m(f))),I(e,t)};o(s,e=>{m(f)&&e(p)});var _=j(s,2),v=e=>{let t=P(()=>h[m(d).overall]),n=P(()=>m(t).icon);var i=Xe(),a=y(i),s=y(a);T(s,()=>m(n),(e,t)=>{t(e,{class:`h-5 w-5`})});var f=j(s,2),p=y(f,!0);c(f);var g=j(f,2),_=y(g,!0);c(g),c(a);var v=j(a,2);u(v,21,()=>m(d).checks,e=>e.id,(e,t)=>{let n=P(()=>h[m(t).status]),i=P(()=>m(n).icon);var a=Ye(),s=y(a);T(s,()=>m(i),(e,t)=>{t(e,{get class(){return`mt-0.5 h-4 w-4 shrink-0 ${m(n).text??``}`}})});var u=j(s,2),d=y(u),f=y(d),p=y(f,!0);c(f);var g=j(f,2),_=y(g,!0);c(g),c(d);var v=j(d,2),b=y(v,!0);c(v);var x=j(v,2),S=e=>{var n=Je(),r=y(n,!0);c(n),w(()=>l(r,m(t).remediation)),I(e,n)};o(x,e=>{m(t).remediation&&e(S)}),c(u),c(a),w(()=>{l(p,m(t).label),r(g,1,`rounded-full border px-2 py-0.5 font-mono text-[10px] tracking-wide uppercase ${m(n).text??``}`),l(_,m(n).label),l(b,m(t).summary)}),I(e,a)}),c(v),c(i),w(e=>{r(a,1,`flex items-center gap-2 text-sm font-medium ${m(t).text??``}`),l(p,m(d).overall===`ok`?`All checks passed`:m(d).overall===`degraded`?`Attention needed`:m(d).overall===`error`?`Check failed to run`:`No applicable checks`),l(_,e)},[()=>new Date(m(d).checkedAt).toLocaleTimeString()]),I(e,i)};o(_,e=>{m(d)&&e(v)}),I(e,n)},$$slots:{default:!0}})}),I(e,n)},$$slots:{default:!0}})}),I(e,_),E()}var $e=f(`<!> <!>`,1),et=f(`<option> </option>`),tt=f(`<!> `,1),nt=f(`<p class="text-destructive text-sm"> </p>`),rt=f(`<span class="text-muted-foreground"> </span>`),it=f(`<li class="flex items-center gap-2 font-mono text-sm"><!> <span class="text-muted-foreground"> </span> <span> </span> <span class="font-semibold"> </span> <span class="text-muted-foreground"> </span> <!></li>`),at=f(`<ul class="space-y-1"></ul>`),ot=f(`<div class="flex flex-wrap items-center gap-2"><label class="text-muted-foreground text-sm" for="throughput-size">Test size</label> <select id="throughput-size" class="border-input bg-background rounded-md border px-2 py-1 text-sm"></select> <!> <!></div> <!> <!>`,1);function st(e,r){t(r,!0);let i=[10,25,50,100,200],a=N(25),d=N(null),f=N(null),h=N(O([]));function g(e){S(h,[e,...m(h)].slice(0,8),!0)}function _(e){let t=new ArrayBuffer(e),n=new Uint8Array(t),r=65536;for(let t=0;t<e;t+=r)crypto.getRandomValues(n.subarray(t,Math.min(t+r,e)));return t}async function v(){S(d,`download`),S(f,null);try{let e=performance.now(),t=await fetch(`/admin/api/system/throughput?mb=${m(a)}`,{cache:`no-store`});if(!t.ok||!t.body){S(f,`Download test failed (HTTP ${t.status}).`);return}let n=t.body.getReader(),r=0;for(;;){let{done:e,value:t}=await n.read();if(e)break;r+=t.byteLength}let i=performance.now()-e;g({direction:`download`,mb:r/(1024*1024),ms:Math.round(i),mbps:r/(1024*1024)/(i/1e3),at:new Date().toLocaleTimeString()})}catch(e){S(f,e instanceof Error?e.message:`Download test failed.`,!0)}finally{S(d,null)}}async function x(){S(d,`upload`),S(f,null);try{let e=_(m(a)*1024*1024),t=performance.now(),n=await fetch(`/admin/api/system/throughput`,{method:`POST`,headers:{"Content-Type":`application/octet-stream`},body:e}),r=performance.now()-t;if(!n.ok){S(f,n.status===413?`Upload rejected (HTTP 413) — a body-size limit in the chain is below ${m(a)} MB (adapter-node BODY_SIZE_LIMIT, or a proxy request cap).`:`Upload test failed (HTTP ${n.status}).`,!0);return}let i=await n.json();g({direction:`upload`,mb:m(a),ms:Math.round(r),mbps:m(a)/(r/1e3),serverMbps:i.mbps,at:new Date().toLocaleTimeString()})}catch(e){S(f,e instanceof Error?e.message:`Upload test failed.`,!0)}finally{S(d,null)}}var C=n();T(b(C),()=>K,(e,t)=>{t(e,{children:(e,t)=>{var n=$e(),r=b(n);T(r,()=>Y,(e,t)=>{t(e,{children:(e,t)=>{var n=$e(),r=b(n);T(r,()=>X,(e,t)=>{t(e,{class:`text-sm font-medium`,children:(e,t)=>{s(),I(e,p(`Network throughput`))},$$slots:{default:!0}})}),T(j(r,2),()=>J,(e,t)=>{t(e,{children:(e,t)=>{s(),I(e,p(`Transfers incompressible random data between this browser and the server — through every
8
+ proxy/tunnel on the path — to measure real transport speed in each direction. No compute
9
+ involvement; large solve transfers can't go faster than these numbers.`))},$$slots:{default:!0}})}),I(e,n)},$$slots:{default:!0}})}),T(j(r,2),()=>q,(e,t)=>{t(e,{class:`space-y-4`,children:(e,t)=>{var n=ot(),r=b(n),s=j(y(r),2);u(s,20,()=>i,e=>e,(e,t)=>{var n=et(),r=y(n);c(n);var i={};w(()=>{l(r,`${t??``} MB`),i!==(i=t)&&(n.value=(n.__value=t)??``)}),I(e,n)}),c(s);var p=j(s,2);{let e=P(()=>m(d)!==null);R(p,{size:`sm`,variant:`outline`,onclick:v,get disabled(){return m(e)},children:(e,t)=>{var n=tt(),r=b(n);fe(r,{class:`mr-1 size-4`});var i=j(r);w(()=>l(i,` ${m(d)===`download`?`Downloading…`:`Download test`}`)),I(e,n)},$$slots:{default:!0}})}var g=j(p,2);{let e=P(()=>m(d)!==null);R(g,{size:`sm`,variant:`outline`,onclick:x,get disabled(){return m(e)},children:(e,t)=>{var n=tt(),r=b(n);me(r,{class:`mr-1 size-4`});var i=j(r);w(()=>l(i,` ${m(d)===`upload`?`Uploading…`:`Upload test`}`)),I(e,n)},$$slots:{default:!0}})}c(r);var _=j(r,2),C=e=>{var t=nt(),n=y(t,!0);c(t),w(()=>l(n,m(f))),I(e,t)};o(_,e=>{m(f)&&e(C)});var T=j(_,2),E=e=>{var t=at();u(t,21,()=>m(h),e=>e.at+e.direction+e.ms,(e,t)=>{var n=it(),r=y(n);H(r,{class:`text-muted-foreground size-4`});var i=j(r,2),a=y(i,!0);c(i);var s=j(i,2),u=y(s);c(s);var d=j(s,2),f=y(d);c(d);var p=j(d,2),h=y(p);c(p);var g=j(p,2),_=e=>{var n=rt(),r=y(n);c(n),w(e=>l(r,`· server-side ${e??``} MB/s`),[()=>m(t).serverMbps.toFixed(1)]),I(e,n)};o(g,e=>{m(t).serverMbps!=null&&e(_)}),c(n),w((e,n,r)=>{l(a,m(t).at),l(u,`${m(t).direction===`download`?`↓`:`↑`} ${e??``} MB`),l(f,`${n??``} MB/s`),l(h,`(${r??``}s)`)},[()=>m(t).mb.toFixed(0),()=>m(t).mbps.toFixed(1),()=>(m(t).ms/1e3).toFixed(1)]),I(e,n)}),c(t),I(e,t)};o(T,e=>{m(h).length>0&&e(E)}),w(()=>s.disabled=m(d)!==null),F(s,()=>m(a),e=>S(a,e)),I(e,n)},$$slots:{default:!0}})}),I(e,n)},$$slots:{default:!0}})}),I(e,C),E()}var $=f(`<!> <!>`,1),ct=f(`<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"> </code> <p class="text-muted-foreground mt-1 text-xs"> </p></div> <span> </span></div>`),lt=f(`<div class="divide-y rounded-lg border"></div>`),ut=f(`<div class="flex items-start justify-between gap-4 px-4 py-3"><div class="min-w-0 flex-1"><span class="text-foreground text-sm font-medium"> </span> <p class="text-muted-foreground mt-1 text-xs"> </p> <code class="text-muted-foreground mt-1 block font-mono text-[10px]"> </code></div> <span class="border-border text-foreground shrink-0 rounded-full border px-2 py-0.5 font-mono text-[10px] tracking-wide whitespace-nowrap"> </span></div>`),dt=f(`<div class="space-y-6"><!> <!> <!> <!> <!></div>`);function ft(e,n){t(n,!0);function a(e){return e>=1024*1024*1024?`${(e/(1024*1024*1024)).toFixed(1)} GB`:e>=1024*1024?`${Math.round(e/(1024*1024))} MB`:e>=1024?`${Math.round(e/1024)} KB`:`${e} B`}function f(e){if(e>=6e4){let t=e/6e4;return`${Number.isInteger(t)?t:t.toFixed(1)} min`}if(e>=1e3){let t=e/1e3;return`${Number.isInteger(t)?t:t.toFixed(1)} s`}return`${e} ms`}let h=[{key:`MAX_SOLVE_DURATION_MS`,label:`Max solve duration`,env:`MAX_SOLVE_DURATION_MS`,value:e=>f(e.MAX_SOLVE_DURATION_MS),description:`Longest a single /api/compute solve may run before it is aborted.`},{key:`RATE_LIMIT_MAX_REQUESTS`,label:`Compute rate limit`,env:`COMPUTE_RATE_LIMIT_MAX · COMPUTE_RATE_LIMIT_WINDOW_MS`,value:e=>`${e.RATE_LIMIT_MAX_REQUESTS} / ${f(e.RATE_LIMIT_WINDOW_MS)}`,description:`Max solves per key (user or share-link) within the fixed window.`},{key:`MAX_GH_FILE_SIZE`,label:`Max .gh upload size`,env:`MAX_GH_FILE_SIZE_BYTES`,value:e=>a(e.MAX_GH_FILE_SIZE),description:`Largest Grasshopper definition accepted on upload.`},{key:`MAX_IMAGE_FILE_SIZE`,label:`Max cover image size`,env:`MAX_IMAGE_FILE_SIZE_BYTES`,value:e=>a(e.MAX_IMAGE_FILE_SIZE),description:`Largest cover image accepted on upload.`},{key:`COMPUTE_REQUEST_MAX_BYTES`,label:`Compute request body cap`,env:`COMPUTE_REQUEST_MAX_BYTES`,value:e=>a(e.COMPUTE_REQUEST_MAX_BYTES),description:`Max /api/compute JSON request size (inputs + base64 file values).`},{key:`COMPUTE_RESPONSE_MAX_BYTES`,label:`Compute response body cap`,env:`COMPUTE_RESPONSE_MAX_BYTES`,value:e=>a(e.COMPUTE_RESPONSE_MAX_BYTES),description:`Max /api/compute JSON response size before it 413s.`},{key:`REMOTE_DEFINITION_MAX_BYTES`,label:`Remote definition fetch cap`,env:`MAX_GH_FILE_SIZE_BYTES`,value:e=>a(e.REMOTE_DEFINITION_MAX_BYTES),description:`Max size of a remotely-fetched .gh (tracks the upload cap).`},{key:`REMOTE_DEFINITION_FETCH_TIMEOUT_MS`,label:`Remote definition fetch timeout`,env:`REMOTE_DEFINITION_FETCH_TIMEOUT_MS`,value:e=>f(e.REMOTE_DEFINITION_FETCH_TIMEOUT_MS),description:`Deadline for fetching a remote .gh before the request is dropped.`},{key:`DEFINITION_CACHE_TTL_MS`,label:`Definition cache TTL`,env:`DEFINITION_CACHE_TTL_MS`,value:e=>f(e.DEFINITION_CACHE_TTL_MS),description:`How long remotely-fetched .gh bytes stay cached in-process.`}],g={ALLOW_CROSS_ORG_PUBLIC:`When on, projects can be made visible to every authenticated user on the instance, not just their own org.`,ALLOW_ORG_COMPUTE_OVERRIDE:`When on, individual orgs can configure their own Rhino.Compute server instead of the instance pool.`,ALLOW_ORG_CREATION:`When on, signed-in users see a "Create organization" action. Off by default in self-hosted instances.`,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.`,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(!1),v=N(``),x=N(null),C=N(!1);async function O(){try{let e=await fetch(`/api/health`,{cache:`no-store`});return e.ok?await e.json():null}catch{return null}}async function A(){try{return(await fetch(`/admin/api/system/health`,{cache:`no-store`})).ok}catch{return!1}}async function M(){try{let e=await fetch(`/admin/api/system/update`,{cache:`no-store`});return e.ok?await e.text():null}catch{return null}}function F(e){return/\bManual recovery required\b/.test(e)?6:/\bRolled back to .* — previous version is online\b/.test(e)?5:/New process failed health check/.test(e)&&!/Rolled back/.test(e)?3:/\[FATAL\]/.test(e)&&!/\[DONE\]/.test(e)?1:/\[DONE\]/.test(e)?0:null}async function L(e){S(C,!0),S(v,m(v)+`
10
+ Waiting for app to come back online…
11
+ `),await new Promise(e=>setTimeout(e,2e3));for(let t=0;t<150;t++){let[t,n,r]=await Promise.all([O(),M(),A()]);n&&n.trim().length>0&&S(v,n,!0);let i=!!t?.instanceId&&t.instanceId!==e&&r,a=F(m(v));if(i){S(x,a??0,!0),S(_,!1),S(C,!1);return}if(a!==null&&t&&r&&t.instanceId===e){S(x,a,!0),S(_,!1),S(C,!1);return}if(!e&&t&&r&&a!==null){S(x,a,!0),S(_,!1),S(C,!1);return}await new Promise(e=>setTimeout(e,2e3))}let t=await M();t&&t.trim().length>0&&S(v,t,!0),S(v,m(v)+`
12
+ ⚠ App did not come back within 5 minutes — check PM2 logs.
13
+ `),S(x,-2),S(_,!1),S(C,!1)}async function R(){S(_,!0),S(C,!1),S(v,``),S(x,null);let e=(await O())?.instanceId??null;try{let t=await fetch(`/admin/api/system/update`,{method:`POST`});if(!t.ok){S(v,`Failed to start update process`),S(x,t.status,!0),S(_,!1);return}let n=t.body?.getReader(),r=new TextDecoder;if(!n){S(v,`Failed to read response`),S(x,-1),S(_,!1);return}let i=``,a=!1,o=!1,s=null;for(;;){let{done:e,value:t}=await n.read();if(e)break;i+=r.decode(t,{stream:!0});let c=i.split(`
14
+
15
+ `);i=c.pop();for(let e of c)if(e.startsWith(`data: `))try{let t=JSON.parse(e.slice(6));t.type===`log`?S(v,m(v)+(t.data+`
16
+ `)):t.type===`restarting`?(S(v,m(v)+(t.data+`
17
+ `)),S(C,!0),a=!0):t.type===`exit`&&(o=!0,s=t.code)}catch{}}o&&!a&&s!==null&&s!==0?(S(x,s,!0),S(_,!1)):await L(e)}catch(t){m(C)?await L(e):(S(v,m(v)+(`
18
+ Error: `+(t instanceof Error?t.message:`Unknown error`))),S(x,-1),S(_,!1))}}var z=dt();i(`1uq49ma`,e=>{k(()=>{D.title=`Admin · System`})});var B=y(z);le(B,{eyebrow:`Admin`,title:`System settings`,description:`Instance-wide configuration, platform flags, and the update runner. To change platform flags, edit SELVA_FLAG_* in your .env and restart the app.`});var V=j(B,2);T(V,()=>K,(e,t)=>{t(e,{children:(e,t)=>{var i=$(),a=b(i);T(a,()=>Y,(e,t)=>{t(e,{children:(e,t)=>{var n=$(),r=b(n);T(r,()=>X,(e,t)=>{t(e,{class:`text-sm font-medium`,children:(e,t)=>{s(),I(e,p(`Platform flags`))},$$slots:{default:!0}})}),T(j(r,2),()=>J,(e,t)=>{t(e,{children:(e,t)=>{s(),I(e,p(`Resolved state of the env-driven flags that control instance behavior. To change a flag,
19
+ edit your environment configuration and restart the app.`))},$$slots:{default:!0}})}),I(e,n)},$$slots:{default:!0}})}),T(j(a,2),()=>q,(e,t)=>{t(e,{children:(e,t)=>{var i=lt();u(i,21,()=>Object.entries(n.data.flags),([e,t])=>e,(e,t)=>{var n=P(()=>ee(m(t),2));let i=()=>m(n)[0],a=()=>m(n)[1];var o=ct(),s=y(o),u=y(s),d=y(u,!0);c(u);var f=j(u,2),p=y(f,!0);c(f),c(s);var h=j(s,2),_=y(h,!0);c(h),c(o),w(()=>{l(d,i()),l(p,g[i()]),r(h,1,`rounded-full border px-2 py-0.5 font-mono text-[10px] tracking-wide uppercase ${a()?`border-success/40 bg-success/10 text-success`:`border-border text-muted-foreground`}`),l(_,a()?`On`:`Off`)}),I(e,o)}),c(i),I(e,i)},$$slots:{default:!0}})}),I(e,i)},$$slots:{default:!0}})});var H=j(V,2);T(H,()=>K,(e,t)=>{t(e,{children:(e,t)=>{var r=$(),i=b(r);T(i,()=>Y,(e,t)=>{t(e,{children:(e,t)=>{var n=$(),r=b(n);T(r,()=>X,(e,t)=>{t(e,{class:`text-sm font-medium`,children:(e,t)=>{s(),I(e,p(`Platform limits`))},$$slots:{default:!0}})}),T(j(r,2),()=>J,(e,t)=>{t(e,{children:(e,t)=>{s(),I(e,p(`Resolved compute, upload, and timeout caps currently enforced by the instance. Each value
20
+ reflects its environment override or the built-in default. To change one, set the listed
21
+ variable in your environment configuration and restart the app.`))},$$slots:{default:!0}})}),I(e,n)},$$slots:{default:!0}})}),T(j(i,2),()=>q,(e,t)=>{t(e,{children:(e,t)=>{var r=lt();u(r,21,()=>h,e=>e.key,(e,t)=>{var r=ut(),i=y(r),a=y(i),o=y(a,!0);c(a);var s=j(a,2),u=y(s,!0);c(s);var d=j(s,2),f=y(d,!0);c(d),c(i);var p=j(i,2),h=y(p,!0);c(p),c(r),w(e=>{l(o,m(t).label),l(u,m(t).description),l(f,m(t).env),l(h,e)},[()=>m(t).value(n.data.limits)]),I(e,r)}),c(r),I(e,r)},$$slots:{default:!0}})}),I(e,r)},$$slots:{default:!0}})});var U=j(H,2),W=e=>{var t=$(),n=b(t);Qe(n,{}),st(j(n,2),{}),I(e,t)};o(U,e=>{n.data.isInstanceAdmin&&e(W)});var G=j(U,2),te=e=>{var t=$(),r=b(t);d(r,()=>n.data.channel,e=>{We(e,{get channel(){return n.data.channel},get disabled(){return m(_)}})}),Re(j(r,2),{get currentVersion(){return n.data.version},get latestVersion(){return n.data.update.latest},get updateAvailable(){return n.data.update.updateAvailable},get channel(){return n.data.channel},get isRunning(){return m(_)},get isRestarting(){return m(C)},get logs(){return m(v)},get exitCode(){return m(x)},onRun:R}),I(e,t)};o(G,e=>{n.data.canManageUpdates&&e(te)}),c(z),I(e,z),E()}export{ft as component};
@@ -0,0 +1,6 @@
1
+ import{At as e,B as t,C as n,D as r,F as i,Ft as a,G as o,It as s,K as c,L as l,M as u,V as d,W as f,X as p,_ as m,dt as h,ft as g,g as _,gt as v,h as y,it as b,k as x,kt as S,lt as C,mt as w,nt as T,pt as E,vt as D,xt as O,y as k,z as A}from"../chunks/CL3s_3g5.js";import{i as j}from"../chunks/CVGG5cou.js";import"../chunks/xihTtKlq.js";import{t as M}from"../chunks/BMx84FKI.js";import{t as ee}from"../chunks/CAToUyMt.js";import{t as te}from"../chunks/BtkBkYMP.js";import{a as ne,i as N,r as re,t as P}from"../chunks/B3_WmU5u.js";import{t as ie}from"../chunks/DOfEstn5.js";import{t as ae}from"../chunks/BcvLMt3u.js";import{t as oe}from"../chunks/BzJx6omo.js";import{t as se}from"../chunks/xnWCJBmG.js";import{t as F}from"../chunks/UeEPBo0V.js";import{t as I}from"../chunks/Ot8VM1_P.js";import{t as L}from"../chunks/DNL96-hz.js";import{n as R,t as z}from"../chunks/CFFv3oN9.js";import{t as ce}from"../chunks/Biu_T4Iy.js";import{n as le,t as ue}from"../chunks/Ciz-tExL2.js";import{t as B}from"../chunks/Dt77lQ3V2.js";import{n as V}from"../chunks/35-OQSYE2.js";import"../chunks/C5qitKDD2.js";import{t as de}from"../chunks/DW4WVvYR2.js";var fe=d(`<span> </span>`),H=d(`<span class="border-border bg-muted text-muted-foreground rounded-full border px-2 py-0.5 font-mono text-[10px] tracking-wide uppercase">disabled</span>`),U=d(`<span class="rounded-full border border-amber-500/40 bg-amber-500/5 px-2 py-0.5 font-mono text-[10px] tracking-wide text-amber-600 uppercase dark:text-amber-400" title="Provisioned but has never signed in. Permissions take effect on first login.">invited</span>`),W=d(`<div class="mt-1.5 flex flex-wrap gap-1"></div>`),G=d(`<label><input type="checkbox" class="mt-0.5 shrink-0"/> <div class="min-w-0"><p class="text-sm leading-tight font-medium"> </p> <p class="text-muted-foreground mt-0.5 text-xs"> </p></div></label>`),K=d(`<p class="text-muted-foreground text-sm"><strong class="text-foreground capitalize"> </strong> automatically
2
+ receive all organization permissions. To grant a custom subset, change the role to <span class="font-mono">member</span>.</p>`),q=d(`<div class="grid gap-2 sm:grid-cols-2"></div>`),J=d(`<div class="mt-4 ml-10 space-y-4"><section><h4 class="text-muted-foreground mb-2 text-xs font-medium tracking-wider uppercase">Platform</h4> <div class="grid gap-2 sm:grid-cols-2"></div></section> <section><h4 class="text-muted-foreground mb-2 text-xs font-medium tracking-wider uppercase">Organization</h4> <!></section></div>`),Y=d(`<div><div class="flex items-center gap-3"><button type="button" class="text-muted-foreground hover:text-foreground shrink-0 rounded-sm p-0.5"><!></button> <!> <div class="min-w-0 flex-1"><div class="flex items-center gap-2"><p class="truncate text-sm font-medium"> </p> <!> <!></div> <p class="text-muted-foreground truncate font-mono text-xs"> </p> <!></div> <!></div> <!></div>`);function pe(t,r){e(r,!0);let o={instance_admin:`Instance admin`,manage_instance_users:`Manage instance users`,manage_compute:`Manage compute`,manage_updates:`Manage updates`,manage_org_members:`Manage members`,manage_org_compute:`Manage org compute`,manage_definitions:`Manage definitions`,manage_projects:`Manage projects`},d={instance_admin:`Full access to every action on the instance.`,manage_instance_users:`Create, disable, and delete any user on the instance.`,manage_compute:`Configure the instance Rhino.Compute pool.`,manage_updates:`Run the application update script.`,manage_org_members:`Invite, remove, and change roles of org members.`,manage_org_compute:`Configure this org's BYO compute server.`,manage_definitions:`Upload, edit, and delete any definition in the org.`,manage_projects:`Create, edit, and delete any project in the org.`},f={owner:`border-amber-500/40 text-amber-600 dark:text-amber-400 bg-amber-500/5`,admin:`border-blue-500/40 text-blue-600 dark:text-blue-400 bg-blue-500/5`,member:`border-border text-muted-foreground`},g=O(()=>r.user.displayName?`${r.user.displayName} · ${r.user.email??r.user.id}`:r.user.email??r.user.id),v=O(()=>r.user.orgRole===`owner`||r.user.orgRole===`admin`),x=O(()=>r.user.permissions.filter(e=>N.includes(e)?!0:!p(v)));function C(e){return N.includes(e)}function w(e){return re.includes(e)}function T(e){let t=r.user.permissions.includes(e),n=C(e)&&!r.isPlatformAdmin,i=e===`instance_admin`&&r.soleInstanceAdmin,a=!C(e)&&w(e)&&r.user.orgRole===`member`;return{checked:t,locked:n||i||a,soleAdminLock:i,platformLocked:n,memberExcluded:a}}var D=Y(),k=h(D),j=h(k),ne=h(j),ie=e=>{ee(e,{class:`h-4 w-4`})},ae=e=>{te(e,{class:`h-4 w-4`})};i(ne,e=>{r.expanded?e(ie):e(ae,-1)}),s(j);var oe=E(j,2);{let e=O(()=>r.user.displayName??r.user.email??r.user.id);de(oe,{get name(){return p(e)}})}var F=E(oe,2),I=h(F),L=h(I),R=h(L,!0);s(L);var z=E(L,2),ce=e=>{var t=fe(),i=h(t,!0);s(t),b(()=>{n(t,1,`rounded-full border px-2 py-0.5 font-mono text-[10px] tracking-wide uppercase ${f[r.user.orgRole]}`),l(i,r.user.orgRole)}),A(e,t)};i(z,e=>{r.user.orgRole&&e(ce)});var le=E(z,2),ue=e=>{A(e,H())},B=e=>{A(e,U())};i(le,e=>{r.user.disabled?e(ue):r.user.lastLoginAt||e(B,1)}),s(I);var V=E(I,2),pe=h(V,!0);s(V);var me=E(V,2),he=e=>{var t=W();u(t,20,()=>p(x),e=>e,(e,t)=>{var r=fe(),i=h(r,!0);s(r),b(e=>{n(r,1,e),l(i,o[t])},[()=>`rounded-full px-2 py-0.5 font-mono text-[10px] ${C(t)?`bg-amber-500/10 text-amber-700 dark:text-amber-400`:`bg-muted text-muted-foreground`}`]),A(e,r)}),s(t),A(e,t)};i(me,e=>{!r.expanded&&p(x).length>0&&e(he)}),s(F);var X=E(F,2);{let e=O(()=>r.deleting||r.soleInstanceAdmin),t=O(()=>r.soleInstanceAdmin?`Cannot delete the only instance admin. Promote another user first.`:`Delete user`);M(X,{size:`sm`,variant:`ghost`,get disabled(){return p(e)},get onclick(){return r.onDelete},get title(){return p(t)},class:`text-destructive hover:text-destructive h-8 w-8 shrink-0 p-0`,children:(e,t)=>{se(e,{class:`h-4 w-4`})},$$slots:{default:!0}})}s(k);var ge=E(k,2),_e=e=>{var t=J(),f=h(t),g=E(h(f),2);u(g,20,()=>N,e=>e,(e,t)=>{let i=O(()=>T(t));var a=G(),u=h(a);y(u);var f=E(u,2),g=h(f),v=h(g,!0);s(g);var x=E(g,2),S=h(x,!0);s(x),s(f),s(a),b(()=>{n(a,1,`flex items-start gap-2 rounded-md border p-2.5 ${p(i).locked?`border-border cursor-not-allowed opacity-60`:`border-border hover:bg-accent/40 cursor-pointer`}`),_(a,`title`,p(i).soleAdminLock?`Cannot remove the only instance admin.`:void 0),m(u,p(i).checked),u.disabled=r.updating||p(i).locked,l(v,o[t]),l(S,d[t])}),c(`change`,u,e=>r.onTogglePermission(t,e.target.checked)),A(e,a)}),s(g),s(f);var x=E(f,2),S=E(h(x),2),C=e=>{var t=K(),n=h(t),i=h(n);s(n),a(3),s(t),b(()=>l(i,`${r.user.orgRole??``}s`)),A(e,t)},w=e=>{var t=q();u(t,20,()=>P,e=>e,(e,t)=>{let i=O(()=>T(t));var a=G(),u=h(a);y(u);var f=E(u,2),g=h(f),v=h(g,!0);s(g);var x=E(g,2),S=h(x,!0);s(x),s(f),s(a),b(()=>{n(a,1,`flex items-start gap-2 rounded-md border p-2.5 ${p(i).locked?`border-border cursor-not-allowed opacity-60`:`border-border hover:bg-accent/40 cursor-pointer`}`),_(a,`title`,p(i).memberExcluded?`Only owners and admins can hold this permission.`:void 0),m(u,p(i).checked),u.disabled=r.updating||p(i).locked,l(v,o[t]),l(S,d[t])}),c(`change`,u,e=>r.onTogglePermission(t,e.target.checked)),A(e,a)}),s(t),A(e,t)};i(S,e=>{p(v)?e(C):e(w,-1)}),s(x),s(t),A(e,t)};i(ge,e=>{r.expanded&&e(_e)}),s(D),b(()=>{n(D,1,`px-4 py-3 ${r.expanded?`bg-accent/20`:``}`),_(j,`aria-label`,r.expanded?`Collapse permissions`:`Expand permissions`),l(R,p(g)),l(pe,r.user.id)}),c(`click`,j,function(...e){r.onToggleExpand?.apply(this,e)}),A(t,D),S()}o([`click`,`change`]);var me=d(`<!> Invite user`,1),he=d(`<!> `,1),X=d(`<!> <!>`,1),ge=d(`<option> </option>`),_e=d(`<p class="text-muted-foreground mb-2 text-xs"> <span class="font-mono">member</span> to grant a custom subset.</p>`),ve=d(`<label><input type="checkbox"/> </label>`),ye=d(`<div class="bg-muted/40 space-y-3 rounded-lg border p-4"><p class="text-sm font-medium">Invite user</p> <p class="text-muted-foreground text-xs">The invitee sets their own password when they open the link. No password leaves your
3
+ machine.</p> <div class="grid gap-3 sm:grid-cols-2"><!> <select class="border-input bg-background h-9 rounded-md border px-3 text-sm"></select></div> <div><p class="mb-2 text-xs font-medium">Organization permissions</p> <!> <div class="flex flex-wrap gap-3"></div></div> <div class="flex gap-2"><!> <!></div></div>`),be=d(`<!> Copy`,1),xe=d(`<div class="flex items-start gap-3 rounded-lg border border-green-500/30 bg-green-500/5 p-4"><div class="min-w-0 flex-1"><p class="text-sm font-medium">Invite ready — copy the link and share it</p> <p class="text-muted-foreground mt-1 truncate font-mono text-xs"> </p></div> <!> <!></div>`),Se=d(`<p class="text-muted-foreground text-xs"> </p>`),Ce=d(`<div class="bg-muted/40 space-y-3 rounded-lg border p-4"><p class="text-sm font-medium">New User</p> <div class="grid gap-3 sm:grid-cols-2"><!> <!></div> <!> <div><p class="mb-2 text-xs font-medium">Permissions</p> <p class="text-muted-foreground mb-2 text-xs">New users are added as <span class="font-mono">member</span>. Promote them to owner or
4
+ admin from the user list to grant full organization access.</p> <div class="flex flex-wrap gap-3"></div></div> <div class="flex gap-2"><!> <!></div></div>`),we=d(`Set <code class="text-xs">DATA_PATH</code> (local provider) or check your provider
5
+ selection in <code class="text-xs">.env</code>.`,1),Te=d(`<div class="divide-y rounded-lg border"></div>`),Ee=d(`<!> <!> <!> <!>`,1),De=d(`<div class="flex items-center justify-between gap-4 px-4 py-3"><div class="min-w-0 flex-1"><p class="truncate text-sm font-medium"> </p> <p class="text-muted-foreground text-xs"> </p></div> <!></div>`),Oe=d(`<div class="space-y-6"><!> <!> <!></div>`);function Z(o,d){e(d,!0);let ee=[...N,...P],te=O(()=>d.data.isPlatformAdmin?ee:[...P]),de={instance_admin:`Instance Admin (all)`,manage_instance_users:`Manage Instance Users`,manage_compute:`Manage Compute (instance)`,manage_updates:`Manage Updates`,manage_org_members:`Manage Org Members`,manage_org_compute:`Manage Org Compute`,manage_definitions:`Manage Definitions`,manage_projects:`Manage Projects`},fe=[`owner`,`admin`,`member`],H=D(!1),U=D(``),W=D(``),G=D(w([])),K=D(!1),q=D(!1),J=D(``),Y=D(`member`),Z=D(w([])),Q=D(!1),$=D(null),ke=D(null),Ae=O(()=>p(Y)===`member`?P.filter(e=>!re.includes(e)):[...P]),je=D(null),Me=D(null),Ne=D(null),Pe=O(()=>(d.data.users??[]).filter(e=>!e.disabled&&e.platformPermissions.includes(`instance_admin`)).length),Fe=e=>p(Pe)===1&&!e.disabled&&e.platformPermissions.includes(`instance_admin`);function Ie(e,t){t?v(G,[...p(G),e],!0):v(G,p(G).filter(t=>t!==e),!0)}async function Le(){v(K,!0);try{let e=await fetch(`/admin/api/users`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({email:p(U),...d.data.provider.userCreation===`email-password`&&{password:p(W)},permissions:p(G)})});if(e.ok)V.success(`User "${p(U)}" created`),v(U,``),v(W,``),v(G,[],!0),v(H,!1),await j();else{let t=await e.json().catch(()=>({error:`Unknown error`}));V.error(t.message||t.error||`Failed to create user`)}}catch{V.error(`Failed to create user`)}finally{v(K,!1)}}async function Re(e,t){v(Me,e,!0);try{let n=await fetch(`/admin/api/users/${e}`,{method:`PATCH`,headers:{"Content-Type":`application/json`},body:JSON.stringify({permissions:t})});if(n.ok)V.success(`Permissions updated`),await j();else{let e=await n.json().catch(()=>({}));V.error(e.message||e.error||`Failed to update permissions`),await j()}}catch{V.error(`Failed to update permissions`)}finally{v(Me,null)}}function ze(e,t){t?v(Z,[...p(Z),e],!0):v(Z,p(Z).filter(t=>t!==e),!0)}async function Be(){v(Q,!0);try{let e=await fetch(`/api/invites`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({email:p(J),orgRole:p(Y),permissions:p(Z)})});if(e.ok){let{acceptUrl:t}=await e.json();v($,t,!0),V.success(`Invite created for ${p(J)}`),v(J,``),v(Y,`member`),v(Z,[],!0),v(q,!1),await j()}else{let t=await e.json().catch(()=>({error:`Unknown error`}));V.error(t.message||t.error||`Failed to create invite`)}}catch{V.error(`Failed to create invite`)}finally{v(Q,!1)}}async function Ve(e,t){if(confirm(`Revoke invite for "${t}"?`)){v(ke,e,!0);try{(await fetch(`/api/invites/${e}`,{method:`DELETE`})).ok?(V.success(`Invite revoked`),await j()):V.error(`Failed to revoke invite`)}catch{V.error(`Failed to revoke invite`)}finally{v(ke,null)}}}async function He(e,t){if(confirm(`Delete user "${t}"? This cannot be undone.`)){v(je,e,!0);try{let n=await fetch(`/admin/api/users/${e}`,{method:`DELETE`});if(n.ok)V.success(`User "${t}" deleted`),await j();else{let e=await n.json().catch(()=>({}));V.error(e.message||e.error||`Failed to delete user`)}}catch{V.error(`Failed to delete user`)}finally{v(je,null)}}}var Ue=Oe();r(`1p497kv`,e=>{T(()=>{C.title=`Admin · Users`})});var We=h(Ue);{let e=e=>{var n=t(),r=g(n),o=e=>{var t=X(),n=g(t),r=e=>{{let t=O(()=>p(q)?`outline`:`default`);M(e,{onclick:()=>{v(q,!p(q)),p(q)&&v(H,!1)},get variant(){return p(t)},children:(e,t)=>{var n=me();ie(g(n),{class:`mr-2 h-4 w-4`}),a(),A(e,n)},$$slots:{default:!0}})}};i(n,e=>{d.data.provider.userCreation===`email-password`&&e(r)});var o=E(n,2);{let e=O(()=>p(H)?`outline`:`secondary`);M(o,{onclick:()=>{v(H,!p(H)),p(H)&&v(q,!1)},get variant(){return p(e)},children:(e,t)=>{var n=he(),r=g(n);ae(r,{class:`mr-2 h-4 w-4`});var i=E(r);b(()=>l(i,` ${d.data.provider.userCreation===`email-only`?`Allowlist user`:`Add user`}`)),A(e,n)},$$slots:{default:!0}})}A(e,t)};i(r,e=>{d.data.users!==null&&d.data.provider.userCreation!==`none`&&e(o)}),A(e,n)},n=O(()=>d.data.users===null?`The current auth provider does not expose a user store. Configure DATA_PATH (local provider) or check your provider wiring.`:`${d.data.users.length} user${d.data.users.length===1?``:`s`} on this instance.`);I(We,{eyebrow:`Admin`,title:`Users`,get description(){return p(n)},actions:e,$$slots:{actions:!0}})}var Ge=E(We,2);x(Ge,()=>R,(e,r)=>{r(e,{children:(e,r)=>{var o=t();x(g(o),()=>z,(e,t)=>{t(e,{class:`space-y-4 pt-6`,children:(e,t)=>{var r=Ee(),o=g(r),x=e=>{var t=ye(),r=E(h(t),4),o=h(r);B(o,{type:`email`,placeholder:`Email`,get value(){return p(J)},set value(e){v(J,e,!0)}});var d=E(o,2);u(d,20,()=>fe,e=>e,(e,t)=>{var n=ge(),r=h(n,!0);s(n);var i={};b(()=>{l(r,t),i!==(i=t)&&(n.value=(n.__value=t)??``)}),A(e,n)}),s(d),s(r);var g=E(r,2),_=E(h(g),2),x=e=>{var t=_e(),n=h(t);a(2),s(t),b(()=>l(n,`${p(Y)===`owner`?`Owners`:`Admins`} automatically receive all organization
6
+ permissions. Pick `)),A(e,t)};i(_,e=>{p(Y)!==`member`&&e(x)});var S=E(_,2);u(S,20,()=>p(Ae),e=>e,(e,t)=>{let r=O(()=>p(Y)!==`member`);var i=ve(),a=h(i);y(a);var o=E(a);s(i),b(e=>{n(i,1,`flex items-center gap-1.5 text-xs ${p(r)?`cursor-not-allowed opacity-60`:`cursor-pointer`}`),m(a,e),a.disabled=p(r),l(o,` ${de[t]??``}`)},[()=>p(r)||p(Z).includes(t)]),c(`change`,a,e=>ze(t,e.target.checked)),A(e,i)}),s(S),s(g);var C=E(g,2),w=h(C);{let e=O(()=>p(Q)||!p(J));M(w,{onclick:Be,get disabled(){return p(e)},children:(e,t)=>{a();var n=f();b(()=>l(n,p(Q)?`Creating…`:`Create invite`)),A(e,n)},$$slots:{default:!0}})}M(E(w,2),{variant:`outline`,onclick:()=>v(q,!1),children:(e,t)=>{a(),A(e,f(`Cancel`))},$$slots:{default:!0}}),s(C),s(t),k(d,()=>p(Y),e=>v(Y,e)),A(e,t)};i(o,e=>{p(q)&&e(x)});var S=E(o,2),C=e=>{var t=xe(),n=h(t),r=E(h(n),2),i=h(r,!0);s(r),s(n);var o=E(n,2);M(o,{size:`sm`,variant:`outline`,onclick:async()=>{try{await navigator.clipboard.writeText(p($)),V.success(`Invite link copied`)}catch{V.error(`Could not copy to clipboard`)}},children:(e,t)=>{var n=be();ne(g(n),{class:`mr-1.5 h-3.5 w-3.5`}),a(),A(e,n)},$$slots:{default:!0}}),M(E(o,2),{size:`sm`,variant:`ghost`,onclick:()=>v($,null),children:(e,t)=>{F(e,{class:`h-4 w-4`})},$$slots:{default:!0}}),s(t),b(()=>l(i,p($))),A(e,t)};i(S,e=>{p($)&&e(C)});var w=E(S,2),T=e=>{var t=Ce(),r=E(h(t),2),o=h(r);B(o,{type:`email`,placeholder:`Email`,get value(){return p(U)},set value(e){v(U,e,!0)}});var g=E(o,2),x=e=>{B(e,{type:`password`,placeholder:`Password (min 8 chars)`,get value(){return p(W)},set value(e){v(W,e,!0)}})};i(g,e=>{d.data.provider.userCreation===`email-password`&&e(x)}),s(r);var S=E(r,2),C=e=>{var t=Se(),n=h(t);s(t),b(()=>l(n,`This user will authenticate via ${d.data.provider.name??``}. No password is stored.`)),A(e,t)};i(S,e=>{d.data.provider.userCreation===`email-only`&&e(C)});var w=E(S,2),T=E(h(w),4);u(T,20,()=>p(te),e=>e,(e,t)=>{let r=O(()=>re.includes(t)),i=O(()=>N.includes(t)),a=O(()=>p(r)&&!p(i));var o=ve(),u=h(o);y(u);var d=E(u);s(o),b(e=>{n(o,1,`flex items-center gap-1.5 text-xs ${p(a)?`cursor-not-allowed opacity-60`:`cursor-pointer`}`),_(o,`title`,p(a)?`Only owners and admins can hold this permission`:void 0),m(u,e),u.disabled=p(a),l(d,` ${de[t]??``}`)},[()=>!p(a)&&p(G).includes(t)]),c(`change`,u,e=>Ie(t,e.target.checked)),A(e,o)}),s(T),s(w);var D=E(w,2),k=h(D);{let e=O(()=>p(K)||!p(U)||d.data.provider.userCreation===`email-password`&&!p(W));M(k,{onclick:Le,get disabled(){return p(e)},children:(e,t)=>{a();var n=f();b(()=>l(n,p(K)?`Creating…`:`Create User`)),A(e,n)},$$slots:{default:!0}})}M(E(k,2),{variant:`outline`,onclick:()=>v(H,!1),children:(e,t)=>{a(),A(e,f(`Cancel`))},$$slots:{default:!0}}),s(D),s(t),A(e,t)};i(w,e=>{p(H)&&e(T)});var D=E(w,2),j=e=>{L(e,{get icon(){return oe},title:`User store unavailable`,body:e=>{a();var t=we();a(4),A(e,t)},$$slots:{body:!0}})},ee=e=>{L(e,{title:`No users yet`,description:`Add your first user above.`})},P=e=>{var t=Te();u(t,21,()=>d.data.users,e=>e.id,(e,t)=>{{let n=O(()=>p(Ne)===p(t).id),r=O(()=>Fe(p(t))),i=O(()=>p(Me)===p(t).id),a=O(()=>p(je)===p(t).id);pe(e,{get user(){return p(t)},get expanded(){return p(n)},get isPlatformAdmin(){return d.data.isPlatformAdmin},get soleInstanceAdmin(){return p(r)},get updating(){return p(i)},get deleting(){return p(a)},onToggleExpand:()=>v(Ne,p(Ne)===p(t).id?null:p(t).id,!0),onTogglePermission:async(e,n)=>{let r=n?[...p(t).permissions,e]:p(t).permissions.filter(t=>t!==e);await Re(p(t).id,r)},onDelete:()=>He(p(t).id,p(t).email??p(t).id)})}}),s(t),A(e,t)};i(D,e=>{d.data.users===null?e(j):d.data.users.length===0?e(ee,1):e(P,-1)}),A(e,r)},$$slots:{default:!0}})}),A(e,o)},$$slots:{default:!0}})});var Ke=E(Ge,2),qe=e=>{var n=t();x(g(n),()=>R,(e,t)=>{t(e,{children:(e,t)=>{var n=X(),r=g(n);x(r,()=>le,(e,t)=>{t(e,{children:(e,t)=>{var n=X(),r=g(n);x(r,()=>ue,(e,t)=>{t(e,{children:(e,t)=>{a(),A(e,f(`Invites`))},$$slots:{default:!0}})}),x(E(r,2),()=>ce,(e,t)=>{t(e,{children:(e,t)=>{a();var n=f();b((e,t)=>l(n,`${e??``} pending, ${t??``} accepted`),[()=>d.data.invites.filter(e=>!e.acceptedAt).length,()=>d.data.invites.filter(e=>e.acceptedAt).length]),A(e,n)},$$slots:{default:!0}})}),A(e,n)},$$slots:{default:!0}})}),x(E(r,2),()=>z,(e,t)=>{t(e,{children:(e,t)=>{var n=Te();u(n,21,()=>d.data.invites,e=>e.id,(e,t)=>{let n=O(()=>Date.parse(p(t).expiresAt)<=Date.now()),r=O(()=>p(t).acceptedAt?`Accepted`:p(n)?`Expired`:`Pending`);var a=De(),o=h(a),c=h(o),u=h(c,!0);s(c);var d=E(c,2),f=h(d);s(d),s(o);var m=E(o,2),g=e=>{{let n=O(()=>p(ke)===p(t).id);M(e,{size:`sm`,variant:`ghost`,get disabled(){return p(n)},onclick:()=>Ve(p(t).id,p(t).email),class:`text-destructive hover:text-destructive`,children:(e,t)=>{se(e,{class:`h-4 w-4`})},$$slots:{default:!0}})}};i(m,e=>{!p(t).acceptedAt&&!p(n)&&e(g)}),s(a),b(e=>{l(u,p(t).email),l(f,`${p(r)??``} · ${p(t).orgRole??``} · expires ${e??``}`)},[()=>new Date(p(t).expiresAt).toLocaleDateString()]),A(e,a)}),s(n),A(e,n)},$$slots:{default:!0}})}),A(e,n)},$$slots:{default:!0}})}),A(e,n)};i(Ke,e=>{d.data.invites.length>0&&e(qe)}),s(Ue),A(o,Ue),S()}o([`change`]);export{Z as component};
@@ -0,0 +1,2 @@
1
+ import{At as e,B as t,D as n,Ft as r,It as i,V as a,W as o,dt as s,ft as c,k as l,kt as u,lt as d,pt as f,tt as p,z as m}from"../chunks/CL3s_3g5.js";import"../chunks/xihTtKlq.js";import{t as h}from"../chunks/DOfEstn5.js";import{t as g}from"../chunks/DexxF51_.js";import{n as _,t as v}from"../chunks/BN8xa1dZ2.js";var y=a(`<div class="bg-background flex min-h-screen items-center justify-center px-4 py-12 sm:px-6 lg:px-8"><div class="w-full max-w-sm space-y-6 text-center"><div class="flex justify-center"><div class="bg-muted rounded-full p-4"><!></div></div> <div class="space-y-2"><h2 class="text-foreground text-2xl font-bold tracking-tight">Check your email</h2> <p class="text-muted-foreground text-sm">We sent you a sign-in link. Click the link in the email to continue.</p></div> <!> <a class="text-muted-foreground hover:text-foreground text-sm underline" href="/login">Back to sign in</a></div></div>`);function b(a,b){e(b,!0);var x=y();n(`l70sov`,e=>{p(()=>{d.title=`Check your email - ${g.data.branding.name??``}`})});var S=s(x),C=s(S),w=s(C);h(s(w),{class:`text-foreground size-8`}),i(w),i(C),l(f(C,4),()=>_,(e,n)=>{n(e,{children:(e,n)=>{var i=t();l(c(i),()=>v,(e,t)=>{t(e,{children:(e,t)=>{r(),m(e,o(`The link expires in a few minutes. If it doesn't arrive, check your spam folder or request a
2
+ new one from the sign-in page.`))},$$slots:{default:!0}})}),m(e,i)},$$slots:{default:!0}})}),r(2),i(S),i(x),m(a,x),u()}export{b as component};
@@ -0,0 +1,2 @@
1
+ import{A as e,At as t,B as n,C as r,F as i,Ft as a,G as o,It as s,K as c,L as l,M as u,Rt as d,S as f,V as p,X as m,a as h,dt as g,ft as _,g as v,gt as y,it as b,kt as x,o as S,pt as C,s as w,vt as T,w as E,xt as D,y as O,z as k}from"../chunks/CL3s_3g5.js";import{i as A,r as j}from"../chunks/CVGG5cou.js";import"../chunks/xihTtKlq.js";import{i as M}from"../chunks/D3VSOnNo.js";import{t as ee}from"../chunks/CdwjLyny.js";import{t as N}from"../chunks/CQAfTXcm.js";import{a as P,c as F,o as I,s as L,t as te}from"../chunks/CNLFdBld.js";import{t as R}from"../chunks/CT5oxrR3.js";import{t as ne}from"../chunks/UeEPBo0V.js";import{t as re}from"../chunks/Ot8VM1_P.js";import{t as z}from"../chunks/DNL96-hz.js";import{n as B}from"../chunks/35-OQSYE2.js";import"../chunks/C5qitKDD2.js";var V=new Set([`$$slots`,`$$events`,`$$legacy`]);function ie(e,t){let n=S(t,V),r=[[`path`,{d:`M10 20a1 1 0 0 0 .553.895l2 1A1 1 0 0 0 14 21v-7a2 2 0 0 1 .517-1.341L21.74 4.67A1 1 0 0 0 21 3H3a1 1 0 0 0-.742 1.67l7.225 7.989A2 2 0 0 1 10 14z`}]];M(e,w({name:`funnel`},()=>n,{get iconNode(){return r}}))}var H=p(`<main><!></main>`);function U(t,n){let i=h(n,`class`,3,``);var a=H();e(g(a),()=>n.children??d),s(a),b(()=>r(a,1,`px-(--page-px) py-(--page-py) ${i()}`)),k(t,a)}var W=p(`<button type="button"><!></button>`);function G(e,n){t(n,!0);let i=h(n,`busy`,3,!1),a=h(n,`variant`,3,`overlay`);var o=W(),l=g(o);{let e=D(()=>n.starred?`fill-current`:``);R(l,{get class(){return`h-3.5 w-3.5 ${m(e)??``}`}})}s(o),b(()=>{v(o,`title`,n.starred?`Unstar`:`Star`),v(o,`aria-label`,n.starred?`Unstar definition`:`Star definition`),v(o,`aria-pressed`,n.starred),o.disabled=i(),r(o,1,E(a()===`overlay`?`absolute top-2 right-2 flex h-7 w-7 items-center justify-center rounded-full backdrop-blur-sm transition-all disabled:opacity-60 ${n.starred?`bg-amber-400/90 text-white`:`bg-black/40 text-white opacity-0 group-hover:opacity-100 hover:bg-black/55`}`:`flex h-7 w-7 items-center justify-center rounded-full transition-colors disabled:opacity-60 ${n.starred?`text-amber-500 hover:bg-amber-50`:`text-muted-foreground hover:text-foreground hover:bg-muted`}`))}),c(`click`,o,e=>{e.stopPropagation(),e.preventDefault(),n.onToggle()}),k(e,o),x()}o([`click`]);var K=p(`<div class="flex h-10 w-10 shrink-0 items-center justify-center overflow-hidden rounded-md"><img alt="" class="h-full w-full object-cover"/></div>`),q=p(`<div class="tool-cover-fallback flex h-10 w-10 shrink-0 items-center justify-center overflow-hidden rounded-md"><span class="text-foreground/40 text-base font-semibold"> </span></div>`),J=p(`<p class="text-muted-foreground truncate text-[12px]"> </p>`),Y=p(`<span class="bg-muted text-muted-foreground rounded px-1.5 py-px font-mono text-[10.5px]"> </span>`),X=p(`<button type="button"><!> <div class="min-w-0"><p class="truncate text-[13.5px] font-semibold"> </p> <!></div> <div class="flex flex-wrap items-center gap-1"><!></div> <span class="text-muted-foreground font-mono text-[12px]"> </span> <div class="flex items-center justify-end gap-1"><!> <!></div></button>`),Z=p(`<div class="border-border bg-card overflow-hidden rounded-xl border"></div>`);function ae(e,a){t(a,!0);var o=Z();u(o,23,()=>a.records,e=>e.guid,(e,t,o)=>{var d=X();f(d,`grid-template-columns: 40px minmax(0, 1.7fr) minmax(0, 1fr) 90px 36px`);var p=g(d),h=e=>{var n=K(),r=g(n);s(n),b(()=>v(r,`src`,m(t).coverImage)),k(e,n)},y=e=>{let n=D(()=>P(m(t).guid));var r=q();let i;var a=g(r),o=g(a,!0);s(a),s(r),b(e=>{i=f(r,``,i,{"--tool-h1":m(n).h1,"--tool-h2":m(n).h2}),l(o,e)},[()=>I(m(t).displayName)]),k(e,r)};i(p,e=>{m(t).coverImage?e(h):e(y,-1)});var x=C(p,2),S=g(x),w=g(S,!0);s(S);var T=C(S,2),E=e=>{var n=J(),r=g(n,!0);s(n),b(()=>l(r,m(t).description)),k(e,n)};i(T,e=>{m(t).description&&e(E)}),s(x);var O=C(x,2),A=g(O),j=e=>{var r=n();u(_(r),16,()=>m(t).tags.slice(0,3),e=>e,(e,t)=>{var n=Y(),r=g(n);s(n),b(()=>l(r,`#${t??``}`)),k(e,n)}),k(e,r)};i(A,e=>{m(t).tags?.length&&e(j)}),s(O);var M=C(O,2),N=g(M,!0);s(M);var F=C(M,2),L=g(F);{let e=D(()=>a.starredIds.has(m(t).guid)),n=D(()=>a.starBusyGuid===m(t).guid);G(L,{get starred(){return m(e)},get busy(){return m(n)},variant:`chip`,onToggle:()=>a.onToggleStar(m(t).guid)})}ee(C(L,2),{class:`text-muted-foreground h-3.5 w-3.5 opacity-0 transition-opacity group-hover:opacity-100`}),s(F),s(d),b(e=>{d.disabled=a.loadingGuid===m(t).guid,r(d,1,`hover:bg-muted/40 group grid w-full items-center gap-4 px-4 py-3 text-left transition-colors disabled:cursor-not-allowed disabled:opacity-60
2
+ ${m(o)<a.records.length-1?`border-border border-b`:``}`),l(w,m(t).displayName),l(N,e)},[()=>m(t).solveCount>0?`${m(t).solveCount.toLocaleString()} runs`:`—`]),c(`click`,d,()=>a.onOpen(m(t).guid)),k(e,d)}),s(o),k(e,o),x()}o([`click`]);function oe(e){let t=Date.now()-new Date(e).getTime(),n=Math.floor(t/6e4);if(n<1)return`just now`;if(n<60)return`${n}m ago`;let r=Math.floor(n/60);return r<24?`${r}h ago`:`${Math.floor(r/24)}d ago`}var se=p(`<span class="bg-primary text-primary-foreground rounded-full px-1.5 py-px font-mono text-[10px]"> </span>`),ce=p(`<button type="button"><!> Filters <!></button>`),le=p(`<button type="button" class="text-muted-foreground hover:text-foreground inline-flex h-9 items-center gap-1 rounded-md px-2 text-xs transition-colors"><!> Clear</button>`),Q=p(`<option> </option>`),ue=p(`<div class="space-y-1.5"><label class="text-muted-foreground text-xs font-medium" for="filter-project">Project</label> <select id="filter-project" class="border-input bg-background h-9 w-full rounded-md border px-3 text-sm"><option>All projects</option><!></select></div>`),de=p(`<div class="space-y-1.5"><label class="text-muted-foreground text-xs font-medium" for="filter-category">Category</label> <select id="filter-category" class="border-input bg-background h-9 w-full rounded-md border px-3 text-sm"><option>All categories</option><!></select></div>`),fe=p(`<div class="space-y-1.5"><label class="text-muted-foreground text-xs font-medium" for="filter-tag">Tag</label> <select id="filter-tag" class="border-input bg-background h-9 w-full rounded-md border px-3 text-sm"><option>All tags</option><!></select></div>`),pe=p(`<div class="border-border bg-card rounded-md border p-4"><div class="grid gap-4 sm:grid-cols-3"><!> <!> <!></div></div>`),me=p(`<button style="grid-template-columns: 1fr 120px auto"><span class="truncate font-medium"> </span> <span class="text-muted-foreground font-mono text-xs"> </span> <span class="flex items-center gap-1 text-xs font-medium opacity-0 transition-opacity group-hover:opacity-100">Resume <!></span></button>`),he=p(`<section><div class="mb-3 flex items-baseline justify-between"><span class="text-muted-foreground text-xs font-medium tracking-wider uppercase">Recent runs</span> <span class="text-muted-foreground text-xs">Resume where you left off</span></div> <div class="border-border bg-card overflow-hidden rounded-md border"></div></section>`),ge=p(`<div class="grid gap-4 sm:grid-cols-2 lg:grid-cols-3 xl:grid-cols-4"></div>`),_e=p(`<button class="text-muted-foreground hover:text-foreground text-xs underline underline-offset-2">Clear all filters</button>`),ve=p(`<div class="space-y-6"><!> <div class="flex flex-wrap items-center gap-2"><div class="min-w-60 flex-1"><!></div> <!> <!></div> <!> <!> <!></div>`);function $(e,o){t(o,!0);let d=T(``),f=T(null),p=T(null),h=T(null),v=T(`grid`),S=T(null),w=T(null),E=T(!1),M=D(()=>new Set(o.data.starredRecords.map(e=>e.guid))),P=D(()=>[...o.data.starredRecords,...o.data.records]),I=D(()=>new Set(m(P).map(e=>e.projectId))),R=D(()=>Object.values(o.data.projects).filter(e=>m(I).has(e.id))),V=D(()=>Array.from(new Set(m(P).map(e=>e.category).filter(e=>!!e))).sort()),H=D(()=>Array.from(new Set(m(P).flatMap(e=>e.tags??[]))).sort());function W(e){return o.data.projects[e]?.name??``}function G(e){return o.data.projectMap[e]?.visibility}function K(e){if(m(f)&&e.projectId!==m(f)||m(p)&&e.category!==m(p)||m(h)&&!(e.tags??[]).includes(m(h)))return!1;if(m(d).trim()){let t=m(d).toLowerCase();if(![e.displayName,e.description,e.category,...e.tags??[]].filter(Boolean).join(` `).toLowerCase().includes(t))return!1}return!0}let q=D(()=>m(P).filter(K)),J=D(()=>[m(f),m(p),m(h)].filter(e=>e!==null).length),Y=D(()=>m(d).trim()!==``||m(J)>0);function X(e){y(S,e,!0),j(`/library/${e}`).catch(()=>{y(S,null)})}async function Z(e){y(w,e,!0);let t=m(M).has(e);try{let n=await fetch(`/api/me/starred/${e}`,{method:t?`DELETE`:`POST`});if(!n.ok)throw Error(`${n.status}`);await A()}catch{B.error(t?`Failed to unstar`:`Failed to star`)}finally{y(w,null)}}function $(){y(d,``),y(f,null),y(p,null),y(h,null),y(E,!1)}N(e,{homeUrl:`/library`,children:(e,t)=>{U(e,{children:(e,t)=>{var x=ve(),T=g(x);{let e=e=>{L(e,{get mode(){return m(v)},onChange:e=>y(v,e,!0)})},t=D(()=>`${m(q).length} tool${m(q).length===1?``:`s`}${m(R).length>0?` across ${m(R).length} project${m(R).length===1?``:`s`}`:``}.`);re(T,{eyebrow:`Workspace`,title:`Library`,get description(){return m(t)},actions:e,$$slots:{actions:!0}})}var A=C(T,2),j=g(A);F(g(j),{placeholder:`Search tools, descriptions, tags…`,clearable:!0,class:`h-9 rounded-md text-sm`,get value(){return m(d)},set value(e){y(d,e,!0)}}),s(j);var N=C(j,2),P=e=>{var t=ce(),n=g(t);ie(n,{class:`h-3.5 w-3.5`});var a=C(n,2),o=e=>{var t=se(),n=g(t,!0);s(t),b(()=>l(n,m(J))),k(e,t)};i(a,e=>{m(J)>0&&e(o)}),s(t),b(()=>r(t,1,`relative inline-flex h-9 items-center gap-1.5 rounded-md border px-3 text-sm transition-colors ${m(E)||m(J)>0?`border-border bg-accent text-accent-foreground`:`border-input bg-background text-foreground hover:bg-muted/40`}`)),c(`click`,t,()=>y(E,!m(E))),k(e,t)};i(N,e=>{(m(V).length>0||m(H).length>0||m(R).length>1)&&e(P)});var I=C(N,2),B=e=>{var t=le();ne(g(t),{class:`h-3 w-3`}),a(),s(t),c(`click`,t,$),k(e,t)};i(I,e=>{m(Y)&&e(B)}),s(A);var U=C(A,2),K=e=>{var t=pe(),n=g(t),r=g(n),a=e=>{var t=ue(),n=C(g(t),2),r=g(n);r.value=(r.__value=null,``),u(C(r),17,()=>m(R),e=>e.id,(e,t)=>{var n=Q(),r=g(n,!0);s(n);var i={};b(()=>{l(r,m(t).name),i!==(i=m(t).id)&&(n.value=(n.__value=m(t).id)??``)}),k(e,n)}),s(n),s(t),O(n,()=>m(f),e=>y(f,e)),k(e,t)};i(r,e=>{m(R).length>1&&e(a)});var o=C(r,2),c=e=>{var t=de(),n=C(g(t),2),r=g(n);r.value=(r.__value=null,``),u(C(r),16,()=>m(V),e=>e,(e,t)=>{var n=Q(),r=g(n,!0);s(n);var i={};b(()=>{l(r,t),i!==(i=t)&&(n.value=(n.__value=t)??``)}),k(e,n)}),s(n),s(t),O(n,()=>m(p),e=>y(p,e)),k(e,t)};i(o,e=>{m(V).length>0&&e(c)});var d=C(o,2),_=e=>{var t=fe(),n=C(g(t),2),r=g(n);r.value=(r.__value=null,``),u(C(r),16,()=>m(H),e=>e,(e,t)=>{var n=Q(),r=g(n);s(n);var i={};b(()=>{l(r,`#${t??``}`),i!==(i=t)&&(n.value=(n.__value=t)??``)}),k(e,n)}),s(n),s(t),O(n,()=>m(h),e=>y(h,e)),k(e,t)};i(d,e=>{m(H).length>0&&e(_)}),s(n),s(t),k(e,t)};i(U,e=>{m(E)&&e(K)});var ye=C(U,2),be=e=>{var t=he(),n=C(g(t),2);u(n,23,()=>o.data.recentRuns.slice(0,5),e=>e.runId,(e,t,n)=>{var i=me(),a=g(i),u=g(a,!0);s(a);var d=C(a,2),f=g(d,!0);s(d);var p=C(d,2);ee(C(g(p)),{class:`h-3 w-3`}),s(p),s(i),b((e,n)=>{i.disabled=m(S)===m(t).definitionId,r(i,1,e),l(u,m(t).definitionName),l(f,n)},[()=>`group hover:bg-muted/40 grid w-full items-center gap-4 px-4 py-3 text-left text-sm transition-colors disabled:cursor-not-allowed disabled:opacity-60 ${m(n)<Math.min(o.data.recentRuns.length,5)-1?`border-border border-b`:``}`,()=>oe(m(t).timestamp)]),c(`click`,i,()=>X(m(t).definitionId)),k(e,i)}),s(n),s(t),k(e,t)};i(ye,e=>{o.data.recentRuns.length>0&&!m(Y)&&e(be)});var xe=C(ye,2),Se=e=>{var t=n(),r=_(t),a=e=>{var t=ge();u(t,21,()=>m(q),e=>e.guid,(e,t)=>{{let n=D(()=>m(M).has(m(t).guid)),r=D(()=>m(S)===m(t).guid),i=D(()=>m(w)===m(t).guid),a=D(()=>m(R).length>1?W(m(t).projectId):void 0),o=D(()=>m(R).length>1?G(m(t).projectId):void 0);te(e,{get record(){return m(t)},get starred(){return m(n)},get loading(){return m(r)},get starBusy(){return m(i)},get projectName(){return m(a)},get projectVisibility(){return m(o)},onOpen:e=>X(e.guid),onToggleStar:Z})}}),s(t),k(e,t)},o=e=>{ae(e,{get records(){return m(q)},get starredIds(){return m(M)},get loadingGuid(){return m(S)},get starBusyGuid(){return m(w)},onOpen:X,onToggleStar:Z})};i(r,e=>{m(v)===`grid`?e(a):e(o,-1)}),k(e,t)},Ce=e=>{z(e,{size:`lg`,title:`No tools match your filters`,actions:e=>{var t=_e();c(`click`,t,$),k(e,t)},$$slots:{actions:!0}})},we=e=>{z(e,{size:`lg`,title:`No tools available yet`,description:`Ask an admin to publish a Grasshopper definition.`})};i(xe,e=>{m(q).length>0?e(Se):m(Y)?e(Ce,1):e(we,-1)}),s(x),k(e,x)},$$slots:{default:!0}})},$$slots:{default:!0}}),x()}o([`click`]);export{$ as component};
@@ -0,0 +1 @@
1
+ import{A as e,At as t,It as n,Rt as r,V as i,X as a,dt as o,kt as s,xt as c,z as l}from"../chunks/CL3s_3g5.js";import"../chunks/xihTtKlq.js";import{t as u}from"../chunks/CWIBiefo.js";import{t as d}from"../chunks/DvbQzS922.js";import{t as f}from"../chunks/DAZNh3B6.js";import{t as p}from"../chunks/CQAfTXcm.js";import{t as m}from"../chunks/DG2wOVmu.js";import{t as h}from"../chunks/Cn-AOzef.js";import{t as g}from"../chunks/D4YBJLId.js";import{t as _}from"../chunks/DWPCC0_6.js";import{t as v}from"../chunks/BY-g58bE.js";var y=i(`<div class="px-(--page-px) py-(--page-py)"><!></div>`);function b(i,b){t(b,!0);let x=e=>b.data.platformPermissions.includes(`instance_admin`)||b.data.platformPermissions.includes(e)?!0:b.data.orgPermissions.includes(e),S=c(()=>[{href:`/admin`,label:`General`,icon:f,show:!0},{href:`/admin/organizations`,label:`Organizations`,icon:u,match:`prefix`,show:x(`instance_admin`)&&b.data.tenancy!==`single`},{href:`/admin/projects`,label:`Projects`,icon:d,match:`prefix`,show:x(`instance_admin`)&&b.data.platformProjectsEnabled},{href:`/admin/users`,label:`Users`,icon:_,match:`prefix`,show:x(`manage_instance_users`)},{href:`/admin/compute`,label:`Compute`,icon:h,match:`prefix`,show:x(`manage_compute`)},{href:`/admin/system`,label:`System`,icon:g,match:`prefix`,show:x(`manage_updates`)},{href:`/admin/audit`,label:`Audit log`,icon:m,match:`prefix`,show:x(`instance_admin`)&&b.data.auditAvailable}].filter(e=>e.show));p(i,{sidenav:e=>{v(e,{get items(){return a(S)},eyebrow:`Platform`})},children:(t,i)=>{var a=y();e(o(a),()=>b.children??r),n(a),l(t,a)},$$slots:{sidenav:!0,default:!0}}),s()}export{b as component};