@openpalm/ui 0.11.0-rc.17 → 0.11.0-rc.18

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 (281) hide show
  1. package/build/.openpalm-ui-version +1 -1
  2. package/build/client/_app/immutable/assets/Navbar.Bnqciy-R.css +1 -0
  3. package/build/client/_app/immutable/assets/Navbar.Bnqciy-R.css.br +0 -0
  4. package/build/client/_app/immutable/assets/Navbar.Bnqciy-R.css.gz +0 -0
  5. package/build/client/_app/immutable/chunks/{0HMj31fq.js → 6MWqMcPj.js} +2 -2
  6. package/build/client/_app/immutable/chunks/6MWqMcPj.js.br +0 -0
  7. package/build/client/_app/immutable/chunks/6MWqMcPj.js.gz +0 -0
  8. package/build/client/_app/immutable/chunks/BEG6kjxo.js +1 -0
  9. package/build/client/_app/immutable/chunks/BEG6kjxo.js.br +2 -0
  10. package/build/client/_app/immutable/chunks/BEG6kjxo.js.gz +0 -0
  11. package/build/client/_app/immutable/chunks/ClJ0e619.js +5 -0
  12. package/build/client/_app/immutable/chunks/ClJ0e619.js.br +0 -0
  13. package/build/client/_app/immutable/chunks/ClJ0e619.js.gz +0 -0
  14. package/build/client/_app/immutable/chunks/{kNiXp35k.js → DQ-_WW-P.js} +1 -1
  15. package/build/client/_app/immutable/chunks/DQ-_WW-P.js.br +0 -0
  16. package/build/client/_app/immutable/chunks/DQ-_WW-P.js.gz +0 -0
  17. package/build/client/_app/immutable/entry/{app.Cv1PH2jt.js → app.ZFsJHpgm.js} +2 -2
  18. package/build/client/_app/immutable/entry/app.ZFsJHpgm.js.br +0 -0
  19. package/build/client/_app/immutable/entry/app.ZFsJHpgm.js.gz +0 -0
  20. package/build/client/_app/immutable/entry/start.Bb2Dg17A.js +1 -0
  21. package/build/client/_app/immutable/entry/start.Bb2Dg17A.js.br +0 -0
  22. package/build/client/_app/immutable/entry/start.Bb2Dg17A.js.gz +0 -0
  23. package/build/client/_app/immutable/nodes/{1.fppj_qm6.js → 1.p0a-6xRh.js} +1 -1
  24. package/build/client/_app/immutable/nodes/1.p0a-6xRh.js.br +1 -0
  25. package/build/client/_app/immutable/nodes/1.p0a-6xRh.js.gz +0 -0
  26. package/build/client/_app/immutable/nodes/{4.vLih0VUL.js → 4.DlOTtTTT.js} +2 -2
  27. package/build/client/_app/immutable/nodes/4.DlOTtTTT.js.br +0 -0
  28. package/build/client/_app/immutable/nodes/4.DlOTtTTT.js.gz +0 -0
  29. package/build/client/_app/immutable/nodes/{5.BUCEUtUI.js → 5.BERyIpWQ.js} +1 -1
  30. package/build/client/_app/immutable/nodes/5.BERyIpWQ.js.br +0 -0
  31. package/build/client/_app/immutable/nodes/5.BERyIpWQ.js.gz +0 -0
  32. package/build/client/_app/immutable/nodes/{6.CMaZvA5U.js → 6.rQVZSkqN.js} +1 -1
  33. package/build/client/_app/immutable/nodes/6.rQVZSkqN.js.br +0 -0
  34. package/build/client/_app/immutable/nodes/6.rQVZSkqN.js.gz +0 -0
  35. package/build/client/_app/immutable/nodes/{7.D2EtnlP5.js → 7.C8WhBp0k.js} +2 -2
  36. package/build/client/_app/immutable/nodes/7.C8WhBp0k.js.br +0 -0
  37. package/build/client/_app/immutable/nodes/{7.D2EtnlP5.js.gz → 7.C8WhBp0k.js.gz} +0 -0
  38. package/build/client/_app/immutable/nodes/{8.XiMdTV0G.js → 8.DmEHzlZO.js} +1 -1
  39. package/build/client/_app/immutable/nodes/8.DmEHzlZO.js.br +0 -0
  40. package/build/client/_app/immutable/nodes/8.DmEHzlZO.js.gz +0 -0
  41. package/build/client/_app/version.json +1 -1
  42. package/build/client/_app/version.json.br +1 -1
  43. package/build/client/_app/version.json.gz +0 -0
  44. package/build/server/chunks/{0-NRwWK1ef.js → 0-CTzT7i_m.js} +2 -2
  45. package/build/server/chunks/{0-NRwWK1ef.js.map → 0-CTzT7i_m.js.map} +1 -1
  46. package/build/server/chunks/1-BJ6QSHDy.js +9 -0
  47. package/build/server/chunks/{1-80ZhS44j.js.map → 1-BJ6QSHDy.js.map} +1 -1
  48. package/build/server/chunks/4-p48m7JXw.js +9 -0
  49. package/build/server/chunks/{4-ClensyA2.js.map → 4-p48m7JXw.js.map} +1 -1
  50. package/build/server/chunks/5-zn-Jbh7Z.js +9 -0
  51. package/build/server/chunks/{5-C6-Vzu10.js.map → 5-zn-Jbh7Z.js.map} +1 -1
  52. package/build/server/chunks/6-CJxJ9Yeh.js +9 -0
  53. package/build/server/chunks/{6-IwrFYOgB.js.map → 6-CJxJ9Yeh.js.map} +1 -1
  54. package/build/server/chunks/7-BnuUDTsp.js +9 -0
  55. package/build/server/chunks/{7-D3045x9x.js.map → 7-BnuUDTsp.js.map} +1 -1
  56. package/build/server/chunks/{8-BSDna0yi.js → 8-Cko994_N.js} +3 -3
  57. package/build/server/chunks/{8-BSDna0yi.js.map → 8-Cko994_N.js.map} +1 -1
  58. package/build/server/chunks/{Navbar-BLN7GYwV.js → Navbar-lB4kFS7g.js} +150 -77
  59. package/build/server/chunks/Navbar-lB4kFS7g.js.map +1 -0
  60. package/build/server/chunks/{_layout.svelte-DKVTcOyt.js → _layout.svelte-COQuY-BN.js} +2 -2
  61. package/build/server/chunks/{_layout.svelte-DKVTcOyt.js.map → _layout.svelte-COQuY-BN.js.map} +1 -1
  62. package/build/server/chunks/{_page.svelte-GJbmjyG0.js → _page.svelte-BuUe4hhV.js} +6 -6
  63. package/build/server/chunks/{_page.svelte-GJbmjyG0.js.map → _page.svelte-BuUe4hhV.js.map} +1 -1
  64. package/build/server/chunks/{_page.svelte-B2jHZbcQ.js → _page.svelte-Bv7qRPVj.js} +3 -3
  65. package/build/server/chunks/{_page.svelte-B2jHZbcQ.js.map → _page.svelte-Bv7qRPVj.js.map} +1 -1
  66. package/build/server/chunks/{_page.svelte-BuqBOi0v.js → _page.svelte-CVpGxOAl.js} +6 -6
  67. package/build/server/chunks/{_page.svelte-BuqBOi0v.js.map → _page.svelte-CVpGxOAl.js.map} +1 -1
  68. package/build/server/chunks/{_page.svelte-rVM8xRgy.js → _page.svelte-DWCKWYAF.js} +6 -6
  69. package/build/server/chunks/{_page.svelte-rVM8xRgy.js.map → _page.svelte-DWCKWYAF.js.map} +1 -1
  70. package/build/server/chunks/{_page.svelte-BfXmAJOJ.js → _page.svelte-tPiVZDZQ.js} +7 -7
  71. package/build/server/chunks/{_page.svelte-BfXmAJOJ.js.map → _page.svelte-tPiVZDZQ.js.map} +1 -1
  72. package/build/server/chunks/{_server.ts-Bf10Ccu9.js → _server.ts-8iOMau6K.js} +4 -4
  73. package/build/server/chunks/{_server.ts-Bf10Ccu9.js.map → _server.ts-8iOMau6K.js.map} +1 -1
  74. package/build/server/chunks/{_server.ts-Bqo6JeVt.js → _server.ts-B2RCiGeA.js} +4 -4
  75. package/build/server/chunks/{_server.ts-Bqo6JeVt.js.map → _server.ts-B2RCiGeA.js.map} +1 -1
  76. package/build/server/chunks/{_server.ts-BTZMTC6b.js → _server.ts-B8sdNvW5.js} +4 -4
  77. package/build/server/chunks/{_server.ts-BTZMTC6b.js.map → _server.ts-B8sdNvW5.js.map} +1 -1
  78. package/build/server/chunks/{_server.ts-Bk3TlvyQ.js → _server.ts-BAsbrtjL.js} +2 -2
  79. package/build/server/chunks/{_server.ts-Bk3TlvyQ.js.map → _server.ts-BAsbrtjL.js.map} +1 -1
  80. package/build/server/chunks/{_server.ts-C_nVzkA0.js → _server.ts-BCcQdRne.js} +4 -4
  81. package/build/server/chunks/{_server.ts-C_nVzkA0.js.map → _server.ts-BCcQdRne.js.map} +1 -1
  82. package/build/server/chunks/{_server.ts-B2DsaB4H.js → _server.ts-BD0Jit8e.js} +4 -4
  83. package/build/server/chunks/{_server.ts-B2DsaB4H.js.map → _server.ts-BD0Jit8e.js.map} +1 -1
  84. package/build/server/chunks/{_server.ts-BmGE6Th4.js → _server.ts-BD6Urice.js} +4 -4
  85. package/build/server/chunks/{_server.ts-BmGE6Th4.js.map → _server.ts-BD6Urice.js.map} +1 -1
  86. package/build/server/chunks/{_server.ts-CEYFX85x.js → _server.ts-BG3UvxEU.js} +2 -2
  87. package/build/server/chunks/{_server.ts-CEYFX85x.js.map → _server.ts-BG3UvxEU.js.map} +1 -1
  88. package/build/server/chunks/{_server.ts-B45anFXC.js → _server.ts-BQZSWSLy.js} +5 -5
  89. package/build/server/chunks/{_server.ts-B45anFXC.js.map → _server.ts-BQZSWSLy.js.map} +1 -1
  90. package/build/server/chunks/{_server.ts-G0biT_kc.js → _server.ts-BTGThm9P.js} +4 -4
  91. package/build/server/chunks/{_server.ts-G0biT_kc.js.map → _server.ts-BTGThm9P.js.map} +1 -1
  92. package/build/server/chunks/{_server.ts-CfYUv1UB.js → _server.ts-BVCET3CA.js} +4 -4
  93. package/build/server/chunks/{_server.ts-CfYUv1UB.js.map → _server.ts-BVCET3CA.js.map} +1 -1
  94. package/build/server/chunks/{_server.ts-CLPWoDiB.js → _server.ts-BVYIqRK2.js} +4 -4
  95. package/build/server/chunks/{_server.ts-CLPWoDiB.js.map → _server.ts-BVYIqRK2.js.map} +1 -1
  96. package/build/server/chunks/{_server.ts-D1MKVR5k.js → _server.ts-BYTWLTxk.js} +4 -4
  97. package/build/server/chunks/{_server.ts-D1MKVR5k.js.map → _server.ts-BYTWLTxk.js.map} +1 -1
  98. package/build/server/chunks/{_server.ts-BbBS5maD.js → _server.ts-BZ8wMJ7l.js} +4 -4
  99. package/build/server/chunks/{_server.ts-BbBS5maD.js.map → _server.ts-BZ8wMJ7l.js.map} +1 -1
  100. package/build/server/chunks/{_server.ts-AynKwaYe.js → _server.ts-Ban3zjRc.js} +4 -4
  101. package/build/server/chunks/{_server.ts-AynKwaYe.js.map → _server.ts-Ban3zjRc.js.map} +1 -1
  102. package/build/server/chunks/{_server.ts-CDHbfAt-.js → _server.ts-BaxB3oQq.js} +4 -4
  103. package/build/server/chunks/{_server.ts-CDHbfAt-.js.map → _server.ts-BaxB3oQq.js.map} +1 -1
  104. package/build/server/chunks/{_server.ts-C41TntzK.js → _server.ts-Bj_nJzpo.js} +4 -4
  105. package/build/server/chunks/{_server.ts-C41TntzK.js.map → _server.ts-Bj_nJzpo.js.map} +1 -1
  106. package/build/server/chunks/{_server.ts-D42V6R2z.js → _server.ts-BkGQezlX.js} +6 -6
  107. package/build/server/chunks/{_server.ts-D42V6R2z.js.map → _server.ts-BkGQezlX.js.map} +1 -1
  108. package/build/server/chunks/{_server.ts-vCl87gC9.js → _server.ts-BlMOxGWA.js} +4 -4
  109. package/build/server/chunks/{_server.ts-vCl87gC9.js.map → _server.ts-BlMOxGWA.js.map} +1 -1
  110. package/build/server/chunks/{_server.ts-DmboZKkU.js → _server.ts-BrExNZ-2.js} +4 -4
  111. package/build/server/chunks/{_server.ts-DmboZKkU.js.map → _server.ts-BrExNZ-2.js.map} +1 -1
  112. package/build/server/chunks/{_server.ts-ZpfMgKGX.js → _server.ts-C1CpbG3_.js} +4 -4
  113. package/build/server/chunks/{_server.ts-ZpfMgKGX.js.map → _server.ts-C1CpbG3_.js.map} +1 -1
  114. package/build/server/chunks/{_server.ts-85jwCe_m.js → _server.ts-C44tS0KC.js} +4 -4
  115. package/build/server/chunks/{_server.ts-85jwCe_m.js.map → _server.ts-C44tS0KC.js.map} +1 -1
  116. package/build/server/chunks/{_server.ts-A5d2KMGU.js → _server.ts-C5uu6b2a.js} +4 -4
  117. package/build/server/chunks/{_server.ts-A5d2KMGU.js.map → _server.ts-C5uu6b2a.js.map} +1 -1
  118. package/build/server/chunks/{_server.ts-BCZRyI5-.js → _server.ts-C5wVttUW.js} +3 -3
  119. package/build/server/chunks/{_server.ts-BCZRyI5-.js.map → _server.ts-C5wVttUW.js.map} +1 -1
  120. package/build/server/chunks/{_server.ts-7JAGv6tT.js → _server.ts-C7D2sok_.js} +4 -4
  121. package/build/server/chunks/{_server.ts-7JAGv6tT.js.map → _server.ts-C7D2sok_.js.map} +1 -1
  122. package/build/server/chunks/{_server.ts-BTtzSmnu.js → _server.ts-C8YMhHYj.js} +4 -4
  123. package/build/server/chunks/{_server.ts-BTtzSmnu.js.map → _server.ts-C8YMhHYj.js.map} +1 -1
  124. package/build/server/chunks/{_server.ts-BtCUY1RE.js → _server.ts-CC-mpNNj.js} +4 -4
  125. package/build/server/chunks/{_server.ts-BtCUY1RE.js.map → _server.ts-CC-mpNNj.js.map} +1 -1
  126. package/build/server/chunks/{_server.ts-BQh1z16f.js → _server.ts-CG1nihTT.js} +4 -4
  127. package/build/server/chunks/{_server.ts-BQh1z16f.js.map → _server.ts-CG1nihTT.js.map} +1 -1
  128. package/build/server/chunks/{_server.ts-4p5IEeUj.js → _server.ts-CH8VLn03.js} +4 -4
  129. package/build/server/chunks/{_server.ts-4p5IEeUj.js.map → _server.ts-CH8VLn03.js.map} +1 -1
  130. package/build/server/chunks/{_server.ts-DlEzh3LR.js → _server.ts-COORKWSc.js} +4 -4
  131. package/build/server/chunks/{_server.ts-DlEzh3LR.js.map → _server.ts-COORKWSc.js.map} +1 -1
  132. package/build/server/chunks/{_server.ts-DauUo17d.js → _server.ts-CPzbkayh.js} +4 -4
  133. package/build/server/chunks/{_server.ts-DauUo17d.js.map → _server.ts-CPzbkayh.js.map} +1 -1
  134. package/build/server/chunks/{_server.ts-XpcgGFlF.js → _server.ts-CQPWD_WN.js} +4 -4
  135. package/build/server/chunks/{_server.ts-XpcgGFlF.js.map → _server.ts-CQPWD_WN.js.map} +1 -1
  136. package/build/server/chunks/{_server.ts-BSJ5Sw38.js → _server.ts-CSs35mBJ.js} +4 -4
  137. package/build/server/chunks/{_server.ts-BSJ5Sw38.js.map → _server.ts-CSs35mBJ.js.map} +1 -1
  138. package/build/server/chunks/{_server.ts-BrVWvQI0.js → _server.ts-CsUi6NWt.js} +4 -4
  139. package/build/server/chunks/{_server.ts-BrVWvQI0.js.map → _server.ts-CsUi6NWt.js.map} +1 -1
  140. package/build/server/chunks/{_server.ts-B5r89Pjn.js → _server.ts-Cw2YXWgK.js} +5 -5
  141. package/build/server/chunks/{_server.ts-B5r89Pjn.js.map → _server.ts-Cw2YXWgK.js.map} +1 -1
  142. package/build/server/chunks/{_server.ts-Cw-YYgKK.js → _server.ts-D0FZ3wh5.js} +4 -4
  143. package/build/server/chunks/{_server.ts-Cw-YYgKK.js.map → _server.ts-D0FZ3wh5.js.map} +1 -1
  144. package/build/server/chunks/{_server.ts-WrJMMRfq.js → _server.ts-D4zkfcxH.js} +4 -4
  145. package/build/server/chunks/{_server.ts-WrJMMRfq.js.map → _server.ts-D4zkfcxH.js.map} +1 -1
  146. package/build/server/chunks/{_server.ts-K2JzWdR2.js → _server.ts-D5Q5mczv.js} +4 -4
  147. package/build/server/chunks/{_server.ts-K2JzWdR2.js.map → _server.ts-D5Q5mczv.js.map} +1 -1
  148. package/build/server/chunks/{_server.ts-BlHQLcgV.js → _server.ts-D9HJ0cWI.js} +4 -4
  149. package/build/server/chunks/{_server.ts-BlHQLcgV.js.map → _server.ts-D9HJ0cWI.js.map} +1 -1
  150. package/build/server/chunks/{_server.ts-eDJO6l_F.js → _server.ts-DAb50kOu.js} +5 -5
  151. package/build/server/chunks/{_server.ts-eDJO6l_F.js.map → _server.ts-DAb50kOu.js.map} +1 -1
  152. package/build/server/chunks/{_server.ts-BK2GpSWt.js → _server.ts-DFL8Mq_R.js} +4 -4
  153. package/build/server/chunks/{_server.ts-BK2GpSWt.js.map → _server.ts-DFL8Mq_R.js.map} +1 -1
  154. package/build/server/chunks/{_server.ts-Rrlt-U6N.js → _server.ts-DLHN_6MC.js} +4 -4
  155. package/build/server/chunks/{_server.ts-Rrlt-U6N.js.map → _server.ts-DLHN_6MC.js.map} +1 -1
  156. package/build/server/chunks/{_server.ts-CkAJ9SzD.js → _server.ts-DQE5fd19.js} +4 -4
  157. package/build/server/chunks/{_server.ts-CkAJ9SzD.js.map → _server.ts-DQE5fd19.js.map} +1 -1
  158. package/build/server/chunks/{_server.ts-ZTCkyUu3.js → _server.ts-DQcL5wr_.js} +4 -4
  159. package/build/server/chunks/{_server.ts-ZTCkyUu3.js.map → _server.ts-DQcL5wr_.js.map} +1 -1
  160. package/build/server/chunks/{_server.ts-BgL8150-.js → _server.ts-DRxZJQd6.js} +6 -6
  161. package/build/server/chunks/{_server.ts-BgL8150-.js.map → _server.ts-DRxZJQd6.js.map} +1 -1
  162. package/build/server/chunks/{_server.ts-DWOgLezk.js → _server.ts-DXOh4EZe.js} +5 -5
  163. package/build/server/chunks/{_server.ts-DWOgLezk.js.map → _server.ts-DXOh4EZe.js.map} +1 -1
  164. package/build/server/chunks/{_server.ts-h6-PmyqV.js → _server.ts-DbMkM72G.js} +4 -4
  165. package/build/server/chunks/{_server.ts-h6-PmyqV.js.map → _server.ts-DbMkM72G.js.map} +1 -1
  166. package/build/server/chunks/{_server.ts-mXCNoT5C.js → _server.ts-DcQTtmS3.js} +4 -4
  167. package/build/server/chunks/{_server.ts-mXCNoT5C.js.map → _server.ts-DcQTtmS3.js.map} +1 -1
  168. package/build/server/chunks/{_server.ts-C5zzcLqZ.js → _server.ts-DgIgXukK.js} +5 -5
  169. package/build/server/chunks/{_server.ts-C5zzcLqZ.js.map → _server.ts-DgIgXukK.js.map} +1 -1
  170. package/build/server/chunks/{_server.ts-CCGjkpr6.js → _server.ts-DjlikYHH.js} +5 -5
  171. package/build/server/chunks/{_server.ts-CCGjkpr6.js.map → _server.ts-DjlikYHH.js.map} +1 -1
  172. package/build/server/chunks/{_server.ts-DINAIoen.js → _server.ts-DjnK1iz8.js} +4 -4
  173. package/build/server/chunks/{_server.ts-DINAIoen.js.map → _server.ts-DjnK1iz8.js.map} +1 -1
  174. package/build/server/chunks/{_server.ts-DdvhLln1.js → _server.ts-DrM8VAOS.js} +4 -4
  175. package/build/server/chunks/{_server.ts-DdvhLln1.js.map → _server.ts-DrM8VAOS.js.map} +1 -1
  176. package/build/server/chunks/{_server.ts-DgeCAd3V.js → _server.ts-DtC0SjIr.js} +4 -4
  177. package/build/server/chunks/{_server.ts-DgeCAd3V.js.map → _server.ts-DtC0SjIr.js.map} +1 -1
  178. package/build/server/chunks/{_server.ts-DLls-Pxd.js → _server.ts-DuBJyo4e.js} +4 -4
  179. package/build/server/chunks/{_server.ts-DLls-Pxd.js.map → _server.ts-DuBJyo4e.js.map} +1 -1
  180. package/build/server/chunks/{_server.ts-owsN4Bs7.js → _server.ts-EBySP1Ew.js} +2 -2
  181. package/build/server/chunks/{_server.ts-owsN4Bs7.js.map → _server.ts-EBySP1Ew.js.map} +1 -1
  182. package/build/server/chunks/{_server.ts-ChTN5RKe.js → _server.ts-IkgMCbAi.js} +6 -6
  183. package/build/server/chunks/{_server.ts-ChTN5RKe.js.map → _server.ts-IkgMCbAi.js.map} +1 -1
  184. package/build/server/chunks/{_server.ts-sw1WMMi4.js → _server.ts-Me1rXUGo.js} +4 -4
  185. package/build/server/chunks/{_server.ts-sw1WMMi4.js.map → _server.ts-Me1rXUGo.js.map} +1 -1
  186. package/build/server/chunks/{_server.ts-D2dKpZ_G.js → _server.ts-Mycnkmlz.js} +5 -5
  187. package/build/server/chunks/{_server.ts-D2dKpZ_G.js.map → _server.ts-Mycnkmlz.js.map} +1 -1
  188. package/build/server/chunks/{_server.ts-CckEaeUq.js → _server.ts-N6WIc0vw.js} +4 -4
  189. package/build/server/chunks/{_server.ts-CckEaeUq.js.map → _server.ts-N6WIc0vw.js.map} +1 -1
  190. package/build/server/chunks/{_server.ts-D6hQ2QX3.js → _server.ts-XOLGzzNk.js} +4 -4
  191. package/build/server/chunks/{_server.ts-D6hQ2QX3.js.map → _server.ts-XOLGzzNk.js.map} +1 -1
  192. package/build/server/chunks/{_server.ts-CUbXB2FY.js → _server.ts-ZE9PYnxj.js} +4 -4
  193. package/build/server/chunks/{_server.ts-CUbXB2FY.js.map → _server.ts-ZE9PYnxj.js.map} +1 -1
  194. package/build/server/chunks/{_server.ts-ddgBytLW.js → _server.ts-__xVWUvt.js} +4 -4
  195. package/build/server/chunks/{_server.ts-ddgBytLW.js.map → _server.ts-__xVWUvt.js.map} +1 -1
  196. package/build/server/chunks/{_server.ts-C7vZ6Msd.js → _server.ts-_o3Yebl6.js} +4 -4
  197. package/build/server/chunks/{_server.ts-C7vZ6Msd.js.map → _server.ts-_o3Yebl6.js.map} +1 -1
  198. package/build/server/chunks/{_server.ts-DWXyKUhK.js → _server.ts-ccd1enMp.js} +4 -4
  199. package/build/server/chunks/{_server.ts-DWXyKUhK.js.map → _server.ts-ccd1enMp.js.map} +1 -1
  200. package/build/server/chunks/{_server.ts-xhwiTnat.js → _server.ts-iAOP7FW1.js} +2 -2
  201. package/build/server/chunks/{_server.ts-xhwiTnat.js.map → _server.ts-iAOP7FW1.js.map} +1 -1
  202. package/build/server/chunks/{_server.ts-CEJKMtQL.js → _server.ts-l3A6IOvJ.js} +4 -4
  203. package/build/server/chunks/{_server.ts-CEJKMtQL.js.map → _server.ts-l3A6IOvJ.js.map} +1 -1
  204. package/build/server/chunks/{_server.ts-B-2t5UWG.js → _server.ts-pLeJl6U2.js} +4 -4
  205. package/build/server/chunks/{_server.ts-B-2t5UWG.js.map → _server.ts-pLeJl6U2.js.map} +1 -1
  206. package/build/server/chunks/{_server.ts-eZueP9-i.js → _server.ts-sEc4S_v5.js} +6 -6
  207. package/build/server/chunks/{_server.ts-eZueP9-i.js.map → _server.ts-sEc4S_v5.js.map} +1 -1
  208. package/build/server/chunks/{_server.ts-CrzpLP9a.js → _server.ts-vp9n_72N.js} +4 -4
  209. package/build/server/chunks/{_server.ts-CrzpLP9a.js.map → _server.ts-vp9n_72N.js.map} +1 -1
  210. package/build/server/chunks/{_server.ts-VDp6dz3T.js → _server.ts-ypkZ9bJf.js} +2 -2
  211. package/build/server/chunks/{_server.ts-VDp6dz3T.js.map → _server.ts-ypkZ9bJf.js.map} +1 -1
  212. package/build/server/chunks/{addon-helpers-DlSLVoRs.js → addon-helpers-B0E6L7iO.js} +2 -2
  213. package/build/server/chunks/{addon-helpers-DlSLVoRs.js.map → addon-helpers-B0E6L7iO.js.map} +1 -1
  214. package/build/server/chunks/{client-juBO8qWw.js → client-BoEGJzYk.js} +2 -2
  215. package/build/server/chunks/{client-juBO8qWw.js.map → client-BoEGJzYk.js.map} +1 -1
  216. package/build/server/chunks/{config-O4KOX28q.js → config-2pnPob92.js} +2 -2
  217. package/build/server/chunks/{config-O4KOX28q.js.map → config-2pnPob92.js.map} +1 -1
  218. package/build/server/chunks/{docker-CFYseKcW.js → docker-D17EjIlp.js} +2 -2
  219. package/build/server/chunks/{docker-CFYseKcW.js.map → docker-D17EjIlp.js.map} +1 -1
  220. package/build/server/chunks/{endpoints-DhI5iQtt.js → endpoints-DoIeO5WL.js} +2 -2
  221. package/build/server/chunks/{endpoints-DhI5iQtt.js.map → endpoints-DoIeO5WL.js.map} +1 -1
  222. package/build/server/chunks/{environment-mv8Ia49N.js → environment-B033HICs.js} +2 -2
  223. package/build/server/chunks/{environment-mv8Ia49N.js.map → environment-B033HICs.js.map} +1 -1
  224. package/build/server/chunks/{error.svelte-C7nVyEcK.js → error.svelte-BZj_44PV.js} +4 -4
  225. package/build/server/chunks/{error.svelte-C7nVyEcK.js.map → error.svelte-BZj_44PV.js.map} +1 -1
  226. package/build/server/chunks/{helpers-DcWUDVwP.js → helpers-CeQwqpAT.js} +3 -3
  227. package/build/server/chunks/{helpers-DcWUDVwP.js.map → helpers-CeQwqpAT.js.map} +1 -1
  228. package/build/server/chunks/{hooks.server-mU0kbvq7.js → hooks.server-2io-2N7D.js} +4 -4
  229. package/build/server/chunks/{hooks.server-mU0kbvq7.js.map → hooks.server-2io-2N7D.js.map} +1 -1
  230. package/build/server/chunks/{http-CM7bCNch.js → http-CHmjTVGA.js} +2 -2
  231. package/build/server/chunks/{http-CM7bCNch.js.map → http-CHmjTVGA.js.map} +1 -1
  232. package/build/server/chunks/{internal-DB0NJlYY.js → internal-XQrKrAX-.js} +3 -3
  233. package/build/server/chunks/{internal-DB0NJlYY.js.map → internal-XQrKrAX-.js.map} +1 -1
  234. package/build/server/chunks/{setup-deploy-TOJkt66i.js → setup-deploy-53S0fflh.js} +2 -2
  235. package/build/server/chunks/{setup-deploy-TOJkt66i.js.map → setup-deploy-53S0fflh.js.map} +1 -1
  236. package/build/server/chunks/{src-B_h3grR0.js → src-D9YnoOnU.js} +55 -1
  237. package/build/server/chunks/{src-B_h3grR0.js.map → src-D9YnoOnU.js.map} +1 -1
  238. package/build/server/chunks/{state-ChDdlVO0.js → state-C0rbnIhQ.js} +2 -2
  239. package/build/server/chunks/{state-ChDdlVO0.js.map → state-C0rbnIhQ.js.map} +1 -1
  240. package/build/server/chunks/{theme-state.svelte-mcvSSIO_.js → theme-state.svelte-CE13yM0n.js} +2 -3
  241. package/build/server/chunks/theme-state.svelte-CE13yM0n.js.map +1 -0
  242. package/build/server/index.js +2 -2
  243. package/build/server/manifest.js +78 -78
  244. package/build/server/manifest.js.map +1 -1
  245. package/package.json +2 -2
  246. package/build/client/_app/immutable/assets/Navbar.D_OX7fwq.css +0 -1
  247. package/build/client/_app/immutable/assets/Navbar.D_OX7fwq.css.br +0 -0
  248. package/build/client/_app/immutable/assets/Navbar.D_OX7fwq.css.gz +0 -0
  249. package/build/client/_app/immutable/chunks/0HMj31fq.js.br +0 -0
  250. package/build/client/_app/immutable/chunks/0HMj31fq.js.gz +0 -0
  251. package/build/client/_app/immutable/chunks/CGjcdnRi.js +0 -5
  252. package/build/client/_app/immutable/chunks/CGjcdnRi.js.br +0 -0
  253. package/build/client/_app/immutable/chunks/CGjcdnRi.js.gz +0 -0
  254. package/build/client/_app/immutable/chunks/Hnis2w7-.js +0 -1
  255. package/build/client/_app/immutable/chunks/Hnis2w7-.js.br +0 -2
  256. package/build/client/_app/immutable/chunks/Hnis2w7-.js.gz +0 -0
  257. package/build/client/_app/immutable/chunks/kNiXp35k.js.br +0 -0
  258. package/build/client/_app/immutable/chunks/kNiXp35k.js.gz +0 -0
  259. package/build/client/_app/immutable/entry/app.Cv1PH2jt.js.br +0 -0
  260. package/build/client/_app/immutable/entry/app.Cv1PH2jt.js.gz +0 -0
  261. package/build/client/_app/immutable/entry/start.CjSNMVEx.js +0 -1
  262. package/build/client/_app/immutable/entry/start.CjSNMVEx.js.br +0 -0
  263. package/build/client/_app/immutable/entry/start.CjSNMVEx.js.gz +0 -0
  264. package/build/client/_app/immutable/nodes/1.fppj_qm6.js.br +0 -1
  265. package/build/client/_app/immutable/nodes/1.fppj_qm6.js.gz +0 -0
  266. package/build/client/_app/immutable/nodes/4.vLih0VUL.js.br +0 -0
  267. package/build/client/_app/immutable/nodes/4.vLih0VUL.js.gz +0 -0
  268. package/build/client/_app/immutable/nodes/5.BUCEUtUI.js.br +0 -0
  269. package/build/client/_app/immutable/nodes/5.BUCEUtUI.js.gz +0 -0
  270. package/build/client/_app/immutable/nodes/6.CMaZvA5U.js.br +0 -0
  271. package/build/client/_app/immutable/nodes/6.CMaZvA5U.js.gz +0 -0
  272. package/build/client/_app/immutable/nodes/7.D2EtnlP5.js.br +0 -0
  273. package/build/client/_app/immutable/nodes/8.XiMdTV0G.js.br +0 -0
  274. package/build/client/_app/immutable/nodes/8.XiMdTV0G.js.gz +0 -0
  275. package/build/server/chunks/1-80ZhS44j.js +0 -9
  276. package/build/server/chunks/4-ClensyA2.js +0 -9
  277. package/build/server/chunks/5-C6-Vzu10.js +0 -9
  278. package/build/server/chunks/6-IwrFYOgB.js +0 -9
  279. package/build/server/chunks/7-D3045x9x.js +0 -9
  280. package/build/server/chunks/Navbar-BLN7GYwV.js.map +0 -1
  281. package/build/server/chunks/theme-state.svelte-mcvSSIO_.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"Navbar-BLN7GYwV.js","sources":["../../../.svelte-kit/adapter-node/chunks/Navbar.js"],"sourcesContent":["import { H as escape_html, V as attr, a as derived, n as attr_class, o as ensure_array_like, r as attr_style, u as stringify } from \"./dev.js\";\nimport { n as onDestroy } from \"./index-server.js\";\nimport { A as listSessions, M as sendChatMessage, N as setActiveEndpoint, a as speakText, f as createSession, k as getSessionMessages, n as destroyVoice, o as stopSpeaking, s as voiceState, t as themeService, y as fetchEndpoints } from \"./theme-state.svelte.js\";\nimport { t as page } from \"./state.js\";\nimport \"./navigation.js\";\nimport { t as Spinner } from \"./Spinner.js\";\n//#region src/lib/format-date.ts\nvar TIME_FMT = new Intl.DateTimeFormat(void 0, {\n\thour: \"numeric\",\n\tminute: \"2-digit\"\n});\nvar DATE_TIME_FMT = new Intl.DateTimeFormat(void 0, {\n\tyear: \"numeric\",\n\tmonth: \"short\",\n\tday: \"numeric\",\n\thour: \"numeric\",\n\tminute: \"2-digit\"\n});\n/** Time of day, e.g. \"3:42 PM\" (locale-aware). Empty string for a falsy input. */\nfunction formatTime(ts) {\n\tif (!ts) return \"\";\n\treturn TIME_FMT.format(ts);\n}\n/**\n* Absolute date + time, e.g. \"Jun 7, 2026, 3:42 PM\". Use for tooltips / full\n* context where a relative label alone is ambiguous. Empty for a falsy input.\n*/\nfunction formatDateTime(ts) {\n\tif (!ts) return \"\";\n\treturn DATE_TIME_FMT.format(ts);\n}\n/**\n* Compact relative time, e.g. \"just now\", \"5m ago\", \"yesterday\", \"3w ago\".\n* Empty string for a falsy input. No date-fns dependency — that would be ~30 KB\n* for these few cases.\n*/\nfunction formatRelativeTime(ts) {\n\tif (!ts) return \"\";\n\tconst diffSec = Math.max(0, (Date.now() - ts) / 1e3);\n\tif (diffSec < 60) return \"just now\";\n\tconst min = Math.floor(diffSec / 60);\n\tif (min < 60) return `${min}m ago`;\n\tconst hr = Math.floor(min / 60);\n\tif (hr < 24) return `${hr}h ago`;\n\tconst day = Math.floor(hr / 24);\n\tif (day === 1) return \"yesterday\";\n\tif (day < 7) return `${day}d ago`;\n\tconst wk = Math.floor(day / 7);\n\tif (wk < 5) return `${wk}w ago`;\n\tconst mo = Math.floor(day / 30);\n\tif (mo < 12) return `${mo}mo ago`;\n\treturn `${Math.floor(day / 365)}y ago`;\n}\n//#endregion\n//#region src/lib/components/common/IconButton.svelte\nfunction IconButton($$renderer, $$props) {\n\t/** Icon contents (an inline <svg> or spinner). */\n\t/** Optional visible label; when present the button grows from a square to a pill. */\n\t/** Render as an anchor instead of a button when a destination is given. */\n\t/** \"On\"/active look (used by ToggleButton and active states). */\n\t/** Colour of the selected state. */\n\t/** Mirrors the toggle state for assistive tech (set by ToggleButton). */\n\tlet { icon, label, title, ariaLabel, disabled = false, href, onclick, type = \"button\", selected = false, tone = \"primary\", ariaPressed } = $$props;\n\tif (href) {\n\t\t$$renderer.push(\"<!--[0-->\");\n\t\t$$renderer.push(`<a${attr_class(\"icon-btn svelte-vx1yib\", void 0, {\n\t\t\t\"has-label\": label,\n\t\t\t\"selected\": selected,\n\t\t\t\"tone-danger\": tone === \"danger\"\n\t\t})}${attr(\"href\", href)}${attr(\"title\", title ?? ariaLabel ?? label)}${attr(\"aria-label\", ariaLabel ?? label)}${attr(\"aria-disabled\", disabled || void 0)}>`);\n\t\ticon($$renderer);\n\t\t$$renderer.push(`<!----> `);\n\t\tif (label) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<span class=\"icon-btn-label svelte-vx1yib\">${escape_html(label)}</span>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--></a>`);\n\t} else {\n\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<button${attr_class(\"icon-btn svelte-vx1yib\", void 0, {\n\t\t\t\"has-label\": label,\n\t\t\t\"selected\": selected,\n\t\t\t\"tone-danger\": tone === \"danger\"\n\t\t})}${attr(\"type\", type)}${attr(\"disabled\", disabled, true)}${attr(\"title\", title ?? ariaLabel ?? label)}${attr(\"aria-label\", ariaLabel ?? label)}${attr(\"aria-pressed\", ariaPressed)}>`);\n\t\ticon($$renderer);\n\t\t$$renderer.push(`<!----> `);\n\t\tif (label) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<span class=\"icon-btn-label svelte-vx1yib\">${escape_html(label)}</span>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--></button>`);\n\t}\n\t$$renderer.push(`<!--]-->`);\n}\n//#endregion\n//#region src/lib/components/common/ToggleButton.svelte\nfunction ToggleButton($$renderer, $$props) {\n\t/** Icon shown when off (and when on, if no selectedIcon is given). */\n\t/** Optional distinct icon shown when on. */\n\t/** Colour of the on state. */\n\tlet { pressed, onToggle, icon, selectedIcon, label, title, ariaLabel, disabled = false, tone = \"primary\" } = $$props;\n\tIconButton($$renderer, {\n\t\ticon: pressed && selectedIcon ? selectedIcon : icon,\n\t\tlabel,\n\t\ttitle,\n\t\tariaLabel,\n\t\tdisabled,\n\t\ttone,\n\t\tselected: pressed,\n\t\tariaPressed: pressed,\n\t\tonclick: onToggle\n\t});\n}\n//#endregion\n//#region src/lib/components/common/ThemeToggle.svelte\nfunction moon($$renderer) {\n\t$$renderer.push(`<svg aria-hidden=\"true\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9z\"></path></svg>`);\n}\nfunction sun($$renderer) {\n\t$$renderer.push(`<svg aria-hidden=\"true\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><circle cx=\"12\" cy=\"12\" r=\"4\"></circle><path d=\"M12 2v2\"></path><path d=\"M12 20v2\"></path><path d=\"m4.93 4.93 1.41 1.41\"></path><path d=\"m17.66 17.66 1.41 1.41\"></path><path d=\"M2 12h2\"></path><path d=\"M20 12h2\"></path><path d=\"m6.34 17.66-1.41 1.41\"></path><path d=\"m19.07 4.93-1.41 1.41\"></path></svg>`);\n}\nfunction ThemeToggle($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tconst isDark = derived(() => themeService.resolved === \"dark\");\n\t\tconst label = derived(() => isDark() ? \"Switch to light mode\" : \"Switch to dark mode\");\n\t\tToggleButton($$renderer, {\n\t\t\tpressed: isDark(),\n\t\t\tonToggle: () => themeService.toggle(),\n\t\t\tariaLabel: label(),\n\t\t\ttitle: label(),\n\t\t\ticon: moon,\n\t\t\tselectedIcon: sun\n\t\t});\n\t});\n}\n//#endregion\n//#region src/lib/components/chrome/ModeSwitch.svelte\nfunction ModeSwitch($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tconst pathname = derived(() => page.url?.pathname ?? \"\");\n\t\tconst onAdvanced = derived(() => pathname() === \"/advanced\" || pathname().startsWith(\"/advanced/\"));\n\t\t$$renderer.push(`<button type=\"button\"${attr_class(\"advanced-toggle svelte-dn9fn0\", void 0, { \"active\": onAdvanced() })}${attr(\"aria-pressed\", onAdvanced())} title=\"Advanced mode (embedded OpenCode)\" aria-label=\"Advanced mode\"><svg aria-hidden=\"true\" width=\"15\" height=\"15\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"svelte-dn9fn0\"><rect x=\"3\" y=\"3\" width=\"18\" height=\"18\" rx=\"2\" ry=\"2\"></rect><path d=\"m7 9 3 3-3 3\"></path><line x1=\"13\" y1=\"15\" x2=\"17\" y2=\"15\"></line></svg></button>`);\n\t});\n}\n//#endregion\n//#region src/lib/chat/session-events.ts\nvar INITIAL_BACKOFF_MS = 1e3;\nvar MAX_BACKOFF_MS = 3e4;\nvar STREAM_URL = \"/proxy/assistant/event\";\n/**\n* Parse one `\\n\\n`-delimited SSE frame. Multi-line `data:` fields are\n* concatenated with `\\n` per the SSE spec.\n*/\nfunction parseFrame(chunk) {\n\tconst frame = {};\n\tconst dataLines = [];\n\tfor (const rawLine of chunk.split(\"\\n\")) {\n\t\tif (!rawLine || rawLine.startsWith(\":\")) continue;\n\t\tif (rawLine.startsWith(\"data:\")) dataLines.push(rawLine.replace(/^data:\\s?/, \"\"));\n\t\telse if (rawLine.startsWith(\"event:\")) frame.event = rawLine.replace(/^event:\\s?/, \"\");\n\t\telse if (rawLine.startsWith(\"id:\")) frame.id = rawLine.replace(/^id:\\s?/, \"\");\n\t}\n\tif (dataLines.length > 0) frame.data = dataLines.join(\"\\n\");\n\treturn frame;\n}\nfunction dispatch(handlers, payload) {\n\tconst info = payload.properties?.info;\n\tconst id = info?.id;\n\tif (!id) return;\n\tswitch (payload.type) {\n\t\tcase \"session.created\":\n\t\t\thandlers.onCreated(id);\n\t\t\treturn;\n\t\tcase \"session.updated\":\n\t\t\thandlers.onUpdated(id, {\n\t\t\t\ttitle: info?.title,\n\t\t\t\tupdatedAt: info?.time?.updated\n\t\t\t});\n\t\t\treturn;\n\t\tcase \"session.deleted\":\n\t\t\thandlers.onDeleted(id);\n\t\t\treturn;\n\t\tdefault: return;\n\t}\n}\n/**\n* Open an SSE connection to `/proxy/assistant/event` and dispatch\n* session-scoped events. Returns an unsubscribe function that aborts the\n* stream and prevents reconnection.\n*/\nfunction subscribeSessionEvents(handlers) {\n\tlet stopped = false;\n\tlet controller = new AbortController();\n\tlet lastEventId;\n\tconst sleep = (ms) => new Promise((resolve) => {\n\t\tconst timer = setTimeout(resolve, ms);\n\t\tcontroller.signal.addEventListener(\"abort\", () => {\n\t\t\tclearTimeout(timer);\n\t\t\tresolve();\n\t\t}, { once: true });\n\t});\n\tasync function readStream() {\n\t\tconst headers = { accept: \"text/event-stream\" };\n\t\tif (lastEventId !== void 0) headers[\"Last-Event-ID\"] = lastEventId;\n\t\tconst response = await fetch(STREAM_URL, {\n\t\t\tmethod: \"GET\",\n\t\t\theaders,\n\t\t\tcredentials: \"include\",\n\t\t\tsignal: controller.signal\n\t\t});\n\t\tif (!response.ok || !response.body) throw new Error(`SSE stream failed: ${response.status} ${response.statusText}`);\n\t\thandlers.onConnect?.();\n\t\tconst reader = response.body.pipeThrough(new TextDecoderStream()).getReader();\n\t\tlet buffer = \"\";\n\t\ttry {\n\t\t\twhile (true) {\n\t\t\t\tconst { done, value } = await reader.read();\n\t\t\t\tif (done) break;\n\t\t\t\tbuffer += value;\n\t\t\t\tconst chunks = buffer.split(\"\\n\\n\");\n\t\t\t\tbuffer = chunks.pop() ?? \"\";\n\t\t\t\tfor (const chunk of chunks) {\n\t\t\t\t\tif (!chunk) continue;\n\t\t\t\t\tconst frame = parseFrame(chunk);\n\t\t\t\t\tif (frame.id !== void 0) lastEventId = frame.id;\n\t\t\t\t\tif (!frame.data) continue;\n\t\t\t\t\tlet payload;\n\t\t\t\t\ttry {\n\t\t\t\t\t\tpayload = JSON.parse(frame.data);\n\t\t\t\t\t} catch (err) {\n\t\t\t\t\t\tconsole.warn(\"[session-events] Bad JSON in SSE frame\", err);\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\t\t\t\t\tdispatch(handlers, payload);\n\t\t\t\t}\n\t\t\t}\n\t\t} finally {\n\t\t\ttry {\n\t\t\t\treader.releaseLock();\n\t\t\t} catch {}\n\t\t}\n\t}\n\t(async () => {\n\t\tlet attempt = 0;\n\t\twhile (!stopped) try {\n\t\t\tattempt++;\n\t\t\tawait readStream();\n\t\t\tattempt = 0;\n\t\t\tif (!stopped) await sleep(500);\n\t\t} catch (err) {\n\t\t\tif (stopped) return;\n\t\t\tconst error = err instanceof Error ? err : new Error(String(err));\n\t\t\tif (error.name !== \"AbortError\") {\n\t\t\t\tconsole.warn(\"[session-events] SSE error, reconnecting\", error);\n\t\t\t\thandlers.onDisconnect?.(error);\n\t\t\t}\n\t\t\tawait sleep(Math.min(INITIAL_BACKOFF_MS * 2 ** Math.max(0, attempt - 1), MAX_BACKOFF_MS));\n\t\t\tif (controller.signal.aborted && !stopped) controller = new AbortController();\n\t\t}\n\t})();\n\treturn () => {\n\t\tstopped = true;\n\t\ttry {\n\t\t\tcontroller.abort();\n\t\t} catch {}\n\t};\n}\n//#endregion\n//#region src/lib/chat/chat-state.svelte.ts\nfunction emptyEndpointState() {\n\treturn {\n\t\tsessions: [],\n\t\tsessionsLoaded: false,\n\t\tsessionsLoading: false,\n\t\tsessionsError: \"\",\n\t\tactiveSessionId: null\n\t};\n}\nvar ChatService = class {\n\t/**\n\t* Per-endpoint session cache. Reassigned on every mutation so Svelte 5\n\t* picks up the change. Never mutate the existing Map in place.\n\t*/\n\tbyEndpoint = /* @__PURE__ */ new Map();\n\t/**\n\t* Mirrored from `endpointsService.activeId` via `onEndpointChanged()`\n\t* so the chat layer doesn't have to import the endpoint store.\n\t*/\n\tactiveEndpointId = \"default\";\n\t/** Messages for the currently rendered session only. */\n\tentries = [];\n\tentriesLoading = false;\n\tsending = false;\n\terror = \"\";\n\t/**\n\t* Set true while the SSE event stream is connected. Surfaced by the\n\t* SessionPicker as a tiny green/gray dot so the operator can see at a\n\t* glance whether live updates are flowing.\n\t*/\n\tliveConnected = false;\n\t/**\n\t* Active SSE subscription handle. Reassigned on every endpoint switch.\n\t* Plain field (not `$state`) — only the chat service touches it.\n\t*/\n\t_unsubscribeEvents = null;\n\t#activeSessionId = derived(() => this.byEndpoint.get(this.activeEndpointId)?.activeSessionId ?? null);\n\tget activeSessionId() {\n\t\treturn this.#activeSessionId();\n\t}\n\tset activeSessionId($$value) {\n\t\treturn this.#activeSessionId($$value);\n\t}\n\tsetEndpointState(id, patch) {\n\t\tconst next = {\n\t\t\t...this.byEndpoint.get(id) ?? emptyEndpointState(),\n\t\t\t...patch\n\t\t};\n\t\tthis.byEndpoint = new Map(this.byEndpoint).set(id, next);\n\t\treturn next;\n\t}\n\t/**\n\t* Handle an endpoint switch: load sessions, restore prior or pick\n\t* newest, fetch messages. Mid-generation switches are blocked.\n\t*/\n\tasync onEndpointChanged(id) {\n\t\tif (this.sending) {\n\t\t\tthis.error = \"Wait for the current reply to finish before switching.\";\n\t\t\treturn;\n\t\t}\n\t\tthis.activeEndpointId = id;\n\t\tthis.entries = [];\n\t\tthis.error = \"\";\n\t\tif (!this.byEndpoint.get(id)?.sessionsLoaded) await this.loadSessions();\n\t\tconst state = this.byEndpoint.get(id) ?? emptyEndpointState();\n\t\tconst sessions = state.sessions;\n\t\tconst previous = state.activeSessionId;\n\t\tlet nextSessionId = null;\n\t\tif (previous && sessions.some((s) => s.id === previous)) nextSessionId = previous;\n\t\telse if (sessions.length > 0) nextSessionId = sessions[0].id;\n\t\tif (nextSessionId !== state.activeSessionId) this.setEndpointState(id, { activeSessionId: nextSessionId });\n\t\tif (nextSessionId) await this.openSession(nextSessionId);\n\t\tthis._resubscribeEvents();\n\t}\n\t/**\n\t* Tear down any prior SSE subscription and open a new one. Handlers\n\t* dispatch session.created / updated / deleted into the per-endpoint\n\t* cache, mirroring out-of-band changes (CLI, other clients).\n\t*/\n\t_resubscribeEvents() {\n\t\tif (this._unsubscribeEvents) {\n\t\t\ttry {\n\t\t\t\tthis._unsubscribeEvents();\n\t\t\t} catch (err) {\n\t\t\t\tconsole.warn(\"[chat] failed to unsubscribe from previous event stream\", err);\n\t\t\t}\n\t\t\tthis._unsubscribeEvents = null;\n\t\t}\n\t\tthis.liveConnected = false;\n\t\tthis._unsubscribeEvents = subscribeSessionEvents({\n\t\t\tonCreated: (id) => {\n\t\t\t\tthis._onSessionCreated(id);\n\t\t\t},\n\t\t\tonUpdated: (id, info) => {\n\t\t\t\tthis._onSessionUpdated(id, info);\n\t\t\t},\n\t\t\tonDeleted: (id) => {\n\t\t\t\tthis._onSessionDeleted(id);\n\t\t\t},\n\t\t\tonConnect: () => {\n\t\t\t\tthis.liveConnected = true;\n\t\t\t},\n\t\t\tonDisconnect: () => {\n\t\t\t\tthis.liveConnected = false;\n\t\t\t}\n\t\t});\n\t}\n\t/**\n\t* A session was created out-of-band — prepend to the active endpoint's\n\t* list if not already known. Do not auto-switch to it: the user owns\n\t* navigation.\n\t*/\n\t_onSessionCreated(sessionId) {\n\t\tconst endpointId = this.activeEndpointId;\n\t\tconst prev = this.byEndpoint.get(endpointId) ?? emptyEndpointState();\n\t\tif (prev.sessions.some((s) => s.id === sessionId)) return;\n\t\tconst now = Date.now();\n\t\tconst summary = {\n\t\t\tid: sessionId,\n\t\t\ttitle: \"\",\n\t\t\tcreatedAt: now,\n\t\t\tupdatedAt: now\n\t\t};\n\t\tthis.setEndpointState(endpointId, {\n\t\t\tsessions: [summary, ...prev.sessions],\n\t\t\tsessionsLoaded: true\n\t\t});\n\t}\n\t/**\n\t* A session was touched out-of-band — patch its updatedAt (and title if\n\t* the event carries one) and re-sort. Do NOT refetch messages: if the\n\t* user is viewing this session, leave the in-memory entries alone for\n\t* v1. A follow-up phase can reconcile message deltas via the assistant\n\t* event stream.\n\t*/\n\t_onSessionUpdated(sessionId, info) {\n\t\tconst endpointId = this.activeEndpointId;\n\t\tconst prev = this.byEndpoint.get(endpointId);\n\t\tif (!prev) return;\n\t\tconst idx = prev.sessions.findIndex((s) => s.id === sessionId);\n\t\tif (idx === -1) return;\n\t\tconst existing = prev.sessions[idx];\n\t\tconst sessions = [{\n\t\t\t...existing,\n\t\t\ttitle: info?.title ?? existing.title,\n\t\t\tupdatedAt: info?.updatedAt ?? Date.now()\n\t\t}, ...prev.sessions.filter((s) => s.id !== sessionId)];\n\t\tsessions.sort((a, b) => b.updatedAt - a.updatedAt);\n\t\tthis.setEndpointState(endpointId, { sessions });\n\t}\n\t/**\n\t* A session was deleted out-of-band. Remove it from the list; if it was\n\t* the active session, fall back to the newest remaining session (or\n\t* null) and reload its messages.\n\t*/\n\tasync _onSessionDeleted(sessionId) {\n\t\tconst endpointId = this.activeEndpointId;\n\t\tconst prev = this.byEndpoint.get(endpointId);\n\t\tif (!prev) return;\n\t\tif (!prev.sessions.some((s) => s.id === sessionId)) return;\n\t\tconst sessions = prev.sessions.filter((s) => s.id !== sessionId);\n\t\tconst wasActive = prev.activeSessionId === sessionId;\n\t\tconst nextActive = wasActive ? sessions[0]?.id ?? null : prev.activeSessionId;\n\t\tthis.setEndpointState(endpointId, {\n\t\t\tsessions,\n\t\t\tactiveSessionId: nextActive\n\t\t});\n\t\tif (wasActive) {\n\t\t\tthis.entries = [];\n\t\t\tif (nextActive) await this.openSession(nextActive);\n\t\t}\n\t}\n\t/** Fetch the session list for the active endpoint. */\n\tasync loadSessions() {\n\t\tconst id = this.activeEndpointId;\n\t\tthis.setEndpointState(id, {\n\t\t\tsessionsLoading: true,\n\t\t\tsessionsError: \"\"\n\t\t});\n\t\ttry {\n\t\t\tconst sessions = await listSessions();\n\t\t\tthis.setEndpointState(id, {\n\t\t\t\tsessions,\n\t\t\t\tsessionsLoaded: true,\n\t\t\t\tsessionsLoading: false,\n\t\t\t\tsessionsError: \"\"\n\t\t\t});\n\t\t} catch (e) {\n\t\t\tconst err = e;\n\t\t\tconst message = err.status === 503 || err.status === 502 ? \"Assistant is not reachable.\" : err.message ?? \"Failed to load sessions.\";\n\t\t\tthis.setEndpointState(id, {\n\t\t\t\tsessionsLoading: false,\n\t\t\t\tsessionsError: message\n\t\t\t});\n\t\t}\n\t}\n\t/** Select a session and render its messages. */\n\tasync openSession(sessionId) {\n\t\tif (this.sending) {\n\t\t\tthis.error = \"Wait for the current reply to finish before switching.\";\n\t\t\treturn;\n\t\t}\n\t\tconst endpointId = this.activeEndpointId;\n\t\tthis.setEndpointState(endpointId, { activeSessionId: sessionId });\n\t\tthis.entries = [];\n\t\tthis.entriesLoading = true;\n\t\tthis.error = \"\";\n\t\ttry {\n\t\t\tconst messages = await getSessionMessages(sessionId);\n\t\t\tif (this.activeEndpointId === endpointId && this.byEndpoint.get(endpointId)?.activeSessionId === sessionId) this.entries = messages;\n\t\t} catch (e) {\n\t\t\tconst err = e;\n\t\t\tif (err.status === 503 || err.status === 502) this.error = \"Assistant is not reachable. Try reconnecting.\";\n\t\t\telse if (err.status === 401) this.error = \"Sign-in required.\";\n\t\t\telse this.error = err.message ?? \"Failed to load messages.\";\n\t\t} finally {\n\t\t\tthis.entriesLoading = false;\n\t\t}\n\t}\n\t/** Create a new session on the active endpoint and select it. */\n\tasync startNewSession() {\n\t\tif (this.sending) {\n\t\t\tthis.error = \"Wait for the current reply to finish before switching.\";\n\t\t\treturn null;\n\t\t}\n\t\tconst endpointId = this.activeEndpointId;\n\t\tthis.error = \"\";\n\t\ttry {\n\t\t\tconst { id } = await createSession();\n\t\t\tconst now = Date.now();\n\t\t\tconst summary = {\n\t\t\t\tid,\n\t\t\t\ttitle: \"\",\n\t\t\t\tcreatedAt: now,\n\t\t\t\tupdatedAt: now\n\t\t\t};\n\t\t\tconst prev = this.byEndpoint.get(endpointId) ?? emptyEndpointState();\n\t\t\tthis.setEndpointState(endpointId, {\n\t\t\t\tsessions: [summary, ...prev.sessions.filter((s) => s.id !== id)],\n\t\t\t\tsessionsLoaded: true,\n\t\t\t\tactiveSessionId: id\n\t\t\t});\n\t\t\tthis.entries = [];\n\t\t\treturn id;\n\t\t} catch (e) {\n\t\t\tconst err = e;\n\t\t\tthis.error = `Failed to start session: ${err.message ?? \"unknown error\"}`;\n\t\t\treturn null;\n\t\t}\n\t}\n\t/**\n\t* Send a message in the active session. If none is active, create one\n\t* first (matches the \"zero sessions\" empty-state flow).\n\t*/\n\tasync send(text) {\n\t\tif (this.sending) return;\n\t\tconst trimmed = text.trim();\n\t\tif (!trimmed) return;\n\t\tlet sessionId = this.activeSessionId;\n\t\tif (!sessionId) {\n\t\t\tsessionId = await this.startNewSession();\n\t\t\tif (!sessionId) return;\n\t\t}\n\t\tconst userEntry = {\n\t\t\tid: crypto.randomUUID(),\n\t\t\trole: \"user\",\n\t\t\ttext: trimmed,\n\t\t\ttimestamp: Date.now()\n\t\t};\n\t\tthis.entries = [...this.entries, userEntry];\n\t\tthis.error = \"\";\n\t\tthis.sending = true;\n\t\ttry {\n\t\t\tconst replyText = (await sendChatMessage(sessionId, trimmed)).parts.filter((p) => p.type === \"text\" && p.text).map((p) => p.text ?? \"\").join(\"\");\n\t\t\tconst assistantEntry = {\n\t\t\t\tid: crypto.randomUUID(),\n\t\t\t\trole: \"assistant\",\n\t\t\t\ttext: replyText || \"(no response)\",\n\t\t\t\ttimestamp: Date.now()\n\t\t\t};\n\t\t\tthis.entries = [...this.entries, assistantEntry];\n\t\t\tconst endpointId = this.activeEndpointId;\n\t\t\tconst prev = this.byEndpoint.get(endpointId);\n\t\t\tif (prev) {\n\t\t\t\tconst now = Date.now();\n\t\t\t\tconst existing = prev.sessions.find((s) => s.id === sessionId);\n\t\t\t\tconst updated = existing ? {\n\t\t\t\t\t...existing,\n\t\t\t\t\tupdatedAt: now\n\t\t\t\t} : {\n\t\t\t\t\tid: sessionId,\n\t\t\t\t\ttitle: \"\",\n\t\t\t\t\tcreatedAt: now,\n\t\t\t\t\tupdatedAt: now\n\t\t\t\t};\n\t\t\t\tconst rest = prev.sessions.filter((s) => s.id !== sessionId);\n\t\t\t\tthis.setEndpointState(endpointId, { sessions: [updated, ...rest] });\n\t\t\t}\n\t\t\tif (voiceState.ttsSupported && voiceState.ttsAutoEnabled && replyText) speakText(replyText);\n\t\t} catch (e) {\n\t\t\tconst err = e;\n\t\t\tif (err.status === 503 || err.status === 502) {\n\t\t\t\tthis.error = \"Assistant is not reachable. Try reconnecting.\";\n\t\t\t\tthis.setEndpointState(this.activeEndpointId, { activeSessionId: null });\n\t\t\t} else if (err.status === 401) this.error = \"Sign-in required.\";\n\t\t\telse this.error = err.message ?? \"Message failed.\";\n\t\t} finally {\n\t\t\tthis.sending = false;\n\t\t}\n\t}\n\treset() {\n\t\tstopSpeaking();\n\t\tthis.entries = [];\n\t\tthis.error = \"\";\n\t\tthis.byEndpoint = /* @__PURE__ */ new Map();\n\t\tif (this._unsubscribeEvents) {\n\t\t\ttry {\n\t\t\t\tthis._unsubscribeEvents();\n\t\t\t} catch (err) {\n\t\t\t\tconsole.warn(\"[chat] failed to unsubscribe from event stream during reset\", err);\n\t\t\t}\n\t\t\tthis._unsubscribeEvents = null;\n\t\t}\n\t\tthis.liveConnected = false;\n\t}\n};\nvar chat = new ChatService();\n//#endregion\n//#region src/lib/endpoints-state.svelte.ts\nvar EndpointsService = class {\n\tendpoints = [];\n\tactiveId = \"default\";\n\tloading = false;\n\tloaded = false;\n\terror = \"\";\n\t#active = derived(() => this.endpoints.find((e) => e.id === this.activeId) ?? this.endpoints[0] ?? null);\n\tget active() {\n\t\treturn this.#active();\n\t}\n\tset active($$value) {\n\t\treturn this.#active($$value);\n\t}\n\tasync load(force = false) {\n\t\tif (this.loading) return;\n\t\tif (this.loaded && !force) return;\n\t\tthis.loading = true;\n\t\tthis.error = \"\";\n\t\ttry {\n\t\t\tconst { endpoints, activeId } = await fetchEndpoints();\n\t\t\tthis.endpoints = endpoints;\n\t\t\tthis.activeId = activeId;\n\t\t\tthis.loaded = true;\n\t\t} catch (e) {\n\t\t\tconst err = e;\n\t\t\tif (err.status !== 401) this.error = err.message ?? \"Failed to load endpoints\";\n\t\t} finally {\n\t\t\tthis.loading = false;\n\t\t}\n\t}\n\tasync activate(id) {\n\t\tif (id === this.activeId) return;\n\t\tif (chat.sending) {\n\t\t\tthis.error = \"Wait for the current reply to finish before switching.\";\n\t\t\tthrow new Error(this.error);\n\t\t}\n\t\tconst previous = this.activeId;\n\t\tthis.activeId = id;\n\t\ttry {\n\t\t\tawait setActiveEndpoint(id);\n\t\t\tawait chat.onEndpointChanged(id);\n\t\t} catch (e) {\n\t\t\tthis.activeId = previous;\n\t\t\tconst err = e;\n\t\t\tthis.error = err.message ?? \"Failed to switch endpoint\";\n\t\t\tthrow e;\n\t\t}\n\t}\n};\nvar endpointsService = new EndpointsService();\n//#endregion\n//#region src/lib/components/common/Drawer.svelte\nfunction Drawer($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\t/** Optional content rendered at the start of the header (e.g. a back button). */\n\t\t/** Drawer width (CSS length). */\n\t\tlet { open, title, onClose, children, footer, headerStart, width = \"32rem\" } = $$props;\n\t\tif (open) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<div class=\"drawer-scrim svelte-1u2o1qj\"></div> <div class=\"drawer svelte-1u2o1qj\"${attr_style(`--drawer-width: ${stringify(width)}`)} role=\"dialog\" aria-modal=\"true\"${attr(\"aria-label\", title)} tabindex=\"-1\"><header class=\"drawer-header svelte-1u2o1qj\">`);\n\t\t\tif (headerStart) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\theaderStart($$renderer);\n\t\t\t\t$$renderer.push(`<!---->`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> <h3 class=\"drawer-title svelte-1u2o1qj\">${escape_html(title)}</h3> <button class=\"drawer-close svelte-1u2o1qj\" aria-label=\"Close\"><svg aria-hidden=\"true\" width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"><path d=\"M18 6 6 18\"></path><path d=\"m6 6 12 12\"></path></svg></button></header> <div class=\"drawer-body svelte-1u2o1qj\">`);\n\t\t\tchildren($$renderer);\n\t\t\t$$renderer.push(`<!----></div> `);\n\t\t\tif (footer) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<footer class=\"drawer-footer svelte-1u2o1qj\">`);\n\t\t\t\tfooter($$renderer);\n\t\t\t\t$$renderer.push(`<!----></footer>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--></div>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]-->`);\n\t});\n}\n//#endregion\n//#region src/lib/components/chat/EndpointList.svelte\nfunction EndpointList($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\t/** Called after the active endpoint changes (e.g. to close the drawer). */\n\t\tlet { onChosen } = $$props;\n\t\tconst active = derived(() => endpointsService.active);\n\t\tconst endpoints = derived(() => endpointsService.endpoints);\n\t\tlet switching = false;\n\t\t$$renderer.push(`<div class=\"endpoint-list svelte-dlw00e\">`);\n\t\tif (endpointsService.error) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<p class=\"list-error svelte-dlw00e\" role=\"alert\">${escape_html(endpointsService.error)}</p>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> <div class=\"group\" role=\"group\" aria-label=\"Assistant endpoints\"><!--[-->`);\n\t\tconst each_array = ensure_array_like(endpoints());\n\t\tfor (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n\t\t\tlet ep = each_array[$$index];\n\t\t\t$$renderer.push(`<button type=\"button\"${attr_class(\"list-item svelte-dlw00e\", void 0, { \"active\": ep.id === active()?.id })}${attr(\"aria-current\", ep.id === active()?.id ? \"true\" : void 0)}${attr(\"disabled\", switching, true)}><span class=\"item-text svelte-dlw00e\"><span class=\"item-label svelte-dlw00e\">${escape_html(ep.label)}`);\n\t\t\tif (ep.id === active()?.id) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<span class=\"sr-only svelte-dlw00e\">(current)</span>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--></span> <span class=\"item-url svelte-dlw00e\">${escape_html(ep.url)}</span></span></button>`);\n\t\t}\n\t\t$$renderer.push(`<!--]--></div> <div class=\"divider svelte-dlw00e\"></div> <a class=\"list-item link svelte-dlw00e\" href=\"/admin/endpoints\">Manage endpoints…</a></div>`);\n\t});\n}\n//#endregion\n//#region src/lib/components/chat/EndpointSwitcher.svelte\nfunction EndpointSwitcher($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tlet open = false;\n\t\tconst active = derived(() => endpointsService.active);\n\t\t$$renderer.push(`<button type=\"button\" class=\"trigger svelte-48xr05\" aria-haspopup=\"dialog\"${attr(\"aria-expanded\", open)}${attr(\"aria-label\", active() ? `Assistant endpoint: ${active().label}` : \"Assistant endpoints\")}${attr(\"title\", active() ? `Connected to: ${active().label} (${active().url})` : \"Assistant endpoints\")}${attr(\"disabled\", endpointsService.loading, true)}><svg class=\"trigger-icon svelte-48xr05\" aria-hidden=\"true\" width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><rect x=\"2\" y=\"2\" width=\"20\" height=\"8\" rx=\"2\" ry=\"2\"></rect><rect x=\"2\" y=\"14\" width=\"20\" height=\"8\" rx=\"2\" ry=\"2\"></rect><line x1=\"6\" y1=\"6\" x2=\"6.01\" y2=\"6\"></line><line x1=\"6\" y1=\"18\" x2=\"6.01\" y2=\"18\"></line></svg> <span class=\"dot svelte-48xr05\" aria-hidden=\"true\"></span> <span class=\"label svelte-48xr05\">${escape_html(active()?.label ?? \"Endpoint…\")}</span> <span class=\"caret svelte-48xr05\" aria-hidden=\"true\">▾</span></button> `);\n\t\tDrawer($$renderer, {\n\t\t\topen,\n\t\t\ttitle: \"Assistant endpoint\",\n\t\t\tonClose: () => open = false,\n\t\t\twidth: \"26rem\",\n\t\t\tchildren: ($$renderer) => {\n\t\t\t\tEndpointList($$renderer, { onChosen: () => open = false });\n\t\t\t},\n\t\t\t$$slots: { default: true }\n\t\t});\n\t\t$$renderer.push(`<!---->`);\n\t});\n}\n//#endregion\n//#region src/lib/components/chat/SessionList.svelte\nfunction SessionList($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\t/** Called after a session is opened or started (e.g. to close the drawer). */\n\t\tlet { onChosen } = $$props;\n\t\tconst SESSION_LIST_CAP = 50;\n\t\tconst active = derived(() => endpointsService.active);\n\t\tconst endpointState = derived(() => active() ? chat.byEndpoint.get(active().id) ?? null : null);\n\t\tconst sessions = derived(() => endpointState()?.sessions ?? []);\n\t\tconst loading = derived(() => endpointState()?.sessionsLoading ?? false);\n\t\tconst error = derived(() => endpointState()?.sessionsError ?? \"\");\n\t\tconst activeSessionId = derived(() => chat.activeSessionId);\n\t\tconst visibleSessions = derived(() => sessions().slice(0, SESSION_LIST_CAP));\n\t\tconst overflowCount = derived(() => Math.max(0, sessions().length - SESSION_LIST_CAP));\n\t\t$$renderer.push(`<div class=\"session-body svelte-1o6rxhb\">`);\n\t\tif (chat.sending) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<div class=\"notice svelte-1o6rxhb\">Wait for the current reply to finish before switching.</div>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> <button type=\"button\" class=\"list-item new-btn svelte-1o6rxhb\"${attr(\"disabled\", chat.sending, true)}><span class=\"check svelte-1o6rxhb\" aria-hidden=\"true\">+</span> <span class=\"item-text svelte-1o6rxhb\"><span class=\"item-label svelte-1o6rxhb\">New session</span></span></button> <div class=\"divider svelte-1o6rxhb\"></div> `);\n\t\tif (loading()) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<div class=\"empty svelte-1o6rxhb\">`);\n\t\t\tSpinner($$renderer, { size: 12 });\n\t\t\t$$renderer.push(`<!----><span>Loading sessions…</span></div>`);\n\t\t} else if (error()) {\n\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t$$renderer.push(`<div class=\"list-error svelte-1o6rxhb\"><span class=\"svelte-1o6rxhb\">${escape_html(error())}</span> <button type=\"button\" class=\"retry-btn svelte-1o6rxhb\">Retry</button></div>`);\n\t\t} else if (sessions().length === 0) {\n\t\t\t$$renderer.push(\"<!--[2-->\");\n\t\t\t$$renderer.push(`<div class=\"empty svelte-1o6rxhb\">No sessions yet. Start the first one.</div>`);\n\t\t} else {\n\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<div class=\"session-list svelte-1o6rxhb\" role=\"group\" aria-label=\"Sessions\"><!--[-->`);\n\t\t\tconst each_array = ensure_array_like(visibleSessions());\n\t\t\tfor (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {\n\t\t\t\tlet s = each_array[$$index];\n\t\t\t\t$$renderer.push(`<button type=\"button\"${attr_class(\"list-item session-item svelte-1o6rxhb\", void 0, { \"active\": s.id === activeSessionId() })}${attr(\"aria-current\", s.id === activeSessionId() ? \"true\" : void 0)}${attr(\"disabled\", chat.sending, true)}${attr(\"title\", formatDateTime(s.updatedAt))}><span class=\"item-text svelte-1o6rxhb\"><span class=\"item-label svelte-1o6rxhb\">${escape_html(s.title || \"Untitled\")}`);\n\t\t\t\tif (s.id === activeSessionId()) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t$$renderer.push(`<span class=\"sr-only svelte-1o6rxhb\">(current)</span>`);\n\t\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t\t$$renderer.push(`<!--]--></span> <span class=\"item-meta svelte-1o6rxhb\">${escape_html(formatRelativeTime(s.updatedAt))}</span></span></button>`);\n\t\t\t}\n\t\t\t$$renderer.push(`<!--]--></div> `);\n\t\t\tif (overflowCount() > 0) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<button type=\"button\" class=\"show-all svelte-1o6rxhb\">Show all (${escape_html(overflowCount())} more)</button>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]-->`);\n\t\t}\n\t\t$$renderer.push(`<!--]--></div>`);\n\t});\n}\n//#endregion\n//#region src/lib/components/chat/SessionPicker.svelte\nfunction SessionPicker($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tlet open = false;\n\t\tconst active = derived(() => endpointsService.active);\n\t\tconst endpointState = derived(() => active() ? chat.byEndpoint.get(active().id) ?? null : null);\n\t\tconst sessions = derived(() => endpointState()?.sessions ?? []);\n\t\tconst activeSessionId = derived(() => chat.activeSessionId);\n\t\tconst liveConnected = derived(() => chat.liveConnected);\n\t\tconst activeSummary = derived(() => sessions().find((s) => s.id === activeSessionId()) ?? null);\n\t\tconst triggerLabel = derived(() => activeSummary() ? activeSummary().title || \"Untitled session\" : \"New session\");\n\t\t$$renderer.push(`<button type=\"button\" class=\"trigger svelte-cihcnl\" aria-haspopup=\"dialog\"${attr(\"aria-expanded\", open)} aria-label=\"Sessions\"${attr(\"title\", triggerLabel())}><svg class=\"trigger-icon svelte-cihcnl\" aria-hidden=\"true\" width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M14 9a2 2 0 0 1-2 2H6l-4 4V4c0-1.1.9-2 2-2h8a2 2 0 0 1 2 2z\"></path><path d=\"M18 9h2a2 2 0 0 1 2 2v11l-4-4h-6a2 2 0 0 1-2-2v-1\"></path></svg> <span${attr_class(\"dot svelte-cihcnl\", void 0, { \"connected\": liveConnected() })} aria-hidden=\"true\"${attr(\"title\", liveConnected() ? \"Live updates connected\" : \"Live updates disconnected\")}></span> <span class=\"label svelte-cihcnl\">${escape_html(triggerLabel())}</span> <span class=\"caret svelte-cihcnl\" aria-hidden=\"true\">▾</span></button> `);\n\t\tDrawer($$renderer, {\n\t\t\topen,\n\t\t\ttitle: `Sessions on ${stringify(active()?.label ?? \"this endpoint\")}`,\n\t\t\tonClose: () => open = false,\n\t\t\twidth: \"26rem\",\n\t\t\tchildren: ($$renderer) => {\n\t\t\t\tSessionList($$renderer, { onChosen: () => open = false });\n\t\t\t},\n\t\t\t$$slots: { default: true }\n\t\t});\n\t\t$$renderer.push(`<!---->`);\n\t});\n}\n//#endregion\n//#region src/lib/components/chat/VoiceControl.svelte\nfunction VoiceControl($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tconst MAX_INTERIM_CHARS = 48;\n\t\tlet mounted = false;\n\t\tonDestroy(() => {\n\t\t\tdestroyVoice();\n\t\t});\n\t\tlet supported = derived(() => mounted);\n\t\tlet ttsAvailable = derived(() => mounted);\n\t\tlet isRecording = derived(() => voiceState.status === \"recording\");\n\t\tlet isTranscribing = derived(() => voiceState.status === \"transcribing\");\n\t\tlet isProcessing = derived(() => !isRecording() && !isTranscribing() && chat.sending);\n\t\tlet isSpeaking = derived(() => voiceState.status === \"speaking\");\n\t\t$$renderer.push(`<div class=\"voice-control svelte-7elv0w\" role=\"toolbar\" aria-label=\"Voice controls\">`);\n\t\tif (isRecording() && voiceState.interimTranscript) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<span class=\"voice-interim svelte-7elv0w\" aria-hidden=\"true\"${attr(\"title\", voiceState.interimTranscript)}>${escape_html(voiceState.interimTranscript.length > MAX_INTERIM_CHARS ? voiceState.interimTranscript.slice(0, MAX_INTERIM_CHARS) + \"…\" : voiceState.interimTranscript)}</span>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> `);\n\t\tif (voiceState.autoplayBlocked) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<button type=\"button\" class=\"voice-autoplay-banner svelte-7elv0w\" aria-label=\"Resume paused audio\" title=\"Audio was blocked by the browser. Click to resume.\"><svg aria-hidden=\"true\" width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"svelte-7elv0w\"><polygon points=\"11 5 6 9 2 9 2 15 6 15 11 19 11 5\" class=\"svelte-7elv0w\"></polygon><line x1=\"23\" y1=\"9\" x2=\"17\" y2=\"15\" class=\"svelte-7elv0w\"></line><line x1=\"17\" y1=\"9\" x2=\"23\" y2=\"15\" class=\"svelte-7elv0w\"></line></svg> <span class=\"svelte-7elv0w\">Audio paused — click to resume</span></button>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> `);\n\t\tif (ttsAvailable()) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<button${attr_class(\"voice-btn svelte-7elv0w\", void 0, {\n\t\t\t\t\"voice-btn-on\": voiceState.ttsAutoEnabled,\n\t\t\t\t\"voice-btn-speaking\": isSpeaking()\n\t\t\t})}${attr(\"aria-label\", voiceState.ttsAutoEnabled ? \"Turn off spoken responses\" : \"Turn on spoken responses\")}${attr(\"aria-pressed\", voiceState.ttsAutoEnabled)}${attr(\"title\", isSpeaking() ? \"Speaking — click to turn off spoken responses\" : voiceState.ttsAutoEnabled ? \"Spoken responses are on — click to turn off\" : \"Spoken responses are off — click to turn on\")}><svg aria-hidden=\"true\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"svelte-7elv0w\"><polygon points=\"11 5 6 9 2 9 2 15 6 15 11 19 11 5\" class=\"svelte-7elv0w\"></polygon>`);\n\t\t\tif (voiceState.ttsAutoEnabled) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<path d=\"M15.54 8.46a5 5 0 0 1 0 7.07\"${attr_class(\"svelte-7elv0w\", void 0, { \"wave-anim\": isSpeaking() })}></path><path d=\"M19.07 4.93a10 10 0 0 1 0 14.14\"${attr_class(\"svelte-7elv0w\", void 0, { \"wave-anim-2\": isSpeaking() })}></path>`);\n\t\t\t} else {\n\t\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t\t$$renderer.push(`<line x1=\"23\" y1=\"9\" x2=\"17\" y2=\"15\" class=\"svelte-7elv0w\"></line><line x1=\"17\" y1=\"9\" x2=\"23\" y2=\"15\" class=\"svelte-7elv0w\"></line>`);\n\t\t\t}\n\t\t\t$$renderer.push(`<!--]--></svg></button>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> <button${attr_class(\"voice-btn svelte-7elv0w\", void 0, {\n\t\t\t\"voice-btn-active\": isRecording(),\n\t\t\t\"voice-btn-processing\": isProcessing() || isTranscribing(),\n\t\t\t\"voice-btn-disabled\": !supported()\n\t\t})}${attr(\"disabled\", !supported() || isProcessing(), true)}${attr(\"aria-label\", !supported() ? \"Voice input unavailable\" : isRecording() ? \"Stop recording\" : isTranscribing() ? \"Transcribing…\" : isProcessing() ? \"Sending message…\" : \"Start recording\")}${attr(\"aria-pressed\", isRecording())}${attr(\"title\", !supported() ? \"Voice input is unavailable — no speech-to-text engine is configured for this browser\" : isRecording() ? \"Stop recording\" : isTranscribing() ? \"Transcribing…\" : isProcessing() ? \"Sending message…\" : \"Speak — message will be sent to the selected assistant\")}>`);\n\t\tif (!supported()) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<svg aria-hidden=\"true\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"svelte-7elv0w\"><line x1=\"1\" y1=\"1\" x2=\"23\" y2=\"23\" class=\"svelte-7elv0w\"></line><path d=\"M9 9v3a3 3 0 0 0 5.12 2.12M15 9.34V4a3 3 0 0 0-5.94-.6\" class=\"svelte-7elv0w\"></path><path d=\"M17 16.95A7 7 0 0 1 5 12v-2m14 0v2a7 7 0 0 1-.11 1.23\" class=\"svelte-7elv0w\"></path><line x1=\"12\" y1=\"19\" x2=\"12\" y2=\"23\" class=\"svelte-7elv0w\"></line><line x1=\"8\" y1=\"23\" x2=\"16\" y2=\"23\" class=\"svelte-7elv0w\"></line></svg>`);\n\t\t} else if (isTranscribing() || isProcessing()) {\n\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\t$$renderer.push(`<span class=\"voice-spinner svelte-7elv0w\" aria-hidden=\"true\"></span>`);\n\t\t} else if (isRecording()) {\n\t\t\t$$renderer.push(\"<!--[2-->\");\n\t\t\t$$renderer.push(`<svg aria-hidden=\"true\" width=\"14\" height=\"14\" viewBox=\"0 0 24 24\" fill=\"currentColor\" class=\"svelte-7elv0w\"><rect x=\"6\" y=\"6\" width=\"12\" height=\"12\" rx=\"1.5\" class=\"svelte-7elv0w\"></rect></svg> <span class=\"voice-pulse svelte-7elv0w\" aria-hidden=\"true\"></span>`);\n\t\t} else {\n\t\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<svg aria-hidden=\"true\" width=\"16\" height=\"16\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\" class=\"svelte-7elv0w\"><path d=\"M12 1a3 3 0 0 0-3 3v8a3 3 0 0 0 6 0V4a3 3 0 0 0-3-3z\" class=\"svelte-7elv0w\"></path><path d=\"M19 10v2a7 7 0 0 1-14 0v-2\" class=\"svelte-7elv0w\"></path><line x1=\"12\" y1=\"19\" x2=\"12\" y2=\"23\" class=\"svelte-7elv0w\"></line><line x1=\"8\" y1=\"23\" x2=\"16\" y2=\"23\" class=\"svelte-7elv0w\"></line></svg>`);\n\t\t}\n\t\t$$renderer.push(`<!--]--></button> <span class=\"sr-only svelte-7elv0w\" aria-live=\"polite\">${escape_html(isRecording() && voiceState.interimTranscript ? voiceState.interimTranscript : isRecording() ? \"Recording\" : isTranscribing() ? \"Transcribing\" : isProcessing() ? \"Sending message to assistant\" : isSpeaking() ? \"Assistant is speaking\" : voiceState.ttsAutoEnabled ? \"Spoken responses on\" : \"\")}</span></div>`);\n\t});\n}\n//#endregion\n//#region src/lib/components/chrome/Navbar.svelte\nfunction chatIcon($$renderer) {\n\t$$renderer.push(`<svg aria-hidden=\"true\" width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><path d=\"M21 15a2 2 0 0 1-2 2H7l-4 4V5a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2z\"></path></svg>`);\n}\nfunction gearIcon($$renderer) {\n\t$$renderer.push(`<svg aria-hidden=\"true\" width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><circle cx=\"12\" cy=\"12\" r=\"3\"></circle><path d=\"M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 1 1-2.83 2.83l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-4 0v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 1 1-2.83-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1 0-4h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 1 1 2.83-2.83l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 4 0v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 1 1 2.83 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 0 4h-.09a1.65 1.65 0 0 0-1.51 1z\"></path></svg>`);\n}\nfunction Navbar($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tconst pathname = derived(() => page.url?.pathname ?? \"\");\n\t\tconst onAdmin = derived(() => pathname() === \"/admin\" || pathname().startsWith(\"/admin/\"));\n\t\tconst onChatSurface = derived(() => pathname() === \"/chat\" || pathname().startsWith(\"/chat/\"));\n\t\tconst onAdvancedSurface = derived(() => pathname() === \"/advanced\" || pathname().startsWith(\"/advanced/\"));\n\t\tconst isLocalAssistant = derived(() => {\n\t\t\tconst url = endpointsService.active?.url ?? \"\";\n\t\t\tif (!url) return true;\n\t\t\ttry {\n\t\t\t\tconst host = new URL(url).hostname;\n\t\t\t\treturn host === \"localhost\" || host === \"127.0.0.1\" || host === \"::1\" || host === \"host.docker.internal\";\n\t\t\t} catch {\n\t\t\t\treturn true;\n\t\t\t}\n\t\t});\n\t\t$$renderer.push(`<header class=\"navbar svelte-66bgq1\"><div class=\"navbar-inner svelte-66bgq1\"><a class=\"navbar-brand svelte-66bgq1\" href=\"/chat\" aria-label=\"OpenPalm — go to chat\"><span class=\"brand-icon svelte-66bgq1\" aria-hidden=\"true\"><img src=\"/logo-128.png\" alt=\"\" class=\"svelte-66bgq1\"/></span> <span class=\"brand-text svelte-66bgq1\">OpenPalm</span></a> <div class=\"navbar-actions svelte-66bgq1\">`);\n\t\tif (onAdmin()) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\tIconButton($$renderer, {\n\t\t\t\thref: \"/chat\",\n\t\t\t\tariaLabel: \"Back to chat\",\n\t\t\t\ttitle: \"Chat\",\n\t\t\t\ticon: chatIcon\n\t\t\t});\n\t\t} else if (isLocalAssistant()) {\n\t\t\t$$renderer.push(\"<!--[1-->\");\n\t\t\tIconButton($$renderer, {\n\t\t\t\thref: \"/admin\",\n\t\t\t\tariaLabel: \"Settings & administration\",\n\t\t\t\ttitle: \"Manage this machine\",\n\t\t\t\ticon: gearIcon\n\t\t\t});\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> `);\n\t\tif (onChatSurface()) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<span class=\"chat-selectors svelte-66bgq1\">`);\n\t\t\tEndpointSwitcher($$renderer, {});\n\t\t\t$$renderer.push(`<!----> `);\n\t\t\tSessionPicker($$renderer, {});\n\t\t\t$$renderer.push(`<!----></span>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> `);\n\t\tif (onChatSurface() || onAdvancedSurface()) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\tModeSwitch($$renderer, {});\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> `);\n\t\tThemeToggle($$renderer, {});\n\t\t$$renderer.push(`<!----> `);\n\t\tVoiceControl($$renderer, {});\n\t\t$$renderer.push(`<!----></div></div></header>`);\n\t});\n}\n//#endregion\nexport { endpointsService as a, formatTime as c, Drawer as i, SessionList as n, chat as o, EndpointList as r, IconButton as s, Navbar as t };\n"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"theme-state.svelte-mcvSSIO_.js","sources":["../../../.svelte-kit/adapter-node/chunks/theme-state.svelte.js"],"sourcesContent":["import \"./dev.js\";\n//#region src/lib/api.ts\nvar apiBase = \"\";\nfunction buildHeaders() {\n\treturn {\n\t\t\"x-request-id\": crypto.randomUUID(),\n\t\t\"x-requested-by\": \"ui\"\n\t};\n}\nasync function request(method, path, body) {\n\tconst headers = {\n\t\t...body !== void 0 ? { \"content-type\": \"application/json\" } : {},\n\t\t...buildHeaders()\n\t};\n\treturn fetch(`${apiBase}${path}`, {\n\t\tmethod,\n\t\theaders,\n\t\tcredentials: \"include\",\n\t\t...body !== void 0 ? { body: JSON.stringify(body) } : {}\n\t});\n}\nasync function readErrorMessage(res, fallback = `Request failed (HTTP ${res.status})`) {\n\tif ((res.headers.get(\"content-type\") ?? \"\").includes(\"application/json\")) {\n\t\tconst data = await res.clone().json().catch((e) => {\n\t\t\tconsole.warn(\"[api] Failed to parse JSON error response:\", e);\n\t\t\treturn null;\n\t\t});\n\t\tif (data && typeof data.message === \"string\" && data.message.length > 0) return data.message;\n\t\tif (data && typeof data.error === \"string\" && data.error.length > 0) return data.error;\n\t}\n\treturn await res.text().catch((e) => {\n\t\tconsole.warn(\"[api] Failed to read error response text:\", e);\n\t\treturn \"\";\n\t}) || fallback;\n}\n/** Throw on 401; throw readErrorMessage on non-OK. Returns the response. */\nasync function requireOk(res, fallback) {\n\tif (res.status === 401) throw Object.assign(/* @__PURE__ */ new Error(\"Sign-in required.\"), { status: 401 });\n\tif (!res.ok) throw new Error(await readErrorMessage(res, fallback));\n\treturn res;\n}\nasync function fetchHealth() {\n\tconst [adminRes, guardianRes] = await Promise.all([request(\"GET\", \"/health\"), request(\"GET\", \"/guardian/health\").catch((e) => {\n\t\tconsole.warn(\"[api] Guardian health check failed:\", e);\n\t\treturn null;\n\t})]);\n\tconst admin = await adminRes.json();\n\tlet guardian = null;\n\tif (guardianRes) try {\n\t\tguardian = await guardianRes.json();\n\t} catch (e) {\n\t\tconsole.warn(\"[api] Failed to parse guardian health response:\", e);\n\t\tguardian = {\n\t\t\tstatus: \"unavailable\",\n\t\t\tservice: \"guardian\"\n\t\t};\n\t}\n\treturn {\n\t\tadmin,\n\t\tguardian\n\t};\n}\nasync function fetchContainers() {\n\treturn await (await requireOk(await request(\"GET\", \"/admin/containers/list\"))).json();\n}\nasync function containerAction(action, containerId) {\n\tawait requireOk(await request(\"POST\", {\n\t\tstart: \"/admin/containers/up\",\n\t\tstop: \"/admin/containers/down\",\n\t\trestart: \"/admin/containers/restart\"\n\t}[action], { service: containerId }));\n}\nasync function applyChanges() {\n\tconst res = await request(\"POST\", \"/admin/update\", {});\n\tif (res.status === 401) throw Object.assign(/* @__PURE__ */ new Error(\"Sign-in required.\"), { status: 401 });\n\tif (!(res.headers.get(\"content-type\") ?? \"\").includes(\"application/json\")) throw new Error(await readErrorMessage(res, `Apply failed (HTTP ${res.status})`));\n\treturn await res.json();\n}\nasync function upgradeStack() {\n\treturn await (await requireOk(await request(\"POST\", \"/admin/upgrade\", {}))).json();\n}\nasync function fetchVersions() {\n\treturn await (await requireOk(await request(\"GET\", \"/admin/versions\"))).json();\n}\nasync function fetchReleases() {\n\ttry {\n\t\tconst res = await request(\"GET\", \"/admin/versions/releases\");\n\t\tif (!res.ok) return { releases: [] };\n\t\treturn await res.json();\n\t} catch {\n\t\treturn { releases: [] };\n\t}\n}\n/**\n* List installable @openpalm/ui npm versions for the admin \"UI build\" picker.\n* The UI is independently versioned and distributed via npm, so these — not\n* GitHub platform release tags — are the valid inputs to downloadUiVersion().\n*/\nasync function fetchUiVersions() {\n\ttry {\n\t\tconst res = await request(\"GET\", \"/admin/versions/ui\");\n\t\tif (!res.ok) return { versions: [] };\n\t\treturn await res.json();\n\t} catch {\n\t\treturn { versions: [] };\n\t}\n}\nasync function setStackVersion(tag) {\n\treturn await (await requireOk(await request(\"PATCH\", \"/admin/stack-version\", { tag }))).json();\n}\nasync function downloadUiVersion(tag) {\n\treturn await (await requireOk(await request(\"POST\", \"/admin/ui-version\", { tag }))).json();\n}\nasync function fetchAutomations() {\n\treturn await (await requireOk(await request(\"GET\", \"/admin/automations\"))).json();\n}\nasync function fetchServiceLogs(options) {\n\tconst params = new URLSearchParams();\n\tif (options?.service) params.set(\"service\", options.service);\n\tif (options?.tail) params.set(\"tail\", String(options.tail));\n\tif (options?.since) params.set(\"since\", options.since);\n\tconst qs = params.toString();\n\treturn await (await requireOk(await request(\"GET\", `/admin/logs${qs ? `?${qs}` : \"\"}`))).json();\n}\nasync function fetchAddons() {\n\treturn (await (await requireOk(await request(\"GET\", \"/admin/addons\"))).json()).addons;\n}\nasync function fetchSecretFiles() {\n\treturn await (await requireOk(await request(\"GET\", \"/admin/secrets\"))).json();\n}\nasync function fetchSecretFile(name) {\n\treturn await (await requireOk(await request(\"GET\", `/admin/secrets/${encodeURIComponent(name)}`))).json();\n}\nasync function fetchVoiceConfig() {\n\treturn await (await requireOk(await request(\"GET\", \"/admin/voice\"))).json();\n}\nasync function fetchAkmConfig() {\n\treturn await (await requireOk(await request(\"GET\", \"/admin/akm\"))).json();\n}\nasync function fetchAkmHealth() {\n\treturn await (await requireOk(await request(\"GET\", \"/admin/akm/health\"))).json();\n}\nasync function fetchHostAkmSharing() {\n\treturn await (await requireOk(await request(\"GET\", \"/admin/akm/host-sharing\"))).json();\n}\nasync function pullImages() {\n\tawait requireOk(await request(\"POST\", \"/admin/containers/pull\", {}));\n}\nasync function fetchEndpoints() {\n\treturn await (await requireOk(await request(\"GET\", \"/admin/endpoints\"))).json();\n}\nasync function setActiveEndpoint(id) {\n\treturn await (await requireOk(await request(\"POST\", \"/admin/endpoints/active\", { id }))).json();\n}\n/**\n* Create a new OpenCode session via the SvelteKit broker.\n*\n* Only `/proxy/assistant/*` is reachable from the browser. The active\n* OpenCode instance is selected server-side via the connection switcher.\n*/\nasync function createSession() {\n\treturn await (await requireOk(await request(\"POST\", `/proxy/assistant/session`, {}))).json();\n}\n/**\n* List sessions on the active OpenCode endpoint.\n*\n* OpenCode returns `Array<Session>` with no ordering guarantee; we sort\n* desc by `time.updated` here so consumers can rely on it. See\n* docs/technical/multi-endpoint-session-ux.md §2.\n*/\nasync function listSessions() {\n\tconst summaries = (await (await requireOk(await request(\"GET\", \"/proxy/assistant/session\"))).json()).map((s) => ({\n\t\tid: s.id,\n\t\ttitle: s.title ?? \"\",\n\t\tcreatedAt: s.time?.created ?? 0,\n\t\tupdatedAt: s.time?.updated ?? s.time?.created ?? 0\n\t}));\n\tsummaries.sort((a, b) => b.updatedAt - a.updatedAt);\n\treturn summaries;\n}\n/**\n* Fetch the messages for a session and map them to UI `ChatMessage`s.\n*\n* Skips non-text parts (tool calls, files, reasoning, etc.). Empty-text\n* messages are dropped so the UI doesn't render placeholder bubbles.\n*/\nasync function getSessionMessages(sessionId) {\n\tconst rows = await (await requireOk(await request(\"GET\", `/proxy/assistant/session/${encodeURIComponent(sessionId)}/message`))).json();\n\tconst messages = [];\n\tfor (const row of rows) {\n\t\tconst text = row.parts.filter((p) => p.type === \"text\" && p.text).map((p) => p.text ?? \"\").join(\"\");\n\t\tif (!text) continue;\n\t\tmessages.push({\n\t\t\tid: row.info.id,\n\t\t\trole: row.info.role,\n\t\t\ttext,\n\t\t\ttimestamp: row.info.time?.created ?? Date.now()\n\t\t});\n\t}\n\treturn messages;\n}\n/**\n* Send a message to an existing OpenCode session via the SvelteKit broker.\n* Uses direct fetch with a 150s AbortSignal timeout — OpenCode responses\n* can take 30–120s.\n*/\nasync function sendChatMessage(sessionId, text) {\n\tconst res = await fetch(`/proxy/assistant/session/${encodeURIComponent(sessionId)}/message`, {\n\t\tmethod: \"POST\",\n\t\theaders: {\n\t\t\t\"content-type\": \"application/json\",\n\t\t\t...buildHeaders()\n\t\t},\n\t\tcredentials: \"include\",\n\t\tbody: JSON.stringify({ parts: [{\n\t\t\ttype: \"text\",\n\t\t\ttext\n\t\t}] }),\n\t\tsignal: AbortSignal.timeout(15e4)\n\t});\n\tif (res.status === 401) throw Object.assign(/* @__PURE__ */ new Error(\"Sign-in required.\"), { status: 401 });\n\tif (!res.ok) {\n\t\tconst msg = await readErrorMessage(res);\n\t\tthrow Object.assign(new Error(msg), { status: res.status });\n\t}\n\treturn await res.json();\n}\n//#endregion\n//#region src/lib/notifications.svelte.ts\nvar DEFAULT_TIMEOUTS = {\n\tinfo: 4e3,\n\tsuccess: 5e3,\n\terror: 8e3\n};\nvar Notifications = class {\n\ttoasts = [];\n\ttimers = /* @__PURE__ */ new Map();\n\tpush(kind, message, opts = {}) {\n\t\tconst id = opts.replaceId ?? (typeof crypto !== \"undefined\" && \"randomUUID\" in crypto ? crypto.randomUUID() : `t-${Date.now()}-${Math.random().toString(36).slice(2)}`);\n\t\tconst ttlMs = opts.sticky ? null : opts.ttlMs ?? DEFAULT_TIMEOUTS[kind];\n\t\tconst toast = {\n\t\t\tid,\n\t\t\tkind,\n\t\t\tmessage,\n\t\t\tttlMs\n\t\t};\n\t\tconst existingTimer = this.timers.get(id);\n\t\tif (existingTimer) {\n\t\t\tclearTimeout(existingTimer);\n\t\t\tthis.timers.delete(id);\n\t\t}\n\t\tconst existingIdx = this.toasts.findIndex((t) => t.id === id);\n\t\tif (existingIdx >= 0) {\n\t\t\tconst next = [...this.toasts];\n\t\t\tnext[existingIdx] = toast;\n\t\t\tthis.toasts = next;\n\t\t} else this.toasts = [...this.toasts, toast];\n\t\tif (ttlMs !== null) {\n\t\t\tconst timer = setTimeout(() => this.dismiss(id), ttlMs);\n\t\t\tthis.timers.set(id, timer);\n\t\t}\n\t\treturn id;\n\t}\n\tdismiss(id) {\n\t\tconst timer = this.timers.get(id);\n\t\tif (timer) {\n\t\t\tclearTimeout(timer);\n\t\t\tthis.timers.delete(id);\n\t\t}\n\t\tthis.toasts = this.toasts.filter((t) => t.id !== id);\n\t}\n\tclear() {\n\t\tfor (const timer of this.timers.values()) clearTimeout(timer);\n\t\tthis.timers.clear();\n\t\tthis.toasts = [];\n\t}\n};\nvar notifications = new Notifications();\n//#endregion\n//#region src/lib/voice/voice-state.svelte.ts\nvar VoiceState = class {\n\tstatus = \"idle\";\n\t/** True when the configured STT engine is actually usable from this browser. */\n\tsttSupported = false;\n\tttsSupported = false;\n\terrorMessage = \"\";\n\t/** Partial transcript text while browser STT is mid-utterance. Cleared on stop/error. */\n\tinterimTranscript = \"\";\n\t/** Active engine resolved from /admin/voice. */\n\tsttEngine = \"disabled\";\n\tttsEngine = \"disabled\";\n\t/** Optional language hint (forwarded to /api/transcribe). */\n\tsttLanguage = \"\";\n\t/** Global toggle: when true, assistant chat replies are spoken automatically. */\n\tttsAutoEnabled = false;\n\t/**\n\t* True when an audio.play() was rejected by the browser's autoplay\n\t* policy and we have a pending utterance waiting for a user gesture.\n\t* The chat UI renders a small \"click to resume\" banner; clicking it\n\t* calls resumeAutoplay() to actually play.\n\t*/\n\tautoplayBlocked = false;\n\t/**\n\t* Set when the configured STT engine is technically present in the\n\t* window but known to fail at runtime on this UA (e.g. iOS Safari\n\t* exposes SpeechRecognition but `start()` immediately errors with\n\t* `service-not-allowed`). The Voice settings tab uses this to hide or\n\t* disable the Browser STT card with the reason as a tooltip.\n\t*/\n\tbrowserSttUnsupportedReason = \"\";\n};\nvar voiceState = new VoiceState();\nvar TTS_AUTO_STORAGE_KEY = \"openpalm.tts.auto\";\nvar activeRecording = null;\nvar activeRecognition = null;\nvar recordingTimeout = null;\n/** Toggle the global auto-TTS flag and persist to localStorage. */\nfunction setTtsAutoEnabled(value) {\n\tconst wasEnabled = voiceState.ttsAutoEnabled;\n\tvoiceState.ttsAutoEnabled = value;\n\tif (typeof window !== \"undefined\") try {\n\t\twindow.localStorage.setItem(TTS_AUTO_STORAGE_KEY, value ? \"1\" : \"0\");\n\t} catch {}\n\tif (!value) {\n\t\tstopSpeaking();\n\t\treturn;\n\t}\n\tif (!wasEnabled) primeAudioForAutoplay();\n}\n/**\n* Play a 1-frame silent AudioBuffer through a transient AudioContext to\n* register the current user gesture with the browser's autoplay policy.\n* Safe to call repeatedly; failures are swallowed.\n*/\nfunction primeAudioForAutoplay() {\n\tif (typeof window === \"undefined\") return;\n\tconst Ctor = window.AudioContext ?? window.webkitAudioContext;\n\tif (!Ctor) return;\n\ttry {\n\t\tconst ctx = new Ctor();\n\t\tconst buffer = ctx.createBuffer(1, 1, 22050);\n\t\tconst source = ctx.createBufferSource();\n\t\tsource.buffer = buffer;\n\t\tsource.connect(ctx.destination);\n\t\tsource.start(0);\n\t\tsetTimeout(() => {\n\t\t\tctx.close().catch(() => {});\n\t\t}, 100);\n\t} catch {}\n}\n/** Resolve the SpeechRecognition constructor (Chrome prefixes it). */\nfunction getSpeechRecognitionCtor() {\n\tif (typeof window === \"undefined\") return void 0;\n\treturn window.SpeechRecognition ?? window.webkitSpeechRecognition ?? void 0;\n}\n/**\n* iOS Safari (and all WebKit-based browsers on iOS — Chrome/Edge/Firefox\n* on iOS are required by Apple to use WebKit) exposes SpeechRecognition\n* but `start()` immediately fires `error: service-not-allowed`. Detect\n* the UA up front so the picker can hide the Browser STT card rather\n* than let the user click a mic that silently does nothing.\n*\n* `MSStream` excludes old IE on Windows Phone, which used to spoof iPad\n* in the UA; harmless on modern browsers (always undefined).\n*/\nfunction isIosSafari() {\n\tif (typeof navigator === \"undefined\") return false;\n\tconst ua = navigator.userAgent ?? \"\";\n\tconst isIos = /iPad|iPhone|iPod/.test(ua);\n\tconst msStream = window.MSStream;\n\treturn isIos && !msStream;\n}\nfunction isMediaRecorderSupported() {\n\tif (typeof window === \"undefined\") return false;\n\tif (typeof MediaRecorder === \"undefined\") return false;\n\tif (!navigator?.mediaDevices?.getUserMedia) return false;\n\treturn true;\n}\nfunction resolveEngineSupport(engine) {\n\tswitch (engine) {\n\t\tcase \"browser\":\n\t\t\tif (voiceState.browserSttUnsupportedReason) return false;\n\t\t\treturn Boolean(getSpeechRecognitionCtor());\n\t\tcase \"remote\":\n\t\tcase \"openpalm-voice\": return isMediaRecorderSupported();\n\t\tdefault: return false;\n\t}\n}\nfunction normalizeEngine(raw) {\n\tif (raw === \"browser\" || raw === \"browser-stt\") return \"browser\";\n\tif (raw === \"openpalm-voice\") return \"openpalm-voice\";\n\tif (raw && !raw.startsWith(\"skip-\")) return \"remote\";\n\treturn \"disabled\";\n}\n/**\n* Probe browser capabilities and resolve which STT engine is active.\n* Must be called from onMount or $effect (client-side only).\n*/\nasync function initVoice() {\n\tconst browserTts = typeof window !== \"undefined\" && \"speechSynthesis\" in window;\n\tif (typeof window !== \"undefined\") try {\n\t\tvoiceState.ttsAutoEnabled = window.localStorage.getItem(TTS_AUTO_STORAGE_KEY) === \"1\";\n\t} catch {}\n\ttry {\n\t\tconst cfg = await fetchVoiceConfig();\n\t\tconst stt = cfg.stt ?? {};\n\t\tconst tts = cfg.tts ?? {};\n\t\tconst rawSttEngine = typeof stt.engine === \"string\" ? stt.engine : \"\";\n\t\tconst rawTtsEngine = typeof tts.engine === \"string\" ? tts.engine : \"\";\n\t\tvoiceState.sttLanguage = typeof stt.language === \"string\" ? stt.language : \"\";\n\t\tvoiceState.sttEngine = normalizeEngine(rawSttEngine);\n\t\tvoiceState.ttsEngine = normalizeEngine(rawTtsEngine);\n\t} catch {\n\t\tvoiceState.sttEngine = \"disabled\";\n\t\tvoiceState.ttsEngine = \"disabled\";\n\t}\n\tvoiceState.ttsSupported = voiceState.ttsEngine === \"openpalm-voice\" || voiceState.ttsEngine === \"remote\" || voiceState.ttsEngine === \"browser\" && browserTts;\n\tif (isIosSafari() && getSpeechRecognitionCtor()) {\n\t\tvoiceState.browserSttUnsupportedReason = \"iOS Safari does not support Web Speech recognition\";\n\t\tif (voiceState.sttEngine === \"browser\") voiceState.sttEngine = \"disabled\";\n\t} else voiceState.browserSttUnsupportedReason = \"\";\n\tif (voiceState.sttEngine === \"disabled\" && getSpeechRecognitionCtor() && !voiceState.browserSttUnsupportedReason) voiceState.sttEngine = \"browser\";\n\tvoiceState.sttSupported = resolveEngineSupport(voiceState.sttEngine);\n}\nvar activeAudio = null;\nvar activeAudioUrl = null;\nvar SPEAK_QUEUE_MAX = 3;\nvar speakQueue = [];\nvar overflowNoticed = false;\nvar pendingAutoplayAudio = null;\nvar pendingAutoplayUrl = null;\nfunction teardownActiveAudio() {\n\tif (activeAudio) {\n\t\tactiveAudio.onerror = null;\n\t\tactiveAudio.onended = null;\n\t\ttry {\n\t\t\tactiveAudio.pause();\n\t\t} catch {}\n\t\tactiveAudio.src = \"\";\n\t\tactiveAudio = null;\n\t}\n\tif (activeAudioUrl) {\n\t\tURL.revokeObjectURL(activeAudioUrl);\n\t\tactiveAudioUrl = null;\n\t}\n}\nfunction teardownPendingAutoplay() {\n\tif (pendingAutoplayAudio) {\n\t\tpendingAutoplayAudio.onerror = null;\n\t\tpendingAutoplayAudio.onended = null;\n\t\ttry {\n\t\t\tpendingAutoplayAudio.pause();\n\t\t} catch {}\n\t\tpendingAutoplayAudio.src = \"\";\n\t\tpendingAutoplayAudio = null;\n\t}\n\tif (pendingAutoplayUrl) {\n\t\tURL.revokeObjectURL(pendingAutoplayUrl);\n\t\tpendingAutoplayUrl = null;\n\t}\n\tvoiceState.autoplayBlocked = false;\n}\n/**\n* Read text aloud. Tries server-side TTS via /api/speak first (when the\n* configured engine is openpalm-voice or remote); falls back to browser\n* speech synthesis. Silent no-op if neither path is available.\n*\n* If a previous utterance is still playing, queues this one (FIFO, cap 3)\n* instead of cutting it off mid-sentence.\n*/\nasync function speakText(text) {\n\tif (typeof window === \"undefined\" || !text.trim()) return;\n\tif (voiceState.status === \"speaking\") {\n\t\tspeakQueue.push(text);\n\t\tlet dropped = 0;\n\t\twhile (speakQueue.length > SPEAK_QUEUE_MAX) {\n\t\t\tspeakQueue.shift();\n\t\t\tdropped += 1;\n\t\t}\n\t\tif (dropped > 0 && !overflowNoticed) {\n\t\t\toverflowNoticed = true;\n\t\t\tnotifications.push(\"info\", `Skipped ${dropped} spoken ${dropped === 1 ? \"reply\" : \"replies\"} — too much overlap. Lower the auto-speak chat rate.`);\n\t\t}\n\t\treturn;\n\t}\n\tawait playOne(text);\n}\n/** Internal: actually trigger the audio for one text chunk. */\nasync function playOne(text) {\n\tif (typeof window === \"undefined\" || !text.trim()) return;\n\tteardownPendingAutoplay();\n\tteardownActiveAudio();\n\tif (\"speechSynthesis\" in window) window.speechSynthesis.cancel();\n\tvoiceState.errorMessage = \"\";\n\tconst engine = voiceState.ttsEngine;\n\tconst useServer = engine === \"openpalm-voice\" || engine === \"remote\";\n\tif (useServer) {\n\t\tlet res;\n\t\ttry {\n\t\t\tres = await fetch(\"/api/speak\", {\n\t\t\t\tmethod: \"POST\",\n\t\t\t\theaders: { \"content-type\": \"application/json\" },\n\t\t\t\tcredentials: \"include\",\n\t\t\t\tbody: JSON.stringify({ text })\n\t\t\t});\n\t\t} catch {}\n\t\tif (res && res.ok && res.headers.get(\"content-type\")?.startsWith(\"audio/\")) {\n\t\t\tconst blob = await res.blob();\n\t\t\tconst url = URL.createObjectURL(blob);\n\t\t\tconst audio = new Audio(url);\n\t\t\tactiveAudio = audio;\n\t\t\tactiveAudioUrl = url;\n\t\t\taudio.onended = () => {\n\t\t\t\tvoiceState.status = \"idle\";\n\t\t\t\tteardownActiveAudio();\n\t\t\t\tconst next = speakQueue.shift();\n\t\t\t\tif (next) playOne(next);\n\t\t\t\telse overflowNoticed = false;\n\t\t\t};\n\t\t\taudio.onerror = () => {\n\t\t\t\tvoiceState.status = \"idle\";\n\t\t\t\tvoiceState.errorMessage = \"Audio playback failed.\";\n\t\t\t\tteardownActiveAudio();\n\t\t\t\tconst next = speakQueue.shift();\n\t\t\t\tif (next) playOne(next);\n\t\t\t\telse overflowNoticed = false;\n\t\t\t};\n\t\t\tvoiceState.status = \"speaking\";\n\t\t\ttry {\n\t\t\t\tawait audio.play();\n\t\t\t} catch {\n\t\t\t\tvoiceState.status = \"idle\";\n\t\t\t\tpendingAutoplayAudio = audio;\n\t\t\t\tpendingAutoplayUrl = url;\n\t\t\t\tactiveAudio = null;\n\t\t\t\tactiveAudioUrl = null;\n\t\t\t\tvoiceState.autoplayBlocked = true;\n\t\t\t}\n\t\t\treturn;\n\t\t}\n\t\tif (res && !res.ok) voiceState.errorMessage = await extractSpeakError(res);\n\t}\n\tif (!(\"speechSynthesis\" in window)) return;\n\tif (useServer) voiceState.errorMessage = \"\";\n\tconst utterance = new SpeechSynthesisUtterance(text);\n\tutterance.onstart = () => {\n\t\tvoiceState.status = \"speaking\";\n\t};\n\tutterance.onend = () => {\n\t\tvoiceState.status = \"idle\";\n\t\tconst next = speakQueue.shift();\n\t\tif (next) playOne(next);\n\t\telse overflowNoticed = false;\n\t};\n\tutterance.onerror = () => {\n\t\tvoiceState.status = \"idle\";\n\t\tconst next = speakQueue.shift();\n\t\tif (next) playOne(next);\n\t\telse overflowNoticed = false;\n\t};\n\twindow.speechSynthesis.speak(utterance);\n}\n/**\n* Convert a non-OK /api/speak response into a human-readable string.\n* Recognises the two common shapes the route returns; falls back to a\n* generic message keyed off the HTTP status.\n*/\nasync function extractSpeakError(res) {\n\tlet code;\n\ttry {\n\t\tconst data = await res.clone().json();\n\t\tif (typeof data.error === \"string\") code = data.error;\n\t} catch {}\n\tif (code === \"tts_not_configured\") return \"TTS is not configured.\";\n\tif (code === \"upstream_error\" || res.status === 502 || res.status === 503) return \"Voice engine is warming up — try again in a moment.\";\n\treturn `TTS failed (HTTP ${res.status}).`;\n}\n/** Cancel speech synthesis. Drops the entire queue. */\nfunction stopSpeaking() {\n\tspeakQueue.length = 0;\n\toverflowNoticed = false;\n\tteardownPendingAutoplay();\n\tteardownActiveAudio();\n\tif (typeof window !== \"undefined\" && \"speechSynthesis\" in window) window.speechSynthesis.cancel();\n\tvoiceState.status = \"idle\";\n}\n/**\n* Tear down per-component voice resources on unmount. Only cancels\n* any in-flight recording / recognition.\n*\n* Deliberately does NOT cancel `speechSynthesis` — that queue is a\n* window-level singleton and the user's auto-TTS toggle is persistent,\n* so a page navigation must not interrupt the assistant mid-utterance.\n* Explicit user actions (logout, mic click, toggle off) call\n* `stopSpeaking` directly.\n*/\nfunction destroyVoice() {\n\tif (recordingTimeout) {\n\t\tclearTimeout(recordingTimeout);\n\t\trecordingTimeout = null;\n\t}\n\tif (activeRecording) {\n\t\ttry {\n\t\t\tactiveRecording.cancel();\n\t\t} catch {}\n\t\tactiveRecording = null;\n\t}\n\tif (activeRecognition) {\n\t\ttry {\n\t\t\tactiveRecognition.stop();\n\t\t} catch {}\n\t\tactiveRecognition = null;\n\t}\n\tvoiceState.interimTranscript = \"\";\n\tvoiceState.status = \"idle\";\n}\n//#endregion\n//#region src/lib/theme-state.svelte.ts\nvar THEME_STORAGE_KEY = \"openpalm.theme\";\nvar THEME_ATTR = \"data-theme\";\nvar DARK_THEME_COLOR = \"#161c22\";\nvar LIGHT_THEME_COLOR = \"#f9fafb\";\nfunction isThemePreference(value) {\n\treturn value === \"light\" || value === \"dark\" || value === \"system\";\n}\nvar ThemeService = class {\n\tpreference = \"system\";\n\tresolved = \"light\";\n\tinitialized = false;\n\t#mediaQuery = null;\n\t#mediaChangeHandler = () => {\n\t\tif (this.preference !== \"system\") return;\n\t\tthis.resolved = this.#resolvePreference(\"system\");\n\t\tthis.#applyResolvedTheme();\n\t};\n\tinit() {\n\t\tif (typeof window === \"undefined\" || this.initialized) return;\n\t\tthis.preference = this.#readStoredPreference();\n\t\tthis.resolved = this.#resolvePreference(this.preference);\n\t\tthis.#subscribeToSystemTheme();\n\t\tthis.#applyResolvedTheme();\n\t\tthis.initialized = true;\n\t}\n\tsetPreference(preference) {\n\t\tthis.preference = preference;\n\t\tthis.resolved = this.#resolvePreference(preference);\n\t\tthis.#writeStoredPreference(preference);\n\t\tthis.#applyResolvedTheme();\n\t}\n\ttoggle() {\n\t\tthis.setPreference(this.resolved === \"dark\" ? \"light\" : \"dark\");\n\t}\n\tdispose() {\n\t\tif (this.#mediaQuery) if (typeof this.#mediaQuery.removeEventListener === \"function\") this.#mediaQuery.removeEventListener(\"change\", this.#mediaChangeHandler);\n\t\telse this.#mediaQuery.removeListener(this.#mediaChangeHandler);\n\t\tthis.#mediaQuery = null;\n\t\tthis.initialized = false;\n\t}\n\t#readStoredPreference() {\n\t\tif (typeof window === \"undefined\") return \"system\";\n\t\ttry {\n\t\t\tconst stored = window.localStorage.getItem(THEME_STORAGE_KEY);\n\t\t\treturn isThemePreference(stored) ? stored : \"system\";\n\t\t} catch {\n\t\t\treturn \"system\";\n\t\t}\n\t}\n\t#writeStoredPreference(preference) {\n\t\tif (typeof window === \"undefined\") return;\n\t\ttry {\n\t\t\twindow.localStorage.setItem(THEME_STORAGE_KEY, preference);\n\t\t} catch {}\n\t}\n\t#resolvePreference(preference) {\n\t\tif (preference === \"light\" || preference === \"dark\") return preference;\n\t\tif (typeof window === \"undefined\" || typeof window.matchMedia !== \"function\") return \"light\";\n\t\treturn window.matchMedia(\"(prefers-color-scheme: dark)\").matches ? \"dark\" : \"light\";\n\t}\n\t#subscribeToSystemTheme() {\n\t\tif (typeof window === \"undefined\" || typeof window.matchMedia !== \"function\") return;\n\t\tconst nextQuery = window.matchMedia(\"(prefers-color-scheme: dark)\");\n\t\tif (this.#mediaQuery === nextQuery) return;\n\t\tif (this.#mediaQuery) if (typeof this.#mediaQuery.removeEventListener === \"function\") this.#mediaQuery.removeEventListener(\"change\", this.#mediaChangeHandler);\n\t\telse this.#mediaQuery.removeListener(this.#mediaChangeHandler);\n\t\tthis.#mediaQuery = nextQuery;\n\t\tif (typeof nextQuery.addEventListener === \"function\") nextQuery.addEventListener(\"change\", this.#mediaChangeHandler);\n\t\telse nextQuery.addListener(this.#mediaChangeHandler);\n\t}\n\t#applyResolvedTheme() {\n\t\tif (typeof document === \"undefined\") return;\n\t\tconst root = document.documentElement;\n\t\troot.setAttribute(THEME_ATTR, this.resolved);\n\t\troot.style.colorScheme = this.resolved;\n\t\tconst themeColorMeta = document.querySelector(\"meta[name=\\\"theme-color\\\"]\");\n\t\tif (themeColorMeta) themeColorMeta.content = this.resolved === \"dark\" ? DARK_THEME_COLOR : LIGHT_THEME_COLOR;\n\t\tconst colorSchemeMeta = document.querySelector(\"meta[name=\\\"color-scheme\\\"]\");\n\t\tif (colorSchemeMeta) colorSchemeMeta.content = this.resolved;\n\t}\n};\nvar themeService = new ThemeService();\n//#endregion\nexport { listSessions as A, fetchSecretFile as C, fetchVersions as D, fetchUiVersions as E, upgradeStack as F, sendChatMessage as M, setActiveEndpoint as N, fetchVoiceConfig as O, setStackVersion as P, fetchReleases as S, fetchServiceLogs as T, fetchAutomations as _, speakText as a, fetchHealth as b, notifications as c, containerAction as d, createSession as f, fetchAkmHealth as g, fetchAkmConfig as h, setTtsAutoEnabled as i, pullImages as j, getSessionMessages as k, applyChanges as l, fetchAddons as m, destroyVoice as n, stopSpeaking as o, downloadUiVersion as p, initVoice as r, voiceState as s, themeService as t, buildHeaders as u, fetchContainers as v, fetchSecretFiles as w, fetchHostAkmSharing as x, fetchEndpoints as y };\n"],"names":[],"mappings":"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"}