@openpalm/ui 0.11.0-rc.10

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 (339) hide show
  1. package/README.md +160 -0
  2. package/build/.openpalm-ui-version +1 -0
  3. package/build/client/_app/immutable/assets/0.p3iHeEvq.css +1 -0
  4. package/build/client/_app/immutable/assets/0.p3iHeEvq.css.br +0 -0
  5. package/build/client/_app/immutable/assets/0.p3iHeEvq.css.gz +0 -0
  6. package/build/client/_app/immutable/assets/4.BakrtzGF.css +1 -0
  7. package/build/client/_app/immutable/assets/4.BakrtzGF.css.br +0 -0
  8. package/build/client/_app/immutable/assets/4.BakrtzGF.css.gz +0 -0
  9. package/build/client/_app/immutable/assets/5.Cj0Mk9Gn.css +1 -0
  10. package/build/client/_app/immutable/assets/5.Cj0Mk9Gn.css.br +0 -0
  11. package/build/client/_app/immutable/assets/5.Cj0Mk9Gn.css.gz +0 -0
  12. package/build/client/_app/immutable/assets/6.B0Z8tVIH.css +1 -0
  13. package/build/client/_app/immutable/assets/6.B0Z8tVIH.css.br +1 -0
  14. package/build/client/_app/immutable/assets/6.B0Z8tVIH.css.gz +0 -0
  15. package/build/client/_app/immutable/assets/7.Cucah5cY.css +1 -0
  16. package/build/client/_app/immutable/assets/7.Cucah5cY.css.br +0 -0
  17. package/build/client/_app/immutable/assets/7.Cucah5cY.css.gz +0 -0
  18. package/build/client/_app/immutable/assets/8.DjrHy5wu.css +1 -0
  19. package/build/client/_app/immutable/assets/8.DjrHy5wu.css.br +0 -0
  20. package/build/client/_app/immutable/assets/8.DjrHy5wu.css.gz +0 -0
  21. package/build/client/_app/immutable/assets/AuthGate.B8fOC_pJ.css +1 -0
  22. package/build/client/_app/immutable/assets/AuthGate.B8fOC_pJ.css.br +0 -0
  23. package/build/client/_app/immutable/assets/AuthGate.B8fOC_pJ.css.gz +0 -0
  24. package/build/client/_app/immutable/assets/ModeSwitch.RmRIDur-.css +1 -0
  25. package/build/client/_app/immutable/assets/ModeSwitch.RmRIDur-.css.br +0 -0
  26. package/build/client/_app/immutable/assets/ModeSwitch.RmRIDur-.css.gz +0 -0
  27. package/build/client/_app/immutable/assets/VoiceProfileSelector.CM_o2XIa.css +1 -0
  28. package/build/client/_app/immutable/assets/VoiceProfileSelector.CM_o2XIa.css.br +0 -0
  29. package/build/client/_app/immutable/assets/VoiceProfileSelector.CM_o2XIa.css.gz +0 -0
  30. package/build/client/_app/immutable/chunks/BDFsK-cU.js +5 -0
  31. package/build/client/_app/immutable/chunks/BDFsK-cU.js.br +0 -0
  32. package/build/client/_app/immutable/chunks/BDFsK-cU.js.gz +0 -0
  33. package/build/client/_app/immutable/chunks/BOq4Y36A.js +1 -0
  34. package/build/client/_app/immutable/chunks/BOq4Y36A.js.br +0 -0
  35. package/build/client/_app/immutable/chunks/BOq4Y36A.js.gz +0 -0
  36. package/build/client/_app/immutable/chunks/Bdvti_5C.js +1 -0
  37. package/build/client/_app/immutable/chunks/Bdvti_5C.js.br +0 -0
  38. package/build/client/_app/immutable/chunks/Bdvti_5C.js.gz +0 -0
  39. package/build/client/_app/immutable/chunks/BuFlayix.js +1 -0
  40. package/build/client/_app/immutable/chunks/BuFlayix.js.br +0 -0
  41. package/build/client/_app/immutable/chunks/BuFlayix.js.gz +0 -0
  42. package/build/client/_app/immutable/chunks/BwTF6U35.js +3 -0
  43. package/build/client/_app/immutable/chunks/BwTF6U35.js.br +0 -0
  44. package/build/client/_app/immutable/chunks/BwTF6U35.js.gz +0 -0
  45. package/build/client/_app/immutable/chunks/CJkMgfFh.js +1 -0
  46. package/build/client/_app/immutable/chunks/CJkMgfFh.js.br +0 -0
  47. package/build/client/_app/immutable/chunks/CJkMgfFh.js.gz +0 -0
  48. package/build/client/_app/immutable/chunks/DQCVeARi.js +1 -0
  49. package/build/client/_app/immutable/chunks/DQCVeARi.js.br +0 -0
  50. package/build/client/_app/immutable/chunks/DQCVeARi.js.gz +0 -0
  51. package/build/client/_app/immutable/chunks/DpdFx-ph.js +1 -0
  52. package/build/client/_app/immutable/chunks/DpdFx-ph.js.br +0 -0
  53. package/build/client/_app/immutable/chunks/DpdFx-ph.js.gz +0 -0
  54. package/build/client/_app/immutable/chunks/kNaey6uv.js +1 -0
  55. package/build/client/_app/immutable/chunks/kNaey6uv.js.br +0 -0
  56. package/build/client/_app/immutable/chunks/kNaey6uv.js.gz +0 -0
  57. package/build/client/_app/immutable/chunks/os2NZ37U.js +1 -0
  58. package/build/client/_app/immutable/chunks/os2NZ37U.js.br +1 -0
  59. package/build/client/_app/immutable/chunks/os2NZ37U.js.gz +0 -0
  60. package/build/client/_app/immutable/chunks/xihTtKlq.js +1 -0
  61. package/build/client/_app/immutable/chunks/xihTtKlq.js.br +1 -0
  62. package/build/client/_app/immutable/chunks/xihTtKlq.js.gz +0 -0
  63. package/build/client/_app/immutable/entry/app.Coaz9qVz.js +2 -0
  64. package/build/client/_app/immutable/entry/app.Coaz9qVz.js.br +0 -0
  65. package/build/client/_app/immutable/entry/app.Coaz9qVz.js.gz +0 -0
  66. package/build/client/_app/immutable/entry/start.CaHQB6hU.js +1 -0
  67. package/build/client/_app/immutable/entry/start.CaHQB6hU.js.br +1 -0
  68. package/build/client/_app/immutable/entry/start.CaHQB6hU.js.gz +0 -0
  69. package/build/client/_app/immutable/nodes/0.BUaVTC13.js +1 -0
  70. package/build/client/_app/immutable/nodes/0.BUaVTC13.js.br +0 -0
  71. package/build/client/_app/immutable/nodes/0.BUaVTC13.js.gz +0 -0
  72. package/build/client/_app/immutable/nodes/1.DpM9NN8J.js +1 -0
  73. package/build/client/_app/immutable/nodes/1.DpM9NN8J.js.br +0 -0
  74. package/build/client/_app/immutable/nodes/1.DpM9NN8J.js.gz +0 -0
  75. package/build/client/_app/immutable/nodes/2.ojh8oE7F.js +1 -0
  76. package/build/client/_app/immutable/nodes/2.ojh8oE7F.js.br +0 -0
  77. package/build/client/_app/immutable/nodes/2.ojh8oE7F.js.gz +0 -0
  78. package/build/client/_app/immutable/nodes/3.DeAC3yVJ.js +1 -0
  79. package/build/client/_app/immutable/nodes/3.DeAC3yVJ.js.br +0 -0
  80. package/build/client/_app/immutable/nodes/3.DeAC3yVJ.js.gz +0 -0
  81. package/build/client/_app/immutable/nodes/4.8L-_wsn9.js +18 -0
  82. package/build/client/_app/immutable/nodes/4.8L-_wsn9.js.br +0 -0
  83. package/build/client/_app/immutable/nodes/4.8L-_wsn9.js.gz +0 -0
  84. package/build/client/_app/immutable/nodes/5.kb9iVd3S.js +4 -0
  85. package/build/client/_app/immutable/nodes/5.kb9iVd3S.js.br +0 -0
  86. package/build/client/_app/immutable/nodes/5.kb9iVd3S.js.gz +0 -0
  87. package/build/client/_app/immutable/nodes/6.DtmDzmki.js +1 -0
  88. package/build/client/_app/immutable/nodes/6.DtmDzmki.js.br +0 -0
  89. package/build/client/_app/immutable/nodes/6.DtmDzmki.js.gz +0 -0
  90. package/build/client/_app/immutable/nodes/7.-Pv5Qce0.js +15 -0
  91. package/build/client/_app/immutable/nodes/7.-Pv5Qce0.js.br +0 -0
  92. package/build/client/_app/immutable/nodes/7.-Pv5Qce0.js.gz +0 -0
  93. package/build/client/_app/immutable/nodes/8.Rc3xcFgu.js +2 -0
  94. package/build/client/_app/immutable/nodes/8.Rc3xcFgu.js.br +0 -0
  95. package/build/client/_app/immutable/nodes/8.Rc3xcFgu.js.gz +0 -0
  96. package/build/client/_app/version.json +1 -0
  97. package/build/client/_app/version.json.br +1 -0
  98. package/build/client/_app/version.json.gz +0 -0
  99. package/build/client/banner.png +0 -0
  100. package/build/client/fu-128.png +0 -0
  101. package/build/client/fu.png +0 -0
  102. package/build/client/logo-128.png +0 -0
  103. package/build/client/logo.png +0 -0
  104. package/build/client/setup/wizard.css +1639 -0
  105. package/build/client/setup/wizard.css.br +0 -0
  106. package/build/client/setup/wizard.css.gz +0 -0
  107. package/build/client/wizard-128.png +0 -0
  108. package/build/client/wizard.png +0 -0
  109. package/build/env.js +94 -0
  110. package/build/handler.js +1494 -0
  111. package/build/index.js +345 -0
  112. package/build/server/chunks/0-TTdZdv8o.js +9 -0
  113. package/build/server/chunks/0-TTdZdv8o.js.map +1 -0
  114. package/build/server/chunks/1-XPMbcj69.js +9 -0
  115. package/build/server/chunks/1-XPMbcj69.js.map +1 -0
  116. package/build/server/chunks/2-C2y4ydWU.js +9 -0
  117. package/build/server/chunks/2-C2y4ydWU.js.map +1 -0
  118. package/build/server/chunks/3-BgeGdVvT.js +23 -0
  119. package/build/server/chunks/3-BgeGdVvT.js.map +1 -0
  120. package/build/server/chunks/4-v8u4eatk.js +9 -0
  121. package/build/server/chunks/4-v8u4eatk.js.map +1 -0
  122. package/build/server/chunks/5-BkUoZ2K4.js +9 -0
  123. package/build/server/chunks/5-BkUoZ2K4.js.map +1 -0
  124. package/build/server/chunks/6-Cep4AGS2.js +9 -0
  125. package/build/server/chunks/6-Cep4AGS2.js.map +1 -0
  126. package/build/server/chunks/7-DOEFGynd.js +9 -0
  127. package/build/server/chunks/7-DOEFGynd.js.map +1 -0
  128. package/build/server/chunks/8-EJHw3wqt.js +9 -0
  129. package/build/server/chunks/8-EJHw3wqt.js.map +1 -0
  130. package/build/server/chunks/AuthGate-UhfWI3rb.js +741 -0
  131. package/build/server/chunks/AuthGate-UhfWI3rb.js.map +1 -0
  132. package/build/server/chunks/ModeSwitch-S3I-WINb.js +15 -0
  133. package/build/server/chunks/ModeSwitch-S3I-WINb.js.map +1 -0
  134. package/build/server/chunks/_helpers-B_lb4-jB.js +74 -0
  135. package/build/server/chunks/_helpers-B_lb4-jB.js.map +1 -0
  136. package/build/server/chunks/_layout.svelte-B93aaRP_.js +11 -0
  137. package/build/server/chunks/_layout.svelte-B93aaRP_.js.map +1 -0
  138. package/build/server/chunks/_layout.svelte-CcloHuB_.js +60 -0
  139. package/build/server/chunks/_layout.svelte-CcloHuB_.js.map +1 -0
  140. package/build/server/chunks/_page.svelte-9RQ3rYiU.js +69 -0
  141. package/build/server/chunks/_page.svelte-9RQ3rYiU.js.map +1 -0
  142. package/build/server/chunks/_page.svelte-BP2EdQl3.js +5 -0
  143. package/build/server/chunks/_page.svelte-BP2EdQl3.js.map +1 -0
  144. package/build/server/chunks/_page.svelte-CKARhLvT.js +408 -0
  145. package/build/server/chunks/_page.svelte-CKARhLvT.js.map +1 -0
  146. package/build/server/chunks/_page.svelte-CnZsPxgJ.js +5540 -0
  147. package/build/server/chunks/_page.svelte-CnZsPxgJ.js.map +1 -0
  148. package/build/server/chunks/_page.svelte-D0gMlmzQ.js +104 -0
  149. package/build/server/chunks/_page.svelte-D0gMlmzQ.js.map +1 -0
  150. package/build/server/chunks/_page.svelte-pxsCzB7-.js +106 -0
  151. package/build/server/chunks/_page.svelte-pxsCzB7-.js.map +1 -0
  152. package/build/server/chunks/_server.ts-33LuQvHu.js +19 -0
  153. package/build/server/chunks/_server.ts-33LuQvHu.js.map +1 -0
  154. package/build/server/chunks/_server.ts-5CjguYY3.js +514 -0
  155. package/build/server/chunks/_server.ts-5CjguYY3.js.map +1 -0
  156. package/build/server/chunks/_server.ts-B3tjtq2m.js +64 -0
  157. package/build/server/chunks/_server.ts-B3tjtq2m.js.map +1 -0
  158. package/build/server/chunks/_server.ts-B4N5gO26.js +70 -0
  159. package/build/server/chunks/_server.ts-B4N5gO26.js.map +1 -0
  160. package/build/server/chunks/_server.ts-B6FENZO7.js +82 -0
  161. package/build/server/chunks/_server.ts-B6FENZO7.js.map +1 -0
  162. package/build/server/chunks/_server.ts-B8JtVHLy.js +41 -0
  163. package/build/server/chunks/_server.ts-B8JtVHLy.js.map +1 -0
  164. package/build/server/chunks/_server.ts-BR9OrjcE.js +68 -0
  165. package/build/server/chunks/_server.ts-BR9OrjcE.js.map +1 -0
  166. package/build/server/chunks/_server.ts-BYVcXj0z.js +107 -0
  167. package/build/server/chunks/_server.ts-BYVcXj0z.js.map +1 -0
  168. package/build/server/chunks/_server.ts-BYdXdnje.js +97 -0
  169. package/build/server/chunks/_server.ts-BYdXdnje.js.map +1 -0
  170. package/build/server/chunks/_server.ts-BaxRyhZ8.js +44 -0
  171. package/build/server/chunks/_server.ts-BaxRyhZ8.js.map +1 -0
  172. package/build/server/chunks/_server.ts-BclZ3UFT.js +41 -0
  173. package/build/server/chunks/_server.ts-BclZ3UFT.js.map +1 -0
  174. package/build/server/chunks/_server.ts-Bd_I8GjG.js +60 -0
  175. package/build/server/chunks/_server.ts-Bd_I8GjG.js.map +1 -0
  176. package/build/server/chunks/_server.ts-Bdry_CdG.js +33 -0
  177. package/build/server/chunks/_server.ts-Bdry_CdG.js.map +1 -0
  178. package/build/server/chunks/_server.ts-Bg8OpPuA.js +65 -0
  179. package/build/server/chunks/_server.ts-Bg8OpPuA.js.map +1 -0
  180. package/build/server/chunks/_server.ts-BjrO7pvn.js +73 -0
  181. package/build/server/chunks/_server.ts-BjrO7pvn.js.map +1 -0
  182. package/build/server/chunks/_server.ts-BkoJOqrr.js +70 -0
  183. package/build/server/chunks/_server.ts-BkoJOqrr.js.map +1 -0
  184. package/build/server/chunks/_server.ts-Bl0YOh50.js +40 -0
  185. package/build/server/chunks/_server.ts-Bl0YOh50.js.map +1 -0
  186. package/build/server/chunks/_server.ts-BmZlEy27.js +55 -0
  187. package/build/server/chunks/_server.ts-BmZlEy27.js.map +1 -0
  188. package/build/server/chunks/_server.ts-Bq2S1OMq.js +163 -0
  189. package/build/server/chunks/_server.ts-Bq2S1OMq.js.map +1 -0
  190. package/build/server/chunks/_server.ts-BwHojI4i.js +59 -0
  191. package/build/server/chunks/_server.ts-BwHojI4i.js.map +1 -0
  192. package/build/server/chunks/_server.ts-C-lN2ZUO.js +33 -0
  193. package/build/server/chunks/_server.ts-C-lN2ZUO.js.map +1 -0
  194. package/build/server/chunks/_server.ts-C1DcK_rP.js +200 -0
  195. package/build/server/chunks/_server.ts-C1DcK_rP.js.map +1 -0
  196. package/build/server/chunks/_server.ts-C1y3X6iK.js +52 -0
  197. package/build/server/chunks/_server.ts-C1y3X6iK.js.map +1 -0
  198. package/build/server/chunks/_server.ts-C5s-OXCm.js +79 -0
  199. package/build/server/chunks/_server.ts-C5s-OXCm.js.map +1 -0
  200. package/build/server/chunks/_server.ts-CAKTZL2t.js +63 -0
  201. package/build/server/chunks/_server.ts-CAKTZL2t.js.map +1 -0
  202. package/build/server/chunks/_server.ts-CDtOOD3Q.js +83 -0
  203. package/build/server/chunks/_server.ts-CDtOOD3Q.js.map +1 -0
  204. package/build/server/chunks/_server.ts-CG409cWi.js +46 -0
  205. package/build/server/chunks/_server.ts-CG409cWi.js.map +1 -0
  206. package/build/server/chunks/_server.ts-CJL8da0o.js +56 -0
  207. package/build/server/chunks/_server.ts-CJL8da0o.js.map +1 -0
  208. package/build/server/chunks/_server.ts-CLBKpKeH.js +204 -0
  209. package/build/server/chunks/_server.ts-CLBKpKeH.js.map +1 -0
  210. package/build/server/chunks/_server.ts-CLiYOnOv.js +50 -0
  211. package/build/server/chunks/_server.ts-CLiYOnOv.js.map +1 -0
  212. package/build/server/chunks/_server.ts-CMvY0ZDz.js +101 -0
  213. package/build/server/chunks/_server.ts-CMvY0ZDz.js.map +1 -0
  214. package/build/server/chunks/_server.ts-CQqURrHY.js +41 -0
  215. package/build/server/chunks/_server.ts-CQqURrHY.js.map +1 -0
  216. package/build/server/chunks/_server.ts-CSgPjCYv.js +79 -0
  217. package/build/server/chunks/_server.ts-CSgPjCYv.js.map +1 -0
  218. package/build/server/chunks/_server.ts-C_fNO73y.js +44 -0
  219. package/build/server/chunks/_server.ts-C_fNO73y.js.map +1 -0
  220. package/build/server/chunks/_server.ts-CcTt5aAs.js +41 -0
  221. package/build/server/chunks/_server.ts-CcTt5aAs.js.map +1 -0
  222. package/build/server/chunks/_server.ts-CfLbEufw.js +53 -0
  223. package/build/server/chunks/_server.ts-CfLbEufw.js.map +1 -0
  224. package/build/server/chunks/_server.ts-CqHMhINi.js +53 -0
  225. package/build/server/chunks/_server.ts-CqHMhINi.js.map +1 -0
  226. package/build/server/chunks/_server.ts-CrU9r7-F.js +88 -0
  227. package/build/server/chunks/_server.ts-CrU9r7-F.js.map +1 -0
  228. package/build/server/chunks/_server.ts-CtZuKotA.js +70 -0
  229. package/build/server/chunks/_server.ts-CtZuKotA.js.map +1 -0
  230. package/build/server/chunks/_server.ts-D-sjM5kn.js +103 -0
  231. package/build/server/chunks/_server.ts-D-sjM5kn.js.map +1 -0
  232. package/build/server/chunks/_server.ts-D2wlMMJl.js +41 -0
  233. package/build/server/chunks/_server.ts-D2wlMMJl.js.map +1 -0
  234. package/build/server/chunks/_server.ts-D7L27_xI.js +65 -0
  235. package/build/server/chunks/_server.ts-D7L27_xI.js.map +1 -0
  236. package/build/server/chunks/_server.ts-DMKIHwKi.js +90 -0
  237. package/build/server/chunks/_server.ts-DMKIHwKi.js.map +1 -0
  238. package/build/server/chunks/_server.ts-DTyZan5L.js +33 -0
  239. package/build/server/chunks/_server.ts-DTyZan5L.js.map +1 -0
  240. package/build/server/chunks/_server.ts-DVekHgMN.js +96 -0
  241. package/build/server/chunks/_server.ts-DVekHgMN.js.map +1 -0
  242. package/build/server/chunks/_server.ts-DWLkr6Qg.js +54 -0
  243. package/build/server/chunks/_server.ts-DWLkr6Qg.js.map +1 -0
  244. package/build/server/chunks/_server.ts-DWN6TJv0.js +149 -0
  245. package/build/server/chunks/_server.ts-DWN6TJv0.js.map +1 -0
  246. package/build/server/chunks/_server.ts-D_dO8hvJ.js +56 -0
  247. package/build/server/chunks/_server.ts-D_dO8hvJ.js.map +1 -0
  248. package/build/server/chunks/_server.ts-Da9y6lio.js +82 -0
  249. package/build/server/chunks/_server.ts-Da9y6lio.js.map +1 -0
  250. package/build/server/chunks/_server.ts-DbO3cg55.js +54 -0
  251. package/build/server/chunks/_server.ts-DbO3cg55.js.map +1 -0
  252. package/build/server/chunks/_server.ts-DclRsTpW.js +44 -0
  253. package/build/server/chunks/_server.ts-DclRsTpW.js.map +1 -0
  254. package/build/server/chunks/_server.ts-DdlF1vjy.js +159 -0
  255. package/build/server/chunks/_server.ts-DdlF1vjy.js.map +1 -0
  256. package/build/server/chunks/_server.ts-De7IOs2z.js +759 -0
  257. package/build/server/chunks/_server.ts-De7IOs2z.js.map +1 -0
  258. package/build/server/chunks/_server.ts-DmyOp1yq.js +40 -0
  259. package/build/server/chunks/_server.ts-DmyOp1yq.js.map +1 -0
  260. package/build/server/chunks/_server.ts-DnKTcT9x.js +46 -0
  261. package/build/server/chunks/_server.ts-DnKTcT9x.js.map +1 -0
  262. package/build/server/chunks/_server.ts-Dq82kHyx.js +72 -0
  263. package/build/server/chunks/_server.ts-Dq82kHyx.js.map +1 -0
  264. package/build/server/chunks/_server.ts-DqVJ1NqI.js +55 -0
  265. package/build/server/chunks/_server.ts-DqVJ1NqI.js.map +1 -0
  266. package/build/server/chunks/_server.ts-DzWtvjem.js +46 -0
  267. package/build/server/chunks/_server.ts-DzWtvjem.js.map +1 -0
  268. package/build/server/chunks/_server.ts-EZS5Qan4.js +62 -0
  269. package/build/server/chunks/_server.ts-EZS5Qan4.js.map +1 -0
  270. package/build/server/chunks/_server.ts-I0iKpsyr.js +77 -0
  271. package/build/server/chunks/_server.ts-I0iKpsyr.js.map +1 -0
  272. package/build/server/chunks/_server.ts-P4pmd9NX.js +55 -0
  273. package/build/server/chunks/_server.ts-P4pmd9NX.js.map +1 -0
  274. package/build/server/chunks/_server.ts-UF_kxNaU.js +79 -0
  275. package/build/server/chunks/_server.ts-UF_kxNaU.js.map +1 -0
  276. package/build/server/chunks/_server.ts-b3mVtmkb.js +121 -0
  277. package/build/server/chunks/_server.ts-b3mVtmkb.js.map +1 -0
  278. package/build/server/chunks/_server.ts-dhkEt2p6.js +63 -0
  279. package/build/server/chunks/_server.ts-dhkEt2p6.js.map +1 -0
  280. package/build/server/chunks/_server.ts-eK_9jY-9.js +67 -0
  281. package/build/server/chunks/_server.ts-eK_9jY-9.js.map +1 -0
  282. package/build/server/chunks/_server.ts-fsEmx9mw.js +42 -0
  283. package/build/server/chunks/_server.ts-fsEmx9mw.js.map +1 -0
  284. package/build/server/chunks/_server.ts-l4CK3c4j.js +109 -0
  285. package/build/server/chunks/_server.ts-l4CK3c4j.js.map +1 -0
  286. package/build/server/chunks/_server.ts-otJRaSSq.js +139 -0
  287. package/build/server/chunks/_server.ts-otJRaSSq.js.map +1 -0
  288. package/build/server/chunks/_server.ts-rXhjnBtw.js +49 -0
  289. package/build/server/chunks/_server.ts-rXhjnBtw.js.map +1 -0
  290. package/build/server/chunks/_server.ts-wZ88P3nX.js +157 -0
  291. package/build/server/chunks/_server.ts-wZ88P3nX.js.map +1 -0
  292. package/build/server/chunks/_server.ts-xO4nhxDx.js +60 -0
  293. package/build/server/chunks/_server.ts-xO4nhxDx.js.map +1 -0
  294. package/build/server/chunks/_server.ts-yimewsjO.js +57 -0
  295. package/build/server/chunks/_server.ts-yimewsjO.js.map +1 -0
  296. package/build/server/chunks/addon-helpers-BpnH-GEc.js +49 -0
  297. package/build/server/chunks/addon-helpers-BpnH-GEc.js.map +1 -0
  298. package/build/server/chunks/chunk-CLZ62Ad-.js +18 -0
  299. package/build/server/chunks/chunk-CLZ62Ad-.js.map +1 -0
  300. package/build/server/chunks/coercion-TNFJisCC.js +34 -0
  301. package/build/server/chunks/coercion-TNFJisCC.js.map +1 -0
  302. package/build/server/chunks/config-0LFudKuE.js +121 -0
  303. package/build/server/chunks/config-0LFudKuE.js.map +1 -0
  304. package/build/server/chunks/dev-DjANv7AF.js +4389 -0
  305. package/build/server/chunks/dev-DjANv7AF.js.map +1 -0
  306. package/build/server/chunks/docker-B23w4kr6.js +20 -0
  307. package/build/server/chunks/docker-B23w4kr6.js.map +1 -0
  308. package/build/server/chunks/endpoints-Drq_J-2Z.js +340 -0
  309. package/build/server/chunks/endpoints-Drq_J-2Z.js.map +1 -0
  310. package/build/server/chunks/error.svelte-ByNznOuj.js +16 -0
  311. package/build/server/chunks/error.svelte-ByNznOuj.js.map +1 -0
  312. package/build/server/chunks/exports-D1quPX8S.js +124 -0
  313. package/build/server/chunks/exports-D1quPX8S.js.map +1 -0
  314. package/build/server/chunks/helpers-CX6xRBmt.js +226 -0
  315. package/build/server/chunks/helpers-CX6xRBmt.js.map +1 -0
  316. package/build/server/chunks/hooks.server-BEVMYNQ4.js +86 -0
  317. package/build/server/chunks/hooks.server-BEVMYNQ4.js.map +1 -0
  318. package/build/server/chunks/http-VqOG8hyj.js +31 -0
  319. package/build/server/chunks/http-VqOG8hyj.js.map +1 -0
  320. package/build/server/chunks/internal-CeK24Lte.js +1544 -0
  321. package/build/server/chunks/internal-CeK24Lte.js.map +1 -0
  322. package/build/server/chunks/serial-queue-D9FEpYVv.js +22 -0
  323. package/build/server/chunks/serial-queue-D9FEpYVv.js.map +1 -0
  324. package/build/server/chunks/setup-deploy-B4oSSFYi.js +529 -0
  325. package/build/server/chunks/setup-deploy-B4oSSFYi.js.map +1 -0
  326. package/build/server/chunks/src-BkvQ5Uuf.js +14082 -0
  327. package/build/server/chunks/src-BkvQ5Uuf.js.map +1 -0
  328. package/build/server/chunks/state-D7JS-l_D.js +203 -0
  329. package/build/server/chunks/state-D7JS-l_D.js.map +1 -0
  330. package/build/server/chunks/theme-state.svelte-PtPMmKGN.js +520 -0
  331. package/build/server/chunks/theme-state.svelte-PtPMmKGN.js.map +1 -0
  332. package/build/server/chunks/utils-BSRjJDrZ.js +150 -0
  333. package/build/server/chunks/utils-BSRjJDrZ.js.map +1 -0
  334. package/build/server/index.js +4389 -0
  335. package/build/server/index.js.map +1 -0
  336. package/build/server/manifest.js +584 -0
  337. package/build/server/manifest.js.map +1 -0
  338. package/build/shims.js +32 -0
  339. package/package.json +68 -0
@@ -0,0 +1,97 @@
1
+ import { D as deleteUserEnvKey, I as ensureAkmUserEnv, ae as readUserEnvFile, y as createLogger, A as AKM_USER_ENV_REF, av as writeUserEnvKey } from './src-BkvQ5Uuf.js';
2
+ import { b as getState } from './endpoints-Drq_J-2Z.js';
3
+ import { d as getRequestId, r as requireAdmin, e as errorResponse, h as jsonResponse, w as withAdminBody } from './helpers-CX6xRBmt.js';
4
+ import './chunk-CLZ62Ad-.js';
5
+ import 'node:module';
6
+ import 'node:fs';
7
+ import 'node:path';
8
+ import 'node:child_process';
9
+ import 'node:os';
10
+ import 'buffer';
11
+ import 'node:url';
12
+ import 'node:crypto';
13
+ import 'events';
14
+ import 'fs';
15
+ import 'node:events';
16
+ import 'node:stream';
17
+ import 'node:string_decoder';
18
+ import 'path';
19
+ import 'assert';
20
+ import 'zlib';
21
+ import 'node:assert';
22
+ import 'node:fs/promises';
23
+
24
+ //#region src/routes/admin/secrets/user-env/+server.ts
25
+ var logger = createLogger("admin.secrets.user-env");
26
+ var KEY_RE = /^[A-Za-z_][A-Za-z0-9_]*$/;
27
+ /**
28
+ * GET — list keys in the akm env:user store. Values are NEVER returned.
29
+ */
30
+ var GET = async (event) => {
31
+ const requestId = getRequestId(event);
32
+ const authError = requireAdmin(event, requestId);
33
+ if (authError) return authError;
34
+ const envPath = ensureAkmUserEnv(getState());
35
+ return jsonResponse(200, {
36
+ provider: "akm",
37
+ envRef: AKM_USER_ENV_REF,
38
+ keys: Object.keys(readUserEnvFile(envPath)).sort()
39
+ }, requestId);
40
+ };
41
+ /**
42
+ * POST — write a key into the user env file. The value is shell-quoted and
43
+ * written directly to `knowledge/env/user.env` (mode 0600); it never appears on
44
+ * a process argv. The assistant sources the env file at startup, so a key
45
+ * written here is visible to OpenCode after the next assistant restart.
46
+ */
47
+ var POST = (event) => withAdminBody(event, async ({ requestId, body }) => {
48
+ const state = getState();
49
+ const key = typeof body.key === "string" ? body.key.trim() : "";
50
+ const value = typeof body.value === "string" ? body.value : null;
51
+ if (!key || value === null) return errorResponse(400, "bad_request", "key and value are required", {}, requestId);
52
+ if (!KEY_RE.test(key)) return errorResponse(400, "invalid_key", "key must match [A-Za-z_][A-Za-z0-9_]*", {}, requestId);
53
+ if (value.length === 0) return errorResponse(400, "bad_request", "value must be non-empty; use DELETE to remove a key", {}, requestId);
54
+ if (/[\x00-\x08\x0a-\x1f\x7f]/.test(value)) return errorResponse(400, "invalid_value", "value must not contain newlines or control characters", {}, requestId);
55
+ try {
56
+ writeUserEnvKey(state, key, value);
57
+ } catch (err) {
58
+ const reason = err instanceof Error ? err.message : String(err);
59
+ logger.warn("user env write failed", {
60
+ key,
61
+ reason,
62
+ requestId
63
+ });
64
+ return errorResponse(500, "write_failed", `Failed to write user env key: ${reason}`, {}, requestId);
65
+ }
66
+ return jsonResponse(200, {
67
+ ok: true,
68
+ key
69
+ }, requestId);
70
+ });
71
+ /** DELETE — remove a key from the user env file. */
72
+ var DELETE = async (event) => {
73
+ const requestId = getRequestId(event);
74
+ const authError = requireAdmin(event, requestId);
75
+ if (authError) return authError;
76
+ const state = getState();
77
+ const key = new URL(event.request.url).searchParams.get("key")?.trim() ?? "";
78
+ if (!key || !KEY_RE.test(key)) return errorResponse(400, "bad_request", "valid key query parameter is required", {}, requestId);
79
+ try {
80
+ deleteUserEnvKey(state, key);
81
+ } catch (err) {
82
+ const reason = err instanceof Error ? err.message : String(err);
83
+ logger.warn("user env delete failed", {
84
+ key,
85
+ reason,
86
+ requestId
87
+ });
88
+ return errorResponse(500, "delete_failed", `Failed to remove user env key: ${reason}`, {}, requestId);
89
+ }
90
+ return jsonResponse(200, {
91
+ ok: true,
92
+ key
93
+ }, requestId);
94
+ };
95
+
96
+ export { DELETE, GET, POST };
97
+ //# sourceMappingURL=_server.ts-BYdXdnje.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts-BYdXdnje.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/secrets/user-env/_server.ts.js"],"sourcesContent":["import { Nt as createLogger, d as AKM_USER_ENV_REF, g as writeUserEnvKey, h as readUserEnvFile, m as ensureAkmUserEnv, p as deleteUserEnvKey } from \"../../../../../chunks/src.js\";\nimport { c as getState } from \"../../../../../chunks/endpoints.js\";\nimport { d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId, p as withAdminBody } from \"../../../../../chunks/helpers.js\";\n//#region src/routes/admin/secrets/user-env/+server.ts\nvar logger = createLogger(\"admin.secrets.user-env\");\nvar KEY_RE = /^[A-Za-z_][A-Za-z0-9_]*$/;\n/**\n* GET — list keys in the akm env:user store. Values are NEVER returned.\n*/\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst envPath = ensureAkmUserEnv(getState());\n\treturn jsonResponse(200, {\n\t\tprovider: \"akm\",\n\t\tenvRef: AKM_USER_ENV_REF,\n\t\tkeys: Object.keys(readUserEnvFile(envPath)).sort()\n\t}, requestId);\n};\n/**\n* POST — write a key into the user env file. The value is shell-quoted and\n* written directly to `knowledge/env/user.env` (mode 0600); it never appears on\n* a process argv. The assistant sources the env file at startup, so a key\n* written here is visible to OpenCode after the next assistant restart.\n*/\nvar POST = (event) => withAdminBody(event, async ({ requestId, body }) => {\n\tconst state = getState();\n\tconst key = typeof body.key === \"string\" ? body.key.trim() : \"\";\n\tconst value = typeof body.value === \"string\" ? body.value : null;\n\tif (!key || value === null) return errorResponse(400, \"bad_request\", \"key and value are required\", {}, requestId);\n\tif (!KEY_RE.test(key)) return errorResponse(400, \"invalid_key\", \"key must match [A-Za-z_][A-Za-z0-9_]*\", {}, requestId);\n\tif (value.length === 0) return errorResponse(400, \"bad_request\", \"value must be non-empty; use DELETE to remove a key\", {}, requestId);\n\tif (/[\\x00-\\x08\\x0a-\\x1f\\x7f]/.test(value)) return errorResponse(400, \"invalid_value\", \"value must not contain newlines or control characters\", {}, requestId);\n\ttry {\n\t\twriteUserEnvKey(state, key, value);\n\t} catch (err) {\n\t\tconst reason = err instanceof Error ? err.message : String(err);\n\t\tlogger.warn(\"user env write failed\", {\n\t\t\tkey,\n\t\t\treason,\n\t\t\trequestId\n\t\t});\n\t\treturn errorResponse(500, \"write_failed\", `Failed to write user env key: ${reason}`, {}, requestId);\n\t}\n\treturn jsonResponse(200, {\n\t\tok: true,\n\t\tkey\n\t}, requestId);\n});\n/** DELETE — remove a key from the user env file. */\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\tconst key = new URL(event.request.url).searchParams.get(\"key\")?.trim() ?? \"\";\n\tif (!key || !KEY_RE.test(key)) return errorResponse(400, \"bad_request\", \"valid key query parameter is required\", {}, requestId);\n\ttry {\n\t\tdeleteUserEnvKey(state, key);\n\t} catch (err) {\n\t\tconst reason = err instanceof Error ? err.message : String(err);\n\t\tlogger.warn(\"user env delete failed\", {\n\t\t\tkey,\n\t\t\treason,\n\t\t\trequestId\n\t\t});\n\t\treturn errorResponse(500, \"delete_failed\", `Failed to remove user env key: ${reason}`, {}, requestId);\n\t}\n\treturn jsonResponse(200, {\n\t\tok: true,\n\t\tkey\n\t}, requestId);\n};\n//#endregion\nexport { DELETE, GET, POST };\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,44 @@
1
+ import { m as checkDocker, T as getDockerEvents } from './src-BkvQ5Uuf.js';
2
+ import { d as getRequestId, r as requireAdmin, e as errorResponse, h as jsonResponse } from './helpers-CX6xRBmt.js';
3
+ import './chunk-CLZ62Ad-.js';
4
+ import 'node:module';
5
+ import 'node:fs';
6
+ import 'node:path';
7
+ import 'node:child_process';
8
+ import 'node:os';
9
+ import 'buffer';
10
+ import 'node:url';
11
+ import 'node:crypto';
12
+ import 'events';
13
+ import 'fs';
14
+ import 'node:events';
15
+ import 'node:stream';
16
+ import 'node:string_decoder';
17
+ import 'path';
18
+ import 'assert';
19
+ import 'zlib';
20
+ import 'node:assert';
21
+ import 'node:fs/promises';
22
+ import './endpoints-Drq_J-2Z.js';
23
+
24
+ //#region src/routes/admin/containers/events/+server.ts
25
+ var GET = async (event) => {
26
+ const requestId = getRequestId(event);
27
+ const authError = requireAdmin(event, requestId);
28
+ if (authError) return authError;
29
+ const since = event.url.searchParams.get("since") || "1h";
30
+ if (!(await checkDocker()).ok) return errorResponse(503, "docker_unavailable", "Docker is not available", {}, requestId);
31
+ const result = await getDockerEvents("openpalm", since);
32
+ if (!result.ok) return errorResponse(500, "docker_error", `Failed to get Docker events: ${result.stderr}`, {}, requestId);
33
+ let events = [];
34
+ if (result.stdout.trim()) try {
35
+ events = result.stdout.trim().split("\n").filter((l) => l.startsWith("{")).map((l) => JSON.parse(l));
36
+ } catch (e) {
37
+ console.warn("[containers.events] Failed to parse Docker events output", e);
38
+ return errorResponse(500, "parse_error", "Failed to parse Docker events output", {}, requestId);
39
+ }
40
+ return jsonResponse(200, { events }, requestId);
41
+ };
42
+
43
+ export { GET };
44
+ //# sourceMappingURL=_server.ts-BaxRyhZ8.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts-BaxRyhZ8.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/containers/events/_server.ts.js"],"sourcesContent":["import { L as getDockerEvents, T as checkDocker } from \"../../../../../chunks/src.js\";\nimport { d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId } from \"../../../../../chunks/helpers.js\";\n//#region src/routes/admin/containers/events/+server.ts\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst since = event.url.searchParams.get(\"since\") || \"1h\";\n\tif (!(await checkDocker()).ok) return errorResponse(503, \"docker_unavailable\", \"Docker is not available\", {}, requestId);\n\tconst result = await getDockerEvents(\"openpalm\", since);\n\tif (!result.ok) return errorResponse(500, \"docker_error\", `Failed to get Docker events: ${result.stderr}`, {}, requestId);\n\tlet events = [];\n\tif (result.stdout.trim()) try {\n\t\tevents = result.stdout.trim().split(\"\\n\").filter((l) => l.startsWith(\"{\")).map((l) => JSON.parse(l));\n\t} catch (e) {\n\t\tconsole.warn(\"[containers.events] Failed to parse Docker events output\", e);\n\t\treturn errorResponse(500, \"parse_error\", \"Failed to parse Docker events output\", {}, requestId);\n\t}\n\treturn jsonResponse(200, { events }, requestId);\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAEA;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,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI;AAC1D,CAAC,IAAI,CAAC,CAAC,MAAM,WAAW,EAAE,EAAE,EAAE,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,EAAE,EAAE,SAAS,CAAC;AACzH,CAAC,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,UAAU,EAAE,KAAK,CAAC;AACxD,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,6BAA6B,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC;AAC1H,CAAC,IAAI,MAAM,GAAG,EAAE;AAChB,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI;AAC/B,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACtG,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE;AACb,EAAE,OAAO,CAAC,IAAI,CAAC,0DAA0D,EAAE,CAAC,CAAC;AAC7E,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,aAAa,EAAE,sCAAsC,EAAE,EAAE,EAAE,SAAS,CAAC;AACjG,CAAC;AACD,CAAC,OAAO,YAAY,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,EAAE,SAAS,CAAC;AAChD;;;;"}
@@ -0,0 +1,41 @@
1
+ import { j as json } from './exports-D1quPX8S.js';
2
+ import { _ as isSetupComplete, ak as resolveStackDir, Q as getAddonProfileSelection, b as annotateAddonProfileAvailability, R as getAddonProfiles } from './src-BkvQ5Uuf.js';
3
+ import { b as getState } from './endpoints-Drq_J-2Z.js';
4
+ import { r as requireAdmin, d as getRequestId } from './helpers-CX6xRBmt.js';
5
+ import './utils-BSRjJDrZ.js';
6
+ import './chunk-CLZ62Ad-.js';
7
+ import 'node:module';
8
+ import 'node:fs';
9
+ import 'node:path';
10
+ import 'node:child_process';
11
+ import 'node:os';
12
+ import 'buffer';
13
+ import 'node:url';
14
+ import 'node:crypto';
15
+ import 'events';
16
+ import 'fs';
17
+ import 'node:events';
18
+ import 'node:stream';
19
+ import 'node:string_decoder';
20
+ import 'path';
21
+ import 'assert';
22
+ import 'zlib';
23
+ import 'node:assert';
24
+ import 'node:fs/promises';
25
+
26
+ //#region src/routes/api/setup/ollama-profiles/+server.ts
27
+ var GET = async (event) => {
28
+ if (isSetupComplete(resolveStackDir())) {
29
+ const authError = requireAdmin(event, getRequestId(event));
30
+ if (authError) return authError;
31
+ }
32
+ const state = getState();
33
+ return json({
34
+ ok: true,
35
+ profiles: await annotateAddonProfileAvailability(getAddonProfiles(state.homeDir, "ollama")),
36
+ selectedProfile: getAddonProfileSelection(state.stackDir, "ollama")
37
+ });
38
+ };
39
+
40
+ export { GET };
41
+ //# sourceMappingURL=_server.ts-BclZ3UFT.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts-BclZ3UFT.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/setup/ollama-profiles/_server.ts.js"],"sourcesContent":["import { r as json } from \"../../../../../chunks/exports.js\";\nimport { J as isSetupComplete, et as annotateAddonProfileAvailability, jt as resolveStackDir, nt as getAddonProfileSelection, rt as getAddonProfiles } from \"../../../../../chunks/src.js\";\nimport { c as getState } from \"../../../../../chunks/endpoints.js\";\nimport { d as requireAdmin, o as getRequestId } from \"../../../../../chunks/helpers.js\";\n//#region src/routes/api/setup/ollama-profiles/+server.ts\nvar GET = async (event) => {\n\tif (isSetupComplete(resolveStackDir())) {\n\t\tconst authError = requireAdmin(event, getRequestId(event));\n\t\tif (authError) return authError;\n\t}\n\tconst state = getState();\n\treturn json({\n\t\tok: true,\n\t\tprofiles: await annotateAddonProfileAvailability(getAddonProfiles(state.homeDir, \"ollama\")),\n\t\tselectedProfile: getAddonProfileSelection(state.stackDir, \"ollama\")\n\t});\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAIA;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,IAAI,eAAe,CAAC,eAAe,EAAE,CAAC,EAAE;AACzC,EAAE,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;AAC5D,EAAE,IAAI,SAAS,EAAE,OAAO,SAAS;AACjC,CAAC;AACD,CAAC,MAAM,KAAK,GAAG,QAAQ,EAAE;AACzB,CAAC,OAAO,IAAI,CAAC;AACb,EAAE,EAAE,EAAE,IAAI;AACV,EAAE,QAAQ,EAAE,MAAM,gCAAgC,CAAC,gBAAgB,CAAC,KAAK,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;AAC7F,EAAE,eAAe,EAAE,wBAAwB,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ;AACpE,EAAE,CAAC;AACH;;;;"}
@@ -0,0 +1,60 @@
1
+ import { Y as isAllowedService, m as checkDocker, p as composeLogs, k as buildComposeOptions } from './src-BkvQ5Uuf.js';
2
+ import { b as getState } from './endpoints-Drq_J-2Z.js';
3
+ import { d as getRequestId, r as requireAdmin, e as errorResponse, h as jsonResponse } from './helpers-CX6xRBmt.js';
4
+ import './chunk-CLZ62Ad-.js';
5
+ import 'node:module';
6
+ import 'node:fs';
7
+ import 'node:path';
8
+ import 'node:child_process';
9
+ import 'node:os';
10
+ import 'buffer';
11
+ import 'node:url';
12
+ import 'node:crypto';
13
+ import 'events';
14
+ import 'fs';
15
+ import 'node:events';
16
+ import 'node:stream';
17
+ import 'node:string_decoder';
18
+ import 'path';
19
+ import 'assert';
20
+ import 'zlib';
21
+ import 'node:assert';
22
+ import 'node:fs/promises';
23
+
24
+ //#region src/routes/admin/logs/+server.ts
25
+ var GET = async (event) => {
26
+ const requestId = getRequestId(event);
27
+ const authError = requireAdmin(event, requestId);
28
+ if (authError) return authError;
29
+ const state = getState();
30
+ const url = new URL(event.request.url);
31
+ const serviceParam = url.searchParams.get("service");
32
+ const tailParam = url.searchParams.get("tail");
33
+ const sinceParam = url.searchParams.get("since");
34
+ const tail = tailParam ? Number(tailParam) : 100;
35
+ if (tailParam && (!Number.isInteger(tail) || tail < 1 || tail > 1e4)) return errorResponse(400, "invalid_parameter", "tail must be an integer between 1 and 10000", {}, requestId);
36
+ let services;
37
+ if (serviceParam) {
38
+ services = serviceParam.split(",").map((s) => s.trim()).filter(Boolean);
39
+ const invalid = services.filter((s) => !isAllowedService(s, state.configDir));
40
+ if (invalid.length > 0) return errorResponse(400, "invalid_service", `Invalid service name(s): ${invalid.join(", ")}`, { invalid }, requestId);
41
+ }
42
+ if (sinceParam && !/^[a-zA-Z0-9.:+\-T]+$/.test(sinceParam)) return errorResponse(400, "invalid_parameter", "since contains invalid characters", {}, requestId);
43
+ if (!(await checkDocker()).ok) return errorResponse(503, "docker_unavailable", "Docker is not available", {}, requestId);
44
+ const result = await composeLogs(services, tail, {
45
+ ...buildComposeOptions(state),
46
+ since: sinceParam ?? void 0
47
+ });
48
+ if (!result.ok) return jsonResponse(500, {
49
+ ok: false,
50
+ logs: "",
51
+ error: result.stderr
52
+ }, requestId);
53
+ return jsonResponse(200, {
54
+ ok: true,
55
+ logs: (result.stdout + result.stderr).trim()
56
+ }, requestId);
57
+ };
58
+
59
+ export { GET };
60
+ //# sourceMappingURL=_server.ts-Bd_I8GjG.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts-Bd_I8GjG.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/logs/_server.ts.js"],"sourcesContent":["import { O as composeLogs, T as checkDocker, q as isAllowedService, w as buildComposeOptions } from \"../../../../chunks/src.js\";\nimport { c as getState } from \"../../../../chunks/endpoints.js\";\nimport { d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId } from \"../../../../chunks/helpers.js\";\n//#region src/routes/admin/logs/+server.ts\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst state = getState();\n\tconst url = new URL(event.request.url);\n\tconst serviceParam = url.searchParams.get(\"service\");\n\tconst tailParam = url.searchParams.get(\"tail\");\n\tconst sinceParam = url.searchParams.get(\"since\");\n\tconst tail = tailParam ? Number(tailParam) : 100;\n\tif (tailParam && (!Number.isInteger(tail) || tail < 1 || tail > 1e4)) return errorResponse(400, \"invalid_parameter\", \"tail must be an integer between 1 and 10000\", {}, requestId);\n\tlet services;\n\tif (serviceParam) {\n\t\tservices = serviceParam.split(\",\").map((s) => s.trim()).filter(Boolean);\n\t\tconst invalid = services.filter((s) => !isAllowedService(s, state.configDir));\n\t\tif (invalid.length > 0) return errorResponse(400, \"invalid_service\", `Invalid service name(s): ${invalid.join(\", \")}`, { invalid }, requestId);\n\t}\n\tif (sinceParam && !/^[a-zA-Z0-9.:+\\-T]+$/.test(sinceParam)) return errorResponse(400, \"invalid_parameter\", \"since contains invalid characters\", {}, requestId);\n\tif (!(await checkDocker()).ok) return errorResponse(503, \"docker_unavailable\", \"Docker is not available\", {}, requestId);\n\tconst result = await composeLogs(services, tail, {\n\t\t...buildComposeOptions(state),\n\t\tsince: sinceParam ?? void 0\n\t});\n\tif (!result.ok) return jsonResponse(500, {\n\t\tok: false,\n\t\tlogs: \"\",\n\t\terror: result.stderr\n\t}, requestId);\n\treturn jsonResponse(200, {\n\t\tok: true,\n\t\tlogs: (result.stdout + result.stderr).trim()\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,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AACjD,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS;AAChC,CAAC,MAAM,KAAK,GAAG,QAAQ,EAAE;AACzB,CAAC,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;AACvC,CAAC,MAAM,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,SAAS,CAAC;AACrD,CAAC,MAAM,SAAS,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC;AAC/C,CAAC,MAAM,UAAU,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC;AACjD,CAAC,MAAM,IAAI,GAAG,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,GAAG;AACjD,CAAC,IAAI,SAAS,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,GAAG,CAAC,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,mBAAmB,EAAE,6CAA6C,EAAE,EAAE,EAAE,SAAS,CAAC;AACnL,CAAC,IAAI,QAAQ;AACb,CAAC,IAAI,YAAY,EAAE;AACnB,EAAE,QAAQ,GAAG,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC;AACzE,EAAE,MAAM,OAAO,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC,CAAC;AAC/E,EAAE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,iBAAiB,EAAE,CAAC,yBAAyB,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,SAAS,CAAC;AAChJ,CAAC;AACD,CAAC,IAAI,UAAU,IAAI,CAAC,sBAAsB,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,mBAAmB,EAAE,mCAAmC,EAAE,EAAE,EAAE,SAAS,CAAC;AAC/J,CAAC,IAAI,CAAC,CAAC,MAAM,WAAW,EAAE,EAAE,EAAE,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,EAAE,EAAE,SAAS,CAAC;AACzH,CAAC,MAAM,MAAM,GAAG,MAAM,WAAW,CAAC,QAAQ,EAAE,IAAI,EAAE;AAClD,EAAE,GAAG,mBAAmB,CAAC,KAAK,CAAC;AAC/B,EAAE,KAAK,EAAE,UAAU,IAAI;AACvB,EAAE,CAAC;AACH,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE;AAC1C,EAAE,EAAE,EAAE,KAAK;AACX,EAAE,IAAI,EAAE,EAAE;AACV,EAAE,KAAK,EAAE,MAAM,CAAC;AAChB,EAAE,EAAE,SAAS,CAAC;AACd,CAAC,OAAO,YAAY,CAAC,GAAG,EAAE;AAC1B,EAAE,EAAE,EAAE,IAAI;AACV,EAAE,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,IAAI;AAC5C,EAAE,EAAE,SAAS,CAAC;AACd;;;;"}
@@ -0,0 +1,33 @@
1
+ import { h as jsonResponse, d as getRequestId } from './helpers-CX6xRBmt.js';
2
+ import './src-BkvQ5Uuf.js';
3
+ import './chunk-CLZ62Ad-.js';
4
+ import 'node:module';
5
+ import 'node:fs';
6
+ import 'node:path';
7
+ import 'node:child_process';
8
+ import 'node:os';
9
+ import 'buffer';
10
+ import 'node:url';
11
+ import 'node:crypto';
12
+ import 'events';
13
+ import 'fs';
14
+ import 'node:events';
15
+ import 'node:stream';
16
+ import 'node:string_decoder';
17
+ import 'path';
18
+ import 'assert';
19
+ import 'zlib';
20
+ import 'node:assert';
21
+ import 'node:fs/promises';
22
+ import './endpoints-Drq_J-2Z.js';
23
+
24
+ //#region src/routes/health/+server.ts
25
+ var GET = async (event) => {
26
+ return jsonResponse(200, {
27
+ status: "ok",
28
+ service: "admin"
29
+ }, getRequestId(event));
30
+ };
31
+
32
+ export { GET };
33
+ //# sourceMappingURL=_server.ts-Bdry_CdG.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts-Bdry_CdG.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/health/_server.ts.js"],"sourcesContent":["import { l as jsonResponse, o as getRequestId } from \"../../../chunks/helpers.js\";\n//#region src/routes/health/+server.ts\nvar GET = async (event) => {\n\treturn jsonResponse(200, {\n\t\tstatus: \"ok\",\n\t\tservice: \"admin\"\n\t}, getRequestId(event));\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AACA;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,OAAO,YAAY,CAAC,GAAG,EAAE;AAC1B,EAAE,MAAM,EAAE,IAAI;AACd,EAAE,OAAO,EAAE;AACX,EAAE,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;AACxB;;;;"}
@@ -0,0 +1,65 @@
1
+ import { w as withAdminBody, h as jsonResponse } from './helpers-CX6xRBmt.js';
2
+ import { o as opencodeFetch } from './http-VqOG8hyj.js';
3
+ import { a as asStringOrEmpty } from './_helpers-B_lb4-jB.js';
4
+ import './src-BkvQ5Uuf.js';
5
+ import './chunk-CLZ62Ad-.js';
6
+ import 'node:module';
7
+ import 'node:fs';
8
+ import 'node:path';
9
+ import 'node:child_process';
10
+ import 'node:os';
11
+ import 'buffer';
12
+ import 'node:url';
13
+ import 'node:crypto';
14
+ import 'events';
15
+ import 'fs';
16
+ import 'node:events';
17
+ import 'node:stream';
18
+ import 'node:string_decoder';
19
+ import 'path';
20
+ import 'assert';
21
+ import 'zlib';
22
+ import 'node:assert';
23
+ import 'node:fs/promises';
24
+ import './endpoints-Drq_J-2Z.js';
25
+ import './coercion-TNFJisCC.js';
26
+
27
+ //#region src/routes/admin/providers/oauth/finish/+server.ts
28
+ /**
29
+ * POST /admin/providers/oauth/finish — Complete an OAuth code-mode
30
+ * sign-in by exchanging the operator-pasted authorization code with the
31
+ * assistant OpenCode instance.
32
+ */
33
+ var POST = (event) => withAdminBody(event, async ({ requestId, body }) => {
34
+ try {
35
+ const providerId = asStringOrEmpty(body.providerId);
36
+ const methodIndex = Number(asStringOrEmpty(body.methodIndex));
37
+ const code = asStringOrEmpty(body.code);
38
+ if (!providerId || Number.isNaN(methodIndex) || !code) return jsonResponse(200, {
39
+ ok: false,
40
+ message: "Paste the authorization code before finishing sign-in.",
41
+ selectedProviderId: providerId
42
+ }, requestId);
43
+ await opencodeFetch(`/provider/${encodeURIComponent(providerId)}/oauth/callback`, {
44
+ method: "POST",
45
+ body: JSON.stringify({
46
+ method: methodIndex,
47
+ code
48
+ })
49
+ });
50
+ return jsonResponse(200, {
51
+ ok: true,
52
+ message: "OAuth connection completed.",
53
+ selectedProviderId: providerId
54
+ }, requestId);
55
+ } catch (error) {
56
+ return jsonResponse(200, {
57
+ ok: false,
58
+ message: error instanceof Error ? error.message : "Internal error",
59
+ selectedProviderId: void 0
60
+ }, requestId);
61
+ }
62
+ });
63
+
64
+ export { POST };
65
+ //# sourceMappingURL=_server.ts-Bg8OpPuA.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts-Bg8OpPuA.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;;;;"}
@@ -0,0 +1,73 @@
1
+ import { $ as listAvailableAddonIds, a0 as listEnabledAddonIds, V as getRegistryAddonConfig, y as createLogger } from './src-BkvQ5Uuf.js';
2
+ import { b as getState } from './endpoints-Drq_J-2Z.js';
3
+ import { d as getRequestId, r as requireAdmin, e as errorResponse, h as jsonResponse, p as parseJsonBody, j as jsonBodyError } from './helpers-CX6xRBmt.js';
4
+ import { p as performAddonToggle } from './addon-helpers-BpnH-GEc.js';
5
+ import './chunk-CLZ62Ad-.js';
6
+ import 'node:module';
7
+ import 'node:fs';
8
+ import 'node:path';
9
+ import 'node:child_process';
10
+ import 'node:os';
11
+ import 'buffer';
12
+ import 'node:url';
13
+ import 'node:crypto';
14
+ import 'events';
15
+ import 'fs';
16
+ import 'node:events';
17
+ import 'node:stream';
18
+ import 'node:string_decoder';
19
+ import 'path';
20
+ import 'assert';
21
+ import 'zlib';
22
+ import 'node:assert';
23
+ import 'node:fs/promises';
24
+
25
+ //#region src/routes/admin/addons/[name]/+server.ts
26
+ var logger = createLogger("addons.name");
27
+ var GET = async (event) => {
28
+ const requestId = getRequestId(event);
29
+ const authErr = requireAdmin(event, requestId);
30
+ if (authErr) return authErr;
31
+ const state = getState();
32
+ const name = event.params.name;
33
+ if (!listAvailableAddonIds().includes(name)) return errorResponse(404, "not_found", `Addon "${name}" is not available`, { name }, requestId);
34
+ const enabled = listEnabledAddonIds(state.homeDir).includes(name);
35
+ let config;
36
+ try {
37
+ config = getRegistryAddonConfig(state.homeDir, name);
38
+ } catch (error) {
39
+ logger.error("failed to read addon schema", {
40
+ name,
41
+ error: String(error),
42
+ requestId
43
+ });
44
+ return errorResponse(500, "internal_error", `Addon "${name}" schema is unavailable`, {}, requestId);
45
+ }
46
+ return jsonResponse(200, {
47
+ name,
48
+ enabled,
49
+ config
50
+ }, requestId);
51
+ };
52
+ var POST = async (event) => {
53
+ const requestId = getRequestId(event);
54
+ const authErr = requireAdmin(event, requestId);
55
+ if (authErr) return authErr;
56
+ const state = getState();
57
+ const name = event.params.name;
58
+ if (!listAvailableAddonIds().includes(name)) return errorResponse(404, "not_found", `Addon "${name}" is not available`, { name }, requestId);
59
+ const result = await parseJsonBody(event.request);
60
+ if ("error" in result) return jsonBodyError(result, requestId);
61
+ const body = result.data;
62
+ const toggle = await performAddonToggle(state, name, typeof body.enabled === "boolean" ? body.enabled : void 0, requestId);
63
+ if (!toggle.ok) return errorResponse(500, "internal_error", toggle.error, {}, requestId);
64
+ return jsonResponse(200, {
65
+ ok: true,
66
+ addon: name,
67
+ enabled: toggle.enabled,
68
+ changed: toggle.changed
69
+ }, requestId);
70
+ };
71
+
72
+ export { GET, POST };
73
+ //# sourceMappingURL=_server.ts-BjrO7pvn.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts-BjrO7pvn.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/addons/_name_/_server.ts.js"],"sourcesContent":["import { Nt as createLogger, at as getRegistryAddonConfig, ot as listAvailableAddonIds, st as listEnabledAddonIds } from \"../../../../../chunks/src.js\";\nimport { c as getState } from \"../../../../../chunks/endpoints.js\";\nimport { c as jsonBodyError, d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId, u as parseJsonBody } from \"../../../../../chunks/helpers.js\";\nimport { t as performAddonToggle } from \"../../../../../chunks/addon-helpers.js\";\n//#region src/routes/admin/addons/[name]/+server.ts\nvar logger = createLogger(\"addons.name\");\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authErr = requireAdmin(event, requestId);\n\tif (authErr) return authErr;\n\tconst state = getState();\n\tconst name = event.params.name;\n\tif (!listAvailableAddonIds().includes(name)) return errorResponse(404, \"not_found\", `Addon \"${name}\" is not available`, { name }, requestId);\n\tconst enabled = listEnabledAddonIds(state.homeDir).includes(name);\n\tlet config;\n\ttry {\n\t\tconfig = getRegistryAddonConfig(state.homeDir, name);\n\t} catch (error) {\n\t\tlogger.error(\"failed to read addon schema\", {\n\t\t\tname,\n\t\t\terror: String(error),\n\t\t\trequestId\n\t\t});\n\t\treturn errorResponse(500, \"internal_error\", `Addon \"${name}\" schema is unavailable`, {}, requestId);\n\t}\n\treturn jsonResponse(200, {\n\t\tname,\n\t\tenabled,\n\t\tconfig\n\t}, requestId);\n};\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authErr = requireAdmin(event, requestId);\n\tif (authErr) return authErr;\n\tconst state = getState();\n\tconst name = event.params.name;\n\tif (!listAvailableAddonIds().includes(name)) return errorResponse(404, \"not_found\", `Addon \"${name}\" is not available`, { name }, requestId);\n\tconst result = await parseJsonBody(event.request);\n\tif (\"error\" in result) return jsonBodyError(result, requestId);\n\tconst body = result.data;\n\tconst toggle = await performAddonToggle(state, name, typeof body.enabled === \"boolean\" ? body.enabled : void 0, requestId);\n\tif (!toggle.ok) return errorResponse(500, \"internal_error\", toggle.error, {}, requestId);\n\treturn jsonResponse(200, {\n\t\tok: true,\n\t\taddon: name,\n\t\tenabled: toggle.enabled,\n\t\tchanged: toggle.changed\n\t}, requestId);\n};\n//#endregion\nexport { GET, POST };\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,70 @@
1
+ import { d as getRequestId, h as jsonResponse } from './helpers-CX6xRBmt.js';
2
+ import { execFile } from 'node:child_process';
3
+ import { promisify } from 'node:util';
4
+ import './src-BkvQ5Uuf.js';
5
+ import './chunk-CLZ62Ad-.js';
6
+ import 'node:module';
7
+ import 'node:fs';
8
+ import 'node:path';
9
+ import 'node:os';
10
+ import 'buffer';
11
+ import 'node:url';
12
+ import 'node:crypto';
13
+ import 'events';
14
+ import 'fs';
15
+ import 'node:events';
16
+ import 'node:stream';
17
+ import 'node:string_decoder';
18
+ import 'path';
19
+ import 'assert';
20
+ import 'zlib';
21
+ import 'node:assert';
22
+ import 'node:fs/promises';
23
+ import './endpoints-Drq_J-2Z.js';
24
+
25
+ //#region src/routes/guardian/health/+server.ts
26
+ var execFileAsync = promisify(execFile);
27
+ /**
28
+ * Guardian health — queries the running container directly.
29
+ *
30
+ * Guardian has no host port mapping in the 0.11.0+ layout (it's reachable
31
+ * only on the internal channel_lan/assistant_net networks). The previous
32
+ * implementation read the UI's in-memory ControlPlaneState, which is stale
33
+ * whenever the stack was started by something other than the UI itself
34
+ * (CLI, docker compose directly, AppImage on a pre-existing stack).
35
+ *
36
+ * `docker container inspect ... --format '{{.State.Health.Status}}'` is the
37
+ * authoritative source: it reads the compose-defined healthcheck the
38
+ * guardian container already runs internally. Same approach as the
39
+ * admin-tools-plugin host-side health-check tool.
40
+ */
41
+ var GET = async (event) => {
42
+ const requestId = getRequestId(event);
43
+ try {
44
+ const { stdout } = await execFileAsync("docker", [
45
+ "container",
46
+ "inspect",
47
+ "openpalm-guardian-1",
48
+ "--format",
49
+ "{{.State.Health.Status}}"
50
+ ], { timeout: 5e3 });
51
+ const status = stdout.trim();
52
+ if (status === "healthy") return jsonResponse(200, {
53
+ status: "ok",
54
+ service: "guardian"
55
+ }, requestId);
56
+ return jsonResponse(503, {
57
+ status: status || "unknown",
58
+ service: "guardian"
59
+ }, requestId);
60
+ } catch (err) {
61
+ return jsonResponse(503, {
62
+ status: "unreachable",
63
+ service: "guardian",
64
+ error: err instanceof Error ? err.message : String(err)
65
+ }, requestId);
66
+ }
67
+ };
68
+
69
+ export { GET };
70
+ //# sourceMappingURL=_server.ts-BkoJOqrr.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts-BkoJOqrr.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/guardian/health/_server.ts.js"],"sourcesContent":["import { l as jsonResponse, o as getRequestId } from \"../../../../chunks/helpers.js\";\nimport { execFile } from \"node:child_process\";\nimport { promisify } from \"node:util\";\n//#region src/routes/guardian/health/+server.ts\nvar execFileAsync = promisify(execFile);\n/**\n* Guardian health — queries the running container directly.\n*\n* Guardian has no host port mapping in the 0.11.0+ layout (it's reachable\n* only on the internal channel_lan/assistant_net networks). The previous\n* implementation read the UI's in-memory ControlPlaneState, which is stale\n* whenever the stack was started by something other than the UI itself\n* (CLI, docker compose directly, AppImage on a pre-existing stack).\n*\n* `docker container inspect ... --format '{{.State.Health.Status}}'` is the\n* authoritative source: it reads the compose-defined healthcheck the\n* guardian container already runs internally. Same approach as the\n* admin-tools-plugin host-side health-check tool.\n*/\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\ttry {\n\t\tconst { stdout } = await execFileAsync(\"docker\", [\n\t\t\t\"container\",\n\t\t\t\"inspect\",\n\t\t\t\"openpalm-guardian-1\",\n\t\t\t\"--format\",\n\t\t\t\"{{.State.Health.Status}}\"\n\t\t], { timeout: 5e3 });\n\t\tconst status = stdout.trim();\n\t\tif (status === \"healthy\") return jsonResponse(200, {\n\t\t\tstatus: \"ok\",\n\t\t\tservice: \"guardian\"\n\t\t}, requestId);\n\t\treturn jsonResponse(503, {\n\t\t\tstatus: status || \"unknown\",\n\t\t\tservice: \"guardian\"\n\t\t}, requestId);\n\t} catch (err) {\n\t\treturn jsonResponse(503, {\n\t\t\tstatus: \"unreachable\",\n\t\t\tservice: \"guardian\",\n\t\t\terror: err instanceof Error ? err.message : String(err)\n\t\t}, requestId);\n\t}\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAGA;AACA,IAAI,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC;AACvC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,IAAI;AACL,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,aAAa,CAAC,QAAQ,EAAE;AACnD,GAAG,WAAW;AACd,GAAG,SAAS;AACZ,GAAG,qBAAqB;AACxB,GAAG,UAAU;AACb,GAAG;AACH,GAAG,EAAE,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC;AACtB,EAAE,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,EAAE;AAC9B,EAAE,IAAI,MAAM,KAAK,SAAS,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE;AACrD,GAAG,MAAM,EAAE,IAAI;AACf,GAAG,OAAO,EAAE;AACZ,GAAG,EAAE,SAAS,CAAC;AACf,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE;AAC3B,GAAG,MAAM,EAAE,MAAM,IAAI,SAAS;AAC9B,GAAG,OAAO,EAAE;AACZ,GAAG,EAAE,SAAS,CAAC;AACf,CAAC,CAAC,CAAC,OAAO,GAAG,EAAE;AACf,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE;AAC3B,GAAG,MAAM,EAAE,aAAa;AACxB,GAAG,OAAO,EAAE,UAAU;AACtB,GAAG,KAAK,EAAE,GAAG,YAAY,KAAK,GAAG,GAAG,CAAC,OAAO,GAAG,MAAM,CAAC,GAAG;AACzD,GAAG,EAAE,SAAS,CAAC;AACf,CAAC;AACD;;;;"}
@@ -0,0 +1,40 @@
1
+ import { ap as validateProposedState, y as createLogger } from './src-BkvQ5Uuf.js';
2
+ import { b as getState } from './endpoints-Drq_J-2Z.js';
3
+ import { d as getRequestId, r as requireAdmin, h as jsonResponse } from './helpers-CX6xRBmt.js';
4
+ import './chunk-CLZ62Ad-.js';
5
+ import 'node:module';
6
+ import 'node:fs';
7
+ import 'node:path';
8
+ import 'node:child_process';
9
+ import 'node:os';
10
+ import 'buffer';
11
+ import 'node:url';
12
+ import 'node:crypto';
13
+ import 'events';
14
+ import 'fs';
15
+ import 'node:events';
16
+ import 'node:stream';
17
+ import 'node:string_decoder';
18
+ import 'path';
19
+ import 'assert';
20
+ import 'zlib';
21
+ import 'node:assert';
22
+ import 'node:fs/promises';
23
+
24
+ //#region src/routes/admin/config/validate/+server.ts
25
+ var logger = createLogger("admin.config.validate");
26
+ var GET = async (event) => {
27
+ const requestId = getRequestId(event);
28
+ const authErr = requireAdmin(event, requestId);
29
+ if (authErr) return authErr;
30
+ const result = await validateProposedState(getState());
31
+ if (!result.ok) logger.warn("config validation failed", {
32
+ requestId,
33
+ errors: result.errors,
34
+ warnings: result.warnings
35
+ });
36
+ return jsonResponse(200, result, requestId);
37
+ };
38
+
39
+ export { GET };
40
+ //# sourceMappingURL=_server.ts-Bl0YOh50.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_server.ts-Bl0YOh50.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/config/validate/_server.ts.js"],"sourcesContent":["import { Nt as createLogger, z as validateProposedState } from \"../../../../../chunks/src.js\";\nimport { c as getState } from \"../../../../../chunks/endpoints.js\";\nimport { d as requireAdmin, l as jsonResponse, o as getRequestId } from \"../../../../../chunks/helpers.js\";\n//#region src/routes/admin/config/validate/+server.ts\nvar logger = createLogger(\"admin.config.validate\");\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authErr = requireAdmin(event, requestId);\n\tif (authErr) return authErr;\n\tconst result = await validateProposedState(getState());\n\tif (!result.ok) logger.warn(\"config validation failed\", {\n\t\trequestId,\n\t\terrors: result.errors,\n\t\twarnings: result.warnings\n\t});\n\treturn jsonResponse(200, result, requestId);\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAGA;AACA,IAAI,MAAM,GAAG,YAAY,CAAC,uBAAuB,CAAC;AAC/C,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AAC/C,CAAC,IAAI,OAAO,EAAE,OAAO,OAAO;AAC5B,CAAC,MAAM,MAAM,GAAG,MAAM,qBAAqB,CAAC,QAAQ,EAAE,CAAC;AACvD,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE;AACzD,EAAE,SAAS;AACX,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM;AACvB,EAAE,QAAQ,EAAE,MAAM,CAAC;AACnB,EAAE,CAAC;AACH,CAAC,OAAO,YAAY,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC;AAC5C;;;;"}