@openpalm/ui 0.13.0-beta.4 → 0.13.0-beta.6

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 (436) hide show
  1. package/build/.openpalm-ui-version +1 -1
  2. package/build/client/_app/immutable/assets/{4.BXlLAfIE.css → 4.B2m7mOkq.css} +1 -1
  3. package/build/client/_app/immutable/assets/4.B2m7mOkq.css.br +0 -0
  4. package/build/client/_app/immutable/assets/4.B2m7mOkq.css.gz +0 -0
  5. package/build/client/_app/immutable/assets/6.CmRPKjbq.css +1 -0
  6. package/build/client/_app/immutable/assets/6.CmRPKjbq.css.br +0 -0
  7. package/build/client/_app/immutable/assets/6.CmRPKjbq.css.gz +0 -0
  8. package/build/client/_app/immutable/assets/7.BTWb8aLW.css +1 -0
  9. package/build/client/_app/immutable/assets/7.BTWb8aLW.css.br +0 -0
  10. package/build/client/_app/immutable/assets/7.BTWb8aLW.css.gz +0 -0
  11. package/build/client/_app/immutable/assets/9.D8zTZB7v.css +1 -0
  12. package/build/client/_app/immutable/assets/9.D8zTZB7v.css.br +0 -0
  13. package/build/client/_app/immutable/assets/9.D8zTZB7v.css.gz +0 -0
  14. package/build/client/_app/immutable/chunks/BX_cLEyR.js +1 -0
  15. package/build/client/_app/immutable/chunks/BX_cLEyR.js.br +0 -0
  16. package/build/client/_app/immutable/chunks/BX_cLEyR.js.gz +0 -0
  17. package/build/client/_app/immutable/chunks/{CBV2kBE1.js → ByFgZDEl.js} +1 -1
  18. package/build/client/_app/immutable/chunks/ByFgZDEl.js.br +0 -0
  19. package/build/client/_app/immutable/chunks/ByFgZDEl.js.gz +0 -0
  20. package/build/client/_app/immutable/chunks/Cnz20Kyu.js +3 -0
  21. package/build/client/_app/immutable/chunks/Cnz20Kyu.js.br +0 -0
  22. package/build/client/_app/immutable/chunks/Cnz20Kyu.js.gz +0 -0
  23. package/build/client/_app/immutable/chunks/{BNJvGRjX.js → CoOosFtk.js} +2 -2
  24. package/build/client/_app/immutable/chunks/CoOosFtk.js.br +0 -0
  25. package/build/client/_app/immutable/chunks/CoOosFtk.js.gz +0 -0
  26. package/build/client/_app/immutable/chunks/{C5iiO0W9.js → DBaSfL95.js} +1 -1
  27. package/build/client/_app/immutable/chunks/DBaSfL95.js.br +0 -0
  28. package/build/client/_app/immutable/chunks/DBaSfL95.js.gz +0 -0
  29. package/build/client/_app/immutable/chunks/ra5AJhOl.js +1 -0
  30. package/build/client/_app/immutable/chunks/ra5AJhOl.js.br +2 -0
  31. package/build/client/_app/immutable/chunks/ra5AJhOl.js.gz +0 -0
  32. package/build/client/_app/immutable/entry/{app.DAzfwrA7.js → app.SHrJgM4c.js} +2 -2
  33. package/build/client/_app/immutable/entry/app.SHrJgM4c.js.br +0 -0
  34. package/build/client/_app/immutable/entry/app.SHrJgM4c.js.gz +0 -0
  35. package/build/client/_app/immutable/entry/start.CM0OuHkF.js +1 -0
  36. package/build/client/_app/immutable/entry/start.CM0OuHkF.js.br +0 -0
  37. package/build/client/_app/immutable/entry/start.CM0OuHkF.js.gz +0 -0
  38. package/build/client/_app/immutable/nodes/{1.BYTQ4CJf.js → 1.BRotfm1G.js} +1 -1
  39. package/build/client/_app/immutable/nodes/1.BRotfm1G.js.br +2 -0
  40. package/build/client/_app/immutable/nodes/1.BRotfm1G.js.gz +0 -0
  41. package/build/client/_app/immutable/nodes/{10.CHYaVWP2.js → 10.CtHRQW64.js} +1 -1
  42. package/build/client/_app/immutable/nodes/10.CtHRQW64.js.br +0 -0
  43. package/build/client/_app/immutable/nodes/10.CtHRQW64.js.gz +0 -0
  44. package/build/client/_app/immutable/nodes/{11.DXwuRFxA.js → 11.DViPDhJG.js} +1 -1
  45. package/build/client/_app/immutable/nodes/11.DViPDhJG.js.br +0 -0
  46. package/build/client/_app/immutable/nodes/11.DViPDhJG.js.gz +0 -0
  47. package/build/client/_app/immutable/nodes/4.B1PIKbh6.js +6 -0
  48. package/build/client/_app/immutable/nodes/4.B1PIKbh6.js.br +0 -0
  49. package/build/client/_app/immutable/nodes/4.B1PIKbh6.js.gz +0 -0
  50. package/build/client/_app/immutable/nodes/{5.DgnQcqeL.js → 5.CIMkqYzP.js} +1 -1
  51. package/build/client/_app/immutable/nodes/5.CIMkqYzP.js.br +0 -0
  52. package/build/client/_app/immutable/nodes/5.CIMkqYzP.js.gz +0 -0
  53. package/build/client/_app/immutable/nodes/6.U9QsdKdj.js +2 -0
  54. package/build/client/_app/immutable/nodes/6.U9QsdKdj.js.br +0 -0
  55. package/build/client/_app/immutable/nodes/6.U9QsdKdj.js.gz +0 -0
  56. package/build/client/_app/immutable/nodes/7.Dvpg6Lol.js +14 -0
  57. package/build/client/_app/immutable/nodes/7.Dvpg6Lol.js.br +0 -0
  58. package/build/client/_app/immutable/nodes/7.Dvpg6Lol.js.gz +0 -0
  59. package/build/client/_app/immutable/nodes/9.zlIImD-K.js +128 -0
  60. package/build/client/_app/immutable/nodes/9.zlIImD-K.js.br +0 -0
  61. package/build/client/_app/immutable/nodes/9.zlIImD-K.js.gz +0 -0
  62. package/build/client/_app/version.json +1 -1
  63. package/build/client/_app/version.json.br +1 -1
  64. package/build/client/_app/version.json.gz +0 -0
  65. package/build/server/chunks/{0-CxqNryz-.js → 0-BtezztJz.js} +5 -4
  66. package/build/server/chunks/{0-CxqNryz-.js.map → 0-BtezztJz.js.map} +1 -1
  67. package/build/server/chunks/1-CvGA_TOi.js +9 -0
  68. package/build/server/chunks/{1-Dxk_eEPL.js.map → 1-CvGA_TOi.js.map} +1 -1
  69. package/build/server/chunks/{10-DcTjX0aZ.js → 10-D_ipl62-.js} +3 -3
  70. package/build/server/chunks/{10-DcTjX0aZ.js.map → 10-D_ipl62-.js.map} +1 -1
  71. package/build/server/chunks/{11-Ddav4pvQ.js → 11-Bp7zXIv8.js} +3 -3
  72. package/build/server/chunks/{11-Ddav4pvQ.js.map → 11-Bp7zXIv8.js.map} +1 -1
  73. package/build/server/chunks/{3-xtalXCwW.js → 3-CZdWulB3.js} +7 -6
  74. package/build/server/chunks/{3-xtalXCwW.js.map → 3-CZdWulB3.js.map} +1 -1
  75. package/build/server/chunks/4-4bobZFC9.js +9 -0
  76. package/build/server/chunks/{4-CEASlyNx.js.map → 4-4bobZFC9.js.map} +1 -1
  77. package/build/server/chunks/{5-3gkFDIAU.js → 5-CeJvfCdk.js} +3 -3
  78. package/build/server/chunks/{5-3gkFDIAU.js.map → 5-CeJvfCdk.js.map} +1 -1
  79. package/build/server/chunks/{6-BSR29JnK.js → 6-sGxxEzTB.js} +4 -4
  80. package/build/server/chunks/{6-BSR29JnK.js.map → 6-sGxxEzTB.js.map} +1 -1
  81. package/build/server/chunks/{7-gx5m5R1u.js → 7-mi0k2tJn.js} +4 -4
  82. package/build/server/chunks/{7-gx5m5R1u.js.map → 7-mi0k2tJn.js.map} +1 -1
  83. package/build/server/chunks/9-DB22e_yA.js +9 -0
  84. package/build/server/chunks/9-DB22e_yA.js.map +1 -0
  85. package/build/server/chunks/{ChatNavbar-D2J3UbpW.js → ChatNavbar-FJW5r496.js} +9 -10
  86. package/build/server/chunks/ChatNavbar-FJW5r496.js.map +1 -0
  87. package/build/server/chunks/{IconServer-jRvjNs7I.js → IconServer-w-1K5jNR.js} +4 -4
  88. package/build/server/chunks/{IconServer-jRvjNs7I.js.map → IconServer-w-1K5jNR.js.map} +1 -1
  89. package/build/server/chunks/{IconSoundOn-DHtvjphK.js → IconSoundOn-DZGaQz_p.js} +18 -13
  90. package/build/server/chunks/IconSoundOn-DZGaQz_p.js.map +1 -0
  91. package/build/server/chunks/{IconStop-C89_dmt4.js → IconStop-BPbovgch.js} +2 -2
  92. package/build/server/chunks/{IconStop-C89_dmt4.js.map → IconStop-BPbovgch.js.map} +1 -1
  93. package/build/server/chunks/{_layout.svelte-BLxvGwKC.js → _layout.svelte-B-_IlE2E.js} +2 -2
  94. package/build/server/chunks/{_layout.svelte-BLxvGwKC.js.map → _layout.svelte-B-_IlE2E.js.map} +1 -1
  95. package/build/server/chunks/{_page.svelte--qXsMm-T.js → _page.svelte-CB1qUSpk.js} +16 -16
  96. package/build/server/chunks/_page.svelte-CB1qUSpk.js.map +1 -0
  97. package/build/server/chunks/{_page.svelte-DGQP3UIP.js → _page.svelte-CPZBh4-z.js} +3 -3
  98. package/build/server/chunks/{_page.svelte-DGQP3UIP.js.map → _page.svelte-CPZBh4-z.js.map} +1 -1
  99. package/build/server/chunks/{_page.svelte-BnZ0Fgkw.js → _page.svelte-CPo3vFZf.js} +17 -43
  100. package/build/server/chunks/_page.svelte-CPo3vFZf.js.map +1 -0
  101. package/build/server/chunks/{_page.svelte-BgzOKhmH.js → _page.svelte-DM96lwQ1.js} +3 -3
  102. package/build/server/chunks/{_page.svelte-BgzOKhmH.js.map → _page.svelte-DM96lwQ1.js.map} +1 -1
  103. package/build/server/chunks/_page.svelte-F3gki1Uz.js +155 -0
  104. package/build/server/chunks/_page.svelte-F3gki1Uz.js.map +1 -0
  105. package/build/server/chunks/{_page.svelte-C36XsgXY.js → _page.svelte-GcuuPiXq.js} +3 -3
  106. package/build/server/chunks/{_page.svelte-C36XsgXY.js.map → _page.svelte-GcuuPiXq.js.map} +1 -1
  107. package/build/server/chunks/{_page.svelte-DGsMxwfZ.js → _page.svelte-K6kU7jIW.js} +64 -80
  108. package/build/server/chunks/_page.svelte-K6kU7jIW.js.map +1 -0
  109. package/build/server/chunks/{_server.ts-sdkTYy6A.js → _server.ts-513m4Yqs.js} +15 -14
  110. package/build/server/chunks/_server.ts-513m4Yqs.js.map +1 -0
  111. package/build/server/chunks/{_server.ts-BWcxJLLV.js → _server.ts-6QSsgi7N.js} +7 -6
  112. package/build/server/chunks/{_server.ts-BWcxJLLV.js.map → _server.ts-6QSsgi7N.js.map} +1 -1
  113. package/build/server/chunks/{_server.ts-Co4yATq8.js → _server.ts-B2BUFCOJ.js} +3 -2
  114. package/build/server/chunks/{_server.ts-Co4yATq8.js.map → _server.ts-B2BUFCOJ.js.map} +1 -1
  115. package/build/server/chunks/{_server.ts-CsP1RzbQ.js → _server.ts-B5wBYGeP.js} +7 -6
  116. package/build/server/chunks/_server.ts-B5wBYGeP.js.map +1 -0
  117. package/build/server/chunks/{_server.ts-CPYtZ7sE.js → _server.ts-BCrEvrVb.js} +27 -23
  118. package/build/server/chunks/_server.ts-BCrEvrVb.js.map +1 -0
  119. package/build/server/chunks/_server.ts-BFRCkpIB.js +83 -0
  120. package/build/server/chunks/_server.ts-BFRCkpIB.js.map +1 -0
  121. package/build/server/chunks/{_server.ts-CMO7LL0e.js → _server.ts-BJGOO9Nn.js} +3 -2
  122. package/build/server/chunks/_server.ts-BJGOO9Nn.js.map +1 -0
  123. package/build/server/chunks/{_server.ts-Ey4BEvRd.js → _server.ts-BLXzfOzW.js} +7 -6
  124. package/build/server/chunks/{_server.ts-Ey4BEvRd.js.map → _server.ts-BLXzfOzW.js.map} +1 -1
  125. package/build/server/chunks/{_server.ts-Bm2nv-W4.js → _server.ts-BNOepqUw.js} +7 -6
  126. package/build/server/chunks/{_server.ts-Bm2nv-W4.js.map → _server.ts-BNOepqUw.js.map} +1 -1
  127. package/build/server/chunks/{_server.ts-CS8n28qm.js → _server.ts-BQZ6mdSh.js} +7 -6
  128. package/build/server/chunks/{_server.ts-CS8n28qm.js.map → _server.ts-BQZ6mdSh.js.map} +1 -1
  129. package/build/server/chunks/{_server.ts-B3MvWwzq.js → _server.ts-BQdhHsGb.js} +8 -7
  130. package/build/server/chunks/{_server.ts-B3MvWwzq.js.map → _server.ts-BQdhHsGb.js.map} +1 -1
  131. package/build/server/chunks/{_server.ts-SxcH-cms.js → _server.ts-BXPj75Y1.js} +8 -7
  132. package/build/server/chunks/{_server.ts-SxcH-cms.js.map → _server.ts-BXPj75Y1.js.map} +1 -1
  133. package/build/server/chunks/{_server.ts-DjAGbGD-.js → _server.ts-B_dmjFtu.js} +7 -6
  134. package/build/server/chunks/_server.ts-B_dmjFtu.js.map +1 -0
  135. package/build/server/chunks/{_server.ts-C31rtz7B.js → _server.ts-BaVwMXGu.js} +7 -6
  136. package/build/server/chunks/{_server.ts-C31rtz7B.js.map → _server.ts-BaVwMXGu.js.map} +1 -1
  137. package/build/server/chunks/_server.ts-BcO0Zf4D.js +73 -0
  138. package/build/server/chunks/_server.ts-BcO0Zf4D.js.map +1 -0
  139. package/build/server/chunks/{_server.ts-B_c9x_NC.js → _server.ts-BcqSTHN5.js} +8 -7
  140. package/build/server/chunks/{_server.ts-B_c9x_NC.js.map → _server.ts-BcqSTHN5.js.map} +1 -1
  141. package/build/server/chunks/{_server.ts-D2-CHx_d.js → _server.ts-BfL_49xD.js} +8 -7
  142. package/build/server/chunks/{_server.ts-D2-CHx_d.js.map → _server.ts-BfL_49xD.js.map} +1 -1
  143. package/build/server/chunks/{_server.ts-C2qIUpva.js → _server.ts-Blmg0cXL.js} +8 -7
  144. package/build/server/chunks/{_server.ts-C2qIUpva.js.map → _server.ts-Blmg0cXL.js.map} +1 -1
  145. package/build/server/chunks/{_server.ts-Cm3uzCwu.js → _server.ts-BmRwgrKB.js} +8 -7
  146. package/build/server/chunks/{_server.ts-Cm3uzCwu.js.map → _server.ts-BmRwgrKB.js.map} +1 -1
  147. package/build/server/chunks/{_server.ts-DuOVzmV5.js → _server.ts-Bnzq20kw.js} +7 -6
  148. package/build/server/chunks/{_server.ts-DuOVzmV5.js.map → _server.ts-Bnzq20kw.js.map} +1 -1
  149. package/build/server/chunks/{_server.ts-DD4ouya8.js → _server.ts-BrQJNRtC.js} +7 -6
  150. package/build/server/chunks/{_server.ts-DD4ouya8.js.map → _server.ts-BrQJNRtC.js.map} +1 -1
  151. package/build/server/chunks/{_server.ts-LHKCcBS1.js → _server.ts-Bvb9c_At.js} +9 -8
  152. package/build/server/chunks/{_server.ts-LHKCcBS1.js.map → _server.ts-Bvb9c_At.js.map} +1 -1
  153. package/build/server/chunks/{_server.ts-Kp3wrrbF.js → _server.ts-BvtdTKYv.js} +8 -7
  154. package/build/server/chunks/{_server.ts-Kp3wrrbF.js.map → _server.ts-BvtdTKYv.js.map} +1 -1
  155. package/build/server/chunks/{_server.ts-V6a8P9IB.js → _server.ts-Bwt_pOeg.js} +7 -6
  156. package/build/server/chunks/{_server.ts-V6a8P9IB.js.map → _server.ts-Bwt_pOeg.js.map} +1 -1
  157. package/build/server/chunks/{_server.ts-CR85H0KR.js → _server.ts-C4Pel5kC.js} +7 -6
  158. package/build/server/chunks/_server.ts-C4Pel5kC.js.map +1 -0
  159. package/build/server/chunks/{_server.ts-CWYonOeQ.js → _server.ts-CFrPK6QO.js} +7 -6
  160. package/build/server/chunks/{_server.ts-CWYonOeQ.js.map → _server.ts-CFrPK6QO.js.map} +1 -1
  161. package/build/server/chunks/{_server.ts-CRvbt_Ny.js → _server.ts-CGTCLl7g.js} +8 -7
  162. package/build/server/chunks/{_server.ts-CRvbt_Ny.js.map → _server.ts-CGTCLl7g.js.map} +1 -1
  163. package/build/server/chunks/{_server.ts-Bvb6lo7O.js → _server.ts-CMOAhXEC.js} +9 -8
  164. package/build/server/chunks/{_server.ts-Bvb6lo7O.js.map → _server.ts-CMOAhXEC.js.map} +1 -1
  165. package/build/server/chunks/{_server.ts-CiBxLSg4.js → _server.ts-CPNIDSmd.js} +7 -6
  166. package/build/server/chunks/{_server.ts-CiBxLSg4.js.map → _server.ts-CPNIDSmd.js.map} +1 -1
  167. package/build/server/chunks/{_server.ts-KHK30kUK.js → _server.ts-CPiybiLB.js} +10 -9
  168. package/build/server/chunks/{_server.ts-KHK30kUK.js.map → _server.ts-CPiybiLB.js.map} +1 -1
  169. package/build/server/chunks/{_server.ts-BNoq5yoF.js → _server.ts-CT0jVfA6.js} +58 -56
  170. package/build/server/chunks/_server.ts-CT0jVfA6.js.map +1 -0
  171. package/build/server/chunks/{_server.ts-D8iJaYan.js → _server.ts-CU4SIH7_.js} +5 -4
  172. package/build/server/chunks/{_server.ts-D8iJaYan.js.map → _server.ts-CU4SIH7_.js.map} +1 -1
  173. package/build/server/chunks/{_server.ts-B-9mLZog.js → _server.ts-CVvUFmDd.js} +7 -6
  174. package/build/server/chunks/{_server.ts-B-9mLZog.js.map → _server.ts-CVvUFmDd.js.map} +1 -1
  175. package/build/server/chunks/{_server.ts-BrwSj7L5.js → _server.ts-CZ3VVtAj.js} +7 -6
  176. package/build/server/chunks/{_server.ts-BrwSj7L5.js.map → _server.ts-CZ3VVtAj.js.map} +1 -1
  177. package/build/server/chunks/{_server.ts-qgPpNGL8.js → _server.ts-CZMdC1Kd.js} +7 -6
  178. package/build/server/chunks/{_server.ts-qgPpNGL8.js.map → _server.ts-CZMdC1Kd.js.map} +1 -1
  179. package/build/server/chunks/{_server.ts-DM8N7von.js → _server.ts-CfLVH8TI.js} +7 -6
  180. package/build/server/chunks/{_server.ts-DM8N7von.js.map → _server.ts-CfLVH8TI.js.map} +1 -1
  181. package/build/server/chunks/{_server.ts-0T6OWJc0.js → _server.ts-Cf_ZLxIl.js} +7 -6
  182. package/build/server/chunks/{_server.ts-0T6OWJc0.js.map → _server.ts-Cf_ZLxIl.js.map} +1 -1
  183. package/build/server/chunks/{_server.ts-DPfGAMG4.js → _server.ts-Cgdl0C1I.js} +7 -6
  184. package/build/server/chunks/{_server.ts-DPfGAMG4.js.map → _server.ts-Cgdl0C1I.js.map} +1 -1
  185. package/build/server/chunks/{_server.ts-BK4NRqMj.js → _server.ts-CixURe5F.js} +8 -7
  186. package/build/server/chunks/{_server.ts-BK4NRqMj.js.map → _server.ts-CixURe5F.js.map} +1 -1
  187. package/build/server/chunks/{_server.ts-BbyfVT-W.js → _server.ts-CjfZfEOL.js} +7 -6
  188. package/build/server/chunks/{_server.ts-BbyfVT-W.js.map → _server.ts-CjfZfEOL.js.map} +1 -1
  189. package/build/server/chunks/{_server.ts-D3skirMd.js → _server.ts-CoVlX74M.js} +8 -7
  190. package/build/server/chunks/{_server.ts-D3skirMd.js.map → _server.ts-CoVlX74M.js.map} +1 -1
  191. package/build/server/chunks/{_server.ts-eov7yZvT.js → _server.ts-Cp8YnPjm.js} +9 -8
  192. package/build/server/chunks/{_server.ts-eov7yZvT.js.map → _server.ts-Cp8YnPjm.js.map} +1 -1
  193. package/build/server/chunks/{_server.ts-C6r0d7SR.js → _server.ts-CqK78x99.js} +19 -13
  194. package/build/server/chunks/_server.ts-CqK78x99.js.map +1 -0
  195. package/build/server/chunks/{_server.ts-MZYYoM8z.js → _server.ts-CsI99fk3.js} +15 -14
  196. package/build/server/chunks/_server.ts-CsI99fk3.js.map +1 -0
  197. package/build/server/chunks/{_server.ts-p4v6noBK.js → _server.ts-CtGn47WI.js} +5 -4
  198. package/build/server/chunks/{_server.ts-p4v6noBK.js.map → _server.ts-CtGn47WI.js.map} +1 -1
  199. package/build/server/chunks/{_server.ts-DHjMyNwJ.js → _server.ts-CuLEqJd2.js} +10 -15
  200. package/build/server/chunks/_server.ts-CuLEqJd2.js.map +1 -0
  201. package/build/server/chunks/{_server.ts-BRvNe0fS.js → _server.ts-CvkF5YMt.js} +7 -6
  202. package/build/server/chunks/{_server.ts-BRvNe0fS.js.map → _server.ts-CvkF5YMt.js.map} +1 -1
  203. package/build/server/chunks/{_server.ts-B64JQevs.js → _server.ts-CyIO3STA.js} +8 -7
  204. package/build/server/chunks/{_server.ts-B64JQevs.js.map → _server.ts-CyIO3STA.js.map} +1 -1
  205. package/build/server/chunks/{_server.ts-BJqxSP1B.js → _server.ts-CzEoO4z1.js} +3 -2
  206. package/build/server/chunks/_server.ts-CzEoO4z1.js.map +1 -0
  207. package/build/server/chunks/{_server.ts-DebCCwjH.js → _server.ts-CzIZ-UYy.js} +7 -6
  208. package/build/server/chunks/{_server.ts-DebCCwjH.js.map → _server.ts-CzIZ-UYy.js.map} +1 -1
  209. package/build/server/chunks/_server.ts-D3CUgai-.js +82 -0
  210. package/build/server/chunks/_server.ts-D3CUgai-.js.map +1 -0
  211. package/build/server/chunks/{_server.ts-zDEENUSw.js → _server.ts-D3EHXo-L.js} +7 -6
  212. package/build/server/chunks/{_server.ts-zDEENUSw.js.map → _server.ts-D3EHXo-L.js.map} +1 -1
  213. package/build/server/chunks/{_server.ts-CCdP5Eqx.js → _server.ts-D3FpBEaY.js} +7 -6
  214. package/build/server/chunks/{_server.ts-CCdP5Eqx.js.map → _server.ts-D3FpBEaY.js.map} +1 -1
  215. package/build/server/chunks/{_server.ts-Sx6mXrwK.js → _server.ts-D3G8ICxb.js} +7 -6
  216. package/build/server/chunks/{_server.ts-Sx6mXrwK.js.map → _server.ts-D3G8ICxb.js.map} +1 -1
  217. package/build/server/chunks/_server.ts-DMUseo0C.js +110 -0
  218. package/build/server/chunks/_server.ts-DMUseo0C.js.map +1 -0
  219. package/build/server/chunks/{_server.ts-yWyCj-R5.js → _server.ts-DVNN4NHW.js} +7 -6
  220. package/build/server/chunks/{_server.ts-yWyCj-R5.js.map → _server.ts-DVNN4NHW.js.map} +1 -1
  221. package/build/server/chunks/{_server.ts-Bl1EtTKF.js → _server.ts-DZrKSBmK.js} +7 -6
  222. package/build/server/chunks/{_server.ts-Bl1EtTKF.js.map → _server.ts-DZrKSBmK.js.map} +1 -1
  223. package/build/server/chunks/{_server.ts-C6GZY_v3.js → _server.ts-DbWhKo2R.js} +7 -6
  224. package/build/server/chunks/_server.ts-DbWhKo2R.js.map +1 -0
  225. package/build/server/chunks/{_server.ts-eF4CAfpP.js → _server.ts-DbvC6vbj.js} +7 -6
  226. package/build/server/chunks/{_server.ts-eF4CAfpP.js.map → _server.ts-DbvC6vbj.js.map} +1 -1
  227. package/build/server/chunks/{_server.ts-CDJ7WouZ.js → _server.ts-Df7bUUvM.js} +10 -9
  228. package/build/server/chunks/_server.ts-Df7bUUvM.js.map +1 -0
  229. package/build/server/chunks/{_server.ts-DNVQMHzn.js → _server.ts-DgoPOMEf.js} +7 -6
  230. package/build/server/chunks/{_server.ts-DNVQMHzn.js.map → _server.ts-DgoPOMEf.js.map} +1 -1
  231. package/build/server/chunks/{_server.ts-DrxBKPKB.js → _server.ts-DgtgUx0V.js} +3 -2
  232. package/build/server/chunks/_server.ts-DgtgUx0V.js.map +1 -0
  233. package/build/server/chunks/{_server.ts-CtcAZ3lM.js → _server.ts-Dim_lnRX.js} +8 -7
  234. package/build/server/chunks/{_server.ts-CtcAZ3lM.js.map → _server.ts-Dim_lnRX.js.map} +1 -1
  235. package/build/server/chunks/{_server.ts-BEhHNijd.js → _server.ts-Dixj3o5E.js} +7 -6
  236. package/build/server/chunks/{_server.ts-BEhHNijd.js.map → _server.ts-Dixj3o5E.js.map} +1 -1
  237. package/build/server/chunks/{_server.ts-BvOQbLFG.js → _server.ts-DjIJCqkv.js} +7 -6
  238. package/build/server/chunks/{_server.ts-BvOQbLFG.js.map → _server.ts-DjIJCqkv.js.map} +1 -1
  239. package/build/server/chunks/{_server.ts-D_93w1gb.js → _server.ts-DnonNBWq.js} +29 -9
  240. package/build/server/chunks/_server.ts-DnonNBWq.js.map +1 -0
  241. package/build/server/chunks/{_server.ts-C0rcwOPL.js → _server.ts-Do0cbyyq.js} +7 -6
  242. package/build/server/chunks/{_server.ts-C0rcwOPL.js.map → _server.ts-Do0cbyyq.js.map} +1 -1
  243. package/build/server/chunks/{_server.ts-p16c9Uzl.js → _server.ts-DpnNS7XE.js} +7 -6
  244. package/build/server/chunks/{_server.ts-p16c9Uzl.js.map → _server.ts-DpnNS7XE.js.map} +1 -1
  245. package/build/server/chunks/{_server.ts-D-Vv5Qkp.js → _server.ts-Dw7F066C.js} +7 -6
  246. package/build/server/chunks/{_server.ts-D-Vv5Qkp.js.map → _server.ts-Dw7F066C.js.map} +1 -1
  247. package/build/server/chunks/{_server.ts-4NsYfdU1.js → _server.ts-DwGTXfsS.js} +3 -2
  248. package/build/server/chunks/{_server.ts-4NsYfdU1.js.map → _server.ts-DwGTXfsS.js.map} +1 -1
  249. package/build/server/chunks/{_server.ts-CGE7AyDg.js → _server.ts-Dy7MOoFx.js} +25 -21
  250. package/build/server/chunks/_server.ts-Dy7MOoFx.js.map +1 -0
  251. package/build/server/chunks/{_server.ts-DObIzyoT.js → _server.ts-HHMqD_RA.js} +4 -3
  252. package/build/server/chunks/{_server.ts-DObIzyoT.js.map → _server.ts-HHMqD_RA.js.map} +1 -1
  253. package/build/server/chunks/{_server.ts-XEVuthfs.js → _server.ts-JhxhiGGc.js} +7 -6
  254. package/build/server/chunks/{_server.ts-XEVuthfs.js.map → _server.ts-JhxhiGGc.js.map} +1 -1
  255. package/build/server/chunks/{_server.ts-CFNNoZVF.js → _server.ts-MBgNxLF2.js} +7 -6
  256. package/build/server/chunks/{_server.ts-CFNNoZVF.js.map → _server.ts-MBgNxLF2.js.map} +1 -1
  257. package/build/server/chunks/{_server.ts-D0EyuOqv.js → _server.ts-V-MiUhz4.js} +7 -6
  258. package/build/server/chunks/{_server.ts-D0EyuOqv.js.map → _server.ts-V-MiUhz4.js.map} +1 -1
  259. package/build/server/chunks/{_server.ts-CIReEz3d.js → _server.ts-WLMG4R7D.js} +7 -6
  260. package/build/server/chunks/{_server.ts-CIReEz3d.js.map → _server.ts-WLMG4R7D.js.map} +1 -1
  261. package/build/server/chunks/{_server.ts-BuGFzejC.js → _server.ts-WZl_x3WY.js} +7 -6
  262. package/build/server/chunks/{_server.ts-BuGFzejC.js.map → _server.ts-WZl_x3WY.js.map} +1 -1
  263. package/build/server/chunks/{_server.ts-C900vqOm.js → _server.ts-YcvtqJwd.js} +25 -17
  264. package/build/server/chunks/_server.ts-YcvtqJwd.js.map +1 -0
  265. package/build/server/chunks/{_server.ts-Cfm_KDhO.js → _server.ts-iFah_o1y.js} +7 -6
  266. package/build/server/chunks/{_server.ts-Cfm_KDhO.js.map → _server.ts-iFah_o1y.js.map} +1 -1
  267. package/build/server/chunks/{_server.ts-DmNziNap.js → _server.ts-m7rCPG1J.js} +7 -6
  268. package/build/server/chunks/{_server.ts-DmNziNap.js.map → _server.ts-m7rCPG1J.js.map} +1 -1
  269. package/build/server/chunks/{_server.ts-CGggA6h4.js → _server.ts-rVmsBymo.js} +16 -11
  270. package/build/server/chunks/_server.ts-rVmsBymo.js.map +1 -0
  271. package/build/server/chunks/{_server.ts-QSEYZqU0.js → _server.ts-s2Seq_VN.js} +7 -6
  272. package/build/server/chunks/{_server.ts-QSEYZqU0.js.map → _server.ts-s2Seq_VN.js.map} +1 -1
  273. package/build/server/chunks/{_server.ts-jB_3zRrF.js → _server.ts-w4ncTcy1.js} +10 -15
  274. package/build/server/chunks/_server.ts-w4ncTcy1.js.map +1 -0
  275. package/build/server/chunks/{_server.ts-CqX61boo.js → _server.ts-ygmDTh5G.js} +8 -7
  276. package/build/server/chunks/{_server.ts-CqX61boo.js.map → _server.ts-ygmDTh5G.js.map} +1 -1
  277. package/build/server/chunks/{_server.ts-CZ83fA4I.js → _server.ts-ykET4T6s.js} +7 -6
  278. package/build/server/chunks/{_server.ts-CZ83fA4I.js.map → _server.ts-ykET4T6s.js.map} +1 -1
  279. package/build/server/chunks/{addon-helpers-TpOYibOg.js → addon-helpers-tZ_tAgFZ.js} +18 -5
  280. package/build/server/chunks/addon-helpers-tZ_tAgFZ.js.map +1 -0
  281. package/build/server/chunks/admin-update-lock-ZHLAwYiV.js +24 -0
  282. package/build/server/chunks/admin-update-lock-ZHLAwYiV.js.map +1 -0
  283. package/build/server/chunks/{akm-Bvt9WaTk.js → akm-DU_4Aa4m.js} +2 -2
  284. package/build/server/chunks/{akm-Bvt9WaTk.js.map → akm-DU_4Aa4m.js.map} +1 -1
  285. package/build/server/chunks/{catalog-w0L1ZRPK.js → catalog-B4QoA_I8.js} +5 -5
  286. package/build/server/chunks/{catalog-w0L1ZRPK.js.map → catalog-B4QoA_I8.js.map} +1 -1
  287. package/build/server/chunks/{client-ClRLlB_c.js → client-Dn-H0hgG.js} +2 -2
  288. package/build/server/chunks/{client-ClRLlB_c.js.map → client-Dn-H0hgG.js.map} +1 -1
  289. package/build/server/chunks/{compose-args2-DiDeQtPu.js → compose-args2-BFOGDQne.js} +3 -2
  290. package/build/server/chunks/compose-args2-BFOGDQne.js.map +1 -0
  291. package/build/server/chunks/{config-Jiy06DlE.js → config-DoYNsM1_.js} +2 -2
  292. package/build/server/chunks/{config-Jiy06DlE.js.map → config-DoYNsM1_.js.map} +1 -1
  293. package/build/server/chunks/{connections-api-J-nrQ1KK.js → connections-api-DlEoE3-k.js} +4 -3
  294. package/build/server/chunks/connections-api-DlEoE3-k.js.map +1 -0
  295. package/build/server/chunks/dist-DtzrgNJ1.js +6617 -0
  296. package/build/server/chunks/dist-DtzrgNJ1.js.map +1 -0
  297. package/build/server/chunks/{docker2-oBEn_Si9.js → docker2-BYFlumV1.js} +3 -2
  298. package/build/server/chunks/docker2-BYFlumV1.js.map +1 -0
  299. package/build/server/chunks/{docker3-Dn-Mm2cT.js → docker3-CtXDh00O.js} +2 -2
  300. package/build/server/chunks/{docker3-Dn-Mm2cT.js.map → docker3-CtXDh00O.js.map} +1 -1
  301. package/build/server/chunks/{endpoints-WTxemTcn.js → endpoints-IFTldlrt.js} +27 -6
  302. package/build/server/chunks/endpoints-IFTldlrt.js.map +1 -0
  303. package/build/server/chunks/environment-BYp8JQYM.js.map +1 -1
  304. package/build/server/chunks/{error.svelte-C2CWdm9K.js → error.svelte-DWK4R1_M.js} +4 -4
  305. package/build/server/chunks/{error.svelte-C2CWdm9K.js.map → error.svelte-DWK4R1_M.js.map} +1 -1
  306. package/build/server/chunks/{features-BE2x1a_a.js → features-BW-bVsl8.js} +3 -3
  307. package/build/server/chunks/{features-BE2x1a_a.js.map → features-BW-bVsl8.js.map} +1 -1
  308. package/build/server/chunks/{helpers-CfpNg3il.js → helpers-DxodR6tq.js} +4 -4
  309. package/build/server/chunks/{helpers-CfpNg3il.js.map → helpers-DxodR6tq.js.map} +1 -1
  310. package/build/server/chunks/{hooks.server-DEVjSu3V.js → hooks.server-Bzj8OieV.js} +10 -9
  311. package/build/server/chunks/{hooks.server-DEVjSu3V.js.map → hooks.server-Bzj8OieV.js.map} +1 -1
  312. package/build/server/chunks/{http-WP5cji9-.js → http-CfHMreaI.js} +2 -2
  313. package/build/server/chunks/{http-WP5cji9-.js.map → http-CfHMreaI.js.map} +1 -1
  314. package/build/server/chunks/{internal-D9Kp0SbJ.js → internal-BcbUGF7Z.js} +5 -7
  315. package/build/server/chunks/{internal-D9Kp0SbJ.js.map → internal-BcbUGF7Z.js.map} +1 -1
  316. package/build/server/chunks/{landing-DKXNel0Q.js → landing-DhaVkN2f.js} +5 -5
  317. package/build/server/chunks/{landing-DKXNel0Q.js.map → landing-DhaVkN2f.js.map} +1 -1
  318. package/build/server/chunks/{paths-DRVrMQrI.js → paths-Bgos728b.js} +2 -2
  319. package/build/server/chunks/{paths-DRVrMQrI.js.map → paths-Bgos728b.js.map} +1 -1
  320. package/build/server/chunks/{session-cookie-CDynAOx3.js → session-cookie-C8DcD6bt.js} +2 -2
  321. package/build/server/chunks/{session-cookie-CDynAOx3.js.map → session-cookie-C8DcD6bt.js.map} +1 -1
  322. package/build/server/chunks/{setup-deploy-CRW2KpZR.js → setup-deploy-D9j0EGGd.js} +2 -2
  323. package/build/server/chunks/{setup-deploy-CRW2KpZR.js.map → setup-deploy-D9j0EGGd.js.map} +1 -1
  324. package/build/server/chunks/{src-CQ2F7hgb.js → src-DbArH65P.js} +469 -7016
  325. package/build/server/chunks/src-DbArH65P.js.map +1 -0
  326. package/build/server/chunks/{state-CsIDHNPN.js → state-Bq8fep3F.js} +2 -2
  327. package/build/server/chunks/{state-CsIDHNPN.js.map → state-Bq8fep3F.js.map} +1 -1
  328. package/build/server/chunks/{state2-jnbE3tAu.js → state2-Cna2OZrd.js} +17 -2
  329. package/build/server/chunks/{state2-jnbE3tAu.js.map → state2-Cna2OZrd.js.map} +1 -1
  330. package/build/server/chunks/voice-state.svelte-2hAkP5Di.js +539 -0
  331. package/build/server/chunks/voice-state.svelte-2hAkP5Di.js.map +1 -0
  332. package/build/server/index.js +1 -1
  333. package/build/server/manifest.js +96 -103
  334. package/build/server/manifest.js.map +1 -1
  335. package/package.json +3 -3
  336. package/build/client/_app/immutable/assets/4.BXlLAfIE.css.br +0 -0
  337. package/build/client/_app/immutable/assets/4.BXlLAfIE.css.gz +0 -0
  338. package/build/client/_app/immutable/assets/6.D_kTgQ70.css +0 -1
  339. package/build/client/_app/immutable/assets/6.D_kTgQ70.css.br +0 -0
  340. package/build/client/_app/immutable/assets/6.D_kTgQ70.css.gz +0 -0
  341. package/build/client/_app/immutable/assets/7.CNzyzDDZ.css +0 -1
  342. package/build/client/_app/immutable/assets/7.CNzyzDDZ.css.br +0 -0
  343. package/build/client/_app/immutable/assets/7.CNzyzDDZ.css.gz +0 -0
  344. package/build/client/_app/immutable/assets/9.DeeTO7Ju.css +0 -1
  345. package/build/client/_app/immutable/assets/9.DeeTO7Ju.css.br +0 -0
  346. package/build/client/_app/immutable/assets/9.DeeTO7Ju.css.gz +0 -0
  347. package/build/client/_app/immutable/chunks/BKLMDjUE.js +0 -1
  348. package/build/client/_app/immutable/chunks/BKLMDjUE.js.br +0 -0
  349. package/build/client/_app/immutable/chunks/BKLMDjUE.js.gz +0 -0
  350. package/build/client/_app/immutable/chunks/BNJvGRjX.js.br +0 -0
  351. package/build/client/_app/immutable/chunks/BNJvGRjX.js.gz +0 -0
  352. package/build/client/_app/immutable/chunks/C5iiO0W9.js.br +0 -0
  353. package/build/client/_app/immutable/chunks/C5iiO0W9.js.gz +0 -0
  354. package/build/client/_app/immutable/chunks/CBV2kBE1.js.br +0 -0
  355. package/build/client/_app/immutable/chunks/CBV2kBE1.js.gz +0 -0
  356. package/build/client/_app/immutable/chunks/DWtm_qwJ.js +0 -3
  357. package/build/client/_app/immutable/chunks/DWtm_qwJ.js.br +0 -0
  358. package/build/client/_app/immutable/chunks/DWtm_qwJ.js.gz +0 -0
  359. package/build/client/_app/immutable/chunks/ccncQf9O.js +0 -1
  360. package/build/client/_app/immutable/chunks/ccncQf9O.js.br +0 -2
  361. package/build/client/_app/immutable/chunks/ccncQf9O.js.gz +0 -0
  362. package/build/client/_app/immutable/entry/app.DAzfwrA7.js.br +0 -0
  363. package/build/client/_app/immutable/entry/app.DAzfwrA7.js.gz +0 -0
  364. package/build/client/_app/immutable/entry/start.7FiodlpO.js +0 -1
  365. package/build/client/_app/immutable/entry/start.7FiodlpO.js.br +0 -1
  366. package/build/client/_app/immutable/entry/start.7FiodlpO.js.gz +0 -0
  367. package/build/client/_app/immutable/nodes/1.BYTQ4CJf.js.br +0 -2
  368. package/build/client/_app/immutable/nodes/1.BYTQ4CJf.js.gz +0 -0
  369. package/build/client/_app/immutable/nodes/10.CHYaVWP2.js.br +0 -0
  370. package/build/client/_app/immutable/nodes/10.CHYaVWP2.js.gz +0 -0
  371. package/build/client/_app/immutable/nodes/11.DXwuRFxA.js.br +0 -0
  372. package/build/client/_app/immutable/nodes/11.DXwuRFxA.js.gz +0 -0
  373. package/build/client/_app/immutable/nodes/4.n8OmCUUb.js +0 -1
  374. package/build/client/_app/immutable/nodes/4.n8OmCUUb.js.br +0 -0
  375. package/build/client/_app/immutable/nodes/4.n8OmCUUb.js.gz +0 -0
  376. package/build/client/_app/immutable/nodes/5.DgnQcqeL.js.br +0 -0
  377. package/build/client/_app/immutable/nodes/5.DgnQcqeL.js.gz +0 -0
  378. package/build/client/_app/immutable/nodes/6.RedvZarw.js +0 -2
  379. package/build/client/_app/immutable/nodes/6.RedvZarw.js.br +0 -0
  380. package/build/client/_app/immutable/nodes/6.RedvZarw.js.gz +0 -0
  381. package/build/client/_app/immutable/nodes/7.BqgE43w1.js +0 -14
  382. package/build/client/_app/immutable/nodes/7.BqgE43w1.js.br +0 -0
  383. package/build/client/_app/immutable/nodes/7.BqgE43w1.js.gz +0 -0
  384. package/build/client/_app/immutable/nodes/9.CQfpYNnj.js +0 -126
  385. package/build/client/_app/immutable/nodes/9.CQfpYNnj.js.br +0 -0
  386. package/build/client/_app/immutable/nodes/9.CQfpYNnj.js.gz +0 -0
  387. package/build/server/chunks/1-Dxk_eEPL.js +0 -9
  388. package/build/server/chunks/4-CEASlyNx.js +0 -9
  389. package/build/server/chunks/9-BKXk6mfI.js +0 -42
  390. package/build/server/chunks/9-BKXk6mfI.js.map +0 -1
  391. package/build/server/chunks/ChatNavbar-D2J3UbpW.js.map +0 -1
  392. package/build/server/chunks/IconSoundOn-DHtvjphK.js.map +0 -1
  393. package/build/server/chunks/_page.svelte--qXsMm-T.js.map +0 -1
  394. package/build/server/chunks/_page.svelte-BnZ0Fgkw.js.map +0 -1
  395. package/build/server/chunks/_page.svelte-Cc-OjlMF.js +0 -92
  396. package/build/server/chunks/_page.svelte-Cc-OjlMF.js.map +0 -1
  397. package/build/server/chunks/_page.svelte-DGsMxwfZ.js.map +0 -1
  398. package/build/server/chunks/_server.ts-BJqxSP1B.js.map +0 -1
  399. package/build/server/chunks/_server.ts-BN6ghyoO.js +0 -94
  400. package/build/server/chunks/_server.ts-BN6ghyoO.js.map +0 -1
  401. package/build/server/chunks/_server.ts-BNoq5yoF.js.map +0 -1
  402. package/build/server/chunks/_server.ts-C6GZY_v3.js.map +0 -1
  403. package/build/server/chunks/_server.ts-C6r0d7SR.js.map +0 -1
  404. package/build/server/chunks/_server.ts-C900vqOm.js.map +0 -1
  405. package/build/server/chunks/_server.ts-CDJ7WouZ.js.map +0 -1
  406. package/build/server/chunks/_server.ts-CGE7AyDg.js.map +0 -1
  407. package/build/server/chunks/_server.ts-CGggA6h4.js.map +0 -1
  408. package/build/server/chunks/_server.ts-CMO7LL0e.js.map +0 -1
  409. package/build/server/chunks/_server.ts-CPYtZ7sE.js.map +0 -1
  410. package/build/server/chunks/_server.ts-CR85H0KR.js.map +0 -1
  411. package/build/server/chunks/_server.ts-ClrrzZI6.js +0 -141
  412. package/build/server/chunks/_server.ts-ClrrzZI6.js.map +0 -1
  413. package/build/server/chunks/_server.ts-CsP1RzbQ.js.map +0 -1
  414. package/build/server/chunks/_server.ts-D5Xa36tp.js +0 -248
  415. package/build/server/chunks/_server.ts-D5Xa36tp.js.map +0 -1
  416. package/build/server/chunks/_server.ts-DHjMyNwJ.js.map +0 -1
  417. package/build/server/chunks/_server.ts-D_93w1gb.js.map +0 -1
  418. package/build/server/chunks/_server.ts-DjAGbGD-.js.map +0 -1
  419. package/build/server/chunks/_server.ts-DrxBKPKB.js.map +0 -1
  420. package/build/server/chunks/_server.ts-MZYYoM8z.js.map +0 -1
  421. package/build/server/chunks/_server.ts-TTSjZaYY.js +0 -69
  422. package/build/server/chunks/_server.ts-TTSjZaYY.js.map +0 -1
  423. package/build/server/chunks/_server.ts-jB_3zRrF.js.map +0 -1
  424. package/build/server/chunks/_server.ts-sdkTYy6A.js.map +0 -1
  425. package/build/server/chunks/_server.ts-st_pTUHI.js +0 -106
  426. package/build/server/chunks/_server.ts-st_pTUHI.js.map +0 -1
  427. package/build/server/chunks/addon-helpers-TpOYibOg.js.map +0 -1
  428. package/build/server/chunks/compose-args2-DiDeQtPu.js.map +0 -1
  429. package/build/server/chunks/connections-api-J-nrQ1KK.js.map +0 -1
  430. package/build/server/chunks/docker2-oBEn_Si9.js.map +0 -1
  431. package/build/server/chunks/endpoints-WTxemTcn.js.map +0 -1
  432. package/build/server/chunks/serial-queue-D9FEpYVv.js +0 -22
  433. package/build/server/chunks/serial-queue-D9FEpYVv.js.map +0 -1
  434. package/build/server/chunks/src-CQ2F7hgb.js.map +0 -1
  435. package/build/server/chunks/voice-state.svelte-BAiqUOIX.js +0 -1214
  436. package/build/server/chunks/voice-state.svelte-BAiqUOIX.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-D0EyuOqv.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/host/akm/stats/_server.ts.js"],"sourcesContent":["import { a as getAkmStats } from \"../../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../../chunks/state.js\";\nimport { a as getRequestId, c as jsonResponse, d as requireCapability, r as errorResponse, u as requireAdmin } from \"../../../../../../chunks/helpers.js\";\n//#region src/routes/api/host/akm/stats/+server.ts\nvar CACHE_TTL_MS = 15e3;\nvar cachedStats = null;\nvar cachedAt = 0;\nvar inFlight = null;\nfunction _resetStatsCacheForTests() {\n\tcachedStats = null;\n\tcachedAt = 0;\n\tinFlight = null;\n}\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst capabilityError = requireCapability(event, \"host:containers\", requestId);\n\tif (capabilityError) return capabilityError;\n\tconst denied = requireAdmin(event, requestId);\n\tif (denied) return denied;\n\tif (cachedStats && Date.now() - cachedAt < CACHE_TTL_MS) return jsonResponse(200, cachedStats, requestId);\n\ttry {\n\t\tif (!inFlight) inFlight = getAkmStats(getState()).finally(() => {\n\t\t\tinFlight = null;\n\t\t});\n\t\tconst stats = await inFlight;\n\t\tcachedStats = stats;\n\t\tcachedAt = Date.now();\n\t\treturn jsonResponse(200, stats, requestId);\n\t} catch (error) {\n\t\treturn errorResponse(500, \"akm_stats_failed\", error instanceof Error ? error.message : \"Failed to load AKM stats.\", {}, requestId);\n\t}\n};\n//#endregion\nexport { GET, _resetStatsCacheForTests };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;AACA,IAAI,YAAY,GAAG,IAAI;AACvB,IAAI,WAAW,GAAG,IAAI;AACtB,IAAI,QAAQ,GAAG,CAAC;AAChB,IAAI,QAAQ,GAAG,IAAI;AACnB,SAAS,wBAAwB,GAAG;AACpC,CAAC,WAAW,GAAG,IAAI;AACnB,CAAC,QAAQ,GAAG,CAAC;AACb,CAAC,QAAQ,GAAG,IAAI;AAChB;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,eAAe,GAAG,iBAAiB,CAAC,KAAK,EAAE,iBAAiB,EAAE,SAAS,CAAC;AAC/E,CAAC,IAAI,eAAe,EAAE,OAAO,eAAe;AAC5C,CAAC,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AAC9C,CAAC,IAAI,MAAM,EAAE,OAAO,MAAM;AAC1B,CAAC,IAAI,WAAW,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,GAAG,YAAY,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC;AAC1G,CAAC,IAAI;AACL,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM;AAClE,GAAG,QAAQ,GAAG,IAAI;AAClB,EAAE,CAAC,CAAC;AACJ,EAAE,MAAM,KAAK,GAAG,MAAM,QAAQ;AAC9B,EAAE,WAAW,GAAG,KAAK;AACrB,EAAE,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE;AACvB,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE,KAAK,EAAE,SAAS,CAAC;AAC5C,CAAC,CAAC,CAAC,OAAO,KAAK,EAAE;AACjB,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,kBAAkB,EAAE,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,2BAA2B,EAAE,EAAE,EAAE,SAAS,CAAC;AACpI,CAAC;AACD;;;;"}
1
+ {"version":3,"file":"_server.ts-V-MiUhz4.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/host/akm/stats/_server.ts.js"],"sourcesContent":["import { o as getAkmStats } from \"../../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../../chunks/state.js\";\nimport { a as getRequestId, c as jsonResponse, d as requireCapability, r as errorResponse, u as requireAdmin } from \"../../../../../../chunks/helpers.js\";\n//#region src/routes/api/host/akm/stats/+server.ts\nvar CACHE_TTL_MS = 15e3;\nvar cachedStats = null;\nvar cachedAt = 0;\nvar inFlight = null;\nfunction _resetStatsCacheForTests() {\n\tcachedStats = null;\n\tcachedAt = 0;\n\tinFlight = null;\n}\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst capabilityError = requireCapability(event, \"host:containers\", requestId);\n\tif (capabilityError) return capabilityError;\n\tconst denied = requireAdmin(event, requestId);\n\tif (denied) return denied;\n\tif (cachedStats && Date.now() - cachedAt < CACHE_TTL_MS) return jsonResponse(200, cachedStats, requestId);\n\ttry {\n\t\tif (!inFlight) inFlight = getAkmStats(getState()).finally(() => {\n\t\t\tinFlight = null;\n\t\t});\n\t\tconst stats = await inFlight;\n\t\tcachedStats = stats;\n\t\tcachedAt = Date.now();\n\t\treturn jsonResponse(200, stats, requestId);\n\t} catch (error) {\n\t\treturn errorResponse(500, \"akm_stats_failed\", error instanceof Error ? error.message : \"Failed to load AKM stats.\", {}, requestId);\n\t}\n};\n//#endregion\nexport { GET, _resetStatsCacheForTests };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;AACA,IAAI,YAAY,GAAG,IAAI;AACvB,IAAI,WAAW,GAAG,IAAI;AACtB,IAAI,QAAQ,GAAG,CAAC;AAChB,IAAI,QAAQ,GAAG,IAAI;AACnB,SAAS,wBAAwB,GAAG;AACpC,CAAC,WAAW,GAAG,IAAI;AACnB,CAAC,QAAQ,GAAG,CAAC;AACb,CAAC,QAAQ,GAAG,IAAI;AAChB;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,eAAe,GAAG,iBAAiB,CAAC,KAAK,EAAE,iBAAiB,EAAE,SAAS,CAAC;AAC/E,CAAC,IAAI,eAAe,EAAE,OAAO,eAAe;AAC5C,CAAC,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AAC9C,CAAC,IAAI,MAAM,EAAE,OAAO,MAAM;AAC1B,CAAC,IAAI,WAAW,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,GAAG,YAAY,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC;AAC1G,CAAC,IAAI;AACL,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM;AAClE,GAAG,QAAQ,GAAG,IAAI;AAClB,EAAE,CAAC,CAAC;AACJ,EAAE,MAAM,KAAK,GAAG,MAAM,QAAQ;AAC9B,EAAE,WAAW,GAAG,KAAK;AACrB,EAAE,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE;AACvB,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE,KAAK,EAAE,SAAS,CAAC;AAC5C,CAAC,CAAC,CAAC,OAAO,KAAK,EAAE;AACjB,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,kBAAkB,EAAE,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,2BAA2B,EAAE,EAAE,EAAE,SAAS,CAAC;AACpI,CAAC;AACD;;;;"}
@@ -1,9 +1,10 @@
1
- import { K as deleteUserEnvKey, Z as ensureAkmUserEnv, aH as readUserEnvFile, F as createLogger, A as AKM_USER_ENV_REF, bc as writeUserEnvKey } from './src-CQ2F7hgb.js';
2
- import { g as getState } from './state-CsIDHNPN.js';
3
- import { d as getRequestId, l as requireCapability, r as requireAdmin, e as errorResponse, k as jsonResponse, w as withAdminBody } from './helpers-CfpNg3il.js';
1
+ import { J as deleteUserEnvKey, Y as ensureAkmUserEnv, aB as readUserEnvFile, D as createLogger, A as AKM_USER_ENV_REF, b6 as writeUserEnvKey } from './src-DbArH65P.js';
2
+ import { g as getState } from './state-Bq8fep3F.js';
3
+ import { d as getRequestId, l as requireCapability, r as requireAdmin, e as errorResponse, k as jsonResponse, w as withAdminBody } from './helpers-DxodR6tq.js';
4
4
  import './chunk-DOvWTNp_.js';
5
5
  import 'node:module';
6
6
  import './network-preset-CJ1RRnki.js';
7
+ import './dist-DtzrgNJ1.js';
7
8
  import 'node:fs';
8
9
  import 'node:child_process';
9
10
  import 'node:path';
@@ -21,8 +22,8 @@ import 'assert';
21
22
  import 'zlib';
22
23
  import 'node:assert';
23
24
  import 'node:fs/promises';
24
- import './endpoints-WTxemTcn.js';
25
- import './features-BE2x1a_a.js';
25
+ import './endpoints-IFTldlrt.js';
26
+ import './features-BW-bVsl8.js';
26
27
 
27
28
  //#region src/routes/api/host/secrets/user-env/+server.ts
28
29
  var logger = createLogger("admin.secrets.user-env");
@@ -108,4 +109,4 @@ var DELETE = async (event) => {
108
109
  };
109
110
 
110
111
  export { DELETE, GET, POST };
111
- //# sourceMappingURL=_server.ts-CIReEz3d.js.map
112
+ //# sourceMappingURL=_server.ts-WLMG4R7D.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-CIReEz3d.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/host/secrets/user-env/_server.ts.js"],"sourcesContent":["import { Nt as createLogger } from \"../../../../../../chunks/compose-args.js\";\nimport { S as writeUserEnvKey, _ as AKM_USER_ENV_REF, b as ensureAkmUserEnv, x as readUserEnvFile, y as deleteUserEnvKey } from \"../../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../../chunks/state.js\";\nimport { a as getRequestId, c as jsonResponse, d as requireCapability, p as withAdminBody, r as errorResponse, u as requireAdmin } from \"../../../../../../chunks/helpers.js\";\n//#region src/routes/api/host/secrets/user-env/+server.ts\nvar logger = createLogger(\"admin.secrets.user-env\");\nvar KEY_RE = /^[A-Za-z_][A-Za-z0-9_]*$/;\n/**\n* GET — list keys in the akm env:user store. Values are NEVER returned.\n*/\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst capabilityError = requireCapability(event, \"host:secrets\", requestId);\n\tif (capabilityError) return capabilityError;\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst envPath = ensureAkmUserEnv(getState());\n\treturn jsonResponse(200, {\n\t\tprovider: \"akm\",\n\t\tenvRef: AKM_USER_ENV_REF,\n\t\tkeys: Object.keys(readUserEnvFile(envPath)).sort()\n\t}, requestId);\n};\n/**\n* POST — write a key into the user env file. The value is shell-quoted and\n* written directly to `knowledge/env/user.env` (mode 0600); it never appears on\n* a process argv. The assistant sources the env file at startup, so a key\n* written here is visible to OpenCode after the next assistant restart.\n*/\nvar POST = async (event) => {\n\tconst capabilityError = requireCapability(event, \"host:secrets\", getRequestId(event));\n\tif (capabilityError) return capabilityError;\n\treturn withAdminBody(event, async ({ requestId, body }) => {\n\t\tconst state = getState();\n\t\tconst key = typeof body.key === \"string\" ? body.key.trim() : \"\";\n\t\tconst value = typeof body.value === \"string\" ? body.value : null;\n\t\tif (!key || value === null) return errorResponse(400, \"bad_request\", \"key and value are required\", {}, requestId);\n\t\tif (!KEY_RE.test(key)) return errorResponse(400, \"invalid_key\", \"key must match [A-Za-z_][A-Za-z0-9_]*\", {}, requestId);\n\t\tif (value.length === 0) return errorResponse(400, \"bad_request\", \"value must be non-empty; use DELETE to remove a key\", {}, requestId);\n\t\tif ([...value].some((ch) => {\n\t\t\tconst code = ch.charCodeAt(0);\n\t\t\treturn code >= 0 && code <= 8 || code >= 10 && code <= 31 || code === 127;\n\t\t})) return errorResponse(400, \"invalid_value\", \"value must not contain newlines or control characters\", {}, requestId);\n\t\ttry {\n\t\t\twriteUserEnvKey(state, key, value);\n\t\t} catch (err) {\n\t\t\tconst reason = err instanceof Error ? err.message : String(err);\n\t\t\tlogger.warn(\"user env write failed\", {\n\t\t\t\tkey,\n\t\t\t\treason,\n\t\t\t\trequestId\n\t\t\t});\n\t\t\treturn errorResponse(500, \"write_failed\", `Failed to write user env key: ${reason}`, {}, requestId);\n\t\t}\n\t\treturn jsonResponse(200, {\n\t\t\tok: true,\n\t\t\tkey\n\t\t}, requestId);\n\t});\n};\n/** DELETE — remove a key from the user env file. */\nvar DELETE = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst capabilityError = requireCapability(event, \"host:secrets\", requestId);\n\tif (capabilityError) return capabilityError;\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst state = getState();\n\tconst key = new URL(event.request.url).searchParams.get(\"key\")?.trim() ?? \"\";\n\tif (!key || !KEY_RE.test(key)) return errorResponse(400, \"bad_request\", \"valid key query parameter is required\", {}, requestId);\n\ttry {\n\t\tdeleteUserEnvKey(state, key);\n\t} catch (err) {\n\t\tconst reason = err instanceof Error ? err.message : String(err);\n\t\tlogger.warn(\"user env delete failed\", {\n\t\t\tkey,\n\t\t\treason,\n\t\t\trequestId\n\t\t});\n\t\treturn errorResponse(500, \"delete_failed\", `Failed to remove user env key: ${reason}`, {}, requestId);\n\t}\n\treturn jsonResponse(200, {\n\t\tok: true,\n\t\tkey\n\t}, requestId);\n};\n//#endregion\nexport { DELETE, GET, POST };\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_server.ts-WLMG4R7D.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/host/secrets/user-env/_server.ts.js"],"sourcesContent":["import { Ot as createLogger } from \"../../../../../../chunks/compose-args.js\";\nimport { C as writeUserEnvKey, S as readUserEnvFile, b as deleteUserEnvKey, v as AKM_USER_ENV_REF, x as ensureAkmUserEnv } from \"../../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../../chunks/state.js\";\nimport { a as getRequestId, c as jsonResponse, d as requireCapability, p as withAdminBody, r as errorResponse, u as requireAdmin } from \"../../../../../../chunks/helpers.js\";\n//#region src/routes/api/host/secrets/user-env/+server.ts\nvar logger = createLogger(\"admin.secrets.user-env\");\nvar KEY_RE = /^[A-Za-z_][A-Za-z0-9_]*$/;\n/**\n* GET — list keys in the akm env:user store. Values are NEVER returned.\n*/\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst capabilityError = requireCapability(event, \"host:secrets\", requestId);\n\tif (capabilityError) return capabilityError;\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst envPath = ensureAkmUserEnv(getState());\n\treturn jsonResponse(200, {\n\t\tprovider: \"akm\",\n\t\tenvRef: AKM_USER_ENV_REF,\n\t\tkeys: Object.keys(readUserEnvFile(envPath)).sort()\n\t}, requestId);\n};\n/**\n* POST — write a key into the user env file. The value is shell-quoted and\n* written directly to `knowledge/env/user.env` (mode 0600); it never appears on\n* a process argv. The assistant sources the env file at startup, so a key\n* written here is visible to OpenCode after the next assistant restart.\n*/\nvar POST = async (event) => {\n\tconst capabilityError = requireCapability(event, \"host:secrets\", getRequestId(event));\n\tif (capabilityError) return capabilityError;\n\treturn withAdminBody(event, async ({ requestId, body }) => {\n\t\tconst state = getState();\n\t\tconst key = typeof body.key === \"string\" ? body.key.trim() : \"\";\n\t\tconst value = typeof body.value === \"string\" ? body.value : null;\n\t\tif (!key || value === null) return errorResponse(400, \"bad_request\", \"key and value are required\", {}, requestId);\n\t\tif (!KEY_RE.test(key)) return errorResponse(400, \"invalid_key\", \"key must match [A-Za-z_][A-Za-z0-9_]*\", {}, requestId);\n\t\tif (value.length === 0) return errorResponse(400, \"bad_request\", \"value must be non-empty; use DELETE to remove a key\", {}, requestId);\n\t\tif ([...value].some((ch) => {\n\t\t\tconst code = ch.charCodeAt(0);\n\t\t\treturn code >= 0 && code <= 8 || code >= 10 && code <= 31 || code === 127;\n\t\t})) return errorResponse(400, \"invalid_value\", \"value must not contain newlines or control characters\", {}, requestId);\n\t\ttry {\n\t\t\twriteUserEnvKey(state, key, value);\n\t\t} catch (err) {\n\t\t\tconst reason = err instanceof Error ? err.message : String(err);\n\t\t\tlogger.warn(\"user env write failed\", {\n\t\t\t\tkey,\n\t\t\t\treason,\n\t\t\t\trequestId\n\t\t\t});\n\t\t\treturn errorResponse(500, \"write_failed\", `Failed to write user env key: ${reason}`, {}, requestId);\n\t\t}\n\t\treturn jsonResponse(200, {\n\t\t\tok: true,\n\t\t\tkey\n\t\t}, requestId);\n\t});\n};\n/** DELETE — remove a key from the user env file. */\nvar DELETE = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst capabilityError = requireCapability(event, \"host:secrets\", requestId);\n\tif (capabilityError) return capabilityError;\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst state = getState();\n\tconst key = new URL(event.request.url).searchParams.get(\"key\")?.trim() ?? \"\";\n\tif (!key || !KEY_RE.test(key)) return errorResponse(400, \"bad_request\", \"valid key query parameter is required\", {}, requestId);\n\ttry {\n\t\tdeleteUserEnvKey(state, key);\n\t} catch (err) {\n\t\tconst reason = err instanceof Error ? err.message : String(err);\n\t\tlogger.warn(\"user env delete failed\", {\n\t\t\tkey,\n\t\t\treason,\n\t\t\trequestId\n\t\t});\n\t\treturn errorResponse(500, \"delete_failed\", `Failed to remove user env key: ${reason}`, {}, requestId);\n\t}\n\treturn jsonResponse(200, {\n\t\tok: true,\n\t\tkey\n\t}, requestId);\n};\n//#endregion\nexport { DELETE, GET, POST };\n"],"names":[],"mappings":"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"}
@@ -1,9 +1,10 @@
1
- import { p as checkDocker, B as composeStats, n as buildComposeOptions } from './src-CQ2F7hgb.js';
2
- import { g as getState } from './state-CsIDHNPN.js';
3
- import { d as getRequestId, l as requireCapability, r as requireAdmin, e as errorResponse, k as jsonResponse } from './helpers-CfpNg3il.js';
1
+ import { p as checkDocker, B as composeStats, m as buildComposeOptions } from './src-DbArH65P.js';
2
+ import { g as getState } from './state-Bq8fep3F.js';
3
+ import { d as getRequestId, l as requireCapability, r as requireAdmin, e as errorResponse, k as jsonResponse } from './helpers-DxodR6tq.js';
4
4
  import './chunk-DOvWTNp_.js';
5
5
  import 'node:module';
6
6
  import './network-preset-CJ1RRnki.js';
7
+ import './dist-DtzrgNJ1.js';
7
8
  import 'node:fs';
8
9
  import 'node:child_process';
9
10
  import 'node:path';
@@ -21,8 +22,8 @@ import 'assert';
21
22
  import 'zlib';
22
23
  import 'node:assert';
23
24
  import 'node:fs/promises';
24
- import './endpoints-WTxemTcn.js';
25
- import './features-BE2x1a_a.js';
25
+ import './endpoints-IFTldlrt.js';
26
+ import './features-BW-bVsl8.js';
26
27
 
27
28
  //#region src/routes/api/host/containers/stats/+server.ts
28
29
  var GET = async (event) => {
@@ -46,4 +47,4 @@ var GET = async (event) => {
46
47
  };
47
48
 
48
49
  export { GET };
49
- //# sourceMappingURL=_server.ts-BuGFzejC.js.map
50
+ //# sourceMappingURL=_server.ts-WZl_x3WY.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-BuGFzejC.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/host/containers/stats/_server.ts.js"],"sourcesContent":["import { t as buildComposeOptions } from \"../../../../../../chunks/compose-args.js\";\nimport { _ as composeStats, i as checkDocker } from \"../../../../../../chunks/docker.js\";\nimport \"../../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../../chunks/state.js\";\nimport { a as getRequestId, c as jsonResponse, d as requireCapability, r as errorResponse, u as requireAdmin } from \"../../../../../../chunks/helpers.js\";\n//#region src/routes/api/host/containers/stats/+server.ts\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst capabilityError = requireCapability(event, \"host:containers\", requestId);\n\tif (capabilityError) return capabilityError;\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst state = getState();\n\tif (!(await checkDocker()).ok) return errorResponse(503, \"docker_unavailable\", \"Docker is not available\", {}, requestId);\n\tconst result = await composeStats(buildComposeOptions(state));\n\tif (!result.ok) return errorResponse(500, \"docker_error\", `Failed to get container stats: ${result.stderr}`, {}, requestId);\n\tlet stats = [];\n\tif (result.stdout.trim()) try {\n\t\tstats = result.stdout.trim().split(\"\\n\").filter((l) => l.startsWith(\"{\")).map((l) => JSON.parse(l));\n\t} catch (e) {\n\t\tconsole.warn(\"[containers.stats] Failed to parse Docker stats output\", e);\n\t\treturn errorResponse(500, \"parse_error\", \"Failed to parse Docker stats output\", {}, requestId);\n\t}\n\treturn jsonResponse(200, { stats }, requestId);\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAKA;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,eAAe,GAAG,iBAAiB,CAAC,KAAK,EAAE,iBAAiB,EAAE,SAAS,CAAC;AAC/E,CAAC,IAAI,eAAe,EAAE,OAAO,eAAe;AAC5C,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AACjD,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS;AAChC,CAAC,MAAM,KAAK,GAAG,QAAQ,EAAE;AACzB,CAAC,IAAI,CAAC,CAAC,MAAM,WAAW,EAAE,EAAE,EAAE,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,EAAE,EAAE,SAAS,CAAC;AACzH,CAAC,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;AAC9D,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,+BAA+B,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC;AAC5H,CAAC,IAAI,KAAK,GAAG,EAAE;AACf,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI;AAC/B,EAAE,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACrG,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE;AACb,EAAE,OAAO,CAAC,IAAI,CAAC,wDAAwD,EAAE,CAAC,CAAC;AAC3E,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,aAAa,EAAE,qCAAqC,EAAE,EAAE,EAAE,SAAS,CAAC;AAChG,CAAC;AACD,CAAC,OAAO,YAAY,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,EAAE,SAAS,CAAC;AAC/C;;;;"}
1
+ {"version":3,"file":"_server.ts-WZl_x3WY.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/host/containers/stats/_server.ts.js"],"sourcesContent":["import { t as buildComposeOptions } from \"../../../../../../chunks/compose-args.js\";\nimport { _ as composeStats, i as checkDocker } from \"../../../../../../chunks/docker.js\";\nimport \"../../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../../chunks/state.js\";\nimport { a as getRequestId, c as jsonResponse, d as requireCapability, r as errorResponse, u as requireAdmin } from \"../../../../../../chunks/helpers.js\";\n//#region src/routes/api/host/containers/stats/+server.ts\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst capabilityError = requireCapability(event, \"host:containers\", requestId);\n\tif (capabilityError) return capabilityError;\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst state = getState();\n\tif (!(await checkDocker()).ok) return errorResponse(503, \"docker_unavailable\", \"Docker is not available\", {}, requestId);\n\tconst result = await composeStats(buildComposeOptions(state));\n\tif (!result.ok) return errorResponse(500, \"docker_error\", `Failed to get container stats: ${result.stderr}`, {}, requestId);\n\tlet stats = [];\n\tif (result.stdout.trim()) try {\n\t\tstats = result.stdout.trim().split(\"\\n\").filter((l) => l.startsWith(\"{\")).map((l) => JSON.parse(l));\n\t} catch (e) {\n\t\tconsole.warn(\"[containers.stats] Failed to parse Docker stats output\", e);\n\t\treturn errorResponse(500, \"parse_error\", \"Failed to parse Docker stats output\", {}, requestId);\n\t}\n\treturn jsonResponse(200, { stats }, requestId);\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,eAAe,GAAG,iBAAiB,CAAC,KAAK,EAAE,iBAAiB,EAAE,SAAS,CAAC;AAC/E,CAAC,IAAI,eAAe,EAAE,OAAO,eAAe;AAC5C,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AACjD,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS;AAChC,CAAC,MAAM,KAAK,GAAG,QAAQ,EAAE;AACzB,CAAC,IAAI,CAAC,CAAC,MAAM,WAAW,EAAE,EAAE,EAAE,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,EAAE,EAAE,SAAS,CAAC;AACzH,CAAC,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;AAC9D,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,+BAA+B,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC;AAC5H,CAAC,IAAI,KAAK,GAAG,EAAE;AACf,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI;AAC/B,EAAE,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACrG,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE;AACb,EAAE,OAAO,CAAC,IAAI,CAAC,wDAAwD,EAAE,CAAC,CAAC;AAC3E,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,aAAa,EAAE,qCAAqC,EAAE,EAAE,EAAE,SAAS,CAAC;AAChG,CAAC;AACD,CAAC,OAAO,YAAY,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,EAAE,SAAS,CAAC;AAC/C;;;;"}
@@ -1,10 +1,11 @@
1
- import { F as createLogger, a as acquireInstallLock, d as applyInstall, p as checkDocker, e as applyStack, n as buildComposeOptions, aN as releaseInstallLock } from './src-CQ2F7hgb.js';
2
- import { g as getState } from './state-CsIDHNPN.js';
3
- import { d as getRequestId, l as requireCapability, r as requireAdmin, e as errorResponse, k as jsonResponse } from './helpers-CfpNg3il.js';
4
- import { w as withSerialQueue } from './serial-queue-D9FEpYVv.js';
1
+ import { D as createLogger, d as applyInstall, p as checkDocker, m as buildComposeOptions, aZ as teardownRenamedProject, aQ as restoreSnapshot, e as applyStack, aR as restoreSnapshotAndApplyStack } from './src-DbArH65P.js';
2
+ import { g as getState } from './state-Bq8fep3F.js';
3
+ import { d as getRequestId, l as requireCapability, r as requireAdmin, k as jsonResponse, e as errorResponse } from './helpers-DxodR6tq.js';
4
+ import { w as withAdminUpdateLock } from './admin-update-lock-ZHLAwYiV.js';
5
5
  import './chunk-DOvWTNp_.js';
6
6
  import 'node:module';
7
7
  import './network-preset-CJ1RRnki.js';
8
+ import './dist-DtzrgNJ1.js';
8
9
  import 'node:fs';
9
10
  import 'node:child_process';
10
11
  import 'node:path';
@@ -22,8 +23,8 @@ import 'assert';
22
23
  import 'zlib';
23
24
  import 'node:assert';
24
25
  import 'node:fs/promises';
25
- import './endpoints-WTxemTcn.js';
26
- import './features-BE2x1a_a.js';
26
+ import './endpoints-IFTldlrt.js';
27
+ import './features-BW-bVsl8.js';
27
28
 
28
29
  //#region src/routes/api/host/install/+server.ts
29
30
  var logger = createLogger("install");
@@ -34,13 +35,8 @@ var POST = async (event) => {
34
35
  logger.info("install request received", { requestId });
35
36
  const authError = requireAdmin(event, requestId);
36
37
  if (authError) return authError;
37
- return withSerialQueue("admin:install", async () => {
38
- const state = getState();
39
- const lock = acquireInstallLock(state.dataDir);
40
- if (!lock) {
41
- logger.info("install rejected — another install/update is in progress", { requestId });
42
- return errorResponse(409, "install_in_progress", "Another install or update is already running. Wait for it to finish, or run 'openpalm unlock' to clear a stale lock.", {}, requestId);
43
- }
38
+ const state = getState();
39
+ return withAdminUpdateLock(state, requestId, async (lock) => {
44
40
  try {
45
41
  await applyInstall(state, { lock });
46
42
  if (!(await checkDocker()).ok) {
@@ -53,7 +49,21 @@ var POST = async (event) => {
53
49
  overallSuccess: true
54
50
  }, requestId);
55
51
  }
56
- const stackResult = await applyStack({ kind: "all" }, buildComposeOptions(state));
52
+ const composeOpts = buildComposeOptions(state);
53
+ const renameTeardown = await teardownRenamedProject(state);
54
+ if (renameTeardown.blocked) {
55
+ restoreSnapshot(state);
56
+ return errorResponse(409, "project_rename_blocked", renameTeardown.warning ?? "Project rename teardown failed", {}, requestId);
57
+ }
58
+ const stackResult = await applyStack({ kind: "all" }, composeOpts);
59
+ if (!stackResult.ok) try {
60
+ await restoreSnapshotAndApplyStack(state);
61
+ } catch (rollbackError) {
62
+ logger.error("failed to restore install snapshot", {
63
+ requestId,
64
+ error: rollbackError instanceof Error ? rollbackError.message : String(rollbackError)
65
+ });
66
+ }
57
67
  const overallSuccess = stackResult.ok;
58
68
  const status = stackResult.ok ? 200 : 502;
59
69
  logger.info("install completed", {
@@ -78,11 +88,9 @@ var POST = async (event) => {
78
88
  error: msg
79
89
  });
80
90
  return errorResponse(500, "install_failed", msg, {}, requestId);
81
- } finally {
82
- releaseInstallLock(lock);
83
91
  }
84
92
  });
85
93
  };
86
94
 
87
95
  export { POST };
88
- //# sourceMappingURL=_server.ts-C900vqOm.js.map
96
+ //# sourceMappingURL=_server.ts-YcvtqJwd.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts-YcvtqJwd.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/host/install/_server.ts.js"],"sourcesContent":["import { Ot as createLogger, _ as teardownRenamedProject, b as restoreSnapshot, l as restoreSnapshotAndApplyStack, r as applyInstall, t as buildComposeOptions } from \"../../../../../chunks/compose-args.js\";\nimport { i as checkDocker, t as applyStack } from \"../../../../../chunks/docker.js\";\nimport \"../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../chunks/state.js\";\nimport { a as getRequestId, c as jsonResponse, d as requireCapability, r as errorResponse, u as requireAdmin } from \"../../../../../chunks/helpers.js\";\nimport { t as withAdminUpdateLock } from \"../../../../../chunks/admin-update-lock.js\";\n//#region src/routes/api/host/install/+server.ts\nvar logger = createLogger(\"install\");\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst capabilityError = requireCapability(event, \"host:setup\", requestId);\n\tif (capabilityError) return capabilityError;\n\tlogger.info(\"install request received\", { requestId });\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst state = getState();\n\treturn withAdminUpdateLock(state, requestId, async (lock) => {\n\t\ttry {\n\t\t\tawait applyInstall(state, { lock });\n\t\t\tif (!(await checkDocker()).ok) {\n\t\t\t\tlogger.info(\"install completed (Docker unavailable — stack not started)\", { requestId });\n\t\t\t\treturn jsonResponse(200, {\n\t\t\t\t\tok: true,\n\t\t\t\t\tstarted: [],\n\t\t\t\t\tfailed: [],\n\t\t\t\t\tdockerAvailable: false,\n\t\t\t\t\toverallSuccess: true\n\t\t\t\t}, requestId);\n\t\t\t}\n\t\t\tconst composeOpts = buildComposeOptions(state);\n\t\t\tconst renameTeardown = await teardownRenamedProject(state);\n\t\t\tif (renameTeardown.blocked) {\n\t\t\t\trestoreSnapshot(state);\n\t\t\t\treturn errorResponse(409, \"project_rename_blocked\", renameTeardown.warning ?? \"Project rename teardown failed\", {}, requestId);\n\t\t\t}\n\t\t\tconst stackResult = await applyStack({ kind: \"all\" }, composeOpts);\n\t\t\tif (!stackResult.ok) try {\n\t\t\t\tawait restoreSnapshotAndApplyStack(state);\n\t\t\t} catch (rollbackError) {\n\t\t\t\tlogger.error(\"failed to restore install snapshot\", {\n\t\t\t\t\trequestId,\n\t\t\t\t\terror: rollbackError instanceof Error ? rollbackError.message : String(rollbackError)\n\t\t\t\t});\n\t\t\t}\n\t\t\tconst overallSuccess = stackResult.ok;\n\t\t\tconst status = stackResult.ok ? 200 : 502;\n\t\t\tlogger.info(\"install completed\", {\n\t\t\t\trequestId,\n\t\t\t\tdockerAvailable: true,\n\t\t\t\toverallSuccess,\n\t\t\t\tstartedCount: stackResult.started.length,\n\t\t\t\tfailedCount: stackResult.failed.length\n\t\t\t});\n\t\t\treturn jsonResponse(status, {\n\t\t\t\tok: overallSuccess,\n\t\t\t\tstarted: stackResult.started,\n\t\t\t\tfailed: stackResult.failed,\n\t\t\t\tdockerAvailable: true,\n\t\t\t\toverallSuccess,\n\t\t\t\t...stackResult.error ? { error: stackResult.error } : {}\n\t\t\t}, requestId);\n\t\t} catch (err) {\n\t\t\tconst msg = err instanceof Error ? err.message : String(err);\n\t\t\tlogger.error(\"install failed\", {\n\t\t\t\trequestId,\n\t\t\t\terror: msg\n\t\t\t});\n\t\t\treturn errorResponse(500, \"install_failed\", msg, {}, requestId);\n\t\t}\n\t});\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":"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"}
@@ -1,11 +1,12 @@
1
1
  import { j as json } from './exports-CcmcYU0M.js';
2
- import { af as isSetupComplete, aX as resolveOpenPalmHome, a3 as getAddonProfileSelection, c as annotateAddonProfileAvailability, a4 as getAddonProfiles } from './src-CQ2F7hgb.js';
3
- import { g as getState } from './state-CsIDHNPN.js';
4
- import { r as requireAdmin, d as getRequestId } from './helpers-CfpNg3il.js';
2
+ import { ad as isSetupComplete, aP as resolveOpenPalmHome, a1 as getAddonProfileSelection, c as annotateAddonProfileAvailability, a2 as getAddonProfiles } from './src-DbArH65P.js';
3
+ import { g as getState } from './state-Bq8fep3F.js';
4
+ import { r as requireAdmin, d as getRequestId } from './helpers-DxodR6tq.js';
5
5
  import './utils-OXHIhUb5.js';
6
6
  import './chunk-DOvWTNp_.js';
7
7
  import 'node:module';
8
8
  import './network-preset-CJ1RRnki.js';
9
+ import './dist-DtzrgNJ1.js';
9
10
  import 'node:fs';
10
11
  import 'node:child_process';
11
12
  import 'node:path';
@@ -23,8 +24,8 @@ import 'assert';
23
24
  import 'zlib';
24
25
  import 'node:assert';
25
26
  import 'node:fs/promises';
26
- import './endpoints-WTxemTcn.js';
27
- import './features-BE2x1a_a.js';
27
+ import './endpoints-IFTldlrt.js';
28
+ import './features-BW-bVsl8.js';
28
29
 
29
30
  //#region src/routes/api/setup/voice-profiles/+server.ts
30
31
  var GET = async (event) => {
@@ -41,4 +42,4 @@ var GET = async (event) => {
41
42
  };
42
43
 
43
44
  export { GET };
44
- //# sourceMappingURL=_server.ts-Cfm_KDhO.js.map
45
+ //# sourceMappingURL=_server.ts-iFah_o1y.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-Cfm_KDhO.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/setup/voice-profiles/_server.ts.js"],"sourcesContent":["import { r as json } from \"../../../../../chunks/exports.js\";\nimport { Tt as resolveOpenPalmHome, b as getAddonProfileSelection, x as getAddonProfiles, y as annotateAddonProfileAvailability } from \"../../../../../chunks/compose-args.js\";\nimport { B as isSetupComplete } from \"../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../chunks/state.js\";\nimport { a as getRequestId, u as requireAdmin } from \"../../../../../chunks/helpers.js\";\n//#region src/routes/api/setup/voice-profiles/+server.ts\nvar GET = async (event) => {\n\tif (isSetupComplete(resolveOpenPalmHome())) {\n\t\tconst authError = requireAdmin(event, getRequestId(event));\n\t\tif (authError) return authError;\n\t}\n\tconst state = getState();\n\treturn json({\n\t\tok: true,\n\t\tprofiles: await annotateAddonProfileAvailability(getAddonProfiles(state.homeDir, \"voice\")),\n\t\tselectedProfile: getAddonProfileSelection(state.homeDir, \"voice\")\n\t});\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,IAAI,eAAe,CAAC,mBAAmB,EAAE,CAAC,EAAE;AAC7C,EAAE,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;AAC5D,EAAE,IAAI,SAAS,EAAE,OAAO,SAAS;AACjC,CAAC;AACD,CAAC,MAAM,KAAK,GAAG,QAAQ,EAAE;AACzB,CAAC,OAAO,IAAI,CAAC;AACb,EAAE,EAAE,EAAE,IAAI;AACV,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC,gBAAgB,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AAC5F,EAAE,eAAe,EAAE,wBAAwB,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO;AAClE,EAAE,CAAC;AACH;;;;"}
1
+ {"version":3,"file":"_server.ts-iFah_o1y.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/setup/voice-profiles/_server.ts.js"],"sourcesContent":["import { r as json } from \"../../../../../chunks/exports.js\";\nimport { C as getAddonProfiles, S as getAddonProfileSelection, bt as resolveOpenPalmHome, x as annotateAddonProfileAvailability } from \"../../../../../chunks/compose-args.js\";\nimport { V as isSetupComplete } from \"../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../chunks/state.js\";\nimport { a as getRequestId, u as requireAdmin } from \"../../../../../chunks/helpers.js\";\n//#region src/routes/api/setup/voice-profiles/+server.ts\nvar GET = async (event) => {\n\tif (isSetupComplete(resolveOpenPalmHome())) {\n\t\tconst authError = requireAdmin(event, getRequestId(event));\n\t\tif (authError) return authError;\n\t}\n\tconst state = getState();\n\treturn json({\n\t\tok: true,\n\t\tprofiles: await annotateAddonProfileAvailability(getAddonProfiles(state.homeDir, \"voice\")),\n\t\tselectedProfile: getAddonProfileSelection(state.homeDir, \"voice\")\n\t});\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,IAAI,eAAe,CAAC,mBAAmB,EAAE,CAAC,EAAE;AAC7C,EAAE,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;AAC5D,EAAE,IAAI,SAAS,EAAE,OAAO,SAAS;AACjC,CAAC;AACD,CAAC,MAAM,KAAK,GAAG,QAAQ,EAAE;AACzB,CAAC,OAAO,IAAI,CAAC;AACb,EAAE,EAAE,EAAE,IAAI;AACV,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC,gBAAgB,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;AAC5F,EAAE,eAAe,EAAE,wBAAwB,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO;AAClE,EAAE,CAAC;AACH;;;;"}
@@ -1,13 +1,14 @@
1
1
  import { j as json } from './exports-CcmcYU0M.js';
2
2
  import { c as PROVIDER_KEY_MAP } from './network-preset-CJ1RRnki.js';
3
- import { af as isSetupComplete, aX as resolveOpenPalmHome, O as detectGpu, R as detectLocalProviders, Q as detectHostOpenCode, aJ as recommendSetup, j as authJsonPath } from './src-CQ2F7hgb.js';
4
- import { g as getState } from './state-CsIDHNPN.js';
5
- import { r as requireAdmin, d as getRequestId, g as getOpenCodeClient } from './helpers-CfpNg3il.js';
3
+ import { ad as isSetupComplete, aP as resolveOpenPalmHome, N as detectGpu, Q as detectLocalProviders, O as detectHostOpenCode, aD as recommendSetup, i as authJsonPath } from './src-DbArH65P.js';
4
+ import { g as getState } from './state-Bq8fep3F.js';
5
+ import { r as requireAdmin, d as getRequestId, g as getOpenCodeClient } from './helpers-DxodR6tq.js';
6
6
  import { a as LOCAL_PROVIDER_IDS } from './constants-1vPYIIwP.js';
7
7
  import { existsSync, readFileSync } from 'node:fs';
8
8
  import './utils-OXHIhUb5.js';
9
9
  import './chunk-DOvWTNp_.js';
10
10
  import 'node:module';
11
+ import './dist-DtzrgNJ1.js';
11
12
  import 'node:child_process';
12
13
  import 'node:path';
13
14
  import 'buffer';
@@ -24,8 +25,8 @@ import 'assert';
24
25
  import 'zlib';
25
26
  import 'node:assert';
26
27
  import 'node:fs/promises';
27
- import './endpoints-WTxemTcn.js';
28
- import './features-BE2x1a_a.js';
28
+ import './endpoints-IFTldlrt.js';
29
+ import './features-BW-bVsl8.js';
29
30
 
30
31
  //#region src/routes/api/setup/recommend/+server.ts
31
32
  /**
@@ -100,4 +101,4 @@ var GET = async (event) => {
100
101
  };
101
102
 
102
103
  export { GET };
103
- //# sourceMappingURL=_server.ts-DmNziNap.js.map
104
+ //# sourceMappingURL=_server.ts-m7rCPG1J.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-DmNziNap.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/setup/recommend/_server.ts.js"],"sourcesContent":["import { r as json } from \"../../../../../chunks/exports.js\";\nimport { i as PROVIDER_KEY_MAP } from \"../../../../../chunks/provider-constants.js\";\nimport { Tt as resolveOpenPalmHome, dt as authJsonPath } from \"../../../../../chunks/compose-args.js\";\nimport { B as isSetupComplete, d as recommendSetup, f as detectGpu, p as detectLocalProviders, s as detectHostOpenCode } from \"../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../chunks/state.js\";\nimport { a as getRequestId, i as getOpenCodeClient, u as requireAdmin } from \"../../../../../chunks/helpers.js\";\nimport { r as LOCAL_PROVIDER_IDS } from \"../../../../../chunks/constants.js\";\nimport { existsSync, readFileSync } from \"node:fs\";\n//#region src/routes/api/setup/recommend/+server.ts\n/**\n* Providers to exclude from the detected \"cloud\" list: everything that runs on\n* this computer (LOCAL_PROVIDER_IDS) plus `openai-compatible`. Custom\n* openai-compatible endpoints are detected separately as host providers, so\n* counting them as cloud would double-count them here — this is a server-side\n* recommendation concern only, which is why it stays a superset rather than\n* being folded into the shared LOCAL_PROVIDER_IDS.\n*/\nvar CLOUD_EXCLUDED_PROVIDER_IDS = new Set([...LOCAL_PROVIDER_IDS, \"openai-compatible\"]);\n/** Providers that have credentials stored in OP_HOME auth.json (API key or OAuth). */\nfunction authJsonConnected() {\n\ttry {\n\t\tconst path = authJsonPath(getState());\n\t\tif (!existsSync(path)) return [];\n\t\tconst data = JSON.parse(readFileSync(path, \"utf-8\"));\n\t\treturn Object.keys(data ?? {});\n\t} catch {\n\t\treturn [];\n\t}\n}\n/** Fallback: providers whose API-key env var is present in the process env. */\nfunction envKeyConnected() {\n\tconst out = [];\n\tfor (const [provider, envVar] of Object.entries(PROVIDER_KEY_MAP)) if (process.env[envVar]) out.push(provider);\n\treturn out;\n}\n/** Cloud providers = OpenCode connected[] ∪ auth.json credentials, minus locals.\n* Falls back to env-key detection when OpenCode is unavailable. */\nasync function detectCloudProviders() {\n\tlet connected;\n\ttry {\n\t\tconst client = getOpenCodeClient();\n\t\tif (await client.isAvailable()) {\n\t\t\tconst catalog = await client.proxy(\"/provider\");\n\t\t\tconst raw = catalog.ok ? catalog.data : {};\n\t\t\tconnected = Array.from(new Set([...raw.connected ?? [], ...authJsonConnected()]));\n\t\t} else connected = Array.from(new Set([...authJsonConnected(), ...envKeyConnected()]));\n\t} catch {\n\t\tconnected = Array.from(new Set([...authJsonConnected(), ...envKeyConnected()]));\n\t}\n\treturn connected.filter((id) => !CLOUD_EXCLUDED_PROVIDER_IDS.has(id));\n}\nvar GET = async (event) => {\n\tif (isSetupComplete(resolveOpenPalmHome())) {\n\t\tconst authError = requireAdmin(event, getRequestId(event));\n\t\tif (authError) return authError;\n\t}\n\tconst [cloudProviders, gpu, localDetections, hostOpenCode] = await Promise.all([\n\t\tdetectCloudProviders(),\n\t\tdetectGpu(),\n\t\tdetectLocalProviders(),\n\t\tPromise.resolve(detectHostOpenCode())\n\t]);\n\tconst hostProviders = localDetections.filter((p) => p.available).map((p) => ({\n\t\tprovider: p.provider,\n\t\turl: p.url\n\t}));\n\treturn json({\n\t\tok: true,\n\t\trecommendation: recommendSetup({\n\t\t\tcloudProviders,\n\t\t\thostProviders,\n\t\t\tgpu,\n\t\t\thostCredentialCount: hostOpenCode.credentialCount\n\t\t}),\n\t\tgpu,\n\t\tcloudProviders,\n\t\thostProviders\n\t});\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_server.ts-m7rCPG1J.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/setup/recommend/_server.ts.js"],"sourcesContent":["import { r as json } from \"../../../../../chunks/exports.js\";\nimport { i as PROVIDER_KEY_MAP } from \"../../../../../chunks/provider-constants.js\";\nimport { bt as resolveOpenPalmHome, ut as authJsonPath } from \"../../../../../chunks/compose-args.js\";\nimport { V as isSetupComplete, c as detectHostOpenCode, f as recommendSetup, m as detectLocalProviders, p as detectGpu } from \"../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../chunks/state.js\";\nimport { a as getRequestId, i as getOpenCodeClient, u as requireAdmin } from \"../../../../../chunks/helpers.js\";\nimport { r as LOCAL_PROVIDER_IDS } from \"../../../../../chunks/constants.js\";\nimport { existsSync, readFileSync } from \"node:fs\";\n//#region src/routes/api/setup/recommend/+server.ts\n/**\n* Providers to exclude from the detected \"cloud\" list: everything that runs on\n* this computer (LOCAL_PROVIDER_IDS) plus `openai-compatible`. Custom\n* openai-compatible endpoints are detected separately as host providers, so\n* counting them as cloud would double-count them here — this is a server-side\n* recommendation concern only, which is why it stays a superset rather than\n* being folded into the shared LOCAL_PROVIDER_IDS.\n*/\nvar CLOUD_EXCLUDED_PROVIDER_IDS = new Set([...LOCAL_PROVIDER_IDS, \"openai-compatible\"]);\n/** Providers that have credentials stored in OP_HOME auth.json (API key or OAuth). */\nfunction authJsonConnected() {\n\ttry {\n\t\tconst path = authJsonPath(getState());\n\t\tif (!existsSync(path)) return [];\n\t\tconst data = JSON.parse(readFileSync(path, \"utf-8\"));\n\t\treturn Object.keys(data ?? {});\n\t} catch {\n\t\treturn [];\n\t}\n}\n/** Fallback: providers whose API-key env var is present in the process env. */\nfunction envKeyConnected() {\n\tconst out = [];\n\tfor (const [provider, envVar] of Object.entries(PROVIDER_KEY_MAP)) if (process.env[envVar]) out.push(provider);\n\treturn out;\n}\n/** Cloud providers = OpenCode connected[] ∪ auth.json credentials, minus locals.\n* Falls back to env-key detection when OpenCode is unavailable. */\nasync function detectCloudProviders() {\n\tlet connected;\n\ttry {\n\t\tconst client = getOpenCodeClient();\n\t\tif (await client.isAvailable()) {\n\t\t\tconst catalog = await client.proxy(\"/provider\");\n\t\t\tconst raw = catalog.ok ? catalog.data : {};\n\t\t\tconnected = Array.from(new Set([...raw.connected ?? [], ...authJsonConnected()]));\n\t\t} else connected = Array.from(new Set([...authJsonConnected(), ...envKeyConnected()]));\n\t} catch {\n\t\tconnected = Array.from(new Set([...authJsonConnected(), ...envKeyConnected()]));\n\t}\n\treturn connected.filter((id) => !CLOUD_EXCLUDED_PROVIDER_IDS.has(id));\n}\nvar GET = async (event) => {\n\tif (isSetupComplete(resolveOpenPalmHome())) {\n\t\tconst authError = requireAdmin(event, getRequestId(event));\n\t\tif (authError) return authError;\n\t}\n\tconst [cloudProviders, gpu, localDetections, hostOpenCode] = await Promise.all([\n\t\tdetectCloudProviders(),\n\t\tdetectGpu(),\n\t\tdetectLocalProviders(),\n\t\tPromise.resolve(detectHostOpenCode())\n\t]);\n\tconst hostProviders = localDetections.filter((p) => p.available).map((p) => ({\n\t\tprovider: p.provider,\n\t\turl: p.url\n\t}));\n\treturn json({\n\t\tok: true,\n\t\trecommendation: recommendSetup({\n\t\t\tcloudProviders,\n\t\t\thostProviders,\n\t\t\tgpu,\n\t\t\thostCredentialCount: hostOpenCode.credentialCount\n\t\t}),\n\t\tgpu,\n\t\tcloudProviders,\n\t\thostProviders\n\t});\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
- import { F as createLogger, p as checkDocker, t as composeDown, n as buildComposeOptions, f as applyUninstall } from './src-CQ2F7hgb.js';
2
- import { g as getState } from './state-CsIDHNPN.js';
3
- import { d as getRequestId, l as requireCapability, r as requireAdmin, k as jsonResponse, e as errorResponse } from './helpers-CfpNg3il.js';
4
- import { w as withSerialQueue } from './serial-queue-D9FEpYVv.js';
1
+ import { D as createLogger, p as checkDocker, aZ as teardownRenamedProject, t as composeDown, m as buildComposeOptions, f as applyUninstall } from './src-DbArH65P.js';
2
+ import { g as getState } from './state-Bq8fep3F.js';
3
+ import { d as getRequestId, l as requireCapability, r as requireAdmin, e as errorResponse, k as jsonResponse } from './helpers-DxodR6tq.js';
4
+ import { w as withAdminUpdateLock } from './admin-update-lock-ZHLAwYiV.js';
5
5
  import './chunk-DOvWTNp_.js';
6
6
  import 'node:module';
7
7
  import './network-preset-CJ1RRnki.js';
8
+ import './dist-DtzrgNJ1.js';
8
9
  import 'node:fs';
9
10
  import 'node:child_process';
10
11
  import 'node:path';
@@ -22,8 +23,8 @@ import 'assert';
22
23
  import 'zlib';
23
24
  import 'node:assert';
24
25
  import 'node:fs/promises';
25
- import './endpoints-WTxemTcn.js';
26
- import './features-BE2x1a_a.js';
26
+ import './endpoints-IFTldlrt.js';
27
+ import './features-BW-bVsl8.js';
27
28
 
28
29
  //#region src/routes/api/host/uninstall/+server.ts
29
30
  var logger = createLogger("uninstall");
@@ -34,16 +35,20 @@ var POST = async (event) => {
34
35
  logger.info("uninstall request received", { requestId });
35
36
  const authError = requireAdmin(event, requestId);
36
37
  if (authError) return authError;
37
- return withSerialQueue("admin:uninstall", async () => {
38
+ const state = getState();
39
+ return withAdminUpdateLock(state, requestId, async (lock) => {
38
40
  try {
39
- const state = getState();
40
41
  const dockerCheck = await checkDocker();
41
- if (dockerCheck.ok) await composeDown(buildComposeOptions(state));
42
+ if (dockerCheck.ok) {
43
+ const renameTeardown = await teardownRenamedProject(state);
44
+ if (renameTeardown.blocked) return errorResponse(502, "project_rename_teardown_failed", renameTeardown.warning ?? "Failed to stop the previous project", {}, requestId);
45
+ await composeDown(buildComposeOptions(state));
46
+ }
42
47
  logger.info("stopping containers and applying uninstall", {
43
48
  requestId,
44
49
  dockerAvailable: dockerCheck.ok
45
50
  });
46
- const result = await applyUninstall(state);
51
+ const result = await applyUninstall(state, { lock });
47
52
  logger.info("uninstall completed", {
48
53
  requestId,
49
54
  stopped: result.stopped
@@ -65,4 +70,4 @@ var POST = async (event) => {
65
70
  };
66
71
 
67
72
  export { POST };
68
- //# sourceMappingURL=_server.ts-CGggA6h4.js.map
73
+ //# sourceMappingURL=_server.ts-rVmsBymo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts-rVmsBymo.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/host/uninstall/_server.ts.js"],"sourcesContent":["import { Ot as createLogger, _ as teardownRenamedProject, i as applyUninstall, t as buildComposeOptions } from \"../../../../../chunks/compose-args.js\";\nimport { i as checkDocker, l as composeDown } from \"../../../../../chunks/docker.js\";\nimport \"../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../chunks/state.js\";\nimport { a as getRequestId, c as jsonResponse, d as requireCapability, r as errorResponse, u as requireAdmin } from \"../../../../../chunks/helpers.js\";\nimport { t as withAdminUpdateLock } from \"../../../../../chunks/admin-update-lock.js\";\n//#region src/routes/api/host/uninstall/+server.ts\nvar logger = createLogger(\"uninstall\");\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst capabilityError = requireCapability(event, \"host:recovery\", requestId);\n\tif (capabilityError) return capabilityError;\n\tlogger.info(\"uninstall request received\", { requestId });\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst state = getState();\n\treturn withAdminUpdateLock(state, requestId, async (lock) => {\n\t\ttry {\n\t\t\tconst dockerCheck = await checkDocker();\n\t\t\tif (dockerCheck.ok) {\n\t\t\t\tconst renameTeardown = await teardownRenamedProject(state);\n\t\t\t\tif (renameTeardown.blocked) return errorResponse(502, \"project_rename_teardown_failed\", renameTeardown.warning ?? \"Failed to stop the previous project\", {}, requestId);\n\t\t\t\tawait composeDown(buildComposeOptions(state));\n\t\t\t}\n\t\t\tlogger.info(\"stopping containers and applying uninstall\", {\n\t\t\t\trequestId,\n\t\t\t\tdockerAvailable: dockerCheck.ok\n\t\t\t});\n\t\t\tconst result = await applyUninstall(state, { lock });\n\t\t\tlogger.info(\"uninstall completed\", {\n\t\t\t\trequestId,\n\t\t\t\tstopped: result.stopped\n\t\t\t});\n\t\t\treturn jsonResponse(200, {\n\t\t\t\tok: true,\n\t\t\t\t...result,\n\t\t\t\tdockerAvailable: dockerCheck.ok\n\t\t\t}, requestId);\n\t\t} catch (err) {\n\t\t\tconst msg = err instanceof Error ? err.message : String(err);\n\t\t\tlogger.error(\"uninstall failed\", {\n\t\t\t\trequestId,\n\t\t\t\terror: msg\n\t\t\t});\n\t\t\treturn errorResponse(500, \"uninstall_failed\", msg, {}, requestId);\n\t\t}\n\t});\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA;AACA,IAAI,MAAM,GAAG,YAAY,CAAC,WAAW,CAAC;AACnC,IAAC,IAAI,GAAG,OAAO,KAAK,KAAK;AAC5B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,eAAe,GAAG,iBAAiB,CAAC,KAAK,EAAE,eAAe,EAAE,SAAS,CAAC;AAC7E,CAAC,IAAI,eAAe,EAAE,OAAO,eAAe;AAC5C,CAAC,MAAM,CAAC,IAAI,CAAC,4BAA4B,EAAE,EAAE,SAAS,EAAE,CAAC;AACzD,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AACjD,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS;AAChC,CAAC,MAAM,KAAK,GAAG,QAAQ,EAAE;AACzB,CAAC,OAAO,mBAAmB,CAAC,KAAK,EAAE,SAAS,EAAE,OAAO,IAAI,KAAK;AAC9D,EAAE,IAAI;AACN,GAAG,MAAM,WAAW,GAAG,MAAM,WAAW,EAAE;AAC1C,GAAG,IAAI,WAAW,CAAC,EAAE,EAAE;AACvB,IAAI,MAAM,cAAc,GAAG,MAAM,sBAAsB,CAAC,KAAK,CAAC;AAC9D,IAAI,IAAI,cAAc,CAAC,OAAO,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,gCAAgC,EAAE,cAAc,CAAC,OAAO,IAAI,qCAAqC,EAAE,EAAE,EAAE,SAAS,CAAC;AAC3K,IAAI,MAAM,WAAW,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC;AACjD,GAAG;AACH,GAAG,MAAM,CAAC,IAAI,CAAC,4CAA4C,EAAE;AAC7D,IAAI,SAAS;AACb,IAAI,eAAe,EAAE,WAAW,CAAC;AACjC,IAAI,CAAC;AACL,GAAG,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC;AACvD,GAAG,MAAM,CAAC,IAAI,CAAC,qBAAqB,EAAE;AACtC,IAAI,SAAS;AACb,IAAI,OAAO,EAAE,MAAM,CAAC;AACpB,IAAI,CAAC;AACL,GAAG,OAAO,YAAY,CAAC,GAAG,EAAE;AAC5B,IAAI,EAAE,EAAE,IAAI;AACZ,IAAI,GAAG,MAAM;AACb,IAAI,eAAe,EAAE,WAAW,CAAC;AACjC,IAAI,EAAE,SAAS,CAAC;AAChB,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,GAAG,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,GAAG,GAAG,CAAC,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC;AAC/D,GAAG,MAAM,CAAC,KAAK,CAAC,kBAAkB,EAAE;AACpC,IAAI,SAAS;AACb,IAAI,KAAK,EAAE;AACX,IAAI,CAAC;AACL,GAAG,OAAO,aAAa,CAAC,GAAG,EAAE,kBAAkB,EAAE,GAAG,EAAE,EAAE,EAAE,SAAS,CAAC;AACpE,EAAE;AACF,CAAC,CAAC,CAAC;AACH;;;;"}
@@ -1,13 +1,14 @@
1
1
  import { j as json } from './exports-CcmcYU0M.js';
2
- import { aD as readStackEnv, aF as readStackSecretEnv, c as annotateAddonProfileAvailability, a4 as getAddonProfiles, a3 as getAddonProfileSelection, ak as listEnabledAddonIds } from './src-CQ2F7hgb.js';
2
+ import { ax as readStackEnv, az as readStackSecretEnv, c as annotateAddonProfileAvailability, a2 as getAddonProfiles, a1 as getAddonProfileSelection, ah as listEnabledAddonIds } from './src-DbArH65P.js';
3
3
  import { f as detectNetworkPreset } from './network-preset-CJ1RRnki.js';
4
- import { g as getState } from './state-CsIDHNPN.js';
5
- import { r as requireAdmin, d as getRequestId, f as getUiLoginPassword } from './helpers-CfpNg3il.js';
4
+ import { g as getState } from './state-Bq8fep3F.js';
5
+ import { r as requireAdmin, d as getRequestId, f as getUiLoginPassword } from './helpers-DxodR6tq.js';
6
6
  import { existsSync, readFileSync } from 'node:fs';
7
7
  import { join } from 'node:path';
8
8
  import './utils-OXHIhUb5.js';
9
9
  import './chunk-DOvWTNp_.js';
10
10
  import 'node:module';
11
+ import './dist-DtzrgNJ1.js';
11
12
  import 'node:child_process';
12
13
  import 'buffer';
13
14
  import 'node:url';
@@ -23,8 +24,8 @@ import 'assert';
23
24
  import 'zlib';
24
25
  import 'node:assert';
25
26
  import 'node:fs/promises';
26
- import './endpoints-WTxemTcn.js';
27
- import './features-BE2x1a_a.js';
27
+ import './endpoints-IFTldlrt.js';
28
+ import './features-BW-bVsl8.js';
28
29
 
29
30
  //#region src/routes/api/setup/current-config/+server.ts
30
31
  function readAkmConfig(configDir) {
@@ -148,4 +149,4 @@ var GET = async (event) => {
148
149
  };
149
150
 
150
151
  export { GET };
151
- //# sourceMappingURL=_server.ts-QSEYZqU0.js.map
152
+ //# sourceMappingURL=_server.ts-s2Seq_VN.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-QSEYZqU0.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/setup/current-config/_server.ts.js"],"sourcesContent":["import { r as json } from \"../../../../../chunks/exports.js\";\nimport { E as listEnabledAddonIds, Q as readStackSecretEnv, X as readStackEnv, b as getAddonProfileSelection, x as getAddonProfiles, y as annotateAddonProfileAvailability } from \"../../../../../chunks/compose-args.js\";\nimport \"../../../../../chunks/src.js\";\nimport { i as detectNetworkPreset } from \"../../../../../chunks/network-preset.js\";\nimport { t as getState } from \"../../../../../chunks/state.js\";\nimport { a as getRequestId, g as getUiLoginPassword, u as requireAdmin } from \"../../../../../chunks/helpers.js\";\nimport { existsSync, readFileSync } from \"node:fs\";\nimport { join } from \"node:path\";\n//#region src/routes/api/setup/current-config/+server.ts\nfunction readAkmConfig(configDir) {\n\tconst path = join(configDir, \"akm\", \"config.json\");\n\tif (!existsSync(path)) return {};\n\ttry {\n\t\treturn JSON.parse(readFileSync(path, \"utf-8\"));\n\t} catch {\n\t\treturn {};\n\t}\n}\n/**\n* Read model preferences persisted by importHostOpenCode into\n* <configDir>/assistant/opencode.json. This is the on-disk source of truth\n* after a host import; reusing it means wizard reruns restore the same\n* preferences without re-detecting the (possibly absent) host install.\n* Returns undefined if the file doesn't exist or contains no model keys.\n*/\nfunction readPersistedModelPreferences(configDir) {\n\tconst path = join(configDir, \"assistant\", \"opencode.json\");\n\tif (!existsSync(path)) return void 0;\n\ttry {\n\t\tconst parsed = JSON.parse(readFileSync(path, \"utf-8\"));\n\t\tconst prefs = {};\n\t\tif (typeof parsed.model === \"string\" && parsed.model) prefs.model = parsed.model;\n\t\tif (typeof parsed.small_model === \"string\" && parsed.small_model) prefs.small_model = parsed.small_model;\n\t\treturn prefs.model || prefs.small_model ? prefs : void 0;\n\t} catch {\n\t\treturn;\n\t}\n}\nfunction deriveBaseUrl(endpoint) {\n\tif (!endpoint) return \"\";\n\treturn endpoint.replace(/\\/chat\\/completions\\/?$/, \"\").replace(/\\/embeddings\\/?$/, \"\").replace(/\\/+$/, \"\");\n}\nvar GET = async (event) => {\n\tconst authError = requireAdmin(event, getRequestId(event));\n\tif (authError) return authError;\n\tconst state = getState();\n\tconst configured = getUiLoginPassword();\n\tconst env = readStackEnv(state.homeDir);\n\tconst secretEnv = readStackSecretEnv(state.homeDir);\n\tconst akm = readAkmConfig(state.configDir);\n\tconst importedModelPreferences = readPersistedModelPreferences(state.configDir);\n\tconst voiceProfiles = await annotateAddonProfileAvailability(getAddonProfiles(state.homeDir, \"voice\"));\n\tconst selectedVoiceProfile = getAddonProfileSelection(state.homeDir, \"voice\");\n\tconst ollamaProfiles = await annotateAddonProfileAvailability(getAddonProfiles(state.homeDir, \"ollama\"));\n\tconst selectedOllamaProfile = getAddonProfileSelection(state.homeDir, \"ollama\");\n\tconst hostHome = process.env.HOME ?? process.env.USERPROFILE ?? \"\";\n\tconst hostAkm = !!hostHome && env.OP_AKM_STASH === `${hostHome}/akm` && env.OP_AKM_CONFIG === `${hostHome}/.config/akm`;\n\tconst meta = (envKey) => ({\n\t\tenvKey,\n\t\tpresent: Boolean(secretEnv[envKey])\n\t});\n\tconst discord = {};\n\tfor (const [field, envKey] of Object.entries({\n\t\tbotToken: \"DISCORD_BOT_TOKEN\",\n\t\tapplicationId: \"DISCORD_APPLICATION_ID\",\n\t\tregisterCommands: \"DISCORD_REGISTER_COMMANDS\",\n\t\tallowedGuilds: \"DISCORD_ALLOWED_GUILDS\",\n\t\tallowedRoles: \"DISCORD_ALLOWED_ROLES\",\n\t\tallowedUsers: \"DISCORD_ALLOWED_USERS\",\n\t\tblockedUsers: \"DISCORD_BLOCKED_USERS\"\n\t})) if (secretEnv[envKey]) discord[field] = meta(envKey);\n\tconst slack = {};\n\tfor (const [field, envKey] of Object.entries({\n\t\tslackBotToken: \"SLACK_BOT_TOKEN\",\n\t\tslackAppToken: \"SLACK_APP_TOKEN\",\n\t\tallowedChannels: \"SLACK_ALLOWED_CHANNELS\",\n\t\tallowedUsers: \"SLACK_ALLOWED_USERS\",\n\t\tblockedUsers: \"SLACK_BLOCKED_USERS\"\n\t})) if (secretEnv[envKey]) slack[field] = meta(envKey);\n\tconst portalCredentials = {};\n\tif (Object.keys(discord).length > 0) portalCredentials.discord = discord;\n\tif (Object.keys(slack).length > 0) portalCredentials.slack = slack;\n\treturn json({\n\t\tok: true,\n\t\thasPassword: typeof configured === \"string\" && configured.length > 0,\n\t\tassistantVersion: env.OP_ASSISTANT_VERSION ?? \"\",\n\t\tguardianVersion: env.OP_GUARDIAN_VERSION ?? \"\",\n\t\tportalVersion: env.OP_PORTAL_VERSION ?? \"\",\n\t\tvoiceVersion: env.OP_VOICE_VERSION ?? \"\",\n\t\thostAkm,\n\t\tllm: akm.llm ? {\n\t\t\tprovider: akm.llm.provider ?? \"\",\n\t\t\tmodel: akm.llm.model ?? \"\",\n\t\t\tbaseUrl: deriveBaseUrl(akm.llm.endpoint)\n\t\t} : null,\n\t\tembedding: akm.embedding ? {\n\t\t\tprovider: akm.embedding.provider ?? \"\",\n\t\t\tmodel: akm.embedding.model ?? \"\",\n\t\t\tdims: akm.embedding.dimension ?? 0,\n\t\t\tbaseUrl: deriveBaseUrl(akm.embedding.endpoint)\n\t\t} : null,\n\t\tvoice: {\n\t\t\ttts: {\n\t\t\t\tengine: env.OP_TTS_ENGINE ?? \"\",\n\t\t\t\tbaseURL: env.OP_TTS_BASE_URL ?? \"\",\n\t\t\t\tmodel: env.OP_TTS_MODEL ?? \"\",\n\t\t\t\tvoice: env.OP_TTS_VOICE ?? \"\"\n\t\t\t},\n\t\t\tstt: {\n\t\t\t\tengine: env.OP_STT_ENGINE ?? \"\",\n\t\t\t\tbaseURL: env.OP_STT_BASE_URL ?? \"\",\n\t\t\t\tmodel: env.OP_STT_MODEL ?? \"\",\n\t\t\t\tlanguage: env.OP_STT_LANGUAGE ?? \"\"\n\t\t\t},\n\t\t\tprofiles: voiceProfiles,\n\t\t\tselectedProfile: selectedVoiceProfile\n\t\t},\n\t\tollama: {\n\t\t\tprofiles: ollamaProfiles,\n\t\t\tselectedProfile: selectedOllamaProfile\n\t\t},\n\t\tenabledAddons: listEnabledAddonIds(state.homeDir),\n\t\tportalCredentials,\n\t\timportedModelPreferences: importedModelPreferences ?? null,\n\t\tnetwork: { preset: detectNetworkPreset(env) },\n\t\thasOpencodePassword: Boolean(secretEnv.OP_OPENCODE_PASSWORD)\n\t});\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_server.ts-s2Seq_VN.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/setup/current-config/_server.ts.js"],"sourcesContent":["import { r as json } from \"../../../../../chunks/exports.js\";\nimport { C as getAddonProfiles, O as listEnabledAddonIds, S as getAddonProfileSelection, Y as readStackEnv, Z as readStackSecretEnv, x as annotateAddonProfileAvailability } from \"../../../../../chunks/compose-args.js\";\nimport \"../../../../../chunks/src.js\";\nimport { i as detectNetworkPreset } from \"../../../../../chunks/network-preset.js\";\nimport { t as getState } from \"../../../../../chunks/state.js\";\nimport { a as getRequestId, g as getUiLoginPassword, u as requireAdmin } from \"../../../../../chunks/helpers.js\";\nimport { existsSync, readFileSync } from \"node:fs\";\nimport { join } from \"node:path\";\n//#region src/routes/api/setup/current-config/+server.ts\nfunction readAkmConfig(configDir) {\n\tconst path = join(configDir, \"akm\", \"config.json\");\n\tif (!existsSync(path)) return {};\n\ttry {\n\t\treturn JSON.parse(readFileSync(path, \"utf-8\"));\n\t} catch {\n\t\treturn {};\n\t}\n}\n/**\n* Read model preferences persisted by importHostOpenCode into\n* <configDir>/assistant/opencode.json. This is the on-disk source of truth\n* after a host import; reusing it means wizard reruns restore the same\n* preferences without re-detecting the (possibly absent) host install.\n* Returns undefined if the file doesn't exist or contains no model keys.\n*/\nfunction readPersistedModelPreferences(configDir) {\n\tconst path = join(configDir, \"assistant\", \"opencode.json\");\n\tif (!existsSync(path)) return void 0;\n\ttry {\n\t\tconst parsed = JSON.parse(readFileSync(path, \"utf-8\"));\n\t\tconst prefs = {};\n\t\tif (typeof parsed.model === \"string\" && parsed.model) prefs.model = parsed.model;\n\t\tif (typeof parsed.small_model === \"string\" && parsed.small_model) prefs.small_model = parsed.small_model;\n\t\treturn prefs.model || prefs.small_model ? prefs : void 0;\n\t} catch {\n\t\treturn;\n\t}\n}\nfunction deriveBaseUrl(endpoint) {\n\tif (!endpoint) return \"\";\n\treturn endpoint.replace(/\\/chat\\/completions\\/?$/, \"\").replace(/\\/embeddings\\/?$/, \"\").replace(/\\/+$/, \"\");\n}\nvar GET = async (event) => {\n\tconst authError = requireAdmin(event, getRequestId(event));\n\tif (authError) return authError;\n\tconst state = getState();\n\tconst configured = getUiLoginPassword();\n\tconst env = readStackEnv(state.homeDir);\n\tconst secretEnv = readStackSecretEnv(state.homeDir);\n\tconst akm = readAkmConfig(state.configDir);\n\tconst importedModelPreferences = readPersistedModelPreferences(state.configDir);\n\tconst voiceProfiles = await annotateAddonProfileAvailability(getAddonProfiles(state.homeDir, \"voice\"));\n\tconst selectedVoiceProfile = getAddonProfileSelection(state.homeDir, \"voice\");\n\tconst ollamaProfiles = await annotateAddonProfileAvailability(getAddonProfiles(state.homeDir, \"ollama\"));\n\tconst selectedOllamaProfile = getAddonProfileSelection(state.homeDir, \"ollama\");\n\tconst hostHome = process.env.HOME ?? process.env.USERPROFILE ?? \"\";\n\tconst hostAkm = !!hostHome && env.OP_AKM_STASH === `${hostHome}/akm` && env.OP_AKM_CONFIG === `${hostHome}/.config/akm`;\n\tconst meta = (envKey) => ({\n\t\tenvKey,\n\t\tpresent: Boolean(secretEnv[envKey])\n\t});\n\tconst discord = {};\n\tfor (const [field, envKey] of Object.entries({\n\t\tbotToken: \"DISCORD_BOT_TOKEN\",\n\t\tapplicationId: \"DISCORD_APPLICATION_ID\",\n\t\tregisterCommands: \"DISCORD_REGISTER_COMMANDS\",\n\t\tallowedGuilds: \"DISCORD_ALLOWED_GUILDS\",\n\t\tallowedRoles: \"DISCORD_ALLOWED_ROLES\",\n\t\tallowedUsers: \"DISCORD_ALLOWED_USERS\",\n\t\tblockedUsers: \"DISCORD_BLOCKED_USERS\"\n\t})) if (secretEnv[envKey]) discord[field] = meta(envKey);\n\tconst slack = {};\n\tfor (const [field, envKey] of Object.entries({\n\t\tslackBotToken: \"SLACK_BOT_TOKEN\",\n\t\tslackAppToken: \"SLACK_APP_TOKEN\",\n\t\tallowedChannels: \"SLACK_ALLOWED_CHANNELS\",\n\t\tallowedUsers: \"SLACK_ALLOWED_USERS\",\n\t\tblockedUsers: \"SLACK_BLOCKED_USERS\"\n\t})) if (secretEnv[envKey]) slack[field] = meta(envKey);\n\tconst portalCredentials = {};\n\tif (Object.keys(discord).length > 0) portalCredentials.discord = discord;\n\tif (Object.keys(slack).length > 0) portalCredentials.slack = slack;\n\treturn json({\n\t\tok: true,\n\t\thasPassword: typeof configured === \"string\" && configured.length > 0,\n\t\tassistantVersion: env.OP_ASSISTANT_VERSION ?? \"\",\n\t\tguardianVersion: env.OP_GUARDIAN_VERSION ?? \"\",\n\t\tportalVersion: env.OP_PORTAL_VERSION ?? \"\",\n\t\tvoiceVersion: env.OP_VOICE_VERSION ?? \"\",\n\t\thostAkm,\n\t\tllm: akm.llm ? {\n\t\t\tprovider: akm.llm.provider ?? \"\",\n\t\t\tmodel: akm.llm.model ?? \"\",\n\t\t\tbaseUrl: deriveBaseUrl(akm.llm.endpoint)\n\t\t} : null,\n\t\tembedding: akm.embedding ? {\n\t\t\tprovider: akm.embedding.provider ?? \"\",\n\t\t\tmodel: akm.embedding.model ?? \"\",\n\t\t\tdims: akm.embedding.dimension ?? 0,\n\t\t\tbaseUrl: deriveBaseUrl(akm.embedding.endpoint)\n\t\t} : null,\n\t\tvoice: {\n\t\t\ttts: {\n\t\t\t\tengine: env.OP_TTS_ENGINE ?? \"\",\n\t\t\t\tbaseURL: env.OP_TTS_BASE_URL ?? \"\",\n\t\t\t\tmodel: env.OP_TTS_MODEL ?? \"\",\n\t\t\t\tvoice: env.OP_TTS_VOICE ?? \"\"\n\t\t\t},\n\t\t\tstt: {\n\t\t\t\tengine: env.OP_STT_ENGINE ?? \"\",\n\t\t\t\tbaseURL: env.OP_STT_BASE_URL ?? \"\",\n\t\t\t\tmodel: env.OP_STT_MODEL ?? \"\",\n\t\t\t\tlanguage: env.OP_STT_LANGUAGE ?? \"\"\n\t\t\t},\n\t\t\tprofiles: voiceProfiles,\n\t\t\tselectedProfile: selectedVoiceProfile\n\t\t},\n\t\tollama: {\n\t\t\tprofiles: ollamaProfiles,\n\t\t\tselectedProfile: selectedOllamaProfile\n\t\t},\n\t\tenabledAddons: listEnabledAddonIds(state.homeDir),\n\t\tportalCredentials,\n\t\timportedModelPreferences: importedModelPreferences ?? null,\n\t\tnetwork: { preset: detectNetworkPreset(env) },\n\t\thasOpencodePassword: Boolean(secretEnv.OP_OPENCODE_PASSWORD)\n\t});\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":"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"}
@@ -1,10 +1,11 @@
1
- import { ai as listAvailableAddonIds, ak as listEnabledAddonIds, a9 as getRegistryAddonConfig, F as createLogger } from './src-CQ2F7hgb.js';
2
- import { g as getState } from './state-CsIDHNPN.js';
3
- import { d as getRequestId, l as requireCapability, r as requireAdmin, e as errorResponse, k as jsonResponse, p as parseJsonBody, j as jsonBodyError } from './helpers-CfpNg3il.js';
4
- import { p as performAddonToggle } from './addon-helpers-TpOYibOg.js';
1
+ import { af as listAvailableAddonIds, ah as listEnabledAddonIds, a7 as getRegistryAddonConfig, D as createLogger } from './src-DbArH65P.js';
2
+ import { g as getState } from './state-Bq8fep3F.js';
3
+ import { d as getRequestId, l as requireCapability, r as requireAdmin, e as errorResponse, k as jsonResponse, p as parseJsonBody, j as jsonBodyError } from './helpers-DxodR6tq.js';
4
+ import { p as performAddonToggle } from './addon-helpers-tZ_tAgFZ.js';
5
5
  import './chunk-DOvWTNp_.js';
6
6
  import 'node:module';
7
7
  import './network-preset-CJ1RRnki.js';
8
+ import './dist-DtzrgNJ1.js';
8
9
  import 'node:fs';
9
10
  import 'node:child_process';
10
11
  import 'node:path';
@@ -22,8 +23,9 @@ import 'assert';
22
23
  import 'zlib';
23
24
  import 'node:assert';
24
25
  import 'node:fs/promises';
25
- import './endpoints-WTxemTcn.js';
26
- import './features-BE2x1a_a.js';
26
+ import './endpoints-IFTldlrt.js';
27
+ import './features-BW-bVsl8.js';
28
+ import './admin-update-lock-ZHLAwYiV.js';
27
29
 
28
30
  //#region src/routes/api/host/addons/[name]/+server.ts
29
31
  var logger = createLogger("addons.name");
@@ -66,15 +68,8 @@ var POST = async (event) => {
66
68
  const result = await parseJsonBody(event.request);
67
69
  if ("error" in result) return jsonBodyError(result, requestId);
68
70
  const body = result.data;
69
- const toggle = await performAddonToggle(state, name, typeof body.enabled === "boolean" ? body.enabled : void 0, requestId);
70
- if (!toggle.ok) return errorResponse(500, "internal_error", toggle.error, {}, requestId);
71
- return jsonResponse(200, {
72
- ok: true,
73
- addon: name,
74
- enabled: toggle.enabled,
75
- changed: toggle.changed
76
- }, requestId);
71
+ return performAddonToggle(state, name, typeof body.enabled === "boolean" ? body.enabled : void 0, requestId);
77
72
  };
78
73
 
79
74
  export { GET, POST };
80
- //# sourceMappingURL=_server.ts-jB_3zRrF.js.map
75
+ //# sourceMappingURL=_server.ts-w4ncTcy1.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts-w4ncTcy1.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/host/addons/_name_/_server.ts.js"],"sourcesContent":["import { D as listAvailableAddonIds, O as listEnabledAddonIds, Ot as createLogger, T as getRegistryAddonConfig } from \"../../../../../../chunks/compose-args.js\";\nimport \"../../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../../chunks/state.js\";\nimport { a as getRequestId, c as jsonResponse, d as requireCapability, l as parseJsonBody, r as errorResponse, s as jsonBodyError, u as requireAdmin } from \"../../../../../../chunks/helpers.js\";\nimport { t as performAddonToggle } from \"../../../../../../chunks/addon-helpers.js\";\n//#region src/routes/api/host/addons/[name]/+server.ts\nvar logger = createLogger(\"addons.name\");\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst capabilityError = requireCapability(event, \"host:addons\", requestId);\n\tif (capabilityError) return capabilityError;\n\tconst authErr = requireAdmin(event, requestId);\n\tif (authErr) return authErr;\n\tconst state = getState();\n\tconst name = event.params.name;\n\tif (!listAvailableAddonIds().includes(name)) return errorResponse(404, \"not_found\", `Addon \"${name}\" is not available`, { name }, requestId);\n\tconst enabled = listEnabledAddonIds(state.homeDir).includes(name);\n\tlet config;\n\ttry {\n\t\tconfig = getRegistryAddonConfig(name);\n\t} catch (error) {\n\t\tlogger.error(\"failed to read addon schema\", {\n\t\t\tname,\n\t\t\terror: String(error),\n\t\t\trequestId\n\t\t});\n\t\treturn errorResponse(500, \"internal_error\", `Addon \"${name}\" schema is unavailable`, {}, requestId);\n\t}\n\treturn jsonResponse(200, {\n\t\tname,\n\t\tenabled,\n\t\tconfig\n\t}, requestId);\n};\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst capabilityError = requireCapability(event, \"host:addons\", requestId);\n\tif (capabilityError) return capabilityError;\n\tconst authErr = requireAdmin(event, requestId);\n\tif (authErr) return authErr;\n\tconst state = getState();\n\tconst name = event.params.name;\n\tif (!listAvailableAddonIds().includes(name)) return errorResponse(404, \"not_found\", `Addon \"${name}\" is not available`, { name }, requestId);\n\tconst result = await parseJsonBody(event.request);\n\tif (\"error\" in result) return jsonBodyError(result, requestId);\n\tconst body = result.data;\n\treturn performAddonToggle(state, name, typeof body.enabled === \"boolean\" ? body.enabled : void 0, requestId);\n};\n//#endregion\nexport { GET, POST };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAKA;AACA,IAAI,MAAM,GAAG,YAAY,CAAC,aAAa,CAAC;AACrC,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,eAAe,GAAG,iBAAiB,CAAC,KAAK,EAAE,aAAa,EAAE,SAAS,CAAC;AAC3E,CAAC,IAAI,eAAe,EAAE,OAAO,eAAe;AAC5C,CAAC,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AAC/C,CAAC,IAAI,OAAO,EAAE,OAAO,OAAO;AAC5B,CAAC,MAAM,KAAK,GAAG,QAAQ,EAAE;AACzB,CAAC,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI;AAC/B,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,SAAS,CAAC;AAC7I,CAAC,MAAM,OAAO,GAAG,mBAAmB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;AAClE,CAAC,IAAI,MAAM;AACX,CAAC,IAAI;AACL,EAAE,MAAM,GAAG,sBAAsB,CAAC,IAAI,CAAC;AACvC,CAAC,CAAC,CAAC,OAAO,KAAK,EAAE;AACjB,EAAE,MAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE;AAC9C,GAAG,IAAI;AACP,GAAG,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;AACvB,GAAG;AACH,GAAG,CAAC;AACJ,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,gBAAgB,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,uBAAuB,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC;AACrG,CAAC;AACD,CAAC,OAAO,YAAY,CAAC,GAAG,EAAE;AAC1B,EAAE,IAAI;AACN,EAAE,OAAO;AACT,EAAE;AACF,EAAE,EAAE,SAAS,CAAC;AACd;AACG,IAAC,IAAI,GAAG,OAAO,KAAK,KAAK;AAC5B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,eAAe,GAAG,iBAAiB,CAAC,KAAK,EAAE,aAAa,EAAE,SAAS,CAAC;AAC3E,CAAC,IAAI,eAAe,EAAE,OAAO,eAAe;AAC5C,CAAC,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AAC/C,CAAC,IAAI,OAAO,EAAE,OAAO,OAAO;AAC5B,CAAC,MAAM,KAAK,GAAG,QAAQ,EAAE;AACzB,CAAC,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI;AAC/B,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,SAAS,CAAC;AAC7I,CAAC,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC;AAClD,CAAC,IAAI,OAAO,IAAI,MAAM,EAAE,OAAO,aAAa,CAAC,MAAM,EAAE,SAAS,CAAC;AAC/D,CAAC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI;AACzB,CAAC,OAAO,kBAAkB,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,IAAI,CAAC,OAAO,KAAK,SAAS,GAAG,IAAI,CAAC,OAAO,GAAG,MAAM,EAAE,SAAS,CAAC;AAC7G;;;;"}
@@ -1,10 +1,11 @@
1
- import { l as requireCapability, d as getRequestId, w as withAdminBody, k as jsonResponse } from './helpers-CfpNg3il.js';
2
- import { o as opencodeFetch } from './http-WP5cji9-.js';
1
+ import { l as requireCapability, d as getRequestId, w as withAdminBody, k as jsonResponse } from './helpers-DxodR6tq.js';
2
+ import { o as opencodeFetch } from './http-CfHMreaI.js';
3
3
  import { a as asStringOrEmpty } from './_helpers-CafYq-UD.js';
4
- import './src-CQ2F7hgb.js';
4
+ import './src-DbArH65P.js';
5
5
  import './chunk-DOvWTNp_.js';
6
6
  import 'node:module';
7
7
  import './network-preset-CJ1RRnki.js';
8
+ import './dist-DtzrgNJ1.js';
8
9
  import 'node:fs';
9
10
  import 'node:child_process';
10
11
  import 'node:path';
@@ -22,9 +23,9 @@ import 'assert';
22
23
  import 'zlib';
23
24
  import 'node:assert';
24
25
  import 'node:fs/promises';
25
- import './endpoints-WTxemTcn.js';
26
- import './state-CsIDHNPN.js';
27
- import './features-BE2x1a_a.js';
26
+ import './endpoints-IFTldlrt.js';
27
+ import './state-Bq8fep3F.js';
28
+ import './features-BW-bVsl8.js';
28
29
  import './coercion-TNFJisCC.js';
29
30
 
30
31
  //#region src/routes/api/host/providers/oauth/finish/+server.ts
@@ -69,4 +70,4 @@ var POST = async (event) => {
69
70
  };
70
71
 
71
72
  export { POST };
72
- //# sourceMappingURL=_server.ts-CqX61boo.js.map
73
+ //# sourceMappingURL=_server.ts-ygmDTh5G.js.map