@selvajs/selva 4.7.0 → 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/0M2DDHMf.js +0 -2
  425. package/build/client/_app/immutable/chunks/0M2DDHMf.js.br +0 -0
  426. package/build/client/_app/immutable/chunks/0M2DDHMf.js.gz +0 -0
  427. package/build/client/_app/immutable/chunks/BG2iwmg_.js +0 -1
  428. package/build/client/_app/immutable/chunks/BG2iwmg_.js.br +0 -0
  429. package/build/client/_app/immutable/chunks/BG2iwmg_.js.gz +0 -0
  430. package/build/client/_app/immutable/chunks/BGbIB54K2.js +0 -35
  431. package/build/client/_app/immutable/chunks/BGbIB54K2.js.br +0 -0
  432. package/build/client/_app/immutable/chunks/BGbIB54K2.js.gz +0 -0
  433. package/build/client/_app/immutable/chunks/BHKDoXDm2.js +0 -1
  434. package/build/client/_app/immutable/chunks/BHKDoXDm2.js.br +0 -2
  435. package/build/client/_app/immutable/chunks/BHKDoXDm2.js.gz +0 -0
  436. package/build/client/_app/immutable/chunks/C-eh-BYT2.js +0 -1
  437. package/build/client/_app/immutable/chunks/C-eh-BYT2.js.br +0 -0
  438. package/build/client/_app/immutable/chunks/C-eh-BYT2.js.gz +0 -0
  439. package/build/client/_app/immutable/chunks/Cg_4c8n32.js +0 -1
  440. package/build/client/_app/immutable/chunks/Cg_4c8n32.js.br +0 -0
  441. package/build/client/_app/immutable/chunks/Cg_4c8n32.js.gz +0 -0
  442. package/build/client/_app/immutable/chunks/D9DFvnxj.js +0 -1
  443. package/build/client/_app/immutable/chunks/D9DFvnxj.js.br +0 -3
  444. package/build/client/_app/immutable/chunks/D9DFvnxj.js.gz +0 -0
  445. package/build/client/_app/immutable/chunks/DFsxVbse.js +0 -1
  446. package/build/client/_app/immutable/chunks/DFsxVbse.js.br +0 -0
  447. package/build/client/_app/immutable/chunks/DFsxVbse.js.gz +0 -0
  448. package/build/client/_app/immutable/chunks/qU0FhiPD.js +0 -2
  449. package/build/client/_app/immutable/chunks/qU0FhiPD.js.br +0 -0
  450. package/build/client/_app/immutable/chunks/qU0FhiPD.js.gz +0 -0
  451. package/build/client/_app/immutable/entry/app.ChwO476H.js +0 -2
  452. package/build/client/_app/immutable/entry/app.ChwO476H.js.br +0 -0
  453. package/build/client/_app/immutable/entry/app.ChwO476H.js.gz +0 -0
  454. package/build/client/_app/immutable/entry/start.CUuVPYpM.js +0 -1
  455. package/build/client/_app/immutable/entry/start.CUuVPYpM.js.br +0 -0
  456. package/build/client/_app/immutable/entry/start.CUuVPYpM.js.gz +0 -0
  457. package/build/client/_app/immutable/nodes/1.BJ_E7jBc.js +0 -1
  458. package/build/client/_app/immutable/nodes/1.BJ_E7jBc.js.br +0 -0
  459. package/build/client/_app/immutable/nodes/1.BJ_E7jBc.js.gz +0 -0
  460. package/build/client/_app/immutable/nodes/11.DUk5QCcO.js +0 -2
  461. package/build/client/_app/immutable/nodes/11.DUk5QCcO.js.br +0 -0
  462. package/build/client/_app/immutable/nodes/11.DUk5QCcO.js.gz +0 -0
  463. package/build/client/_app/immutable/nodes/13.BuZd04Lo.js +0 -2
  464. package/build/client/_app/immutable/nodes/13.BuZd04Lo.js.br +0 -0
  465. package/build/client/_app/immutable/nodes/13.BuZd04Lo.js.gz +0 -0
  466. package/build/client/_app/immutable/nodes/14.BXK0gR3D.js +0 -2
  467. package/build/client/_app/immutable/nodes/14.BXK0gR3D.js.br +0 -0
  468. package/build/client/_app/immutable/nodes/14.BXK0gR3D.js.gz +0 -0
  469. package/build/client/_app/immutable/nodes/15.DQnCVxPm.js +0 -21
  470. package/build/client/_app/immutable/nodes/15.DQnCVxPm.js.br +0 -0
  471. package/build/client/_app/immutable/nodes/15.DQnCVxPm.js.gz +0 -0
  472. package/build/client/_app/immutable/nodes/16.SF5XHiBi.js +0 -6
  473. package/build/client/_app/immutable/nodes/16.SF5XHiBi.js.br +0 -0
  474. package/build/client/_app/immutable/nodes/16.SF5XHiBi.js.gz +0 -0
  475. package/build/client/_app/immutable/nodes/17.CkfBZYMU.js +0 -2
  476. package/build/client/_app/immutable/nodes/17.CkfBZYMU.js.br +0 -0
  477. package/build/client/_app/immutable/nodes/17.CkfBZYMU.js.gz +0 -0
  478. package/build/client/_app/immutable/nodes/19.lXobnwX1.js +0 -2
  479. package/build/client/_app/immutable/nodes/19.lXobnwX1.js.br +0 -0
  480. package/build/client/_app/immutable/nodes/19.lXobnwX1.js.gz +0 -0
  481. package/build/client/_app/immutable/nodes/2.CRHtzkzt.js +0 -1
  482. package/build/client/_app/immutable/nodes/2.CRHtzkzt.js.br +0 -0
  483. package/build/client/_app/immutable/nodes/2.CRHtzkzt.js.gz +0 -0
  484. package/build/client/_app/immutable/nodes/20.CzAIzrQM.js +0 -12
  485. package/build/client/_app/immutable/nodes/20.CzAIzrQM.js.br +0 -0
  486. package/build/client/_app/immutable/nodes/20.CzAIzrQM.js.gz +0 -0
  487. package/build/client/_app/immutable/nodes/21.x1LrYfez.js +0 -6
  488. package/build/client/_app/immutable/nodes/21.x1LrYfez.js.br +0 -0
  489. package/build/client/_app/immutable/nodes/21.x1LrYfez.js.gz +0 -0
  490. package/build/client/_app/immutable/nodes/23.BtInHilP.js +0 -16
  491. package/build/client/_app/immutable/nodes/23.BtInHilP.js.br +0 -0
  492. package/build/client/_app/immutable/nodes/23.BtInHilP.js.gz +0 -0
  493. package/build/client/_app/immutable/nodes/24.Dqy8AH_J.js +0 -6
  494. package/build/client/_app/immutable/nodes/24.Dqy8AH_J.js.br +0 -0
  495. package/build/client/_app/immutable/nodes/24.Dqy8AH_J.js.gz +0 -0
  496. package/build/client/_app/immutable/nodes/27.BiurRrzb.js +0 -4
  497. package/build/client/_app/immutable/nodes/27.BiurRrzb.js.br +0 -0
  498. package/build/client/_app/immutable/nodes/27.BiurRrzb.js.gz +0 -0
  499. package/build/client/_app/immutable/nodes/28.TVh72E_-.js +0 -4
  500. package/build/client/_app/immutable/nodes/28.TVh72E_-.js.br +0 -0
  501. package/build/client/_app/immutable/nodes/28.TVh72E_-.js.gz +0 -0
  502. package/build/client/_app/immutable/nodes/29.KA_Czrio.js +0 -2
  503. package/build/client/_app/immutable/nodes/29.KA_Czrio.js.br +0 -0
  504. package/build/client/_app/immutable/nodes/29.KA_Czrio.js.gz +0 -0
  505. package/build/client/_app/immutable/nodes/3.De6eJ76N.js +0 -1
  506. package/build/client/_app/immutable/nodes/3.De6eJ76N.js.br +0 -0
  507. package/build/client/_app/immutable/nodes/3.De6eJ76N.js.gz +0 -0
  508. package/build/client/_app/immutable/nodes/30.BDN5YXAl.js +0 -2
  509. package/build/client/_app/immutable/nodes/30.BDN5YXAl.js.br +0 -0
  510. package/build/client/_app/immutable/nodes/30.BDN5YXAl.js.gz +0 -0
  511. package/build/client/_app/immutable/nodes/5.OMz0FTZb.js +0 -1
  512. package/build/client/_app/immutable/nodes/5.OMz0FTZb.js.br +0 -3
  513. package/build/client/_app/immutable/nodes/5.OMz0FTZb.js.gz +0 -0
  514. package/build/client/_app/immutable/nodes/6.CXaFpK04.js +0 -1
  515. package/build/client/_app/immutable/nodes/6.CXaFpK04.js.br +0 -0
  516. package/build/client/_app/immutable/nodes/6.CXaFpK04.js.gz +0 -0
  517. package/build/client/_app/immutable/nodes/7.CYdy2UgN.js +0 -1
  518. package/build/client/_app/immutable/nodes/7.CYdy2UgN.js.br +0 -0
  519. package/build/client/_app/immutable/nodes/7.CYdy2UgN.js.gz +0 -0
  520. package/build/client/_app/immutable/nodes/8.Bd7w36bu.js +0 -2
  521. package/build/client/_app/immutable/nodes/8.Bd7w36bu.js.br +0 -0
  522. package/build/client/_app/immutable/nodes/8.Bd7w36bu.js.gz +0 -0
  523. package/build/client/_app/immutable/nodes/9.B4uZJGIZ.js +0 -1
  524. package/build/client/_app/immutable/nodes/9.B4uZJGIZ.js.br +0 -0
  525. package/build/client/_app/immutable/nodes/9.B4uZJGIZ.js.gz +0 -0
  526. package/build/server/chunks/chunks/AppHeader.js-CCBy-F-z.js +0 -281
  527. package/build/server/chunks/chunks/AppHeader.js-CCBy-F-z.js.map +0 -1
  528. package/build/server/chunks/chunks/SideNav.js-BNI_NYXt.js +0 -67
  529. package/build/server/chunks/chunks/SideNav.js-BNI_NYXt.js.map +0 -1
  530. package/build/server/chunks/chunks/UserChip.js-CABWy9hQ.js +0 -1163
  531. package/build/server/chunks/chunks/UserChip.js-CABWy9hQ.js.map +0 -1
  532. package/build/server/chunks/chunks/access.server.js-55bmpUSo.js +0 -453
  533. package/build/server/chunks/chunks/access.server.js-55bmpUSo.js.map +0 -1
  534. package/build/server/chunks/chunks/access2.server.js-DOKxmHQB.js +0 -20
  535. package/build/server/chunks/chunks/access2.server.js-DOKxmHQB.js.map +0 -1
  536. package/build/server/chunks/chunks/admin-config.js-DgmGM6ot.js +0 -3
  537. package/build/server/chunks/chunks/admin-config.js-DgmGM6ot.js.map +0 -1
  538. package/build/server/chunks/chunks/api-errors.js-BdoYiwnt.js +0 -141
  539. package/build/server/chunks/chunks/api-errors.js-BdoYiwnt.js.map +0 -1
  540. package/build/server/chunks/chunks/auth-bootstrap.server.js-pwspdWCF.js +0 -162
  541. package/build/server/chunks/chunks/auth-bootstrap.server.js-pwspdWCF.js.map +0 -1
  542. package/build/server/chunks/chunks/auth.server.js-CiKOtWZ5.js +0 -2
  543. package/build/server/chunks/chunks/auth.server.js-CiKOtWZ5.js.map +0 -1
  544. package/build/server/chunks/chunks/bootHealth.server.js-s-jZ2KDW.js +0 -91
  545. package/build/server/chunks/chunks/bootHealth.server.js-s-jZ2KDW.js.map +0 -1
  546. package/build/server/chunks/chunks/client.js-ChMP-ADp.js +0 -58
  547. package/build/server/chunks/chunks/client.js-ChMP-ADp.js.map +0 -1
  548. package/build/server/chunks/chunks/clientCache.server.js-DOyqlBzg.js +0 -195
  549. package/build/server/chunks/chunks/clientCache.server.js-DOyqlBzg.js.map +0 -1
  550. package/build/server/chunks/chunks/computeLimits.js-Bv2Kbjk8.js +0 -48
  551. package/build/server/chunks/chunks/computeLimits.js-Bv2Kbjk8.js.map +0 -1
  552. package/build/server/chunks/chunks/evictChangedServers.js-BOiQY_IL.js +0 -29
  553. package/build/server/chunks/chunks/evictChangedServers.js-BOiQY_IL.js.map +0 -1
  554. package/build/server/chunks/chunks/forms.js-pYfsLUaH.js +0 -2
  555. package/build/server/chunks/chunks/forms.js-pYfsLUaH.js.map +0 -1
  556. package/build/server/chunks/chunks/internal2.js-CRTtDh_a.js +0 -224
  557. package/build/server/chunks/chunks/internal2.js-CRTtDh_a.js.map +0 -1
  558. package/build/server/chunks/chunks/navigation.js-pYfsLUaH.js +0 -2
  559. package/build/server/chunks/chunks/navigation.js-pYfsLUaH.js.map +0 -1
  560. package/build/server/chunks/chunks/org-members.server.js-BlOWocal.js +0 -35
  561. package/build/server/chunks/chunks/org-members.server.js-BlOWocal.js.map +0 -1
  562. package/build/server/chunks/chunks/package.js-CzPJLFIP.js +0 -76
  563. package/build/server/chunks/chunks/package.js-CzPJLFIP.js.map +0 -1
  564. package/build/server/chunks/chunks/permissions.server.js-C-4T_yf-.js +0 -15
  565. package/build/server/chunks/chunks/permissions.server.js-C-4T_yf-.js.map +0 -1
  566. package/build/server/chunks/chunks/providers.server.js-BCmROUq1.js +0 -6252
  567. package/build/server/chunks/chunks/providers.server.js-BCmROUq1.js.map +0 -1
  568. package/build/server/chunks/chunks/resolve.server.js-ObCEn_tG.js +0 -62
  569. package/build/server/chunks/chunks/resolve.server.js-ObCEn_tG.js.map +0 -1
  570. package/build/server/chunks/chunks/selfUpdate.server.js-B0IhATul.js +0 -152
  571. package/build/server/chunks/chunks/selfUpdate.server.js-B0IhATul.js.map +0 -1
  572. package/build/server/chunks/chunks/state.js-CSskG5O4.js +0 -64
  573. package/build/server/chunks/chunks/state.js-CSskG5O4.js.map +0 -1
  574. package/build/server/chunks/chunks/stores.js-DHkf0lFO.js +0 -35
  575. package/build/server/chunks/chunks/stores.js-DHkf0lFO.js.map +0 -1
  576. package/build/server/chunks/chunks/utils2.js-V7yGq-Kd.js +0 -62
  577. package/build/server/chunks/chunks/utils2.js-V7yGq-Kd.js.map +0 -1
  578. package/build/server/chunks/entries/endpoints/admin/api/compute/_server.ts.js-ny6qg7b3.js +0 -93
  579. package/build/server/chunks/entries/endpoints/admin/api/compute/_server.ts.js-ny6qg7b3.js.map +0 -1
  580. package/build/server/chunks/entries/endpoints/admin/api/compute/actions/_server.ts.js-CIr-FMIO.js +0 -53
  581. package/build/server/chunks/entries/endpoints/admin/api/compute/actions/_server.ts.js-CIr-FMIO.js.map +0 -1
  582. package/build/server/chunks/entries/endpoints/admin/api/compute/status/_server.ts.js-h7EKtq-V.js +0 -79
  583. package/build/server/chunks/entries/endpoints/admin/api/compute/status/_server.ts.js-h7EKtq-V.js.map +0 -1
  584. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/_server.ts.js-DDyPMdU4.js +0 -50
  585. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/_server.ts.js-DDyPMdU4.js.map +0 -1
  586. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/assets/_kind_/_server.ts.js-Bre1-6Si.js +0 -86
  587. package/build/server/chunks/entries/endpoints/admin/api/orgs/_id_/assets/_kind_/_server.ts.js-Bre1-6Si.js.map +0 -1
  588. package/build/server/chunks/entries/endpoints/admin/api/orgs/_server.ts.js-BAGRN9q-.js +0 -72
  589. package/build/server/chunks/entries/endpoints/admin/api/orgs/_server.ts.js-BAGRN9q-.js.map +0 -1
  590. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/_server.ts.js-DjIbDzDD.js +0 -74
  591. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/_server.ts.js-DjIbDzDD.js.map +0 -1
  592. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/_grantId_/_server.ts.js-BV9YEqFI.js +0 -34
  593. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/_grantId_/_server.ts.js-BV9YEqFI.js.map +0 -1
  594. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/_server.ts.js-xF_08qt2.js +0 -71
  595. package/build/server/chunks/entries/endpoints/admin/api/projects/_id_/grants/_server.ts.js-xF_08qt2.js.map +0 -1
  596. package/build/server/chunks/entries/endpoints/admin/api/projects/_server.ts.js-CS6KQL0A.js +0 -103
  597. package/build/server/chunks/entries/endpoints/admin/api/projects/_server.ts.js-CS6KQL0A.js.map +0 -1
  598. package/build/server/chunks/entries/endpoints/admin/api/system/health/_server.ts.js-VuOYrejT.js +0 -208
  599. package/build/server/chunks/entries/endpoints/admin/api/system/health/_server.ts.js-VuOYrejT.js.map +0 -1
  600. package/build/server/chunks/entries/endpoints/admin/api/system/throughput/_server.ts.js-V5NRs6as.js +0 -90
  601. package/build/server/chunks/entries/endpoints/admin/api/system/throughput/_server.ts.js-V5NRs6as.js.map +0 -1
  602. package/build/server/chunks/entries/endpoints/admin/api/system/update/_server.ts.js-_SPujsJW.js +0 -403
  603. package/build/server/chunks/entries/endpoints/admin/api/system/update/_server.ts.js-_SPujsJW.js.map +0 -1
  604. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/_server.ts.js-CYIpAhPx.js +0 -76
  605. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/_server.ts.js-CYIpAhPx.js.map +0 -1
  606. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/disable/_server.ts.js--FE-5A1u.js +0 -46
  607. package/build/server/chunks/entries/endpoints/admin/api/users/_id_/disable/_server.ts.js--FE-5A1u.js.map +0 -1
  608. package/build/server/chunks/entries/endpoints/admin/api/users/_server.ts.js-DYFX69rD.js +0 -86
  609. package/build/server/chunks/entries/endpoints/admin/api/users/_server.ts.js-DYFX69rD.js.map +0 -1
  610. package/build/server/chunks/entries/endpoints/api/compute/_server.ts.js-Dzn1VE28.js +0 -0
  611. package/build/server/chunks/entries/endpoints/api/compute/_server.ts.js-Dzn1VE28.js.map +0 -1
  612. package/build/server/chunks/entries/endpoints/api/compute/schema/_server.ts.js-CEfiTeNA.js +0 -68
  613. package/build/server/chunks/entries/endpoints/api/compute/schema/_server.ts.js-CEfiTeNA.js.map +0 -1
  614. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/_server.ts.js-2okm_O3E.js +0 -75
  615. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/_server.ts.js-2okm_O3E.js.map +0 -1
  616. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_filename_/_server.ts.js-BQGJqa_y.js +0 -46
  617. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_filename_/_server.ts.js-BQGJqa_y.js.map +0 -1
  618. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_server.ts.js-BxSN3roq.js +0 -44
  619. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/image/_server.ts.js-BxSN3roq.js.map +0 -1
  620. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/publish/_server.ts.js-BaDepDiY.js +0 -40
  621. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/publish/_server.ts.js-BaDepDiY.js.map +0 -1
  622. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_linkId_/_server.ts.js-BBxUhG6I.js +0 -46
  623. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_linkId_/_server.ts.js-BBxUhG6I.js.map +0 -1
  624. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_server.ts.js-B2anGcET.js +0 -84
  625. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/share-links/_server.ts.js-B2anGcET.js.map +0 -1
  626. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/_server.ts.js-CxxJA6un.js +0 -47
  627. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/_server.ts.js-CxxJA6un.js.map +0 -1
  628. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/_versionId_/_server.ts.js-DbJbMiPZ.js +0 -40
  629. package/build/server/chunks/entries/endpoints/api/definitions/_guid_/versions/_versionId_/_server.ts.js-DbJbMiPZ.js.map +0 -1
  630. package/build/server/chunks/entries/endpoints/api/definitions/_server.ts.js-Dojg7QIG.js +0 -94
  631. package/build/server/chunks/entries/endpoints/api/definitions/_server.ts.js-Dojg7QIG.js.map +0 -1
  632. package/build/server/chunks/entries/endpoints/api/diag/throughput/_server.ts.js-B74eCnn7.js +0 -59
  633. package/build/server/chunks/entries/endpoints/api/diag/throughput/_server.ts.js-B74eCnn7.js.map +0 -1
  634. package/build/server/chunks/entries/endpoints/api/files/_...path_/_server.ts.js-BzclyMf8.js +0 -89
  635. package/build/server/chunks/entries/endpoints/api/files/_...path_/_server.ts.js-BzclyMf8.js.map +0 -1
  636. package/build/server/chunks/entries/endpoints/api/health/_server.ts.js-A00t9oxG.js +0 -56
  637. package/build/server/chunks/entries/endpoints/api/health/_server.ts.js-A00t9oxG.js.map +0 -1
  638. package/build/server/chunks/entries/endpoints/api/invites/_id_/_server.ts.js-D_xEGLcw.js +0 -49
  639. package/build/server/chunks/entries/endpoints/api/invites/_id_/_server.ts.js-D_xEGLcw.js.map +0 -1
  640. package/build/server/chunks/entries/endpoints/api/invites/_server.ts.js-Dgx1PidW.js +0 -77
  641. package/build/server/chunks/entries/endpoints/api/invites/_server.ts.js-Dgx1PidW.js.map +0 -1
  642. package/build/server/chunks/entries/endpoints/api/me/starred/_guid_/_server.ts.js-B__-qCZA.js +0 -45
  643. package/build/server/chunks/entries/endpoints/api/me/starred/_guid_/_server.ts.js-B__-qCZA.js.map +0 -1
  644. package/build/server/chunks/entries/endpoints/api/org/compute/_server.ts.js-BWqlr7Hd.js +0 -110
  645. package/build/server/chunks/entries/endpoints/api/org/compute/_server.ts.js-BWqlr7Hd.js.map +0 -1
  646. package/build/server/chunks/entries/endpoints/api/orgs/_orgId_/members/_userId_/_server.ts.js-B3QCGoJy.js +0 -79
  647. package/build/server/chunks/entries/endpoints/api/orgs/_orgId_/members/_userId_/_server.ts.js-B3QCGoJy.js.map +0 -1
  648. package/build/server/chunks/entries/endpoints/api/projects/_id_/_server.ts.js-6F-0PFlm.js +0 -71
  649. package/build/server/chunks/entries/endpoints/api/projects/_id_/_server.ts.js-6F-0PFlm.js.map +0 -1
  650. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/_server.ts.js-BFmaq97W.js +0 -65
  651. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/_server.ts.js-BFmaq97W.js.map +0 -1
  652. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/_userId_/_server.ts.js-DTlokUo_.js +0 -64
  653. package/build/server/chunks/entries/endpoints/api/projects/_id_/members/_userId_/_server.ts.js-DTlokUo_.js.map +0 -1
  654. package/build/server/chunks/entries/endpoints/api/projects/_id_/reclaim/_server.ts.js-BvqrCqZV.js +0 -48
  655. package/build/server/chunks/entries/endpoints/api/projects/_id_/reclaim/_server.ts.js-BvqrCqZV.js.map +0 -1
  656. package/build/server/chunks/entries/endpoints/api/projects/_server.ts.js-leU_84Nx.js +0 -85
  657. package/build/server/chunks/entries/endpoints/api/projects/_server.ts.js-leU_84Nx.js.map +0 -1
  658. package/build/server/chunks/entries/endpoints/auth/email/callback/_server.ts.js-CW4BLamb.js +0 -48
  659. package/build/server/chunks/entries/endpoints/auth/email/callback/_server.ts.js-CW4BLamb.js.map +0 -1
  660. package/build/server/chunks/entries/endpoints/auth/supabase/callback/_server.ts.js-Cn9baLry.js +0 -52
  661. package/build/server/chunks/entries/endpoints/auth/supabase/callback/_server.ts.js-Cn9baLry.js.map +0 -1
  662. package/build/server/chunks/entries/endpoints/auth/supabase/start/_server.ts.js-YxiD2iVO.js +0 -51
  663. package/build/server/chunks/entries/endpoints/auth/supabase/start/_server.ts.js-YxiD2iVO.js.map +0 -1
  664. package/build/server/chunks/entries/hooks.server.js-bN3sgEaQ.js +0 -341
  665. package/build/server/chunks/entries/hooks.server.js-bN3sgEaQ.js.map +0 -1
  666. package/build/server/chunks/entries/pages/_error.svelte.js-BPgus5uY.js +0 -35
  667. package/build/server/chunks/entries/pages/_error.svelte.js-BPgus5uY.js.map +0 -1
  668. package/build/server/chunks/entries/pages/_layout.server.ts.js-i5sNzfgp.js +0 -34
  669. package/build/server/chunks/entries/pages/_layout.server.ts.js-i5sNzfgp.js.map +0 -1
  670. package/build/server/chunks/entries/pages/_page.svelte.js-C3CdYJ8Y.js +0 -76
  671. package/build/server/chunks/entries/pages/_page.svelte.js-C3CdYJ8Y.js.map +0 -1
  672. package/build/server/chunks/entries/pages/accept-invite/_page.server.ts.js-D92N4MfM.js +0 -109
  673. package/build/server/chunks/entries/pages/accept-invite/_page.server.ts.js-D92N4MfM.js.map +0 -1
  674. package/build/server/chunks/entries/pages/accept-invite/_page.svelte.js-Bw4mDBgj.js +0 -148
  675. package/build/server/chunks/entries/pages/accept-invite/_page.svelte.js-Bw4mDBgj.js.map +0 -1
  676. package/build/server/chunks/entries/pages/admin/_error.svelte.js-DiYtKa0_.js +0 -36
  677. package/build/server/chunks/entries/pages/admin/_error.svelte.js-DiYtKa0_.js.map +0 -1
  678. package/build/server/chunks/entries/pages/admin/_layout.server.ts.js-CfMnIH9f.js +0 -31
  679. package/build/server/chunks/entries/pages/admin/_layout.server.ts.js-CfMnIH9f.js.map +0 -1
  680. package/build/server/chunks/entries/pages/admin/_layout.svelte.js-D_-AZdM0.js +0 -121
  681. package/build/server/chunks/entries/pages/admin/_layout.svelte.js-D_-AZdM0.js.map +0 -1
  682. package/build/server/chunks/entries/pages/admin/_page.server.ts.js-CmMD4AwU.js +0 -75
  683. package/build/server/chunks/entries/pages/admin/_page.server.ts.js-CmMD4AwU.js.map +0 -1
  684. package/build/server/chunks/entries/pages/admin/_page.svelte.js-Dn97wpia.js +0 -359
  685. package/build/server/chunks/entries/pages/admin/_page.svelte.js-Dn97wpia.js.map +0 -1
  686. package/build/server/chunks/entries/pages/admin/audit/_page.server.ts.js-CHrfPCF5.js +0 -245
  687. package/build/server/chunks/entries/pages/admin/audit/_page.server.ts.js-CHrfPCF5.js.map +0 -1
  688. package/build/server/chunks/entries/pages/admin/compute/_page.server.ts.js-CuXWmYGp.js +0 -45
  689. package/build/server/chunks/entries/pages/admin/compute/_page.server.ts.js-CuXWmYGp.js.map +0 -1
  690. package/build/server/chunks/entries/pages/admin/compute/_page.svelte.js-3VheJpBQ.js +0 -612
  691. package/build/server/chunks/entries/pages/admin/compute/_page.svelte.js-3VheJpBQ.js.map +0 -1
  692. package/build/server/chunks/entries/pages/admin/organizations/_page.server.ts.js-DY5J4mc_.js +0 -35
  693. package/build/server/chunks/entries/pages/admin/organizations/_page.server.ts.js-DY5J4mc_.js.map +0 -1
  694. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.server.ts.js-B2axmFCj.js +0 -86
  695. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.server.ts.js-B2axmFCj.js.map +0 -1
  696. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.svelte.js-DonYN1Ds.js +0 -616
  697. package/build/server/chunks/entries/pages/admin/projects/_id_/_page.svelte.js-DonYN1Ds.js.map +0 -1
  698. package/build/server/chunks/entries/pages/admin/projects/_page.server.ts.js-BTxvr6mI.js +0 -42
  699. package/build/server/chunks/entries/pages/admin/projects/_page.server.ts.js-BTxvr6mI.js.map +0 -1
  700. package/build/server/chunks/entries/pages/admin/projects/_page.svelte.js-BM5A0rkN.js +0 -282
  701. package/build/server/chunks/entries/pages/admin/projects/_page.svelte.js-BM5A0rkN.js.map +0 -1
  702. package/build/server/chunks/entries/pages/admin/system/_page.server.ts.js-ClTMrj80.js +0 -79
  703. package/build/server/chunks/entries/pages/admin/system/_page.server.ts.js-ClTMrj80.js.map +0 -1
  704. package/build/server/chunks/entries/pages/admin/system/_page.svelte.js-DR1hipue.js +0 -1363
  705. package/build/server/chunks/entries/pages/admin/system/_page.svelte.js-DR1hipue.js.map +0 -1
  706. package/build/server/chunks/entries/pages/admin/users/_page.server.ts.js-DYzUydL1.js +0 -70
  707. package/build/server/chunks/entries/pages/admin/users/_page.server.ts.js-DYzUydL1.js.map +0 -1
  708. package/build/server/chunks/entries/pages/admin/users/_page.svelte.js-BucX_9sF.js +0 -681
  709. package/build/server/chunks/entries/pages/admin/users/_page.svelte.js-BucX_9sF.js.map +0 -1
  710. package/build/server/chunks/entries/pages/auth/email/sent/_page.svelte.js-Dx3cCf3T.js +0 -62
  711. package/build/server/chunks/entries/pages/auth/email/sent/_page.svelte.js-Dx3cCf3T.js.map +0 -1
  712. package/build/server/chunks/entries/pages/auth/email/start/_page.server.ts.js-DnfZ3Mmf.js +0 -62
  713. package/build/server/chunks/entries/pages/auth/email/start/_page.server.ts.js-DnfZ3Mmf.js.map +0 -1
  714. package/build/server/chunks/entries/pages/library/_guid_/_page.server.ts.js-DGYJ32pv.js +0 -124
  715. package/build/server/chunks/entries/pages/library/_guid_/_page.server.ts.js-DGYJ32pv.js.map +0 -1
  716. package/build/server/chunks/entries/pages/library/_guid_/_page.svelte.js-DHN53ehq.js +0 -12096
  717. package/build/server/chunks/entries/pages/library/_guid_/_page.svelte.js-DHN53ehq.js.map +0 -1
  718. package/build/server/chunks/entries/pages/library/_page.server.ts.js-BjiPxbmt.js +0 -73
  719. package/build/server/chunks/entries/pages/library/_page.server.ts.js-BjiPxbmt.js.map +0 -1
  720. package/build/server/chunks/entries/pages/library/_page.svelte.js-1gntWlkk.js +0 -328
  721. package/build/server/chunks/entries/pages/library/_page.svelte.js-1gntWlkk.js.map +0 -1
  722. package/build/server/chunks/entries/pages/login/_page.server.ts.js-DMGOwB2E.js +0 -76
  723. package/build/server/chunks/entries/pages/login/_page.server.ts.js-DMGOwB2E.js.map +0 -1
  724. package/build/server/chunks/entries/pages/login/_page.svelte.js-CQqtzw2V.js +0 -256
  725. package/build/server/chunks/entries/pages/login/_page.svelte.js-CQqtzw2V.js.map +0 -1
  726. package/build/server/chunks/entries/pages/projects/_layout.svelte.js-bZZHqRUq.js +0 -49
  727. package/build/server/chunks/entries/pages/projects/_layout.svelte.js-bZZHqRUq.js.map +0 -1
  728. package/build/server/chunks/entries/pages/projects/_page.server.ts.js-CGAQADjp.js +0 -101
  729. package/build/server/chunks/entries/pages/projects/_page.server.ts.js-CGAQADjp.js.map +0 -1
  730. package/build/server/chunks/entries/pages/projects/_page.svelte.js-DuYt1pGa.js +0 -3745
  731. package/build/server/chunks/entries/pages/projects/_page.svelte.js-DuYt1pGa.js.map +0 -1
  732. package/build/server/chunks/entries/pages/setup/_page.server.ts.js-Cht_e3W1.js +0 -113
  733. package/build/server/chunks/entries/pages/setup/_page.server.ts.js-Cht_e3W1.js.map +0 -1
  734. package/build/server/chunks/entries/pages/setup/_page.svelte.js-CkRPD2-y.js +0 -321
  735. package/build/server/chunks/entries/pages/setup/_page.svelte.js-CkRPD2-y.js.map +0 -1
  736. package/build/server/chunks/entries/pages/team/_layout.server.ts.js-C6ydG0ba.js +0 -28
  737. package/build/server/chunks/entries/pages/team/_layout.server.ts.js-C6ydG0ba.js.map +0 -1
  738. package/build/server/chunks/entries/pages/team/_layout.svelte.js-C10q4GW6.js +0 -162
  739. package/build/server/chunks/entries/pages/team/_layout.svelte.js-C10q4GW6.js.map +0 -1
  740. package/build/server/chunks/entries/pages/team/_page.server.ts.js-Dm0BcY_1.js +0 -35
  741. package/build/server/chunks/entries/pages/team/_page.server.ts.js-Dm0BcY_1.js.map +0 -1
  742. package/build/server/chunks/entries/pages/team/compute/_page.server.ts.js-B7_0-uNx.js +0 -42
  743. package/build/server/chunks/entries/pages/team/compute/_page.server.ts.js-B7_0-uNx.js.map +0 -1
  744. package/build/server/chunks/entries/pages/team/compute/_page.svelte.js-CSfa36i0.js +0 -593
  745. package/build/server/chunks/entries/pages/team/compute/_page.svelte.js-CSfa36i0.js.map +0 -1
  746. package/build/server/chunks/entries/pages/team/members/_page.server.ts.js-B1J9PbcB.js +0 -58
  747. package/build/server/chunks/entries/pages/team/members/_page.server.ts.js-B1J9PbcB.js.map +0 -1
  748. package/build/server/chunks/entries/pages/team/members/_page.svelte.js-ByLm7nMt.js +0 -539
  749. package/build/server/chunks/entries/pages/team/members/_page.svelte.js-ByLm7nMt.js.map +0 -1
  750. package/build/server/chunks/entries/pages/team/projects/_page.server.ts.js-DwfdGrm_.js +0 -42
  751. package/build/server/chunks/entries/pages/team/projects/_page.server.ts.js-DwfdGrm_.js.map +0 -1
  752. package/build/server/chunks/entries/pages/team/projects/_page.svelte.js-HSAAn-DI.js +0 -436
  753. package/build/server/chunks/entries/pages/team/projects/_page.svelte.js-HSAAn-DI.js.map +0 -1
  754. package/build/server/chunks/entries/pages/team/reclaim/_page.server.ts.js-CQt9n8zT.js +0 -50
  755. package/build/server/chunks/entries/pages/team/reclaim/_page.server.ts.js-CQt9n8zT.js.map +0 -1
  756. package/build/server/chunks/entries/pages/team/reclaim/_page.svelte.js-C8udTojx.js +0 -262
  757. package/build/server/chunks/entries/pages/team/reclaim/_page.svelte.js-C8udTojx.js.map +0 -1
  758. package/build/server/chunks/entries/pages/team/settings/_page.server.ts.js-D3fQdI4F.js +0 -32
  759. package/build/server/chunks/entries/pages/team/settings/_page.server.ts.js-D3fQdI4F.js.map +0 -1
  760. package/build/server/chunks/entries/pages/team/shares/_page.server.ts.js-Wx1gYCuo.js +0 -16
  761. package/build/server/chunks/entries/pages/team/shares/_page.server.ts.js-Wx1gYCuo.js.map +0 -1
  762. package/build/server/chunks/handler-C_oBT0th.js +0 -1206
  763. package/build/server/chunks/handler-C_oBT0th.js.map +0 -1
  764. package/build/server/chunks/index.js-B-RhTrwV.js +0 -3747
  765. package/build/server/chunks/index.js-B-RhTrwV.js.map +0 -1
  766. package/build/server/chunks/manifest.js-DbaT8xLo.js +0 -548
  767. package/build/server/chunks/manifest.js-DbaT8xLo.js.map +0 -1
  768. package/build/server/chunks/nodes/0.js-CEpLefNw.js +0 -25
  769. package/build/server/chunks/nodes/0.js-CEpLefNw.js.map +0 -1
  770. package/build/server/chunks/nodes/1.js-DgRzBm1_.js +0 -9
  771. package/build/server/chunks/nodes/1.js-DgRzBm1_.js.map +0 -1
  772. package/build/server/chunks/nodes/10.js-DdhhLQJt.js +0 -27
  773. package/build/server/chunks/nodes/10.js-DdhhLQJt.js.map +0 -1
  774. package/build/server/chunks/nodes/11.js-Dn1bMnHV.js +0 -28
  775. package/build/server/chunks/nodes/11.js-Dn1bMnHV.js.map +0 -1
  776. package/build/server/chunks/nodes/12.js-pdOO2q2s.js +0 -26
  777. package/build/server/chunks/nodes/12.js-pdOO2q2s.js.map +0 -1
  778. package/build/server/chunks/nodes/13.js-D0HebxbI.js +0 -26
  779. package/build/server/chunks/nodes/13.js-D0HebxbI.js.map +0 -1
  780. package/build/server/chunks/nodes/14.js-CqSx1wax.js +0 -26
  781. package/build/server/chunks/nodes/14.js-CqSx1wax.js.map +0 -1
  782. package/build/server/chunks/nodes/15.js-CVKsi7kp.js +0 -38
  783. package/build/server/chunks/nodes/15.js-CVKsi7kp.js.map +0 -1
  784. package/build/server/chunks/nodes/16.js-Q_Bu1thc.js +0 -29
  785. package/build/server/chunks/nodes/16.js-Q_Bu1thc.js.map +0 -1
  786. package/build/server/chunks/nodes/17.js-CZ8hiAKX.js +0 -9
  787. package/build/server/chunks/nodes/17.js-CZ8hiAKX.js.map +0 -1
  788. package/build/server/chunks/nodes/18.js-7XdBdlyl.js +0 -34
  789. package/build/server/chunks/nodes/18.js-7XdBdlyl.js.map +0 -1
  790. package/build/server/chunks/nodes/19.js--QTqW8Rg.js +0 -27
  791. package/build/server/chunks/nodes/19.js--QTqW8Rg.js.map +0 -1
  792. package/build/server/chunks/nodes/2.js-DlRr_y1E.js +0 -27
  793. package/build/server/chunks/nodes/2.js-DlRr_y1E.js.map +0 -1
  794. package/build/server/chunks/nodes/20.js-DuurViiQ.js +0 -40
  795. package/build/server/chunks/nodes/20.js-DuurViiQ.js.map +0 -1
  796. package/build/server/chunks/nodes/21.js-DLPsGBUe.js +0 -34
  797. package/build/server/chunks/nodes/21.js-DLPsGBUe.js.map +0 -1
  798. package/build/server/chunks/nodes/23.js-DeF7i6MK.js +0 -28
  799. package/build/server/chunks/nodes/23.js-DeF7i6MK.js.map +0 -1
  800. package/build/server/chunks/nodes/24.js-IGhSaU-_.js +0 -34
  801. package/build/server/chunks/nodes/24.js-IGhSaU-_.js.map +0 -1
  802. package/build/server/chunks/nodes/25.js-DfgGSsw1.js +0 -26
  803. package/build/server/chunks/nodes/25.js-DfgGSsw1.js.map +0 -1
  804. package/build/server/chunks/nodes/27.js-C5yOaHre.js +0 -27
  805. package/build/server/chunks/nodes/27.js-C5yOaHre.js.map +0 -1
  806. package/build/server/chunks/nodes/28.js-DRt6k5eX.js +0 -26
  807. package/build/server/chunks/nodes/28.js-DRt6k5eX.js.map +0 -1
  808. package/build/server/chunks/nodes/29.js-BpciAAsH.js +0 -26
  809. package/build/server/chunks/nodes/29.js-BpciAAsH.js.map +0 -1
  810. package/build/server/chunks/nodes/3.js-D2dw1aIG.js +0 -9
  811. package/build/server/chunks/nodes/3.js-D2dw1aIG.js.map +0 -1
  812. package/build/server/chunks/nodes/30.js-B19f3CLv.js +0 -26
  813. package/build/server/chunks/nodes/30.js-B19f3CLv.js.map +0 -1
  814. package/build/server/chunks/nodes/31.js-DIaImYmw.js +0 -26
  815. package/build/server/chunks/nodes/31.js-DIaImYmw.js.map +0 -1
  816. package/build/server/chunks/nodes/32.js-Btz0fZDj.js +0 -26
  817. package/build/server/chunks/nodes/32.js-Btz0fZDj.js.map +0 -1
  818. package/build/server/chunks/nodes/5.js-BjxuAVp4.js +0 -15
  819. package/build/server/chunks/nodes/5.js-BjxuAVp4.js.map +0 -1
  820. package/build/server/chunks/nodes/6.js-BqjMGg59.js +0 -26
  821. package/build/server/chunks/nodes/6.js-BqjMGg59.js.map +0 -1
  822. package/build/server/chunks/nodes/7.js-BLQSVoBK.js +0 -12
  823. package/build/server/chunks/nodes/7.js-BLQSVoBK.js.map +0 -1
  824. package/build/server/chunks/nodes/8.js-BEznbukO.js +0 -35
  825. package/build/server/chunks/nodes/8.js-BEznbukO.js.map +0 -1
  826. package/build/server/chunks/nodes/9.js-yf_0hC1V.js +0 -26
  827. package/build/server/chunks/nodes/9.js-yf_0hC1V.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,403 @@
1
+ import { b as private_env } from '../../../../../../chunks/shared-server.js-DA4m8f1m.js';
2
+ import '../../../../../../chunks/src.js-C5mUn1eC.js';
3
+ import { A as actorFrom, r as renderThrown, j as getEventSink, i as getErrorReporter } from '../../../../../../chunks/providers.server.js-Wjp7cRza.js';
4
+ import { r as requirePermission } from '../../../../../../chunks/access.server.js-CzBCyDoD.js';
5
+ import { c as checkForUpdate, r as readChannel, a as channelTag } from '../../../../../../chunks/updateCheck.server.js-C_IO7xvE.js';
6
+ import { u as updateLogPath, f as findDeploymentDir, a as updateStatePath, s as startUpdateOutcomeReconciler } from '../../../../../../chunks/selfUpdate.server.js-CUzx8d4Z.js';
7
+ import { json } from '@sveltejs/kit';
8
+ import { spawn } from 'child_process';
9
+ import { join } from 'path';
10
+ import { readFileSync, writeFileSync } from 'fs';
11
+ import 'zod';
12
+ import '../../../../../../chunks/limits.js-BniDP5VZ.js';
13
+ import '../../../../../../chunks/chunk-Y3M7P3BW.js-qwxSY5dh.js';
14
+ import '../../../../../../chunks/schema.js-BhmknPcU.js';
15
+ import 'node:crypto';
16
+ import 'node:url';
17
+ import 'node:path';
18
+ import 'node:fs';
19
+ import 'node:fs/promises';
20
+ import '@supabase/supabase-js';
21
+ import '../../../../../../chunks/update-outcome.js-BOtdiviI.js';
22
+
23
+ //#region src/routes/admin/api/system/update/+server.ts
24
+ function stripAnsi(str) {
25
+ return str.replace(/\x1B\[[0-9;]*[mGKHF]/g, "");
26
+ }
27
+ function readRuntimeVersion(dir) {
28
+ try {
29
+ const pkg = JSON.parse(readFileSync(join(dir, "node_modules", "@selvajs", "selva", "package.json"), "utf8"));
30
+ return typeof pkg.version === "string" ? pkg.version : void 0;
31
+ } catch {
32
+ return;
33
+ }
34
+ }
35
+ function shellQuote(s) {
36
+ return `'${s.replace(/'/g, `'\\''`)}'`;
37
+ }
38
+ function buildLauncher(runnerScript, logPath, prelude = []) {
39
+ const echoes = prelude.map((line) => `echo ${shellQuote(line)}`).join("\n");
40
+ return `
41
+ LOGFILE=${shellQuote(logPath)}
42
+ RUNNER=/tmp/selva-update-runner.sh
43
+ mkdir -p "$(dirname "$LOGFILE")"
44
+ : > "$LOGFILE"
45
+
46
+ cat > "$RUNNER" <<'__SELVA_RUNNER_EOF__'
47
+ ${runnerScript}
48
+ __SELVA_RUNNER_EOF__
49
+ chmod +x "$RUNNER"
50
+
51
+ trap '' PIPE
52
+ exec > >(tee --output-error=warn-nopipe -a "$LOGFILE" 2>/dev/null) 2>&1
53
+ ${echoes}
54
+
55
+ # Daemonize the runner so PM2's tree-kill of selva-compute can't reach it.
56
+ # setsid puts it in a new session; the trailing & + disown + launcher exit
57
+ # leaves the runner with PPID=1 once we're gone. stdin/stdout/stderr are
58
+ # fully detached from this process (and from selva-compute's pipes).
59
+ setsid bash "$RUNNER" </dev/null >>"$LOGFILE" 2>&1 &
60
+ RUNNER_PID=$!
61
+ disown
62
+ echo "[INFO] Update runner started (PID $RUNNER_PID, log: $LOGFILE)"
63
+
64
+ # Small pause so the runner has time to print its first line before SSE
65
+ # closes — otherwise the frontend's first poll might see no progress.
66
+ sleep 1
67
+ exit 0
68
+ `;
69
+ }
70
+ function buildNpmRunnerScript(npmArgs, versionBefore, ecosystemPath, tag) {
71
+ const npmCommand = ["npm", ...npmArgs].map(shellQuote).join(" ");
72
+ return `#!/bin/bash
73
+ set -o pipefail
74
+ BEFORE=${shellQuote(versionBefore ?? "")}
75
+ ECOSYSTEM=${shellQuote(ecosystemPath)}
76
+ TAG=${shellQuote(tag)}
77
+
78
+ # Last-resort safety net. If the script exits with the app NOT online for
79
+ # any reason (crash, kill -9, network blip, npm hang past timeout), try to
80
+ # bring it back from ecosystem.config.cjs before we go. The whole point of
81
+ # this script is to update the app; leaving it down is the worst possible
82
+ # outcome.
83
+ on_exit() {
84
+ CODE=$?
85
+ STATUS=$(pm2 jlist 2>/dev/null | node -e "
86
+ try {
87
+ const list = JSON.parse(require('fs').readFileSync('/dev/stdin','utf8'));
88
+ const app = list.find(p => p.name === 'selva-compute');
89
+ process.stdout.write(app ? app.pm2_env.status : 'missing');
90
+ } catch { process.stdout.write('error'); }
91
+ " 2>/dev/null || echo "error")
92
+ if [ "$STATUS" != "online" ]; then
93
+ echo "[RECOVER] selva-compute is '$STATUS' — starting from ecosystem.config.cjs"
94
+ pm2 start "$ECOSYSTEM" --update-env >/dev/null 2>&1 || \\
95
+ echo "[RECOVER] pm2 start failed — manual intervention required: cd $(dirname "$ECOSYSTEM") && pm2 start ecosystem.config.cjs"
96
+ fi
97
+ # Terminal marker: the restarted app's outcome reconciler greps this to turn
98
+ # the run into an audit event (selfUpdate.server.ts). Keep the format stable.
99
+ echo "[EXIT] code=$CODE"
100
+ }
101
+ trap on_exit EXIT
102
+
103
+ # ---------------------------------------------------------------------------
104
+ # 1. Pre-flight: skip the whole cycle if there's nothing to install.
105
+ # ---------------------------------------------------------------------------
106
+ # Without this, clicking "Update" on an already-current instance triggered
107
+ # a full stop/install/start cycle and a downtime window for no reason. Now
108
+ # we just check the registry first.
109
+ echo "[STEP] Checking npm registry for the '$TAG' channel version"
110
+ LATEST=$(npm view "@selvajs/selva@$TAG" version --silent 2>/dev/null || echo "")
111
+ if [ -z "$LATEST" ]; then
112
+ echo "[WARN] Could not query npm registry — proceeding with update attempt anyway"
113
+ elif [ -n "$BEFORE" ] && [ "$LATEST" = "$BEFORE" ]; then
114
+ echo "[INFO] Already on the '$TAG' channel version ($BEFORE)"
115
+ echo "[DONE] Nothing to do"
116
+ exit 0
117
+ else
118
+ # May be a forward update OR a revert (target older than installed) — either
119
+ # way the installed version differs from what this channel publishes.
120
+ echo "[INFO] Target ($TAG): $BEFORE → $LATEST"
121
+ fi
122
+
123
+ # ---------------------------------------------------------------------------
124
+ # 2. Resync PM2 daemon if its in-memory version drifted from the CLI on disk.
125
+ # ---------------------------------------------------------------------------
126
+ # After a global pm2 upgrade the daemon keeps running its original version
127
+ # while the CLI moves forward. Process commands then talk to a stale daemon
128
+ # and the symptom is "stop works, start never lands". \`pm2 update\` dumps
129
+ # processes, kills the daemon, respawns on the current CLI, restores the
130
+ # dump. Doing it before we touch anything keeps the rest of the script
131
+ # talking to a coherent daemon.
132
+ echo "[STEP] Checking PM2 daemon/CLI version sync"
133
+ if pm2 ping 2>&1 | grep -q "out-of-date" || pm2 list 2>&1 | grep -q "out-of-date"; then
134
+ echo "[STEP] PM2 daemon is out-of-date — running 'pm2 update' to resync"
135
+ if ! pm2 update; then
136
+ echo "[FATAL] pm2 update failed — aborting before stopping the running app"
137
+ exit 1
138
+ fi
139
+ echo "[INFO] PM2 daemon resynced"
140
+ fi
141
+
142
+ # ---------------------------------------------------------------------------
143
+ # 3. Stop selva-compute BEFORE npm rewrites build/.
144
+ # ---------------------------------------------------------------------------
145
+ # SvelteKit's node adapter lazy-imports chunks from build/server/chunks/ on
146
+ # every request. Letting npm rewrite build/ while the old process is still
147
+ # serving traffic = in-flight requests hit ERR_MODULE_NOT_FOUND for chunks
148
+ # whose hash just changed under their feet. Stopping first is a brief
149
+ # downtime window (~1-2s longer than restart-in-place) for a much smaller
150
+ # blast radius.
151
+ #
152
+ # This is also where the SSE connection to the frontend dies — selva-compute
153
+ # IS the SSE server. From here on, the user sees output via the log-file
154
+ # polling fallback in the admin UI, not over SSE.
155
+ echo "[STEP] Stopping selva-compute"
156
+ if ! pm2 stop selva-compute; then
157
+ echo "[WARN] pm2 stop failed — selva-compute may not be running yet. Continuing."
158
+ fi
159
+
160
+ # ---------------------------------------------------------------------------
161
+ # 4. Run npm update.
162
+ # ---------------------------------------------------------------------------
163
+ echo "[STEP] Updating @selvajs/* packages"
164
+ if ! ${npmCommand}; then
165
+ echo "[FATAL] npm update failed — EXIT trap will restart the previous build"
166
+ exit 1
167
+ fi
168
+
169
+ AFTER=$(node -e "try{console.log(require('./node_modules/@selvajs/selva/package.json').version)}catch(e){}" 2>/dev/null)
170
+ echo "[INFO] New @selvajs/selva: \${AFTER:-unknown}"
171
+
172
+ if [ -n "$BEFORE" ] && [ "$BEFORE" = "$AFTER" ]; then
173
+ echo "[WARN] No version change ($BEFORE). Your npm cache may be stale."
174
+ echo "[WARN] Recover with:"
175
+ echo "[WARN] npm cache clean --force"
176
+ echo "[WARN] rm -rf node_modules package-lock.json"
177
+ echo "[WARN] npm install --prefer-online"
178
+ fi
179
+
180
+ # ---------------------------------------------------------------------------
181
+ # 5. Start selva-compute with the new build.
182
+ # ---------------------------------------------------------------------------
183
+ # Start from ecosystem.config.cjs, NOT \`pm2 start selva-compute\` — the
184
+ # latter requires selva-compute to already be in pm2's in-memory process
185
+ # list. After a \`pm2 update\` (step 2) that's not guaranteed.
186
+ echo "[STEP] Starting selva-compute with new build"
187
+ if ! pm2 start "$ECOSYSTEM" --update-env; then
188
+ echo "[FATAL] pm2 start failed — investigate with \\\`pm2 logs selva-compute\\\`"
189
+ exit 2
190
+ fi
191
+
192
+ # ---------------------------------------------------------------------------
193
+ # 6. Health probe the new process.
194
+ # ---------------------------------------------------------------------------
195
+ # Read PORT from .env the same way scripts/update.sh does, so non-default
196
+ # ports are respected.
197
+ PORT=$(grep "^PORT=" .env 2>/dev/null \\
198
+ | head -1 \\
199
+ | cut -d'=' -f2 \\
200
+ | sed -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//' -e 's/^["'"'"']//' -e 's/["'"'"']$//' -e 's/[[:space:]]*#.*//')
201
+ PORT=\${PORT:-3000}
202
+
203
+ echo "[STEP] Health-probing the new process on port $PORT"
204
+ HEALTHY=0
205
+ for i in $(seq 1 15); do
206
+ sleep 2
207
+ CODE=$(curl -sS -o /tmp/selva-health.$$ -w "%{http_code}" --max-time 5 "http://localhost:$PORT/api/health" 2>/dev/null || echo "000")
208
+ if [ "$CODE" = "200" ]; then
209
+ HEALTHY=1
210
+ echo "[INFO] Health probe passed after \${i} attempt(s)"
211
+ rm -f /tmp/selva-health.$$
212
+ break
213
+ fi
214
+ echo "[INFO] Probe attempt $i/15: HTTP $CODE — retrying"
215
+ done
216
+
217
+ if [ "$HEALTHY" = "1" ]; then
218
+ echo "[DONE] Update complete"
219
+ exit 0
220
+ fi
221
+
222
+ # ---------------------------------------------------------------------------
223
+ # 7. Rollback path.
224
+ # ---------------------------------------------------------------------------
225
+ echo "[FATAL] New process failed health check after 30s"
226
+ if [ -f /tmp/selva-health.$$ ]; then
227
+ echo "[FATAL] Last response body:"
228
+ cat /tmp/selva-health.$$
229
+ rm -f /tmp/selva-health.$$
230
+ fi
231
+
232
+ if [ -z "$BEFORE" ]; then
233
+ echo "[FATAL] No prior version recorded — cannot roll back automatically."
234
+ echo "[FATAL] EXIT trap will attempt to restart the current build anyway."
235
+ exit 3
236
+ fi
237
+
238
+ echo "[STEP] Rolling back @selvajs/selva to $BEFORE"
239
+ pm2 stop selva-compute >/dev/null 2>&1 || true
240
+ if ! npm install --save "@selvajs/selva@$BEFORE"; then
241
+ echo "[FATAL] Rollback npm install failed — EXIT trap will retry restart."
242
+ exit 4
243
+ fi
244
+
245
+ pm2 start "$ECOSYSTEM" --update-env || true
246
+ sleep 3
247
+ ROLLBACK_CODE=$(curl -sS -o /dev/null -w "%{http_code}" --max-time 5 "http://localhost:$PORT/api/health" 2>/dev/null || echo "000")
248
+ if [ "$ROLLBACK_CODE" = "200" ]; then
249
+ echo "[DONE] Rolled back to $BEFORE — previous version is online"
250
+ exit 5
251
+ fi
252
+
253
+ echo "[FATAL] Rollback restart also failed health check (HTTP $ROLLBACK_CODE)"
254
+ echo "[FATAL] Manual recovery required. Check: pm2 logs selva-compute"
255
+ exit 6
256
+ `;
257
+ }
258
+ function npmInstallArgs(channel) {
259
+ const tag = channelTag(channel);
260
+ return [
261
+ "install",
262
+ "--save",
263
+ "--prefer-online",
264
+ `@selvajs/cli@${tag}`,
265
+ `@selvajs/selva@${tag}`
266
+ ];
267
+ }
268
+ function detectUpdatePlan(channel) {
269
+ const dir = findDeploymentDir(private_env);
270
+ return dir ? {
271
+ cwd: dir,
272
+ args: npmInstallArgs(channel)
273
+ } : null;
274
+ }
275
+ var POST = async ({ locals }) => {
276
+ requirePermission(locals, "instance_admin");
277
+ const channel = readChannel();
278
+ const plan = detectUpdatePlan(channel);
279
+ if (!plan) return new Response(JSON.stringify({ error: "Couldn't determine how to update this deployment. Expected node_modules/@selvajs/selva (CLI scaffold) in the cwd or a parent directory." }), {
280
+ status: 500,
281
+ headers: { "Content-Type": "application/json" }
282
+ });
283
+ const versionBefore = readRuntimeVersion(plan.cwd);
284
+ const actorId = locals.ctx ? actorFrom(locals.ctx) : "system";
285
+ const pending = {
286
+ startedAt: (/* @__PURE__ */ new Date()).toISOString(),
287
+ actorId,
288
+ channel,
289
+ fromVersion: versionBefore
290
+ };
291
+ try {
292
+ writeFileSync(updateStatePath(plan.cwd), JSON.stringify(pending, null, " "));
293
+ } catch (err) {
294
+ locals.log.error("Could not persist pending-update state", {
295
+ component: "selfUpdate",
296
+ err: renderThrown(err)
297
+ });
298
+ }
299
+ await getEventSink().emit({
300
+ type: "system.update.started",
301
+ channel,
302
+ fromVersion: versionBefore,
303
+ actorId
304
+ });
305
+ const stream = new ReadableStream({ start(controller) {
306
+ const encoder = new TextEncoder();
307
+ function sendEvent(type, data) {
308
+ const message = `data: ${JSON.stringify({
309
+ type,
310
+ ...data
311
+ })}\n\n`;
312
+ controller.enqueue(encoder.encode(message));
313
+ }
314
+ try {
315
+ const prelude = [`[INFO] Updating deployment (cwd: ${plan.cwd}, channel: ${channel})`, ...versionBefore ? [`[INFO] Current @selvajs/selva: ${versionBefore}`] : []];
316
+ const runnerScript = buildNpmRunnerScript(plan.args, versionBefore, join(plan.cwd, "ecosystem.config.cjs"), channelTag(channel));
317
+ const cmd = "bash";
318
+ const args = ["-c", buildLauncher(runnerScript, updateLogPath(plan.cwd), prelude)];
319
+ const localBin = join(plan.cwd, "node_modules", ".bin");
320
+ const child = spawn(cmd, args, {
321
+ cwd: plan.cwd,
322
+ env: {
323
+ PATH: `${localBin}:${process.env.PATH ?? ""}`,
324
+ HOME: process.env.HOME,
325
+ INSTALL_DIR: plan.cwd
326
+ },
327
+ detached: true,
328
+ stdio: [
329
+ "ignore",
330
+ "pipe",
331
+ "pipe"
332
+ ]
333
+ });
334
+ child.unref();
335
+ startUpdateOutcomeReconciler({
336
+ deploymentDir: plan.cwd,
337
+ emit: (e) => getEventSink().emit(e),
338
+ report: (err) => getErrorReporter().capture(err, { tags: { origin: "selfUpdate" } })
339
+ });
340
+ const timeout = setTimeout(() => {
341
+ try {
342
+ if (child.pid) process.kill(-child.pid, "SIGTERM");
343
+ } catch {}
344
+ sendEvent("log", { data: "[FATAL] Update timed out after 15 minutes" });
345
+ sendEvent("exit", { code: -1 });
346
+ controller.close();
347
+ }, 900 * 1e3);
348
+ let restarting = false;
349
+ child.stdout.on("data", (data) => {
350
+ const lines = data.toString().split("\n");
351
+ for (const line of lines) {
352
+ const clean = stripAnsi(line).trim();
353
+ if (clean) if (!restarting && (clean.includes("Applying action stopProcessId") || clean.includes("Applying action restartProcessId"))) {
354
+ restarting = true;
355
+ sendEvent("restarting", { data: clean });
356
+ } else sendEvent("log", { data: clean });
357
+ }
358
+ });
359
+ child.stderr.on("data", (data) => {
360
+ const lines = data.toString().split("\n");
361
+ for (const line of lines) {
362
+ const clean = stripAnsi(line).trim();
363
+ if (clean) sendEvent("log", { data: `[ERROR] ${clean}` });
364
+ }
365
+ });
366
+ child.on("close", (code) => {
367
+ clearTimeout(timeout);
368
+ sendEvent("exit", { code: code ?? -1 });
369
+ controller.close();
370
+ });
371
+ child.on("error", (err) => {
372
+ clearTimeout(timeout);
373
+ sendEvent("log", { data: `[FATAL] ${err.message}` });
374
+ sendEvent("exit", { code: -1 });
375
+ controller.close();
376
+ });
377
+ } catch (err) {
378
+ sendEvent("log", { data: `[FATAL] Failed to spawn process: ${err}` });
379
+ sendEvent("exit", { code: -1 });
380
+ controller.close();
381
+ }
382
+ } });
383
+ return new Response(stream, { headers: {
384
+ "Content-Type": "text/event-stream",
385
+ "Cache-Control": "no-cache",
386
+ Connection: "keep-alive"
387
+ } });
388
+ };
389
+ var GET = async ({ locals, url, fetch }) => {
390
+ requirePermission(locals, "instance_admin");
391
+ if (url.searchParams.get("check") !== null) return json(await checkForUpdate(fetch, readChannel()), { headers: { "Cache-Control": "no-store" } });
392
+ let body = "";
393
+ try {
394
+ body = readFileSync(updateLogPath(findDeploymentDir(private_env)), "utf8");
395
+ } catch {}
396
+ return new Response(body, { headers: {
397
+ "Content-Type": "text/plain; charset=utf-8",
398
+ "Cache-Control": "no-store"
399
+ } });
400
+ };
401
+
402
+ export { GET, POST };
403
+ //# sourceMappingURL=_server.ts.js-CXE4GneZ.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts.js-CXE4GneZ.js","sources":["../../../../../../../../../.svelte-kit/output/server/entries/endpoints/admin/api/system/update/_server.ts.js"],"sourcesContent":["import { t as private_env } from \"../../../../../../chunks/shared-server.js\";\nimport \"../../../../../../chunks/src.js\";\nimport { N as actorFrom, T as renderThrown, l as getErrorReporter, u as getEventSink } from \"../../../../../../chunks/providers.server.js\";\nimport { S as requirePermission } from \"../../../../../../chunks/access.server.js\";\nimport { n as channelTag, r as readChannel, t as checkForUpdate } from \"../../../../../../chunks/updateCheck.server.js\";\nimport { i as updateStatePath, n as startUpdateOutcomeReconciler, r as updateLogPath, t as findDeploymentDir } from \"../../../../../../chunks/selfUpdate.server.js\";\nimport { json } from \"@sveltejs/kit\";\nimport { spawn } from \"child_process\";\nimport { join } from \"path\";\nimport { readFileSync, writeFileSync } from \"fs\";\n//#region src/routes/admin/api/system/update/+server.ts\nfunction stripAnsi(str) {\n\treturn str.replace(/\\x1B\\[[0-9;]*[mGKHF]/g, \"\");\n}\nfunction readRuntimeVersion(dir) {\n\ttry {\n\t\tconst pkg = JSON.parse(readFileSync(join(dir, \"node_modules\", \"@selvajs\", \"selva\", \"package.json\"), \"utf8\"));\n\t\treturn typeof pkg.version === \"string\" ? pkg.version : void 0;\n\t} catch {\n\t\treturn;\n\t}\n}\nfunction shellQuote(s) {\n\treturn `'${s.replace(/'/g, `'\\\\''`)}'`;\n}\nfunction buildLauncher(runnerScript, logPath, prelude = []) {\n\tconst echoes = prelude.map((line) => `echo ${shellQuote(line)}`).join(\"\\n\");\n\treturn `\nLOGFILE=${shellQuote(logPath)}\nRUNNER=/tmp/selva-update-runner.sh\nmkdir -p \"$(dirname \"$LOGFILE\")\"\n: > \"$LOGFILE\"\n\ncat > \"$RUNNER\" <<'__SELVA_RUNNER_EOF__'\n${runnerScript}\n__SELVA_RUNNER_EOF__\nchmod +x \"$RUNNER\"\n\ntrap '' PIPE\nexec > >(tee --output-error=warn-nopipe -a \"$LOGFILE\" 2>/dev/null) 2>&1\n${echoes}\n\n# Daemonize the runner so PM2's tree-kill of selva-compute can't reach it.\n# setsid puts it in a new session; the trailing & + disown + launcher exit\n# leaves the runner with PPID=1 once we're gone. stdin/stdout/stderr are\n# fully detached from this process (and from selva-compute's pipes).\nsetsid bash \"$RUNNER\" </dev/null >>\"$LOGFILE\" 2>&1 &\nRUNNER_PID=$!\ndisown\necho \"[INFO] Update runner started (PID $RUNNER_PID, log: $LOGFILE)\"\n\n# Small pause so the runner has time to print its first line before SSE\n# closes — otherwise the frontend's first poll might see no progress.\nsleep 1\nexit 0\n`;\n}\nfunction buildNpmRunnerScript(npmArgs, versionBefore, ecosystemPath, tag) {\n\tconst npmCommand = [\"npm\", ...npmArgs].map(shellQuote).join(\" \");\n\treturn `#!/bin/bash\nset -o pipefail\nBEFORE=${shellQuote(versionBefore ?? \"\")}\nECOSYSTEM=${shellQuote(ecosystemPath)}\nTAG=${shellQuote(tag)}\n\n# Last-resort safety net. If the script exits with the app NOT online for\n# any reason (crash, kill -9, network blip, npm hang past timeout), try to\n# bring it back from ecosystem.config.cjs before we go. The whole point of\n# this script is to update the app; leaving it down is the worst possible\n# outcome.\non_exit() {\n CODE=$?\n STATUS=$(pm2 jlist 2>/dev/null | node -e \"\n try {\n const list = JSON.parse(require('fs').readFileSync('/dev/stdin','utf8'));\n const app = list.find(p => p.name === 'selva-compute');\n process.stdout.write(app ? app.pm2_env.status : 'missing');\n } catch { process.stdout.write('error'); }\n \" 2>/dev/null || echo \"error\")\n if [ \"$STATUS\" != \"online\" ]; then\n echo \"[RECOVER] selva-compute is '$STATUS' — starting from ecosystem.config.cjs\"\n pm2 start \"$ECOSYSTEM\" --update-env >/dev/null 2>&1 || \\\\\n echo \"[RECOVER] pm2 start failed — manual intervention required: cd $(dirname \"$ECOSYSTEM\") && pm2 start ecosystem.config.cjs\"\n fi\n # Terminal marker: the restarted app's outcome reconciler greps this to turn\n # the run into an audit event (selfUpdate.server.ts). Keep the format stable.\n echo \"[EXIT] code=$CODE\"\n}\ntrap on_exit EXIT\n\n# ---------------------------------------------------------------------------\n# 1. Pre-flight: skip the whole cycle if there's nothing to install.\n# ---------------------------------------------------------------------------\n# Without this, clicking \"Update\" on an already-current instance triggered\n# a full stop/install/start cycle and a downtime window for no reason. Now\n# we just check the registry first.\necho \"[STEP] Checking npm registry for the '$TAG' channel version\"\nLATEST=$(npm view \"@selvajs/selva@$TAG\" version --silent 2>/dev/null || echo \"\")\nif [ -z \"$LATEST\" ]; then\n echo \"[WARN] Could not query npm registry — proceeding with update attempt anyway\"\nelif [ -n \"$BEFORE\" ] && [ \"$LATEST\" = \"$BEFORE\" ]; then\n echo \"[INFO] Already on the '$TAG' channel version ($BEFORE)\"\n echo \"[DONE] Nothing to do\"\n exit 0\nelse\n # May be a forward update OR a revert (target older than installed) — either\n # way the installed version differs from what this channel publishes.\n echo \"[INFO] Target ($TAG): $BEFORE → $LATEST\"\nfi\n\n# ---------------------------------------------------------------------------\n# 2. Resync PM2 daemon if its in-memory version drifted from the CLI on disk.\n# ---------------------------------------------------------------------------\n# After a global pm2 upgrade the daemon keeps running its original version\n# while the CLI moves forward. Process commands then talk to a stale daemon\n# and the symptom is \"stop works, start never lands\". \\`pm2 update\\` dumps\n# processes, kills the daemon, respawns on the current CLI, restores the\n# dump. Doing it before we touch anything keeps the rest of the script\n# talking to a coherent daemon.\necho \"[STEP] Checking PM2 daemon/CLI version sync\"\nif pm2 ping 2>&1 | grep -q \"out-of-date\" || pm2 list 2>&1 | grep -q \"out-of-date\"; then\n echo \"[STEP] PM2 daemon is out-of-date — running 'pm2 update' to resync\"\n if ! pm2 update; then\n echo \"[FATAL] pm2 update failed — aborting before stopping the running app\"\n exit 1\n fi\n echo \"[INFO] PM2 daemon resynced\"\nfi\n\n# ---------------------------------------------------------------------------\n# 3. Stop selva-compute BEFORE npm rewrites build/.\n# ---------------------------------------------------------------------------\n# SvelteKit's node adapter lazy-imports chunks from build/server/chunks/ on\n# every request. Letting npm rewrite build/ while the old process is still\n# serving traffic = in-flight requests hit ERR_MODULE_NOT_FOUND for chunks\n# whose hash just changed under their feet. Stopping first is a brief\n# downtime window (~1-2s longer than restart-in-place) for a much smaller\n# blast radius.\n#\n# This is also where the SSE connection to the frontend dies — selva-compute\n# IS the SSE server. From here on, the user sees output via the log-file\n# polling fallback in the admin UI, not over SSE.\necho \"[STEP] Stopping selva-compute\"\nif ! pm2 stop selva-compute; then\n echo \"[WARN] pm2 stop failed — selva-compute may not be running yet. Continuing.\"\nfi\n\n# ---------------------------------------------------------------------------\n# 4. Run npm update.\n# ---------------------------------------------------------------------------\necho \"[STEP] Updating @selvajs/* packages\"\nif ! ${npmCommand}; then\n echo \"[FATAL] npm update failed — EXIT trap will restart the previous build\"\n exit 1\nfi\n\nAFTER=$(node -e \"try{console.log(require('./node_modules/@selvajs/selva/package.json').version)}catch(e){}\" 2>/dev/null)\necho \"[INFO] New @selvajs/selva: \\${AFTER:-unknown}\"\n\nif [ -n \"$BEFORE\" ] && [ \"$BEFORE\" = \"$AFTER\" ]; then\n echo \"[WARN] No version change ($BEFORE). Your npm cache may be stale.\"\n echo \"[WARN] Recover with:\"\n echo \"[WARN] npm cache clean --force\"\n echo \"[WARN] rm -rf node_modules package-lock.json\"\n echo \"[WARN] npm install --prefer-online\"\nfi\n\n# ---------------------------------------------------------------------------\n# 5. Start selva-compute with the new build.\n# ---------------------------------------------------------------------------\n# Start from ecosystem.config.cjs, NOT \\`pm2 start selva-compute\\` — the\n# latter requires selva-compute to already be in pm2's in-memory process\n# list. After a \\`pm2 update\\` (step 2) that's not guaranteed.\necho \"[STEP] Starting selva-compute with new build\"\nif ! pm2 start \"$ECOSYSTEM\" --update-env; then\n echo \"[FATAL] pm2 start failed — investigate with \\\\\\`pm2 logs selva-compute\\\\\\`\"\n exit 2\nfi\n\n# ---------------------------------------------------------------------------\n# 6. Health probe the new process.\n# ---------------------------------------------------------------------------\n# Read PORT from .env the same way scripts/update.sh does, so non-default\n# ports are respected.\nPORT=$(grep \"^PORT=\" .env 2>/dev/null \\\\\n | head -1 \\\\\n | cut -d'=' -f2 \\\\\n | sed -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//' -e 's/^[\"'\"'\"']//' -e 's/[\"'\"'\"']$//' -e 's/[[:space:]]*#.*//')\nPORT=\\${PORT:-3000}\n\necho \"[STEP] Health-probing the new process on port $PORT\"\nHEALTHY=0\nfor i in $(seq 1 15); do\n sleep 2\n CODE=$(curl -sS -o /tmp/selva-health.$$ -w \"%{http_code}\" --max-time 5 \"http://localhost:$PORT/api/health\" 2>/dev/null || echo \"000\")\n if [ \"$CODE\" = \"200\" ]; then\n HEALTHY=1\n echo \"[INFO] Health probe passed after \\${i} attempt(s)\"\n rm -f /tmp/selva-health.$$\n break\n fi\n echo \"[INFO] Probe attempt $i/15: HTTP $CODE — retrying\"\ndone\n\nif [ \"$HEALTHY\" = \"1\" ]; then\n echo \"[DONE] Update complete\"\n exit 0\nfi\n\n# ---------------------------------------------------------------------------\n# 7. Rollback path.\n# ---------------------------------------------------------------------------\necho \"[FATAL] New process failed health check after 30s\"\nif [ -f /tmp/selva-health.$$ ]; then\n echo \"[FATAL] Last response body:\"\n cat /tmp/selva-health.$$\n rm -f /tmp/selva-health.$$\nfi\n\nif [ -z \"$BEFORE\" ]; then\n echo \"[FATAL] No prior version recorded — cannot roll back automatically.\"\n echo \"[FATAL] EXIT trap will attempt to restart the current build anyway.\"\n exit 3\nfi\n\necho \"[STEP] Rolling back @selvajs/selva to $BEFORE\"\npm2 stop selva-compute >/dev/null 2>&1 || true\nif ! npm install --save \"@selvajs/selva@$BEFORE\"; then\n echo \"[FATAL] Rollback npm install failed — EXIT trap will retry restart.\"\n exit 4\nfi\n\npm2 start \"$ECOSYSTEM\" --update-env || true\nsleep 3\nROLLBACK_CODE=$(curl -sS -o /dev/null -w \"%{http_code}\" --max-time 5 \"http://localhost:$PORT/api/health\" 2>/dev/null || echo \"000\")\nif [ \"$ROLLBACK_CODE\" = \"200\" ]; then\n echo \"[DONE] Rolled back to $BEFORE — previous version is online\"\n exit 5\nfi\n\necho \"[FATAL] Rollback restart also failed health check (HTTP $ROLLBACK_CODE)\"\necho \"[FATAL] Manual recovery required. Check: pm2 logs selva-compute\"\nexit 6\n`;\n}\nfunction npmInstallArgs(channel) {\n\tconst tag = channelTag(channel);\n\treturn [\n\t\t\"install\",\n\t\t\"--save\",\n\t\t\"--prefer-online\",\n\t\t`@selvajs/cli@${tag}`,\n\t\t`@selvajs/selva@${tag}`\n\t];\n}\nfunction detectUpdatePlan(channel) {\n\tconst dir = findDeploymentDir(private_env);\n\treturn dir ? {\n\t\tcwd: dir,\n\t\targs: npmInstallArgs(channel)\n\t} : null;\n}\nvar POST = async ({ locals }) => {\n\trequirePermission(locals, \"instance_admin\");\n\tconst channel = readChannel();\n\tconst plan = detectUpdatePlan(channel);\n\tif (!plan) return new Response(JSON.stringify({ error: \"Couldn't determine how to update this deployment. Expected node_modules/@selvajs/selva (CLI scaffold) in the cwd or a parent directory.\" }), {\n\t\tstatus: 500,\n\t\theaders: { \"Content-Type\": \"application/json\" }\n\t});\n\tconst versionBefore = readRuntimeVersion(plan.cwd);\n\tconst actorId = locals.ctx ? actorFrom(locals.ctx) : \"system\";\n\tconst pending = {\n\t\tstartedAt: (/* @__PURE__ */ new Date()).toISOString(),\n\t\tactorId,\n\t\tchannel,\n\t\tfromVersion: versionBefore\n\t};\n\ttry {\n\t\twriteFileSync(updateStatePath(plan.cwd), JSON.stringify(pending, null, \"\t\"));\n\t} catch (err) {\n\t\tlocals.log.error(\"Could not persist pending-update state\", {\n\t\t\tcomponent: \"selfUpdate\",\n\t\t\terr: renderThrown(err)\n\t\t});\n\t}\n\tawait getEventSink().emit({\n\t\ttype: \"system.update.started\",\n\t\tchannel,\n\t\tfromVersion: versionBefore,\n\t\tactorId\n\t});\n\tconst stream = new ReadableStream({ start(controller) {\n\t\tconst encoder = new TextEncoder();\n\t\tfunction sendEvent(type, data) {\n\t\t\tconst message = `data: ${JSON.stringify({\n\t\t\t\ttype,\n\t\t\t\t...data\n\t\t\t})}\\n\\n`;\n\t\t\tcontroller.enqueue(encoder.encode(message));\n\t\t}\n\t\ttry {\n\t\t\tconst prelude = [`[INFO] Updating deployment (cwd: ${plan.cwd}, channel: ${channel})`, ...versionBefore ? [`[INFO] Current @selvajs/selva: ${versionBefore}`] : []];\n\t\t\tconst runnerScript = buildNpmRunnerScript(plan.args, versionBefore, join(plan.cwd, \"ecosystem.config.cjs\"), channelTag(channel));\n\t\t\tconst cmd = \"bash\";\n\t\t\tconst args = [\"-c\", buildLauncher(runnerScript, updateLogPath(plan.cwd), prelude)];\n\t\t\tconst localBin = join(plan.cwd, \"node_modules\", \".bin\");\n\t\t\tconst child = spawn(cmd, args, {\n\t\t\t\tcwd: plan.cwd,\n\t\t\t\tenv: {\n\t\t\t\t\tPATH: `${localBin}:${process.env.PATH ?? \"\"}`,\n\t\t\t\t\tHOME: process.env.HOME,\n\t\t\t\t\tINSTALL_DIR: plan.cwd\n\t\t\t\t},\n\t\t\t\tdetached: true,\n\t\t\t\tstdio: [\n\t\t\t\t\t\"ignore\",\n\t\t\t\t\t\"pipe\",\n\t\t\t\t\t\"pipe\"\n\t\t\t\t]\n\t\t\t});\n\t\t\tchild.unref();\n\t\t\tstartUpdateOutcomeReconciler({\n\t\t\t\tdeploymentDir: plan.cwd,\n\t\t\t\temit: (e) => getEventSink().emit(e),\n\t\t\t\treport: (err) => getErrorReporter().capture(err, { tags: { origin: \"selfUpdate\" } })\n\t\t\t});\n\t\t\tconst timeout = setTimeout(() => {\n\t\t\t\ttry {\n\t\t\t\t\tif (child.pid) process.kill(-child.pid, \"SIGTERM\");\n\t\t\t\t} catch {}\n\t\t\t\tsendEvent(\"log\", { data: \"[FATAL] Update timed out after 15 minutes\" });\n\t\t\t\tsendEvent(\"exit\", { code: -1 });\n\t\t\t\tcontroller.close();\n\t\t\t}, 900 * 1e3);\n\t\t\tlet restarting = false;\n\t\t\tchild.stdout.on(\"data\", (data) => {\n\t\t\t\tconst lines = data.toString().split(\"\\n\");\n\t\t\t\tfor (const line of lines) {\n\t\t\t\t\tconst clean = stripAnsi(line).trim();\n\t\t\t\t\tif (clean) if (!restarting && (clean.includes(\"Applying action stopProcessId\") || clean.includes(\"Applying action restartProcessId\"))) {\n\t\t\t\t\t\trestarting = true;\n\t\t\t\t\t\tsendEvent(\"restarting\", { data: clean });\n\t\t\t\t\t} else sendEvent(\"log\", { data: clean });\n\t\t\t\t}\n\t\t\t});\n\t\t\tchild.stderr.on(\"data\", (data) => {\n\t\t\t\tconst lines = data.toString().split(\"\\n\");\n\t\t\t\tfor (const line of lines) {\n\t\t\t\t\tconst clean = stripAnsi(line).trim();\n\t\t\t\t\tif (clean) sendEvent(\"log\", { data: `[ERROR] ${clean}` });\n\t\t\t\t}\n\t\t\t});\n\t\t\tchild.on(\"close\", (code) => {\n\t\t\t\tclearTimeout(timeout);\n\t\t\t\tsendEvent(\"exit\", { code: code ?? -1 });\n\t\t\t\tcontroller.close();\n\t\t\t});\n\t\t\tchild.on(\"error\", (err) => {\n\t\t\t\tclearTimeout(timeout);\n\t\t\t\tsendEvent(\"log\", { data: `[FATAL] ${err.message}` });\n\t\t\t\tsendEvent(\"exit\", { code: -1 });\n\t\t\t\tcontroller.close();\n\t\t\t});\n\t\t} catch (err) {\n\t\t\tsendEvent(\"log\", { data: `[FATAL] Failed to spawn process: ${err}` });\n\t\t\tsendEvent(\"exit\", { code: -1 });\n\t\t\tcontroller.close();\n\t\t}\n\t} });\n\treturn new Response(stream, { headers: {\n\t\t\"Content-Type\": \"text/event-stream\",\n\t\t\"Cache-Control\": \"no-cache\",\n\t\tConnection: \"keep-alive\"\n\t} });\n};\nvar GET = async ({ locals, url, fetch }) => {\n\trequirePermission(locals, \"instance_admin\");\n\tif (url.searchParams.get(\"check\") !== null) return json(await checkForUpdate(fetch, readChannel()), { headers: { \"Cache-Control\": \"no-store\" } });\n\tlet body = \"\";\n\ttry {\n\t\tbody = readFileSync(updateLogPath(findDeploymentDir(private_env)), \"utf8\");\n\t} catch {}\n\treturn new Response(body, { headers: {\n\t\t\"Content-Type\": \"text/plain; charset=utf-8\",\n\t\t\"Cache-Control\": \"no-store\"\n\t} });\n};\n//#endregion\nexport { GET, POST };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAUA;AACA,SAAS,SAAS,CAAC,GAAG,EAAE;AACxB,CAAC,OAAO,GAAG,CAAC,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC;AAChD;AACA,SAAS,kBAAkB,CAAC,GAAG,EAAE;AACjC,CAAC,IAAI;AACL,EAAE,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,EAAE,cAAc,EAAE,UAAU,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,MAAM,CAAC,CAAC;AAC9G,EAAE,OAAO,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,GAAG,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC;AAC/D,CAAC,CAAC,CAAC,MAAM;AACT,EAAE;AACF,CAAC;AACD;AACA,SAAS,UAAU,CAAC,CAAC,EAAE;AACvB,CAAC,OAAO,CAAC,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AACvC;AACA,SAAS,aAAa,CAAC,YAAY,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,EAAE;AAC5D,CAAC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,CAAC,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;AAC5E,CAAC,OAAO;AACR,QAAQ,EAAE,UAAU,CAAC,OAAO,CAAC;AAC7B;AACA;AACA;;AAEA;AACA,EAAE,YAAY;AACd;AACA;;AAEA;AACA;AACA,EAAE,MAAM;;AAER;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,CAAC;AACD;AACA,SAAS,oBAAoB,CAAC,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,GAAG,EAAE;AAC1E,CAAC,MAAM,UAAU,GAAG,CAAC,KAAK,EAAE,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;AACjE,CAAC,OAAO,CAAC;AACT;AACA,OAAO,EAAE,UAAU,CAAC,aAAa,IAAI,EAAE,CAAC;AACxC,UAAU,EAAE,UAAU,CAAC,aAAa,CAAC;AACrC,IAAI,EAAE,UAAU,CAAC,GAAG,CAAC;;AAErB;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA,KAAK,EAAE,UAAU,CAAC;AAClB;AACA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA,CAAC;AACD;AACA,SAAS,cAAc,CAAC,OAAO,EAAE;AACjC,CAAC,MAAM,GAAG,GAAG,UAAU,CAAC,OAAO,CAAC;AAChC,CAAC,OAAO;AACR,EAAE,SAAS;AACX,EAAE,QAAQ;AACV,EAAE,iBAAiB;AACnB,EAAE,CAAC,aAAa,EAAE,GAAG,CAAC,CAAC;AACvB,EAAE,CAAC,eAAe,EAAE,GAAG,CAAC;AACxB,EAAE;AACF;AACA,SAAS,gBAAgB,CAAC,OA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"}
@@ -0,0 +1,76 @@
1
+ import { S as SYSTEM_CONTEXT, h as hasPermission, D as DEFAULT_ORG_PERMISSIONS, M as MEMBER_ASSIGNABLE_PERMISSIONS, P as PlatformPermissionSchema, b as OrgPermissionSchema } from '../../../../../../chunks/src.js-C5mUn1eC.js';
2
+ import { b as getPermissionStore, a as getAuthProvider, d as getDataProvider, e as getOrganizationProvider } from '../../../../../../chunks/providers.server.js-Wjp7cRza.js';
3
+ import { k as requireManageInstanceUsers } from '../../../../../../chunks/access.server.js-CzBCyDoD.js';
4
+ import { a as apiError, t as throwZodError, A as ApiErrorCode } from '../../../../../../chunks/api-errors.js-BLGSIpxK.js';
5
+ import { s as setUserPlatformPermissions } from '../../../../../../chunks/permissions.server.js-CTvpP-8K.js';
6
+ import { s as splitFlatPermissions } from '../../../../../../chunks/permissions-compat.server.js-Ba1Un-4O.js';
7
+ import { z } from 'zod';
8
+ import '../../../../../../chunks/shared-server.js-DA4m8f1m.js';
9
+ import '../../../../../../chunks/limits.js-BniDP5VZ.js';
10
+ import '../../../../../../chunks/chunk-Y3M7P3BW.js-qwxSY5dh.js';
11
+ import '../../../../../../chunks/schema.js-BhmknPcU.js';
12
+ import 'node:crypto';
13
+ import 'node:url';
14
+ import 'node:path';
15
+ import 'node:fs';
16
+ import 'node:fs/promises';
17
+ import '@supabase/supabase-js';
18
+ import '@sveltejs/kit';
19
+ import '../../../../../../chunks/utils2.js-DzUQOoCX.js';
20
+
21
+ //#region src/routes/admin/api/users/[id]/+server.ts
22
+ var FlatPermissionSchema = z.union([PlatformPermissionSchema, OrgPermissionSchema]);
23
+ var UpdatePermissionsBody = z.object({ permissions: z.array(FlatPermissionSchema) });
24
+ var PATCH = async ({ params, request, locals }) => {
25
+ requireManageInstanceUsers(locals);
26
+ const { id } = params;
27
+ if (!id) apiError(400, ApiErrorCode.VALIDATION_FAILED, "Missing user ID");
28
+ const body = await request.json().catch(() => null);
29
+ const parsed = UpdatePermissionsBody.safeParse(body);
30
+ if (!parsed.success) throwZodError(parsed.error);
31
+ const { platform, org } = splitFlatPermissions(parsed.data.permissions);
32
+ const existingPlatform = await getPermissionStore().getFor(locals.ctx, id);
33
+ if ((platform.length !== existingPlatform.length || platform.some((p) => !existingPlatform.includes(p)) || existingPlatform.some((p) => !platform.includes(p))) && !hasPermission(locals.ctx, "instance_admin")) apiError(403, ApiErrorCode.FORBIDDEN, "Only a platform admin can change platform-scope permissions");
34
+ const platformResult = await setUserPlatformPermissions(locals.ctx, id, platform);
35
+ if (platformResult === "not_found") apiError(404, ApiErrorCode.NOT_FOUND, "User not found");
36
+ if (platformResult === "not_supported") apiError(501, ApiErrorCode.INTERNAL, "Platform permission updates not supported by this auth provider");
37
+ if (platformResult === "last_admin") apiError(409, ApiErrorCode.CONFLICT, "Cannot remove the last instance admin. Promote another user to instance admin first.");
38
+ const orgId = locals.ctx?.actingOrgId;
39
+ if (orgId) {
40
+ const orgs = getOrganizationProvider();
41
+ const existing = await orgs.getOrgMember(SYSTEM_CONTEXT, orgId, id);
42
+ const resolvedPermissions = (role) => role === "member" ? org.filter((p) => MEMBER_ASSIGNABLE_PERMISSIONS.includes(p)) : [...DEFAULT_ORG_PERMISSIONS[role]];
43
+ if (existing) await orgs.updateOrgMemberPermissions(SYSTEM_CONTEXT, orgId, id, resolvedPermissions(existing.role));
44
+ else {
45
+ const joinedAt = (/* @__PURE__ */ new Date()).toISOString();
46
+ await orgs.addOrgMember(SYSTEM_CONTEXT, {
47
+ orgId,
48
+ userId: id,
49
+ role: "member",
50
+ permissions: resolvedPermissions("member"),
51
+ joinedAt,
52
+ updatedAt: joinedAt,
53
+ updatedBy: locals.user?.id ?? id,
54
+ deletedAt: null
55
+ });
56
+ }
57
+ }
58
+ return new Response(null, { status: 204 });
59
+ };
60
+ var DELETE = async ({ params, locals }) => {
61
+ requireManageInstanceUsers(locals);
62
+ const { id } = params;
63
+ if (!id) apiError(400, ApiErrorCode.VALIDATION_FAILED, "Missing user ID");
64
+ if ((await getPermissionStore().getFor(locals.ctx, id)).includes("instance_admin")) {
65
+ if (await getPermissionStore().countInstanceAdminsExcluding(locals.ctx, id) === 0) apiError(409, ApiErrorCode.CONFLICT, "Cannot delete the last instance admin. Promote another user to instance admin first.");
66
+ }
67
+ const email = (await getAuthProvider().getUser(id))?.email;
68
+ const result = await getAuthProvider().deleteUser(id);
69
+ if (result === "not_found") apiError(404, ApiErrorCode.NOT_FOUND, "User not found");
70
+ if (result === "not_supported") apiError(501, ApiErrorCode.INTERNAL, "User deletion not supported by this auth provider");
71
+ await getDataProvider().onUserDeleted(SYSTEM_CONTEXT, id, { email });
72
+ return new Response(null, { status: 204 });
73
+ };
74
+
75
+ export { DELETE, PATCH };
76
+ //# sourceMappingURL=_server.ts.js-Bk8THYuD.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts.js-Bk8THYuD.js","sources":["../../../../../../../../../.svelte-kit/output/server/entries/endpoints/admin/api/users/_id_/_server.ts.js"],"sourcesContent":["import { E as PlatformPermissionSchema, _ as DEFAULT_ORG_PERMISSIONS, n as hasPermission, t as SYSTEM_CONTEXT, v as MEMBER_ASSIGNABLE_PERMISSIONS, x as OrgPermissionSchema } from \"../../../../../../chunks/src.js\";\nimport { h as getPermissionStore, m as getOrganizationProvider, o as getDataProvider, r as getAuthProvider } from \"../../../../../../chunks/providers.server.js\";\nimport { y as requireManageInstanceUsers } from \"../../../../../../chunks/access.server.js\";\nimport { i as throwZodError, n as apiError, t as ApiErrorCode } from \"../../../../../../chunks/api-errors.js\";\nimport \"../../../../../../chunks/auth.server.js\";\nimport { t as setUserPlatformPermissions } from \"../../../../../../chunks/permissions.server.js\";\nimport { n as splitFlatPermissions } from \"../../../../../../chunks/permissions-compat.server.js\";\nimport { z } from \"zod\";\n//#region src/routes/admin/api/users/[id]/+server.ts\nvar FlatPermissionSchema = z.union([PlatformPermissionSchema, OrgPermissionSchema]);\nvar UpdatePermissionsBody = z.object({ permissions: z.array(FlatPermissionSchema) });\nvar PATCH = async ({ params, request, locals }) => {\n\trequireManageInstanceUsers(locals);\n\tconst { id } = params;\n\tif (!id) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Missing user ID\");\n\tconst body = await request.json().catch(() => null);\n\tconst parsed = UpdatePermissionsBody.safeParse(body);\n\tif (!parsed.success) throwZodError(parsed.error);\n\tconst { platform, org } = splitFlatPermissions(parsed.data.permissions);\n\tconst existingPlatform = await getPermissionStore().getFor(locals.ctx, id);\n\tif ((platform.length !== existingPlatform.length || platform.some((p) => !existingPlatform.includes(p)) || existingPlatform.some((p) => !platform.includes(p))) && !hasPermission(locals.ctx, \"instance_admin\")) apiError(403, ApiErrorCode.FORBIDDEN, \"Only a platform admin can change platform-scope permissions\");\n\tconst platformResult = await setUserPlatformPermissions(locals.ctx, id, platform);\n\tif (platformResult === \"not_found\") apiError(404, ApiErrorCode.NOT_FOUND, \"User not found\");\n\tif (platformResult === \"not_supported\") apiError(501, ApiErrorCode.INTERNAL, \"Platform permission updates not supported by this auth provider\");\n\tif (platformResult === \"last_admin\") apiError(409, ApiErrorCode.CONFLICT, \"Cannot remove the last instance admin. Promote another user to instance admin first.\");\n\tconst orgId = locals.ctx?.actingOrgId;\n\tif (orgId) {\n\t\tconst orgs = getOrganizationProvider();\n\t\tconst existing = await orgs.getOrgMember(SYSTEM_CONTEXT, orgId, id);\n\t\tconst resolvedPermissions = (role) => role === \"member\" ? org.filter((p) => MEMBER_ASSIGNABLE_PERMISSIONS.includes(p)) : [...DEFAULT_ORG_PERMISSIONS[role]];\n\t\tif (existing) await orgs.updateOrgMemberPermissions(SYSTEM_CONTEXT, orgId, id, resolvedPermissions(existing.role));\n\t\telse {\n\t\t\tconst joinedAt = (/* @__PURE__ */ new Date()).toISOString();\n\t\t\tawait orgs.addOrgMember(SYSTEM_CONTEXT, {\n\t\t\t\torgId,\n\t\t\t\tuserId: id,\n\t\t\t\trole: \"member\",\n\t\t\t\tpermissions: resolvedPermissions(\"member\"),\n\t\t\t\tjoinedAt,\n\t\t\t\tupdatedAt: joinedAt,\n\t\t\t\tupdatedBy: locals.user?.id ?? id,\n\t\t\t\tdeletedAt: null\n\t\t\t});\n\t\t}\n\t}\n\treturn new Response(null, { status: 204 });\n};\nvar DELETE = async ({ params, locals }) => {\n\trequireManageInstanceUsers(locals);\n\tconst { id } = params;\n\tif (!id) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Missing user ID\");\n\tif ((await getPermissionStore().getFor(locals.ctx, id)).includes(\"instance_admin\")) {\n\t\tif (await getPermissionStore().countInstanceAdminsExcluding(locals.ctx, id) === 0) apiError(409, ApiErrorCode.CONFLICT, \"Cannot delete the last instance admin. Promote another user to instance admin first.\");\n\t}\n\tconst email = (await getAuthProvider().getUser(id))?.email;\n\tconst result = await getAuthProvider().deleteUser(id);\n\tif (result === \"not_found\") apiError(404, ApiErrorCode.NOT_FOUND, \"User not found\");\n\tif (result === \"not_supported\") apiError(501, ApiErrorCode.INTERNAL, \"User deletion not supported by this auth provider\");\n\tawait getDataProvider().onUserDeleted(SYSTEM_CONTEXT, id, { email });\n\treturn new Response(null, { status: 204 });\n};\n//#endregion\nexport { DELETE, PATCH };\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,46 @@
1
+ import { b as getPermissionStore, a as getAuthProvider } from '../../../../../../../chunks/providers.server.js-Wjp7cRza.js';
2
+ import { k as requireManageInstanceUsers } from '../../../../../../../chunks/access.server.js-CzBCyDoD.js';
3
+ import { a as apiError, A as ApiErrorCode } from '../../../../../../../chunks/api-errors.js-BLGSIpxK.js';
4
+ import '../../../../../../../chunks/shared-server.js-DA4m8f1m.js';
5
+ import '../../../../../../../chunks/src.js-C5mUn1eC.js';
6
+ import 'zod';
7
+ import '../../../../../../../chunks/limits.js-BniDP5VZ.js';
8
+ import '../../../../../../../chunks/chunk-Y3M7P3BW.js-qwxSY5dh.js';
9
+ import '../../../../../../../chunks/schema.js-BhmknPcU.js';
10
+ import 'node:crypto';
11
+ import 'node:url';
12
+ import 'node:path';
13
+ import 'node:fs';
14
+ import 'node:fs/promises';
15
+ import '@supabase/supabase-js';
16
+ import '@sveltejs/kit';
17
+ import '../../../../../../../chunks/utils2.js-DzUQOoCX.js';
18
+
19
+ //#region src/routes/admin/api/users/[id]/disable/+server.ts
20
+ /**
21
+ * POST /admin/api/users/[id]/disable
22
+ *
23
+ * Permissions.md §10 — disabling a user invalidates sessions while preserving
24
+ * identity and attribution. The §2 sole-`instance_admin` invariant is
25
+ * enforced here BEFORE the auth provider disables, by consulting
26
+ * `IPlatformPermissionStore.countInstanceAdminsExcluding`. Auth providers no
27
+ * longer own Selva-specific authorization.
28
+ *
29
+ * No matching enable endpoint today — the auth interface is one-way for v1.
30
+ * Re-enable lands when the spec defines an explicit re-onboarding flow.
31
+ */
32
+ var POST = async ({ params, locals }) => {
33
+ requireManageInstanceUsers(locals);
34
+ const { id } = params;
35
+ if (!id) apiError(400, ApiErrorCode.VALIDATION_FAILED, "Missing user ID");
36
+ if ((await getPermissionStore().getFor(locals.ctx, id)).includes("instance_admin")) {
37
+ if (await getPermissionStore().countInstanceAdminsExcluding(locals.ctx, id) === 0) apiError(409, ApiErrorCode.CONFLICT, "Cannot disable the last instance admin. Promote another user to instance admin first.");
38
+ }
39
+ const result = await getAuthProvider().disableUser(id);
40
+ if (result === "not_found") apiError(404, ApiErrorCode.NOT_FOUND, "User not found");
41
+ if (result === "not_supported") apiError(501, ApiErrorCode.INTERNAL, "Disabling users is not supported by this auth provider");
42
+ return new Response(null, { status: 204 });
43
+ };
44
+
45
+ export { POST };
46
+ //# sourceMappingURL=_server.ts.js-B4doN1wn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts.js-B4doN1wn.js","sources":["../../../../../../../../../../.svelte-kit/output/server/entries/endpoints/admin/api/users/_id_/disable/_server.ts.js"],"sourcesContent":["import { h as getPermissionStore, r as getAuthProvider } from \"../../../../../../../chunks/providers.server.js\";\nimport { y as requireManageInstanceUsers } from \"../../../../../../../chunks/access.server.js\";\nimport { n as apiError, t as ApiErrorCode } from \"../../../../../../../chunks/api-errors.js\";\nimport \"../../../../../../../chunks/auth.server.js\";\n//#region src/routes/admin/api/users/[id]/disable/+server.ts\n/**\n* POST /admin/api/users/[id]/disable\n*\n* Permissions.md §10 — disabling a user invalidates sessions while preserving\n* identity and attribution. The §2 sole-`instance_admin` invariant is\n* enforced here BEFORE the auth provider disables, by consulting\n* `IPlatformPermissionStore.countInstanceAdminsExcluding`. Auth providers no\n* longer own Selva-specific authorization.\n*\n* No matching enable endpoint today — the auth interface is one-way for v1.\n* Re-enable lands when the spec defines an explicit re-onboarding flow.\n*/\nvar POST = async ({ params, locals }) => {\n\trequireManageInstanceUsers(locals);\n\tconst { id } = params;\n\tif (!id) apiError(400, ApiErrorCode.VALIDATION_FAILED, \"Missing user ID\");\n\tif ((await getPermissionStore().getFor(locals.ctx, id)).includes(\"instance_admin\")) {\n\t\tif (await getPermissionStore().countInstanceAdminsExcluding(locals.ctx, id) === 0) apiError(409, ApiErrorCode.CONFLICT, \"Cannot disable the last instance admin. Promote another user to instance admin first.\");\n\t}\n\tconst result = await getAuthProvider().disableUser(id);\n\tif (result === \"not_found\") apiError(404, ApiErrorCode.NOT_FOUND, \"User not found\");\n\tif (result === \"not_supported\") apiError(501, ApiErrorCode.INTERNAL, \"Disabling users is not supported by this auth provider\");\n\treturn new Response(null, { status: 204 });\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACG,IAAC,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK;AACzC,CAAC,0BAA0B,CAAC,MAAM,CAAC;AACnC,CAAC,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM;AACtB,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,iBAAiB,EAAE,iBAAiB,CAAC;AAC1E,CAAC,IAAI,CAAC,MAAM,kBAAkB,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,QAAQ,CAAC,gBAAgB,CAAC,EAAE;AACrF,EAAE,IAAI,MAAM,kBAAkB,EAAE,CAAC,4BAA4B,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,QAAQ,EAAE,uFAAuF,CAAC;AAClN,CAAC;AACD,CAAC,MAAM,MAAM,GAAG,MAAM,eAAe,EAAE,CAAC,WAAW,CAAC,EAAE,CAAC;AACvD,CAAC,IAAI,MAAM,KAAK,WAAW,EAAE,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,SAAS,EAAE,gBAAgB,CAAC;AACpF,CAAC,IAAI,MAAM,KAAK,eAAe,EAAE,QAAQ,CAAC,GAAG,EAAE,YAAY,CAAC,QAAQ,EAAE,wDAAwD,CAAC;AAC/H,CAAC,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AAC3C;;;;"}