@openpalm/ui 0.12.39 → 0.12.40

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 (301) hide show
  1. package/build/.openpalm-ui-version +1 -1
  2. package/build/client/_app/immutable/chunks/Bsg7sBlb.js +3 -0
  3. package/build/client/_app/immutable/chunks/Bsg7sBlb.js.br +0 -0
  4. package/build/client/_app/immutable/chunks/Bsg7sBlb.js.gz +0 -0
  5. package/build/client/_app/immutable/chunks/{CbjV9aWv.js → Czcr5HB0.js} +1 -1
  6. package/build/client/_app/immutable/chunks/Czcr5HB0.js.br +0 -0
  7. package/build/client/_app/immutable/chunks/Czcr5HB0.js.gz +0 -0
  8. package/build/client/_app/immutable/chunks/{Db-TLwUL.js → DUJX2MYt.js} +1 -1
  9. package/build/client/_app/immutable/chunks/DUJX2MYt.js.br +0 -0
  10. package/build/client/_app/immutable/chunks/DUJX2MYt.js.gz +0 -0
  11. package/build/client/_app/immutable/chunks/DlYBvMRy.js +1 -0
  12. package/build/client/_app/immutable/chunks/DlYBvMRy.js.br +2 -0
  13. package/build/client/_app/immutable/chunks/DlYBvMRy.js.gz +0 -0
  14. package/build/client/_app/immutable/entry/{app.DnBBy3p-.js → app.x5ZVslqs.js} +2 -2
  15. package/build/client/_app/immutable/entry/app.x5ZVslqs.js.br +0 -0
  16. package/build/client/_app/immutable/entry/app.x5ZVslqs.js.gz +0 -0
  17. package/build/client/_app/immutable/entry/start.DCJDp6vd.js +1 -0
  18. package/build/client/_app/immutable/entry/start.DCJDp6vd.js.br +1 -0
  19. package/build/client/_app/immutable/entry/start.DCJDp6vd.js.gz +0 -0
  20. package/build/client/_app/immutable/nodes/{1.BZwp0xOZ.js → 1.ogX3FFAz.js} +1 -1
  21. package/build/client/_app/immutable/nodes/1.ogX3FFAz.js.br +0 -0
  22. package/build/client/_app/immutable/nodes/1.ogX3FFAz.js.gz +0 -0
  23. package/build/client/_app/immutable/nodes/{4.CWFpIl_V.js → 4.Manm8y12.js} +2 -2
  24. package/build/client/_app/immutable/nodes/4.Manm8y12.js.br +0 -0
  25. package/build/client/_app/immutable/nodes/4.Manm8y12.js.gz +0 -0
  26. package/build/client/_app/immutable/nodes/{5.BjjtMuH9.js → 5.Be7F1t9M.js} +1 -1
  27. package/build/client/_app/immutable/nodes/5.Be7F1t9M.js.br +0 -0
  28. package/build/client/_app/immutable/nodes/5.Be7F1t9M.js.gz +0 -0
  29. package/build/client/_app/immutable/nodes/{6.BmRYMxmN.js → 6.BJuDlVTi.js} +1 -1
  30. package/build/client/_app/immutable/nodes/6.BJuDlVTi.js.br +0 -0
  31. package/build/client/_app/immutable/nodes/6.BJuDlVTi.js.gz +0 -0
  32. package/build/client/_app/immutable/nodes/{7.Ckz2SrmP.js → 7.KhiZ1Qr0.js} +1 -1
  33. package/build/client/_app/immutable/nodes/7.KhiZ1Qr0.js.br +0 -0
  34. package/build/client/_app/immutable/nodes/7.KhiZ1Qr0.js.gz +0 -0
  35. package/build/client/_app/immutable/nodes/{8.BUpRt-6y.js → 8.BH307vA6.js} +1 -1
  36. package/build/client/_app/immutable/nodes/8.BH307vA6.js.br +0 -0
  37. package/build/client/_app/immutable/nodes/8.BH307vA6.js.gz +0 -0
  38. package/build/client/_app/version.json +1 -1
  39. package/build/client/_app/version.json.br +1 -1
  40. package/build/client/_app/version.json.gz +0 -0
  41. package/build/server/chunks/1-Cz5RQYrU.js +9 -0
  42. package/build/server/chunks/{1-DI42Ccm8.js.map → 1-Cz5RQYrU.js.map} +1 -1
  43. package/build/server/chunks/{10-DygJsCTt.js → 10-GWklmSZJ.js} +5 -5
  44. package/build/server/chunks/{10-DygJsCTt.js.map → 10-GWklmSZJ.js.map} +1 -1
  45. package/build/server/chunks/{4-OI7kefFJ.js → 4-D0d1egcA.js} +3 -3
  46. package/build/server/chunks/{4-OI7kefFJ.js.map → 4-D0d1egcA.js.map} +1 -1
  47. package/build/server/chunks/{5-1Fo1493W.js → 5-Qirv8w3l.js} +3 -3
  48. package/build/server/chunks/{5-1Fo1493W.js.map → 5-Qirv8w3l.js.map} +1 -1
  49. package/build/server/chunks/{6-C0miH3m9.js → 6-nw0G5ylV.js} +3 -3
  50. package/build/server/chunks/{6-C0miH3m9.js.map → 6-nw0G5ylV.js.map} +1 -1
  51. package/build/server/chunks/{7-D1tRpH-T.js → 7-DB0kUWf8.js} +3 -3
  52. package/build/server/chunks/{7-D1tRpH-T.js.map → 7-DB0kUWf8.js.map} +1 -1
  53. package/build/server/chunks/{8-BUn30EAI.js → 8-BzkBAq7X.js} +3 -3
  54. package/build/server/chunks/{8-BUn30EAI.js.map → 8-BzkBAq7X.js.map} +1 -1
  55. package/build/server/chunks/{Navbar-V5WYYroV.js → Navbar-MfQzgadK.js} +3 -3
  56. package/build/server/chunks/{Navbar-V5WYYroV.js.map → Navbar-MfQzgadK.js.map} +1 -1
  57. package/build/server/chunks/{_page.svelte-B0LQjTTl.js → _page.svelte-Bo3seukm.js} +3 -3
  58. package/build/server/chunks/{_page.svelte-B0LQjTTl.js.map → _page.svelte-Bo3seukm.js.map} +1 -1
  59. package/build/server/chunks/{_page.svelte-BUtdAAHy.js → _page.svelte-BxgZa05w.js} +5 -5
  60. package/build/server/chunks/{_page.svelte-BUtdAAHy.js.map → _page.svelte-BxgZa05w.js.map} +1 -1
  61. package/build/server/chunks/{_page.svelte-BvgIrB0l.js → _page.svelte-HvXtL0OF.js} +5 -5
  62. package/build/server/chunks/{_page.svelte-BvgIrB0l.js.map → _page.svelte-HvXtL0OF.js.map} +1 -1
  63. package/build/server/chunks/{_page.svelte-DC5mfPYI.js → _page.svelte-K7mqxOfx.js} +5 -5
  64. package/build/server/chunks/{_page.svelte-DC5mfPYI.js.map → _page.svelte-K7mqxOfx.js.map} +1 -1
  65. package/build/server/chunks/{_page.svelte-rMzAcw6P.js → _page.svelte-yYYXLkkv.js} +3 -3
  66. package/build/server/chunks/{_page.svelte-rMzAcw6P.js.map → _page.svelte-yYYXLkkv.js.map} +1 -1
  67. package/build/server/chunks/{_server.ts-DtzCH63P.js → _server.ts--ZkUtGm5.js} +4 -4
  68. package/build/server/chunks/{_server.ts-DtzCH63P.js.map → _server.ts--ZkUtGm5.js.map} +1 -1
  69. package/build/server/chunks/{_server.ts-BTcHO5bX.js → _server.ts-2yT-HeDo.js} +5 -5
  70. package/build/server/chunks/{_server.ts-BTcHO5bX.js.map → _server.ts-2yT-HeDo.js.map} +1 -1
  71. package/build/server/chunks/{_server.ts-Cnm-gOvs.js → _server.ts-9bpEdxei.js} +7 -7
  72. package/build/server/chunks/{_server.ts-Cnm-gOvs.js.map → _server.ts-9bpEdxei.js.map} +1 -1
  73. package/build/server/chunks/{_server.ts-6nz9WpjA.js → _server.ts-B0Q7kabg.js} +5 -5
  74. package/build/server/chunks/{_server.ts-6nz9WpjA.js.map → _server.ts-B0Q7kabg.js.map} +1 -1
  75. package/build/server/chunks/{_server.ts-BnMSj5yz.js → _server.ts-B8e761jl.js} +6 -6
  76. package/build/server/chunks/{_server.ts-BnMSj5yz.js.map → _server.ts-B8e761jl.js.map} +1 -1
  77. package/build/server/chunks/{_server.ts-DnbvDRgj.js → _server.ts-B9oPs4BP.js} +6 -6
  78. package/build/server/chunks/{_server.ts-DnbvDRgj.js.map → _server.ts-B9oPs4BP.js.map} +1 -1
  79. package/build/server/chunks/{_server.ts-DFf5g6zS.js → _server.ts-BEQKCY3C.js} +6 -6
  80. package/build/server/chunks/{_server.ts-DFf5g6zS.js.map → _server.ts-BEQKCY3C.js.map} +1 -1
  81. package/build/server/chunks/{_server.ts-D_FDcuWo.js → _server.ts-BFeaJaPP.js} +5 -5
  82. package/build/server/chunks/{_server.ts-D_FDcuWo.js.map → _server.ts-BFeaJaPP.js.map} +1 -1
  83. package/build/server/chunks/{_server.ts-CAryEfg5.js → _server.ts-BJ8iu9GG.js} +5 -5
  84. package/build/server/chunks/{_server.ts-CAryEfg5.js.map → _server.ts-BJ8iu9GG.js.map} +1 -1
  85. package/build/server/chunks/{_server.ts-5uPW017t.js → _server.ts-BRXhpPBA.js} +5 -5
  86. package/build/server/chunks/{_server.ts-5uPW017t.js.map → _server.ts-BRXhpPBA.js.map} +1 -1
  87. package/build/server/chunks/{_server.ts-DcFHX6Eq.js → _server.ts-BSEDW53_.js} +5 -5
  88. package/build/server/chunks/{_server.ts-DcFHX6Eq.js.map → _server.ts-BSEDW53_.js.map} +1 -1
  89. package/build/server/chunks/{_server.ts-BK7Faygt.js → _server.ts-BXZITnq1.js} +7 -7
  90. package/build/server/chunks/{_server.ts-BK7Faygt.js.map → _server.ts-BXZITnq1.js.map} +1 -1
  91. package/build/server/chunks/{_server.ts-BNoCPvGI.js → _server.ts-Bj4apCtM.js} +5 -5
  92. package/build/server/chunks/{_server.ts-BNoCPvGI.js.map → _server.ts-Bj4apCtM.js.map} +1 -1
  93. package/build/server/chunks/{_server.ts-CcxP6ryz.js → _server.ts-BkRngUey.js} +5 -5
  94. package/build/server/chunks/{_server.ts-CcxP6ryz.js.map → _server.ts-BkRngUey.js.map} +1 -1
  95. package/build/server/chunks/{_server.ts-Pd-Jn9ra.js → _server.ts-Bkb73mr9.js} +7 -7
  96. package/build/server/chunks/{_server.ts-Pd-Jn9ra.js.map → _server.ts-Bkb73mr9.js.map} +1 -1
  97. package/build/server/chunks/{_server.ts-Db7dBiHY.js → _server.ts-Br2dODCL.js} +5 -5
  98. package/build/server/chunks/{_server.ts-Db7dBiHY.js.map → _server.ts-Br2dODCL.js.map} +1 -1
  99. package/build/server/chunks/{_server.ts-hwbxaTbX.js → _server.ts-Brrms0Fc.js} +6 -6
  100. package/build/server/chunks/{_server.ts-hwbxaTbX.js.map → _server.ts-Brrms0Fc.js.map} +1 -1
  101. package/build/server/chunks/{_server.ts-B1Mt06_U.js → _server.ts-BtaY1y3y.js} +2 -2
  102. package/build/server/chunks/{_server.ts-B1Mt06_U.js.map → _server.ts-BtaY1y3y.js.map} +1 -1
  103. package/build/server/chunks/{_server.ts-B54alxy9.js → _server.ts-BxRl9hS5.js} +5 -5
  104. package/build/server/chunks/{_server.ts-B54alxy9.js.map → _server.ts-BxRl9hS5.js.map} +1 -1
  105. package/build/server/chunks/{_server.ts-DSgNeCHN.js → _server.ts-Bxz62kXm.js} +5 -5
  106. package/build/server/chunks/{_server.ts-DSgNeCHN.js.map → _server.ts-Bxz62kXm.js.map} +1 -1
  107. package/build/server/chunks/{_server.ts-DKSJKE2w.js → _server.ts-ByyvEmAQ.js} +6 -6
  108. package/build/server/chunks/{_server.ts-DKSJKE2w.js.map → _server.ts-ByyvEmAQ.js.map} +1 -1
  109. package/build/server/chunks/{_server.ts-B6gM3i7f.js → _server.ts-C-Xiy-iY.js} +5 -5
  110. package/build/server/chunks/{_server.ts-B6gM3i7f.js.map → _server.ts-C-Xiy-iY.js.map} +1 -1
  111. package/build/server/chunks/{_server.ts-DRqaoQDK.js → _server.ts-C4TgNZH0.js} +5 -5
  112. package/build/server/chunks/{_server.ts-DRqaoQDK.js.map → _server.ts-C4TgNZH0.js.map} +1 -1
  113. package/build/server/chunks/{_server.ts-CVJbAy4Q.js → _server.ts-C6SCNV2o.js} +5 -5
  114. package/build/server/chunks/{_server.ts-CVJbAy4Q.js.map → _server.ts-C6SCNV2o.js.map} +1 -1
  115. package/build/server/chunks/{_server.ts-BtUfRMI8.js → _server.ts-CA4hOrnY.js} +5 -5
  116. package/build/server/chunks/{_server.ts-BtUfRMI8.js.map → _server.ts-CA4hOrnY.js.map} +1 -1
  117. package/build/server/chunks/{_server.ts-CxUuC7uQ.js → _server.ts-CD7Ib3A4.js} +5 -5
  118. package/build/server/chunks/{_server.ts-CxUuC7uQ.js.map → _server.ts-CD7Ib3A4.js.map} +1 -1
  119. package/build/server/chunks/{_server.ts-x1SEistQ.js → _server.ts-CGN2odjK.js} +5 -5
  120. package/build/server/chunks/{_server.ts-x1SEistQ.js.map → _server.ts-CGN2odjK.js.map} +1 -1
  121. package/build/server/chunks/{_server.ts-C6uGNPXd.js → _server.ts-CGyN5jXH.js} +2 -2
  122. package/build/server/chunks/{_server.ts-C6uGNPXd.js.map → _server.ts-CGyN5jXH.js.map} +1 -1
  123. package/build/server/chunks/{_server.ts-BEdiBrmg.js → _server.ts-CK6_9G3w.js} +5 -5
  124. package/build/server/chunks/{_server.ts-BEdiBrmg.js.map → _server.ts-CK6_9G3w.js.map} +1 -1
  125. package/build/server/chunks/{_server.ts-CeOAlknT.js → _server.ts-CKvJq7Mj.js} +5 -5
  126. package/build/server/chunks/{_server.ts-CeOAlknT.js.map → _server.ts-CKvJq7Mj.js.map} +1 -1
  127. package/build/server/chunks/{_server.ts-B1dKp4Xy.js → _server.ts-CMTGEK8b.js} +5 -5
  128. package/build/server/chunks/{_server.ts-B1dKp4Xy.js.map → _server.ts-CMTGEK8b.js.map} +1 -1
  129. package/build/server/chunks/{_server.ts-V3m3UigC.js → _server.ts-CTmNXikA.js} +5 -5
  130. package/build/server/chunks/{_server.ts-V3m3UigC.js.map → _server.ts-CTmNXikA.js.map} +1 -1
  131. package/build/server/chunks/{_server.ts-CoESpzvX.js → _server.ts-C__j2tre.js} +5 -5
  132. package/build/server/chunks/{_server.ts-CoESpzvX.js.map → _server.ts-C__j2tre.js.map} +1 -1
  133. package/build/server/chunks/{_server.ts-kj-V1b1t.js → _server.ts-Cb6UITYH.js} +6 -6
  134. package/build/server/chunks/{_server.ts-kj-V1b1t.js.map → _server.ts-Cb6UITYH.js.map} +1 -1
  135. package/build/server/chunks/{_server.ts-B8QHjkBw.js → _server.ts-Cbz8aj-X.js} +5 -5
  136. package/build/server/chunks/{_server.ts-B8QHjkBw.js.map → _server.ts-Cbz8aj-X.js.map} +1 -1
  137. package/build/server/chunks/{_server.ts-B4si1bjV.js → _server.ts-Cg2y0otm.js} +5 -5
  138. package/build/server/chunks/{_server.ts-B4si1bjV.js.map → _server.ts-Cg2y0otm.js.map} +1 -1
  139. package/build/server/chunks/{_server.ts-DcDLi8Qf.js → _server.ts-CkJ-gL3U.js} +5 -5
  140. package/build/server/chunks/{_server.ts-DcDLi8Qf.js.map → _server.ts-CkJ-gL3U.js.map} +1 -1
  141. package/build/server/chunks/{_server.ts-CrJC5xTb.js → _server.ts-CmECdczB.js} +5 -5
  142. package/build/server/chunks/{_server.ts-CrJC5xTb.js.map → _server.ts-CmECdczB.js.map} +1 -1
  143. package/build/server/chunks/{_server.ts-gmUUZpH3.js → _server.ts-CnFlmnho.js} +5 -5
  144. package/build/server/chunks/{_server.ts-gmUUZpH3.js.map → _server.ts-CnFlmnho.js.map} +1 -1
  145. package/build/server/chunks/{_server.ts-BsxDObRY.js → _server.ts-Ct5iAA3a.js} +5 -5
  146. package/build/server/chunks/{_server.ts-BsxDObRY.js.map → _server.ts-Ct5iAA3a.js.map} +1 -1
  147. package/build/server/chunks/{_server.ts-BCKbgdwP.js → _server.ts-CwYwlWaT.js} +6 -6
  148. package/build/server/chunks/{_server.ts-BCKbgdwP.js.map → _server.ts-CwYwlWaT.js.map} +1 -1
  149. package/build/server/chunks/{_server.ts-DAHBdspJ.js → _server.ts-CxLoJOEq.js} +2 -2
  150. package/build/server/chunks/{_server.ts-DAHBdspJ.js.map → _server.ts-CxLoJOEq.js.map} +1 -1
  151. package/build/server/chunks/{_server.ts-2PRYL_4c.js → _server.ts-Cz-sL67f.js} +6 -6
  152. package/build/server/chunks/{_server.ts-2PRYL_4c.js.map → _server.ts-Cz-sL67f.js.map} +1 -1
  153. package/build/server/chunks/{_server.ts-DfkUsytF.js → _server.ts-CzdwyjbW.js} +5 -5
  154. package/build/server/chunks/{_server.ts-DfkUsytF.js.map → _server.ts-CzdwyjbW.js.map} +1 -1
  155. package/build/server/chunks/{_server.ts-J3KbaPxH.js → _server.ts-D0k0kBup.js} +5 -5
  156. package/build/server/chunks/{_server.ts-J3KbaPxH.js.map → _server.ts-D0k0kBup.js.map} +1 -1
  157. package/build/server/chunks/{_server.ts-C87ZtG9i.js → _server.ts-D5Z-pC-W.js} +5 -5
  158. package/build/server/chunks/{_server.ts-C87ZtG9i.js.map → _server.ts-D5Z-pC-W.js.map} +1 -1
  159. package/build/server/chunks/{_server.ts-DGwTMfbh.js → _server.ts-D70c-Aqa.js} +2 -2
  160. package/build/server/chunks/{_server.ts-DGwTMfbh.js.map → _server.ts-D70c-Aqa.js.map} +1 -1
  161. package/build/server/chunks/{_server.ts-DhCru5sp.js → _server.ts-DBTPrMhg.js} +5 -5
  162. package/build/server/chunks/{_server.ts-DhCru5sp.js.map → _server.ts-DBTPrMhg.js.map} +1 -1
  163. package/build/server/chunks/{_server.ts-CpucwebI.js → _server.ts-DI0pMYif.js} +5 -5
  164. package/build/server/chunks/{_server.ts-CpucwebI.js.map → _server.ts-DI0pMYif.js.map} +1 -1
  165. package/build/server/chunks/{_server.ts-Dp1xtf0U.js → _server.ts-DMCQqcJv.js} +5 -5
  166. package/build/server/chunks/{_server.ts-Dp1xtf0U.js.map → _server.ts-DMCQqcJv.js.map} +1 -1
  167. package/build/server/chunks/{_server.ts-EGQ6i8V3.js → _server.ts-DQMqeajx.js} +5 -5
  168. package/build/server/chunks/{_server.ts-EGQ6i8V3.js.map → _server.ts-DQMqeajx.js.map} +1 -1
  169. package/build/server/chunks/{_server.ts-BxI2nF8q.js → _server.ts-DQuDx-Ds.js} +4 -4
  170. package/build/server/chunks/{_server.ts-BxI2nF8q.js.map → _server.ts-DQuDx-Ds.js.map} +1 -1
  171. package/build/server/chunks/{_server.ts-n58AjSu6.js → _server.ts-DR4cbcRn.js} +5 -5
  172. package/build/server/chunks/{_server.ts-n58AjSu6.js.map → _server.ts-DR4cbcRn.js.map} +1 -1
  173. package/build/server/chunks/{_server.ts-Ta0swYhp.js → _server.ts-DRpzDudm.js} +6 -6
  174. package/build/server/chunks/{_server.ts-Ta0swYhp.js.map → _server.ts-DRpzDudm.js.map} +1 -1
  175. package/build/server/chunks/{_server.ts-CCjVfk1l.js → _server.ts-DUoqgeUZ.js} +5 -5
  176. package/build/server/chunks/{_server.ts-CCjVfk1l.js.map → _server.ts-DUoqgeUZ.js.map} +1 -1
  177. package/build/server/chunks/{_server.ts-CwXIED0N.js → _server.ts-D_1OrRQF.js} +5 -5
  178. package/build/server/chunks/{_server.ts-CwXIED0N.js.map → _server.ts-D_1OrRQF.js.map} +1 -1
  179. package/build/server/chunks/{_server.ts-C8wAyyXo.js → _server.ts-DcLzi8vU.js} +5 -5
  180. package/build/server/chunks/{_server.ts-C8wAyyXo.js.map → _server.ts-DcLzi8vU.js.map} +1 -1
  181. package/build/server/chunks/{_server.ts-CpL-a7h0.js → _server.ts-Dd0KwCud.js} +5 -5
  182. package/build/server/chunks/{_server.ts-CpL-a7h0.js.map → _server.ts-Dd0KwCud.js.map} +1 -1
  183. package/build/server/chunks/{_server.ts-D1H15sgw.js → _server.ts-De6P98pT.js} +6 -6
  184. package/build/server/chunks/{_server.ts-D1H15sgw.js.map → _server.ts-De6P98pT.js.map} +1 -1
  185. package/build/server/chunks/{_server.ts-Bo-SuQhE.js → _server.ts-DeFmBzxl.js} +7 -7
  186. package/build/server/chunks/{_server.ts-Bo-SuQhE.js.map → _server.ts-DeFmBzxl.js.map} +1 -1
  187. package/build/server/chunks/{_server.ts-Cb_27o_D.js → _server.ts-DgYL3Rf8.js} +6 -6
  188. package/build/server/chunks/{_server.ts-Cb_27o_D.js.map → _server.ts-DgYL3Rf8.js.map} +1 -1
  189. package/build/server/chunks/{_server.ts-DF-u2j3p.js → _server.ts-DhWwpNRX.js} +6 -6
  190. package/build/server/chunks/{_server.ts-DF-u2j3p.js.map → _server.ts-DhWwpNRX.js.map} +1 -1
  191. package/build/server/chunks/{_server.ts-CY1Jr9Km.js → _server.ts-DjBqs3sh.js} +5 -5
  192. package/build/server/chunks/{_server.ts-CY1Jr9Km.js.map → _server.ts-DjBqs3sh.js.map} +1 -1
  193. package/build/server/chunks/{_server.ts-CfLjcz8_.js → _server.ts-DjRgrCXP.js} +5 -5
  194. package/build/server/chunks/{_server.ts-CfLjcz8_.js.map → _server.ts-DjRgrCXP.js.map} +1 -1
  195. package/build/server/chunks/{_server.ts-CAjC-Ve4.js → _server.ts-DrWr-f4D.js} +8 -8
  196. package/build/server/chunks/{_server.ts-CAjC-Ve4.js.map → _server.ts-DrWr-f4D.js.map} +1 -1
  197. package/build/server/chunks/{_server.ts-BZl4_sRT.js → _server.ts-DsCCbc7p.js} +5 -5
  198. package/build/server/chunks/{_server.ts-BZl4_sRT.js.map → _server.ts-DsCCbc7p.js.map} +1 -1
  199. package/build/server/chunks/{_server.ts-B660haVW.js → _server.ts-DwF8M0kr.js} +2 -2
  200. package/build/server/chunks/{_server.ts-B660haVW.js.map → _server.ts-DwF8M0kr.js.map} +1 -1
  201. package/build/server/chunks/{_server.ts-DTsLjBNM.js → _server.ts-Dz-C2Nmu.js} +5 -5
  202. package/build/server/chunks/{_server.ts-DTsLjBNM.js.map → _server.ts-Dz-C2Nmu.js.map} +1 -1
  203. package/build/server/chunks/{_server.ts-CKdbcBzl.js → _server.ts-DzXKnq2N.js} +5 -5
  204. package/build/server/chunks/{_server.ts-CKdbcBzl.js.map → _server.ts-DzXKnq2N.js.map} +1 -1
  205. package/build/server/chunks/{_server.ts-KjM3wUGG.js → _server.ts-IouWelbn.js} +5 -5
  206. package/build/server/chunks/{_server.ts-KjM3wUGG.js.map → _server.ts-IouWelbn.js.map} +1 -1
  207. package/build/server/chunks/{_server.ts-DsKCoQso.js → _server.ts-Ju9K1rbS.js} +7 -7
  208. package/build/server/chunks/{_server.ts-DsKCoQso.js.map → _server.ts-Ju9K1rbS.js.map} +1 -1
  209. package/build/server/chunks/{_server.ts-Ba03_roq.js → _server.ts-MjwQ0EuY.js} +5 -5
  210. package/build/server/chunks/{_server.ts-Ba03_roq.js.map → _server.ts-MjwQ0EuY.js.map} +1 -1
  211. package/build/server/chunks/{_server.ts-sIwypueh.js → _server.ts-Ohcmf-UU.js} +7 -7
  212. package/build/server/chunks/{_server.ts-sIwypueh.js.map → _server.ts-Ohcmf-UU.js.map} +1 -1
  213. package/build/server/chunks/{_server.ts-DhEtmqoq.js → _server.ts-UoCdkgne.js} +5 -5
  214. package/build/server/chunks/{_server.ts-DhEtmqoq.js.map → _server.ts-UoCdkgne.js.map} +1 -1
  215. package/build/server/chunks/{_server.ts-BjncDl6d.js → _server.ts-Y40KAQmG.js} +5 -5
  216. package/build/server/chunks/{_server.ts-BjncDl6d.js.map → _server.ts-Y40KAQmG.js.map} +1 -1
  217. package/build/server/chunks/{_server.ts-C10U7CqH.js → _server.ts-ZMUj6upt.js} +5 -5
  218. package/build/server/chunks/{_server.ts-C10U7CqH.js.map → _server.ts-ZMUj6upt.js.map} +1 -1
  219. package/build/server/chunks/{_server.ts-Bbx8jcyu.js → _server.ts-aJxs9gSo.js} +5 -5
  220. package/build/server/chunks/{_server.ts-Bbx8jcyu.js.map → _server.ts-aJxs9gSo.js.map} +1 -1
  221. package/build/server/chunks/{_server.ts-BMc7celt.js → _server.ts-dZf0ei-L.js} +5 -5
  222. package/build/server/chunks/{_server.ts-BMc7celt.js.map → _server.ts-dZf0ei-L.js.map} +1 -1
  223. package/build/server/chunks/{_server.ts-BhrOidm_.js → _server.ts-i1Mau1S1.js} +5 -5
  224. package/build/server/chunks/{_server.ts-BhrOidm_.js.map → _server.ts-i1Mau1S1.js.map} +1 -1
  225. package/build/server/chunks/{_server.ts-F71eVdtD.js → _server.ts-q7jCzCNZ.js} +5 -5
  226. package/build/server/chunks/{_server.ts-F71eVdtD.js.map → _server.ts-q7jCzCNZ.js.map} +1 -1
  227. package/build/server/chunks/{_server.ts-DN5atb3V.js → _server.ts-wTH21Gfs.js} +5 -5
  228. package/build/server/chunks/{_server.ts-DN5atb3V.js.map → _server.ts-wTH21Gfs.js.map} +1 -1
  229. package/build/server/chunks/{_server.ts-CEREugmq.js → _server.ts-wrbya1ju.js} +5 -5
  230. package/build/server/chunks/{_server.ts-CEREugmq.js.map → _server.ts-wrbya1ju.js.map} +1 -1
  231. package/build/server/chunks/{_server.ts-BV-7x9MV.js → _server.ts-zg42LX8r.js} +5 -5
  232. package/build/server/chunks/{_server.ts-BV-7x9MV.js.map → _server.ts-zg42LX8r.js.map} +1 -1
  233. package/build/server/chunks/{addon-helpers-B6DRQ3aQ.js → addon-helpers-ued1MZ--.js} +3 -3
  234. package/build/server/chunks/{addon-helpers-B6DRQ3aQ.js.map → addon-helpers-ued1MZ--.js.map} +1 -1
  235. package/build/server/chunks/{akm-T56LQBSh.js → akm-CrbKHwz0.js} +2 -2
  236. package/build/server/chunks/{akm-T56LQBSh.js.map → akm-CrbKHwz0.js.map} +1 -1
  237. package/build/server/chunks/{catalog-BJWRR5YI.js → catalog-22TIo25l.js} +5 -5
  238. package/build/server/chunks/{catalog-BJWRR5YI.js.map → catalog-22TIo25l.js.map} +1 -1
  239. package/build/server/chunks/{client-CGdYxeP_.js → client-BOU1UMzN.js} +2 -2
  240. package/build/server/chunks/{client-CGdYxeP_.js.map → client-BOU1UMzN.js.map} +1 -1
  241. package/build/server/chunks/{config-Rsp7hkzb.js → config-CRy04H0c.js} +2 -2
  242. package/build/server/chunks/{config-Rsp7hkzb.js.map → config-CRy04H0c.js.map} +1 -1
  243. package/build/server/chunks/{docker-BErZemMD.js → docker-CiD7GCZ5.js} +2 -2
  244. package/build/server/chunks/{docker-BErZemMD.js.map → docker-CiD7GCZ5.js.map} +1 -1
  245. package/build/server/chunks/{endpoints-V56dw3W-.js → endpoints-Bt-t-ppF.js} +2 -2
  246. package/build/server/chunks/{endpoints-V56dw3W-.js.map → endpoints-Bt-t-ppF.js.map} +1 -1
  247. package/build/server/chunks/{error.svelte-CZeU9Oo-.js → error.svelte-BnVNIAYT.js} +4 -4
  248. package/build/server/chunks/{error.svelte-CZeU9Oo-.js.map → error.svelte-BnVNIAYT.js.map} +1 -1
  249. package/build/server/chunks/{helpers-BMquHUT_.js → helpers-BQUg4t3R.js} +3 -3
  250. package/build/server/chunks/{helpers-BMquHUT_.js.map → helpers-BQUg4t3R.js.map} +1 -1
  251. package/build/server/chunks/{hooks.server-Jfc2jjaF.js → hooks.server-CxXGUS34.js} +7 -7
  252. package/build/server/chunks/{hooks.server-Jfc2jjaF.js.map → hooks.server-CxXGUS34.js.map} +1 -1
  253. package/build/server/chunks/{http-ByElKmSy.js → http-vdLAxOhP.js} +2 -2
  254. package/build/server/chunks/{http-ByElKmSy.js.map → http-vdLAxOhP.js.map} +1 -1
  255. package/build/server/chunks/{internal-GqVcyxCX.js → internal-Wp089UCl.js} +3 -3
  256. package/build/server/chunks/{internal-GqVcyxCX.js.map → internal-Wp089UCl.js.map} +1 -1
  257. package/build/server/chunks/{migration-status-CG6Rlbre.js → migration-status-BTbMIQh2.js} +2 -2
  258. package/build/server/chunks/{migration-status-CG6Rlbre.js.map → migration-status-BTbMIQh2.js.map} +1 -1
  259. package/build/server/chunks/{session-cookie-DMI7Gl0P.js → session-cookie-CWm3gU2J.js} +2 -2
  260. package/build/server/chunks/{session-cookie-DMI7Gl0P.js.map → session-cookie-CWm3gU2J.js.map} +1 -1
  261. package/build/server/chunks/{setup-deploy-CdPn1xFW.js → setup-deploy-BzNm_sts.js} +2 -2
  262. package/build/server/chunks/{setup-deploy-CdPn1xFW.js.map → setup-deploy-BzNm_sts.js.map} +1 -1
  263. package/build/server/chunks/{src-Bn-AiiUV.js → src-DlScVN9s.js} +2 -2
  264. package/build/server/chunks/{src-Bn-AiiUV.js.map → src-DlScVN9s.js.map} +1 -1
  265. package/build/server/chunks/{state-BPtnWnun.js → state-OR3c9Jry.js} +2 -2
  266. package/build/server/chunks/{state-BPtnWnun.js.map → state-OR3c9Jry.js.map} +1 -1
  267. package/build/server/chunks/{state2-BVIN60Rn.js → state2-Dpf9TSKk.js} +2 -2
  268. package/build/server/chunks/{state2-BVIN60Rn.js.map → state2-Dpf9TSKk.js.map} +1 -1
  269. package/build/server/index.js +1 -1
  270. package/build/server/index.js.map +1 -1
  271. package/build/server/manifest.js +91 -91
  272. package/build/server/manifest.js.map +1 -1
  273. package/package.json +2 -2
  274. package/build/client/_app/immutable/chunks/B_vqAUCS.js +0 -3
  275. package/build/client/_app/immutable/chunks/B_vqAUCS.js.br +0 -0
  276. package/build/client/_app/immutable/chunks/B_vqAUCS.js.gz +0 -0
  277. package/build/client/_app/immutable/chunks/CLwjxMfU.js +0 -1
  278. package/build/client/_app/immutable/chunks/CLwjxMfU.js.br +0 -2
  279. package/build/client/_app/immutable/chunks/CLwjxMfU.js.gz +0 -0
  280. package/build/client/_app/immutable/chunks/CbjV9aWv.js.br +0 -0
  281. package/build/client/_app/immutable/chunks/CbjV9aWv.js.gz +0 -0
  282. package/build/client/_app/immutable/chunks/Db-TLwUL.js.br +0 -0
  283. package/build/client/_app/immutable/chunks/Db-TLwUL.js.gz +0 -0
  284. package/build/client/_app/immutable/entry/app.DnBBy3p-.js.br +0 -0
  285. package/build/client/_app/immutable/entry/app.DnBBy3p-.js.gz +0 -0
  286. package/build/client/_app/immutable/entry/start.DXxvAlLx.js +0 -1
  287. package/build/client/_app/immutable/entry/start.DXxvAlLx.js.br +0 -0
  288. package/build/client/_app/immutable/entry/start.DXxvAlLx.js.gz +0 -0
  289. package/build/client/_app/immutable/nodes/1.BZwp0xOZ.js.br +0 -1
  290. package/build/client/_app/immutable/nodes/1.BZwp0xOZ.js.gz +0 -0
  291. package/build/client/_app/immutable/nodes/4.CWFpIl_V.js.br +0 -0
  292. package/build/client/_app/immutable/nodes/4.CWFpIl_V.js.gz +0 -0
  293. package/build/client/_app/immutable/nodes/5.BjjtMuH9.js.br +0 -0
  294. package/build/client/_app/immutable/nodes/5.BjjtMuH9.js.gz +0 -0
  295. package/build/client/_app/immutable/nodes/6.BmRYMxmN.js.br +0 -0
  296. package/build/client/_app/immutable/nodes/6.BmRYMxmN.js.gz +0 -0
  297. package/build/client/_app/immutable/nodes/7.Ckz2SrmP.js.br +0 -0
  298. package/build/client/_app/immutable/nodes/7.Ckz2SrmP.js.gz +0 -0
  299. package/build/client/_app/immutable/nodes/8.BUpRt-6y.js.br +0 -0
  300. package/build/client/_app/immutable/nodes/8.BUpRt-6y.js.gz +0 -0
  301. package/build/server/chunks/1-DI42Ccm8.js +0 -9
@@ -1,10 +1,10 @@
1
1
  import { F as head, d as attr, s as escape_html, p as derived } from './dev-D85DamNs.js';
2
2
  import 'node:module';
3
- import { a as afterNavigate } from './client-CGdYxeP_.js';
4
- import { p as page } from './state2-BVIN60Rn.js';
3
+ import { a as afterNavigate } from './client-BOU1UMzN.js';
4
+ import { p as page } from './state2-Dpf9TSKk.js';
5
5
  import { o as endpointsService, m as chat, j as buildAdvancedIframeUrl } from './IconMic-DK0ZRKNm.js';
6
- import { N as Navbar } from './Navbar-V5WYYroV.js';
7
- import './internal-GqVcyxCX.js';
6
+ import { N as Navbar } from './Navbar-MfQzgadK.js';
7
+ import './internal-Wp089UCl.js';
8
8
  import './utils-BSRjJDrZ.js';
9
9
  import './chunk-CLZ62Ad-.js';
10
10
  import './theme-state.svelte-DshW_ZYI.js';
@@ -83,4 +83,4 @@ function _page($$renderer, $$props) {
83
83
  }
84
84
 
85
85
  export { _page as default };
86
- //# sourceMappingURL=_page.svelte-DC5mfPYI.js.map
86
+ //# sourceMappingURL=_page.svelte-K7mqxOfx.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_page.svelte-DC5mfPYI.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/advanced/_page.svelte.js"],"sourcesContent":["import { U as escape_html, V as attr, a as derived, s as head } from \"../../../chunks/dev.js\";\nimport \"../../../chunks/index-server.js\";\nimport { t as afterNavigate } from \"../../../chunks/client.js\";\nimport { t as page } from \"../../../chunks/state2.js\";\nimport \"../../../chunks/navigation.js\";\nimport { _ as chat, c as endpointsService, p as buildAdvancedIframeUrl } from \"../../../chunks/IconSoundOn.js\";\nimport { t as Navbar } from \"../../../chunks/Navbar.js\";\n//#region src/routes/advanced/+page.svelte\nfunction _page($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tconst active = derived(() => endpointsService.active);\n\t\tconst requestedSessionId = derived(() => page.url.searchParams.get(\"session\"));\n\t\tlet frameUrl = \"\";\n\t\tlet probeState = \"checking\";\n\t\tlet reconnecting = false;\n\t\tlet probeToken = 0;\n\t\tasync function resolve() {\n\t\t\tconst token = ++probeToken;\n\t\t\tprobeState = \"checking\";\n\t\t\tconst base = active()?.url ?? \"http://127.0.0.1:3800\";\n\t\t\ttry {\n\t\t\t\tconst root = await fetch(\"/proxy/assistant/\", { headers: { accept: \"text/html\" } });\n\t\t\t\tif (token !== probeToken) return;\n\t\t\t\tif (!root.ok) {\n\t\t\t\t\tprobeState = \"dead\";\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tlet url = base;\n\t\t\t\tif (requestedSessionId()) {\n\t\t\t\t\tconst res = await fetch(`/proxy/assistant/session/${encodeURIComponent(requestedSessionId())}`, { headers: { accept: \"application/json\" } });\n\t\t\t\t\tif (token !== probeToken) return;\n\t\t\t\t\tif (res.ok) {\n\t\t\t\t\t\tconst session = await res.json().catch(() => null);\n\t\t\t\t\t\tif (token !== probeToken) return;\n\t\t\t\t\t\turl = buildAdvancedIframeUrl(base, requestedSessionId(), session?.directory);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tframeUrl = url;\n\t\t\t\tprobeState = \"ready\";\n\t\t\t} catch {\n\t\t\t\tif (token !== probeToken) return;\n\t\t\t\tprobeState = \"dead\";\n\t\t\t}\n\t\t}\n\t\tafterNavigate(({ to }) => {\n\t\t\tconst sid = to?.url.searchParams.get(\"session\") ?? null;\n\t\t\tif (sid) chat.setActiveSessionId(sid);\n\t\t\tendpointsService.load().then(() => resolve());\n\t\t});\n\t\thead(\"1z0msvj\", $$renderer, ($$renderer) => {\n\t\t\t$$renderer.title(($$renderer) => {\n\t\t\t\t$$renderer.push(`<title>Advanced Chat — OpenPalm</title>`);\n\t\t\t});\n\t\t});\n\t\tNavbar($$renderer, {});\n\t\t$$renderer.push(`<!----> <div class=\"advanced-layout svelte-1z0msvj\">`);\n\t\tif (probeState === \"ready\") {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<!---->`);\n\t\t\t$$renderer.push(`<iframe class=\"opencode-frame svelte-1z0msvj\"${attr(\"src\", frameUrl)} title=\"OpenCode — Advanced Chat\" allow=\"clipboard-read; clipboard-write; microphone\"></iframe>`);\n\t\t\t$$renderer.push(`<!---->`);\n\t\t} else {\n\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<div class=\"advanced-status svelte-1z0msvj\"${attr(\"role\", probeState === \"dead\" ? \"alert\" : \"status\")} aria-live=\"polite\">`);\n\t\t\tif (probeState === \"checking\") {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<p class=\"status-line svelte-1z0msvj\">Connecting to ${escape_html(active()?.label ?? \"your assistant\")}…</p>`);\n\t\t\t} else {\n\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t$$renderer.push(`<h2 class=\"svelte-1z0msvj\">Can’t reach ${escape_html(active()?.label ?? \"your assistant\")}</h2> <p class=\"svelte-1z0msvj\">The connection looks dead or its session expired. Reconnect to try again, or pick a different assistant from the switcher above.</p> <button class=\"btn btn-primary btn-lg svelte-1z0msvj\"${attr(\"disabled\", reconnecting, true)}>${escape_html(\"Reconnect\")}</button>`);\n\t\t\t}\n\t\t\t$$renderer.push(`<!--]--></div>`);\n\t\t}\n\t\t$$renderer.push(`<!--]--></div>`);\n\t});\n}\n//#endregion\nexport { _page as default };\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_page.svelte-K7mqxOfx.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/advanced/_page.svelte.js"],"sourcesContent":["import { U as escape_html, V as attr, a as derived, s as head } from \"../../../chunks/dev.js\";\nimport \"../../../chunks/index-server.js\";\nimport { t as afterNavigate } from \"../../../chunks/client.js\";\nimport { t as page } from \"../../../chunks/state2.js\";\nimport \"../../../chunks/navigation.js\";\nimport { _ as chat, c as endpointsService, p as buildAdvancedIframeUrl } from \"../../../chunks/IconSoundOn.js\";\nimport { t as Navbar } from \"../../../chunks/Navbar.js\";\n//#region src/routes/advanced/+page.svelte\nfunction _page($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tconst active = derived(() => endpointsService.active);\n\t\tconst requestedSessionId = derived(() => page.url.searchParams.get(\"session\"));\n\t\tlet frameUrl = \"\";\n\t\tlet probeState = \"checking\";\n\t\tlet reconnecting = false;\n\t\tlet probeToken = 0;\n\t\tasync function resolve() {\n\t\t\tconst token = ++probeToken;\n\t\t\tprobeState = \"checking\";\n\t\t\tconst base = active()?.url ?? \"http://127.0.0.1:3800\";\n\t\t\ttry {\n\t\t\t\tconst root = await fetch(\"/proxy/assistant/\", { headers: { accept: \"text/html\" } });\n\t\t\t\tif (token !== probeToken) return;\n\t\t\t\tif (!root.ok) {\n\t\t\t\t\tprobeState = \"dead\";\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tlet url = base;\n\t\t\t\tif (requestedSessionId()) {\n\t\t\t\t\tconst res = await fetch(`/proxy/assistant/session/${encodeURIComponent(requestedSessionId())}`, { headers: { accept: \"application/json\" } });\n\t\t\t\t\tif (token !== probeToken) return;\n\t\t\t\t\tif (res.ok) {\n\t\t\t\t\t\tconst session = await res.json().catch(() => null);\n\t\t\t\t\t\tif (token !== probeToken) return;\n\t\t\t\t\t\turl = buildAdvancedIframeUrl(base, requestedSessionId(), session?.directory);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tframeUrl = url;\n\t\t\t\tprobeState = \"ready\";\n\t\t\t} catch {\n\t\t\t\tif (token !== probeToken) return;\n\t\t\t\tprobeState = \"dead\";\n\t\t\t}\n\t\t}\n\t\tafterNavigate(({ to }) => {\n\t\t\tconst sid = to?.url.searchParams.get(\"session\") ?? null;\n\t\t\tif (sid) chat.setActiveSessionId(sid);\n\t\t\tendpointsService.load().then(() => resolve());\n\t\t});\n\t\thead(\"1z0msvj\", $$renderer, ($$renderer) => {\n\t\t\t$$renderer.title(($$renderer) => {\n\t\t\t\t$$renderer.push(`<title>Advanced Chat — OpenPalm</title>`);\n\t\t\t});\n\t\t});\n\t\tNavbar($$renderer, {});\n\t\t$$renderer.push(`<!----> <div class=\"advanced-layout svelte-1z0msvj\">`);\n\t\tif (probeState === \"ready\") {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<!---->`);\n\t\t\t$$renderer.push(`<iframe class=\"opencode-frame svelte-1z0msvj\"${attr(\"src\", frameUrl)} title=\"OpenCode — Advanced Chat\" allow=\"clipboard-read; clipboard-write; microphone\"></iframe>`);\n\t\t\t$$renderer.push(`<!---->`);\n\t\t} else {\n\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<div class=\"advanced-status svelte-1z0msvj\"${attr(\"role\", probeState === \"dead\" ? \"alert\" : \"status\")} aria-live=\"polite\">`);\n\t\t\tif (probeState === \"checking\") {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<p class=\"status-line svelte-1z0msvj\">Connecting to ${escape_html(active()?.label ?? \"your assistant\")}…</p>`);\n\t\t\t} else {\n\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t$$renderer.push(`<h2 class=\"svelte-1z0msvj\">Can’t reach ${escape_html(active()?.label ?? \"your assistant\")}</h2> <p class=\"svelte-1z0msvj\">The connection looks dead or its session expired. Reconnect to try again, or pick a different assistant from the switcher above.</p> <button class=\"btn btn-primary btn-lg svelte-1z0msvj\"${attr(\"disabled\", reconnecting, true)}>${escape_html(\"Reconnect\")}</button>`);\n\t\t\t}\n\t\t\t$$renderer.push(`<!--]--></div>`);\n\t\t}\n\t\t$$renderer.push(`<!--]--></div>`);\n\t});\n}\n//#endregion\nexport { _page as default };\n"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { F as head, d as attr, e as attr_class, a9 as stringify } from './dev-D85DamNs.js';
2
- import './client-CGdYxeP_.js';
3
- import './internal-GqVcyxCX.js';
2
+ import './client-BOU1UMzN.js';
3
+ import './internal-Wp089UCl.js';
4
4
  import './utils-BSRjJDrZ.js';
5
5
  import 'node:module';
6
6
  import './chunk-CLZ62Ad-.js';
@@ -43,4 +43,4 @@ function _page($$renderer, $$props) {
43
43
  }
44
44
 
45
45
  export { _page as default };
46
- //# sourceMappingURL=_page.svelte-rMzAcw6P.js.map
46
+ //# sourceMappingURL=_page.svelte-yYYXLkkv.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_page.svelte-rMzAcw6P.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/login/_page.svelte.js"],"sourcesContent":["import { U as escape_html, V as attr, n as attr_class, s as head, u as stringify } from \"../../../chunks/dev.js\";\nimport { n as goto } from \"../../../chunks/client.js\";\nimport \"../../../chunks/navigation.js\";\nimport { t as Spinner } from \"../../../chunks/Spinner.js\";\n//#region src/lib/components/icons/IconReveal.svelte\nfunction IconReveal($$renderer, $$props) {\n\tlet { size = 20, class: className = \"\" } = $$props;\n\t$$renderer.push(`<svg aria-hidden=\"true\"${attr(\"width\", size)}${attr(\"height\", size)} viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"${attr_class(`s-icon ${stringify(className)}`)}><path d=\"M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z\"></path><circle cx=\"12\" cy=\"12\" r=\"3\"></circle></svg>`);\n}\n//#endregion\n//#region src/lib/components/common/AuthGate.svelte\nfunction AuthGate($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tlet { onSuccess, loading, error } = $$props;\n\t\tlet tokenInput = \"\";\n\t\t$$renderer.push(`<main class=\"s-gate svelte-zhbyfn\" aria-label=\"Admin login gate\"><div class=\"s-gate-inner svelte-zhbyfn\"><div class=\"s-gate-mark svelte-zhbyfn\">openpalm</div> <form class=\"s-gate-form svelte-zhbyfn\"><input type=\"text\" name=\"username\" autocomplete=\"username\" value=\"admin\" class=\"sr-only svelte-zhbyfn\" tabindex=\"-1\" aria-hidden=\"true\"/> <div class=\"s-gate-field svelte-zhbyfn\"><label for=\"admin-token\" class=\"sr-only svelte-zhbyfn\">Admin Password</label> <input id=\"admin-token\" name=\"admin-token\" class=\"s-gate-input svelte-zhbyfn\"${attr(\"type\", \"password\")}${attr(\"value\", tokenInput)} placeholder=\"password\" autocomplete=\"current-password\"/> <button type=\"button\" class=\"s-gate-reveal svelte-zhbyfn\"${attr(\"aria-label\", \"Show token\")}>`);\n\t\t$$renderer.push(\"<!--[-1-->\");\n\t\tIconReveal($$renderer, { size: 14 });\n\t\t$$renderer.push(`<!--]--></button></div> `);\n\t\tif (error) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<p class=\"s-gate-error svelte-zhbyfn\" role=\"alert\">${escape_html(error)}</p>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> <button class=\"s-gate-submit svelte-zhbyfn\" type=\"submit\" aria-label=\"Unlock Console\"${attr(\"disabled\", loading || !tokenInput.trim(), true)}>`);\n\t\tif (loading) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\tSpinner($$renderer, {});\n\t\t} else {\n\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`Unlock Console`);\n\t\t}\n\t\t$$renderer.push(`<!--]--></button></form></div></main>`);\n\t});\n}\n//#endregion\n//#region src/routes/login/+page.svelte\nfunction _page($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tlet { data } = $$props;\n\t\tlet loading = false;\n\t\tlet error = \"\";\n\t\tasync function handleAuthSuccess(token) {\n\t\t\tif (loading) return false;\n\t\t\tconst target = data.redirectTo || \"/chat\";\n\t\t\tloading = true;\n\t\t\terror = \"\";\n\t\t\ttry {\n\t\t\t\tconst res = await fetch(\"/admin/auth/login\", {\n\t\t\t\t\tmethod: \"POST\",\n\t\t\t\t\theaders: { \"content-type\": \"application/json\" },\n\t\t\t\t\tbody: JSON.stringify({ password: token }),\n\t\t\t\t\tcredentials: \"include\"\n\t\t\t\t});\n\t\t\t\tif (!res.ok) {\n\t\t\t\t\terror = res.status === 503 ? \"Admin password is not configured yet. Complete setup first.\" : \"Invalid password.\";\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tawait goto(target);\n\t\t\t\treturn true;\n\t\t\t} catch {\n\t\t\t\terror = \"Unable to reach admin API.\";\n\t\t\t\treturn false;\n\t\t\t} finally {\n\t\t\t\tloading = false;\n\t\t\t}\n\t\t}\n\t\thead(\"1x05zx6\", $$renderer, ($$renderer) => {\n\t\t\t$$renderer.title(($$renderer) => {\n\t\t\t\t$$renderer.push(`<title>Sign in — OpenPalm</title>`);\n\t\t\t});\n\t\t});\n\t\tAuthGate($$renderer, {\n\t\t\tonSuccess: handleAuthSuccess,\n\t\t\tloading,\n\t\t\terror\n\t\t});\n\t});\n}\n//#endregion\nexport { _page as default };\n"],"names":[],"mappings":";;;;;;;AAIA;AACA,SAAS,UAAU,CAAC,UAAU,EAAE,OAAO,EAAE;AACzC,CAAC,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,KAAK,EAAE,SAAS,GAAG,EAAE,EAAE,GAAG,OAAO;AACnD,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,uBAAuB,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,sHAAsH,EAAE,UAAU,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,4GAA4G,CAAC,CAAC;AACzW;AACA;AACA;AACA,SAAS,QAAQ,CAAC,UAAU,EAAE,OAAO,EAAE;AACvC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,KAAK;AAEtC,EAAE,IAAI,UAAU,GAAG,EAAE;AACrB,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,ohBAAohB,EAAE,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,mHAAmH,EAAE,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;AACvvB,EAAE,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AAC/B,EAAE,UAAU,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;AACtC,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,wBAAwB,CAAC,CAAC;AAC7C,EAGS,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AACtC,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,8FAA8F,EAAE,IAAI,CAAC,UAAU,EAAa,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5K,EAGS;AACT,GAAG,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AAChC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,CAAC;AACpC,EAAE;AACF,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,qCAAqC,CAAC,CAAC;AAC1D,CAAC,CAAC,CAAC;AACH;AACA;AACA;AACA,SAAS,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE;AACpC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,KAAK;AACtC,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,OAAO;AA4BxB,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,CAAC,UAAU,KAAK;AAC9C,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,UAAU,KAAK;AACpC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,iCAAiC,CAAC,CAAC;AACxD,GAAG,CAAC,CAAC;AACL,EAAE,CAAC,CAAC;AACJ,EAAE,QAAQ,CAAC,UAIR,CAAC;AACJ,CAAC,CAAC,CAAC;AACH;;;;"}
1
+ {"version":3,"file":"_page.svelte-yYYXLkkv.js","sources":["../../../.svelte-kit/adapter-node/entries/pages/login/_page.svelte.js"],"sourcesContent":["import { U as escape_html, V as attr, n as attr_class, s as head, u as stringify } from \"../../../chunks/dev.js\";\nimport { n as goto } from \"../../../chunks/client.js\";\nimport \"../../../chunks/navigation.js\";\nimport { t as Spinner } from \"../../../chunks/Spinner.js\";\n//#region src/lib/components/icons/IconReveal.svelte\nfunction IconReveal($$renderer, $$props) {\n\tlet { size = 20, class: className = \"\" } = $$props;\n\t$$renderer.push(`<svg aria-hidden=\"true\"${attr(\"width\", size)}${attr(\"height\", size)} viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"${attr_class(`s-icon ${stringify(className)}`)}><path d=\"M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z\"></path><circle cx=\"12\" cy=\"12\" r=\"3\"></circle></svg>`);\n}\n//#endregion\n//#region src/lib/components/common/AuthGate.svelte\nfunction AuthGate($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tlet { onSuccess, loading, error } = $$props;\n\t\tlet tokenInput = \"\";\n\t\t$$renderer.push(`<main class=\"s-gate svelte-zhbyfn\" aria-label=\"Admin login gate\"><div class=\"s-gate-inner svelte-zhbyfn\"><div class=\"s-gate-mark svelte-zhbyfn\">openpalm</div> <form class=\"s-gate-form svelte-zhbyfn\"><input type=\"text\" name=\"username\" autocomplete=\"username\" value=\"admin\" class=\"sr-only svelte-zhbyfn\" tabindex=\"-1\" aria-hidden=\"true\"/> <div class=\"s-gate-field svelte-zhbyfn\"><label for=\"admin-token\" class=\"sr-only svelte-zhbyfn\">Admin Password</label> <input id=\"admin-token\" name=\"admin-token\" class=\"s-gate-input svelte-zhbyfn\"${attr(\"type\", \"password\")}${attr(\"value\", tokenInput)} placeholder=\"password\" autocomplete=\"current-password\"/> <button type=\"button\" class=\"s-gate-reveal svelte-zhbyfn\"${attr(\"aria-label\", \"Show token\")}>`);\n\t\t$$renderer.push(\"<!--[-1-->\");\n\t\tIconReveal($$renderer, { size: 14 });\n\t\t$$renderer.push(`<!--]--></button></div> `);\n\t\tif (error) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<p class=\"s-gate-error svelte-zhbyfn\" role=\"alert\">${escape_html(error)}</p>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> <button class=\"s-gate-submit svelte-zhbyfn\" type=\"submit\" aria-label=\"Unlock Console\"${attr(\"disabled\", loading || !tokenInput.trim(), true)}>`);\n\t\tif (loading) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\tSpinner($$renderer, {});\n\t\t} else {\n\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`Unlock Console`);\n\t\t}\n\t\t$$renderer.push(`<!--]--></button></form></div></main>`);\n\t});\n}\n//#endregion\n//#region src/routes/login/+page.svelte\nfunction _page($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tlet { data } = $$props;\n\t\tlet loading = false;\n\t\tlet error = \"\";\n\t\tasync function handleAuthSuccess(token) {\n\t\t\tif (loading) return false;\n\t\t\tconst target = data.redirectTo || \"/chat\";\n\t\t\tloading = true;\n\t\t\terror = \"\";\n\t\t\ttry {\n\t\t\t\tconst res = await fetch(\"/admin/auth/login\", {\n\t\t\t\t\tmethod: \"POST\",\n\t\t\t\t\theaders: { \"content-type\": \"application/json\" },\n\t\t\t\t\tbody: JSON.stringify({ password: token }),\n\t\t\t\t\tcredentials: \"include\"\n\t\t\t\t});\n\t\t\t\tif (!res.ok) {\n\t\t\t\t\terror = res.status === 503 ? \"Admin password is not configured yet. Complete setup first.\" : \"Invalid password.\";\n\t\t\t\t\treturn false;\n\t\t\t\t}\n\t\t\t\tawait goto(target);\n\t\t\t\treturn true;\n\t\t\t} catch {\n\t\t\t\terror = \"Unable to reach admin API.\";\n\t\t\t\treturn false;\n\t\t\t} finally {\n\t\t\t\tloading = false;\n\t\t\t}\n\t\t}\n\t\thead(\"1x05zx6\", $$renderer, ($$renderer) => {\n\t\t\t$$renderer.title(($$renderer) => {\n\t\t\t\t$$renderer.push(`<title>Sign in — OpenPalm</title>`);\n\t\t\t});\n\t\t});\n\t\tAuthGate($$renderer, {\n\t\t\tonSuccess: handleAuthSuccess,\n\t\t\tloading,\n\t\t\terror\n\t\t});\n\t});\n}\n//#endregion\nexport { _page as default };\n"],"names":[],"mappings":";;;;;;;AAIA;AACA,SAAS,UAAU,CAAC,UAAU,EAAE,OAAO,EAAE;AACzC,CAAC,IAAI,EAAE,IAAI,GAAG,EAAE,EAAE,KAAK,EAAE,SAAS,GAAG,EAAE,EAAE,GAAG,OAAO;AACnD,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,uBAAuB,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,sHAAsH,EAAE,UAAU,CAAC,CAAC,OAAO,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,4GAA4G,CAAC,CAAC;AACzW;AACA;AACA;AACA,SAAS,QAAQ,CAAC,UAAU,EAAE,OAAO,EAAE;AACvC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,KAAK;AAEtC,EAAE,IAAI,UAAU,GAAG,EAAE;AACrB,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,ohBAAohB,EAAE,IAAI,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,mHAAmH,EAAE,IAAI,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;AACvvB,EAAE,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AAC/B,EAAE,UAAU,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;AACtC,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,wBAAwB,CAAC,CAAC;AAC7C,EAGS,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AACtC,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,8FAA8F,EAAE,IAAI,CAAC,UAAU,EAAa,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC;AAC5K,EAGS;AACT,GAAG,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AAChC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,CAAC;AACpC,EAAE;AACF,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,qCAAqC,CAAC,CAAC;AAC1D,CAAC,CAAC,CAAC;AACH;AACA;AACA;AACA,SAAS,KAAK,CAAC,UAAU,EAAE,OAAO,EAAE;AACpC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,KAAK;AACtC,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,OAAO;AA4BxB,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,EAAE,CAAC,UAAU,KAAK;AAC9C,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC,UAAU,KAAK;AACpC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,iCAAiC,CAAC,CAAC;AACxD,GAAG,CAAC,CAAC;AACL,EAAE,CAAC,CAAC;AACJ,EAAE,QAAQ,CAAC,UAIR,CAAC;AACJ,CAAC,CAAC,CAAC;AACH;;;;"}
@@ -1,7 +1,7 @@
1
1
  import { j as json } from './exports-D1quPX8S.js';
2
- import { ac as isSetupComplete, aJ as resolveStackDir, o as checkDocker } from './src-Bn-AiiUV.js';
3
- import { g as getState } from './state-BPtnWnun.js';
4
- import { g as getDeployState, s as startDeploy } from './setup-deploy-CdPn1xFW.js';
2
+ import { ac as isSetupComplete, aJ as resolveStackDir, o as checkDocker } from './src-DlScVN9s.js';
3
+ import { g as getState } from './state-OR3c9Jry.js';
4
+ import { g as getDeployState, s as startDeploy } from './setup-deploy-BzNm_sts.js';
5
5
  import './utils-BSRjJDrZ.js';
6
6
  import './chunk-CLZ62Ad-.js';
7
7
  import 'node:module';
@@ -47,4 +47,4 @@ var POST = async () => {
47
47
  };
48
48
 
49
49
  export { POST };
50
- //# sourceMappingURL=_server.ts-DtzCH63P.js.map
50
+ //# sourceMappingURL=_server.ts--ZkUtGm5.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-DtzCH63P.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/setup/retry-deploy/_server.ts.js"],"sourcesContent":["import { r as json } from \"../../../../../chunks/exports.js\";\nimport { J as checkDocker, Jt as resolveStackDir, ct as isSetupComplete } from \"../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../chunks/state.js\";\nimport { i as startDeploy, t as getDeployState } from \"../../../../../chunks/setup-deploy.js\";\n//#region src/routes/api/setup/retry-deploy/+server.ts\nvar POST = async () => {\n\tif (isSetupComplete(resolveStackDir())) return json({\n\t\tok: false,\n\t\terror: \"setup_complete\",\n\t\tmessage: \"Setup is already complete.\"\n\t}, { status: 409 });\n\tif (!(await checkDocker()).ok) return json({\n\t\tok: false,\n\t\terror: \"docker_unavailable\",\n\t\tmessage: \"Docker isn't running. Start Docker, then retry deploy.\"\n\t}, { status: 503 });\n\tif (getDeployState(getState()).deploying) return json({\n\t\tok: false,\n\t\terror: \"install_in_progress\",\n\t\tmessage: \"A deploy is already running.\"\n\t}, { status: 409 });\n\tstartDeploy(getState());\n\treturn json({ ok: true });\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA;AACG,IAAC,IAAI,GAAG,YAAY;AACvB,CAAC,IAAI,eAAe,CAAC,eAAe,EAAE,CAAC,EAAE,OAAO,IAAI,CAAC;AACrD,EAAE,EAAE,EAAE,KAAK;AACX,EAAE,KAAK,EAAE,gBAAgB;AACzB,EAAE,OAAO,EAAE;AACX,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACpB,CAAC,IAAI,CAAC,CAAC,MAAM,WAAW,EAAE,EAAE,EAAE,EAAE,OAAO,IAAI,CAAC;AAC5C,EAAE,EAAE,EAAE,KAAK;AACX,EAAE,KAAK,EAAE,oBAAoB;AAC7B,EAAE,OAAO,EAAE;AACX,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACpB,CAAC,IAAI,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC,SAAS,EAAE,OAAO,IAAI,CAAC;AACvD,EAAE,EAAE,EAAE,KAAK;AACX,EAAE,KAAK,EAAE,qBAAqB;AAC9B,EAAE,OAAO,EAAE;AACX,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACpB,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;AACxB,CAAC,OAAO,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;AAC1B;;;;"}
1
+ {"version":3,"file":"_server.ts--ZkUtGm5.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/setup/retry-deploy/_server.ts.js"],"sourcesContent":["import { r as json } from \"../../../../../chunks/exports.js\";\nimport { J as checkDocker, Jt as resolveStackDir, ct as isSetupComplete } from \"../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../chunks/state.js\";\nimport { i as startDeploy, t as getDeployState } from \"../../../../../chunks/setup-deploy.js\";\n//#region src/routes/api/setup/retry-deploy/+server.ts\nvar POST = async () => {\n\tif (isSetupComplete(resolveStackDir())) return json({\n\t\tok: false,\n\t\terror: \"setup_complete\",\n\t\tmessage: \"Setup is already complete.\"\n\t}, { status: 409 });\n\tif (!(await checkDocker()).ok) return json({\n\t\tok: false,\n\t\terror: \"docker_unavailable\",\n\t\tmessage: \"Docker isn't running. Start Docker, then retry deploy.\"\n\t}, { status: 503 });\n\tif (getDeployState(getState()).deploying) return json({\n\t\tok: false,\n\t\terror: \"install_in_progress\",\n\t\tmessage: \"A deploy is already running.\"\n\t}, { status: 409 });\n\tstartDeploy(getState());\n\treturn json({ ok: true });\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA;AACG,IAAC,IAAI,GAAG,YAAY;AACvB,CAAC,IAAI,eAAe,CAAC,eAAe,EAAE,CAAC,EAAE,OAAO,IAAI,CAAC;AACrD,EAAE,EAAE,EAAE,KAAK;AACX,EAAE,KAAK,EAAE,gBAAgB;AACzB,EAAE,OAAO,EAAE;AACX,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACpB,CAAC,IAAI,CAAC,CAAC,MAAM,WAAW,EAAE,EAAE,EAAE,EAAE,OAAO,IAAI,CAAC;AAC5C,EAAE,EAAE,EAAE,KAAK;AACX,EAAE,KAAK,EAAE,oBAAoB;AAC7B,EAAE,OAAO,EAAE;AACX,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACpB,CAAC,IAAI,cAAc,CAAC,QAAQ,EAAE,CAAC,CAAC,SAAS,EAAE,OAAO,IAAI,CAAC;AACvD,EAAE,EAAE,EAAE,KAAK;AACX,EAAE,KAAK,EAAE,qBAAqB;AAC9B,EAAE,OAAO,EAAE;AACX,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACpB,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;AACxB,CAAC,OAAO,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC;AAC1B;;;;"}
@@ -1,6 +1,6 @@
1
- import { aK as runAssistantAkmCommand } from './src-Bn-AiiUV.js';
2
- import { g as getState } from './state-BPtnWnun.js';
3
- import { d as getRequestId, r as requireAdmin } from './helpers-BMquHUT_.js';
1
+ import { aK as runAssistantAkmCommand } from './src-DlScVN9s.js';
2
+ import { g as getState } from './state-OR3c9Jry.js';
3
+ import { d as getRequestId, r as requireAdmin } from './helpers-BQUg4t3R.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-V56dw3W-.js';
25
+ import './endpoints-Bt-t-ppF.js';
26
26
 
27
27
  //#region src/lib/server/akm-health-report.ts
28
28
  var AKM_HEALTH_REPORT_WINDOWS = [
@@ -102,4 +102,4 @@ var GET = async (event) => {
102
102
  };
103
103
 
104
104
  export { GET };
105
- //# sourceMappingURL=_server.ts-BTcHO5bX.js.map
105
+ //# sourceMappingURL=_server.ts-2yT-HeDo.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-BTcHO5bX.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/akm/health-report/_server.ts.js"],"sourcesContent":["import { r as runAssistantAkmCommand } from \"../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../chunks/state.js\";\nimport { d as requireAdmin, o as getRequestId } from \"../../../../../chunks/helpers.js\";\n//#region src/lib/server/akm-health-report.ts\nvar AKM_HEALTH_REPORT_WINDOWS = [\n\t\"24h\",\n\t\"72h\",\n\t\"7d\",\n\t\"14d\",\n\t\"30d\"\n];\nfunction clampWindow(value) {\n\treturn AKM_HEALTH_REPORT_WINDOWS.includes(value ?? \"\") ? value : \"72h\";\n}\nfunction errorHtml(window, missing, detail) {\n\treturn `<!doctype html><html lang=\"en\"><head><meta charset=\"utf-8\"><meta name=\"viewport\" content=\"width=device-width, initial-scale=1\"><title>AKM Health Report</title><style>body{margin:0;font-family:Inter,system-ui,sans-serif;background:#07111f;color:#e5eefc;padding:24px}main{max-width:860px;margin:0 auto;background:#101b2d;border:1px solid rgba(148,163,184,.18);border-radius:18px;padding:24px}pre{white-space:pre-wrap;background:#15233a;padding:16px;border-radius:12px;overflow:auto}code{font-family:ui-monospace,SFMono-Regular,monospace}</style></head><body><main><h1>${missing ? \"AKM is not available\" : \"AKM health report unavailable\"}</h1><p>${missing ? \"The <code>akm</code> CLI was not found in the running assistant container.\" : `The admin UI could not build the report from <code>akm health</code> for window <code>${window}</code>.`}</p>${detail ? `<pre>${detail.replace(/&/g, \"&amp;\").replace(/</g, \"&lt;\").replace(/>/g, \"&gt;\")}</pre>` : \"\"}</main></body></html>`;\n}\nasync function buildAkmHealthReport(state, requestedWindow) {\n\tconst window = clampWindow(requestedWindow);\n\tconst result = await runAssistantAkmCommand(state, [\n\t\t\"health\",\n\t\t`--since=${window}`,\n\t\t\"--format\",\n\t\t\"html\"\n\t], 3e4);\n\tif (result.missing) return {\n\t\twindow,\n\t\thtml: errorHtml(window, true, \"\")\n\t};\n\tif (!result.ok || !result.stdout.trim()) return {\n\t\twindow,\n\t\thtml: errorHtml(window, false, [result.stderr.trim(), result.stdout.trim()].filter(Boolean).join(\"\\n\\n\"))\n\t};\n\treturn {\n\t\thtml: result.stdout,\n\t\twindow\n\t};\n}\n//#endregion\n//#region src/routes/admin/akm/health-report/+server.ts\nvar REPORT_CSP = [\n\t\"default-src 'none'\",\n\t\"script-src 'self' 'unsafe-inline'\",\n\t\"style-src 'unsafe-inline'\",\n\t\"img-src 'self' data:\",\n\t\"font-src 'self' data:\",\n\t\"connect-src 'none'\",\n\t\"object-src 'none'\",\n\t\"base-uri 'none'\",\n\t\"form-action 'none'\",\n\t\"frame-ancestors 'self'\"\n].join(\"; \");\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst denied = requireAdmin(event, requestId);\n\tif (denied) return denied;\n\ttry {\n\t\tconst { html } = await buildAkmHealthReport(getState(), event.url.searchParams.get(\"since\"));\n\t\treturn new Response(html, {\n\t\t\tstatus: 200,\n\t\t\theaders: {\n\t\t\t\t\"content-type\": \"text/html; charset=utf-8\",\n\t\t\t\t\"cache-control\": \"no-store\",\n\t\t\t\t\"content-security-policy\": REPORT_CSP,\n\t\t\t\t\"x-request-id\": requestId\n\t\t\t}\n\t\t});\n\t} catch (error) {\n\t\tconst message = error instanceof Error ? error.message : \"Failed to build AKM health report.\";\n\t\treturn new Response(message, {\n\t\t\tstatus: 500,\n\t\t\theaders: {\n\t\t\t\t\"content-type\": \"text/plain; charset=utf-8\",\n\t\t\t\t\"cache-control\": \"no-store\",\n\t\t\t\t\"x-request-id\": requestId\n\t\t\t}\n\t\t});\n\t}\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"_server.ts-2yT-HeDo.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/akm/health-report/_server.ts.js"],"sourcesContent":["import { r as runAssistantAkmCommand } from \"../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../chunks/state.js\";\nimport { d as requireAdmin, o as getRequestId } from \"../../../../../chunks/helpers.js\";\n//#region src/lib/server/akm-health-report.ts\nvar AKM_HEALTH_REPORT_WINDOWS = [\n\t\"24h\",\n\t\"72h\",\n\t\"7d\",\n\t\"14d\",\n\t\"30d\"\n];\nfunction clampWindow(value) {\n\treturn AKM_HEALTH_REPORT_WINDOWS.includes(value ?? \"\") ? value : \"72h\";\n}\nfunction errorHtml(window, missing, detail) {\n\treturn `<!doctype html><html lang=\"en\"><head><meta charset=\"utf-8\"><meta name=\"viewport\" content=\"width=device-width, initial-scale=1\"><title>AKM Health Report</title><style>body{margin:0;font-family:Inter,system-ui,sans-serif;background:#07111f;color:#e5eefc;padding:24px}main{max-width:860px;margin:0 auto;background:#101b2d;border:1px solid rgba(148,163,184,.18);border-radius:18px;padding:24px}pre{white-space:pre-wrap;background:#15233a;padding:16px;border-radius:12px;overflow:auto}code{font-family:ui-monospace,SFMono-Regular,monospace}</style></head><body><main><h1>${missing ? \"AKM is not available\" : \"AKM health report unavailable\"}</h1><p>${missing ? \"The <code>akm</code> CLI was not found in the running assistant container.\" : `The admin UI could not build the report from <code>akm health</code> for window <code>${window}</code>.`}</p>${detail ? `<pre>${detail.replace(/&/g, \"&amp;\").replace(/</g, \"&lt;\").replace(/>/g, \"&gt;\")}</pre>` : \"\"}</main></body></html>`;\n}\nasync function buildAkmHealthReport(state, requestedWindow) {\n\tconst window = clampWindow(requestedWindow);\n\tconst result = await runAssistantAkmCommand(state, [\n\t\t\"health\",\n\t\t`--since=${window}`,\n\t\t\"--format\",\n\t\t\"html\"\n\t], 3e4);\n\tif (result.missing) return {\n\t\twindow,\n\t\thtml: errorHtml(window, true, \"\")\n\t};\n\tif (!result.ok || !result.stdout.trim()) return {\n\t\twindow,\n\t\thtml: errorHtml(window, false, [result.stderr.trim(), result.stdout.trim()].filter(Boolean).join(\"\\n\\n\"))\n\t};\n\treturn {\n\t\thtml: result.stdout,\n\t\twindow\n\t};\n}\n//#endregion\n//#region src/routes/admin/akm/health-report/+server.ts\nvar REPORT_CSP = [\n\t\"default-src 'none'\",\n\t\"script-src 'self' 'unsafe-inline'\",\n\t\"style-src 'unsafe-inline'\",\n\t\"img-src 'self' data:\",\n\t\"font-src 'self' data:\",\n\t\"connect-src 'none'\",\n\t\"object-src 'none'\",\n\t\"base-uri 'none'\",\n\t\"form-action 'none'\",\n\t\"frame-ancestors 'self'\"\n].join(\"; \");\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst denied = requireAdmin(event, requestId);\n\tif (denied) return denied;\n\ttry {\n\t\tconst { html } = await buildAkmHealthReport(getState(), event.url.searchParams.get(\"since\"));\n\t\treturn new Response(html, {\n\t\t\tstatus: 200,\n\t\t\theaders: {\n\t\t\t\t\"content-type\": \"text/html; charset=utf-8\",\n\t\t\t\t\"cache-control\": \"no-store\",\n\t\t\t\t\"content-security-policy\": REPORT_CSP,\n\t\t\t\t\"x-request-id\": requestId\n\t\t\t}\n\t\t});\n\t} catch (error) {\n\t\tconst message = error instanceof Error ? error.message : \"Failed to build AKM health report.\";\n\t\treturn new Response(message, {\n\t\t\tstatus: 500,\n\t\t\theaders: {\n\t\t\t\t\"content-type\": \"text/plain; charset=utf-8\",\n\t\t\t\t\"cache-control\": \"no-store\",\n\t\t\t\t\"x-request-id\": requestId\n\t\t\t}\n\t\t});\n\t}\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":"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"}
@@ -1,8 +1,8 @@
1
- import { ax as readStackEnv } from './src-Bn-AiiUV.js';
2
- import { g as getState } from './state-BPtnWnun.js';
3
- import { d as getRequestId, r as requireAdmin, e as errorResponse } from './helpers-BMquHUT_.js';
4
- import { o as opencodeFetch } from './http-ByElKmSy.js';
5
- import { g as getCurrentConfig } from './config-Rsp7hkzb.js';
1
+ import { ax as readStackEnv } from './src-DlScVN9s.js';
2
+ import { g as getState } from './state-OR3c9Jry.js';
3
+ import { d as getRequestId, r as requireAdmin, e as errorResponse } from './helpers-BQUg4t3R.js';
4
+ import { o as opencodeFetch } from './http-vdLAxOhP.js';
5
+ import { g as getCurrentConfig } from './config-CRy04H0c.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-V56dw3W-.js';
27
+ import './endpoints-Bt-t-ppF.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-Cnm-gOvs.js.map
208
+ //# sourceMappingURL=_server.ts-9bpEdxei.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_server.ts-Cnm-gOvs.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/speak/_server.ts.js"],"sourcesContent":["import { Pt 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-9bpEdxei.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/speak/_server.ts.js"],"sourcesContent":["import { Pt 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 { ax as readStackEnv, b as annotateAddonProfileAvailability, a2 as getAddonProfiles, a1 as getAddonProfileSelection, a as addonProfileId, a_ as writeVoiceVars, ah as listEnabledAddonIds, E as composeStop, m as buildComposeOptions, aO as setAddonProfileSelection, aN as setAddonEnabled, a0 as getAddonProfileAvailability, F as composeUp, an as parseComposeStderr } from './src-Bn-AiiUV.js';
2
- import { g as getState } from './state-BPtnWnun.js';
3
- import { d as getRequestId, r as requireAdmin, k as jsonResponse, e as errorResponse } from './helpers-BMquHUT_.js';
1
+ import { ax as readStackEnv, b as annotateAddonProfileAvailability, a2 as getAddonProfiles, a1 as getAddonProfileSelection, a as addonProfileId, a_ as writeVoiceVars, ah as listEnabledAddonIds, E as composeStop, m as buildComposeOptions, aO as setAddonProfileSelection, aN as setAddonEnabled, a0 as getAddonProfileAvailability, F as composeUp, an as parseComposeStderr } from './src-DlScVN9s.js';
2
+ import { g as getState } from './state-OR3c9Jry.js';
3
+ import { d as getRequestId, r as requireAdmin, k as jsonResponse, e as errorResponse } from './helpers-BQUg4t3R.js';
4
4
  import { w as withSerialQueue } from './serial-queue-D9FEpYVv.js';
5
5
  import { existsSync, writeFileSync } from 'node:fs';
6
6
  import { join } from 'node:path';
@@ -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-V56dw3W-.js';
27
+ import './endpoints-Bt-t-ppF.js';
28
28
 
29
29
  //#region src/lib/server/voice-errors.ts
30
30
  /**
@@ -759,4 +759,4 @@ async function dockerHasNvidiaRuntime() {
759
759
  }
760
760
 
761
761
  export { GET, PUT };
762
- //# sourceMappingURL=_server.ts-6nz9WpjA.js.map
762
+ //# sourceMappingURL=_server.ts-B0Q7kabg.js.map