@openpalm/ui 0.12.35 → 0.12.37

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 (324) hide show
  1. package/build/.openpalm-ui-version +1 -1
  2. package/build/client/_app/immutable/chunks/CMI5WgQe.js +3 -0
  3. package/build/client/_app/immutable/chunks/CMI5WgQe.js.br +0 -0
  4. package/build/client/_app/immutable/chunks/CMI5WgQe.js.gz +0 -0
  5. package/build/client/_app/immutable/chunks/CXl8F6Oj.js +1 -0
  6. package/build/client/_app/immutable/chunks/CXl8F6Oj.js.br +2 -0
  7. package/build/client/_app/immutable/chunks/CXl8F6Oj.js.gz +0 -0
  8. package/build/client/_app/immutable/chunks/{Dma1yH6T.js → Ca3DbnOW.js} +1 -1
  9. package/build/client/_app/immutable/chunks/Ca3DbnOW.js.br +0 -0
  10. package/build/client/_app/immutable/chunks/Ca3DbnOW.js.gz +0 -0
  11. package/build/client/_app/immutable/chunks/{Cn5j2N5s.js → D3Us-dyE.js} +1 -1
  12. package/build/client/_app/immutable/chunks/D3Us-dyE.js.br +0 -0
  13. package/build/client/_app/immutable/chunks/D3Us-dyE.js.gz +0 -0
  14. package/build/client/_app/immutable/entry/{app.DCTrXp6P.js → app.Dhosk04t.js} +2 -2
  15. package/build/client/_app/immutable/entry/app.Dhosk04t.js.br +0 -0
  16. package/build/client/_app/immutable/entry/app.Dhosk04t.js.gz +0 -0
  17. package/build/client/_app/immutable/entry/start.DLj-71M8.js +1 -0
  18. package/build/client/_app/immutable/entry/start.DLj-71M8.js.br +0 -0
  19. package/build/client/_app/immutable/entry/start.DLj-71M8.js.gz +0 -0
  20. package/build/client/_app/immutable/nodes/{1.DeODpuBZ.js → 1.CVfRID3b.js} +1 -1
  21. package/build/client/_app/immutable/nodes/1.CVfRID3b.js.br +2 -0
  22. package/build/client/_app/immutable/nodes/1.CVfRID3b.js.gz +0 -0
  23. package/build/client/_app/immutable/nodes/10.Brbv_fbD.js +3 -0
  24. package/build/client/_app/immutable/nodes/10.Brbv_fbD.js.br +0 -0
  25. package/build/client/_app/immutable/nodes/10.Brbv_fbD.js.gz +0 -0
  26. package/build/client/_app/immutable/nodes/{4.BPWbyAG8.js → 4.DNdEtt3r.js} +1 -1
  27. package/build/client/_app/immutable/nodes/4.DNdEtt3r.js.br +0 -0
  28. package/build/client/_app/immutable/nodes/4.DNdEtt3r.js.gz +0 -0
  29. package/build/client/_app/immutable/nodes/{5.DSNlc6_T.js → 5.DNvbGWzc.js} +1 -1
  30. package/build/client/_app/immutable/nodes/5.DNvbGWzc.js.br +0 -0
  31. package/build/client/_app/immutable/nodes/5.DNvbGWzc.js.gz +0 -0
  32. package/build/client/_app/immutable/nodes/{6.BXpzaUL0.js → 6.CUL8ocWL.js} +1 -1
  33. package/build/client/_app/immutable/nodes/6.CUL8ocWL.js.br +0 -0
  34. package/build/client/_app/immutable/nodes/6.CUL8ocWL.js.gz +0 -0
  35. package/build/client/_app/immutable/nodes/{7.BrFVK4tb.js → 7.Dwj19mS7.js} +1 -1
  36. package/build/client/_app/immutable/nodes/7.Dwj19mS7.js.br +0 -0
  37. package/build/client/_app/immutable/nodes/7.Dwj19mS7.js.gz +0 -0
  38. package/build/client/_app/immutable/nodes/{8.w_eWNqum.js → 8.D_OKJuRN.js} +1 -1
  39. package/build/client/_app/immutable/nodes/8.D_OKJuRN.js.br +0 -0
  40. package/build/client/_app/immutable/nodes/8.D_OKJuRN.js.gz +0 -0
  41. package/build/client/_app/version.json +1 -1
  42. package/build/client/_app/version.json.br +1 -1
  43. package/build/client/_app/version.json.gz +0 -0
  44. package/build/server/chunks/1-gjHjUOZv.js +9 -0
  45. package/build/server/chunks/{1-DHr2ahqY.js.map → 1-gjHjUOZv.js.map} +1 -1
  46. package/build/server/chunks/{10-Bhcyw8HA.js → 10-CLVE8ML3.js} +7 -7
  47. package/build/server/chunks/10-CLVE8ML3.js.map +1 -0
  48. package/build/server/chunks/{4-Cd3Q4DoQ.js → 4-BmdQnRn8.js} +3 -3
  49. package/build/server/chunks/{4-Cd3Q4DoQ.js.map → 4-BmdQnRn8.js.map} +1 -1
  50. package/build/server/chunks/{5-BBhfqYBp.js → 5-AsHcbAIQ.js} +3 -3
  51. package/build/server/chunks/{5-BBhfqYBp.js.map → 5-AsHcbAIQ.js.map} +1 -1
  52. package/build/server/chunks/{6-Djg8mg9E.js → 6-ChY7YQ16.js} +3 -3
  53. package/build/server/chunks/{6-Djg8mg9E.js.map → 6-ChY7YQ16.js.map} +1 -1
  54. package/build/server/chunks/{7-D2mE5z4a.js → 7-BTThm_b_.js} +3 -3
  55. package/build/server/chunks/{7-D2mE5z4a.js.map → 7-BTThm_b_.js.map} +1 -1
  56. package/build/server/chunks/{8-BZ53nosC.js → 8-BfJaGaXV.js} +3 -3
  57. package/build/server/chunks/{8-BZ53nosC.js.map → 8-BfJaGaXV.js.map} +1 -1
  58. package/build/server/chunks/{Navbar-DmstJWgp.js → Navbar-DptJ0Ib7.js} +3 -3
  59. package/build/server/chunks/{Navbar-DmstJWgp.js.map → Navbar-DptJ0Ib7.js.map} +1 -1
  60. package/build/server/chunks/{_page.svelte-CupozR5-.js → _page.svelte-B1RAxebc.js} +3 -3
  61. package/build/server/chunks/{_page.svelte-CupozR5-.js.map → _page.svelte-B1RAxebc.js.map} +1 -1
  62. package/build/server/chunks/{_page.svelte-6H8jZf49.js → _page.svelte-B7O0jPvL.js} +3 -3
  63. package/build/server/chunks/{_page.svelte-6H8jZf49.js.map → _page.svelte-B7O0jPvL.js.map} +1 -1
  64. package/build/server/chunks/{_page.svelte-CzA8BxOP.js → _page.svelte-BOT6lNno.js} +5 -5
  65. package/build/server/chunks/{_page.svelte-CzA8BxOP.js.map → _page.svelte-BOT6lNno.js.map} +1 -1
  66. package/build/server/chunks/{_page.svelte-DmAj2xUu.js → _page.svelte-CRMktXSn.js} +5 -5
  67. package/build/server/chunks/{_page.svelte-DmAj2xUu.js.map → _page.svelte-CRMktXSn.js.map} +1 -1
  68. package/build/server/chunks/{_page.svelte-DGMNp0WD.js → _page.svelte-D6LaV6l_.js} +5 -5
  69. package/build/server/chunks/{_page.svelte-DGMNp0WD.js.map → _page.svelte-D6LaV6l_.js.map} +1 -1
  70. package/build/server/chunks/{_page.svelte-rf-Q89lq.js → _page.svelte-xumMJJN7.js} +2 -2
  71. package/build/server/chunks/_page.svelte-xumMJJN7.js.map +1 -0
  72. package/build/server/chunks/{_server.ts-BItwSO5E.js → _server.ts-8r1ktgEy.js} +2 -2
  73. package/build/server/chunks/{_server.ts-BItwSO5E.js.map → _server.ts-8r1ktgEy.js.map} +1 -1
  74. package/build/server/chunks/{_server.ts-DEmX_Z0O.js → _server.ts-9T0e8GXd.js} +6 -6
  75. package/build/server/chunks/{_server.ts-DEmX_Z0O.js.map → _server.ts-9T0e8GXd.js.map} +1 -1
  76. package/build/server/chunks/{_server.ts-Dr9Nrd0B.js → _server.ts-B-KWTx9p.js} +4 -4
  77. package/build/server/chunks/{_server.ts-Dr9Nrd0B.js.map → _server.ts-B-KWTx9p.js.map} +1 -1
  78. package/build/server/chunks/{_server.ts-BexCNXZL.js → _server.ts-B47TJQNt.js} +5 -5
  79. package/build/server/chunks/{_server.ts-BexCNXZL.js.map → _server.ts-B47TJQNt.js.map} +1 -1
  80. package/build/server/chunks/{_server.ts-DKAThwNY.js → _server.ts-BC3RW_ZX.js} +5 -5
  81. package/build/server/chunks/{_server.ts-DKAThwNY.js.map → _server.ts-BC3RW_ZX.js.map} +1 -1
  82. package/build/server/chunks/{_server.ts-zlBR3T4Z.js → _server.ts-BDZtpQEX.js} +6 -6
  83. package/build/server/chunks/{_server.ts-zlBR3T4Z.js.map → _server.ts-BDZtpQEX.js.map} +1 -1
  84. package/build/server/chunks/{_server.ts-DYjYHIIg.js → _server.ts-BLHJfdaR.js} +5 -5
  85. package/build/server/chunks/{_server.ts-DYjYHIIg.js.map → _server.ts-BLHJfdaR.js.map} +1 -1
  86. package/build/server/chunks/{_server.ts-17Sm7tBJ.js → _server.ts-BPbooWm1.js} +5 -5
  87. package/build/server/chunks/{_server.ts-17Sm7tBJ.js.map → _server.ts-BPbooWm1.js.map} +1 -1
  88. package/build/server/chunks/{_server.ts-BmQzKzgF.js → _server.ts-BQDRp-sR.js} +5 -5
  89. package/build/server/chunks/{_server.ts-BmQzKzgF.js.map → _server.ts-BQDRp-sR.js.map} +1 -1
  90. package/build/server/chunks/{_server.ts-Bp8WEV3T.js → _server.ts-BSPdC1vA.js} +5 -5
  91. package/build/server/chunks/{_server.ts-Bp8WEV3T.js.map → _server.ts-BSPdC1vA.js.map} +1 -1
  92. package/build/server/chunks/{_server.ts-CswojIO6.js → _server.ts-BW9rEgwM.js} +5 -5
  93. package/build/server/chunks/{_server.ts-CswojIO6.js.map → _server.ts-BW9rEgwM.js.map} +1 -1
  94. package/build/server/chunks/{_server.ts-IrIGIyzI.js → _server.ts-BYHfT3Ca.js} +6 -6
  95. package/build/server/chunks/{_server.ts-IrIGIyzI.js.map → _server.ts-BYHfT3Ca.js.map} +1 -1
  96. package/build/server/chunks/{_server.ts-C759kKrI.js → _server.ts-BYldSXCu.js} +5 -5
  97. package/build/server/chunks/{_server.ts-C759kKrI.js.map → _server.ts-BYldSXCu.js.map} +1 -1
  98. package/build/server/chunks/{_server.ts-BlGrZPhR.js → _server.ts-B_g-Huuh.js} +7 -7
  99. package/build/server/chunks/{_server.ts-BlGrZPhR.js.map → _server.ts-B_g-Huuh.js.map} +1 -1
  100. package/build/server/chunks/{_server.ts-DgYWHXWn.js → _server.ts-BbN-zLQQ.js} +5 -5
  101. package/build/server/chunks/{_server.ts-DgYWHXWn.js.map → _server.ts-BbN-zLQQ.js.map} +1 -1
  102. package/build/server/chunks/{_server.ts-CbW89QHq.js → _server.ts-Bc7fG62v.js} +5 -5
  103. package/build/server/chunks/{_server.ts-CbW89QHq.js.map → _server.ts-Bc7fG62v.js.map} +1 -1
  104. package/build/server/chunks/{_server.ts-WRqR790z.js → _server.ts-Bcz4w7HI.js} +5 -5
  105. package/build/server/chunks/{_server.ts-WRqR790z.js.map → _server.ts-Bcz4w7HI.js.map} +1 -1
  106. package/build/server/chunks/{_server.ts-wZerakZf.js → _server.ts-Bd3fqJpa.js} +5 -5
  107. package/build/server/chunks/{_server.ts-wZerakZf.js.map → _server.ts-Bd3fqJpa.js.map} +1 -1
  108. package/build/server/chunks/{_server.ts-D1SQw1xr.js → _server.ts-BowOE-vc.js} +5 -5
  109. package/build/server/chunks/{_server.ts-D1SQw1xr.js.map → _server.ts-BowOE-vc.js.map} +1 -1
  110. package/build/server/chunks/{_server.ts-4mcrPKs8.js → _server.ts-Bqo1VFHG.js} +5 -5
  111. package/build/server/chunks/{_server.ts-4mcrPKs8.js.map → _server.ts-Bqo1VFHG.js.map} +1 -1
  112. package/build/server/chunks/{_server.ts-7HHVmf6s.js → _server.ts-BqwG7y2B.js} +5 -5
  113. package/build/server/chunks/{_server.ts-7HHVmf6s.js.map → _server.ts-BqwG7y2B.js.map} +1 -1
  114. package/build/server/chunks/{_server.ts-ygo2IFet.js → _server.ts-BrX0cA4X.js} +5 -5
  115. package/build/server/chunks/{_server.ts-ygo2IFet.js.map → _server.ts-BrX0cA4X.js.map} +1 -1
  116. package/build/server/chunks/{_server.ts-IuJoqgcf.js → _server.ts-Bt31_CsK.js} +5 -5
  117. package/build/server/chunks/{_server.ts-IuJoqgcf.js.map → _server.ts-Bt31_CsK.js.map} +1 -1
  118. package/build/server/chunks/{_server.ts-DI7DVHmY.js → _server.ts-BvZCj_hC.js} +5 -5
  119. package/build/server/chunks/_server.ts-BvZCj_hC.js.map +1 -0
  120. package/build/server/chunks/{_server.ts-Bh-5jiYC.js → _server.ts-BxL4yHez.js} +5 -5
  121. package/build/server/chunks/{_server.ts-Bh-5jiYC.js.map → _server.ts-BxL4yHez.js.map} +1 -1
  122. package/build/server/chunks/{_server.ts-DEmtjEMi.js → _server.ts-BxxjcH8_.js} +5 -5
  123. package/build/server/chunks/{_server.ts-DEmtjEMi.js.map → _server.ts-BxxjcH8_.js.map} +1 -1
  124. package/build/server/chunks/{_server.ts-C8owE7KE.js → _server.ts-C7VvTeLF.js} +5 -5
  125. package/build/server/chunks/{_server.ts-C8owE7KE.js.map → _server.ts-C7VvTeLF.js.map} +1 -1
  126. package/build/server/chunks/{_server.ts-Caecp_9T.js → _server.ts-C9Kucjie.js} +6 -6
  127. package/build/server/chunks/{_server.ts-Caecp_9T.js.map → _server.ts-C9Kucjie.js.map} +1 -1
  128. package/build/server/chunks/{_server.ts-Der6MKsu.js → _server.ts-CE-VqTTg.js} +2 -2
  129. package/build/server/chunks/{_server.ts-Der6MKsu.js.map → _server.ts-CE-VqTTg.js.map} +1 -1
  130. package/build/server/chunks/{_server.ts-CeuX4TD2.js → _server.ts-CI3lh_X5.js} +6 -6
  131. package/build/server/chunks/{_server.ts-CeuX4TD2.js.map → _server.ts-CI3lh_X5.js.map} +1 -1
  132. package/build/server/chunks/{_server.ts-Q6gku721.js → _server.ts-CLz937p5.js} +5 -5
  133. package/build/server/chunks/{_server.ts-Q6gku721.js.map → _server.ts-CLz937p5.js.map} +1 -1
  134. package/build/server/chunks/{_server.ts-DkpnaxtR.js → _server.ts-CTI9alSL.js} +6 -6
  135. package/build/server/chunks/{_server.ts-DkpnaxtR.js.map → _server.ts-CTI9alSL.js.map} +1 -1
  136. package/build/server/chunks/{_server.ts-Baozh1FE.js → _server.ts-CTrp64ym.js} +5 -5
  137. package/build/server/chunks/{_server.ts-Baozh1FE.js.map → _server.ts-CTrp64ym.js.map} +1 -1
  138. package/build/server/chunks/{_server.ts-644qDVn-.js → _server.ts-CZbaDbdB.js} +5 -5
  139. package/build/server/chunks/{_server.ts-644qDVn-.js.map → _server.ts-CZbaDbdB.js.map} +1 -1
  140. package/build/server/chunks/{_server.ts-CWz-e7Hy.js → _server.ts-CZfkdu-f.js} +7 -7
  141. package/build/server/chunks/{_server.ts-CWz-e7Hy.js.map → _server.ts-CZfkdu-f.js.map} +1 -1
  142. package/build/server/chunks/{_server.ts-CWb18g88.js → _server.ts-CfzXDDjT.js} +8 -8
  143. package/build/server/chunks/{_server.ts-CWb18g88.js.map → _server.ts-CfzXDDjT.js.map} +1 -1
  144. package/build/server/chunks/{_server.ts-CMfWgDOR.js → _server.ts-Cg5gvKfz.js} +6 -6
  145. package/build/server/chunks/{_server.ts-CMfWgDOR.js.map → _server.ts-Cg5gvKfz.js.map} +1 -1
  146. package/build/server/chunks/{_server.ts-DGdvFSCJ.js → _server.ts-CnU9QlnE.js} +5 -5
  147. package/build/server/chunks/{_server.ts-DGdvFSCJ.js.map → _server.ts-CnU9QlnE.js.map} +1 -1
  148. package/build/server/chunks/{_server.ts-Clnw_CPP.js → _server.ts-CnsONSDQ.js} +4 -4
  149. package/build/server/chunks/{_server.ts-Clnw_CPP.js.map → _server.ts-CnsONSDQ.js.map} +1 -1
  150. package/build/server/chunks/{_server.ts-F9jr1TXS.js → _server.ts-CpN9GWkt.js} +5 -5
  151. package/build/server/chunks/{_server.ts-F9jr1TXS.js.map → _server.ts-CpN9GWkt.js.map} +1 -1
  152. package/build/server/chunks/{_server.ts-BR0sBzB0.js → _server.ts-CrR3xhrA.js} +5 -5
  153. package/build/server/chunks/{_server.ts-BR0sBzB0.js.map → _server.ts-CrR3xhrA.js.map} +1 -1
  154. package/build/server/chunks/{_server.ts-BHglX11P.js → _server.ts-CraiUxfw.js} +7 -7
  155. package/build/server/chunks/{_server.ts-BHglX11P.js.map → _server.ts-CraiUxfw.js.map} +1 -1
  156. package/build/server/chunks/{_server.ts-7PYmr9Z-.js → _server.ts-CrvtQUC-.js} +5 -5
  157. package/build/server/chunks/{_server.ts-7PYmr9Z-.js.map → _server.ts-CrvtQUC-.js.map} +1 -1
  158. package/build/server/chunks/{_server.ts-CjrBMt_s.js → _server.ts-CsOCmp-V.js} +5 -5
  159. package/build/server/chunks/{_server.ts-CjrBMt_s.js.map → _server.ts-CsOCmp-V.js.map} +1 -1
  160. package/build/server/chunks/{_server.ts-BrMoDp9S.js → _server.ts-CvFkNHNZ.js} +5 -5
  161. package/build/server/chunks/{_server.ts-BrMoDp9S.js.map → _server.ts-CvFkNHNZ.js.map} +1 -1
  162. package/build/server/chunks/{_server.ts-DnTpL24U.js → _server.ts-CyKc2qPj.js} +5 -5
  163. package/build/server/chunks/{_server.ts-DnTpL24U.js.map → _server.ts-CyKc2qPj.js.map} +1 -1
  164. package/build/server/chunks/{_server.ts-C7EVl-bi.js → _server.ts-D1qNYKbC.js} +5 -5
  165. package/build/server/chunks/{_server.ts-C7EVl-bi.js.map → _server.ts-D1qNYKbC.js.map} +1 -1
  166. package/build/server/chunks/{_server.ts-D02ydqWj.js → _server.ts-D1slc-m-.js} +5 -5
  167. package/build/server/chunks/{_server.ts-D02ydqWj.js.map → _server.ts-D1slc-m-.js.map} +1 -1
  168. package/build/server/chunks/{_server.ts-p6BIfEPN.js → _server.ts-D3EDuLCR.js} +6 -6
  169. package/build/server/chunks/{_server.ts-p6BIfEPN.js.map → _server.ts-D3EDuLCR.js.map} +1 -1
  170. package/build/server/chunks/{_server.ts-BIKnhFxu.js → _server.ts-D4rRxSHY.js} +5 -5
  171. package/build/server/chunks/{_server.ts-BIKnhFxu.js.map → _server.ts-D4rRxSHY.js.map} +1 -1
  172. package/build/server/chunks/{_server.ts-D92SRQrD.js → _server.ts-D7Z-y3y6.js} +5 -5
  173. package/build/server/chunks/{_server.ts-D92SRQrD.js.map → _server.ts-D7Z-y3y6.js.map} +1 -1
  174. package/build/server/chunks/{_server.ts-DMk0lyPh.js → _server.ts-DDKAtICU.js} +5 -5
  175. package/build/server/chunks/{_server.ts-DMk0lyPh.js.map → _server.ts-DDKAtICU.js.map} +1 -1
  176. package/build/server/chunks/{_server.ts-CKnr7Uu8.js → _server.ts-DDlfDBlX.js} +2 -2
  177. package/build/server/chunks/{_server.ts-CKnr7Uu8.js.map → _server.ts-DDlfDBlX.js.map} +1 -1
  178. package/build/server/chunks/{_server.ts-CPEbL-Pt.js → _server.ts-DRzPTk-I.js} +6 -6
  179. package/build/server/chunks/{_server.ts-CPEbL-Pt.js.map → _server.ts-DRzPTk-I.js.map} +1 -1
  180. package/build/server/chunks/{_server.ts-D-kETy9m.js → _server.ts-DU3hvd9d.js} +5 -5
  181. package/build/server/chunks/{_server.ts-D-kETy9m.js.map → _server.ts-DU3hvd9d.js.map} +1 -1
  182. package/build/server/chunks/{_server.ts-CUSgj-vr.js → _server.ts-DXD9YtNb.js} +7 -7
  183. package/build/server/chunks/{_server.ts-CUSgj-vr.js.map → _server.ts-DXD9YtNb.js.map} +1 -1
  184. package/build/server/chunks/{_server.ts-DyAq_u9y.js → _server.ts-DZ58hKp_.js} +5 -5
  185. package/build/server/chunks/{_server.ts-DyAq_u9y.js.map → _server.ts-DZ58hKp_.js.map} +1 -1
  186. package/build/server/chunks/{_server.ts-DuzwVKnI.js → _server.ts-DZ74wjdy.js} +6 -6
  187. package/build/server/chunks/{_server.ts-DuzwVKnI.js.map → _server.ts-DZ74wjdy.js.map} +1 -1
  188. package/build/server/chunks/_server.ts-DZuJpxeF.js +116 -0
  189. package/build/server/chunks/_server.ts-DZuJpxeF.js.map +1 -0
  190. package/build/server/chunks/{_server.ts-Bzx8e_vT.js → _server.ts-DZxyfVfk.js} +5 -5
  191. package/build/server/chunks/{_server.ts-Bzx8e_vT.js.map → _server.ts-DZxyfVfk.js.map} +1 -1
  192. package/build/server/chunks/{_server.ts-CwLV4b1f.js → _server.ts-DaO2pf4f.js} +5 -10
  193. package/build/server/chunks/_server.ts-DaO2pf4f.js.map +1 -0
  194. package/build/server/chunks/{_server.ts-7YfKZbRf.js → _server.ts-DbGmuYND.js} +6 -6
  195. package/build/server/chunks/{_server.ts-7YfKZbRf.js.map → _server.ts-DbGmuYND.js.map} +1 -1
  196. package/build/server/chunks/{_server.ts-Ff36E_kQ.js → _server.ts-DezqI1zw.js} +5 -5
  197. package/build/server/chunks/{_server.ts-Ff36E_kQ.js.map → _server.ts-DezqI1zw.js.map} +1 -1
  198. package/build/server/chunks/{_server.ts-x2T-1ecq.js → _server.ts-DfRgwfim.js} +5 -8
  199. package/build/server/chunks/_server.ts-DfRgwfim.js.map +1 -0
  200. package/build/server/chunks/{_server.ts-BkKDLEw2.js → _server.ts-DmBh7SF4.js} +5 -5
  201. package/build/server/chunks/{_server.ts-BkKDLEw2.js.map → _server.ts-DmBh7SF4.js.map} +1 -1
  202. package/build/server/chunks/{_server.ts-B4sIzTwj.js → _server.ts-DrHlq4El.js} +5 -5
  203. package/build/server/chunks/{_server.ts-B4sIzTwj.js.map → _server.ts-DrHlq4El.js.map} +1 -1
  204. package/build/server/chunks/{_server.ts-Do9vXHTl.js → _server.ts-DwbGq0qT.js} +5 -5
  205. package/build/server/chunks/{_server.ts-Do9vXHTl.js.map → _server.ts-DwbGq0qT.js.map} +1 -1
  206. package/build/server/chunks/{_server.ts-B4IkHWrK.js → _server.ts-GiZ1gLDD.js} +5 -5
  207. package/build/server/chunks/{_server.ts-B4IkHWrK.js.map → _server.ts-GiZ1gLDD.js.map} +1 -1
  208. package/build/server/chunks/{_server.ts-DTa1SYz_.js → _server.ts-TPIZIb1u.js} +5 -5
  209. package/build/server/chunks/{_server.ts-DTa1SYz_.js.map → _server.ts-TPIZIb1u.js.map} +1 -1
  210. package/build/server/chunks/{_server.ts-aIvJGwVD.js → _server.ts-USsZHtlt.js} +5 -5
  211. package/build/server/chunks/{_server.ts-aIvJGwVD.js.map → _server.ts-USsZHtlt.js.map} +1 -1
  212. package/build/server/chunks/{_server.ts-CCSbDOWm.js → _server.ts-WhvPQG9u.js} +5 -5
  213. package/build/server/chunks/{_server.ts-CCSbDOWm.js.map → _server.ts-WhvPQG9u.js.map} +1 -1
  214. package/build/server/chunks/{_server.ts-DfwiRzeI.js → _server.ts-Yy-KzL30.js} +5 -5
  215. package/build/server/chunks/{_server.ts-DfwiRzeI.js.map → _server.ts-Yy-KzL30.js.map} +1 -1
  216. package/build/server/chunks/{_server.ts-BbtNmpd6.js → _server.ts-_G_3an8p.js} +5 -5
  217. package/build/server/chunks/{_server.ts-BbtNmpd6.js.map → _server.ts-_G_3an8p.js.map} +1 -1
  218. package/build/server/chunks/{_server.ts-CyCT3WI1.js → _server.ts-aK6F5W8o.js} +5 -5
  219. package/build/server/chunks/{_server.ts-CyCT3WI1.js.map → _server.ts-aK6F5W8o.js.map} +1 -1
  220. package/build/server/chunks/{_server.ts-De3Ci2sP.js → _server.ts-cA724F40.js} +5 -5
  221. package/build/server/chunks/{_server.ts-De3Ci2sP.js.map → _server.ts-cA724F40.js.map} +1 -1
  222. package/build/server/chunks/{_server.ts-Co5cJt5A.js → _server.ts-e6T1Exbr.js} +2 -2
  223. package/build/server/chunks/{_server.ts-Co5cJt5A.js.map → _server.ts-e6T1Exbr.js.map} +1 -1
  224. package/build/server/chunks/{_server.ts-Bh5t8TMR.js → _server.ts-ee7R1_L4.js} +5 -5
  225. package/build/server/chunks/{_server.ts-Bh5t8TMR.js.map → _server.ts-ee7R1_L4.js.map} +1 -1
  226. package/build/server/chunks/{_server.ts-CFPp8keI.js → _server.ts-i7Kb7GHX.js} +5 -5
  227. package/build/server/chunks/{_server.ts-CFPp8keI.js.map → _server.ts-i7Kb7GHX.js.map} +1 -1
  228. package/build/server/chunks/{_server.ts-C7BHJSCS.js → _server.ts-jy6EN1Je.js} +6 -6
  229. package/build/server/chunks/{_server.ts-C7BHJSCS.js.map → _server.ts-jy6EN1Je.js.map} +1 -1
  230. package/build/server/chunks/{_server.ts-Bv2PmRE5.js → _server.ts-lyIEc2sm.js} +7 -7
  231. package/build/server/chunks/{_server.ts-Bv2PmRE5.js.map → _server.ts-lyIEc2sm.js.map} +1 -1
  232. package/build/server/chunks/{_server.ts-Dg1Zjg-X.js → _server.ts-pZXzNajN.js} +2 -2
  233. package/build/server/chunks/{_server.ts-Dg1Zjg-X.js.map → _server.ts-pZXzNajN.js.map} +1 -1
  234. package/build/server/chunks/{_server.ts-BJlwCXg-.js → _server.ts-qKFUYaLD.js} +5 -5
  235. package/build/server/chunks/{_server.ts-BJlwCXg-.js.map → _server.ts-qKFUYaLD.js.map} +1 -1
  236. package/build/server/chunks/{_server.ts-CZJ1Q1LT.js → _server.ts-wnNPnDWa.js} +7 -7
  237. package/build/server/chunks/{_server.ts-CZJ1Q1LT.js.map → _server.ts-wnNPnDWa.js.map} +1 -1
  238. package/build/server/chunks/{addon-helpers-XImVlKha.js → addon-helpers-BkZTqkzU.js} +3 -3
  239. package/build/server/chunks/{addon-helpers-XImVlKha.js.map → addon-helpers-BkZTqkzU.js.map} +1 -1
  240. package/build/server/chunks/{akm-BHWIeMbV.js → akm-W2jVRoy2.js} +2 -2
  241. package/build/server/chunks/{akm-BHWIeMbV.js.map → akm-W2jVRoy2.js.map} +1 -1
  242. package/build/server/chunks/{catalog-Fe3z4JM_.js → catalog-CyU2JGS5.js} +5 -5
  243. package/build/server/chunks/{catalog-Fe3z4JM_.js.map → catalog-CyU2JGS5.js.map} +1 -1
  244. package/build/server/chunks/{client-lMbA6Jug.js → client-Bpcpa4BJ.js} +2 -2
  245. package/build/server/chunks/{client-lMbA6Jug.js.map → client-Bpcpa4BJ.js.map} +1 -1
  246. package/build/server/chunks/{config-B2V9qVRT.js → config-Cbhj94dJ.js} +2 -2
  247. package/build/server/chunks/{config-B2V9qVRT.js.map → config-Cbhj94dJ.js.map} +1 -1
  248. package/build/server/chunks/{docker-CEt-3e57.js → docker-19UOjwnj.js} +2 -2
  249. package/build/server/chunks/{docker-CEt-3e57.js.map → docker-19UOjwnj.js.map} +1 -1
  250. package/build/server/chunks/{endpoints-ev9YSBb8.js → endpoints-s4sYxtNX.js} +2 -2
  251. package/build/server/chunks/{endpoints-ev9YSBb8.js.map → endpoints-s4sYxtNX.js.map} +1 -1
  252. package/build/server/chunks/{error.svelte-CIoDqhLx.js → error.svelte-BrIivAcw.js} +4 -4
  253. package/build/server/chunks/{error.svelte-CIoDqhLx.js.map → error.svelte-BrIivAcw.js.map} +1 -1
  254. package/build/server/chunks/{helpers-BluGgY3g.js → helpers-Dn1KCeOM.js} +3 -3
  255. package/build/server/chunks/{helpers-BluGgY3g.js.map → helpers-Dn1KCeOM.js.map} +1 -1
  256. package/build/server/chunks/{hooks.server-DMdbB9Fv.js → hooks.server-D-tmNnsn.js} +10 -17
  257. package/build/server/chunks/hooks.server-D-tmNnsn.js.map +1 -0
  258. package/build/server/chunks/{http-BmFqfzyw.js → http-6U0ZbxrK.js} +2 -2
  259. package/build/server/chunks/{http-BmFqfzyw.js.map → http-6U0ZbxrK.js.map} +1 -1
  260. package/build/server/chunks/{internal-CGvCj4Lu.js → internal-DGcqGVK7.js} +3 -3
  261. package/build/server/chunks/{internal-CGvCj4Lu.js.map → internal-DGcqGVK7.js.map} +1 -1
  262. package/build/server/chunks/{migration-status-UK_z_iXN.js → migration-status-CdKW4TxB.js} +5 -8
  263. package/build/server/chunks/migration-status-CdKW4TxB.js.map +1 -0
  264. package/build/server/chunks/{session-cookie-Cn2O_Cv6.js → session-cookie-BVOapD-n.js} +2 -2
  265. package/build/server/chunks/{session-cookie-Cn2O_Cv6.js.map → session-cookie-BVOapD-n.js.map} +1 -1
  266. package/build/server/chunks/{setup-deploy-B9QxcV6K.js → setup-deploy-xKJ3K_r-.js} +2 -2
  267. package/build/server/chunks/{setup-deploy-B9QxcV6K.js.map → setup-deploy-xKJ3K_r-.js.map} +1 -1
  268. package/build/server/chunks/{src-Bms-Wpj4.js → src-tc6vkfjq.js} +62 -110
  269. package/build/server/chunks/src-tc6vkfjq.js.map +1 -0
  270. package/build/server/chunks/{state-dBGSHxF6.js → state-DoUFfa64.js} +3 -6
  271. package/build/server/chunks/state-DoUFfa64.js.map +1 -0
  272. package/build/server/chunks/{state2-tak_X-zN.js → state2-jIJ_hRS9.js} +2 -2
  273. package/build/server/chunks/{state2-tak_X-zN.js.map → state2-jIJ_hRS9.js.map} +1 -1
  274. package/build/server/index.js +1 -1
  275. package/build/server/index.js.map +1 -1
  276. package/build/server/manifest.js +91 -105
  277. package/build/server/manifest.js.map +1 -1
  278. package/package.json +3 -4
  279. package/build/client/_app/immutable/chunks/BJ1FElAi.js +0 -3
  280. package/build/client/_app/immutable/chunks/BJ1FElAi.js.br +0 -0
  281. package/build/client/_app/immutable/chunks/BJ1FElAi.js.gz +0 -0
  282. package/build/client/_app/immutable/chunks/BllPz2fN.js +0 -1
  283. package/build/client/_app/immutable/chunks/BllPz2fN.js.br +0 -2
  284. package/build/client/_app/immutable/chunks/BllPz2fN.js.gz +0 -0
  285. package/build/client/_app/immutable/chunks/Cn5j2N5s.js.br +0 -0
  286. package/build/client/_app/immutable/chunks/Cn5j2N5s.js.gz +0 -0
  287. package/build/client/_app/immutable/chunks/Dma1yH6T.js.br +0 -0
  288. package/build/client/_app/immutable/chunks/Dma1yH6T.js.gz +0 -0
  289. package/build/client/_app/immutable/entry/app.DCTrXp6P.js.br +0 -0
  290. package/build/client/_app/immutable/entry/app.DCTrXp6P.js.gz +0 -0
  291. package/build/client/_app/immutable/entry/start.DSb-TcOn.js +0 -1
  292. package/build/client/_app/immutable/entry/start.DSb-TcOn.js.br +0 -1
  293. package/build/client/_app/immutable/entry/start.DSb-TcOn.js.gz +0 -0
  294. package/build/client/_app/immutable/nodes/1.DeODpuBZ.js.br +0 -0
  295. package/build/client/_app/immutable/nodes/1.DeODpuBZ.js.gz +0 -0
  296. package/build/client/_app/immutable/nodes/10.ydmh33uP.js +0 -3
  297. package/build/client/_app/immutable/nodes/10.ydmh33uP.js.br +0 -0
  298. package/build/client/_app/immutable/nodes/10.ydmh33uP.js.gz +0 -0
  299. package/build/client/_app/immutable/nodes/4.BPWbyAG8.js.br +0 -0
  300. package/build/client/_app/immutable/nodes/4.BPWbyAG8.js.gz +0 -0
  301. package/build/client/_app/immutable/nodes/5.DSNlc6_T.js.br +0 -0
  302. package/build/client/_app/immutable/nodes/5.DSNlc6_T.js.gz +0 -0
  303. package/build/client/_app/immutable/nodes/6.BXpzaUL0.js.br +0 -0
  304. package/build/client/_app/immutable/nodes/6.BXpzaUL0.js.gz +0 -0
  305. package/build/client/_app/immutable/nodes/7.BrFVK4tb.js.br +0 -0
  306. package/build/client/_app/immutable/nodes/7.BrFVK4tb.js.gz +0 -0
  307. package/build/client/_app/immutable/nodes/8.w_eWNqum.js.br +0 -0
  308. package/build/client/_app/immutable/nodes/8.w_eWNqum.js.gz +0 -0
  309. package/build/server/chunks/1-DHr2ahqY.js +0 -9
  310. package/build/server/chunks/10-Bhcyw8HA.js.map +0 -1
  311. package/build/server/chunks/_page.svelte-rf-Q89lq.js.map +0 -1
  312. package/build/server/chunks/_server.ts-BvJoozcb.js +0 -77
  313. package/build/server/chunks/_server.ts-BvJoozcb.js.map +0 -1
  314. package/build/server/chunks/_server.ts-CwLV4b1f.js.map +0 -1
  315. package/build/server/chunks/_server.ts-DI7DVHmY.js.map +0 -1
  316. package/build/server/chunks/_server.ts-DP5YV8h3.js +0 -119
  317. package/build/server/chunks/_server.ts-DP5YV8h3.js.map +0 -1
  318. package/build/server/chunks/_server.ts-De6opDLP.js +0 -96
  319. package/build/server/chunks/_server.ts-De6opDLP.js.map +0 -1
  320. package/build/server/chunks/_server.ts-x2T-1ecq.js.map +0 -1
  321. package/build/server/chunks/hooks.server-DMdbB9Fv.js.map +0 -1
  322. package/build/server/chunks/migration-status-UK_z_iXN.js.map +0 -1
  323. package/build/server/chunks/src-Bms-Wpj4.js.map +0 -1
  324. package/build/server/chunks/state-dBGSHxF6.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-D-kETy9m.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/automations/_name_/log/_server.ts.js"],"sourcesContent":["import { p as readAutomationLogs } from \"../../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../../chunks/state.js\";\nimport { d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId } from \"../../../../../../chunks/helpers.js\";\n//#region src/routes/admin/automations/[name]/log/+server.ts\nvar SAFE_NAME_RE = /^[a-zA-Z0-9._-]+(?:\\.ya?ml)?$/;\nvar DEFAULT_LIMIT = 50;\nvar MAX_LIMIT = 500;\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authErr = requireAdmin(event, requestId);\n\tif (authErr) return authErr;\n\tconst state = getState();\n\tconst rawName = event.params.name ?? \"\";\n\tconst taskId = rawName.replace(/\\.ya?ml$/, \"\");\n\tif (!SAFE_NAME_RE.test(rawName) || rawName.includes(\"..\") || rawName.includes(\"/\")) return errorResponse(400, \"invalid_input\", \"name must match /^[a-zA-Z0-9._-]+$/\", {}, requestId);\n\tconst limitParam = event.url.searchParams.get(\"limit\");\n\tlet limit = DEFAULT_LIMIT;\n\tif (limitParam !== null) {\n\t\tconst parsed = Number.parseInt(limitParam, 10);\n\t\tif (!Number.isFinite(parsed) || parsed <= 0) return errorResponse(400, \"invalid_input\", \"limit must be a positive integer\", {}, requestId);\n\t\tlimit = Math.min(parsed, MAX_LIMIT);\n\t}\n\treturn jsonResponse(200, {\n\t\tname: taskId,\n\t\tlines: readAutomationLogs(taskId, state.dataDir, limit)\n\t}, requestId);\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;AACA,IAAI,YAAY,GAAG,+BAA+B;AAClD,IAAI,aAAa,GAAG,EAAE;AACtB,IAAI,SAAS,GAAG,GAAG;AAChB,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,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,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE;AACxC,CAAC,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;AAC/C,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,eAAe,EAAE,qCAAqC,EAAE,EAAE,EAAE,SAAS,CAAC;AACrL,CAAC,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC;AACvD,CAAC,IAAI,KAAK,GAAG,aAAa;AAC1B,CAAC,IAAI,UAAU,KAAK,IAAI,EAAE;AAC1B,EAAE,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,CAAC;AAChD,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,eAAe,EAAE,kCAAkC,EAAE,EAAE,EAAE,SAAS,CAAC;AAC5I,EAAE,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC;AACrC,CAAC;AACD,CAAC,OAAO,YAAY,CAAC,GAAG,EAAE;AAC1B,EAAE,IAAI,EAAE,MAAM;AACd,EAAE,KAAK,EAAE,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK;AACxD,EAAE,EAAE,SAAS,CAAC;AACd;;;;"}
1
+ {"version":3,"file":"_server.ts-DU3hvd9d.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/automations/_name_/log/_server.ts.js"],"sourcesContent":["import { p as readAutomationLogs } from \"../../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../../chunks/state.js\";\nimport { d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId } from \"../../../../../../chunks/helpers.js\";\n//#region src/routes/admin/automations/[name]/log/+server.ts\nvar SAFE_NAME_RE = /^[a-zA-Z0-9._-]+(?:\\.ya?ml)?$/;\nvar DEFAULT_LIMIT = 50;\nvar MAX_LIMIT = 500;\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authErr = requireAdmin(event, requestId);\n\tif (authErr) return authErr;\n\tconst state = getState();\n\tconst rawName = event.params.name ?? \"\";\n\tconst taskId = rawName.replace(/\\.ya?ml$/, \"\");\n\tif (!SAFE_NAME_RE.test(rawName) || rawName.includes(\"..\") || rawName.includes(\"/\")) return errorResponse(400, \"invalid_input\", \"name must match /^[a-zA-Z0-9._-]+$/\", {}, requestId);\n\tconst limitParam = event.url.searchParams.get(\"limit\");\n\tlet limit = DEFAULT_LIMIT;\n\tif (limitParam !== null) {\n\t\tconst parsed = Number.parseInt(limitParam, 10);\n\t\tif (!Number.isFinite(parsed) || parsed <= 0) return errorResponse(400, \"invalid_input\", \"limit must be a positive integer\", {}, requestId);\n\t\tlimit = Math.min(parsed, MAX_LIMIT);\n\t}\n\treturn jsonResponse(200, {\n\t\tname: taskId,\n\t\tlines: readAutomationLogs(taskId, state.dataDir, limit)\n\t}, requestId);\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;AACA,IAAI,YAAY,GAAG,+BAA+B;AAClD,IAAI,aAAa,GAAG,EAAE;AACtB,IAAI,SAAS,GAAG,GAAG;AAChB,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,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,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,IAAI,EAAE;AACxC,CAAC,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;AAC/C,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,eAAe,EAAE,qCAAqC,EAAE,EAAE,EAAE,SAAS,CAAC;AACrL,CAAC,MAAM,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC;AACvD,CAAC,IAAI,KAAK,GAAG,aAAa;AAC1B,CAAC,IAAI,UAAU,KAAK,IAAI,EAAE;AAC1B,EAAE,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,UAAU,EAAE,EAAE,CAAC;AAChD,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,eAAe,EAAE,kCAAkC,EAAE,EAAE,EAAE,SAAS,CAAC;AAC5I,EAAE,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC;AACrC,CAAC;AACD,CAAC,OAAO,YAAY,CAAC,GAAG,EAAE;AAC1B,EAAE,IAAI,EAAE,MAAM;AACd,EAAE,KAAK,EAAE,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK;AACxD,EAAE,EAAE,SAAS,CAAC;AACd;;;;"}
@@ -1,7 +1,7 @@
1
1
  import { j as json } from './exports-D1quPX8S.js';
2
- import { a as loadSetupProviderPage } from './catalog-Fe3z4JM_.js';
2
+ import { a as loadSetupProviderPage } from './catalog-CyU2JGS5.js';
3
3
  import './utils-BSRjJDrZ.js';
4
- import './src-Bms-Wpj4.js';
4
+ import './src-tc6vkfjq.js';
5
5
  import './chunk-CLZ62Ad-.js';
6
6
  import 'node:module';
7
7
  import './provider-constants-DPrj3yBX.js';
@@ -23,11 +23,11 @@ import 'zlib';
23
23
  import 'node:assert';
24
24
  import 'node:fs/promises';
25
25
  import 'node:os';
26
- import './state-dBGSHxF6.js';
26
+ import './state-DoUFfa64.js';
27
27
  import './coercion-TNFJisCC.js';
28
- import './http-BmFqfzyw.js';
29
- import './endpoints-ev9YSBb8.js';
30
- import './config-B2V9qVRT.js';
28
+ import './http-6U0ZbxrK.js';
29
+ import './endpoints-s4sYxtNX.js';
30
+ import './config-Cbhj94dJ.js';
31
31
 
32
32
  //#region src/routes/api/setup/opencode/providers/+server.ts
33
33
  var GET = async () => {
@@ -38,4 +38,4 @@ var GET = async () => {
38
38
  };
39
39
 
40
40
  export { GET };
41
- //# sourceMappingURL=_server.ts-CUSgj-vr.js.map
41
+ //# sourceMappingURL=_server.ts-DXD9YtNb.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-CUSgj-vr.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/setup/opencode/providers/_server.ts.js"],"sourcesContent":["import { r as json } from \"../../../../../../chunks/exports.js\";\nimport { n as loadSetupProviderPage } from \"../../../../../../chunks/catalog.js\";\n//#region src/routes/api/setup/opencode/providers/+server.ts\nvar GET = async () => {\n\treturn json({\n\t\tok: true,\n\t\t...await loadSetupProviderPage()\n\t});\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AACG,IAAC,GAAG,GAAG,YAAY;AACtB,CAAC,OAAO,IAAI,CAAC;AACb,EAAE,EAAE,EAAE,IAAI;AACV,EAAE,GAAG,MAAM,qBAAqB;AAChC,EAAE,CAAC;AACH;;;;"}
1
+ {"version":3,"file":"_server.ts-DXD9YtNb.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/setup/opencode/providers/_server.ts.js"],"sourcesContent":["import { r as json } from \"../../../../../../chunks/exports.js\";\nimport { n as loadSetupProviderPage } from \"../../../../../../chunks/catalog.js\";\n//#region src/routes/api/setup/opencode/providers/+server.ts\nvar GET = async () => {\n\treturn json({\n\t\tok: true,\n\t\t...await loadSetupProviderPage()\n\t});\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AACG,IAAC,GAAG,GAAG,YAAY;AACtB,CAAC,OAAO,IAAI,CAAC;AACb,EAAE,EAAE,EAAE,IAAI;AACV,EAAE,GAAG,MAAM,qBAAqB;AAChC,EAAE,CAAC;AACH;;;;"}
@@ -1,7 +1,7 @@
1
1
  import { j as json } from './exports-D1quPX8S.js';
2
- import { ai as isSetupComplete, aQ as resolveStackDir, a5 as getAddonProfileSelection, b as annotateAddonProfileAvailability, a6 as getAddonProfiles } from './src-Bms-Wpj4.js';
3
- import { g as getState } from './state-dBGSHxF6.js';
4
- import { r as requireAdmin, d as getRequestId } from './helpers-BluGgY3g.js';
2
+ import { ac as isSetupComplete, aJ as resolveStackDir, a1 as getAddonProfileSelection, b as annotateAddonProfileAvailability, a2 as getAddonProfiles } from './src-tc6vkfjq.js';
3
+ import { g as getState } from './state-DoUFfa64.js';
4
+ import { r as requireAdmin, d as getRequestId } from './helpers-Dn1KCeOM.js';
5
5
  import './utils-BSRjJDrZ.js';
6
6
  import './chunk-CLZ62Ad-.js';
7
7
  import 'node:module';
@@ -24,7 +24,7 @@ import 'zlib';
24
24
  import 'node:assert';
25
25
  import 'node:fs/promises';
26
26
  import 'node:os';
27
- import './endpoints-ev9YSBb8.js';
27
+ import './endpoints-s4sYxtNX.js';
28
28
 
29
29
  //#region src/routes/api/setup/ollama-profiles/+server.ts
30
30
  var GET = async (event) => {
@@ -41,4 +41,4 @@ var GET = async (event) => {
41
41
  };
42
42
 
43
43
  export { GET };
44
- //# sourceMappingURL=_server.ts-DyAq_u9y.js.map
44
+ //# sourceMappingURL=_server.ts-DZ58hKp_.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-DyAq_u9y.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/setup/ollama-profiles/_server.ts.js"],"sourcesContent":["import { r as json } from \"../../../../../chunks/exports.js\";\nimport { _t as annotateAddonProfileAvailability, bt as getAddonProfiles, en as resolveStackDir, lt as isSetupComplete, yt as getAddonProfileSelection } from \"../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../chunks/state.js\";\nimport { d as requireAdmin, o as getRequestId } from \"../../../../../chunks/helpers.js\";\n//#region src/routes/api/setup/ollama-profiles/+server.ts\nvar GET = async (event) => {\n\tif (isSetupComplete(resolveStackDir())) {\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, \"ollama\")),\n\t\tselectedProfile: getAddonProfileSelection(state.stackDir, \"ollama\")\n\t});\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,IAAI,eAAe,CAAC,eAAe,EAAE,CAAC,EAAE;AACzC,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,QAAQ,CAAC,CAAC;AAC7F,EAAE,eAAe,EAAE,wBAAwB,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ;AACpE,EAAE,CAAC;AACH;;;;"}
1
+ {"version":3,"file":"_server.ts-DZ58hKp_.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/setup/ollama-profiles/_server.ts.js"],"sourcesContent":["import { r as json } from \"../../../../../chunks/exports.js\";\nimport { Jt as resolveStackDir, ct as isSetupComplete, gt as annotateAddonProfileAvailability, vt as getAddonProfileSelection, yt as getAddonProfiles } from \"../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../chunks/state.js\";\nimport { d as requireAdmin, o as getRequestId } from \"../../../../../chunks/helpers.js\";\n//#region src/routes/api/setup/ollama-profiles/+server.ts\nvar GET = async (event) => {\n\tif (isSetupComplete(resolveStackDir())) {\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, \"ollama\")),\n\t\tselectedProfile: getAddonProfileSelection(state.stackDir, \"ollama\")\n\t});\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,IAAI,eAAe,CAAC,eAAe,EAAE,CAAC,EAAE;AACzC,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,QAAQ,CAAC,CAAC;AAC7F,EAAE,eAAe,EAAE,wBAAwB,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ;AACpE,EAAE,CAAC;AACH;;;;"}
@@ -1,6 +1,6 @@
1
- import { d as getRequestId, r as requireAdmin, p as parseJsonBody, j as jsonBodyError, e as errorResponse, k as jsonResponse } from './helpers-BluGgY3g.js';
2
- import { t as testEmbeddingSettings } from './akm-BHWIeMbV.js';
3
- import './src-Bms-Wpj4.js';
1
+ import { d as getRequestId, r as requireAdmin, p as parseJsonBody, j as jsonBodyError, e as errorResponse, k as jsonResponse } from './helpers-Dn1KCeOM.js';
2
+ import { t as testEmbeddingSettings } from './akm-W2jVRoy2.js';
3
+ import './src-tc6vkfjq.js';
4
4
  import './chunk-CLZ62Ad-.js';
5
5
  import 'node:module';
6
6
  import './provider-constants-DPrj3yBX.js';
@@ -22,8 +22,8 @@ import 'zlib';
22
22
  import 'node:assert';
23
23
  import 'node:fs/promises';
24
24
  import 'node:os';
25
- import './endpoints-ev9YSBb8.js';
26
- import './state-dBGSHxF6.js';
25
+ import './endpoints-s4sYxtNX.js';
26
+ import './state-DoUFfa64.js';
27
27
 
28
28
  //#region src/routes/admin/akm/embedding/test/+server.ts
29
29
  var POST = async (event) => {
@@ -51,4 +51,4 @@ var POST = async (event) => {
51
51
  };
52
52
 
53
53
  export { POST };
54
- //# sourceMappingURL=_server.ts-DuzwVKnI.js.map
54
+ //# sourceMappingURL=_server.ts-DZ74wjdy.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-DuzwVKnI.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/akm/embedding/test/_server.ts.js"],"sourcesContent":["import { c as jsonBodyError, d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId, u as parseJsonBody } from \"../../../../../../chunks/helpers.js\";\nimport { r as testEmbeddingSettings } from \"../../../../../../chunks/akm.js\";\n//#region src/routes/admin/akm/embedding/test/+server.ts\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst parsed = await parseJsonBody(event.request);\n\tif (\"error\" in parsed) return jsonBodyError(parsed, requestId);\n\tconst body = parsed.data;\n\tconst endpoint = typeof body.endpoint === \"string\" ? body.endpoint : \"\";\n\tconst model = typeof body.model === \"string\" ? body.model : \"\";\n\tconst provider = typeof body.provider === \"string\" ? body.provider : \"\";\n\tconst apiKey = typeof body.apiKey === \"string\" ? body.apiKey : \"\";\n\tconst dimension = typeof body.dimension === \"number\" ? body.dimension : void 0;\n\tif (!endpoint.trim() || !model.trim()) return errorResponse(400, \"bad_request\", \"Endpoint and model are required.\", {}, requestId);\n\tconst result = await testEmbeddingSettings({\n\t\tendpoint,\n\t\tmodel,\n\t\tprovider,\n\t\tapiKey,\n\t\tdimension\n\t});\n\tif (!result.ok) return errorResponse(502, \"embedding_test_failed\", result.message, {}, requestId);\n\treturn jsonResponse(200, result, requestId);\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AACG,IAAC,IAAI,GAAG,OAAO,KAAK,KAAK;AAC5B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AACjD,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS;AAChC,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,MAAM,QAAQ,GAAG,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,GAAG,IAAI,CAAC,QAAQ,GAAG,EAAE;AACxE,CAAC,MAAM,KAAK,GAAG,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,GAAG,IAAI,CAAC,KAAK,GAAG,EAAE;AAC/D,CAAC,MAAM,QAAQ,GAAG,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,GAAG,IAAI,CAAC,QAAQ,GAAG,EAAE;AACxE,CAAC,MAAM,MAAM,GAAG,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,GAAG,IAAI,CAAC,MAAM,GAAG,EAAE;AAClE,CAAC,MAAM,SAAS,GAAG,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,GAAG,IAAI,CAAC,SAAS,GAAG,MAAM;AAC/E,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,aAAa,EAAE,kCAAkC,EAAE,EAAE,EAAE,SAAS,CAAC;AACnI,CAAC,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC;AAC5C,EAAE,QAAQ;AACV,EAAE,KAAK;AACP,EAAE,QAAQ;AACV,EAAE,MAAM;AACR,EAAE;AACF,EAAE,CAAC;AACH,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,uBAAuB,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,EAAE,SAAS,CAAC;AAClG,CAAC,OAAO,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC;AAC5C;;;;"}
1
+ {"version":3,"file":"_server.ts-DZ74wjdy.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/akm/embedding/test/_server.ts.js"],"sourcesContent":["import { c as jsonBodyError, d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId, u as parseJsonBody } from \"../../../../../../chunks/helpers.js\";\nimport { r as testEmbeddingSettings } from \"../../../../../../chunks/akm.js\";\n//#region src/routes/admin/akm/embedding/test/+server.ts\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst parsed = await parseJsonBody(event.request);\n\tif (\"error\" in parsed) return jsonBodyError(parsed, requestId);\n\tconst body = parsed.data;\n\tconst endpoint = typeof body.endpoint === \"string\" ? body.endpoint : \"\";\n\tconst model = typeof body.model === \"string\" ? body.model : \"\";\n\tconst provider = typeof body.provider === \"string\" ? body.provider : \"\";\n\tconst apiKey = typeof body.apiKey === \"string\" ? body.apiKey : \"\";\n\tconst dimension = typeof body.dimension === \"number\" ? body.dimension : void 0;\n\tif (!endpoint.trim() || !model.trim()) return errorResponse(400, \"bad_request\", \"Endpoint and model are required.\", {}, requestId);\n\tconst result = await testEmbeddingSettings({\n\t\tendpoint,\n\t\tmodel,\n\t\tprovider,\n\t\tapiKey,\n\t\tdimension\n\t});\n\tif (!result.ok) return errorResponse(502, \"embedding_test_failed\", result.message, {}, requestId);\n\treturn jsonResponse(200, result, requestId);\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AACG,IAAC,IAAI,GAAG,OAAO,KAAK,KAAK;AAC5B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AACjD,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS;AAChC,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,MAAM,QAAQ,GAAG,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,GAAG,IAAI,CAAC,QAAQ,GAAG,EAAE;AACxE,CAAC,MAAM,KAAK,GAAG,OAAO,IAAI,CAAC,KAAK,KAAK,QAAQ,GAAG,IAAI,CAAC,KAAK,GAAG,EAAE;AAC/D,CAAC,MAAM,QAAQ,GAAG,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,GAAG,IAAI,CAAC,QAAQ,GAAG,EAAE;AACxE,CAAC,MAAM,MAAM,GAAG,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,GAAG,IAAI,CAAC,MAAM,GAAG,EAAE;AAClE,CAAC,MAAM,SAAS,GAAG,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ,GAAG,IAAI,CAAC,SAAS,GAAG,MAAM;AAC/E,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,aAAa,EAAE,kCAAkC,EAAE,EAAE,EAAE,SAAS,CAAC;AACnI,CAAC,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC;AAC5C,EAAE,QAAQ;AACV,EAAE,KAAK;AACP,EAAE,QAAQ;AACV,EAAE,MAAM;AACR,EAAE;AACF,EAAE,CAAC;AACH,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,uBAAuB,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,EAAE,SAAS,CAAC;AAClG,CAAC,OAAO,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC;AAC5C;;;;"}
@@ -0,0 +1,116 @@
1
+ import { c as applyHomeReconcile, B as BackupSpaceError, M as MigrationError, G as createLogger } from './src-tc6vkfjq.js';
2
+ import { g as getState } from './state-DoUFfa64.js';
3
+ import { d as getRequestId, r as requireAdmin, k as jsonResponse, e as errorResponse } from './helpers-Dn1KCeOM.js';
4
+ import { w as withSerialQueue } from './serial-queue-D9FEpYVv.js';
5
+ import './chunk-CLZ62Ad-.js';
6
+ import 'node:module';
7
+ import './provider-constants-DPrj3yBX.js';
8
+ import './dist-DOFcG0Zp.js';
9
+ import 'node:fs';
10
+ import 'node:path';
11
+ import 'buffer';
12
+ import 'fs';
13
+ import 'path';
14
+ import 'node:child_process';
15
+ import 'node:url';
16
+ import 'node:crypto';
17
+ import 'events';
18
+ import 'node:events';
19
+ import 'node:stream';
20
+ import 'node:string_decoder';
21
+ import 'assert';
22
+ import 'zlib';
23
+ import 'node:assert';
24
+ import 'node:fs/promises';
25
+ import 'node:os';
26
+ import './endpoints-s4sYxtNX.js';
27
+
28
+ //#region src/routes/admin/migrate-apply/+server.ts
29
+ var logger = createLogger("migrate-apply");
30
+ /**
31
+ * Apply everything OP_HOME needs to match the running platform, and report the
32
+ * result. Runs the single home-reconcile primitive (`applyHomeReconcile`):
33
+ * layout + release migrations (full-home backup first, idempotent), then secrets,
34
+ * skeleton seed, and OpenCode config. This is the deliberate, user-clicked write
35
+ * path that replaced the per-request self-healing — serving the UI is a pure read.
36
+ *
37
+ * This does NOT pull images or recreate containers — it only reconciles the home
38
+ * directory so the splash landing can unblock a user whose home is behind, then
39
+ * route them onward.
40
+ *
41
+ * BackupSpaceError (the pre-backup free-space guard) is surfaced as 409 with the
42
+ * estimate so the UI can ask the user to confirm before retrying with
43
+ * `confirmLowSpace: true`. Nothing is modified when that fires.
44
+ */
45
+ var POST = async (event) => {
46
+ const requestId = getRequestId(event);
47
+ const authError = requireAdmin(event, requestId);
48
+ if (authError) return authError;
49
+ let body;
50
+ try {
51
+ body = await event.request.json();
52
+ } catch {
53
+ body = {};
54
+ }
55
+ const confirmLowSpace = body.confirmLowSpace === true;
56
+ return withSerialQueue("admin:install", async () => {
57
+ const state = getState();
58
+ try {
59
+ const { migration, backupDir } = await applyHomeReconcile(state, { confirmLowSpace });
60
+ logger.info("home reconciled", {
61
+ requestId,
62
+ migrated: migration.migrated,
63
+ from: migration.from,
64
+ to: migration.to,
65
+ releaseApplied: migration.releaseApplied,
66
+ backupDir
67
+ });
68
+ return jsonResponse(200, {
69
+ ok: true,
70
+ migrated: migration.migrated,
71
+ from: migration.from,
72
+ to: migration.to,
73
+ applied: migration.applied,
74
+ releaseFrom: migration.releaseFrom,
75
+ releaseTo: migration.releaseTo,
76
+ releaseApplied: migration.releaseApplied,
77
+ backupDir,
78
+ notes: migration.notes
79
+ }, requestId);
80
+ } catch (e) {
81
+ if (e instanceof BackupSpaceError) {
82
+ logger.warn("migration blocked: low free space", {
83
+ requestId,
84
+ estimatedBytes: e.estimatedBytes,
85
+ freeBytes: e.freeBytes
86
+ });
87
+ return errorResponse(409, "low_space", e.message, {
88
+ guidance: e.guidance,
89
+ estimatedBytes: e.estimatedBytes,
90
+ freeBytes: e.freeBytes,
91
+ confirmable: true
92
+ }, requestId);
93
+ }
94
+ if (e instanceof MigrationError) {
95
+ logger.error("migration failed", {
96
+ requestId,
97
+ error: e.message,
98
+ backupDir: e.backupDir
99
+ });
100
+ return errorResponse(500, "migration_failed", e.message, {
101
+ guidance: e.guidance,
102
+ backupDir: e.backupDir
103
+ }, requestId);
104
+ }
105
+ const msg = e instanceof Error ? e.message : String(e);
106
+ logger.error("migration failed (unexpected)", {
107
+ requestId,
108
+ error: msg
109
+ });
110
+ return errorResponse(500, "migration_failed", msg, {}, requestId);
111
+ }
112
+ });
113
+ };
114
+
115
+ export { POST };
116
+ //# sourceMappingURL=_server.ts-DZuJpxeF.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts-DZuJpxeF.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/migrate-apply/_server.ts.js"],"sourcesContent":["import { L as applyHomeReconcile, Xt as MigrationError, Yt as BackupSpaceError, ln as createLogger } from \"../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../chunks/state.js\";\nimport { d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId } from \"../../../../chunks/helpers.js\";\nimport { t as withSerialQueue } from \"../../../../chunks/serial-queue.js\";\n//#region src/routes/admin/migrate-apply/+server.ts\nvar logger = createLogger(\"migrate-apply\");\n/**\n* Apply everything OP_HOME needs to match the running platform, and report the\n* result. Runs the single home-reconcile primitive (`applyHomeReconcile`):\n* layout + release migrations (full-home backup first, idempotent), then secrets,\n* skeleton seed, and OpenCode config. This is the deliberate, user-clicked write\n* path that replaced the per-request self-healing — serving the UI is a pure read.\n*\n* This does NOT pull images or recreate containers — it only reconciles the home\n* directory so the splash landing can unblock a user whose home is behind, then\n* route them onward.\n*\n* BackupSpaceError (the pre-backup free-space guard) is surfaced as 409 with the\n* estimate so the UI can ask the user to confirm before retrying with\n* `confirmLowSpace: true`. Nothing is modified when that fires.\n*/\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tlet body;\n\ttry {\n\t\tbody = await event.request.json();\n\t} catch {\n\t\tbody = {};\n\t}\n\tconst confirmLowSpace = body.confirmLowSpace === true;\n\treturn withSerialQueue(\"admin:install\", async () => {\n\t\tconst state = getState();\n\t\ttry {\n\t\t\tconst { migration, backupDir } = await applyHomeReconcile(state, { confirmLowSpace });\n\t\t\tlogger.info(\"home reconciled\", {\n\t\t\t\trequestId,\n\t\t\t\tmigrated: migration.migrated,\n\t\t\t\tfrom: migration.from,\n\t\t\t\tto: migration.to,\n\t\t\t\treleaseApplied: migration.releaseApplied,\n\t\t\t\tbackupDir\n\t\t\t});\n\t\t\treturn jsonResponse(200, {\n\t\t\t\tok: true,\n\t\t\t\tmigrated: migration.migrated,\n\t\t\t\tfrom: migration.from,\n\t\t\t\tto: migration.to,\n\t\t\t\tapplied: migration.applied,\n\t\t\t\treleaseFrom: migration.releaseFrom,\n\t\t\t\treleaseTo: migration.releaseTo,\n\t\t\t\treleaseApplied: migration.releaseApplied,\n\t\t\t\tbackupDir,\n\t\t\t\tnotes: migration.notes\n\t\t\t}, requestId);\n\t\t} catch (e) {\n\t\t\tif (e instanceof BackupSpaceError) {\n\t\t\t\tlogger.warn(\"migration blocked: low free space\", {\n\t\t\t\t\trequestId,\n\t\t\t\t\testimatedBytes: e.estimatedBytes,\n\t\t\t\t\tfreeBytes: e.freeBytes\n\t\t\t\t});\n\t\t\t\treturn errorResponse(409, \"low_space\", e.message, {\n\t\t\t\t\tguidance: e.guidance,\n\t\t\t\t\testimatedBytes: e.estimatedBytes,\n\t\t\t\t\tfreeBytes: e.freeBytes,\n\t\t\t\t\tconfirmable: true\n\t\t\t\t}, requestId);\n\t\t\t}\n\t\t\tif (e instanceof MigrationError) {\n\t\t\t\tlogger.error(\"migration failed\", {\n\t\t\t\t\trequestId,\n\t\t\t\t\terror: e.message,\n\t\t\t\t\tbackupDir: e.backupDir\n\t\t\t\t});\n\t\t\t\treturn errorResponse(500, \"migration_failed\", e.message, {\n\t\t\t\t\tguidance: e.guidance,\n\t\t\t\t\tbackupDir: e.backupDir\n\t\t\t\t}, requestId);\n\t\t\t}\n\t\t\tconst msg = e instanceof Error ? e.message : String(e);\n\t\t\tlogger.error(\"migration failed (unexpected)\", {\n\t\t\t\trequestId,\n\t\t\t\terror: msg\n\t\t\t});\n\t\t\treturn errorResponse(500, \"migration_failed\", msg, {}, requestId);\n\t\t}\n\t});\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- import { d as deleteEndpoint, v as validateEndpointUrl, u as updateEndpoint } from './endpoints-ev9YSBb8.js';
2
- import { d as getRequestId, r as requireAdmin, k as jsonResponse, e as errorResponse, w as withAdminBody } from './helpers-BluGgY3g.js';
3
- import './state-dBGSHxF6.js';
4
- import './src-Bms-Wpj4.js';
1
+ import { d as deleteEndpoint, v as validateEndpointUrl, u as updateEndpoint } from './endpoints-s4sYxtNX.js';
2
+ import { d as getRequestId, r as requireAdmin, k as jsonResponse, e as errorResponse, w as withAdminBody } from './helpers-Dn1KCeOM.js';
3
+ import './state-DoUFfa64.js';
4
+ import './src-tc6vkfjq.js';
5
5
  import './chunk-CLZ62Ad-.js';
6
6
  import 'node:module';
7
7
  import './provider-constants-DPrj3yBX.js';
@@ -70,4 +70,4 @@ var DELETE = async (event) => {
70
70
  };
71
71
 
72
72
  export { DELETE, PATCH };
73
- //# sourceMappingURL=_server.ts-Bzx8e_vT.js.map
73
+ //# sourceMappingURL=_server.ts-DZxyfVfk.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-Bzx8e_vT.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/endpoints/_id_/_server.ts.js"],"sourcesContent":["import { c as validateEndpointUrl, n as deleteEndpoint, s as updateEndpoint } from \"../../../../../chunks/endpoints.js\";\nimport { d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId, p as withAdminBody } from \"../../../../../chunks/helpers.js\";\n//#region src/routes/admin/endpoints/[id]/+server.ts\nvar PATCH = async (event) => withAdminBody(event, async ({ requestId, body }) => {\n\tconst id = event.params.id;\n\tconst patch = {};\n\tif (typeof body.label === \"string\") patch.label = body.label;\n\tif (typeof body.url === \"string\") {\n\t\tconst urlCheck = validateEndpointUrl(body.url);\n\t\tif (!urlCheck.ok) {\n\t\t\tif (urlCheck.reason === \"http_not_allowed\") return errorResponse(400, \"http_not_allowed\", \"Plain HTTP is only allowed for loopback addresses. Use https:// for remote OpenPalm instances.\", {}, requestId);\n\t\t\treturn errorResponse(400, \"invalid_endpoint\", \"URL must be a valid http(s) URL\", {}, requestId);\n\t\t}\n\t\tpatch.url = urlCheck.url;\n\t}\n\tif (body.password === null) patch.password = null;\n\telse if (typeof body.password === \"string\") patch.password = body.password;\n\ttry {\n\t\tconst entry = updateEndpoint(id, patch);\n\t\treturn jsonResponse(200, { endpoint: {\n\t\t\tid: entry.id,\n\t\t\tlabel: entry.label,\n\t\t\turl: entry.url,\n\t\t\tisDefault: false,\n\t\t\thasPassword: Boolean(entry.password)\n\t\t} }, requestId);\n\t} catch (e) {\n\t\tconst msg = e instanceof Error ? e.message : \"failed to update endpoint\";\n\t\tconst status = msg.startsWith(\"Endpoint not found\") ? 404 : 400;\n\t\treturn errorResponse(status, status === 404 ? \"not_found\" : \"invalid_endpoint\", msg, {}, requestId);\n\t}\n});\nvar DELETE = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst id = event.params.id;\n\ttry {\n\t\tdeleteEndpoint(id);\n\t\treturn jsonResponse(200, { ok: true }, requestId);\n\t} catch (e) {\n\t\tconst msg = e instanceof Error ? e.message : \"failed to delete endpoint\";\n\t\tconst status = msg.startsWith(\"Endpoint not found\") ? 404 : 400;\n\t\treturn errorResponse(status, status === 404 ? \"not_found\" : \"invalid_endpoint\", msg, {}, requestId);\n\t}\n};\n//#endregion\nexport { DELETE, PATCH };\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_server.ts-DZxyfVfk.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/endpoints/_id_/_server.ts.js"],"sourcesContent":["import { c as validateEndpointUrl, n as deleteEndpoint, s as updateEndpoint } from \"../../../../../chunks/endpoints.js\";\nimport { d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId, p as withAdminBody } from \"../../../../../chunks/helpers.js\";\n//#region src/routes/admin/endpoints/[id]/+server.ts\nvar PATCH = async (event) => withAdminBody(event, async ({ requestId, body }) => {\n\tconst id = event.params.id;\n\tconst patch = {};\n\tif (typeof body.label === \"string\") patch.label = body.label;\n\tif (typeof body.url === \"string\") {\n\t\tconst urlCheck = validateEndpointUrl(body.url);\n\t\tif (!urlCheck.ok) {\n\t\t\tif (urlCheck.reason === \"http_not_allowed\") return errorResponse(400, \"http_not_allowed\", \"Plain HTTP is only allowed for loopback addresses. Use https:// for remote OpenPalm instances.\", {}, requestId);\n\t\t\treturn errorResponse(400, \"invalid_endpoint\", \"URL must be a valid http(s) URL\", {}, requestId);\n\t\t}\n\t\tpatch.url = urlCheck.url;\n\t}\n\tif (body.password === null) patch.password = null;\n\telse if (typeof body.password === \"string\") patch.password = body.password;\n\ttry {\n\t\tconst entry = updateEndpoint(id, patch);\n\t\treturn jsonResponse(200, { endpoint: {\n\t\t\tid: entry.id,\n\t\t\tlabel: entry.label,\n\t\t\turl: entry.url,\n\t\t\tisDefault: false,\n\t\t\thasPassword: Boolean(entry.password)\n\t\t} }, requestId);\n\t} catch (e) {\n\t\tconst msg = e instanceof Error ? e.message : \"failed to update endpoint\";\n\t\tconst status = msg.startsWith(\"Endpoint not found\") ? 404 : 400;\n\t\treturn errorResponse(status, status === 404 ? \"not_found\" : \"invalid_endpoint\", msg, {}, requestId);\n\t}\n});\nvar DELETE = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst id = event.params.id;\n\ttry {\n\t\tdeleteEndpoint(id);\n\t\treturn jsonResponse(200, { ok: true }, requestId);\n\t} catch (e) {\n\t\tconst msg = e instanceof Error ? e.message : \"failed to delete endpoint\";\n\t\tconst status = msg.startsWith(\"Endpoint not found\") ? 404 : 400;\n\t\treturn errorResponse(status, status === 404 ? \"not_found\" : \"invalid_endpoint\", msg, {}, requestId);\n\t}\n};\n//#endregion\nexport { DELETE, PATCH };\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { F as createLogger, Y as ensureMigrated, M as MigrationError, X as ensureHomeDirs, Z as ensureOpenCodeConfig, _ as ensureOpenCodeSystemConfig, a0 as ensureSecrets, c as applyInstall, m as buildManagedServices, n as checkDocker, E as composeUp, l as buildComposeOptions, C as CORE_SERVICES } from './src-Bms-Wpj4.js';
2
- import { g as getState } from './state-dBGSHxF6.js';
3
- import { d as getRequestId, r as requireAdmin, e as errorResponse, k as jsonResponse } from './helpers-BluGgY3g.js';
1
+ import { G as createLogger, Y as ensureMigrated, M as MigrationError, d as applyInstall, n as buildManagedServices, o as checkDocker, F as composeUp, m as buildComposeOptions, C as CORE_SERVICES } from './src-tc6vkfjq.js';
2
+ import { g as getState } from './state-DoUFfa64.js';
3
+ import { d as getRequestId, r as requireAdmin, e as errorResponse, k as jsonResponse } from './helpers-Dn1KCeOM.js';
4
4
  import { w as withSerialQueue } from './serial-queue-D9FEpYVv.js';
5
5
  import './chunk-CLZ62Ad-.js';
6
6
  import 'node:module';
@@ -23,7 +23,7 @@ import 'zlib';
23
23
  import 'node:assert';
24
24
  import 'node:fs/promises';
25
25
  import 'node:os';
26
- import './endpoints-ev9YSBb8.js';
26
+ import './endpoints-s4sYxtNX.js';
27
27
 
28
28
  //#region src/routes/admin/install/+server.ts
29
29
  var logger = createLogger("install");
@@ -57,11 +57,6 @@ var POST = async (event) => {
57
57
  throw e;
58
58
  }
59
59
  const state = getState();
60
- logger.info("ensuring home directories and seeding config", { requestId });
61
- ensureHomeDirs();
62
- ensureOpenCodeConfig();
63
- ensureOpenCodeSystemConfig();
64
- ensureSecrets(state);
65
60
  await applyInstall(state);
66
61
  const managedServices = await buildManagedServices(state);
67
62
  logger.info("checking Docker availability", { requestId });
@@ -105,4 +100,4 @@ var POST = async (event) => {
105
100
  };
106
101
 
107
102
  export { POST };
108
- //# sourceMappingURL=_server.ts-CwLV4b1f.js.map
103
+ //# sourceMappingURL=_server.ts-DaO2pf4f.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts-DaO2pf4f.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/install/_server.ts.js"],"sourcesContent":["import { I as buildComposeOptions, J as checkDocker, R as applyInstall, V as buildManagedServices, Xt as MigrationError, Zt as ensureMigrated, at as composeUp, cn as CORE_SERVICES, ln as createLogger } from \"../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../chunks/state.js\";\nimport { d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId } from \"../../../../chunks/helpers.js\";\nimport { t as withSerialQueue } from \"../../../../chunks/serial-queue.js\";\n//#region src/routes/admin/install/+server.ts\nvar logger = createLogger(\"install\");\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tlogger.info(\"install request received\", { requestId });\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\treturn withSerialQueue(\"admin:install\", async () => {\n\t\ttry {\n\t\t\ttry {\n\t\t\t\tconst report = ensureMigrated();\n\t\t\t\tif (report.migrated) logger.info(\"layout migrated\", {\n\t\t\t\t\trequestId,\n\t\t\t\t\tfrom: report.from,\n\t\t\t\t\tto: report.to,\n\t\t\t\t\tbackupDir: report.backupDir\n\t\t\t\t});\n\t\t\t} catch (e) {\n\t\t\t\tif (e instanceof MigrationError) {\n\t\t\t\t\tlogger.error(\"auto-migration aborted\", {\n\t\t\t\t\t\trequestId,\n\t\t\t\t\t\terror: e.message,\n\t\t\t\t\t\tbackupDir: e.backupDir\n\t\t\t\t\t});\n\t\t\t\t\treturn errorResponse(500, \"migration_failed\", e.message, {\n\t\t\t\t\t\tguidance: e.guidance,\n\t\t\t\t\t\tbackupDir: e.backupDir\n\t\t\t\t\t}, requestId);\n\t\t\t\t}\n\t\t\t\tthrow e;\n\t\t\t}\n\t\t\tconst state = getState();\n\t\t\tawait applyInstall(state);\n\t\t\tconst managedServices = await buildManagedServices(state);\n\t\t\tlogger.info(\"checking Docker availability\", { requestId });\n\t\t\tconst dockerCheck = await checkDocker();\n\t\t\tlet dockerResult = null;\n\t\t\tif (dockerCheck.ok) {\n\t\t\t\tlogger.info(\"starting compose up\", {\n\t\t\t\t\trequestId,\n\t\t\t\t\tservices: managedServices\n\t\t\t\t});\n\t\t\t\tdockerResult = await composeUp({\n\t\t\t\t\t...buildComposeOptions(state),\n\t\t\t\t\tservices: managedServices\n\t\t\t\t});\n\t\t\t}\n\t\t\tconst started = [...CORE_SERVICES];\n\t\t\tlogger.info(\"install completed\", {\n\t\t\t\trequestId,\n\t\t\t\tstarted,\n\t\t\t\tdockerAvailable: dockerCheck.ok,\n\t\t\t\tcomposeOk: dockerResult?.ok ?? null\n\t\t\t});\n\t\t\treturn jsonResponse(200, {\n\t\t\t\tok: true,\n\t\t\t\tstarted,\n\t\t\t\tdockerAvailable: dockerCheck.ok,\n\t\t\t\tcomposeResult: dockerResult ? {\n\t\t\t\t\tok: dockerResult.ok,\n\t\t\t\t\tstderr: dockerResult.stderr\n\t\t\t\t} : null\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,8 +1,8 @@
1
1
  import { j as json } from './exports-D1quPX8S.js';
2
- import { ad as importHostOpenCode, h as authJsonPath, O as detectHostOpenCode, F as createLogger, n as checkDocker, l as buildComposeOptions } from './src-Bms-Wpj4.js';
3
- import { g as getState } from './state-dBGSHxF6.js';
4
- import { o as opencodeFetch } from './http-BmFqfzyw.js';
5
- import { c as composeRestart } from './docker-CEt-3e57.js';
2
+ import { a9 as importHostOpenCode, i as authJsonPath, Q as detectHostOpenCode, G as createLogger, o as checkDocker, m as buildComposeOptions } from './src-tc6vkfjq.js';
3
+ import { g as getState } from './state-DoUFfa64.js';
4
+ import { o as opencodeFetch } from './http-6U0ZbxrK.js';
5
+ import { c as composeRestart } from './docker-19UOjwnj.js';
6
6
  import { existsSync, readFileSync } from 'node:fs';
7
7
  import './utils-BSRjJDrZ.js';
8
8
  import './chunk-CLZ62Ad-.js';
@@ -25,7 +25,7 @@ import 'zlib';
25
25
  import 'node:assert';
26
26
  import 'node:fs/promises';
27
27
  import 'node:os';
28
- import './endpoints-ev9YSBb8.js';
28
+ import './endpoints-s4sYxtNX.js';
29
29
 
30
30
  //#region src/routes/api/setup/import-host/+server.ts
31
31
  /**
@@ -169,4 +169,4 @@ var POST = async () => {
169
169
  };
170
170
 
171
171
  export { POST };
172
- //# sourceMappingURL=_server.ts-7YfKZbRf.js.map
172
+ //# sourceMappingURL=_server.ts-DbGmuYND.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-7YfKZbRf.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/setup/import-host/_server.ts.js"],"sourcesContent":["import { r as json } from \"../../../../../chunks/exports.js\";\nimport { I as buildComposeOptions, Y as checkDocker, Yt as authJsonPath, _n as createLogger, a as importHostOpenCode, i as detectHostOpenCode } from \"../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../chunks/state.js\";\nimport { t as opencodeFetch } from \"../../../../../chunks/http.js\";\nimport { t as composeRestart } from \"../../../../../chunks/docker.js\";\nimport { existsSync, readFileSync } from \"node:fs\";\n//#region src/routes/api/setup/import-host/+server.ts\n/**\n* POST /api/setup/import-host\n*\n* Setup-phase equivalent of POST /admin/providers/import-host.\n* No admin auth required — the admin token hasn't been written yet during setup.\n*\n* Copies host OpenCode config + auth into OP_HOME and live-pushes credentials\n* to the running OpenCode subprocess so providers appear connected immediately.\n*/\nvar logger = createLogger(\"setup:import-host\");\nasync function pushAuthToOpenCode(authPath) {\n\tlet raw;\n\ttry {\n\t\traw = JSON.parse(readFileSync(authPath, \"utf-8\"));\n\t} catch (err) {\n\t\treturn {\n\t\t\tpushed: [],\n\t\t\terrors: [{\n\t\t\t\tprovider: \"*\",\n\t\t\t\terror: `Could not read auth.json: ${err instanceof Error ? err.message : String(err)}`\n\t\t\t}]\n\t\t};\n\t}\n\tif (!raw || typeof raw !== \"object\" || Array.isArray(raw)) return {\n\t\tpushed: [],\n\t\terrors: [{\n\t\t\tprovider: \"*\",\n\t\t\terror: \"auth.json is not a JSON object\"\n\t\t}]\n\t};\n\tconst pushed = [];\n\tconst errors = [];\n\tfor (const [providerId, value] of Object.entries(raw)) {\n\t\tif (providerId === \"anthropic\") continue;\n\t\ttry {\n\t\t\tawait opencodeFetch(`/auth/${encodeURIComponent(providerId)}`, {\n\t\t\t\tmethod: \"PUT\",\n\t\t\t\tbody: JSON.stringify(value)\n\t\t\t});\n\t\t\tpushed.push(providerId);\n\t\t} catch (err) {\n\t\t\terrors.push({\n\t\t\t\tprovider: providerId,\n\t\t\t\terror: err instanceof Error ? err.message : String(err)\n\t\t\t});\n\t\t}\n\t}\n\treturn {\n\t\tpushed,\n\t\terrors\n\t};\n}\n/** Restart provider-consuming services so they re-read imported startup config. */\nasync function restartProviderConsumers(state) {\n\tconst services = [\"assistant\"];\n\tif (!(await checkDocker()).ok) return {\n\t\trestarted: [],\n\t\tfailed: services.map((s) => ({\n\t\t\tservice: s,\n\t\t\terror: \"docker unavailable\"\n\t\t}))\n\t};\n\tconst opts = buildComposeOptions(state);\n\tconst restarted = [];\n\tconst failed = [];\n\tfor (const service of services) try {\n\t\tconst r = await composeRestart([service], opts);\n\t\tif (r.ok) restarted.push(service);\n\t\telse failed.push({\n\t\t\tservice,\n\t\t\terror: r.stderr || `exit ${r.code}`\n\t\t});\n\t} catch (err) {\n\t\tfailed.push({\n\t\t\tservice,\n\t\t\terror: err instanceof Error ? err.message : String(err)\n\t\t});\n\t}\n\treturn {\n\t\trestarted,\n\t\tfailed\n\t};\n}\n/** Read the provider ids present in an auth.json, ignoring read/parse errors. */\nfunction providerIdsFromAuth(authPath) {\n\ttry {\n\t\tconst raw = JSON.parse(readFileSync(authPath, \"utf-8\"));\n\t\tif (raw && typeof raw === \"object\" && !Array.isArray(raw)) return Object.keys(raw);\n\t} catch {}\n\treturn [];\n}\nvar POST = async () => {\n\tconst state = getState();\n\tlet result;\n\ttry {\n\t\tresult = importHostOpenCode(state, { overwriteConflicts: false });\n\t} catch (err) {\n\t\treturn json({\n\t\t\tok: false,\n\t\t\terror: `Could not copy host OpenCode config: ${err instanceof Error ? err.message : String(err)}`\n\t\t}, { status: 500 });\n\t}\n\tconst importedAuthPath = authJsonPath(state);\n\tlet importedProviderIds = [];\n\tif (result.imported.credentials > 0 || existsSync(importedAuthPath)) {\n\t\tconst fromDestination = providerIdsFromAuth(importedAuthPath);\n\t\tif (fromDestination.length > 0) importedProviderIds = fromDestination;\n\t\telse if (result.imported.credentials > 0) {\n\t\t\tconst hostStatus = detectHostOpenCode();\n\t\t\tconst hostFallback = hostStatus.authPath ? providerIdsFromAuth(hostStatus.authPath) : [];\n\t\t\tlogger.warn(\"post-copy auth.json read returned no providers despite credentials being reported; falling back to host auth.json\", {\n\t\t\t\timportedAuthPath,\n\t\t\t\timportedCredentials: result.imported.credentials,\n\t\t\t\tfallbackCount: hostFallback.length\n\t\t\t});\n\t\t\timportedProviderIds = hostFallback;\n\t\t}\n\t}\n\tconst conflictProviders = result.conflicts;\n\tconst authPathToUse = existsSync(importedAuthPath) ? importedAuthPath : null;\n\tlet pushResult = {\n\t\tpushed: [],\n\t\terrors: []\n\t};\n\tif (authPathToUse) pushResult = await pushAuthToOpenCode(authPathToUse);\n\tconst restart = await restartProviderConsumers(state);\n\treturn json({\n\t\tok: true,\n\t\timported: result.imported,\n\t\timportedProviders: importedProviderIds,\n\t\tconflicts: result.conflicts.length,\n\t\tconflictProviders,\n\t\tlivePushed: pushResult.pushed.length,\n\t\tpushedProviders: pushResult.pushed,\n\t\terrors: pushResult.errors,\n\t\trestarted: restart.restarted,\n\t\trestartFailed: restart.failed\n\t});\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_server.ts-DbGmuYND.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/setup/import-host/_server.ts.js"],"sourcesContent":["import { r as json } from \"../../../../../chunks/exports.js\";\nimport { I as buildComposeOptions, J as checkDocker, Wt as authJsonPath, a as importHostOpenCode, i as detectHostOpenCode, ln as createLogger } from \"../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../chunks/state.js\";\nimport { t as opencodeFetch } from \"../../../../../chunks/http.js\";\nimport { t as composeRestart } from \"../../../../../chunks/docker.js\";\nimport { existsSync, readFileSync } from \"node:fs\";\n//#region src/routes/api/setup/import-host/+server.ts\n/**\n* POST /api/setup/import-host\n*\n* Setup-phase equivalent of POST /admin/providers/import-host.\n* No admin auth required — the admin token hasn't been written yet during setup.\n*\n* Copies host OpenCode config + auth into OP_HOME and live-pushes credentials\n* to the running OpenCode subprocess so providers appear connected immediately.\n*/\nvar logger = createLogger(\"setup:import-host\");\nasync function pushAuthToOpenCode(authPath) {\n\tlet raw;\n\ttry {\n\t\traw = JSON.parse(readFileSync(authPath, \"utf-8\"));\n\t} catch (err) {\n\t\treturn {\n\t\t\tpushed: [],\n\t\t\terrors: [{\n\t\t\t\tprovider: \"*\",\n\t\t\t\terror: `Could not read auth.json: ${err instanceof Error ? err.message : String(err)}`\n\t\t\t}]\n\t\t};\n\t}\n\tif (!raw || typeof raw !== \"object\" || Array.isArray(raw)) return {\n\t\tpushed: [],\n\t\terrors: [{\n\t\t\tprovider: \"*\",\n\t\t\terror: \"auth.json is not a JSON object\"\n\t\t}]\n\t};\n\tconst pushed = [];\n\tconst errors = [];\n\tfor (const [providerId, value] of Object.entries(raw)) {\n\t\tif (providerId === \"anthropic\") continue;\n\t\ttry {\n\t\t\tawait opencodeFetch(`/auth/${encodeURIComponent(providerId)}`, {\n\t\t\t\tmethod: \"PUT\",\n\t\t\t\tbody: JSON.stringify(value)\n\t\t\t});\n\t\t\tpushed.push(providerId);\n\t\t} catch (err) {\n\t\t\terrors.push({\n\t\t\t\tprovider: providerId,\n\t\t\t\terror: err instanceof Error ? err.message : String(err)\n\t\t\t});\n\t\t}\n\t}\n\treturn {\n\t\tpushed,\n\t\terrors\n\t};\n}\n/** Restart provider-consuming services so they re-read imported startup config. */\nasync function restartProviderConsumers(state) {\n\tconst services = [\"assistant\"];\n\tif (!(await checkDocker()).ok) return {\n\t\trestarted: [],\n\t\tfailed: services.map((s) => ({\n\t\t\tservice: s,\n\t\t\terror: \"docker unavailable\"\n\t\t}))\n\t};\n\tconst opts = buildComposeOptions(state);\n\tconst restarted = [];\n\tconst failed = [];\n\tfor (const service of services) try {\n\t\tconst r = await composeRestart([service], opts);\n\t\tif (r.ok) restarted.push(service);\n\t\telse failed.push({\n\t\t\tservice,\n\t\t\terror: r.stderr || `exit ${r.code}`\n\t\t});\n\t} catch (err) {\n\t\tfailed.push({\n\t\t\tservice,\n\t\t\terror: err instanceof Error ? err.message : String(err)\n\t\t});\n\t}\n\treturn {\n\t\trestarted,\n\t\tfailed\n\t};\n}\n/** Read the provider ids present in an auth.json, ignoring read/parse errors. */\nfunction providerIdsFromAuth(authPath) {\n\ttry {\n\t\tconst raw = JSON.parse(readFileSync(authPath, \"utf-8\"));\n\t\tif (raw && typeof raw === \"object\" && !Array.isArray(raw)) return Object.keys(raw);\n\t} catch {}\n\treturn [];\n}\nvar POST = async () => {\n\tconst state = getState();\n\tlet result;\n\ttry {\n\t\tresult = importHostOpenCode(state, { overwriteConflicts: false });\n\t} catch (err) {\n\t\treturn json({\n\t\t\tok: false,\n\t\t\terror: `Could not copy host OpenCode config: ${err instanceof Error ? err.message : String(err)}`\n\t\t}, { status: 500 });\n\t}\n\tconst importedAuthPath = authJsonPath(state);\n\tlet importedProviderIds = [];\n\tif (result.imported.credentials > 0 || existsSync(importedAuthPath)) {\n\t\tconst fromDestination = providerIdsFromAuth(importedAuthPath);\n\t\tif (fromDestination.length > 0) importedProviderIds = fromDestination;\n\t\telse if (result.imported.credentials > 0) {\n\t\t\tconst hostStatus = detectHostOpenCode();\n\t\t\tconst hostFallback = hostStatus.authPath ? providerIdsFromAuth(hostStatus.authPath) : [];\n\t\t\tlogger.warn(\"post-copy auth.json read returned no providers despite credentials being reported; falling back to host auth.json\", {\n\t\t\t\timportedAuthPath,\n\t\t\t\timportedCredentials: result.imported.credentials,\n\t\t\t\tfallbackCount: hostFallback.length\n\t\t\t});\n\t\t\timportedProviderIds = hostFallback;\n\t\t}\n\t}\n\tconst conflictProviders = result.conflicts;\n\tconst authPathToUse = existsSync(importedAuthPath) ? importedAuthPath : null;\n\tlet pushResult = {\n\t\tpushed: [],\n\t\terrors: []\n\t};\n\tif (authPathToUse) pushResult = await pushAuthToOpenCode(authPathToUse);\n\tconst restart = await restartProviderConsumers(state);\n\treturn json({\n\t\tok: true,\n\t\timported: result.imported,\n\t\timportedProviders: importedProviderIds,\n\t\tconflicts: result.conflicts.length,\n\t\tconflictProviders,\n\t\tlivePushed: pushResult.pushed.length,\n\t\tpushedProviders: pushResult.pushed,\n\t\terrors: pushResult.errors,\n\t\trestarted: restart.restarted,\n\t\trestartFailed: restart.failed\n\t});\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { d as getRequestId, r as requireAdmin, g as getOpenCodeClient, e as errorResponse, k as jsonResponse } from './helpers-BluGgY3g.js';
1
+ import { d as getRequestId, r as requireAdmin, g as getOpenCodeClient, e as errorResponse, k as jsonResponse } from './helpers-Dn1KCeOM.js';
2
2
  import { b as asRecord } from './coercion-TNFJisCC.js';
3
- import './src-Bms-Wpj4.js';
3
+ import './src-tc6vkfjq.js';
4
4
  import './chunk-CLZ62Ad-.js';
5
5
  import 'node:module';
6
6
  import './provider-constants-DPrj3yBX.js';
@@ -22,8 +22,8 @@ import 'zlib';
22
22
  import 'node:assert';
23
23
  import 'node:fs/promises';
24
24
  import 'node:os';
25
- import './endpoints-ev9YSBb8.js';
26
- import './state-dBGSHxF6.js';
25
+ import './endpoints-s4sYxtNX.js';
26
+ import './state-DoUFfa64.js';
27
27
 
28
28
  //#region src/lib/opencode/provider-models.ts
29
29
  function sanitizeOpenCodeModels(models, fallbackProviderId) {
@@ -56,4 +56,4 @@ var GET = async (event) => {
56
56
  };
57
57
 
58
58
  export { GET };
59
- //# sourceMappingURL=_server.ts-Ff36E_kQ.js.map
59
+ //# sourceMappingURL=_server.ts-DezqI1zw.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-Ff36E_kQ.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/opencode/providers/_id_/models/_server.ts.js"],"sourcesContent":["import { a as getOpenCodeClient, d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId } from \"../../../../../../../chunks/helpers.js\";\nimport { n as asRecord } from \"../../../../../../../chunks/coercion.js\";\n//#region src/lib/opencode/provider-models.ts\nfunction sanitizeOpenCodeModels(models, fallbackProviderId) {\n\tif (!models || typeof models !== \"object\") return [];\n\treturn Object.values(models).map((value) => asRecord(value)).filter((model) => typeof model?.id === \"string\").map((model) => {\n\t\tconst id = model.id;\n\t\treturn {\n\t\t\tid,\n\t\t\tname: typeof model.name === \"string\" ? model.name : id,\n\t\t\tfamily: typeof model.family === \"string\" ? model.family : \"\",\n\t\t\tproviderID: typeof model.providerID === \"string\" ? model.providerID : fallbackProviderId,\n\t\t\tstatus: typeof model.status === \"string\" ? model.status : \"active\",\n\t\t\tcapabilities: asRecord(model.capabilities) ?? {}\n\t\t};\n\t});\n}\n//#endregion\n//#region src/routes/admin/opencode/providers/[id]/models/+server.ts\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst providerId = event.params.id;\n\tconst result = await getOpenCodeClient().proxy(\"/provider\");\n\tif (!result.ok) return errorResponse(result.status, result.code, result.message, {}, requestId);\n\tconst provider = result.data.all?.find((p) => p.id === providerId);\n\tif (!provider) return errorResponse(404, \"not_found\", `Provider \"${providerId}\" not found`, {}, requestId);\n\tif (!provider.models) return jsonResponse(200, { models: [] }, requestId);\n\treturn jsonResponse(200, { models: sanitizeOpenCodeModels(provider.models, providerId) }, requestId);\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AACA,SAAS,sBAAsB,CAAC,MAAM,EAAE,kBAAkB,EAAE;AAC5D,CAAC,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,OAAO,EAAE;AACrD,CAAC,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,KAAK,OAAO,KAAK,EAAE,EAAE,KAAK,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK;AAC9H,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,EAAE;AACrB,EAAE,OAAO;AACT,GAAG,EAAE;AACL,GAAG,IAAI,EAAE,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,GAAG,KAAK,CAAC,IAAI,GAAG,EAAE;AACzD,GAAG,MAAM,EAAE,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,GAAG,KAAK,CAAC,MAAM,GAAG,EAAE;AAC/D,GAAG,UAAU,EAAE,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,GAAG,KAAK,CAAC,UAAU,GAAG,kBAAkB;AAC3F,GAAG,MAAM,EAAE,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,GAAG,KAAK,CAAC,MAAM,GAAG,QAAQ;AACrE,GAAG,YAAY,EAAE,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI;AACjD,GAAG;AACH,CAAC,CAAC,CAAC;AACH;AACA;AACA;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AACjD,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS;AAChC,CAAC,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,EAAE;AACnC,CAAC,MAAM,MAAM,GAAG,MAAM,iBAAiB,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC;AAC5D,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,EAAE,SAAS,CAAC;AAChG,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,UAAU,CAAC;AACnE,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC;AAC3G,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,SAAS,CAAC;AAC1E,CAAC,OAAO,YAAY,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,sBAAsB,CAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,EAAE,SAAS,CAAC;AACrG;;;;"}
1
+ {"version":3,"file":"_server.ts-DezqI1zw.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/opencode/providers/_id_/models/_server.ts.js"],"sourcesContent":["import { a as getOpenCodeClient, d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId } from \"../../../../../../../chunks/helpers.js\";\nimport { n as asRecord } from \"../../../../../../../chunks/coercion.js\";\n//#region src/lib/opencode/provider-models.ts\nfunction sanitizeOpenCodeModels(models, fallbackProviderId) {\n\tif (!models || typeof models !== \"object\") return [];\n\treturn Object.values(models).map((value) => asRecord(value)).filter((model) => typeof model?.id === \"string\").map((model) => {\n\t\tconst id = model.id;\n\t\treturn {\n\t\t\tid,\n\t\t\tname: typeof model.name === \"string\" ? model.name : id,\n\t\t\tfamily: typeof model.family === \"string\" ? model.family : \"\",\n\t\t\tproviderID: typeof model.providerID === \"string\" ? model.providerID : fallbackProviderId,\n\t\t\tstatus: typeof model.status === \"string\" ? model.status : \"active\",\n\t\t\tcapabilities: asRecord(model.capabilities) ?? {}\n\t\t};\n\t});\n}\n//#endregion\n//#region src/routes/admin/opencode/providers/[id]/models/+server.ts\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst providerId = event.params.id;\n\tconst result = await getOpenCodeClient().proxy(\"/provider\");\n\tif (!result.ok) return errorResponse(result.status, result.code, result.message, {}, requestId);\n\tconst provider = result.data.all?.find((p) => p.id === providerId);\n\tif (!provider) return errorResponse(404, \"not_found\", `Provider \"${providerId}\" not found`, {}, requestId);\n\tif (!provider.models) return jsonResponse(200, { models: [] }, requestId);\n\treturn jsonResponse(200, { models: sanitizeOpenCodeModels(provider.models, providerId) }, requestId);\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AACA,SAAS,sBAAsB,CAAC,MAAM,EAAE,kBAAkB,EAAE;AAC5D,CAAC,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,OAAO,EAAE;AACrD,CAAC,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,KAAK,OAAO,KAAK,EAAE,EAAE,KAAK,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,KAAK;AAC9H,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,EAAE;AACrB,EAAE,OAAO;AACT,GAAG,EAAE;AACL,GAAG,IAAI,EAAE,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,GAAG,KAAK,CAAC,IAAI,GAAG,EAAE;AACzD,GAAG,MAAM,EAAE,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,GAAG,KAAK,CAAC,MAAM,GAAG,EAAE;AAC/D,GAAG,UAAU,EAAE,OAAO,KAAK,CAAC,UAAU,KAAK,QAAQ,GAAG,KAAK,CAAC,UAAU,GAAG,kBAAkB;AAC3F,GAAG,MAAM,EAAE,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,GAAG,KAAK,CAAC,MAAM,GAAG,QAAQ;AACrE,GAAG,YAAY,EAAE,QAAQ,CAAC,KAAK,CAAC,YAAY,CAAC,IAAI;AACjD,GAAG;AACH,CAAC,CAAC,CAAC;AACH;AACA;AACA;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AACjD,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS;AAChC,CAAC,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,EAAE;AACnC,CAAC,MAAM,MAAM,GAAG,MAAM,iBAAiB,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC;AAC5D,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,OAAO,EAAE,EAAE,EAAE,SAAS,CAAC;AAChG,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,UAAU,CAAC;AACnE,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC,UAAU,EAAE,UAAU,CAAC,WAAW,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC;AAC3G,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,SAAS,CAAC;AAC1E,CAAC,OAAO,YAAY,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,sBAAsB,CAAC,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,EAAE,SAAS,CAAC;AACrG;;;;"}
@@ -1,6 +1,6 @@
1
- import { F as createLogger, Y as ensureMigrated, M as MigrationError, X as ensureHomeDirs, Z as ensureOpenCodeConfig, _ as ensureOpenCodeSystemConfig, e as applyUpdate, n as checkDocker, m as buildManagedServices, l as buildComposeOptions, v as composePull, aX as summarizeComposeStderr, E as composeUp, as as parseComposeStderr } from './src-Bms-Wpj4.js';
2
- import { g as getState } from './state-dBGSHxF6.js';
3
- import { d as getRequestId, r as requireAdmin, e as errorResponse, k as jsonResponse } from './helpers-BluGgY3g.js';
1
+ import { G as createLogger, Y as ensureMigrated, M as MigrationError, f as applyUpdate, o as checkDocker, n as buildManagedServices, m as buildComposeOptions, w as composePull, aQ as summarizeComposeStderr, F as composeUp, an as parseComposeStderr } from './src-tc6vkfjq.js';
2
+ import { g as getState } from './state-DoUFfa64.js';
3
+ import { d as getRequestId, r as requireAdmin, e as errorResponse, k as jsonResponse } from './helpers-Dn1KCeOM.js';
4
4
  import { w as withSerialQueue } from './serial-queue-D9FEpYVv.js';
5
5
  import './chunk-CLZ62Ad-.js';
6
6
  import 'node:module';
@@ -23,7 +23,7 @@ import 'zlib';
23
23
  import 'node:assert';
24
24
  import 'node:fs/promises';
25
25
  import 'node:os';
26
- import './endpoints-ev9YSBb8.js';
26
+ import './endpoints-s4sYxtNX.js';
27
27
 
28
28
  //#region src/routes/admin/update/+server.ts
29
29
  var logger = createLogger("update");
@@ -57,9 +57,6 @@ var POST = async (event) => {
57
57
  throw e;
58
58
  }
59
59
  const state = getState();
60
- ensureHomeDirs();
61
- ensureOpenCodeConfig();
62
- ensureOpenCodeSystemConfig();
63
60
  const result = await applyUpdate(state);
64
61
  logger.info("update applied, re-running compose", {
65
62
  requestId,
@@ -137,4 +134,4 @@ var POST = async (event) => {
137
134
  };
138
135
 
139
136
  export { POST };
140
- //# sourceMappingURL=_server.ts-x2T-1ecq.js.map
137
+ //# sourceMappingURL=_server.ts-DfRgwfim.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts-DfRgwfim.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/update/_server.ts.js"],"sourcesContent":["import { B as applyUpdate, F as summarizeComposeStderr, I as buildComposeOptions, J as checkDocker, P as parseComposeStderr, V as buildManagedServices, Xt as MigrationError, Zt as ensureMigrated, at as composeUp, et as composePull, ln as createLogger } from \"../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../chunks/state.js\";\nimport { d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId } from \"../../../../chunks/helpers.js\";\nimport { t as withSerialQueue } from \"../../../../chunks/serial-queue.js\";\n//#region src/routes/admin/update/+server.ts\nvar logger = createLogger(\"update\");\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tlogger.info(\"update request received\", { requestId });\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\treturn withSerialQueue(\"admin:update\", async () => {\n\t\ttry {\n\t\t\ttry {\n\t\t\t\tconst report = ensureMigrated();\n\t\t\t\tif (report.migrated) logger.info(\"layout migrated\", {\n\t\t\t\t\trequestId,\n\t\t\t\t\tfrom: report.from,\n\t\t\t\t\tto: report.to,\n\t\t\t\t\tbackupDir: report.backupDir\n\t\t\t\t});\n\t\t\t} catch (e) {\n\t\t\t\tif (e instanceof MigrationError) {\n\t\t\t\t\tlogger.error(\"auto-migration aborted\", {\n\t\t\t\t\t\trequestId,\n\t\t\t\t\t\terror: e.message,\n\t\t\t\t\t\tbackupDir: e.backupDir\n\t\t\t\t\t});\n\t\t\t\t\treturn errorResponse(500, \"migration_failed\", e.message, {\n\t\t\t\t\t\tguidance: e.guidance,\n\t\t\t\t\t\tbackupDir: e.backupDir\n\t\t\t\t\t}, requestId);\n\t\t\t\t}\n\t\t\t\tthrow e;\n\t\t\t}\n\t\t\tconst state = getState();\n\t\t\tconst result = await applyUpdate(state);\n\t\t\tlogger.info(\"update applied, re-running compose\", {\n\t\t\t\trequestId,\n\t\t\t\tintended: result.restarted\n\t\t\t});\n\t\t\tconst dockerCheck = await checkDocker();\n\t\t\tconst intendedServices = await buildManagedServices(state);\n\t\t\tlet restarted = [];\n\t\t\tlet failed = [];\n\t\t\tlet dockerError;\n\t\t\tlet pullWarning;\n\t\t\tif (dockerCheck.ok) {\n\t\t\t\tconst composeOpts = buildComposeOptions(state);\n\t\t\t\tconst pullResult = await composePull(composeOpts);\n\t\t\t\tif (!pullResult.ok) {\n\t\t\t\t\tpullWarning = `Images could not be pulled — restarted from local cache. (${summarizeComposeStderr(pullResult.stderr) || \"image pull failed\"})`;\n\t\t\t\t\tlogger.warn(\"update: image pull failed — recreating from local images\", {\n\t\t\t\t\t\trequestId,\n\t\t\t\t\t\tstderr: pullResult.stderr?.slice(0, 300)\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tconst composeResult = await composeUp({\n\t\t\t\t\t...composeOpts,\n\t\t\t\t\tservices: intendedServices,\n\t\t\t\t\tforceRecreate: true\n\t\t\t\t});\n\t\t\t\tif (composeResult.ok) restarted = intendedServices;\n\t\t\t\telse {\n\t\t\t\t\tfailed = parseComposeStderr(composeResult.stderr);\n\t\t\t\t\tconst failedNames = new Set(failed.map((f) => f.service));\n\t\t\t\t\trestarted = intendedServices.filter((s) => !failedNames.has(s));\n\t\t\t\t\tif (failed.length === 0) {\n\t\t\t\t\t\tfailed = [{\n\t\t\t\t\t\t\tservice: \"stack\",\n\t\t\t\t\t\t\treason: summarizeComposeStderr(composeResult.stderr) || `docker compose exited with code ${composeResult.code}`\n\t\t\t\t\t\t}];\n\t\t\t\t\t\trestarted = [];\n\t\t\t\t\t}\n\t\t\t\t\tdockerError = summarizeComposeStderr(composeResult.stderr);\n\t\t\t\t\tlogger.warn(\"compose up reported failures\", {\n\t\t\t\t\t\trequestId,\n\t\t\t\t\t\tcode: composeResult.code,\n\t\t\t\t\t\tfailed,\n\t\t\t\t\t\trestarted\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t\tconst overallSuccess = dockerCheck.ok && failed.length === 0;\n\t\t\tconst status = failed.length > 0 ? 502 : 200;\n\t\t\tlogger.info(\"update completed\", {\n\t\t\t\trequestId,\n\t\t\t\tdockerAvailable: dockerCheck.ok,\n\t\t\t\toverallSuccess,\n\t\t\t\trestartedCount: restarted.length,\n\t\t\t\tfailedCount: failed.length\n\t\t\t});\n\t\t\treturn jsonResponse(status, {\n\t\t\t\tok: overallSuccess,\n\t\t\t\trestarted,\n\t\t\t\tfailed,\n\t\t\t\tdockerAvailable: dockerCheck.ok,\n\t\t\t\toverallSuccess,\n\t\t\t\t...pullWarning ? { pullWarning } : {},\n\t\t\t\t...dockerError ? { error: dockerError } : {}\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(\"update failed\", {\n\t\t\t\trequestId,\n\t\t\t\terror: msg\n\t\t\t});\n\t\t\treturn errorResponse(500, \"update_failed\", msg, {}, requestId);\n\t\t}\n\t});\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { n as checkDocker, y as composeStats, l as buildComposeOptions } from './src-Bms-Wpj4.js';
2
- import { g as getState } from './state-dBGSHxF6.js';
3
- import { d as getRequestId, r as requireAdmin, e as errorResponse, k as jsonResponse } from './helpers-BluGgY3g.js';
1
+ import { o as checkDocker, z as composeStats, m as buildComposeOptions } from './src-tc6vkfjq.js';
2
+ import { g as getState } from './state-DoUFfa64.js';
3
+ import { d as getRequestId, r as requireAdmin, e as errorResponse, k as jsonResponse } from './helpers-Dn1KCeOM.js';
4
4
  import './chunk-CLZ62Ad-.js';
5
5
  import 'node:module';
6
6
  import './provider-constants-DPrj3yBX.js';
@@ -22,7 +22,7 @@ import 'zlib';
22
22
  import 'node:assert';
23
23
  import 'node:fs/promises';
24
24
  import 'node:os';
25
- import './endpoints-ev9YSBb8.js';
25
+ import './endpoints-s4sYxtNX.js';
26
26
 
27
27
  //#region src/routes/admin/containers/stats/+server.ts
28
28
  var GET = async (event) => {
@@ -44,4 +44,4 @@ var GET = async (event) => {
44
44
  };
45
45
 
46
46
  export { GET };
47
- //# sourceMappingURL=_server.ts-BkKDLEw2.js.map
47
+ //# sourceMappingURL=_server.ts-DmBh7SF4.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-BkKDLEw2.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/containers/stats/_server.ts.js"],"sourcesContent":["import { I as buildComposeOptions, Y as checkDocker, it as composeStats } from \"../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../chunks/state.js\";\nimport { d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId } from \"../../../../../chunks/helpers.js\";\n//#region src/routes/admin/containers/stats/+server.ts\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\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":";;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,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-DmBh7SF4.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/containers/stats/_server.ts.js"],"sourcesContent":["import { I as buildComposeOptions, J as checkDocker, rt as composeStats } from \"../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../chunks/state.js\";\nimport { d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId } from \"../../../../../chunks/helpers.js\";\n//#region src/routes/admin/containers/stats/+server.ts\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\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":";;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,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;;;;"}