@openpalm/ui 0.11.5-rc.3 → 0.11.5-rc.5

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 (390) hide show
  1. package/build/.openpalm-ui-version +1 -1
  2. package/build/client/_app/immutable/assets/4.Cg0DWfRJ.css +1 -0
  3. package/build/client/_app/immutable/assets/4.Cg0DWfRJ.css.br +0 -0
  4. package/build/client/_app/immutable/assets/4.Cg0DWfRJ.css.gz +0 -0
  5. package/build/client/_app/immutable/assets/7.CtszQVIX.css +1 -0
  6. package/build/client/_app/immutable/assets/7.CtszQVIX.css.br +0 -0
  7. package/build/client/_app/immutable/assets/7.CtszQVIX.css.gz +0 -0
  8. package/build/client/_app/immutable/assets/ChatMessage.09JQ9G_F.css +1 -0
  9. package/build/client/_app/immutable/assets/ChatMessage.09JQ9G_F.css.br +0 -0
  10. package/build/client/_app/immutable/assets/ChatMessage.09JQ9G_F.css.gz +0 -0
  11. package/build/client/_app/immutable/chunks/B0yFRekZ.js +3 -0
  12. package/build/client/_app/immutable/chunks/B0yFRekZ.js.br +0 -0
  13. package/build/client/_app/immutable/chunks/B0yFRekZ.js.gz +0 -0
  14. package/build/client/_app/immutable/chunks/B6TDOH9N.js +5 -0
  15. package/build/client/_app/immutable/chunks/B6TDOH9N.js.br +0 -0
  16. package/build/client/_app/immutable/chunks/B6TDOH9N.js.gz +0 -0
  17. package/build/client/_app/immutable/chunks/{BQ0vnNWj.js → BAaXfhM-.js} +1 -1
  18. package/build/client/_app/immutable/chunks/BAaXfhM-.js.br +0 -0
  19. package/build/client/_app/immutable/chunks/BAaXfhM-.js.gz +0 -0
  20. package/build/client/_app/immutable/chunks/BKYOLYrG.js +15 -0
  21. package/build/client/_app/immutable/chunks/BKYOLYrG.js.br +0 -0
  22. package/build/client/_app/immutable/chunks/BKYOLYrG.js.gz +0 -0
  23. package/build/client/_app/immutable/chunks/{irujFCsS.js → B_FOicoS.js} +1 -1
  24. package/build/client/_app/immutable/chunks/B_FOicoS.js.br +0 -0
  25. package/build/client/_app/immutable/chunks/B_FOicoS.js.gz +0 -0
  26. package/build/client/_app/immutable/chunks/Bc91qquS.js +1 -0
  27. package/build/client/_app/immutable/chunks/Bc91qquS.js.br +0 -0
  28. package/build/client/_app/immutable/chunks/Bc91qquS.js.gz +0 -0
  29. package/build/client/_app/immutable/chunks/{CDS1U3lf.js → C0etjiv9.js} +2 -2
  30. package/build/client/_app/immutable/chunks/C0etjiv9.js.br +0 -0
  31. package/build/client/_app/immutable/chunks/C0etjiv9.js.gz +0 -0
  32. package/build/client/_app/immutable/chunks/CDYZd3Dt.js +1 -0
  33. package/build/client/_app/immutable/chunks/CDYZd3Dt.js.br +1 -0
  34. package/build/client/_app/immutable/chunks/CDYZd3Dt.js.gz +0 -0
  35. package/build/client/_app/immutable/chunks/{BTsRblfw.js → CghSfF6U.js} +1 -1
  36. package/build/client/_app/immutable/chunks/CghSfF6U.js.br +0 -0
  37. package/build/client/_app/immutable/chunks/CghSfF6U.js.gz +0 -0
  38. package/build/client/_app/immutable/chunks/DTZmSm97.js +1 -0
  39. package/build/client/_app/immutable/chunks/DTZmSm97.js.br +2 -0
  40. package/build/client/_app/immutable/chunks/DTZmSm97.js.gz +0 -0
  41. package/build/client/_app/immutable/entry/app.CIC2xFmj.js +2 -0
  42. package/build/client/_app/immutable/entry/app.CIC2xFmj.js.br +0 -0
  43. package/build/client/_app/immutable/entry/app.CIC2xFmj.js.gz +0 -0
  44. package/build/client/_app/immutable/entry/start.PCdanKMO.js +1 -0
  45. package/build/client/_app/immutable/entry/start.PCdanKMO.js.br +0 -0
  46. package/build/client/_app/immutable/entry/start.PCdanKMO.js.gz +0 -0
  47. package/build/client/_app/immutable/nodes/0.CmaZoW6Y.js +1 -0
  48. package/build/client/_app/immutable/nodes/0.CmaZoW6Y.js.br +0 -0
  49. package/build/client/_app/immutable/nodes/0.CmaZoW6Y.js.gz +0 -0
  50. package/build/client/_app/immutable/nodes/1.BhQMYP2N.js +1 -0
  51. package/build/client/_app/immutable/nodes/1.BhQMYP2N.js.br +3 -0
  52. package/build/client/_app/immutable/nodes/1.BhQMYP2N.js.gz +0 -0
  53. package/build/client/_app/immutable/nodes/2.C-MzgTuq.js +1 -0
  54. package/build/client/_app/immutable/nodes/2.C-MzgTuq.js.br +0 -0
  55. package/build/client/_app/immutable/nodes/2.C-MzgTuq.js.gz +0 -0
  56. package/build/client/_app/immutable/nodes/3.DXmMKZyn.js +1 -0
  57. package/build/client/_app/immutable/nodes/3.DXmMKZyn.js.br +0 -0
  58. package/build/client/_app/immutable/nodes/3.DXmMKZyn.js.gz +0 -0
  59. package/build/client/_app/immutable/nodes/4.B9yFE6HR.js +19 -0
  60. package/build/client/_app/immutable/nodes/4.B9yFE6HR.js.br +0 -0
  61. package/build/client/_app/immutable/nodes/4.B9yFE6HR.js.gz +0 -0
  62. package/build/client/_app/immutable/nodes/5.BeNqQzJI.js +4 -0
  63. package/build/client/_app/immutable/nodes/5.BeNqQzJI.js.br +0 -0
  64. package/build/client/_app/immutable/nodes/5.BeNqQzJI.js.gz +0 -0
  65. package/build/client/_app/immutable/nodes/6.t6Qb5QFT.js +1 -0
  66. package/build/client/_app/immutable/nodes/6.t6Qb5QFT.js.br +0 -0
  67. package/build/client/_app/immutable/nodes/6.t6Qb5QFT.js.gz +0 -0
  68. package/build/client/_app/immutable/nodes/7.D4yXtdUW.js +1 -0
  69. package/build/client/_app/immutable/nodes/7.D4yXtdUW.js.br +0 -0
  70. package/build/client/_app/immutable/nodes/7.D4yXtdUW.js.gz +0 -0
  71. package/build/client/_app/immutable/nodes/8.CaUTWkJ5.js +1 -0
  72. package/build/client/_app/immutable/nodes/8.CaUTWkJ5.js.br +0 -0
  73. package/build/client/_app/immutable/nodes/8.CaUTWkJ5.js.gz +0 -0
  74. package/build/client/_app/immutable/nodes/9.B1IAKpfH.js +5 -0
  75. package/build/client/_app/immutable/nodes/9.B1IAKpfH.js.br +0 -0
  76. package/build/client/_app/immutable/nodes/9.B1IAKpfH.js.gz +0 -0
  77. package/build/client/_app/version.json +1 -1
  78. package/build/client/_app/version.json.br +1 -1
  79. package/build/client/_app/version.json.gz +0 -0
  80. package/build/server/chunks/0-C0Wm0uh4.js +9 -0
  81. package/build/server/chunks/{0-BGsPZcaQ.js.map → 0-C0Wm0uh4.js.map} +1 -1
  82. package/build/server/chunks/1-BO1FboQo.js +9 -0
  83. package/build/server/chunks/{1-Daoybjaw.js.map → 1-BO1FboQo.js.map} +1 -1
  84. package/build/server/chunks/{2-DQWoUtW1.js → 2-wNOz2qR7.js} +2 -2
  85. package/build/server/chunks/{2-DQWoUtW1.js.map → 2-wNOz2qR7.js.map} +1 -1
  86. package/build/server/chunks/{3-COIGgysA.js → 3-CMcVVZ5t.js} +2 -2
  87. package/build/server/chunks/{3-COIGgysA.js.map → 3-CMcVVZ5t.js.map} +1 -1
  88. package/build/server/chunks/4-Cy42KZEq.js +9 -0
  89. package/build/server/chunks/4-Cy42KZEq.js.map +1 -0
  90. package/build/server/chunks/5-wTAacz_u.js +9 -0
  91. package/build/server/chunks/{5-BfmhtNP9.js.map → 5-wTAacz_u.js.map} +1 -1
  92. package/build/server/chunks/6-CwuJSZNK.js +9 -0
  93. package/build/server/chunks/{6-AcylLX8-.js.map → 6-CwuJSZNK.js.map} +1 -1
  94. package/build/server/chunks/7-BhucvAxb.js +9 -0
  95. package/build/server/chunks/7-BhucvAxb.js.map +1 -0
  96. package/build/server/chunks/{8-DMgWQQBm.js → 8-BbmPm5QQ.js} +3 -3
  97. package/build/server/chunks/{8-DMgWQQBm.js.map → 8-BbmPm5QQ.js.map} +1 -1
  98. package/build/server/chunks/{9-CGVsBC0_.js → 9-BCmr-315.js} +2 -2
  99. package/build/server/chunks/{9-CGVsBC0_.js.map → 9-BCmr-315.js.map} +1 -1
  100. package/build/server/chunks/{_page.svelte-C0eMsRDk.js → ChatMessage-DV_A9qbU.js} +8 -105
  101. package/build/server/chunks/ChatMessage-DV_A9qbU.js.map +1 -0
  102. package/build/server/chunks/{Navbar-C9kE6wR-.js → Navbar-Djg-dawo.js} +490 -38
  103. package/build/server/chunks/Navbar-Djg-dawo.js.map +1 -0
  104. package/build/server/chunks/{_layout.svelte-DCfzq18z.js → _layout.svelte-DzBCdyUD.js} +2 -2
  105. package/build/server/chunks/{_layout.svelte-DCfzq18z.js.map → _layout.svelte-DzBCdyUD.js.map} +1 -1
  106. package/build/server/chunks/{_page.svelte-BA7DptUV.js → _page.svelte-0Fseybo3.js} +3 -3
  107. package/build/server/chunks/{_page.svelte-BA7DptUV.js.map → _page.svelte-0Fseybo3.js.map} +1 -1
  108. package/build/server/chunks/{_page.svelte-B3FJ13Ci.js → _page.svelte-C41AgWxR.js} +6 -6
  109. package/build/server/chunks/{_page.svelte-B3FJ13Ci.js.map → _page.svelte-C41AgWxR.js.map} +1 -1
  110. package/build/server/chunks/{_page.svelte-Dnt12F6c.js → _page.svelte-CF0NIwNQ.js} +6 -6
  111. package/build/server/chunks/{_page.svelte-Dnt12F6c.js.map → _page.svelte-CF0NIwNQ.js.map} +1 -1
  112. package/build/server/chunks/_page.svelte-DHges4Pl.js +326 -0
  113. package/build/server/chunks/_page.svelte-DHges4Pl.js.map +1 -0
  114. package/build/server/chunks/{_page.svelte-Dl3WoXNo.js → _page.svelte-GBRvAIuJ.js} +229 -12
  115. package/build/server/chunks/_page.svelte-GBRvAIuJ.js.map +1 -0
  116. package/build/server/chunks/{_server.ts-3JO3CKsE.js → _server.ts-1QDB0bka.js} +4 -4
  117. package/build/server/chunks/{_server.ts-3JO3CKsE.js.map → _server.ts-1QDB0bka.js.map} +1 -1
  118. package/build/server/chunks/{_server.ts-D8cp-Em3.js → _server.ts-8gRao4pC.js} +4 -4
  119. package/build/server/chunks/{_server.ts-D8cp-Em3.js.map → _server.ts-8gRao4pC.js.map} +1 -1
  120. package/build/server/chunks/{_server.ts-BNJn20vV.js → _server.ts-9P7a99w7.js} +4 -4
  121. package/build/server/chunks/{_server.ts-BNJn20vV.js.map → _server.ts-9P7a99w7.js.map} +1 -1
  122. package/build/server/chunks/{_server.ts-CciSVwzg.js → _server.ts-AOvZbE_q.js} +5 -5
  123. package/build/server/chunks/{_server.ts-CciSVwzg.js.map → _server.ts-AOvZbE_q.js.map} +1 -1
  124. package/build/server/chunks/{_server.ts-BvbnbZsl.js → _server.ts-B35VhBNb.js} +4 -4
  125. package/build/server/chunks/{_server.ts-BvbnbZsl.js.map → _server.ts-B35VhBNb.js.map} +1 -1
  126. package/build/server/chunks/{_server.ts-CHQmAGEC.js → _server.ts-B3OHtJvn.js} +5 -5
  127. package/build/server/chunks/{_server.ts-CHQmAGEC.js.map → _server.ts-B3OHtJvn.js.map} +1 -1
  128. package/build/server/chunks/{_server.ts-Do5L_4tt.js → _server.ts-BCLgKgV5.js} +4 -4
  129. package/build/server/chunks/{_server.ts-Do5L_4tt.js.map → _server.ts-BCLgKgV5.js.map} +1 -1
  130. package/build/server/chunks/{_server.ts-DVRyf5BI.js → _server.ts-BCtRrhpo.js} +4 -4
  131. package/build/server/chunks/{_server.ts-DVRyf5BI.js.map → _server.ts-BCtRrhpo.js.map} +1 -1
  132. package/build/server/chunks/{_server.ts-QvBpEIYu.js → _server.ts-BEir1hXE.js} +4 -4
  133. package/build/server/chunks/{_server.ts-QvBpEIYu.js.map → _server.ts-BEir1hXE.js.map} +1 -1
  134. package/build/server/chunks/{_server.ts-CeeR1W32.js → _server.ts-BGhuGAqU.js} +4 -4
  135. package/build/server/chunks/{_server.ts-CeeR1W32.js.map → _server.ts-BGhuGAqU.js.map} +1 -1
  136. package/build/server/chunks/{_server.ts-D3QPUpDc.js → _server.ts-BMpV32HH.js} +4 -4
  137. package/build/server/chunks/{_server.ts-D3QPUpDc.js.map → _server.ts-BMpV32HH.js.map} +1 -1
  138. package/build/server/chunks/{_server.ts-E5YqcwqQ.js → _server.ts-BNfKymFO.js} +4 -4
  139. package/build/server/chunks/{_server.ts-E5YqcwqQ.js.map → _server.ts-BNfKymFO.js.map} +1 -1
  140. package/build/server/chunks/{_server.ts-DPC8qYUD.js → _server.ts-BPRY2j_2.js} +4 -4
  141. package/build/server/chunks/{_server.ts-DPC8qYUD.js.map → _server.ts-BPRY2j_2.js.map} +1 -1
  142. package/build/server/chunks/{_server.ts-C8zFV8J3.js → _server.ts-BPu3WMA2.js} +4 -4
  143. package/build/server/chunks/{_server.ts-C8zFV8J3.js.map → _server.ts-BPu3WMA2.js.map} +1 -1
  144. package/build/server/chunks/{_server.ts-D-Vwef5C.js → _server.ts-BTD23brV.js} +4 -4
  145. package/build/server/chunks/{_server.ts-D-Vwef5C.js.map → _server.ts-BTD23brV.js.map} +1 -1
  146. package/build/server/chunks/{_server.ts-Gbkg-oto.js → _server.ts-BUexy9Bs.js} +4 -4
  147. package/build/server/chunks/{_server.ts-Gbkg-oto.js.map → _server.ts-BUexy9Bs.js.map} +1 -1
  148. package/build/server/chunks/{_server.ts-CdB1K2M6.js → _server.ts-BWuDPAZI.js} +2 -2
  149. package/build/server/chunks/{_server.ts-CdB1K2M6.js.map → _server.ts-BWuDPAZI.js.map} +1 -1
  150. package/build/server/chunks/{_server.ts-MGn-MXr5.js → _server.ts-B_A1pH6i.js} +4 -4
  151. package/build/server/chunks/{_server.ts-MGn-MXr5.js.map → _server.ts-B_A1pH6i.js.map} +1 -1
  152. package/build/server/chunks/{_server.ts-Dc9XEMmF.js → _server.ts-BbpEaFjU.js} +4 -4
  153. package/build/server/chunks/{_server.ts-Dc9XEMmF.js.map → _server.ts-BbpEaFjU.js.map} +1 -1
  154. package/build/server/chunks/{_server.ts-DHBX6Ary.js → _server.ts-BiiFhOLE.js} +5 -5
  155. package/build/server/chunks/{_server.ts-DHBX6Ary.js.map → _server.ts-BiiFhOLE.js.map} +1 -1
  156. package/build/server/chunks/{_server.ts-ykNeG8km.js → _server.ts-Bq99b7U6.js} +4 -4
  157. package/build/server/chunks/{_server.ts-ykNeG8km.js.map → _server.ts-Bq99b7U6.js.map} +1 -1
  158. package/build/server/chunks/{_server.ts-CreuvDch.js → _server.ts-BvCT6Mjh.js} +4 -4
  159. package/build/server/chunks/{_server.ts-CreuvDch.js.map → _server.ts-BvCT6Mjh.js.map} +1 -1
  160. package/build/server/chunks/{_server.ts-DAW24-9-.js → _server.ts-Bw7wH5nP.js} +4 -4
  161. package/build/server/chunks/{_server.ts-DAW24-9-.js.map → _server.ts-Bw7wH5nP.js.map} +1 -1
  162. package/build/server/chunks/{_server.ts-BEjyvkVV.js → _server.ts-C3Y82EbX.js} +4 -4
  163. package/build/server/chunks/{_server.ts-BEjyvkVV.js.map → _server.ts-C3Y82EbX.js.map} +1 -1
  164. package/build/server/chunks/{_server.ts-4HorMS2R.js → _server.ts-C58ziWGi.js} +4 -4
  165. package/build/server/chunks/{_server.ts-4HorMS2R.js.map → _server.ts-C58ziWGi.js.map} +1 -1
  166. package/build/server/chunks/{_server.ts-DLVGDzlE.js → _server.ts-C8NNR7lm.js} +4 -4
  167. package/build/server/chunks/{_server.ts-DLVGDzlE.js.map → _server.ts-C8NNR7lm.js.map} +1 -1
  168. package/build/server/chunks/{_server.ts-BTvZB-WH.js → _server.ts-CHvr_s0m.js} +4 -4
  169. package/build/server/chunks/{_server.ts-BTvZB-WH.js.map → _server.ts-CHvr_s0m.js.map} +1 -1
  170. package/build/server/chunks/{_server.ts-CX2sHcZR.js → _server.ts-CPKa2U2F.js} +4 -4
  171. package/build/server/chunks/{_server.ts-CX2sHcZR.js.map → _server.ts-CPKa2U2F.js.map} +1 -1
  172. package/build/server/chunks/{_server.ts-CH8uRkxq.js → _server.ts-CQmJIAUn.js} +4 -4
  173. package/build/server/chunks/{_server.ts-CH8uRkxq.js.map → _server.ts-CQmJIAUn.js.map} +1 -1
  174. package/build/server/chunks/{_server.ts-Bu_7eQaL.js → _server.ts-CSzLOBbB.js} +5 -5
  175. package/build/server/chunks/{_server.ts-Bu_7eQaL.js.map → _server.ts-CSzLOBbB.js.map} +1 -1
  176. package/build/server/chunks/_server.ts-CWWHoyPz.js +48 -0
  177. package/build/server/chunks/_server.ts-CWWHoyPz.js.map +1 -0
  178. package/build/server/chunks/{_server.ts-DlwXpopR.js → _server.ts-CakB2g2B.js} +3 -3
  179. package/build/server/chunks/{_server.ts-DlwXpopR.js.map → _server.ts-CakB2g2B.js.map} +1 -1
  180. package/build/server/chunks/{_server.ts-BdLKHRnY.js → _server.ts-CbB7X8WD.js} +6 -6
  181. package/build/server/chunks/{_server.ts-BdLKHRnY.js.map → _server.ts-CbB7X8WD.js.map} +1 -1
  182. package/build/server/chunks/{_server.ts-BWtTOsFi.js → _server.ts-Ch5VrU5z.js} +4 -4
  183. package/build/server/chunks/{_server.ts-BWtTOsFi.js.map → _server.ts-Ch5VrU5z.js.map} +1 -1
  184. package/build/server/chunks/{_server.ts-C7K7bv8w.js → _server.ts-CmcgtPlf.js} +5 -5
  185. package/build/server/chunks/{_server.ts-C7K7bv8w.js.map → _server.ts-CmcgtPlf.js.map} +1 -1
  186. package/build/server/chunks/_server.ts-Cu3yIoGR.js +627 -0
  187. package/build/server/chunks/_server.ts-Cu3yIoGR.js.map +1 -0
  188. package/build/server/chunks/{_server.ts-CXI7k8hl.js → _server.ts-CuEcjgfs.js} +4 -4
  189. package/build/server/chunks/{_server.ts-CXI7k8hl.js.map → _server.ts-CuEcjgfs.js.map} +1 -1
  190. package/build/server/chunks/{_server.ts-pQ9okj_b.js → _server.ts-CyTEh-kp.js} +6 -6
  191. package/build/server/chunks/{_server.ts-pQ9okj_b.js.map → _server.ts-CyTEh-kp.js.map} +1 -1
  192. package/build/server/chunks/{_server.ts-BhRtn8Xn.js → _server.ts-CyxjwCIW.js} +4 -4
  193. package/build/server/chunks/{_server.ts-BhRtn8Xn.js.map → _server.ts-CyxjwCIW.js.map} +1 -1
  194. package/build/server/chunks/{_server.ts-CXmwf1pu.js → _server.ts-CzHLF3XJ.js} +2 -2
  195. package/build/server/chunks/{_server.ts-CXmwf1pu.js.map → _server.ts-CzHLF3XJ.js.map} +1 -1
  196. package/build/server/chunks/{_server.ts-CqH3nv-S.js → _server.ts-CzcX98RF.js} +5 -5
  197. package/build/server/chunks/{_server.ts-CqH3nv-S.js.map → _server.ts-CzcX98RF.js.map} +1 -1
  198. package/build/server/chunks/{_server.ts-B31I037d.js → _server.ts-D4hS029K.js} +6 -6
  199. package/build/server/chunks/{_server.ts-B31I037d.js.map → _server.ts-D4hS029K.js.map} +1 -1
  200. package/build/server/chunks/{_server.ts-DzIilMO5.js → _server.ts-D5KmG8Iz.js} +2 -2
  201. package/build/server/chunks/{_server.ts-DzIilMO5.js.map → _server.ts-D5KmG8Iz.js.map} +1 -1
  202. package/build/server/chunks/{_server.ts-CbOKfJ3v.js → _server.ts-D6bq6_Fp.js} +6 -6
  203. package/build/server/chunks/{_server.ts-CbOKfJ3v.js.map → _server.ts-D6bq6_Fp.js.map} +1 -1
  204. package/build/server/chunks/{_server.ts-BUIWPYRF.js → _server.ts-DEL6C5fs.js} +4 -4
  205. package/build/server/chunks/{_server.ts-BUIWPYRF.js.map → _server.ts-DEL6C5fs.js.map} +1 -1
  206. package/build/server/chunks/{_server.ts-BGqa6Laa.js → _server.ts-DLMyOePt.js} +4 -4
  207. package/build/server/chunks/_server.ts-DLMyOePt.js.map +1 -0
  208. package/build/server/chunks/{_server.ts-CNLz6iJ7.js → _server.ts-DLkvAnm7.js} +4 -4
  209. package/build/server/chunks/{_server.ts-CNLz6iJ7.js.map → _server.ts-DLkvAnm7.js.map} +1 -1
  210. package/build/server/chunks/{_server.ts-B1Jl9Grz.js → _server.ts-DTVKXoI5.js} +4 -4
  211. package/build/server/chunks/{_server.ts-B1Jl9Grz.js.map → _server.ts-DTVKXoI5.js.map} +1 -1
  212. package/build/server/chunks/{_server.ts-Bq4Oko-2.js → _server.ts-DZ7Ko_32.js} +4 -4
  213. package/build/server/chunks/{_server.ts-Bq4Oko-2.js.map → _server.ts-DZ7Ko_32.js.map} +1 -1
  214. package/build/server/chunks/{_server.ts-DL9hlvL8.js → _server.ts-DZY0Qpnk.js} +4 -4
  215. package/build/server/chunks/{_server.ts-DL9hlvL8.js.map → _server.ts-DZY0Qpnk.js.map} +1 -1
  216. package/build/server/chunks/{_server.ts-BY7nR9Ev.js → _server.ts-DcW9CTcB.js} +4 -4
  217. package/build/server/chunks/{_server.ts-BY7nR9Ev.js.map → _server.ts-DcW9CTcB.js.map} +1 -1
  218. package/build/server/chunks/{_server.ts-1mdOjWEN.js → _server.ts-Df17RBWC.js} +5 -5
  219. package/build/server/chunks/{_server.ts-1mdOjWEN.js.map → _server.ts-Df17RBWC.js.map} +1 -1
  220. package/build/server/chunks/{_server.ts-DsTUwnu1.js → _server.ts-Dh9SJATt.js} +4 -4
  221. package/build/server/chunks/{_server.ts-DsTUwnu1.js.map → _server.ts-Dh9SJATt.js.map} +1 -1
  222. package/build/server/chunks/{_server.ts-CIEz-ybk.js → _server.ts-DlDgeWtr.js} +4 -4
  223. package/build/server/chunks/{_server.ts-CIEz-ybk.js.map → _server.ts-DlDgeWtr.js.map} +1 -1
  224. package/build/server/chunks/{_server.ts-C8BrkC8T.js → _server.ts-Dmtbp8AT.js} +5 -5
  225. package/build/server/chunks/{_server.ts-C8BrkC8T.js.map → _server.ts-Dmtbp8AT.js.map} +1 -1
  226. package/build/server/chunks/_server.ts-Dnq1yxVI.js +205 -0
  227. package/build/server/chunks/_server.ts-Dnq1yxVI.js.map +1 -0
  228. package/build/server/chunks/{_server.ts-Dd4Mh0JV.js → _server.ts-DolRZ_5Z.js} +4 -4
  229. package/build/server/chunks/{_server.ts-Dd4Mh0JV.js.map → _server.ts-DolRZ_5Z.js.map} +1 -1
  230. package/build/server/chunks/{_server.ts-CpJ08_Lw.js → _server.ts-DrccDqL8.js} +4 -4
  231. package/build/server/chunks/{_server.ts-CpJ08_Lw.js.map → _server.ts-DrccDqL8.js.map} +1 -1
  232. package/build/server/chunks/{_server.ts-CD-Cddqe.js → _server.ts-Drxntihb.js} +5 -5
  233. package/build/server/chunks/{_server.ts-CD-Cddqe.js.map → _server.ts-Drxntihb.js.map} +1 -1
  234. package/build/server/chunks/{_server.ts-B3ntDGZM.js → _server.ts-Du4lTXoC.js} +5 -5
  235. package/build/server/chunks/{_server.ts-B3ntDGZM.js.map → _server.ts-Du4lTXoC.js.map} +1 -1
  236. package/build/server/chunks/{_server.ts-B8EZxkK3.js → _server.ts-Dvo786k1.js} +5 -5
  237. package/build/server/chunks/{_server.ts-B8EZxkK3.js.map → _server.ts-Dvo786k1.js.map} +1 -1
  238. package/build/server/chunks/{_server.ts-Lzz9ashZ.js → _server.ts-DxE9zbbG.js} +4 -4
  239. package/build/server/chunks/{_server.ts-Lzz9ashZ.js.map → _server.ts-DxE9zbbG.js.map} +1 -1
  240. package/build/server/chunks/{_server.ts-C4pf3VKi.js → _server.ts-DzVt4tZV.js} +4 -4
  241. package/build/server/chunks/{_server.ts-C4pf3VKi.js.map → _server.ts-DzVt4tZV.js.map} +1 -1
  242. package/build/server/chunks/{_server.ts-DY3ZDXdA.js → _server.ts-GnnvjDGL.js} +4 -4
  243. package/build/server/chunks/{_server.ts-DY3ZDXdA.js.map → _server.ts-GnnvjDGL.js.map} +1 -1
  244. package/build/server/chunks/{_server.ts-CVxiERfc.js → _server.ts-H1fnqBYP.js} +4 -4
  245. package/build/server/chunks/{_server.ts-CVxiERfc.js.map → _server.ts-H1fnqBYP.js.map} +1 -1
  246. package/build/server/chunks/{_server.ts-yWBMi6sn.js → _server.ts-OVberUvp.js} +6 -6
  247. package/build/server/chunks/{_server.ts-yWBMi6sn.js.map → _server.ts-OVberUvp.js.map} +1 -1
  248. package/build/server/chunks/_server.ts-Oh6upxFv.js +86 -0
  249. package/build/server/chunks/_server.ts-Oh6upxFv.js.map +1 -0
  250. package/build/server/chunks/{_server.ts-j5xF-dJX.js → _server.ts-TkRG9AFn.js} +4 -4
  251. package/build/server/chunks/{_server.ts-j5xF-dJX.js.map → _server.ts-TkRG9AFn.js.map} +1 -1
  252. package/build/server/chunks/{_server.ts-SLlbT28g.js → _server.ts-UwHoFWx1.js} +2 -2
  253. package/build/server/chunks/{_server.ts-SLlbT28g.js.map → _server.ts-UwHoFWx1.js.map} +1 -1
  254. package/build/server/chunks/{_server.ts-CtltE_T-.js → _server.ts-XArez5bY.js} +2 -2
  255. package/build/server/chunks/{_server.ts-CtltE_T-.js.map → _server.ts-XArez5bY.js.map} +1 -1
  256. package/build/server/chunks/{_server.ts-IzD0bafW.js → _server.ts-ZfDsuW2E.js} +5 -5
  257. package/build/server/chunks/{_server.ts-IzD0bafW.js.map → _server.ts-ZfDsuW2E.js.map} +1 -1
  258. package/build/server/chunks/{_server.ts-CzoE8edN.js → _server.ts-chaYrNFx.js} +5 -5
  259. package/build/server/chunks/{_server.ts-CzoE8edN.js.map → _server.ts-chaYrNFx.js.map} +1 -1
  260. package/build/server/chunks/{_server.ts-B8YF9aVx.js → _server.ts-lZxRvx5G.js} +4 -4
  261. package/build/server/chunks/{_server.ts-B8YF9aVx.js.map → _server.ts-lZxRvx5G.js.map} +1 -1
  262. package/build/server/chunks/{_server.ts-BHmCir74.js → _server.ts-v7meNBSR.js} +4 -4
  263. package/build/server/chunks/{_server.ts-BHmCir74.js.map → _server.ts-v7meNBSR.js.map} +1 -1
  264. package/build/server/chunks/{_server.ts-CExwMomX.js → _server.ts-vSoEzokn.js} +4 -4
  265. package/build/server/chunks/{_server.ts-CExwMomX.js.map → _server.ts-vSoEzokn.js.map} +1 -1
  266. package/build/server/chunks/{_server.ts-BLUm8wAq.js → _server.ts-x3-1Iy5T.js} +4 -4
  267. package/build/server/chunks/{_server.ts-BLUm8wAq.js.map → _server.ts-x3-1Iy5T.js.map} +1 -1
  268. package/build/server/chunks/{_server.ts-C_EnHMEu.js → _server.ts-z9JFYptL.js} +4 -4
  269. package/build/server/chunks/{_server.ts-C_EnHMEu.js.map → _server.ts-z9JFYptL.js.map} +1 -1
  270. package/build/server/chunks/{addon-helpers-DBJL8kvq.js → addon-helpers-o7ish5mE.js} +3 -3
  271. package/build/server/chunks/{addon-helpers-DBJL8kvq.js.map → addon-helpers-o7ish5mE.js.map} +1 -1
  272. package/build/server/chunks/{akm-hO0p79ZE.js → akm-W9nWVWkP.js} +2 -2
  273. package/build/server/chunks/{akm-hO0p79ZE.js.map → akm-W9nWVWkP.js.map} +1 -1
  274. package/build/server/chunks/{client-DchoQXpW.js → client-BxrkCo8A.js} +2 -2
  275. package/build/server/chunks/{client-DchoQXpW.js.map → client-BxrkCo8A.js.map} +1 -1
  276. package/build/server/chunks/{config-5vfdWPGq.js → config-DHWE6_Oh.js} +2 -2
  277. package/build/server/chunks/{config-5vfdWPGq.js.map → config-DHWE6_Oh.js.map} +1 -1
  278. package/build/server/chunks/{docker-DYeytgDI.js → docker-DTmz3vyS.js} +2 -2
  279. package/build/server/chunks/{docker-DYeytgDI.js.map → docker-DTmz3vyS.js.map} +1 -1
  280. package/build/server/chunks/{endpoints-pIoXJCW6.js → endpoints-DeqIjeS-.js} +19 -6
  281. package/build/server/chunks/endpoints-DeqIjeS-.js.map +1 -0
  282. package/build/server/chunks/{environment-B0PbsX5P.js → environment-eUM4Nrm3.js} +2 -2
  283. package/build/server/chunks/{environment-B0PbsX5P.js.map → environment-eUM4Nrm3.js.map} +1 -1
  284. package/build/server/chunks/{error.svelte-Cmr7gpdL.js → error.svelte-C1YZdXu0.js} +4 -4
  285. package/build/server/chunks/{error.svelte-Cmr7gpdL.js.map → error.svelte-C1YZdXu0.js.map} +1 -1
  286. package/build/server/chunks/{helpers-CVirrNSz.js → helpers-BxClonOR.js} +3 -3
  287. package/build/server/chunks/{helpers-CVirrNSz.js.map → helpers-BxClonOR.js.map} +1 -1
  288. package/build/server/chunks/{hooks.server-pc-TSpQy.js → hooks.server-BbqU1Xkl.js} +6 -6
  289. package/build/server/chunks/hooks.server-BbqU1Xkl.js.map +1 -0
  290. package/build/server/chunks/{http-DGsfa0DV.js → http-B4lcqCl2.js} +2 -2
  291. package/build/server/chunks/{http-DGsfa0DV.js.map → http-B4lcqCl2.js.map} +1 -1
  292. package/build/server/chunks/{internal-DriC3vi3.js → internal-BqydNqHi.js} +3 -3
  293. package/build/server/chunks/{internal-DriC3vi3.js.map → internal-BqydNqHi.js.map} +1 -1
  294. package/build/server/chunks/{session-cookie-DEuOwtHY.js → session-cookie-BhONF37G.js} +2 -2
  295. package/build/server/chunks/{session-cookie-DEuOwtHY.js.map → session-cookie-BhONF37G.js.map} +1 -1
  296. package/build/server/chunks/{setup-deploy-D4bnmfpV.js → setup-deploy-XJpbNV-N.js} +2 -2
  297. package/build/server/chunks/{setup-deploy-D4bnmfpV.js.map → setup-deploy-XJpbNV-N.js.map} +1 -1
  298. package/build/server/chunks/{src-CyeWH4Df.js → src-DGGmhx-_.js} +523 -69
  299. package/build/server/chunks/src-DGGmhx-_.js.map +1 -0
  300. package/build/server/chunks/{state-BcUnjLg5.js → state-Dd9gBPIF.js} +2 -2
  301. package/build/server/chunks/{state-BcUnjLg5.js.map → state-Dd9gBPIF.js.map} +1 -1
  302. package/build/server/chunks/{theme-state.svelte-CeABRes-.js → theme-state.svelte-_CMr5Hu9.js} +96 -24
  303. package/build/server/chunks/theme-state.svelte-_CMr5Hu9.js.map +1 -0
  304. package/build/server/index.js +2 -2
  305. package/build/server/manifest.js +106 -85
  306. package/build/server/manifest.js.map +1 -1
  307. package/package.json +3 -2
  308. package/build/client/_app/immutable/assets/4.BFLRjZM9.css +0 -1
  309. package/build/client/_app/immutable/assets/4.BFLRjZM9.css.br +0 -0
  310. package/build/client/_app/immutable/assets/4.BFLRjZM9.css.gz +0 -0
  311. package/build/client/_app/immutable/assets/7.DKl0e2Fb.css +0 -1
  312. package/build/client/_app/immutable/assets/7.DKl0e2Fb.css.br +0 -0
  313. package/build/client/_app/immutable/assets/7.DKl0e2Fb.css.gz +0 -0
  314. package/build/client/_app/immutable/chunks/0swOyi-5.js +0 -3
  315. package/build/client/_app/immutable/chunks/0swOyi-5.js.br +0 -0
  316. package/build/client/_app/immutable/chunks/0swOyi-5.js.gz +0 -0
  317. package/build/client/_app/immutable/chunks/B4LSIsxy.js +0 -1
  318. package/build/client/_app/immutable/chunks/B4LSIsxy.js.br +0 -2
  319. package/build/client/_app/immutable/chunks/B4LSIsxy.js.gz +0 -0
  320. package/build/client/_app/immutable/chunks/BQ0vnNWj.js.br +0 -1
  321. package/build/client/_app/immutable/chunks/BQ0vnNWj.js.gz +0 -0
  322. package/build/client/_app/immutable/chunks/BTsRblfw.js.br +0 -0
  323. package/build/client/_app/immutable/chunks/BTsRblfw.js.gz +0 -0
  324. package/build/client/_app/immutable/chunks/Bmfn2m9N.js +0 -1
  325. package/build/client/_app/immutable/chunks/Bmfn2m9N.js.br +0 -1
  326. package/build/client/_app/immutable/chunks/Bmfn2m9N.js.gz +0 -0
  327. package/build/client/_app/immutable/chunks/C-9oV3QK.js +0 -1
  328. package/build/client/_app/immutable/chunks/C-9oV3QK.js.br +0 -0
  329. package/build/client/_app/immutable/chunks/C-9oV3QK.js.gz +0 -0
  330. package/build/client/_app/immutable/chunks/CDS1U3lf.js.br +0 -0
  331. package/build/client/_app/immutable/chunks/CDS1U3lf.js.gz +0 -0
  332. package/build/client/_app/immutable/chunks/TM1MyO6b.js +0 -5
  333. package/build/client/_app/immutable/chunks/TM1MyO6b.js.br +0 -0
  334. package/build/client/_app/immutable/chunks/TM1MyO6b.js.gz +0 -0
  335. package/build/client/_app/immutable/chunks/irujFCsS.js.br +0 -0
  336. package/build/client/_app/immutable/chunks/irujFCsS.js.gz +0 -0
  337. package/build/client/_app/immutable/entry/app.j4FjlmJV.js +0 -2
  338. package/build/client/_app/immutable/entry/app.j4FjlmJV.js.br +0 -0
  339. package/build/client/_app/immutable/entry/app.j4FjlmJV.js.gz +0 -0
  340. package/build/client/_app/immutable/entry/start.BG0VgQz3.js +0 -1
  341. package/build/client/_app/immutable/entry/start.BG0VgQz3.js.br +0 -1
  342. package/build/client/_app/immutable/entry/start.BG0VgQz3.js.gz +0 -0
  343. package/build/client/_app/immutable/nodes/0.C7eQ_ow9.js +0 -1
  344. package/build/client/_app/immutable/nodes/0.C7eQ_ow9.js.br +0 -0
  345. package/build/client/_app/immutable/nodes/0.C7eQ_ow9.js.gz +0 -0
  346. package/build/client/_app/immutable/nodes/1.DOderKqv.js +0 -1
  347. package/build/client/_app/immutable/nodes/1.DOderKqv.js.br +0 -1
  348. package/build/client/_app/immutable/nodes/1.DOderKqv.js.gz +0 -0
  349. package/build/client/_app/immutable/nodes/2.B-8ehRO1.js +0 -1
  350. package/build/client/_app/immutable/nodes/2.B-8ehRO1.js.br +0 -0
  351. package/build/client/_app/immutable/nodes/2.B-8ehRO1.js.gz +0 -0
  352. package/build/client/_app/immutable/nodes/3.B_FXzjZB.js +0 -1
  353. package/build/client/_app/immutable/nodes/3.B_FXzjZB.js.br +0 -0
  354. package/build/client/_app/immutable/nodes/3.B_FXzjZB.js.gz +0 -0
  355. package/build/client/_app/immutable/nodes/4.CL9pbPfw.js +0 -19
  356. package/build/client/_app/immutable/nodes/4.CL9pbPfw.js.br +0 -0
  357. package/build/client/_app/immutable/nodes/4.CL9pbPfw.js.gz +0 -0
  358. package/build/client/_app/immutable/nodes/5.By0afU0Y.js +0 -4
  359. package/build/client/_app/immutable/nodes/5.By0afU0Y.js.br +0 -0
  360. package/build/client/_app/immutable/nodes/5.By0afU0Y.js.gz +0 -0
  361. package/build/client/_app/immutable/nodes/6.BnWmdf6t.js +0 -1
  362. package/build/client/_app/immutable/nodes/6.BnWmdf6t.js.br +0 -0
  363. package/build/client/_app/immutable/nodes/6.BnWmdf6t.js.gz +0 -0
  364. package/build/client/_app/immutable/nodes/7.RAc8_3qJ.js +0 -15
  365. package/build/client/_app/immutable/nodes/7.RAc8_3qJ.js.br +0 -0
  366. package/build/client/_app/immutable/nodes/7.RAc8_3qJ.js.gz +0 -0
  367. package/build/client/_app/immutable/nodes/8.Dytsowyk.js +0 -1
  368. package/build/client/_app/immutable/nodes/8.Dytsowyk.js.br +0 -0
  369. package/build/client/_app/immutable/nodes/8.Dytsowyk.js.gz +0 -0
  370. package/build/client/_app/immutable/nodes/9.CFQabEMi.js +0 -5
  371. package/build/client/_app/immutable/nodes/9.CFQabEMi.js.br +0 -0
  372. package/build/client/_app/immutable/nodes/9.CFQabEMi.js.gz +0 -0
  373. package/build/server/chunks/0-BGsPZcaQ.js +0 -9
  374. package/build/server/chunks/1-Daoybjaw.js +0 -9
  375. package/build/server/chunks/4-Lm1O6Rmh.js +0 -9
  376. package/build/server/chunks/4-Lm1O6Rmh.js.map +0 -1
  377. package/build/server/chunks/5-BfmhtNP9.js +0 -9
  378. package/build/server/chunks/6-AcylLX8-.js +0 -9
  379. package/build/server/chunks/7-BT0zxD9E.js +0 -9
  380. package/build/server/chunks/7-BT0zxD9E.js.map +0 -1
  381. package/build/server/chunks/Navbar-C9kE6wR-.js.map +0 -1
  382. package/build/server/chunks/_page.svelte-C0eMsRDk.js.map +0 -1
  383. package/build/server/chunks/_page.svelte-Dl3WoXNo.js.map +0 -1
  384. package/build/server/chunks/_server.ts-B79PxL9c.js +0 -91
  385. package/build/server/chunks/_server.ts-B79PxL9c.js.map +0 -1
  386. package/build/server/chunks/_server.ts-BGqa6Laa.js.map +0 -1
  387. package/build/server/chunks/endpoints-pIoXJCW6.js.map +0 -1
  388. package/build/server/chunks/hooks.server-pc-TSpQy.js.map +0 -1
  389. package/build/server/chunks/src-CyeWH4Df.js.map +0 -1
  390. package/build/server/chunks/theme-state.svelte-CeABRes-.js.map +0 -1
@@ -1,7 +1,7 @@
1
1
  import { o as derived, r as escape_html, p as ensure_array_like, e as attr_class, d as attr, a8 as stringify, f as attr_style } from './dev-B6xUe35c.js';
2
- import { a as afterNavigate, o as onDestroy, g as goto } from './client-DchoQXpW.js';
3
- import { h as fetchEndpoints, o as setActiveEndpoint, m as listSessions, l as getSessionMessages, c as createSession, s as sendChatMessage, w as voiceState, q as speakText, r as stopSpeaking, d as destroyVoice, u as themeService } from './theme-state.svelte-CeABRes-.js';
4
- import { p as page } from './state-BcUnjLg5.js';
2
+ import { a as afterNavigate, o as onDestroy, g as goto } from './client-BxrkCo8A.js';
3
+ import { h as fetchEndpoints, q as setActiveEndpoint, A as voiceState, u as speakText, m as listSessions, l as getSessionMessages, c as createSession, v as startChatMessageTurn, s as sendChatMessage, o as replyChatPermission, p as replyChatQuestion, r as rejectChatQuestion, w as stopSpeaking, d as destroyVoice, y as themeService } from './theme-state.svelte-_CMr5Hu9.js';
4
+ import { p as page } from './state-Dd9gBPIF.js';
5
5
  import { S as Spinner } from './Spinner-Bk6e83RX.js';
6
6
 
7
7
  //#region src/lib/format-date.ts
@@ -220,6 +220,150 @@ function SettingsDrawer($$renderer, $$props) {
220
220
  });
221
221
  }
222
222
  //#endregion
223
+ //#region src/lib/chat/oc-events.ts
224
+ function propStr(props, key) {
225
+ const value = props?.[key];
226
+ return typeof value === "string" ? value : void 0;
227
+ }
228
+ function partSnapshotType(event) {
229
+ if (event.type !== "message.part.updated") return null;
230
+ const part = event.properties?.part;
231
+ if (typeof part?.id === "string" && typeof part.type === "string") return {
232
+ partID: part.id,
233
+ type: part.type
234
+ };
235
+ return null;
236
+ }
237
+ function extractTextDelta(event, sessionId, reasoningPartIds) {
238
+ const props = event.properties ?? {};
239
+ if (propStr(props, "sessionID") !== sessionId) return null;
240
+ if (event.type === "session.next.text.delta") return propStr(props, "delta") ?? propStr(props, "text") ?? null;
241
+ if (event.type === "message.part.delta") {
242
+ const field = propStr(props, "field");
243
+ if (field && field !== "text") return null;
244
+ const partID = propStr(props, "partID");
245
+ if (partID && reasoningPartIds?.has(partID)) return null;
246
+ return propStr(props, "delta") ?? null;
247
+ }
248
+ return null;
249
+ }
250
+ function statusName(status) {
251
+ if (typeof status === "string") return status;
252
+ if (status && typeof status === "object" && typeof status.type === "string") return status.type;
253
+ }
254
+ function isTurnEnd(event, sessionId) {
255
+ const props = event.properties ?? {};
256
+ if (propStr(props, "sessionID") !== sessionId) return false;
257
+ if (event.type === "session.idle") return true;
258
+ if (event.type === "session.status") {
259
+ const name = statusName(props.status);
260
+ return name === "idle" || name === "completed" || name === "done";
261
+ }
262
+ return false;
263
+ }
264
+ function valueToText(value) {
265
+ if (typeof value === "string") return value;
266
+ if (value == null) return void 0;
267
+ if (typeof value === "number" || typeof value === "boolean") return String(value);
268
+ try {
269
+ return JSON.stringify(value);
270
+ } catch {
271
+ return;
272
+ }
273
+ }
274
+ function firstText(...values) {
275
+ for (const value of values) {
276
+ const text = valueToText(value);
277
+ if (text) return text;
278
+ }
279
+ }
280
+ function extractToolUpdate(event, sessionId) {
281
+ const props = event.properties ?? {};
282
+ if (propStr(props, "sessionID") !== sessionId) return null;
283
+ const part = props.part ?? props.tool;
284
+ if (event.type === "message.part.updated" && part && (part.type === "tool" || part.state)) {
285
+ const state = part.state ?? {};
286
+ return {
287
+ callID: String(part.callID ?? part.id ?? ""),
288
+ tool: String(part.tool ?? "tool"),
289
+ status: String(state.status ?? "running"),
290
+ title: typeof state.title === "string" ? state.title : void 0,
291
+ detail: firstText(state.input, state.metadata, state.progress, state.output),
292
+ output: valueToText(state.output),
293
+ error: typeof state.error === "string" ? state.error : void 0
294
+ };
295
+ }
296
+ if (event.type.startsWith("session.next.tool.")) {
297
+ const type = event.type.replace("session.next.tool.", "");
298
+ return {
299
+ callID: propStr(props, "callID") ?? "",
300
+ tool: propStr(props, "tool") ?? "tool",
301
+ status: type === "completed" ? "completed" : type === "failed" ? "error" : type === "called" ? "running" : propStr(props, "status") ?? "running",
302
+ title: propStr(props, "title") ?? propStr(props, "tool"),
303
+ detail: firstText(props.message, props.delta, props.progress, props.input, props.metadata),
304
+ output: firstText(props.output, props.result),
305
+ error: firstText(props.error)
306
+ };
307
+ }
308
+ return null;
309
+ }
310
+ function isSessionError(event, sessionId) {
311
+ return event.type === "session.error" && propStr(event.properties, "sessionID") === sessionId;
312
+ }
313
+ function extractPermissionAsk(event, sessionId) {
314
+ if (event.type !== "permission.asked") return null;
315
+ if (propStr(event.properties, "sessionID") !== sessionId) return null;
316
+ const id = propStr(event.properties, "id");
317
+ if (!id) return null;
318
+ const patterns = Array.isArray(event.properties?.patterns) ? event.properties.patterns.filter((item) => typeof item === "string") : [];
319
+ const always = Array.isArray(event.properties?.always) ? event.properties.always.filter((item) => typeof item === "string") : [];
320
+ const toolRecord = event.properties?.tool;
321
+ return {
322
+ requestID: id,
323
+ permission: propStr(event.properties, "permission") ?? "tool",
324
+ patterns,
325
+ always,
326
+ tool: propStr(toolRecord, "callID") ?? propStr(event.properties, "permission") ?? "tool",
327
+ detail: firstText(event.properties?.metadata, event.properties?.message) ?? ""
328
+ };
329
+ }
330
+ function extractQuestionAsk(event, sessionId) {
331
+ if (event.type !== "question.asked") return null;
332
+ if (propStr(event.properties, "sessionID") !== sessionId) return null;
333
+ const id = propStr(event.properties, "id");
334
+ if (!id) return null;
335
+ const rawQuestions = Array.isArray(event.properties?.questions) ? event.properties.questions : [];
336
+ const questions = [];
337
+ for (const raw of rawQuestions) {
338
+ const item = raw;
339
+ const options = Array.isArray(item.options) ? item.options.map((option) => option).filter((option) => typeof option.label === "string").map((option) => ({
340
+ label: option.label,
341
+ description: typeof option.description === "string" ? option.description : ""
342
+ })) : [];
343
+ questions.push({
344
+ question: typeof item.question === "string" ? item.question : "",
345
+ header: typeof item.header === "string" ? item.header : "",
346
+ options
347
+ });
348
+ }
349
+ if (questions.length === 0) return null;
350
+ return {
351
+ requestID: id,
352
+ questions
353
+ };
354
+ }
355
+ function extractStepUpdate(event, sessionId) {
356
+ const props = event.properties ?? {};
357
+ if (propStr(props, "sessionID") !== sessionId) return null;
358
+ if (event.type !== "session.next.step.started" && event.type !== "session.next.step.ended") return null;
359
+ return {
360
+ id: propStr(props, "stepID") ?? propStr(props, "id") ?? event.type,
361
+ title: propStr(props, "title") ?? propStr(props, "step") ?? (event.type === "session.next.step.started" ? "Working" : "Step complete"),
362
+ status: event.type === "session.next.step.ended" ? "completed" : "running",
363
+ detail: firstText(props.detail, props.message)
364
+ };
365
+ }
366
+ //#endregion
223
367
  //#region src/lib/chat/session-events.ts
224
368
  var INITIAL_BACKOFF_MS = 1e3;
225
369
  var MAX_BACKOFF_MS = 3e4;
@@ -308,6 +452,7 @@ function subscribeSessionEvents(handlers) {
308
452
  console.warn("[session-events] Bad JSON in SSE frame", err);
309
453
  continue;
310
454
  }
455
+ handlers.onEvent?.(payload);
311
456
  dispatch(handlers, payload);
312
457
  }
313
458
  }
@@ -343,7 +488,41 @@ function subscribeSessionEvents(handlers) {
343
488
  };
344
489
  }
345
490
  //#endregion
491
+ //#region src/lib/desktop-notifications.ts
492
+ var DESKTOP_NOTIFY_ENABLED_KEY = "openpalm.desktop.notify";
493
+ var DESKTOP_NOTIFY_PREVIEW_KEY = "openpalm.desktop.notify.preview";
494
+ function readFlag(key) {
495
+ if (typeof window === "undefined") return false;
496
+ try {
497
+ return window.localStorage.getItem(key) === "1";
498
+ } catch {
499
+ return false;
500
+ }
501
+ }
502
+ function desktopNotifyEnabled() {
503
+ return readFlag(DESKTOP_NOTIFY_ENABLED_KEY);
504
+ }
505
+ function desktopReplyPreviewEnabled() {
506
+ return readFlag(DESKTOP_NOTIFY_PREVIEW_KEY);
507
+ }
508
+ function shouldNotifyDesktop() {
509
+ if (typeof document === "undefined") return false;
510
+ if (document.hasFocus()) return false;
511
+ if (!desktopNotifyEnabled()) return false;
512
+ return typeof window !== "undefined" && typeof window.openpalm?.notify === "function";
513
+ }
514
+ function notifyAssistantReply(replyText) {
515
+ if (!shouldNotifyDesktop()) return;
516
+ const body = desktopReplyPreviewEnabled() && replyText.trim() ? replyText.trim() : "Assistant replied";
517
+ window.openpalm?.notify?.("OpenPalm", body);
518
+ }
519
+ function notifyAssistantError() {
520
+ if (!shouldNotifyDesktop()) return;
521
+ window.openpalm?.notify?.("OpenPalm", "Assistant error");
522
+ }
523
+ //#endregion
346
524
  //#region src/lib/chat/chat-state.svelte.ts
525
+ var STREAM_TURN_TIMEOUT_MS = 15e4;
347
526
  function emptyEndpointState() {
348
527
  return {
349
528
  sessions: [],
@@ -369,6 +548,10 @@ var ChatService = class {
369
548
  entriesLoading = false;
370
549
  sending = false;
371
550
  error = "";
551
+ pendingAssistantText = "";
552
+ pendingToolStates = [];
553
+ pendingPermission = null;
554
+ pendingQuestion = null;
372
555
  /**
373
556
  * Set true while the SSE event stream is connected. Surfaced by the
374
557
  * SessionPicker as a tiny green/gray dot so the operator can see at a
@@ -380,6 +563,7 @@ var ChatService = class {
380
563
  * Plain field (not `$state`) — only the chat service touches it.
381
564
  */
382
565
  _unsubscribeEvents = null;
566
+ _pendingTurn = null;
383
567
  #activeSessionId = derived(() => this.byEndpoint.get(this.activeEndpointId)?.activeSessionId ?? null);
384
568
  get activeSessionId() {
385
569
  return this.#activeSessionId();
@@ -443,14 +627,161 @@ var ChatService = class {
443
627
  onDeleted: (id) => {
444
628
  this._onSessionDeleted(id);
445
629
  },
630
+ onEvent: (event) => {
631
+ this._onLiveEvent(event);
632
+ },
446
633
  onConnect: () => {
447
634
  this.liveConnected = true;
448
635
  },
449
636
  onDisconnect: () => {
450
637
  this.liveConnected = false;
638
+ if (this._pendingTurn) this._failPendingTurn(/* @__PURE__ */ new Error("Assistant event stream disconnected."));
451
639
  }
452
640
  });
453
641
  }
642
+ _toRawEvent(event) {
643
+ return {
644
+ type: event.type,
645
+ properties: event.properties ?? {}
646
+ };
647
+ }
648
+ _upsertPendingToolState(update) {
649
+ const id = update.callID || `${update.tool}:${this.pendingToolStates.length}`;
650
+ const next = {
651
+ id,
652
+ kind: "tool",
653
+ tool: update.tool,
654
+ status: update.status,
655
+ title: update.title ?? update.tool,
656
+ detail: update.detail ?? "",
657
+ output: update.output ?? "",
658
+ error: update.error ?? "",
659
+ updatedAt: Date.now()
660
+ };
661
+ if (!this.pendingToolStates.find((item) => item.id === id)) {
662
+ this.pendingToolStates = [...this.pendingToolStates, next];
663
+ return;
664
+ }
665
+ this.pendingToolStates = this.pendingToolStates.map((item) => item.id === id ? {
666
+ ...item,
667
+ ...next
668
+ } : item);
669
+ }
670
+ _upsertPendingStepState(update) {
671
+ const next = {
672
+ id: update.id,
673
+ kind: "step",
674
+ tool: "step",
675
+ status: update.status,
676
+ title: update.title,
677
+ detail: update.detail ?? "",
678
+ output: "",
679
+ error: "",
680
+ updatedAt: Date.now()
681
+ };
682
+ if (!this.pendingToolStates.find((item) => item.id === update.id)) {
683
+ this.pendingToolStates = [...this.pendingToolStates, next];
684
+ return;
685
+ }
686
+ this.pendingToolStates = this.pendingToolStates.map((item) => item.id === update.id ? {
687
+ ...item,
688
+ ...next
689
+ } : item);
690
+ }
691
+ _resetPendingRenderState() {
692
+ this.pendingAssistantText = "";
693
+ this.pendingToolStates = [];
694
+ this.pendingPermission = null;
695
+ this.pendingQuestion = null;
696
+ }
697
+ _appendAssistantReply(text) {
698
+ const assistantEntry = {
699
+ id: crypto.randomUUID(),
700
+ role: "assistant",
701
+ text,
702
+ timestamp: Date.now()
703
+ };
704
+ this.entries = [...this.entries, assistantEntry];
705
+ }
706
+ _clearPendingTurn() {
707
+ const pending = this._pendingTurn;
708
+ if (!pending) return null;
709
+ clearTimeout(pending.timeout);
710
+ this._pendingTurn = null;
711
+ return pending;
712
+ }
713
+ _finishPendingTurn(replyText) {
714
+ const pending = this._clearPendingTurn();
715
+ if (!pending) return;
716
+ const text = (replyText ?? this.pendingAssistantText).trim() || "(no response)";
717
+ this._appendAssistantReply(text);
718
+ this._resetPendingRenderState();
719
+ this._bumpSession(pending.sessionId);
720
+ if (voiceState.ttsSupported && voiceState.ttsAutoEnabled && text && text !== "(no response)") speakText(text, {
721
+ mode: "chat_reply",
722
+ userText: pending.userText,
723
+ assistantText: text
724
+ });
725
+ notifyAssistantReply(text === "(no response)" ? "" : text);
726
+ pending.resolve();
727
+ }
728
+ _failPendingTurn(error) {
729
+ const pending = this._clearPendingTurn();
730
+ if (!pending) return;
731
+ this._resetPendingRenderState();
732
+ pending.reject(error);
733
+ }
734
+ _bumpSession(sessionId) {
735
+ const endpointId = this.activeEndpointId;
736
+ const prev = this.byEndpoint.get(endpointId);
737
+ if (!prev) return;
738
+ const now = Date.now();
739
+ const existing = prev.sessions.find((s) => s.id === sessionId);
740
+ const updated = existing ? {
741
+ ...existing,
742
+ updatedAt: now
743
+ } : {
744
+ id: sessionId,
745
+ title: "",
746
+ createdAt: now,
747
+ updatedAt: now
748
+ };
749
+ const rest = prev.sessions.filter((s) => s.id !== sessionId);
750
+ this.setEndpointState(endpointId, { sessions: [updated, ...rest] });
751
+ }
752
+ _onLiveEvent(event) {
753
+ const pending = this._pendingTurn;
754
+ if (!pending) return;
755
+ const raw = this._toRawEvent(event);
756
+ if (pending.endpointId !== this.activeEndpointId) return;
757
+ const snapshot = partSnapshotType(raw);
758
+ if (snapshot?.type === "reasoning") pending.reasoningPartIds.add(snapshot.partID);
759
+ const textDelta = extractTextDelta(raw, pending.sessionId, pending.reasoningPartIds);
760
+ if (textDelta) this.pendingAssistantText += textDelta;
761
+ const toolUpdate = extractToolUpdate(raw, pending.sessionId);
762
+ if (toolUpdate) this._upsertPendingToolState(toolUpdate);
763
+ const stepUpdate = extractStepUpdate(raw, pending.sessionId);
764
+ if (stepUpdate) this._upsertPendingStepState(stepUpdate);
765
+ const permissionAsk = extractPermissionAsk(raw, pending.sessionId);
766
+ if (permissionAsk) this.pendingPermission = {
767
+ ...permissionAsk,
768
+ status: "pending",
769
+ decision: "",
770
+ message: ""
771
+ };
772
+ const questionAsk = extractQuestionAsk(raw, pending.sessionId);
773
+ if (questionAsk) this.pendingQuestion = {
774
+ ...questionAsk,
775
+ status: "pending",
776
+ answers: questionAsk.questions.map(() => ""),
777
+ message: ""
778
+ };
779
+ if (isSessionError(raw, pending.sessionId)) {
780
+ this._failPendingTurn(/* @__PURE__ */ new Error("Assistant session ended unexpectedly."));
781
+ return;
782
+ }
783
+ if (isTurnEnd(raw, pending.sessionId)) this._finishPendingTurn();
784
+ }
454
785
  /**
455
786
  * A session was created out-of-band — prepend to the active endpoint's
456
787
  * list if not already known. Do not auto-switch to it: the user owns
@@ -549,6 +880,7 @@ var ChatService = class {
549
880
  const endpointId = this.activeEndpointId;
550
881
  this.setEndpointState(endpointId, { activeSessionId: sessionId });
551
882
  this.entries = [];
883
+ this._resetPendingRenderState();
552
884
  this.entriesLoading = true;
553
885
  this.error = "";
554
886
  try {
@@ -587,6 +919,7 @@ var ChatService = class {
587
919
  activeSessionId: id
588
920
  });
589
921
  this.entries = [];
922
+ this._resetPendingRenderState();
590
923
  return id;
591
924
  } catch (e) {
592
925
  const err = e;
@@ -599,9 +932,21 @@ var ChatService = class {
599
932
  * first (matches the "zero sessions" empty-state flow).
600
933
  */
601
934
  async send(text) {
602
- if (this.sending) return;
603
935
  const trimmed = text.trim();
604
936
  if (!trimmed) return;
937
+ if (this.pendingQuestion && this.pendingQuestion.questions.length === 1 && this.sending) {
938
+ await this.answerQuestion(trimmed);
939
+ return;
940
+ }
941
+ if (this.pendingQuestion && this.sending) {
942
+ this.pendingQuestion = {
943
+ ...this.pendingQuestion,
944
+ status: "error",
945
+ message: "This question has multiple parts and must be answered with the provided controls."
946
+ };
947
+ return;
948
+ }
949
+ if (this.sending) return;
605
950
  let sessionId = this.activeSessionId;
606
951
  if (!sessionId) {
607
952
  sessionId = await this.startNewSession();
@@ -614,50 +959,160 @@ var ChatService = class {
614
959
  timestamp: Date.now()
615
960
  };
616
961
  this.entries = [...this.entries, userEntry];
962
+ this._resetPendingRenderState();
617
963
  this.error = "";
618
964
  this.sending = true;
965
+ if (voiceState.ttsSupported && voiceState.ttsAutoEnabled) speakText("Working on it.", {
966
+ mode: "chat_ack",
967
+ userText: trimmed
968
+ });
619
969
  try {
620
- const replyText = (await sendChatMessage(sessionId, trimmed)).parts.filter((p) => p.type === "text" && p.text).map((p) => p.text ?? "").join("");
621
- const assistantEntry = {
622
- id: crypto.randomUUID(),
623
- role: "assistant",
624
- text: replyText || "(no response)",
625
- timestamp: Date.now()
626
- };
627
- this.entries = [...this.entries, assistantEntry];
628
- const endpointId = this.activeEndpointId;
629
- const prev = this.byEndpoint.get(endpointId);
630
- if (prev) {
631
- const now = Date.now();
632
- const existing = prev.sessions.find((s) => s.id === sessionId);
633
- const updated = existing ? {
634
- ...existing,
635
- updatedAt: now
636
- } : {
637
- id: sessionId,
638
- title: "",
639
- createdAt: now,
640
- updatedAt: now
970
+ if (this._unsubscribeEvents && this.liveConnected) await new Promise((resolve, reject) => {
971
+ const timeout = setTimeout(() => {
972
+ this._pendingTurn = null;
973
+ reject(/* @__PURE__ */ new Error("Timed out waiting for the assistant response."));
974
+ }, STREAM_TURN_TIMEOUT_MS);
975
+ this._pendingTurn = {
976
+ endpointId: this.activeEndpointId,
977
+ sessionId,
978
+ userText: trimmed,
979
+ reasoningPartIds: /* @__PURE__ */ new Set(),
980
+ resolve,
981
+ reject,
982
+ timeout
641
983
  };
642
- const rest = prev.sessions.filter((s) => s.id !== sessionId);
643
- this.setEndpointState(endpointId, { sessions: [updated, ...rest] });
984
+ startChatMessageTurn(sessionId, trimmed).catch((error) => {
985
+ this._failPendingTurn(error instanceof Error ? error : new Error(String(error)));
986
+ });
987
+ });
988
+ else {
989
+ const text = (await sendChatMessage(sessionId, trimmed)).parts.filter((p) => p.type === "text" && p.text).map((p) => p.text ?? "").join("").trim() || "(no response)";
990
+ this._appendAssistantReply(text);
991
+ this._bumpSession(sessionId);
992
+ if (voiceState.ttsSupported && voiceState.ttsAutoEnabled && text !== "(no response)") speakText(text, {
993
+ mode: "chat_reply",
994
+ userText: trimmed,
995
+ assistantText: text
996
+ });
997
+ notifyAssistantReply(text === "(no response)" ? "" : text);
644
998
  }
645
- if (voiceState.ttsSupported && voiceState.ttsAutoEnabled && replyText) speakText(replyText);
646
999
  } catch (e) {
647
1000
  const err = e;
1001
+ this._resetPendingRenderState();
648
1002
  if (err.status === 503 || err.status === 502) {
649
1003
  this.error = "Assistant is not reachable. Try reconnecting.";
650
1004
  this.setEndpointState(this.activeEndpointId, { activeSessionId: null });
651
1005
  } else if (err.status === 401) this.error = "Sign-in required.";
652
1006
  else this.error = err.message ?? "Message failed.";
1007
+ notifyAssistantError();
653
1008
  } finally {
654
1009
  this.sending = false;
655
1010
  }
656
1011
  }
1012
+ async answerPermission(reply) {
1013
+ if (!this.pendingPermission || this.pendingPermission.status === "submitting") return;
1014
+ const current = this.pendingPermission;
1015
+ this.pendingPermission = {
1016
+ ...current,
1017
+ status: "submitting",
1018
+ decision: reply,
1019
+ message: ""
1020
+ };
1021
+ try {
1022
+ await replyChatPermission(current.requestID, reply);
1023
+ this.pendingPermission = {
1024
+ ...current,
1025
+ status: "resolved",
1026
+ decision: reply,
1027
+ message: reply === "once" ? `Allowed ${current.permission} once. Waiting for the assistant to continue...` : reply === "always" ? `Always allowed future matching ${current.permission} requests.` : `Denied ${current.permission}. Waiting for the assistant to continue...`
1028
+ };
1029
+ } catch (error) {
1030
+ const message = error instanceof Error ? error.message : "Failed to record permission reply.";
1031
+ this.pendingPermission = {
1032
+ ...current,
1033
+ status: "error",
1034
+ decision: reply,
1035
+ message
1036
+ };
1037
+ }
1038
+ }
1039
+ setQuestionAnswer(index, answer) {
1040
+ if (!this.pendingQuestion) return;
1041
+ if (index < 0 || index >= this.pendingQuestion.questions.length) return;
1042
+ const answers = [...this.pendingQuestion.answers];
1043
+ answers[index] = answer;
1044
+ this.pendingQuestion = {
1045
+ ...this.pendingQuestion,
1046
+ answers,
1047
+ message: ""
1048
+ };
1049
+ }
1050
+ async answerQuestion(answer) {
1051
+ if (!this.pendingQuestion || this.pendingQuestion.status === "submitting") return;
1052
+ const current = this.pendingQuestion;
1053
+ const answers = current.questions.length === 1 && typeof answer === "string" ? [answer.trim()] : current.answers.map((item) => item.trim());
1054
+ if (answers.some((item) => !item)) {
1055
+ this.pendingQuestion = {
1056
+ ...current,
1057
+ status: "error",
1058
+ message: "Answer every question before submitting."
1059
+ };
1060
+ return;
1061
+ }
1062
+ this.pendingQuestion = {
1063
+ ...current,
1064
+ status: "submitting",
1065
+ answers,
1066
+ message: ""
1067
+ };
1068
+ try {
1069
+ await replyChatQuestion(current.requestID, answers.map((item) => [item]));
1070
+ this.pendingQuestion = {
1071
+ ...current,
1072
+ status: "answered",
1073
+ answers,
1074
+ message: "Answer sent."
1075
+ };
1076
+ } catch (error) {
1077
+ const message = error instanceof Error ? error.message : "Failed to send answer.";
1078
+ this.pendingQuestion = {
1079
+ ...current,
1080
+ status: "error",
1081
+ answers,
1082
+ message
1083
+ };
1084
+ }
1085
+ }
1086
+ async rejectQuestion() {
1087
+ if (!this.pendingQuestion || this.pendingQuestion.status === "submitting") return;
1088
+ const current = this.pendingQuestion;
1089
+ this.pendingQuestion = {
1090
+ ...current,
1091
+ status: "submitting",
1092
+ message: ""
1093
+ };
1094
+ try {
1095
+ await rejectChatQuestion(current.requestID);
1096
+ this.pendingQuestion = {
1097
+ ...current,
1098
+ status: "rejected",
1099
+ message: "Question declined."
1100
+ };
1101
+ } catch (error) {
1102
+ const message = error instanceof Error ? error.message : "Failed to reject question.";
1103
+ this.pendingQuestion = {
1104
+ ...current,
1105
+ status: "error",
1106
+ message
1107
+ };
1108
+ }
1109
+ }
657
1110
  reset() {
658
1111
  stopSpeaking();
1112
+ this._clearPendingTurn();
659
1113
  this.entries = [];
660
1114
  this.error = "";
1115
+ this._resetPendingRenderState();
661
1116
  this.byEndpoint = /* @__PURE__ */ new Map();
662
1117
  if (this._unsubscribeEvents) {
663
1118
  try {
@@ -966,7 +1421,6 @@ function Navbar($$renderer, $$props) {
966
1421
  const pathname = derived(() => page.url?.pathname ?? "");
967
1422
  const onAdmin = derived(() => pathname() === "/admin" || pathname().startsWith("/admin/"));
968
1423
  const onChatSurface = derived(() => pathname() === "/chat" || pathname().startsWith("/chat/"));
969
- const onAdvancedSurface = derived(() => pathname() === "/advanced" || pathname().startsWith("/advanced/"));
970
1424
  const isLocalAssistant = derived(() => {
971
1425
  return isLocalAssistantUrl(endpointsService.active?.url);
972
1426
  });
@@ -979,10 +1433,11 @@ function Navbar($$renderer, $$props) {
979
1433
  title: "Chat",
980
1434
  icon: chatIcon
981
1435
  });
982
- } else $$renderer.push("<!--[-1-->");
1436
+ } else {
1437
+ $$renderer.push("<!--[-1-->");
1438
+ SettingsDrawer($$renderer, { showManageAssistant: isLocalAssistant() });
1439
+ }
983
1440
  $$renderer.push(`<!--]--> `);
984
- SettingsDrawer($$renderer, { showManageAssistant: isLocalAssistant() });
985
- $$renderer.push(`<!----> `);
986
1441
  if (onChatSurface()) {
987
1442
  $$renderer.push("<!--[0-->");
988
1443
  $$renderer.push(`<span class="chat-selectors svelte-66bgq1">`);
@@ -992,15 +1447,12 @@ function Navbar($$renderer, $$props) {
992
1447
  $$renderer.push(`<!----></span>`);
993
1448
  } else $$renderer.push("<!--[-1-->");
994
1449
  $$renderer.push(`<!--]--> `);
995
- if (onChatSurface() || onAdvancedSurface()) {
996
- $$renderer.push("<!--[0-->");
997
- ModeSwitch($$renderer);
998
- } else $$renderer.push("<!--[-1-->");
999
- $$renderer.push(`<!--]--> `);
1450
+ ModeSwitch($$renderer);
1451
+ $$renderer.push(`<!----> `);
1000
1452
  VoiceControl($$renderer);
1001
1453
  $$renderer.push(`<!----></div></div></header>`);
1002
1454
  });
1003
1455
  }
1004
1456
 
1005
1457
  export { EndpointList as E, IconButton as I, Navbar as N, SessionList as S, chat as c, endpointsService as e, formatTime as f };
1006
- //# sourceMappingURL=Navbar-C9kE6wR-.js.map
1458
+ //# sourceMappingURL=Navbar-Djg-dawo.js.map