@openpalm/ui 0.12.18 → 0.12.22

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 (381) hide show
  1. package/build/.openpalm-ui-version +1 -1
  2. package/build/client/_app/immutable/assets/4.DQdAwaDZ.css +1 -0
  3. package/build/client/_app/immutable/assets/4.DQdAwaDZ.css.br +0 -0
  4. package/build/client/_app/immutable/assets/4.DQdAwaDZ.css.gz +0 -0
  5. package/build/client/_app/immutable/chunks/{B8C5qi9U.js → BRX6kifW.js} +1 -1
  6. package/build/client/_app/immutable/chunks/BRX6kifW.js.br +0 -0
  7. package/build/client/_app/immutable/chunks/BRX6kifW.js.gz +0 -0
  8. package/build/client/_app/immutable/chunks/{Br6Mrpf0.js → BXNfEZOa.js} +2 -2
  9. package/build/client/_app/immutable/chunks/BXNfEZOa.js.br +0 -0
  10. package/build/client/_app/immutable/chunks/BXNfEZOa.js.gz +0 -0
  11. package/build/client/_app/immutable/chunks/{Dcw6L0GF.js → CgDyA2Qw.js} +2 -2
  12. package/build/client/_app/immutable/chunks/CgDyA2Qw.js.br +0 -0
  13. package/build/client/_app/immutable/chunks/CgDyA2Qw.js.gz +0 -0
  14. package/build/client/_app/immutable/chunks/DLcBqErP.js +1 -0
  15. package/build/client/_app/immutable/chunks/DLcBqErP.js.br +2 -0
  16. package/build/client/_app/immutable/chunks/DLcBqErP.js.gz +0 -0
  17. package/build/client/_app/immutable/chunks/{CLgRRUN_.js → DpHEXvQk.js} +1 -1
  18. package/build/client/_app/immutable/chunks/DpHEXvQk.js.br +0 -0
  19. package/build/client/_app/immutable/chunks/DpHEXvQk.js.gz +0 -0
  20. package/build/client/_app/immutable/chunks/Dr8nRIOR.js +1 -0
  21. package/build/client/_app/immutable/chunks/Dr8nRIOR.js.br +0 -0
  22. package/build/client/_app/immutable/chunks/Dr8nRIOR.js.gz +0 -0
  23. package/build/client/_app/immutable/chunks/{DYXGFYr6.js → _60-pFCk.js} +1 -1
  24. package/build/client/_app/immutable/chunks/_60-pFCk.js.br +0 -0
  25. package/build/client/_app/immutable/chunks/_60-pFCk.js.gz +0 -0
  26. package/build/client/_app/immutable/entry/{app.CVxCoIFs.js → app.BjL1fvKO.js} +2 -2
  27. package/build/client/_app/immutable/entry/app.BjL1fvKO.js.br +0 -0
  28. package/build/client/_app/immutable/entry/app.BjL1fvKO.js.gz +0 -0
  29. package/build/client/_app/immutable/entry/start.De0IKYiu.js +1 -0
  30. package/build/client/_app/immutable/entry/start.De0IKYiu.js.br +0 -0
  31. package/build/client/_app/immutable/entry/start.De0IKYiu.js.gz +0 -0
  32. package/build/client/_app/immutable/nodes/{0.Bb8qAGW8.js → 0.AZnG4POF.js} +1 -1
  33. package/build/client/_app/immutable/nodes/0.AZnG4POF.js.br +0 -0
  34. package/build/client/_app/immutable/nodes/0.AZnG4POF.js.gz +0 -0
  35. package/build/client/_app/immutable/nodes/{1.Co_TaqLI.js → 1.B7a7Tm6Z.js} +1 -1
  36. package/build/client/_app/immutable/nodes/1.B7a7Tm6Z.js.br +0 -0
  37. package/build/client/_app/immutable/nodes/1.B7a7Tm6Z.js.gz +0 -0
  38. package/build/client/_app/immutable/nodes/4.DI__DjJl.js +126 -0
  39. package/build/client/_app/immutable/nodes/4.DI__DjJl.js.br +0 -0
  40. package/build/client/_app/immutable/nodes/4.DI__DjJl.js.gz +0 -0
  41. package/build/client/_app/immutable/nodes/{5.Fw13EXte.js → 5.B9AKDWT5.js} +2 -2
  42. package/build/client/_app/immutable/nodes/5.B9AKDWT5.js.br +0 -0
  43. package/build/client/_app/immutable/nodes/5.B9AKDWT5.js.gz +0 -0
  44. package/build/client/_app/immutable/nodes/{6.CWy0yXnu.js → 6.hyWOgJjN.js} +1 -1
  45. package/build/client/_app/immutable/nodes/6.hyWOgJjN.js.br +0 -0
  46. package/build/client/_app/immutable/nodes/6.hyWOgJjN.js.gz +0 -0
  47. package/build/client/_app/immutable/nodes/{7.CsM4M8Ul.js → 7.nZLq6rhJ.js} +1 -1
  48. package/build/client/_app/immutable/nodes/7.nZLq6rhJ.js.br +0 -0
  49. package/build/client/_app/immutable/nodes/7.nZLq6rhJ.js.gz +0 -0
  50. package/build/client/_app/immutable/nodes/{8.V6hY0p8a.js → 8.DHYGH125.js} +1 -1
  51. package/build/client/_app/immutable/nodes/8.DHYGH125.js.br +0 -0
  52. package/build/client/_app/immutable/nodes/8.DHYGH125.js.gz +0 -0
  53. package/build/client/_app/version.json +1 -1
  54. package/build/client/_app/version.json.br +1 -1
  55. package/build/client/_app/version.json.gz +0 -0
  56. package/build/server/chunks/{0-DrD9dfbN.js → 0-DL6Jfu7F.js} +3 -3
  57. package/build/server/chunks/{0-DrD9dfbN.js.map → 0-DL6Jfu7F.js.map} +1 -1
  58. package/build/server/chunks/1-DC1YDW9y.js +9 -0
  59. package/build/server/chunks/{1-DvZDBGww.js.map → 1-DC1YDW9y.js.map} +1 -1
  60. package/build/server/chunks/{10-C96Thueb.js → 10-BnN-v5b4.js} +5 -5
  61. package/build/server/chunks/10-BnN-v5b4.js.map +1 -0
  62. package/build/server/chunks/4-BnTXsRc6.js +9 -0
  63. package/build/server/chunks/{4-BYdi8hv_.js.map → 4-BnTXsRc6.js.map} +1 -1
  64. package/build/server/chunks/{5-DIQyHPcz.js → 5-C26TlGBo.js} +3 -3
  65. package/build/server/chunks/{5-DIQyHPcz.js.map → 5-C26TlGBo.js.map} +1 -1
  66. package/build/server/chunks/6-D1YRT-u9.js +9 -0
  67. package/build/server/chunks/{6-BsZngRIA.js.map → 6-D1YRT-u9.js.map} +1 -1
  68. package/build/server/chunks/{7-CXWUMHvV.js → 7-DB2WCCTk.js} +3 -3
  69. package/build/server/chunks/{7-CXWUMHvV.js.map → 7-DB2WCCTk.js.map} +1 -1
  70. package/build/server/chunks/{8-l173yBhm.js → 8-D9q3TEwk.js} +3 -3
  71. package/build/server/chunks/{8-l173yBhm.js.map → 8-D9q3TEwk.js.map} +1 -1
  72. package/build/server/chunks/{IconMic-BM_3hm2T.js → IconMic-DK0ZRKNm.js} +2 -2
  73. package/build/server/chunks/{IconMic-BM_3hm2T.js.map → IconMic-DK0ZRKNm.js.map} +1 -1
  74. package/build/server/chunks/{Navbar-BZ_eb99a.js → Navbar-Bx84i9hX.js} +5 -5
  75. package/build/server/chunks/{Navbar-BZ_eb99a.js.map → Navbar-Bx84i9hX.js.map} +1 -1
  76. package/build/server/chunks/{_layout.svelte-Dd-1jqRZ.js → _layout.svelte-CtPb7AoM.js} +2 -2
  77. package/build/server/chunks/{_layout.svelte-Dd-1jqRZ.js.map → _layout.svelte-CtPb7AoM.js.map} +1 -1
  78. package/build/server/chunks/{_page.svelte-E9h2ASFv.js → _page.svelte-1gYVQfSX.js} +7 -7
  79. package/build/server/chunks/{_page.svelte-E9h2ASFv.js.map → _page.svelte-1gYVQfSX.js.map} +1 -1
  80. package/build/server/chunks/{_page.svelte-Bbooaanj.js → _page.svelte-Ce5yuZKH.js} +7 -7
  81. package/build/server/chunks/{_page.svelte-Bbooaanj.js.map → _page.svelte-Ce5yuZKH.js.map} +1 -1
  82. package/build/server/chunks/{_page.svelte-D0wEoV5A.js → _page.svelte-DhqtAyz4.js} +5 -5
  83. package/build/server/chunks/{_page.svelte-D0wEoV5A.js.map → _page.svelte-DhqtAyz4.js.map} +1 -1
  84. package/build/server/chunks/{_page.svelte-C4jw4RUN.js → _page.svelte-Dlch5rzj.js} +3 -3
  85. package/build/server/chunks/{_page.svelte-C4jw4RUN.js.map → _page.svelte-Dlch5rzj.js.map} +1 -1
  86. package/build/server/chunks/{_page.svelte-WYgjKj38.js → _page.svelte-VwZb1o-L.js} +31 -715
  87. package/build/server/chunks/_page.svelte-VwZb1o-L.js.map +1 -0
  88. package/build/server/chunks/{_server.ts-DPDQh75Z.js → _server.ts-29oJfZHd.js} +2 -2
  89. package/build/server/chunks/{_server.ts-DPDQh75Z.js.map → _server.ts-29oJfZHd.js.map} +1 -1
  90. package/build/server/chunks/{_server.ts-VvJjpVtp.js → _server.ts-54pdKqwY.js} +6 -6
  91. package/build/server/chunks/{_server.ts-VvJjpVtp.js.map → _server.ts-54pdKqwY.js.map} +1 -1
  92. package/build/server/chunks/{_server.ts-CQt3NLuS.js → _server.ts-8R-n-zEh.js} +5 -5
  93. package/build/server/chunks/{_server.ts-CQt3NLuS.js.map → _server.ts-8R-n-zEh.js.map} +1 -1
  94. package/build/server/chunks/_server.ts-8b481A1c.js +89 -0
  95. package/build/server/chunks/_server.ts-8b481A1c.js.map +1 -0
  96. package/build/server/chunks/{_server.ts-wvbMWir6.js → _server.ts-9AjUEqAT.js} +6 -6
  97. package/build/server/chunks/{_server.ts-wvbMWir6.js.map → _server.ts-9AjUEqAT.js.map} +1 -1
  98. package/build/server/chunks/{_server.ts-F0nw0UvB.js → _server.ts-9qPwtSPc.js} +5 -5
  99. package/build/server/chunks/{_server.ts-F0nw0UvB.js.map → _server.ts-9qPwtSPc.js.map} +1 -1
  100. package/build/server/chunks/{_server.ts-DM6Jm6KP.js → _server.ts-B1qG26BE.js} +5 -5
  101. package/build/server/chunks/_server.ts-B1qG26BE.js.map +1 -0
  102. package/build/server/chunks/{_server.ts-CwPiZPmZ.js → _server.ts-B5JZoMbG.js} +6 -6
  103. package/build/server/chunks/{_server.ts-CwPiZPmZ.js.map → _server.ts-B5JZoMbG.js.map} +1 -1
  104. package/build/server/chunks/{_server.ts-CQM2RG5K.js → _server.ts-B8xyYAeq.js} +5 -5
  105. package/build/server/chunks/{_server.ts-CQM2RG5K.js.map → _server.ts-B8xyYAeq.js.map} +1 -1
  106. package/build/server/chunks/{_server.ts-CFNWzRBr.js → _server.ts-B9CQbSjg.js} +4 -4
  107. package/build/server/chunks/{_server.ts-CFNWzRBr.js.map → _server.ts-B9CQbSjg.js.map} +1 -1
  108. package/build/server/chunks/{_server.ts-D4tyRvFi.js → _server.ts-B9ykDkc2.js} +2 -2
  109. package/build/server/chunks/{_server.ts-D4tyRvFi.js.map → _server.ts-B9ykDkc2.js.map} +1 -1
  110. package/build/server/chunks/{_server.ts-DR7y5OQ3.js → _server.ts-BPdeRlDI.js} +5 -5
  111. package/build/server/chunks/{_server.ts-DR7y5OQ3.js.map → _server.ts-BPdeRlDI.js.map} +1 -1
  112. package/build/server/chunks/{_server.ts-B9iU6foL.js → _server.ts-B_0VQmyi.js} +5 -5
  113. package/build/server/chunks/{_server.ts-B9iU6foL.js.map → _server.ts-B_0VQmyi.js.map} +1 -1
  114. package/build/server/chunks/{_server.ts-DRvqTDLx.js → _server.ts-B__xH1cU.js} +5 -5
  115. package/build/server/chunks/_server.ts-B__xH1cU.js.map +1 -0
  116. package/build/server/chunks/{_server.ts-DiDI1Ie6.js → _server.ts-Bc4VE_mK.js} +6 -6
  117. package/build/server/chunks/{_server.ts-DiDI1Ie6.js.map → _server.ts-Bc4VE_mK.js.map} +1 -1
  118. package/build/server/chunks/{_server.ts-IW-zQmmb.js → _server.ts-BdDIXPU0.js} +5 -5
  119. package/build/server/chunks/_server.ts-BdDIXPU0.js.map +1 -0
  120. package/build/server/chunks/{_server.ts-CGMuaSY3.js → _server.ts-BeSu9n9F.js} +5 -5
  121. package/build/server/chunks/{_server.ts-CGMuaSY3.js.map → _server.ts-BeSu9n9F.js.map} +1 -1
  122. package/build/server/chunks/{_server.ts-D-jGSj8O.js → _server.ts-BjAWFnFv.js} +6 -6
  123. package/build/server/chunks/{_server.ts-D-jGSj8O.js.map → _server.ts-BjAWFnFv.js.map} +1 -1
  124. package/build/server/chunks/{_server.ts-2fxcxBzC.js → _server.ts-Bk-SzSGo.js} +5 -5
  125. package/build/server/chunks/_server.ts-Bk-SzSGo.js.map +1 -0
  126. package/build/server/chunks/{_server.ts-BnL3TLuz.js → _server.ts-BswBNUz0.js} +5 -5
  127. package/build/server/chunks/{_server.ts-BnL3TLuz.js.map → _server.ts-BswBNUz0.js.map} +1 -1
  128. package/build/server/chunks/{_server.ts-DUy4kkr_.js → _server.ts-BtlnrMKD.js} +5 -5
  129. package/build/server/chunks/{_server.ts-DUy4kkr_.js.map → _server.ts-BtlnrMKD.js.map} +1 -1
  130. package/build/server/chunks/{_server.ts-BDe-TnAi.js → _server.ts-BxRGCjoH.js} +5 -5
  131. package/build/server/chunks/{_server.ts-BDe-TnAi.js.map → _server.ts-BxRGCjoH.js.map} +1 -1
  132. package/build/server/chunks/{_server.ts-DDCEmU_P.js → _server.ts-By1az2OR.js} +6 -10
  133. package/build/server/chunks/_server.ts-By1az2OR.js.map +1 -0
  134. package/build/server/chunks/{_server.ts-Dcawi9b4.js → _server.ts-C0ch963P.js} +2 -2
  135. package/build/server/chunks/_server.ts-C0ch963P.js.map +1 -0
  136. package/build/server/chunks/{_server.ts-DP28Ocqs.js → _server.ts-C2NuRv8K.js} +5 -5
  137. package/build/server/chunks/{_server.ts-DP28Ocqs.js.map → _server.ts-C2NuRv8K.js.map} +1 -1
  138. package/build/server/chunks/{_server.ts-DXoq1VzO.js → _server.ts-C4I0eH50.js} +5 -5
  139. package/build/server/chunks/_server.ts-C4I0eH50.js.map +1 -0
  140. package/build/server/chunks/{_server.ts-D07mQlNk.js → _server.ts-C6geMqYp.js} +5 -5
  141. package/build/server/chunks/{_server.ts-D07mQlNk.js.map → _server.ts-C6geMqYp.js.map} +1 -1
  142. package/build/server/chunks/{_server.ts-YRWN3sJm.js → _server.ts-C9QeDhXf.js} +5 -5
  143. package/build/server/chunks/{_server.ts-YRWN3sJm.js.map → _server.ts-C9QeDhXf.js.map} +1 -1
  144. package/build/server/chunks/{_server.ts-DzCUdAPH.js → _server.ts-C9cnB4KZ.js} +5 -5
  145. package/build/server/chunks/{_server.ts-DzCUdAPH.js.map → _server.ts-C9cnB4KZ.js.map} +1 -1
  146. package/build/server/chunks/{_server.ts-CzgA6LXe.js → _server.ts-CAwWO268.js} +5 -5
  147. package/build/server/chunks/{_server.ts-CzgA6LXe.js.map → _server.ts-CAwWO268.js.map} +1 -1
  148. package/build/server/chunks/{_server.ts-DdzFOqZm.js → _server.ts-CBIx55nw.js} +5 -5
  149. package/build/server/chunks/{_server.ts-DdzFOqZm.js.map → _server.ts-CBIx55nw.js.map} +1 -1
  150. package/build/server/chunks/{_server.ts-C37SDJxC.js → _server.ts-CDHXmvId.js} +5 -5
  151. package/build/server/chunks/{_server.ts-C37SDJxC.js.map → _server.ts-CDHXmvId.js.map} +1 -1
  152. package/build/server/chunks/{_server.ts-hAoIbHpc.js → _server.ts-CHGTPklX.js} +6 -6
  153. package/build/server/chunks/{_server.ts-hAoIbHpc.js.map → _server.ts-CHGTPklX.js.map} +1 -1
  154. package/build/server/chunks/{_server.ts-BETcFeB8.js → _server.ts-CKblTbUe.js} +5 -5
  155. package/build/server/chunks/_server.ts-CKblTbUe.js.map +1 -0
  156. package/build/server/chunks/{_server.ts-C_dk6ZLP.js → _server.ts-CN-ITxq_.js} +6 -6
  157. package/build/server/chunks/{_server.ts-C_dk6ZLP.js.map → _server.ts-CN-ITxq_.js.map} +1 -1
  158. package/build/server/chunks/{_server.ts-BMCfB7xN.js → _server.ts-CNy4jIvv.js} +5 -5
  159. package/build/server/chunks/{_server.ts-BMCfB7xN.js.map → _server.ts-CNy4jIvv.js.map} +1 -1
  160. package/build/server/chunks/{_server.ts-CuBCKbP8.js → _server.ts-CQgWS2hB.js} +6 -6
  161. package/build/server/chunks/{_server.ts-CuBCKbP8.js.map → _server.ts-CQgWS2hB.js.map} +1 -1
  162. package/build/server/chunks/{_server.ts-Cap2Myq0.js → _server.ts-CRSZ1H_z.js} +9 -6
  163. package/build/server/chunks/_server.ts-CRSZ1H_z.js.map +1 -0
  164. package/build/server/chunks/{_server.ts-_qXm__Gf.js → _server.ts-CYCJvxkC.js} +5 -5
  165. package/build/server/chunks/{_server.ts-_qXm__Gf.js.map → _server.ts-CYCJvxkC.js.map} +1 -1
  166. package/build/server/chunks/{_server.ts-DilgsSMu.js → _server.ts-CcyDtTCy.js} +5 -5
  167. package/build/server/chunks/{_server.ts-DilgsSMu.js.map → _server.ts-CcyDtTCy.js.map} +1 -1
  168. package/build/server/chunks/{_server.ts-kfc0Us0E.js → _server.ts-CdHxUlD_.js} +5 -5
  169. package/build/server/chunks/{_server.ts-kfc0Us0E.js.map → _server.ts-CdHxUlD_.js.map} +1 -1
  170. package/build/server/chunks/{_server.ts-5M6DY-PN.js → _server.ts-CeGOgSlg.js} +8 -8
  171. package/build/server/chunks/{_server.ts-5M6DY-PN.js.map → _server.ts-CeGOgSlg.js.map} +1 -1
  172. package/build/server/chunks/{_server.ts-DMj9WYdv.js → _server.ts-CejBAnbx.js} +2 -2
  173. package/build/server/chunks/{_server.ts-DMj9WYdv.js.map → _server.ts-CejBAnbx.js.map} +1 -1
  174. package/build/server/chunks/{_server.ts-BwnoppTC.js → _server.ts-ChJzwk4k.js} +6 -6
  175. package/build/server/chunks/{_server.ts-BwnoppTC.js.map → _server.ts-ChJzwk4k.js.map} +1 -1
  176. package/build/server/chunks/{_server.ts-0UwoVmus.js → _server.ts-CibQYGvX.js} +6 -6
  177. package/build/server/chunks/{_server.ts-0UwoVmus.js.map → _server.ts-CibQYGvX.js.map} +1 -1
  178. package/build/server/chunks/{_server.ts-B6AN-mYa.js → _server.ts-CloVt7eS.js} +7 -7
  179. package/build/server/chunks/{_server.ts-B6AN-mYa.js.map → _server.ts-CloVt7eS.js.map} +1 -1
  180. package/build/server/chunks/{_server.ts-B5PHfuR5.js → _server.ts-CmjNZw87.js} +6 -6
  181. package/build/server/chunks/{_server.ts-B5PHfuR5.js.map → _server.ts-CmjNZw87.js.map} +1 -1
  182. package/build/server/chunks/{_server.ts-B8D1t67g.js → _server.ts-Cn7LfLF_.js} +7 -7
  183. package/build/server/chunks/_server.ts-Cn7LfLF_.js.map +1 -0
  184. package/build/server/chunks/{_server.ts-aw8KYE5U.js → _server.ts-Crdovz8j.js} +5 -5
  185. package/build/server/chunks/{_server.ts-aw8KYE5U.js.map → _server.ts-Crdovz8j.js.map} +1 -1
  186. package/build/server/chunks/{_server.ts-lK-oXISB.js → _server.ts-CuYIpIzp.js} +5 -5
  187. package/build/server/chunks/{_server.ts-lK-oXISB.js.map → _server.ts-CuYIpIzp.js.map} +1 -1
  188. package/build/server/chunks/{_server.ts-CRVqyjYH.js → _server.ts-CwgY6ghJ.js} +7 -7
  189. package/build/server/chunks/{_server.ts-CRVqyjYH.js.map → _server.ts-CwgY6ghJ.js.map} +1 -1
  190. package/build/server/chunks/{_server.ts-C7Scn_Ur.js → _server.ts-CxxrQ9Wz.js} +5 -5
  191. package/build/server/chunks/_server.ts-CxxrQ9Wz.js.map +1 -0
  192. package/build/server/chunks/{_server.ts-C9-ewPaY.js → _server.ts-D6BJWhEf.js} +5 -5
  193. package/build/server/chunks/_server.ts-D6BJWhEf.js.map +1 -0
  194. package/build/server/chunks/{_server.ts-CosKSZGO.js → _server.ts-D6Y4c9rj.js} +2 -2
  195. package/build/server/chunks/{_server.ts-CosKSZGO.js.map → _server.ts-D6Y4c9rj.js.map} +1 -1
  196. package/build/server/chunks/{_server.ts-CU5_9yaM.js → _server.ts-D8EweJQC.js} +5 -5
  197. package/build/server/chunks/{_server.ts-CU5_9yaM.js.map → _server.ts-D8EweJQC.js.map} +1 -1
  198. package/build/server/chunks/{_server.ts-Dq8RxTkW.js → _server.ts-D91I-wzU.js} +5 -5
  199. package/build/server/chunks/{_server.ts-Dq8RxTkW.js.map → _server.ts-D91I-wzU.js.map} +1 -1
  200. package/build/server/chunks/{_server.ts-CcyVh5fg.js → _server.ts-D9yPVLtB.js} +5 -5
  201. package/build/server/chunks/{_server.ts-CcyVh5fg.js.map → _server.ts-D9yPVLtB.js.map} +1 -1
  202. package/build/server/chunks/{_server.ts-avgx1pPX.js → _server.ts-DC0rWv53.js} +5 -5
  203. package/build/server/chunks/{_server.ts-avgx1pPX.js.map → _server.ts-DC0rWv53.js.map} +1 -1
  204. package/build/server/chunks/{_server.ts-Bi5ToBtl.js → _server.ts-DGHL7uho.js} +5 -5
  205. package/build/server/chunks/{_server.ts-Bi5ToBtl.js.map → _server.ts-DGHL7uho.js.map} +1 -1
  206. package/build/server/chunks/{_server.ts-Baeek88H.js → _server.ts-DHBjlBuv.js} +5 -5
  207. package/build/server/chunks/_server.ts-DHBjlBuv.js.map +1 -0
  208. package/build/server/chunks/{_server.ts-FPubTa2q.js → _server.ts-DIUdkrLE.js} +5 -5
  209. package/build/server/chunks/{_server.ts-FPubTa2q.js.map → _server.ts-DIUdkrLE.js.map} +1 -1
  210. package/build/server/chunks/{_server.ts-5aqdy9Zn.js → _server.ts-DNag2rCU.js} +25 -17
  211. package/build/server/chunks/_server.ts-DNag2rCU.js.map +1 -0
  212. package/build/server/chunks/{_server.ts-DBQ7TD4o.js → _server.ts-DWXKoPC3.js} +5 -5
  213. package/build/server/chunks/_server.ts-DWXKoPC3.js.map +1 -0
  214. package/build/server/chunks/{_server.ts-DSfVK8xc.js → _server.ts-D_Zne8zk.js} +5 -5
  215. package/build/server/chunks/{_server.ts-DSfVK8xc.js.map → _server.ts-D_Zne8zk.js.map} +1 -1
  216. package/build/server/chunks/{_server.ts-Brb7lRFE.js → _server.ts-DarGs6EN.js} +5 -5
  217. package/build/server/chunks/_server.ts-DarGs6EN.js.map +1 -0
  218. package/build/server/chunks/{_server.ts-Cb-e8WyG.js → _server.ts-DdjZAsqc.js} +5 -5
  219. package/build/server/chunks/{_server.ts-Cb-e8WyG.js.map → _server.ts-DdjZAsqc.js.map} +1 -1
  220. package/build/server/chunks/_server.ts-DhgUx_Ar.js +84 -0
  221. package/build/server/chunks/_server.ts-DhgUx_Ar.js.map +1 -0
  222. package/build/server/chunks/{_server.ts-CmyqMhn9.js → _server.ts-Ds26GwEH.js} +5 -5
  223. package/build/server/chunks/{_server.ts-CmyqMhn9.js.map → _server.ts-Ds26GwEH.js.map} +1 -1
  224. package/build/server/chunks/{_server.ts-Bxk1V3Ev.js → _server.ts-Dx-W9dxd.js} +5 -5
  225. package/build/server/chunks/{_server.ts-Bxk1V3Ev.js.map → _server.ts-Dx-W9dxd.js.map} +1 -1
  226. package/build/server/chunks/{_server.ts-BnNG0uRK.js → _server.ts-DyAZoRvd.js} +6 -6
  227. package/build/server/chunks/{_server.ts-BnNG0uRK.js.map → _server.ts-DyAZoRvd.js.map} +1 -1
  228. package/build/server/chunks/{_server.ts-WePF2DAq.js → _server.ts-EYK0bXvj.js} +5 -5
  229. package/build/server/chunks/_server.ts-EYK0bXvj.js.map +1 -0
  230. package/build/server/chunks/{_server.ts-DFV-gf9Q.js → _server.ts-GB9Cj5oM.js} +5 -5
  231. package/build/server/chunks/{_server.ts-DFV-gf9Q.js.map → _server.ts-GB9Cj5oM.js.map} +1 -1
  232. package/build/server/chunks/{_server.ts-DYsP_lpr.js → _server.ts-KhshtfY7.js} +7 -7
  233. package/build/server/chunks/_server.ts-KhshtfY7.js.map +1 -0
  234. package/build/server/chunks/{_server.ts-ChH8nHr7.js → _server.ts-W0CmGtTj.js} +7 -7
  235. package/build/server/chunks/{_server.ts-ChH8nHr7.js.map → _server.ts-W0CmGtTj.js.map} +1 -1
  236. package/build/server/chunks/{_server.ts-C5jyYbFm.js → _server.ts-X_5reIBA.js} +17 -8
  237. package/build/server/chunks/_server.ts-X_5reIBA.js.map +1 -0
  238. package/build/server/chunks/{_server.ts-r07PDC8q.js → _server.ts-YHTGVduj.js} +5 -5
  239. package/build/server/chunks/{_server.ts-r07PDC8q.js.map → _server.ts-YHTGVduj.js.map} +1 -1
  240. package/build/server/chunks/{_server.ts-BRTk2wfW.js → _server.ts-c9nn_lEh.js} +5 -5
  241. package/build/server/chunks/{_server.ts-BRTk2wfW.js.map → _server.ts-c9nn_lEh.js.map} +1 -1
  242. package/build/server/chunks/{_server.ts-BW46dP9B.js → _server.ts-cNcqERWY.js} +7 -7
  243. package/build/server/chunks/{_server.ts-BW46dP9B.js.map → _server.ts-cNcqERWY.js.map} +1 -1
  244. package/build/server/chunks/{_server.ts-BlVBulWB.js → _server.ts-e-kt0L13.js} +4 -4
  245. package/build/server/chunks/_server.ts-e-kt0L13.js.map +1 -0
  246. package/build/server/chunks/{_server.ts-DX3B53H8.js → _server.ts-fV4HpgOz.js} +5 -5
  247. package/build/server/chunks/{_server.ts-DX3B53H8.js.map → _server.ts-fV4HpgOz.js.map} +1 -1
  248. package/build/server/chunks/{_server.ts-Dg4ouUjZ.js → _server.ts-hqvYcJBt.js} +5 -5
  249. package/build/server/chunks/_server.ts-hqvYcJBt.js.map +1 -0
  250. package/build/server/chunks/{_server.ts-CM1BFa2O.js → _server.ts-iCDhsOOY.js} +6 -6
  251. package/build/server/chunks/_server.ts-iCDhsOOY.js.map +1 -0
  252. package/build/server/chunks/{_server.ts-Bx3uIrpl.js → _server.ts-jyQMP3IC.js} +5 -5
  253. package/build/server/chunks/{_server.ts-Bx3uIrpl.js.map → _server.ts-jyQMP3IC.js.map} +1 -1
  254. package/build/server/chunks/{_server.ts-Decw7JxO.js → _server.ts-sY8nzvys.js} +5 -5
  255. package/build/server/chunks/_server.ts-sY8nzvys.js.map +1 -0
  256. package/build/server/chunks/{addon-helpers-ChYTbRSK.js → addon-helpers-DmjAK3BO.js} +3 -3
  257. package/build/server/chunks/addon-helpers-DmjAK3BO.js.map +1 -0
  258. package/build/server/chunks/{akm-BLz9zl09.js → akm-B44WQaeD.js} +2 -2
  259. package/build/server/chunks/{akm-BLz9zl09.js.map → akm-B44WQaeD.js.map} +1 -1
  260. package/build/server/chunks/{catalog-CY6FvvAs.js → catalog-C8yZ2uH2.js} +5 -5
  261. package/build/server/chunks/{catalog-CY6FvvAs.js.map → catalog-C8yZ2uH2.js.map} +1 -1
  262. package/build/server/chunks/{client-FcHtkEV-.js → client-Dv5ruwWL.js} +2 -2
  263. package/build/server/chunks/{client-FcHtkEV-.js.map → client-Dv5ruwWL.js.map} +1 -1
  264. package/build/server/chunks/{config-WS3yDsjb.js → config-BXCHMmv_.js} +2 -2
  265. package/build/server/chunks/{config-WS3yDsjb.js.map → config-BXCHMmv_.js.map} +1 -1
  266. package/build/server/chunks/{docker-CDcBV4aX.js → docker-qBTgU_Qa.js} +2 -2
  267. package/build/server/chunks/{docker-CDcBV4aX.js.map → docker-qBTgU_Qa.js.map} +1 -1
  268. package/build/server/chunks/{endpoints-BnI8UQUm.js → endpoints-BJw6odky.js} +2 -2
  269. package/build/server/chunks/{endpoints-BnI8UQUm.js.map → endpoints-BJw6odky.js.map} +1 -1
  270. package/build/server/chunks/{error.svelte-DeB-Po5T.js → error.svelte-Bk8x64a4.js} +4 -4
  271. package/build/server/chunks/{error.svelte-DeB-Po5T.js.map → error.svelte-Bk8x64a4.js.map} +1 -1
  272. package/build/server/chunks/{helpers-uzTc9A0Q.js → helpers-DB3Oat0M.js} +3 -3
  273. package/build/server/chunks/{helpers-uzTc9A0Q.js.map → helpers-DB3Oat0M.js.map} +1 -1
  274. package/build/server/chunks/{hooks.server-DaC85A-N.js → hooks.server-DoW_3zHD.js} +7 -7
  275. package/build/server/chunks/hooks.server-DoW_3zHD.js.map +1 -0
  276. package/build/server/chunks/{http-DWCniA5n.js → http-C4WWfxK-.js} +2 -2
  277. package/build/server/chunks/{http-DWCniA5n.js.map → http-C4WWfxK-.js.map} +1 -1
  278. package/build/server/chunks/{internal-DRthfYRK.js → internal-Bkw-piFD.js} +3 -3
  279. package/build/server/chunks/{internal-DRthfYRK.js.map → internal-Bkw-piFD.js.map} +1 -1
  280. package/build/server/chunks/{migration-status-Blvg_RFt.js → migration-status-C-gFVWrV.js} +2 -2
  281. package/build/server/chunks/{migration-status-Blvg_RFt.js.map → migration-status-C-gFVWrV.js.map} +1 -1
  282. package/build/server/chunks/{session-cookie-DOONPnJ5.js → session-cookie-DYlRFqU6.js} +2 -2
  283. package/build/server/chunks/{session-cookie-DOONPnJ5.js.map → session-cookie-DYlRFqU6.js.map} +1 -1
  284. package/build/server/chunks/{setup-deploy-CeeF_6ze.js → setup-deploy-D3XucKIu.js} +2 -2
  285. package/build/server/chunks/{setup-deploy-CeeF_6ze.js.map → setup-deploy-D3XucKIu.js.map} +1 -1
  286. package/build/server/chunks/{src-B3g4Ry1X.js → src-DPd0Zos1.js} +198 -639
  287. package/build/server/chunks/src-DPd0Zos1.js.map +1 -0
  288. package/build/server/chunks/{state-CL9Kv-vm.js → state-CmEW57i2.js} +2 -2
  289. package/build/server/chunks/{state-CL9Kv-vm.js.map → state-CmEW57i2.js.map} +1 -1
  290. package/build/server/chunks/{state2-Cim9_nHe.js → state2-zSoANrav.js} +2 -2
  291. package/build/server/chunks/{state2-Cim9_nHe.js.map → state2-zSoANrav.js.map} +1 -1
  292. package/build/server/chunks/{theme-state.svelte-BgBXJ060.js → theme-state.svelte-DshW_ZYI.js} +2 -81
  293. package/build/server/chunks/theme-state.svelte-DshW_ZYI.js.map +1 -0
  294. package/build/server/index.js +32 -2
  295. package/build/server/index.js.map +1 -1
  296. package/build/server/manifest.js +93 -107
  297. package/build/server/manifest.js.map +1 -1
  298. package/package.json +2 -2
  299. package/build/client/_app/immutable/assets/4.BLk6Mqyj.css +0 -1
  300. package/build/client/_app/immutable/assets/4.BLk6Mqyj.css.br +0 -0
  301. package/build/client/_app/immutable/assets/4.BLk6Mqyj.css.gz +0 -0
  302. package/build/client/_app/immutable/chunks/B8C5qi9U.js.br +0 -0
  303. package/build/client/_app/immutable/chunks/B8C5qi9U.js.gz +0 -0
  304. package/build/client/_app/immutable/chunks/Br6Mrpf0.js.br +0 -0
  305. package/build/client/_app/immutable/chunks/Br6Mrpf0.js.gz +0 -0
  306. package/build/client/_app/immutable/chunks/CLgRRUN_.js.br +0 -0
  307. package/build/client/_app/immutable/chunks/CLgRRUN_.js.gz +0 -0
  308. package/build/client/_app/immutable/chunks/Ch85wCT5.js +0 -1
  309. package/build/client/_app/immutable/chunks/Ch85wCT5.js.br +0 -2
  310. package/build/client/_app/immutable/chunks/Ch85wCT5.js.gz +0 -0
  311. package/build/client/_app/immutable/chunks/DRHnoVLf.js +0 -1
  312. package/build/client/_app/immutable/chunks/DRHnoVLf.js.br +0 -0
  313. package/build/client/_app/immutable/chunks/DRHnoVLf.js.gz +0 -0
  314. package/build/client/_app/immutable/chunks/DYXGFYr6.js.br +0 -0
  315. package/build/client/_app/immutable/chunks/DYXGFYr6.js.gz +0 -0
  316. package/build/client/_app/immutable/chunks/Dcw6L0GF.js.br +0 -0
  317. package/build/client/_app/immutable/chunks/Dcw6L0GF.js.gz +0 -0
  318. package/build/client/_app/immutable/entry/app.CVxCoIFs.js.br +0 -0
  319. package/build/client/_app/immutable/entry/app.CVxCoIFs.js.gz +0 -0
  320. package/build/client/_app/immutable/entry/start.CQqNtgHJ.js +0 -1
  321. package/build/client/_app/immutable/entry/start.CQqNtgHJ.js.br +0 -0
  322. package/build/client/_app/immutable/entry/start.CQqNtgHJ.js.gz +0 -0
  323. package/build/client/_app/immutable/nodes/0.Bb8qAGW8.js.br +0 -0
  324. package/build/client/_app/immutable/nodes/0.Bb8qAGW8.js.gz +0 -0
  325. package/build/client/_app/immutable/nodes/1.Co_TaqLI.js.br +0 -2
  326. package/build/client/_app/immutable/nodes/1.Co_TaqLI.js.gz +0 -0
  327. package/build/client/_app/immutable/nodes/4.agNu3Ryl.js +0 -130
  328. package/build/client/_app/immutable/nodes/4.agNu3Ryl.js.br +0 -0
  329. package/build/client/_app/immutable/nodes/4.agNu3Ryl.js.gz +0 -0
  330. package/build/client/_app/immutable/nodes/5.Fw13EXte.js.br +0 -0
  331. package/build/client/_app/immutable/nodes/5.Fw13EXte.js.gz +0 -0
  332. package/build/client/_app/immutable/nodes/6.CWy0yXnu.js.br +0 -0
  333. package/build/client/_app/immutable/nodes/6.CWy0yXnu.js.gz +0 -0
  334. package/build/client/_app/immutable/nodes/7.CsM4M8Ul.js.br +0 -0
  335. package/build/client/_app/immutable/nodes/7.CsM4M8Ul.js.gz +0 -0
  336. package/build/client/_app/immutable/nodes/8.V6hY0p8a.js.br +0 -0
  337. package/build/client/_app/immutable/nodes/8.V6hY0p8a.js.gz +0 -0
  338. package/build/server/chunks/1-DvZDBGww.js +0 -9
  339. package/build/server/chunks/10-C96Thueb.js.map +0 -1
  340. package/build/server/chunks/4-BYdi8hv_.js +0 -9
  341. package/build/server/chunks/6-BsZngRIA.js +0 -9
  342. package/build/server/chunks/_page.svelte-WYgjKj38.js.map +0 -1
  343. package/build/server/chunks/_server.ts-2fxcxBzC.js.map +0 -1
  344. package/build/server/chunks/_server.ts-5aqdy9Zn.js.map +0 -1
  345. package/build/server/chunks/_server.ts-B8D1t67g.js.map +0 -1
  346. package/build/server/chunks/_server.ts-BETcFeB8.js.map +0 -1
  347. package/build/server/chunks/_server.ts-BM0AExGa.js +0 -121
  348. package/build/server/chunks/_server.ts-BM0AExGa.js.map +0 -1
  349. package/build/server/chunks/_server.ts-Baeek88H.js.map +0 -1
  350. package/build/server/chunks/_server.ts-BlVBulWB.js.map +0 -1
  351. package/build/server/chunks/_server.ts-Brb7lRFE.js.map +0 -1
  352. package/build/server/chunks/_server.ts-C5jyYbFm.js.map +0 -1
  353. package/build/server/chunks/_server.ts-C7Scn_Ur.js.map +0 -1
  354. package/build/server/chunks/_server.ts-C9-ewPaY.js.map +0 -1
  355. package/build/server/chunks/_server.ts-CM1BFa2O.js.map +0 -1
  356. package/build/server/chunks/_server.ts-Cap2Myq0.js.map +0 -1
  357. package/build/server/chunks/_server.ts-DBQ7TD4o.js.map +0 -1
  358. package/build/server/chunks/_server.ts-DDCEmU_P.js.map +0 -1
  359. package/build/server/chunks/_server.ts-DLLNA3jY.js +0 -47
  360. package/build/server/chunks/_server.ts-DLLNA3jY.js.map +0 -1
  361. package/build/server/chunks/_server.ts-DM6Jm6KP.js.map +0 -1
  362. package/build/server/chunks/_server.ts-DRvqTDLx.js.map +0 -1
  363. package/build/server/chunks/_server.ts-DXoq1VzO.js.map +0 -1
  364. package/build/server/chunks/_server.ts-DYsP_lpr.js.map +0 -1
  365. package/build/server/chunks/_server.ts-DZ-yNYeI.js +0 -64
  366. package/build/server/chunks/_server.ts-DZ-yNYeI.js.map +0 -1
  367. package/build/server/chunks/_server.ts-Dcawi9b4.js.map +0 -1
  368. package/build/server/chunks/_server.ts-Decw7JxO.js.map +0 -1
  369. package/build/server/chunks/_server.ts-Dg4ouUjZ.js.map +0 -1
  370. package/build/server/chunks/_server.ts-IW-zQmmb.js.map +0 -1
  371. package/build/server/chunks/_server.ts-WePF2DAq.js.map +0 -1
  372. package/build/server/chunks/_server.ts-k339Bhm3.js +0 -88
  373. package/build/server/chunks/_server.ts-k339Bhm3.js.map +0 -1
  374. package/build/server/chunks/addon-helpers-ChYTbRSK.js.map +0 -1
  375. package/build/server/chunks/environment-D-dkDBwd.js +0 -36
  376. package/build/server/chunks/environment-D-dkDBwd.js.map +0 -1
  377. package/build/server/chunks/hooks.server-DaC85A-N.js.map +0 -1
  378. package/build/server/chunks/src-B3g4Ry1X.js.map +0 -1
  379. package/build/server/chunks/theme-state.svelte-BgBXJ060.js.map +0 -1
  380. package/build/server/chunks/version-cache-CSnmLqxQ.js +0 -54
  381. package/build/server/chunks/version-cache-CSnmLqxQ.js.map +0 -1
@@ -1,7 +1,7 @@
1
- import { w as withAdminBody, k as jsonResponse } from './helpers-uzTc9A0Q.js';
2
- import { o as opencodeFetch } from './http-DWCniA5n.js';
1
+ import { w as withAdminBody, k as jsonResponse } from './helpers-DB3Oat0M.js';
2
+ import { o as opencodeFetch } from './http-C4WWfxK-.js';
3
3
  import { a as asStringOrEmpty } from './_helpers-B_lb4-jB.js';
4
- import './src-B3g4Ry1X.js';
4
+ import './src-DPd0Zos1.js';
5
5
  import './chunk-CLZ62Ad-.js';
6
6
  import 'node:module';
7
7
  import './provider-constants-DPrj3yBX.js';
@@ -23,8 +23,8 @@ import 'zlib';
23
23
  import 'node:assert';
24
24
  import 'node:fs/promises';
25
25
  import 'node:os';
26
- import './endpoints-BnI8UQUm.js';
27
- import './state-CL9Kv-vm.js';
26
+ import './endpoints-BJw6odky.js';
27
+ import './state-CmEW57i2.js';
28
28
  import './coercion-TNFJisCC.js';
29
29
 
30
30
  //#region src/routes/admin/providers/oauth/finish/+server.ts
@@ -65,4 +65,4 @@ var POST = (event) => withAdminBody(event, async ({ requestId, body }) => {
65
65
  });
66
66
 
67
67
  export { POST };
68
- //# sourceMappingURL=_server.ts-0UwoVmus.js.map
68
+ //# sourceMappingURL=_server.ts-CibQYGvX.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-0UwoVmus.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/providers/oauth/finish/_server.ts.js"],"sourcesContent":["import { l as jsonResponse, p as withAdminBody } from \"../../../../../../chunks/helpers.js\";\nimport { t as opencodeFetch } from \"../../../../../../chunks/http.js\";\nimport { t as asStringOrEmpty } from \"../../../../../../chunks/_helpers.js\";\n//#region src/routes/admin/providers/oauth/finish/+server.ts\n/**\n* POST /admin/providers/oauth/finish — Complete an OAuth code-mode\n* sign-in by exchanging the operator-pasted authorization code with the\n* assistant OpenCode instance.\n*/\nvar POST = (event) => withAdminBody(event, async ({ requestId, body }) => {\n\ttry {\n\t\tconst providerId = asStringOrEmpty(body.providerId);\n\t\tconst methodIndex = Number(asStringOrEmpty(body.methodIndex));\n\t\tconst code = asStringOrEmpty(body.code);\n\t\tif (!providerId || Number.isNaN(methodIndex) || !code) return jsonResponse(200, {\n\t\t\tok: false,\n\t\t\tmessage: \"Paste the authorization code before finishing sign-in.\",\n\t\t\tselectedProviderId: providerId\n\t\t}, requestId);\n\t\tawait opencodeFetch(`/provider/${encodeURIComponent(providerId)}/oauth/callback`, {\n\t\t\tmethod: \"POST\",\n\t\t\tbody: JSON.stringify({\n\t\t\t\tmethod: methodIndex,\n\t\t\t\tcode\n\t\t\t})\n\t\t});\n\t\treturn jsonResponse(200, {\n\t\t\tok: true,\n\t\t\tmessage: \"OAuth connection completed.\",\n\t\t\tselectedProviderId: providerId\n\t\t}, requestId);\n\t} catch (error) {\n\t\treturn jsonResponse(200, {\n\t\t\tok: false,\n\t\t\tmessage: error instanceof Error ? error.message : \"Internal error\",\n\t\t\tselectedProviderId: void 0\n\t\t}, requestId);\n\t}\n});\n//#endregion\nexport { POST };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACG,IAAC,IAAI,GAAG,CAAC,KAAK,KAAK,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK;AAC1E,CAAC,IAAI;AACL,EAAE,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC;AACrD,EAAE,MAAM,WAAW,GAAG,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AAC/D,EAAE,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;AACzC,EAAE,IAAI,CAAC,UAAU,IAAI,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE;AAClF,GAAG,EAAE,EAAE,KAAK;AACZ,GAAG,OAAO,EAAE,wDAAwD;AACpE,GAAG,kBAAkB,EAAE;AACvB,GAAG,EAAE,SAAS,CAAC;AACf,EAAE,MAAM,aAAa,CAAC,CAAC,UAAU,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC,eAAe,CAAC,EAAE;AACpF,GAAG,MAAM,EAAE,MAAM;AACjB,GAAG,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;AACxB,IAAI,MAAM,EAAE,WAAW;AACvB,IAAI;AACJ,IAAI;AACJ,GAAG,CAAC;AACJ,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE;AAC3B,GAAG,EAAE,EAAE,IAAI;AACX,GAAG,OAAO,EAAE,6BAA6B;AACzC,GAAG,kBAAkB,EAAE;AACvB,GAAG,EAAE,SAAS,CAAC;AACf,CAAC,CAAC,CAAC,OAAO,KAAK,EAAE;AACjB,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE;AAC3B,GAAG,EAAE,EAAE,KAAK;AACZ,GAAG,OAAO,EAAE,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,gBAAgB;AACrE,GAAG,kBAAkB,EAAE;AACvB,GAAG,EAAE,SAAS,CAAC;AACf,CAAC;AACD,CAAC;;;;"}
1
+ {"version":3,"file":"_server.ts-CibQYGvX.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/providers/oauth/finish/_server.ts.js"],"sourcesContent":["import { l as jsonResponse, p as withAdminBody } from \"../../../../../../chunks/helpers.js\";\nimport { t as opencodeFetch } from \"../../../../../../chunks/http.js\";\nimport { t as asStringOrEmpty } from \"../../../../../../chunks/_helpers.js\";\n//#region src/routes/admin/providers/oauth/finish/+server.ts\n/**\n* POST /admin/providers/oauth/finish — Complete an OAuth code-mode\n* sign-in by exchanging the operator-pasted authorization code with the\n* assistant OpenCode instance.\n*/\nvar POST = (event) => withAdminBody(event, async ({ requestId, body }) => {\n\ttry {\n\t\tconst providerId = asStringOrEmpty(body.providerId);\n\t\tconst methodIndex = Number(asStringOrEmpty(body.methodIndex));\n\t\tconst code = asStringOrEmpty(body.code);\n\t\tif (!providerId || Number.isNaN(methodIndex) || !code) return jsonResponse(200, {\n\t\t\tok: false,\n\t\t\tmessage: \"Paste the authorization code before finishing sign-in.\",\n\t\t\tselectedProviderId: providerId\n\t\t}, requestId);\n\t\tawait opencodeFetch(`/provider/${encodeURIComponent(providerId)}/oauth/callback`, {\n\t\t\tmethod: \"POST\",\n\t\t\tbody: JSON.stringify({\n\t\t\t\tmethod: methodIndex,\n\t\t\t\tcode\n\t\t\t})\n\t\t});\n\t\treturn jsonResponse(200, {\n\t\t\tok: true,\n\t\t\tmessage: \"OAuth connection completed.\",\n\t\t\tselectedProviderId: providerId\n\t\t}, requestId);\n\t} catch (error) {\n\t\treturn jsonResponse(200, {\n\t\t\tok: false,\n\t\t\tmessage: error instanceof Error ? error.message : \"Internal error\",\n\t\t\tselectedProviderId: void 0\n\t\t}, requestId);\n\t}\n});\n//#endregion\nexport { POST };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACG,IAAC,IAAI,GAAG,CAAC,KAAK,KAAK,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK;AAC1E,CAAC,IAAI;AACL,EAAE,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC;AACrD,EAAE,MAAM,WAAW,GAAG,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AAC/D,EAAE,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;AACzC,EAAE,IAAI,CAAC,UAAU,IAAI,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE;AAClF,GAAG,EAAE,EAAE,KAAK;AACZ,GAAG,OAAO,EAAE,wDAAwD;AACpE,GAAG,kBAAkB,EAAE;AACvB,GAAG,EAAE,SAAS,CAAC;AACf,EAAE,MAAM,aAAa,CAAC,CAAC,UAAU,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC,eAAe,CAAC,EAAE;AACpF,GAAG,MAAM,EAAE,MAAM;AACjB,GAAG,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;AACxB,IAAI,MAAM,EAAE,WAAW;AACvB,IAAI;AACJ,IAAI;AACJ,GAAG,CAAC;AACJ,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE;AAC3B,GAAG,EAAE,EAAE,IAAI;AACX,GAAG,OAAO,EAAE,6BAA6B;AACzC,GAAG,kBAAkB,EAAE;AACvB,GAAG,EAAE,SAAS,CAAC;AACf,CAAC,CAAC,CAAC,OAAO,KAAK,EAAE;AACjB,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE;AAC3B,GAAG,EAAE,EAAE,KAAK;AACZ,GAAG,OAAO,EAAE,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,gBAAgB;AACrE,GAAG,kBAAkB,EAAE;AACvB,GAAG,EAAE,SAAS,CAAC;AACf,CAAC;AACD,CAAC;;;;"}
@@ -1,6 +1,6 @@
1
- import { d as getRequestId, r as requireAdmin, g as getOpenCodeClient, e as errorResponse, k as jsonResponse, p as parseJsonBody, j as jsonBodyError } from './helpers-uzTc9A0Q.js';
2
- import { u as unsetMainModel, s as setMainModel } from './config-WS3yDsjb.js';
3
- import './src-B3g4Ry1X.js';
1
+ import { d as getRequestId, r as requireAdmin, g as getOpenCodeClient, e as errorResponse, k as jsonResponse, p as parseJsonBody, j as jsonBodyError } from './helpers-DB3Oat0M.js';
2
+ import { u as unsetMainModel, s as setMainModel } from './config-BXCHMmv_.js';
3
+ import './src-DPd0Zos1.js';
4
4
  import './chunk-CLZ62Ad-.js';
5
5
  import 'node:module';
6
6
  import './provider-constants-DPrj3yBX.js';
@@ -22,10 +22,10 @@ import 'zlib';
22
22
  import 'node:assert';
23
23
  import 'node:fs/promises';
24
24
  import 'node:os';
25
- import './endpoints-BnI8UQUm.js';
26
- import './state-CL9Kv-vm.js';
25
+ import './endpoints-BJw6odky.js';
26
+ import './state-CmEW57i2.js';
27
27
  import './coercion-TNFJisCC.js';
28
- import './http-DWCniA5n.js';
28
+ import './http-C4WWfxK-.js';
29
29
 
30
30
  //#region src/routes/admin/opencode/model/+server.ts
31
31
  var GET = async (event) => {
@@ -82,4 +82,4 @@ var POST = async (event) => {
82
82
  };
83
83
 
84
84
  export { GET, POST };
85
- //# sourceMappingURL=_server.ts-B6AN-mYa.js.map
85
+ //# sourceMappingURL=_server.ts-CloVt7eS.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-B6AN-mYa.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/opencode/model/_server.ts.js"],"sourcesContent":["import { a as getOpenCodeClient, c as jsonBodyError, d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId, u as parseJsonBody } from \"../../../../../chunks/helpers.js\";\nimport { i as setMainModel, s as unsetMainModel } from \"../../../../../chunks/config.js\";\n//#region src/routes/admin/opencode/model/+server.ts\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst config = await getOpenCodeClient().getConfig();\n\tif (!config) return errorResponse(503, \"opencode_unavailable\", \"OpenCode is not reachable\", {}, requestId);\n\treturn jsonResponse(200, {\n\t\tmodel: config.model ?? \"\",\n\t\tsmall_model: config.small_model ?? \"\"\n\t}, requestId);\n};\n/** Parse a \"provider/model\" string. Returns null if the input is empty or malformed. */\nfunction parseProviderModel(raw) {\n\tif (typeof raw !== \"string\") return null;\n\tconst trimmed = raw.trim();\n\tif (!trimmed) return null;\n\tconst slash = trimmed.indexOf(\"/\");\n\tif (slash <= 0 || slash === trimmed.length - 1) return null;\n\treturn {\n\t\tprovider: trimmed.slice(0, slash),\n\t\tmodel: trimmed.slice(slash + 1)\n\t};\n}\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst result = await parseJsonBody(event.request);\n\tif (\"error\" in result) return jsonBodyError(result, requestId);\n\tconst body = result.data;\n\tconst hasModel = \"model\" in body;\n\tconst hasSmallModel = \"small_model\" in body;\n\tif (!hasModel && !hasSmallModel) return errorResponse(400, \"bad_request\", \"model or small_model is required\", {}, requestId);\n\ttry {\n\t\tif (hasModel) if (body.model === null || body.model === \"\") await unsetMainModel(\"model\");\n\t\telse {\n\t\t\tconst parsed = parseProviderModel(body.model);\n\t\t\tif (!parsed) return errorResponse(400, \"bad_request\", \"model must be in \\\"provider/model\\\" format\", {}, requestId);\n\t\t\tawait setMainModel(parsed.provider, parsed.model, \"model\");\n\t\t}\n\t\tif (hasSmallModel) if (body.small_model === null || body.small_model === \"\") await unsetMainModel(\"small_model\");\n\t\telse {\n\t\t\tconst parsed = parseProviderModel(body.small_model);\n\t\t\tif (!parsed) return errorResponse(400, \"bad_request\", \"small_model must be in \\\"provider/model\\\" format\", {}, requestId);\n\t\t\tawait setMainModel(parsed.provider, parsed.model, \"small_model\");\n\t\t}\n\t} catch (e) {\n\t\tconsole.warn(\"[opencode.model] Failed to persist model selection\", e);\n\t\treturn errorResponse(500, \"internal_error\", \"Failed to persist model selection\", {}, requestId);\n\t}\n\treturn jsonResponse(200, { ok: true }, requestId);\n};\n//#endregion\nexport { GET, POST };\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_server.ts-CloVt7eS.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/opencode/model/_server.ts.js"],"sourcesContent":["import { a as getOpenCodeClient, c as jsonBodyError, d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId, u as parseJsonBody } from \"../../../../../chunks/helpers.js\";\nimport { i as setMainModel, s as unsetMainModel } from \"../../../../../chunks/config.js\";\n//#region src/routes/admin/opencode/model/+server.ts\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst config = await getOpenCodeClient().getConfig();\n\tif (!config) return errorResponse(503, \"opencode_unavailable\", \"OpenCode is not reachable\", {}, requestId);\n\treturn jsonResponse(200, {\n\t\tmodel: config.model ?? \"\",\n\t\tsmall_model: config.small_model ?? \"\"\n\t}, requestId);\n};\n/** Parse a \"provider/model\" string. Returns null if the input is empty or malformed. */\nfunction parseProviderModel(raw) {\n\tif (typeof raw !== \"string\") return null;\n\tconst trimmed = raw.trim();\n\tif (!trimmed) return null;\n\tconst slash = trimmed.indexOf(\"/\");\n\tif (slash <= 0 || slash === trimmed.length - 1) return null;\n\treturn {\n\t\tprovider: trimmed.slice(0, slash),\n\t\tmodel: trimmed.slice(slash + 1)\n\t};\n}\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst result = await parseJsonBody(event.request);\n\tif (\"error\" in result) return jsonBodyError(result, requestId);\n\tconst body = result.data;\n\tconst hasModel = \"model\" in body;\n\tconst hasSmallModel = \"small_model\" in body;\n\tif (!hasModel && !hasSmallModel) return errorResponse(400, \"bad_request\", \"model or small_model is required\", {}, requestId);\n\ttry {\n\t\tif (hasModel) if (body.model === null || body.model === \"\") await unsetMainModel(\"model\");\n\t\telse {\n\t\t\tconst parsed = parseProviderModel(body.model);\n\t\t\tif (!parsed) return errorResponse(400, \"bad_request\", \"model must be in \\\"provider/model\\\" format\", {}, requestId);\n\t\t\tawait setMainModel(parsed.provider, parsed.model, \"model\");\n\t\t}\n\t\tif (hasSmallModel) if (body.small_model === null || body.small_model === \"\") await unsetMainModel(\"small_model\");\n\t\telse {\n\t\t\tconst parsed = parseProviderModel(body.small_model);\n\t\t\tif (!parsed) return errorResponse(400, \"bad_request\", \"small_model must be in \\\"provider/model\\\" format\", {}, requestId);\n\t\t\tawait setMainModel(parsed.provider, parsed.model, \"small_model\");\n\t\t}\n\t} catch (e) {\n\t\tconsole.warn(\"[opencode.model] Failed to persist model selection\", e);\n\t\treturn errorResponse(500, \"internal_error\", \"Failed to persist model selection\", {}, requestId);\n\t}\n\treturn jsonResponse(200, { ok: true }, requestId);\n};\n//#endregion\nexport { GET, POST };\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { d as getRequestId, e as errorResponse, f as getUiLoginPassword, s as safeTokenCompare, b as createSession } from './helpers-uzTc9A0Q.js';
2
- import { s as sessionCookieHeader } from './session-cookie-DOONPnJ5.js';
3
- import './src-B3g4Ry1X.js';
1
+ import { d as getRequestId, e as errorResponse, f as getUiLoginPassword, s as safeTokenCompare, b as createSession } from './helpers-DB3Oat0M.js';
2
+ import { s as sessionCookieHeader } from './session-cookie-DYlRFqU6.js';
3
+ import './src-DPd0Zos1.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-BnI8UQUm.js';
26
- import './state-CL9Kv-vm.js';
25
+ import './endpoints-BJw6odky.js';
26
+ import './state-CmEW57i2.js';
27
27
 
28
28
  //#region src/routes/admin/auth/login/+server.ts
29
29
  var POST = async (event) => {
@@ -54,4 +54,4 @@ var POST = async (event) => {
54
54
  };
55
55
 
56
56
  export { POST };
57
- //# sourceMappingURL=_server.ts-B5PHfuR5.js.map
57
+ //# sourceMappingURL=_server.ts-CmjNZw87.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-B5PHfuR5.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/auth/login/_server.ts.js"],"sourcesContent":["import { f as safeTokenCompare, g as getUiLoginPassword, h as createSession, i as errorResponse, o as getRequestId } from \"../../../../../chunks/helpers.js\";\nimport { r as sessionCookieHeader } from \"../../../../../chunks/session-cookie.js\";\n//#region src/routes/admin/auth/login/+server.ts\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tlet body;\n\ttry {\n\t\tbody = await event.request.json();\n\t} catch {\n\t\treturn errorResponse(400, \"bad_request\", \"Invalid JSON body\", {}, requestId);\n\t}\n\tconst password = typeof body.password === \"string\" ? body.password : \"\";\n\tif (!password) return errorResponse(400, \"bad_request\", \"password is required\", {}, requestId);\n\tconst configured = getUiLoginPassword();\n\tif (!configured) return errorResponse(503, \"admin_not_configured\", \"OP_UI_LOGIN_PASSWORD has not been set. Complete setup first.\", {}, requestId);\n\tif (!safeTokenCompare(password, configured)) return errorResponse(401, \"unauthorized\", \"Invalid password\", {}, requestId);\n\tconst sessionToken = createSession();\n\treturn new Response(JSON.stringify({\n\t\tok: true,\n\t\trole: \"admin\"\n\t}), {\n\t\tstatus: 200,\n\t\theaders: {\n\t\t\t\"content-type\": \"application/json\",\n\t\t\t\"set-cookie\": sessionCookieHeader(sessionToken, event.request),\n\t\t\t\"x-request-id\": requestId\n\t\t}\n\t});\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,IAAI,IAAI;AACT,CAAC,IAAI;AACL,EAAE,IAAI,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE;AACnC,CAAC,CAAC,CAAC,MAAM;AACT,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,aAAa,EAAE,mBAAmB,EAAE,EAAE,EAAE,SAAS,CAAC;AAC9E,CAAC;AACD,CAAC,MAAM,QAAQ,GAAG,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,GAAG,IAAI,CAAC,QAAQ,GAAG,EAAE;AACxE,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,aAAa,EAAE,sBAAsB,EAAE,EAAE,EAAE,SAAS,CAAC;AAC/F,CAAC,MAAM,UAAU,GAAG,kBAAkB,EAAE;AACxC,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,sBAAsB,EAAE,8DAA8D,EAAE,EAAE,EAAE,SAAS,CAAC;AAClJ,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,cAAc,EAAE,kBAAkB,EAAE,EAAE,EAAE,SAAS,CAAC;AAC1H,CAAC,MAAM,YAAY,GAAG,aAAa,EAAE;AACrC,CAAC,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;AACpC,EAAE,EAAE,EAAE,IAAI;AACV,EAAE,IAAI,EAAE;AACR,EAAE,CAAC,EAAE;AACL,EAAE,MAAM,EAAE,GAAG;AACb,EAAE,OAAO,EAAE;AACX,GAAG,cAAc,EAAE,kBAAkB;AACrC,GAAG,YAAY,EAAE,mBAAmB,CAAC,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC;AACjE,GAAG,cAAc,EAAE;AACnB;AACA,EAAE,CAAC;AACH;;;;"}
1
+ {"version":3,"file":"_server.ts-CmjNZw87.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/auth/login/_server.ts.js"],"sourcesContent":["import { f as safeTokenCompare, g as getUiLoginPassword, h as createSession, i as errorResponse, o as getRequestId } from \"../../../../../chunks/helpers.js\";\nimport { r as sessionCookieHeader } from \"../../../../../chunks/session-cookie.js\";\n//#region src/routes/admin/auth/login/+server.ts\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tlet body;\n\ttry {\n\t\tbody = await event.request.json();\n\t} catch {\n\t\treturn errorResponse(400, \"bad_request\", \"Invalid JSON body\", {}, requestId);\n\t}\n\tconst password = typeof body.password === \"string\" ? body.password : \"\";\n\tif (!password) return errorResponse(400, \"bad_request\", \"password is required\", {}, requestId);\n\tconst configured = getUiLoginPassword();\n\tif (!configured) return errorResponse(503, \"admin_not_configured\", \"OP_UI_LOGIN_PASSWORD has not been set. Complete setup first.\", {}, requestId);\n\tif (!safeTokenCompare(password, configured)) return errorResponse(401, \"unauthorized\", \"Invalid password\", {}, requestId);\n\tconst sessionToken = createSession();\n\treturn new Response(JSON.stringify({\n\t\tok: true,\n\t\trole: \"admin\"\n\t}), {\n\t\tstatus: 200,\n\t\theaders: {\n\t\t\t\"content-type\": \"application/json\",\n\t\t\t\"set-cookie\": sessionCookieHeader(sessionToken, event.request),\n\t\t\t\"x-request-id\": requestId\n\t\t}\n\t});\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,IAAI,IAAI;AACT,CAAC,IAAI;AACL,EAAE,IAAI,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE;AACnC,CAAC,CAAC,CAAC,MAAM;AACT,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,aAAa,EAAE,mBAAmB,EAAE,EAAE,EAAE,SAAS,CAAC;AAC9E,CAAC;AACD,CAAC,MAAM,QAAQ,GAAG,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,GAAG,IAAI,CAAC,QAAQ,GAAG,EAAE;AACxE,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,aAAa,EAAE,sBAAsB,EAAE,EAAE,EAAE,SAAS,CAAC;AAC/F,CAAC,MAAM,UAAU,GAAG,kBAAkB,EAAE;AACxC,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,sBAAsB,EAAE,8DAA8D,EAAE,EAAE,EAAE,SAAS,CAAC;AAClJ,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,cAAc,EAAE,kBAAkB,EAAE,EAAE,EAAE,SAAS,CAAC;AAC1H,CAAC,MAAM,YAAY,GAAG,aAAa,EAAE;AACrC,CAAC,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;AACpC,EAAE,EAAE,EAAE,IAAI;AACV,EAAE,IAAI,EAAE;AACR,EAAE,CAAC,EAAE;AACL,EAAE,MAAM,EAAE,GAAG;AACb,EAAE,OAAO,EAAE;AACX,GAAG,cAAc,EAAE,kBAAkB;AACrC,GAAG,YAAY,EAAE,mBAAmB,CAAC,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC;AACjE,GAAG,cAAc,EAAE;AACnB;AACA,EAAE,CAAC;AACH;;;;"}
@@ -1,9 +1,9 @@
1
- import { ae as importHostOpenCode, R as detectHostOpenCode, j as authJsonPath, p as checkDocker, n as buildComposeOptions } from './src-B3g4Ry1X.js';
2
- import { g as getState } from './state-CL9Kv-vm.js';
3
- import { d as getRequestId, r as requireAdmin, p as parseJsonBody, e as errorResponse, k as jsonResponse } from './helpers-uzTc9A0Q.js';
1
+ import { ac as importHostOpenCode, O as detectHostOpenCode, i as authJsonPath, o as checkDocker, m as buildComposeOptions } from './src-DPd0Zos1.js';
2
+ import { g as getState } from './state-CmEW57i2.js';
3
+ import { d as getRequestId, r as requireAdmin, p as parseJsonBody, e as errorResponse, k as jsonResponse } from './helpers-DB3Oat0M.js';
4
4
  import { w as withSerialQueue } from './serial-queue-D9FEpYVv.js';
5
- import { o as opencodeFetch } from './http-DWCniA5n.js';
6
- import { c as composeRestart } from './docker-CDcBV4aX.js';
5
+ import { o as opencodeFetch } from './http-C4WWfxK-.js';
6
+ import { c as composeRestart } from './docker-qBTgU_Qa.js';
7
7
  import { existsSync, readFileSync } from 'node:fs';
8
8
  import './chunk-CLZ62Ad-.js';
9
9
  import 'node:module';
@@ -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-BnI8UQUm.js';
28
+ import './endpoints-BJw6odky.js';
29
29
 
30
30
  //#region src/routes/admin/providers/import-host/+server.ts
31
31
  /**
@@ -157,4 +157,4 @@ var POST = async (event) => {
157
157
  };
158
158
 
159
159
  export { POST };
160
- //# sourceMappingURL=_server.ts-B8D1t67g.js.map
160
+ //# sourceMappingURL=_server.ts-Cn7LfLF_.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts-Cn7LfLF_.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/providers/import-host/_server.ts.js"],"sourcesContent":["import { L as buildComposeOptions, X as checkDocker, Yt as authJsonPath, a as importHostOpenCode, i as detectHostOpenCode } 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, u as parseJsonBody } from \"../../../../../chunks/helpers.js\";\nimport { t as withSerialQueue } from \"../../../../../chunks/serial-queue.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/admin/providers/import-host/+server.ts\n/**\n* POST /admin/providers/import-host\n*\n* Copies host OpenCode config + auth into OP_HOME, then pushes each\n* imported credential to the running OpenCode server so the providers\n* appear connected immediately (no restart required).\n*\n* - opencode.json: stripped of plugin/mcp/permission keys, merged with\n* existing OP_HOME config. Provider conflicts preserved by default.\n* - auth.json: byte-copied and chmodded 0o600. Never logged.\n* - Live push: best-effort PUT to OpenCode /auth/{id} per credential.\n* If OpenCode is unreachable, the file copy still applies and OpenCode\n* will pick up the credentials on next restart.\n* - Service restart: assistant is restarted after the import so opencode.json\n* provider blocks are re-read (live push only updates the auth store, not\n* config).\n*\n* Body (optional JSON):\n* { overwriteConflicts?: boolean } — default false\n*\n* Auth: admin token required.\n*/\n/**\n* Restart services that hold provider state in startup config.\n* Best-effort: the file-level import is the durable part; this is the polish\n* that makes the change visible without the user having to bounce things by hand.\n* OpenCode caches opencode.json provider blocks at startup, so imported\n* provider config needs a fresh assistant process.\n*/\nasync function restartProviderConsumers() {\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(getState());\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/** Push each auth.json entry to OpenCode's /auth/{id} so the running process sees them. */\nasync function pushAuthToOpenCode(authPath) {\n\tlet raw;\n\ttry {\n\t\traw = JSON.parse(readFileSync(authPath, \"utf-8\"));\n\t} catch {\n\t\treturn {\n\t\t\tpushed: 0,\n\t\t\tfailed: []\n\t\t};\n\t}\n\tif (!raw || typeof raw !== \"object\" || Array.isArray(raw)) return {\n\t\tpushed: 0,\n\t\tfailed: []\n\t};\n\tlet pushed = 0;\n\tconst failed = [];\n\tfor (const [providerId, value] of Object.entries(raw)) try {\n\t\tawait opencodeFetch(`/auth/${encodeURIComponent(providerId)}`, {\n\t\t\tmethod: \"PUT\",\n\t\t\tbody: JSON.stringify(value)\n\t\t});\n\t\tpushed++;\n\t} catch {\n\t\tfailed.push(providerId);\n\t}\n\treturn {\n\t\tpushed,\n\t\tfailed\n\t};\n}\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\treturn withSerialQueue(\"admin:providers:import-host\", async () => {\n\t\tconst state = getState();\n\t\tlet overwriteConflicts = false;\n\t\tif ((event.request.headers.get(\"content-type\") ?? \"\").includes(\"application/json\")) {\n\t\t\tconst parsed = await parseJsonBody(event.request);\n\t\t\tif (!(\"error\" in parsed)) overwriteConflicts = parsed.data.overwriteConflicts === true;\n\t\t}\n\t\tlet result;\n\t\ttry {\n\t\t\tresult = importHostOpenCode(state, { overwriteConflicts });\n\t\t} catch (err) {\n\t\t\treturn errorResponse(500, \"import_failed\", err instanceof Error ? err.message : \"Import failed\", {}, requestId);\n\t\t}\n\t\tconst hostStatus = detectHostOpenCode();\n\t\tlet livePush = {\n\t\t\tpushed: 0,\n\t\t\tfailed: []\n\t\t};\n\t\tconst importedAuthPath = authJsonPath(state);\n\t\tif (existsSync(importedAuthPath)) livePush = await pushAuthToOpenCode(importedAuthPath);\n\t\telse if (hostStatus.authPath) livePush = await pushAuthToOpenCode(hostStatus.authPath);\n\t\tconst restart = await restartProviderConsumers();\n\t\treturn jsonResponse(200, {\n\t\t\tok: true,\n\t\t\timported: result.imported,\n\t\t\tconflicts: result.conflicts,\n\t\t\tlivePushed: livePush.pushed,\n\t\t\tlivePushFailed: livePush.failed,\n\t\t\trestarted: restart.restarted,\n\t\t\trestartFailed: restart.failed\n\t\t}, requestId);\n\t});\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { V as dismissSecretStripNotice, aH as readSecretStripNotice, H as createLogger } from './src-B3g4Ry1X.js';
2
- import { g as getState } from './state-CL9Kv-vm.js';
3
- import { d as getRequestId, r as requireAdmin, k as jsonResponse, e as errorResponse } from './helpers-uzTc9A0Q.js';
1
+ import { T as dismissSecretStripNotice, aA as readSecretStripNotice, F as createLogger } from './src-DPd0Zos1.js';
2
+ import { g as getState } from './state-CmEW57i2.js';
3
+ import { d as getRequestId, r as requireAdmin, k as jsonResponse, e as errorResponse } from './helpers-DB3Oat0M.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-BnI8UQUm.js';
25
+ import './endpoints-BJw6odky.js';
26
26
 
27
27
  //#region src/routes/admin/secret-notice/+server.ts
28
28
  var logger = createLogger("secret-notice");
@@ -61,4 +61,4 @@ var DELETE = async (event) => {
61
61
  };
62
62
 
63
63
  export { DELETE, GET };
64
- //# sourceMappingURL=_server.ts-aw8KYE5U.js.map
64
+ //# sourceMappingURL=_server.ts-Crdovz8j.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-aw8KYE5U.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/secret-notice/_server.ts.js"],"sourcesContent":["import { Rt as dismissSecretStripNotice, Tn as createLogger, zt as readSecretStripNotice } 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/secret-notice/+server.ts\nvar logger = createLogger(\"secret-notice\");\n/**\n* #502 — one-time notice that secret-looking keys were removed from stack.env.\n* The strip itself is correct per the secret-boundary contract; this surfaces\n* it so the user knows where their value went and how to re-add it.\n*/\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\ttry {\n\t\treturn jsonResponse(200, {\n\t\t\tok: true,\n\t\t\tnotice: readSecretStripNotice(state)\n\t\t}, requestId);\n\t} catch (e) {\n\t\treturn errorResponse(500, \"secret_notice_failed\", e instanceof Error ? e.message : String(e), {}, requestId);\n\t}\n};\n/** Dismiss the one-time notice. */\nvar DELETE = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst state = getState();\n\ttry {\n\t\tdismissSecretStripNotice(state);\n\t\tlogger.info(\"secret-strip notice dismissed\", { requestId });\n\t\treturn jsonResponse(200, { ok: true }, requestId);\n\t} catch (e) {\n\t\treturn errorResponse(500, \"secret_notice_dismiss_failed\", e instanceof Error ? e.message : String(e), {}, requestId);\n\t}\n};\n//#endregion\nexport { DELETE, GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;AACA,IAAI,MAAM,GAAG,YAAY,CAAC,eAAe,CAAC;AAC1C;AACA;AACA;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,KAAK,GAAG,QAAQ,EAAE;AACzB,CAAC,IAAI;AACL,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE;AAC3B,GAAG,EAAE,EAAE,IAAI;AACX,GAAG,MAAM,EAAE,qBAAqB,CAAC,KAAK;AACtC,GAAG,EAAE,SAAS,CAAC;AACf,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE;AACb,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,YAAY,KAAK,GAAG,CAAC,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC;AAC9G,CAAC;AACD;AACA;AACG,IAAC,MAAM,GAAG,OAAO,KAAK,KAAK;AAC9B,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;AACL,EAAE,wBAAwB,CAAC,KAAK,CAAC;AACjC,EAAE,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE,EAAE,SAAS,EAAE,CAAC;AAC7D,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,SAAS,CAAC;AACnD,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE;AACb,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,8BAA8B,EAAE,CAAC,YAAY,KAAK,GAAG,CAAC,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC;AACtH,CAAC;AACD;;;;"}
1
+ {"version":3,"file":"_server.ts-Crdovz8j.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/secret-notice/_server.ts.js"],"sourcesContent":["import { At as readSecretStripNotice, hn as createLogger, kt as dismissSecretStripNotice } 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/secret-notice/+server.ts\nvar logger = createLogger(\"secret-notice\");\n/**\n* #502 — one-time notice that secret-looking keys were removed from stack.env.\n* The strip itself is correct per the secret-boundary contract; this surfaces\n* it so the user knows where their value went and how to re-add it.\n*/\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\ttry {\n\t\treturn jsonResponse(200, {\n\t\t\tok: true,\n\t\t\tnotice: readSecretStripNotice(state)\n\t\t}, requestId);\n\t} catch (e) {\n\t\treturn errorResponse(500, \"secret_notice_failed\", e instanceof Error ? e.message : String(e), {}, requestId);\n\t}\n};\n/** Dismiss the one-time notice. */\nvar DELETE = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst state = getState();\n\ttry {\n\t\tdismissSecretStripNotice(state);\n\t\tlogger.info(\"secret-strip notice dismissed\", { requestId });\n\t\treturn jsonResponse(200, { ok: true }, requestId);\n\t} catch (e) {\n\t\treturn errorResponse(500, \"secret_notice_dismiss_failed\", e instanceof Error ? e.message : String(e), {}, requestId);\n\t}\n};\n//#endregion\nexport { DELETE, GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;AACA,IAAI,MAAM,GAAG,YAAY,CAAC,eAAe,CAAC;AAC1C;AACA;AACA;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,KAAK,GAAG,QAAQ,EAAE;AACzB,CAAC,IAAI;AACL,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE;AAC3B,GAAG,EAAE,EAAE,IAAI;AACX,GAAG,MAAM,EAAE,qBAAqB,CAAC,KAAK;AACtC,GAAG,EAAE,SAAS,CAAC;AACf,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE;AACb,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,YAAY,KAAK,GAAG,CAAC,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC;AAC9G,CAAC;AACD;AACA;AACG,IAAC,MAAM,GAAG,OAAO,KAAK,KAAK;AAC9B,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;AACL,EAAE,wBAAwB,CAAC,KAAK,CAAC;AACjC,EAAE,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE,EAAE,SAAS,EAAE,CAAC;AAC7D,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,SAAS,CAAC;AACnD,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE;AACb,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,8BAA8B,EAAE,CAAC,YAAY,KAAK,GAAG,CAAC,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC;AACtH,CAAC;AACD;;;;"}
@@ -1,6 +1,6 @@
1
- import { a9 as getAkmStats } from './src-B3g4Ry1X.js';
2
- import { g as getState } from './state-CL9Kv-vm.js';
3
- import { d as getRequestId, r as requireAdmin, k as jsonResponse, e as errorResponse } from './helpers-uzTc9A0Q.js';
1
+ import { a7 as getAkmStats } from './src-DPd0Zos1.js';
2
+ import { g as getState } from './state-CmEW57i2.js';
3
+ import { d as getRequestId, r as requireAdmin, k as jsonResponse, e as errorResponse } from './helpers-DB3Oat0M.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-BnI8UQUm.js';
25
+ import './endpoints-BJw6odky.js';
26
26
 
27
27
  //#region src/routes/admin/akm/stats/+server.ts
28
28
  var CACHE_TTL_MS = 15e3;
@@ -53,4 +53,4 @@ var GET = async (event) => {
53
53
  };
54
54
 
55
55
  export { GET, _resetStatsCacheForTests };
56
- //# sourceMappingURL=_server.ts-lK-oXISB.js.map
56
+ //# sourceMappingURL=_server.ts-CuYIpIzp.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-lK-oXISB.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/akm/stats/_server.ts.js"],"sourcesContent":["import { n as getAkmStats } 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/akm/stats/+server.ts\nvar CACHE_TTL_MS = 15e3;\nvar cachedStats = null;\nvar cachedAt = 0;\nvar inFlight = null;\nfunction _resetStatsCacheForTests() {\n\tcachedStats = null;\n\tcachedAt = 0;\n\tinFlight = null;\n}\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst denied = requireAdmin(event, requestId);\n\tif (denied) return denied;\n\tif (cachedStats && Date.now() - cachedAt < CACHE_TTL_MS) return jsonResponse(200, cachedStats, requestId);\n\ttry {\n\t\tif (!inFlight) inFlight = getAkmStats(getState()).finally(() => {\n\t\t\tinFlight = null;\n\t\t});\n\t\tconst stats = await inFlight;\n\t\tcachedStats = stats;\n\t\tcachedAt = Date.now();\n\t\treturn jsonResponse(200, stats, requestId);\n\t} catch (error) {\n\t\treturn errorResponse(500, \"akm_stats_failed\", error instanceof Error ? error.message : \"Failed to load AKM stats.\", {}, requestId);\n\t}\n};\n//#endregion\nexport { GET, _resetStatsCacheForTests };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;AACA,IAAI,YAAY,GAAG,IAAI;AACvB,IAAI,WAAW,GAAG,IAAI;AACtB,IAAI,QAAQ,GAAG,CAAC;AAChB,IAAI,QAAQ,GAAG,IAAI;AACnB,SAAS,wBAAwB,GAAG;AACpC,CAAC,WAAW,GAAG,IAAI;AACnB,CAAC,QAAQ,GAAG,CAAC;AACb,CAAC,QAAQ,GAAG,IAAI;AAChB;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AAC9C,CAAC,IAAI,MAAM,EAAE,OAAO,MAAM;AAC1B,CAAC,IAAI,WAAW,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,GAAG,YAAY,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC;AAC1G,CAAC,IAAI;AACL,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM;AAClE,GAAG,QAAQ,GAAG,IAAI;AAClB,EAAE,CAAC,CAAC;AACJ,EAAE,MAAM,KAAK,GAAG,MAAM,QAAQ;AAC9B,EAAE,WAAW,GAAG,KAAK;AACrB,EAAE,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE;AACvB,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE,KAAK,EAAE,SAAS,CAAC;AAC5C,CAAC,CAAC,CAAC,OAAO,KAAK,EAAE;AACjB,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,kBAAkB,EAAE,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,2BAA2B,EAAE,EAAE,EAAE,SAAS,CAAC;AACpI,CAAC;AACD;;;;"}
1
+ {"version":3,"file":"_server.ts-CuYIpIzp.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/akm/stats/_server.ts.js"],"sourcesContent":["import { n as getAkmStats } 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/akm/stats/+server.ts\nvar CACHE_TTL_MS = 15e3;\nvar cachedStats = null;\nvar cachedAt = 0;\nvar inFlight = null;\nfunction _resetStatsCacheForTests() {\n\tcachedStats = null;\n\tcachedAt = 0;\n\tinFlight = null;\n}\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst denied = requireAdmin(event, requestId);\n\tif (denied) return denied;\n\tif (cachedStats && Date.now() - cachedAt < CACHE_TTL_MS) return jsonResponse(200, cachedStats, requestId);\n\ttry {\n\t\tif (!inFlight) inFlight = getAkmStats(getState()).finally(() => {\n\t\t\tinFlight = null;\n\t\t});\n\t\tconst stats = await inFlight;\n\t\tcachedStats = stats;\n\t\tcachedAt = Date.now();\n\t\treturn jsonResponse(200, stats, requestId);\n\t} catch (error) {\n\t\treturn errorResponse(500, \"akm_stats_failed\", error instanceof Error ? error.message : \"Failed to load AKM stats.\", {}, requestId);\n\t}\n};\n//#endregion\nexport { GET, _resetStatsCacheForTests };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;AACA,IAAI,YAAY,GAAG,IAAI;AACvB,IAAI,WAAW,GAAG,IAAI;AACtB,IAAI,QAAQ,GAAG,CAAC;AAChB,IAAI,QAAQ,GAAG,IAAI;AACnB,SAAS,wBAAwB,GAAG;AACpC,CAAC,WAAW,GAAG,IAAI;AACnB,CAAC,QAAQ,GAAG,CAAC;AACb,CAAC,QAAQ,GAAG,IAAI;AAChB;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,MAAM,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AAC9C,CAAC,IAAI,MAAM,EAAE,OAAO,MAAM;AAC1B,CAAC,IAAI,WAAW,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,QAAQ,GAAG,YAAY,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE,WAAW,EAAE,SAAS,CAAC;AAC1G,CAAC,IAAI;AACL,EAAE,IAAI,CAAC,QAAQ,EAAE,QAAQ,GAAG,WAAW,CAAC,QAAQ,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM;AAClE,GAAG,QAAQ,GAAG,IAAI;AAClB,EAAE,CAAC,CAAC;AACJ,EAAE,MAAM,KAAK,GAAG,MAAM,QAAQ;AAC9B,EAAE,WAAW,GAAG,KAAK;AACrB,EAAE,QAAQ,GAAG,IAAI,CAAC,GAAG,EAAE;AACvB,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE,KAAK,EAAE,SAAS,CAAC;AAC5C,CAAC,CAAC,CAAC,OAAO,KAAK,EAAE;AACjB,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,kBAAkB,EAAE,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,2BAA2B,EAAE,EAAE,EAAE,SAAS,CAAC;AACpI,CAAC;AACD;;;;"}
@@ -1,8 +1,8 @@
1
- import { aI as readStackEnv } from './src-B3g4Ry1X.js';
2
- import { g as getState } from './state-CL9Kv-vm.js';
3
- import { d as getRequestId, r as requireAdmin, e as errorResponse } from './helpers-uzTc9A0Q.js';
4
- import { o as opencodeFetch } from './http-DWCniA5n.js';
5
- import { g as getCurrentConfig } from './config-WS3yDsjb.js';
1
+ import { aB as readStackEnv } from './src-DPd0Zos1.js';
2
+ import { g as getState } from './state-CmEW57i2.js';
3
+ import { d as getRequestId, r as requireAdmin, e as errorResponse } from './helpers-DB3Oat0M.js';
4
+ import { o as opencodeFetch } from './http-C4WWfxK-.js';
5
+ import { g as getCurrentConfig } from './config-BXCHMmv_.js';
6
6
  import { existsSync, readFileSync } from 'node:fs';
7
7
  import { join } from 'node:path';
8
8
  import './chunk-CLZ62Ad-.js';
@@ -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-BnI8UQUm.js';
27
+ import './endpoints-BJw6odky.js';
28
28
  import './coercion-TNFJisCC.js';
29
29
 
30
30
  //#region src/lib/server/speech-prep.ts
@@ -205,4 +205,4 @@ var POST = async (event) => {
205
205
  };
206
206
 
207
207
  export { POST };
208
- //# sourceMappingURL=_server.ts-CRVqyjYH.js.map
208
+ //# sourceMappingURL=_server.ts-CwgY6ghJ.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-CRVqyjYH.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/speak/_server.ts.js"],"sourcesContent":["import { Gt as readStackEnv } from \"../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../chunks/state.js\";\nimport { d as requireAdmin, i as errorResponse, o as getRequestId } from \"../../../../chunks/helpers.js\";\nimport { t as opencodeFetch } from \"../../../../chunks/http.js\";\nimport { t as getCurrentConfig } from \"../../../../chunks/config.js\";\nimport { existsSync, readFileSync } from \"node:fs\";\nimport { join } from \"node:path\";\n//#region src/lib/server/speech-prep.ts\nfunction personaPath() {\n\treturn join(getState().configDir, \"assistant\", \"persona.md\");\n}\nfunction readPersona() {\n\tconst path = personaPath();\n\tif (!existsSync(path)) return \"\";\n\ttry {\n\t\treturn readFileSync(path, \"utf-8\").trim();\n\t} catch {\n\t\treturn \"\";\n\t}\n}\nfunction extractText(response) {\n\treturn (response.parts ?? []).filter((part) => part.type === \"text\" && typeof part.text === \"string\").map((part) => part.text?.trim() ?? \"\").join(\" \").trim();\n}\nfunction buildPrompt(input) {\n\tconst personaBlock = input.persona ? input.persona : \"No persona markdown is configured. Use a neutral, helpful, conversational tone.\";\n\tif (input.mode === \"chat_ack\") return [\n\t\t\"You are preparing a short spoken acknowledgement for text-to-speech.\",\n\t\t\"Return only the exact words to speak.\",\n\t\t\"Keep it to one brief sentence.\",\n\t\t\"Sound conversational and aligned with the persona context.\",\n\t\t\"Do not use markdown, lists, or quotes.\",\n\t\t\"Do not answer the full request. Just acknowledge that you are working on it.\",\n\t\t\"\",\n\t\t\"Persona markdown:\",\n\t\tpersonaBlock,\n\t\t\"\",\n\t\t\"User request:\",\n\t\tinput.userText\n\t].join(\"\\n\");\n\treturn [\n\t\t\"You are preparing a spoken summary for text-to-speech.\",\n\t\t\"Return only the exact words to speak.\",\n\t\t\"Rewrite the final assistant reply into a concise, natural, conversational response.\",\n\t\t\"Preserve the meaning and important caveats.\",\n\t\t\"Keep it brief enough for audio playback.\",\n\t\t\"Do not use markdown, lists, or quotes.\",\n\t\t\"\",\n\t\t\"Persona markdown:\",\n\t\tpersonaBlock,\n\t\t\"\",\n\t\t\"User request:\",\n\t\tinput.userText,\n\t\t\"\",\n\t\t\"Final assistant reply:\",\n\t\tinput.assistantText ?? \"\"\n\t].join(\"\\n\");\n}\nfunction resolveSpeechModel(config) {\n\tconst small = typeof config.small_model === \"string\" ? config.small_model.trim() : \"\";\n\tif (small) return small;\n\treturn (typeof config.model === \"string\" ? config.model.trim() : \"\") || null;\n}\nasync function loadSpeechConfig() {\n\ttry {\n\t\treturn await opencodeFetch(\"/config\");\n\t} catch {\n\t\treturn getCurrentConfig();\n\t}\n}\nasync function prepareSpeechText(input) {\n\tconst userText = input.userText.trim();\n\tif (!userText) return null;\n\tif (input.mode === \"chat_reply\" && !input.assistantText?.trim()) return null;\n\tconst persona = readPersona();\n\tconst model = resolveSpeechModel(await loadSpeechConfig());\n\tconst prompt = buildPrompt({\n\t\tmode: input.mode,\n\t\tuserText,\n\t\tassistantText: input.assistantText?.trim(),\n\t\tpersona\n\t});\n\tlet sessionId = \"\";\n\ttry {\n\t\tconst created = await opencodeFetch(\"/session\", {\n\t\t\tmethod: \"POST\",\n\t\t\tbody: JSON.stringify({})\n\t\t});\n\t\tsessionId = typeof created.id === \"string\" ? created.id : \"\";\n\t\tif (!sessionId) return null;\n\t\treturn extractText(await opencodeFetch(`/session/${encodeURIComponent(sessionId)}/message`, {\n\t\t\tmethod: \"POST\",\n\t\t\tbody: JSON.stringify({\n\t\t\t\tparts: [{\n\t\t\t\t\ttype: \"text\",\n\t\t\t\t\ttext: prompt\n\t\t\t\t}],\n\t\t\t\t...model ? { model } : {}\n\t\t\t})\n\t\t})) || null;\n\t} finally {\n\t\tif (sessionId) await opencodeFetch(`/session/${encodeURIComponent(sessionId)}`, { method: \"DELETE\" }).catch(() => {});\n\t}\n}\n//#endregion\n//#region src/routes/api/speak/+server.ts\nvar DEFAULT_MODEL = \"kokoro\";\nvar DEFAULT_VOICE = \"bf_isabella\";\nvar DEFAULT_FORMAT = \"wav\";\nvar UPSTREAM_TIMEOUT_MS = 6e4;\nfunction redactKey(s) {\n\treturn s.replace(/(sk-[A-Za-z0-9_-]{4,})/g, \"sk-***\").replace(/(Bearer\\s+)[A-Za-z0-9._-]+/gi, \"$1***\");\n}\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst stackEnv = readStackEnv(getState().stackDir);\n\tconst ttsBaseURL = (stackEnv.OP_TTS_BASE_URL || process.env.OP_TTS_BASE_URL || \"\").trim();\n\tconst ttsModel = (stackEnv.OP_TTS_MODEL || process.env.OP_TTS_MODEL || \"\").trim() || DEFAULT_MODEL;\n\tconst ttsVoice = (stackEnv.OP_TTS_VOICE || process.env.OP_TTS_VOICE || \"\").trim() || DEFAULT_VOICE;\n\tconst ttsApiKey = (process.env.OP_TTS_API_KEY ?? \"\").trim();\n\tif (!ttsBaseURL) return errorResponse(503, \"tts_not_configured\", \"Configure a TTS engine in Admin → Voice settings.\", {}, requestId);\n\tlet body;\n\ttry {\n\t\tbody = await event.request.json();\n\t} catch {\n\t\treturn errorResponse(400, \"bad_request\", \"Invalid JSON body\", {}, requestId);\n\t}\n\tconst b = body ?? {};\n\tconst text = typeof b.text === \"string\" ? b.text.trim() : \"\";\n\tif (!text) return errorResponse(400, \"bad_request\", \"\\\"text\\\" is required\", {}, requestId);\n\tconst mode = b.mode === \"chat_ack\" || b.mode === \"chat_reply\" ? b.mode : null;\n\tconst userText = typeof b.userText === \"string\" ? b.userText.trim() : \"\";\n\tconst assistantText = typeof b.assistantText === \"string\" ? b.assistantText.trim() : \"\";\n\tconst voice = typeof b.voice === \"string\" && b.voice.trim() ? b.voice.trim() : ttsVoice;\n\tconst format = typeof b.format === \"string\" && b.format.trim() ? b.format.trim() : DEFAULT_FORMAT;\n\tlet speechText = text;\n\tif (mode) try {\n\t\tconst prepared = await prepareSpeechText({\n\t\t\tmode,\n\t\t\tuserText,\n\t\t\tassistantText\n\t\t});\n\t\tif (prepared) speechText = prepared;\n\t} catch (err) {\n\t\tconsole.warn(\"[api/speak] speech prep failed; falling back to raw text\", err);\n\t}\n\tconst upstreamUrl = ttsBaseURL.replace(/\\/+$/, \"\") + \"/v1/audio/speech\";\n\tconst headers = { \"content-type\": \"application/json\" };\n\tif (ttsApiKey) headers[\"authorization\"] = `Bearer ${ttsApiKey}`;\n\tlet upstream;\n\ttry {\n\t\tupstream = await fetch(upstreamUrl, {\n\t\t\tmethod: \"POST\",\n\t\t\theaders,\n\t\t\tbody: JSON.stringify({\n\t\t\t\tmodel: ttsModel,\n\t\t\t\tvoice,\n\t\t\t\tinput: speechText,\n\t\t\t\tresponse_format: format\n\t\t\t}),\n\t\t\tsignal: AbortSignal.timeout(UPSTREAM_TIMEOUT_MS)\n\t\t});\n\t} catch (err) {\n\t\treturn errorResponse(502, \"upstream_error\", `Could not reach TTS endpoint: ${redactKey(err instanceof Error ? err.message : String(err))}`, { upstream: upstreamUrl }, requestId);\n\t}\n\tif (!upstream.ok) {\n\t\tconst body = await upstream.text().catch(() => \"\");\n\t\treturn errorResponse(502, \"upstream_error\", `TTS endpoint returned ${upstream.status}`, {\n\t\t\tupstreamStatus: upstream.status,\n\t\t\tbody: redactKey(body).slice(0, 500)\n\t\t}, requestId);\n\t}\n\tconst responseHeaders = new Headers();\n\tresponseHeaders.set(\"content-type\", upstream.headers.get(\"content-type\") ?? \"audio/wav\");\n\tconst contentLength = upstream.headers.get(\"content-length\");\n\tif (contentLength) responseHeaders.set(\"content-length\", contentLength);\n\tresponseHeaders.set(\"x-request-id\", requestId);\n\treturn new Response(upstream.body, {\n\t\tstatus: 200,\n\t\theaders: responseHeaders\n\t});\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_server.ts-CwgY6ghJ.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/speak/_server.ts.js"],"sourcesContent":["import { zt as readStackEnv } from \"../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../chunks/state.js\";\nimport { d as requireAdmin, i as errorResponse, o as getRequestId } from \"../../../../chunks/helpers.js\";\nimport { t as opencodeFetch } from \"../../../../chunks/http.js\";\nimport { t as getCurrentConfig } from \"../../../../chunks/config.js\";\nimport { existsSync, readFileSync } from \"node:fs\";\nimport { join } from \"node:path\";\n//#region src/lib/server/speech-prep.ts\nfunction personaPath() {\n\treturn join(getState().configDir, \"assistant\", \"persona.md\");\n}\nfunction readPersona() {\n\tconst path = personaPath();\n\tif (!existsSync(path)) return \"\";\n\ttry {\n\t\treturn readFileSync(path, \"utf-8\").trim();\n\t} catch {\n\t\treturn \"\";\n\t}\n}\nfunction extractText(response) {\n\treturn (response.parts ?? []).filter((part) => part.type === \"text\" && typeof part.text === \"string\").map((part) => part.text?.trim() ?? \"\").join(\" \").trim();\n}\nfunction buildPrompt(input) {\n\tconst personaBlock = input.persona ? input.persona : \"No persona markdown is configured. Use a neutral, helpful, conversational tone.\";\n\tif (input.mode === \"chat_ack\") return [\n\t\t\"You are preparing a short spoken acknowledgement for text-to-speech.\",\n\t\t\"Return only the exact words to speak.\",\n\t\t\"Keep it to one brief sentence.\",\n\t\t\"Sound conversational and aligned with the persona context.\",\n\t\t\"Do not use markdown, lists, or quotes.\",\n\t\t\"Do not answer the full request. Just acknowledge that you are working on it.\",\n\t\t\"\",\n\t\t\"Persona markdown:\",\n\t\tpersonaBlock,\n\t\t\"\",\n\t\t\"User request:\",\n\t\tinput.userText\n\t].join(\"\\n\");\n\treturn [\n\t\t\"You are preparing a spoken summary for text-to-speech.\",\n\t\t\"Return only the exact words to speak.\",\n\t\t\"Rewrite the final assistant reply into a concise, natural, conversational response.\",\n\t\t\"Preserve the meaning and important caveats.\",\n\t\t\"Keep it brief enough for audio playback.\",\n\t\t\"Do not use markdown, lists, or quotes.\",\n\t\t\"\",\n\t\t\"Persona markdown:\",\n\t\tpersonaBlock,\n\t\t\"\",\n\t\t\"User request:\",\n\t\tinput.userText,\n\t\t\"\",\n\t\t\"Final assistant reply:\",\n\t\tinput.assistantText ?? \"\"\n\t].join(\"\\n\");\n}\nfunction resolveSpeechModel(config) {\n\tconst small = typeof config.small_model === \"string\" ? config.small_model.trim() : \"\";\n\tif (small) return small;\n\treturn (typeof config.model === \"string\" ? config.model.trim() : \"\") || null;\n}\nasync function loadSpeechConfig() {\n\ttry {\n\t\treturn await opencodeFetch(\"/config\");\n\t} catch {\n\t\treturn getCurrentConfig();\n\t}\n}\nasync function prepareSpeechText(input) {\n\tconst userText = input.userText.trim();\n\tif (!userText) return null;\n\tif (input.mode === \"chat_reply\" && !input.assistantText?.trim()) return null;\n\tconst persona = readPersona();\n\tconst model = resolveSpeechModel(await loadSpeechConfig());\n\tconst prompt = buildPrompt({\n\t\tmode: input.mode,\n\t\tuserText,\n\t\tassistantText: input.assistantText?.trim(),\n\t\tpersona\n\t});\n\tlet sessionId = \"\";\n\ttry {\n\t\tconst created = await opencodeFetch(\"/session\", {\n\t\t\tmethod: \"POST\",\n\t\t\tbody: JSON.stringify({})\n\t\t});\n\t\tsessionId = typeof created.id === \"string\" ? created.id : \"\";\n\t\tif (!sessionId) return null;\n\t\treturn extractText(await opencodeFetch(`/session/${encodeURIComponent(sessionId)}/message`, {\n\t\t\tmethod: \"POST\",\n\t\t\tbody: JSON.stringify({\n\t\t\t\tparts: [{\n\t\t\t\t\ttype: \"text\",\n\t\t\t\t\ttext: prompt\n\t\t\t\t}],\n\t\t\t\t...model ? { model } : {}\n\t\t\t})\n\t\t})) || null;\n\t} finally {\n\t\tif (sessionId) await opencodeFetch(`/session/${encodeURIComponent(sessionId)}`, { method: \"DELETE\" }).catch(() => {});\n\t}\n}\n//#endregion\n//#region src/routes/api/speak/+server.ts\nvar DEFAULT_MODEL = \"kokoro\";\nvar DEFAULT_VOICE = \"bf_isabella\";\nvar DEFAULT_FORMAT = \"wav\";\nvar UPSTREAM_TIMEOUT_MS = 6e4;\nfunction redactKey(s) {\n\treturn s.replace(/(sk-[A-Za-z0-9_-]{4,})/g, \"sk-***\").replace(/(Bearer\\s+)[A-Za-z0-9._-]+/gi, \"$1***\");\n}\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst stackEnv = readStackEnv(getState().stackDir);\n\tconst ttsBaseURL = (stackEnv.OP_TTS_BASE_URL || process.env.OP_TTS_BASE_URL || \"\").trim();\n\tconst ttsModel = (stackEnv.OP_TTS_MODEL || process.env.OP_TTS_MODEL || \"\").trim() || DEFAULT_MODEL;\n\tconst ttsVoice = (stackEnv.OP_TTS_VOICE || process.env.OP_TTS_VOICE || \"\").trim() || DEFAULT_VOICE;\n\tconst ttsApiKey = (process.env.OP_TTS_API_KEY ?? \"\").trim();\n\tif (!ttsBaseURL) return errorResponse(503, \"tts_not_configured\", \"Configure a TTS engine in Admin → Voice settings.\", {}, requestId);\n\tlet body;\n\ttry {\n\t\tbody = await event.request.json();\n\t} catch {\n\t\treturn errorResponse(400, \"bad_request\", \"Invalid JSON body\", {}, requestId);\n\t}\n\tconst b = body ?? {};\n\tconst text = typeof b.text === \"string\" ? b.text.trim() : \"\";\n\tif (!text) return errorResponse(400, \"bad_request\", \"\\\"text\\\" is required\", {}, requestId);\n\tconst mode = b.mode === \"chat_ack\" || b.mode === \"chat_reply\" ? b.mode : null;\n\tconst userText = typeof b.userText === \"string\" ? b.userText.trim() : \"\";\n\tconst assistantText = typeof b.assistantText === \"string\" ? b.assistantText.trim() : \"\";\n\tconst voice = typeof b.voice === \"string\" && b.voice.trim() ? b.voice.trim() : ttsVoice;\n\tconst format = typeof b.format === \"string\" && b.format.trim() ? b.format.trim() : DEFAULT_FORMAT;\n\tlet speechText = text;\n\tif (mode) try {\n\t\tconst prepared = await prepareSpeechText({\n\t\t\tmode,\n\t\t\tuserText,\n\t\t\tassistantText\n\t\t});\n\t\tif (prepared) speechText = prepared;\n\t} catch (err) {\n\t\tconsole.warn(\"[api/speak] speech prep failed; falling back to raw text\", err);\n\t}\n\tconst upstreamUrl = ttsBaseURL.replace(/\\/+$/, \"\") + \"/v1/audio/speech\";\n\tconst headers = { \"content-type\": \"application/json\" };\n\tif (ttsApiKey) headers[\"authorization\"] = `Bearer ${ttsApiKey}`;\n\tlet upstream;\n\ttry {\n\t\tupstream = await fetch(upstreamUrl, {\n\t\t\tmethod: \"POST\",\n\t\t\theaders,\n\t\t\tbody: JSON.stringify({\n\t\t\t\tmodel: ttsModel,\n\t\t\t\tvoice,\n\t\t\t\tinput: speechText,\n\t\t\t\tresponse_format: format\n\t\t\t}),\n\t\t\tsignal: AbortSignal.timeout(UPSTREAM_TIMEOUT_MS)\n\t\t});\n\t} catch (err) {\n\t\treturn errorResponse(502, \"upstream_error\", `Could not reach TTS endpoint: ${redactKey(err instanceof Error ? err.message : String(err))}`, { upstream: upstreamUrl }, requestId);\n\t}\n\tif (!upstream.ok) {\n\t\tconst body = await upstream.text().catch(() => \"\");\n\t\treturn errorResponse(502, \"upstream_error\", `TTS endpoint returned ${upstream.status}`, {\n\t\t\tupstreamStatus: upstream.status,\n\t\t\tbody: redactKey(body).slice(0, 500)\n\t\t}, requestId);\n\t}\n\tconst responseHeaders = new Headers();\n\tresponseHeaders.set(\"content-type\", upstream.headers.get(\"content-type\") ?? \"audio/wav\");\n\tconst contentLength = upstream.headers.get(\"content-length\");\n\tif (contentLength) responseHeaders.set(\"content-length\", contentLength);\n\tresponseHeaders.set(\"x-request-id\", requestId);\n\treturn new Response(upstream.body, {\n\t\tstatus: 200,\n\t\theaders: responseHeaders\n\t});\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
- import { H as createLogger, Y as ensureHomeDirs, _ as ensureOpenCodeConfig, $ as ensureOpenCodeSystemConfig, g as applyUpdate, p as checkDocker, o as buildManagedServices, n as buildComposeOptions, x as composePull, G as composeUp, ax as parseComposeStderr, b4 as summarizeComposeStderr } from './src-B3g4Ry1X.js';
2
- import { g as getState } from './state-CL9Kv-vm.js';
3
- import { d as getRequestId, r as requireAdmin, k as jsonResponse, e as errorResponse } from './helpers-uzTc9A0Q.js';
1
+ import { F as createLogger, W as ensureHomeDirs, Y as ensureOpenCodeConfig, Z as ensureOpenCodeSystemConfig, f as applyUpdate, o as checkDocker, n as buildManagedServices, m as buildComposeOptions, w as composePull, E as composeUp, ar as parseComposeStderr, aV as summarizeComposeStderr } from './src-DPd0Zos1.js';
2
+ import { g as getState } from './state-CmEW57i2.js';
3
+ import { d as getRequestId, r as requireAdmin, k as jsonResponse, e as errorResponse } from './helpers-DB3Oat0M.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-BnI8UQUm.js';
26
+ import './endpoints-BJw6odky.js';
27
27
 
28
28
  //#region src/routes/admin/update/+server.ts
29
29
  var logger = createLogger("update");
@@ -110,4 +110,4 @@ var POST = async (event) => {
110
110
  };
111
111
 
112
112
  export { POST };
113
- //# sourceMappingURL=_server.ts-C7Scn_Ur.js.map
113
+ //# sourceMappingURL=_server.ts-CxxrQ9Wz.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts-CxxrQ9Wz.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/update/_server.ts.js"],"sourcesContent":["import { B as applyUpdate, F as parseComposeStderr, I as summarizeComposeStderr, It as ensureOpenCodeConfig, L as buildComposeOptions, Qt as ensureHomeDirs, V as buildManagedServices, X as checkDocker, Zt as ensureOpenCodeSystemConfig, hn as createLogger, nt as composePull, st as composeUp } 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\tconst state = getState();\n\t\t\tensureHomeDirs();\n\t\t\tensureOpenCodeConfig();\n\t\t\tensureOpenCodeSystemConfig();\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\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) logger.warn(\"update: image pull failed — recreating from local images\", {\n\t\t\t\t\trequestId,\n\t\t\t\t\tstderr: pullResult.stderr?.slice(0, 300)\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...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 { aI as readStackEnv, az as patchSecretsEnvFile, b8 as writeFileAtomic } from './src-B3g4Ry1X.js';
2
- import { g as getState } from './state-CL9Kv-vm.js';
3
- import { d as getRequestId, r as requireAdmin, k as jsonResponse, w as withAdminBody, e as errorResponse } from './helpers-uzTc9A0Q.js';
1
+ import { aB as readStackEnv, as as patchSecretsEnvFile, aZ as writeFileAtomic } from './src-DPd0Zos1.js';
2
+ import { g as getState } from './state-CmEW57i2.js';
3
+ import { d as getRequestId, r as requireAdmin, k as jsonResponse, w as withAdminBody, e as errorResponse } from './helpers-DB3Oat0M.js';
4
4
  import { existsSync, readFileSync, mkdirSync } from 'node:fs';
5
5
  import { join } from 'node:path';
6
6
  import './chunk-CLZ62Ad-.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-BnI8UQUm.js';
25
+ import './endpoints-BJw6odky.js';
26
26
 
27
27
  //#region src/routes/admin/assistant/+server.ts
28
28
  var DEFAULT_PROJECT_NAME = "openpalm";
@@ -86,4 +86,4 @@ var PUT = async (event) => withAdminBody(event, async ({ requestId, body }) => {
86
86
  });
87
87
 
88
88
  export { GET, PUT };
89
- //# sourceMappingURL=_server.ts-C9-ewPaY.js.map
89
+ //# sourceMappingURL=_server.ts-D6BJWhEf.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts-D6BJWhEf.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/assistant/_server.ts.js"],"sourcesContent":["import { G as writeFileAtomic, Rt as patchSecretsEnvFile, zt as readStackEnv } 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, p as withAdminBody } from \"../../../../chunks/helpers.js\";\nimport { existsSync, mkdirSync, readFileSync } from \"node:fs\";\nimport { join } from \"node:path\";\n//#region src/routes/admin/assistant/+server.ts\nvar DEFAULT_PROJECT_NAME = \"openpalm\";\nvar DEFAULT_ASSISTANT_BIND_ADDRESS = \"127.0.0.1\";\nvar LAN_ASSISTANT_BIND_ADDRESS = \"0.0.0.0\";\nvar PROJECT_NAME_RE = /^[a-z0-9][a-z0-9_-]*$/;\nfunction personaPath(configDir) {\n\treturn join(configDir, \"assistant\", \"persona.md\");\n}\nfunction readPersona(configDir) {\n\tconst path = personaPath(configDir);\n\tif (!existsSync(path)) return \"\";\n\ttry {\n\t\treturn readFileSync(path, \"utf-8\");\n\t} catch {\n\t\treturn \"\";\n\t}\n}\nfunction normalizeProjectName(raw) {\n\tif (typeof raw !== \"string\") return null;\n\tconst value = raw.trim() || DEFAULT_PROJECT_NAME;\n\tif (value.length > 63) return null;\n\treturn PROJECT_NAME_RE.test(value) ? value : null;\n}\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst denied = requireAdmin(event, requestId);\n\tif (denied) return denied;\n\tconst state = getState();\n\tconst env = readStackEnv(state.stackDir);\n\treturn jsonResponse(200, {\n\t\tprojectName: env.OP_PROJECT_NAME?.trim() || DEFAULT_PROJECT_NAME,\n\t\tlanExposureEnabled: (env.OP_ASSISTANT_BIND_ADDRESS?.trim() || DEFAULT_ASSISTANT_BIND_ADDRESS) === LAN_ASSISTANT_BIND_ADDRESS,\n\t\tstackEnvPath: \"knowledge/env/stack.env\",\n\t\tpersonaPath: \"config/assistant/persona.md\",\n\t\tpersonaContent: readPersona(state.configDir)\n\t}, requestId);\n};\nvar PUT = async (event) => withAdminBody(event, async ({ requestId, body }) => {\n\tconst projectName = normalizeProjectName(body.projectName);\n\tif (!projectName) return errorResponse(400, \"bad_request\", \"projectName must be 1-63 chars of lowercase letters, numbers, dashes, or underscores.\", {}, requestId);\n\tif (typeof body.personaContent !== \"string\") return errorResponse(400, \"bad_request\", \"personaContent must be a string\", {}, requestId);\n\tif (typeof body.lanExposureEnabled !== \"boolean\") return errorResponse(400, \"bad_request\", \"lanExposureEnabled must be a boolean\", {}, requestId);\n\tconst state = getState();\n\tpatchSecretsEnvFile(state.stackDir, {\n\t\tOP_PROJECT_NAME: projectName,\n\t\tOP_ASSISTANT_BIND_ADDRESS: body.lanExposureEnabled ? LAN_ASSISTANT_BIND_ADDRESS : DEFAULT_ASSISTANT_BIND_ADDRESS\n\t});\n\tconst path = personaPath(state.configDir);\n\tmkdirSync(join(state.configDir, \"assistant\"), { recursive: true });\n\tconst personaContent = body.personaContent.endsWith(\"\\n\") ? body.personaContent : `${body.personaContent}\\n`;\n\twriteFileAtomic(path, personaContent, 420);\n\treturn jsonResponse(200, {\n\t\tok: true,\n\t\tprojectName,\n\t\tlanExposureEnabled: body.lanExposureEnabled,\n\t\tstackEnvPath: \"knowledge/env/stack.env\",\n\t\tpersonaPath: \"config/assistant/persona.md\",\n\t\tpersonaContent\n\t}, requestId);\n});\n//#endregion\nexport { GET, PUT };\n"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { j as json } from './exports-D1quPX8S.js';
2
- import { a3 as fetchProviderModels, aZ as resolveStackDir } from './src-B3g4Ry1X.js';
2
+ import { a1 as fetchProviderModels, aO as resolveStackDir } from './src-DPd0Zos1.js';
3
3
  import './utils-BSRjJDrZ.js';
4
4
  import './chunk-CLZ62Ad-.js';
5
5
  import 'node:module';
@@ -58,4 +58,4 @@ var POST = async ({ params, request }) => {
58
58
  };
59
59
 
60
60
  export { POST };
61
- //# sourceMappingURL=_server.ts-CosKSZGO.js.map
61
+ //# sourceMappingURL=_server.ts-D6Y4c9rj.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-CosKSZGO.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/setup/models/_provider_/_server.ts.js"],"sourcesContent":["import { r as json } from \"../../../../../../chunks/exports.js\";\nimport { k as fetchProviderModels, on as resolveStackDir } from \"../../../../../../chunks/src.js\";\n//#region src/routes/api/setup/models/[provider]/+server.ts\nvar POST = async ({ params, request }) => {\n\tconst provider = decodeURIComponent(params.provider);\n\tlet body = {};\n\ttry {\n\t\tbody = await request.json();\n\t} catch {\n\t\treturn json({\n\t\t\tok: false,\n\t\t\terror: \"invalid_json\",\n\t\t\tmessage: \"Request body must be valid JSON\"\n\t\t}, { status: 400 });\n\t}\n\tconst apiKey = typeof body.apiKey === \"string\" ? body.apiKey : \"\";\n\tconst baseUrl = typeof body.baseUrl === \"string\" ? body.baseUrl : \"\";\n\ttry {\n\t\tconst result = await fetchProviderModels(provider, apiKey, baseUrl, resolveStackDir());\n\t\tif (result.status !== \"ok\") return json({\n\t\t\tok: false,\n\t\t\t...result\n\t\t}, { status: 502 });\n\t\treturn json({\n\t\t\tok: true,\n\t\t\t...result\n\t\t});\n\t} catch (err) {\n\t\treturn json({\n\t\t\tok: false,\n\t\t\terror: \"model_fetch_failed\",\n\t\t\tmessage: String(err)\n\t\t}, { status: 500 });\n\t}\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AACG,IAAC,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK;AAC1C,CAAC,MAAM,QAAQ,GAAG,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC;AACrD,CAAC,IAAI,IAAI,GAAG,EAAE;AACd,CAAC,IAAI;AACL,EAAE,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE;AAC7B,CAAC,CAAC,CAAC,MAAM;AACT,EAAE,OAAO,IAAI,CAAC;AACd,GAAG,EAAE,EAAE,KAAK;AACZ,GAAG,KAAK,EAAE,cAAc;AACxB,GAAG,OAAO,EAAE;AACZ,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACrB,CAAC;AACD,CAAC,MAAM,MAAM,GAAG,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,GAAG,IAAI,CAAC,MAAM,GAAG,EAAE;AAClE,CAAC,MAAM,OAAO,GAAG,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,GAAG,IAAI,CAAC,OAAO,GAAG,EAAE;AACrE,CAAC,IAAI;AACL,EAAE,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC;AACxF,EAAE,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,EAAE,OAAO,IAAI,CAAC;AAC1C,GAAG,EAAE,EAAE,KAAK;AACZ,GAAG,GAAG;AACN,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACrB,EAAE,OAAO,IAAI,CAAC;AACd,GAAG,EAAE,EAAE,IAAI;AACX,GAAG,GAAG;AACN,GAAG,CAAC;AACJ,CAAC,CAAC,CAAC,OAAO,GAAG,EAAE;AACf,EAAE,OAAO,IAAI,CAAC;AACd,GAAG,EAAE,EAAE,KAAK;AACZ,GAAG,KAAK,EAAE,oBAAoB;AAC9B,GAAG,OAAO,EAAE,MAAM,CAAC,GAAG;AACtB,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACrB,CAAC;AACD;;;;"}
1
+ {"version":3,"file":"_server.ts-D6Y4c9rj.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/setup/models/_provider_/_server.ts.js"],"sourcesContent":["import { r as json } from \"../../../../../../chunks/exports.js\";\nimport { D as fetchProviderModels, en as resolveStackDir } from \"../../../../../../chunks/src.js\";\n//#region src/routes/api/setup/models/[provider]/+server.ts\nvar POST = async ({ params, request }) => {\n\tconst provider = decodeURIComponent(params.provider);\n\tlet body = {};\n\ttry {\n\t\tbody = await request.json();\n\t} catch {\n\t\treturn json({\n\t\t\tok: false,\n\t\t\terror: \"invalid_json\",\n\t\t\tmessage: \"Request body must be valid JSON\"\n\t\t}, { status: 400 });\n\t}\n\tconst apiKey = typeof body.apiKey === \"string\" ? body.apiKey : \"\";\n\tconst baseUrl = typeof body.baseUrl === \"string\" ? body.baseUrl : \"\";\n\ttry {\n\t\tconst result = await fetchProviderModels(provider, apiKey, baseUrl, resolveStackDir());\n\t\tif (result.status !== \"ok\") return json({\n\t\t\tok: false,\n\t\t\t...result\n\t\t}, { status: 502 });\n\t\treturn json({\n\t\t\tok: true,\n\t\t\t...result\n\t\t});\n\t} catch (err) {\n\t\treturn json({\n\t\t\tok: false,\n\t\t\terror: \"model_fetch_failed\",\n\t\t\tmessage: String(err)\n\t\t}, { status: 500 });\n\t}\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AACG,IAAC,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK;AAC1C,CAAC,MAAM,QAAQ,GAAG,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC;AACrD,CAAC,IAAI,IAAI,GAAG,EAAE;AACd,CAAC,IAAI;AACL,EAAE,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE;AAC7B,CAAC,CAAC,CAAC,MAAM;AACT,EAAE,OAAO,IAAI,CAAC;AACd,GAAG,EAAE,EAAE,KAAK;AACZ,GAAG,KAAK,EAAE,cAAc;AACxB,GAAG,OAAO,EAAE;AACZ,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACrB,CAAC;AACD,CAAC,MAAM,MAAM,GAAG,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,GAAG,IAAI,CAAC,MAAM,GAAG,EAAE;AAClE,CAAC,MAAM,OAAO,GAAG,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,GAAG,IAAI,CAAC,OAAO,GAAG,EAAE;AACrE,CAAC,IAAI;AACL,EAAE,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC;AACxF,EAAE,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,EAAE,OAAO,IAAI,CAAC;AAC1C,GAAG,EAAE,EAAE,KAAK;AACZ,GAAG,GAAG;AACN,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACrB,EAAE,OAAO,IAAI,CAAC;AACd,GAAG,EAAE,EAAE,IAAI;AACX,GAAG,GAAG;AACN,GAAG,CAAC;AACJ,CAAC,CAAC,CAAC,OAAO,GAAG,EAAE;AACf,EAAE,OAAO,IAAI,CAAC;AACd,GAAG,EAAE,EAAE,KAAK;AACZ,GAAG,KAAK,EAAE,oBAAoB;AAC9B,GAAG,OAAO,EAAE,MAAM,CAAC,GAAG;AACtB,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACrB,CAAC;AACD;;;;"}
@@ -1,6 +1,6 @@
1
- import { au as loadAutomations } from './src-B3g4Ry1X.js';
2
- import { g as getState } from './state-CL9Kv-vm.js';
3
- import { d as getRequestId, r as requireAdmin, k as jsonResponse } from './helpers-uzTc9A0Q.js';
1
+ import { ao as loadAutomations } from './src-DPd0Zos1.js';
2
+ import { g as getState } from './state-CmEW57i2.js';
3
+ import { d as getRequestId, r as requireAdmin, k as jsonResponse } from './helpers-DB3Oat0M.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-BnI8UQUm.js';
25
+ import './endpoints-BJw6odky.js';
26
26
 
27
27
  //#region src/routes/admin/automations/+server.ts
28
28
  var GET = async (event) => {
@@ -46,4 +46,4 @@ var GET = async (event) => {
46
46
  };
47
47
 
48
48
  export { GET };
49
- //# sourceMappingURL=_server.ts-CU5_9yaM.js.map
49
+ //# sourceMappingURL=_server.ts-D8EweJQC.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-CU5_9yaM.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/automations/_server.ts.js"],"sourcesContent":["import { f as loadAutomations } from \"../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../chunks/state.js\";\nimport { d as requireAdmin, l as jsonResponse, o as getRequestId } from \"../../../../chunks/helpers.js\";\n//#region src/routes/admin/automations/+server.ts\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authErr = requireAdmin(event, requestId);\n\tif (authErr) return authErr;\n\treturn jsonResponse(200, { automations: loadAutomations(getState().stashDir).map((c) => ({\n\t\tname: c.name,\n\t\tdescription: c.description,\n\t\tschedule: c.schedule,\n\t\ttimezone: c.timezone,\n\t\tenabled: c.enabled,\n\t\taction: {\n\t\t\ttype: c.action.type,\n\t\t\tcontent: c.action.content,\n\t\t\tagent: c.action.agent\n\t\t},\n\t\ton_failure: c.on_failure,\n\t\tfileName: c.fileName\n\t})) }, 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,OAAO,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AAC/C,CAAC,IAAI,OAAO,EAAE,OAAO,OAAO;AAC5B,CAAC,OAAO,YAAY,CAAC,GAAG,EAAE,EAAE,WAAW,EAAE,eAAe,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM;AAC1F,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI;AACd,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW;AAC5B,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ;AACtB,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ;AACtB,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO;AACpB,EAAE,MAAM,EAAE;AACV,GAAG,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI;AACtB,GAAG,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO;AAC5B,GAAG,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;AACnB,GAAG;AACH,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU;AAC1B,EAAE,QAAQ,EAAE,CAAC,CAAC;AACd,EAAE,CAAC,CAAC,EAAE,EAAE,SAAS,CAAC;AAClB;;;;"}
1
+ {"version":3,"file":"_server.ts-D8EweJQC.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/automations/_server.ts.js"],"sourcesContent":["import { f as loadAutomations } from \"../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../chunks/state.js\";\nimport { d as requireAdmin, l as jsonResponse, o as getRequestId } from \"../../../../chunks/helpers.js\";\n//#region src/routes/admin/automations/+server.ts\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authErr = requireAdmin(event, requestId);\n\tif (authErr) return authErr;\n\treturn jsonResponse(200, { automations: loadAutomations(getState().stashDir).map((c) => ({\n\t\tname: c.name,\n\t\tdescription: c.description,\n\t\tschedule: c.schedule,\n\t\ttimezone: c.timezone,\n\t\tenabled: c.enabled,\n\t\taction: {\n\t\t\ttype: c.action.type,\n\t\t\tcontent: c.action.content,\n\t\t\tagent: c.action.agent\n\t\t},\n\t\ton_failure: c.on_failure,\n\t\tfileName: c.fileName\n\t})) }, 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,OAAO,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AAC/C,CAAC,IAAI,OAAO,EAAE,OAAO,OAAO;AAC5B,CAAC,OAAO,YAAY,CAAC,GAAG,EAAE,EAAE,WAAW,EAAE,eAAe,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM;AAC1F,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI;AACd,EAAE,WAAW,EAAE,CAAC,CAAC,WAAW;AAC5B,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ;AACtB,EAAE,QAAQ,EAAE,CAAC,CAAC,QAAQ;AACtB,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO;AACpB,EAAE,MAAM,EAAE;AACV,GAAG,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,IAAI;AACtB,GAAG,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO;AAC5B,GAAG,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC;AACnB,GAAG;AACH,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU;AAC1B,EAAE,QAAQ,EAAE,CAAC,CAAC;AACd,EAAE,CAAC,CAAC,EAAE,EAAE,SAAS,CAAC;AAClB;;;;"}
@@ -1,6 +1,6 @@
1
- import { aP as removeTaskFile, aL as readTaskFile, bc as writeTaskFile, i as assertSafeTaskFilename } from './src-B3g4Ry1X.js';
2
- import { g as getState } from './state-CL9Kv-vm.js';
3
- import { d as getRequestId, r as requireAdmin, k as jsonResponse, e as errorResponse, p as parseJsonBody, j as jsonBodyError } from './helpers-uzTc9A0Q.js';
1
+ import { aJ as removeTaskFile, aE as readTaskFile, b1 as writeTaskFile, h as assertSafeTaskFilename } from './src-DPd0Zos1.js';
2
+ import { g as getState } from './state-CmEW57i2.js';
3
+ import { d as getRequestId, r as requireAdmin, k as jsonResponse, e as errorResponse, p as parseJsonBody, j as jsonBodyError } from './helpers-DB3Oat0M.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-BnI8UQUm.js';
25
+ import './endpoints-BJw6odky.js';
26
26
 
27
27
  //#region src/routes/admin/automations/[name]/file/+server.ts
28
28
  function guard(name, requestId) {
@@ -79,4 +79,4 @@ var DELETE = async (event) => {
79
79
  };
80
80
 
81
81
  export { DELETE, GET, PUT };
82
- //# sourceMappingURL=_server.ts-Dq8RxTkW.js.map
82
+ //# sourceMappingURL=_server.ts-D91I-wzU.js.map