@openpalm/ui 0.12.12 → 0.12.13
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.
- package/build/.openpalm-ui-version +1 -1
- package/build/client/_app/immutable/assets/4.C2tVeZVh.css +1 -0
- package/build/client/_app/immutable/assets/4.C2tVeZVh.css.br +0 -0
- package/build/client/_app/immutable/assets/4.C2tVeZVh.css.gz +0 -0
- package/build/client/_app/immutable/chunks/{Ej9QUT4P.js → B7vwJqoj.js} +1 -1
- package/build/client/_app/immutable/chunks/B7vwJqoj.js.br +0 -0
- package/build/client/_app/immutable/chunks/B7vwJqoj.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CpzMlkvh.js +1 -0
- package/build/client/_app/immutable/chunks/CpzMlkvh.js.br +2 -0
- package/build/client/_app/immutable/chunks/CpzMlkvh.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{auSI7Wdb.js → Cub6afmL.js} +1 -1
- package/build/client/_app/immutable/chunks/Cub6afmL.js.br +0 -0
- package/build/client/_app/immutable/chunks/Cub6afmL.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D2dFPcAY.js +3 -0
- package/build/client/_app/immutable/chunks/D2dFPcAY.js.br +0 -0
- package/build/client/_app/immutable/chunks/D2dFPcAY.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{CTyb4jX-.js → DMSxHu0j.js} +2 -2
- package/build/client/_app/immutable/chunks/DMSxHu0j.js.br +0 -0
- package/build/client/_app/immutable/chunks/DMSxHu0j.js.gz +0 -0
- package/build/client/_app/immutable/chunks/i-u-oQAW.js +1 -0
- package/build/client/_app/immutable/chunks/i-u-oQAW.js.br +0 -0
- package/build/client/_app/immutable/chunks/i-u-oQAW.js.gz +0 -0
- package/build/client/_app/immutable/entry/{app.DsQiW1Iw.js → app.CGwa9uv7.js} +2 -2
- package/build/client/_app/immutable/entry/app.CGwa9uv7.js.br +0 -0
- package/build/client/_app/immutable/entry/app.CGwa9uv7.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.CPRDHuTW.js +1 -0
- package/build/client/_app/immutable/entry/start.CPRDHuTW.js.br +0 -0
- package/build/client/_app/immutable/entry/start.CPRDHuTW.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{0.6LuHgRwe.js → 0.DOxwxXh1.js} +1 -1
- package/build/client/_app/immutable/nodes/0.DOxwxXh1.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.DOxwxXh1.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{1.DnRffqy6.js → 1.ALcLv429.js} +1 -1
- package/build/client/_app/immutable/nodes/1.ALcLv429.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.ALcLv429.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4._U3pMj5x.js +133 -0
- package/build/client/_app/immutable/nodes/4._U3pMj5x.js.br +0 -0
- package/build/client/_app/immutable/nodes/4._U3pMj5x.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{5.CnQ0zkJ5.js → 5.CUEzVL3V.js} +1 -1
- package/build/client/_app/immutable/nodes/5.CUEzVL3V.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.CUEzVL3V.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{6.BaOjUVsQ.js → 6.BL78XiLU.js} +1 -1
- package/build/client/_app/immutable/nodes/6.BL78XiLU.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.BL78XiLU.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{7.Dy-QUnwV.js → 7.F5ztMZTo.js} +1 -1
- package/build/client/_app/immutable/nodes/7.F5ztMZTo.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.F5ztMZTo.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{8.B3kiJaWi.js → 8.xcsOM3k5.js} +1 -1
- package/build/client/_app/immutable/nodes/8.xcsOM3k5.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.xcsOM3k5.js.gz +0 -0
- package/build/client/_app/version.json +1 -1
- package/build/client/_app/version.json.br +1 -1
- package/build/client/_app/version.json.gz +0 -0
- package/build/server/chunks/{0-pjhEnsU9.js → 0-BKHhl45d.js} +3 -3
- package/build/server/chunks/{0-pjhEnsU9.js.map → 0-BKHhl45d.js.map} +1 -1
- package/build/server/chunks/1-2o6Ed2yp.js +9 -0
- package/build/server/chunks/{1-s4KrrHyU.js.map → 1-2o6Ed2yp.js.map} +1 -1
- package/build/server/chunks/{10-BsKSeayN.js → 10-sMfnW6s_.js} +5 -5
- package/build/server/chunks/10-sMfnW6s_.js.map +1 -0
- package/build/server/chunks/4-D6BCA1En.js +9 -0
- package/build/server/chunks/{4-DXcZ-YeU.js.map → 4-D6BCA1En.js.map} +1 -1
- package/build/server/chunks/5-FSdT4QNL.js +9 -0
- package/build/server/chunks/{5-CxWHKz_5.js.map → 5-FSdT4QNL.js.map} +1 -1
- package/build/server/chunks/6-C0ETgtOo.js +9 -0
- package/build/server/chunks/{6-C2va3-p8.js.map → 6-C0ETgtOo.js.map} +1 -1
- package/build/server/chunks/7-BcFrRC7r.js +9 -0
- package/build/server/chunks/{7-ZC2-wAze.js.map → 7-BcFrRC7r.js.map} +1 -1
- package/build/server/chunks/{8-CdAURkyt.js → 8-CGnXBMny.js} +3 -3
- package/build/server/chunks/{8-CdAURkyt.js.map → 8-CGnXBMny.js.map} +1 -1
- package/build/server/chunks/{ChatMessage-nFk7W8JO.js → ChatMessage-BEFlmHur.js} +2 -2
- package/build/server/chunks/{ChatMessage-nFk7W8JO.js.map → ChatMessage-BEFlmHur.js.map} +1 -1
- package/build/server/chunks/{Navbar-CqHAp9Qh.js → Navbar-y0AyDpcy.js} +4 -4
- package/build/server/chunks/{Navbar-CqHAp9Qh.js.map → Navbar-y0AyDpcy.js.map} +1 -1
- package/build/server/chunks/{_layout.svelte-CFKjimed.js → _layout.svelte-oFWL-MU8.js} +2 -2
- package/build/server/chunks/{_layout.svelte-CFKjimed.js.map → _layout.svelte-oFWL-MU8.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-Ehsb0X1T.js → _page.svelte-Cqzbf_9r.js} +6 -6
- package/build/server/chunks/{_page.svelte-Ehsb0X1T.js.map → _page.svelte-Cqzbf_9r.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-CmB5uGqK.js → _page.svelte-DCeKtm_e.js} +3 -3
- package/build/server/chunks/{_page.svelte-CmB5uGqK.js.map → _page.svelte-DCeKtm_e.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-CmqaniiZ.js → _page.svelte-DM3jnL7B.js} +176 -173
- package/build/server/chunks/_page.svelte-DM3jnL7B.js.map +1 -0
- package/build/server/chunks/{_page.svelte-z0vjeg3m.js → _page.svelte-DbVLfUMo.js} +6 -6
- package/build/server/chunks/{_page.svelte-z0vjeg3m.js.map → _page.svelte-DbVLfUMo.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-CQ8Ang1b.js → _page.svelte-LjsOqqWX.js} +7 -7
- package/build/server/chunks/{_page.svelte-CQ8Ang1b.js.map → _page.svelte-LjsOqqWX.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CL74nB_X.js → _server.ts--pU-mhOv.js} +5 -5
- package/build/server/chunks/{_server.ts-CL74nB_X.js.map → _server.ts--pU-mhOv.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DhKn_mC3.js → _server.ts-0OeQ0WW1.js} +5 -5
- package/build/server/chunks/{_server.ts-DhKn_mC3.js.map → _server.ts-0OeQ0WW1.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BvIDZNQ4.js → _server.ts-5CMhF-We.js} +5 -5
- package/build/server/chunks/{_server.ts-BvIDZNQ4.js.map → _server.ts-5CMhF-We.js.map} +1 -1
- package/build/server/chunks/{_server.ts-aBL-bZNn.js → _server.ts-B01UNM7i.js} +6 -6
- package/build/server/chunks/{_server.ts-aBL-bZNn.js.map → _server.ts-B01UNM7i.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Be_Ms27u.js → _server.ts-B20Y2eS7.js} +6 -6
- package/build/server/chunks/{_server.ts-Be_Ms27u.js.map → _server.ts-B20Y2eS7.js.map} +1 -1
- package/build/server/chunks/{_server.ts-C9KhKEr6.js → _server.ts-B3Uljj7c.js} +5 -5
- package/build/server/chunks/{_server.ts-C9KhKEr6.js.map → _server.ts-B3Uljj7c.js.map} +1 -1
- package/build/server/chunks/_server.ts-BDRFGcRb.js +64 -0
- package/build/server/chunks/_server.ts-BDRFGcRb.js.map +1 -0
- package/build/server/chunks/{_server.ts-B127b-gL.js → _server.ts-BDu6FWnC.js} +6 -6
- package/build/server/chunks/{_server.ts-B127b-gL.js.map → _server.ts-BDu6FWnC.js.map} +1 -1
- package/build/server/chunks/{_server.ts-ynDn6nif.js → _server.ts-BE9SHXNP.js} +5 -5
- package/build/server/chunks/{_server.ts-ynDn6nif.js.map → _server.ts-BE9SHXNP.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B-p2EWpY.js → _server.ts-BFejqrWf.js} +5 -5
- package/build/server/chunks/{_server.ts-B-p2EWpY.js.map → _server.ts-BFejqrWf.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Bz9vYKcZ.js → _server.ts-BMfR4Lye.js} +5 -5
- package/build/server/chunks/{_server.ts-Bz9vYKcZ.js.map → _server.ts-BMfR4Lye.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Dx9IVMZK.js → _server.ts-BNF5idzW.js} +5 -5
- package/build/server/chunks/{_server.ts-Dx9IVMZK.js.map → _server.ts-BNF5idzW.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B4NR0V_b.js → _server.ts-BObiJ5Qo.js} +8 -8
- package/build/server/chunks/{_server.ts-B4NR0V_b.js.map → _server.ts-BObiJ5Qo.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BjT0bTpr.js → _server.ts-BSe6G25o.js} +5 -5
- package/build/server/chunks/_server.ts-BSe6G25o.js.map +1 -0
- package/build/server/chunks/{_server.ts-DLbTplBn.js → _server.ts-BWRYvzwI.js} +5 -5
- package/build/server/chunks/{_server.ts-DLbTplBn.js.map → _server.ts-BWRYvzwI.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BlLOBvFJ.js → _server.ts-B_HnVdK_.js} +2 -2
- package/build/server/chunks/{_server.ts-BlLOBvFJ.js.map → _server.ts-B_HnVdK_.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B1CU5CUW.js → _server.ts-Ba5LpOKk.js} +7 -7
- package/build/server/chunks/{_server.ts-B1CU5CUW.js.map → _server.ts-Ba5LpOKk.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BT6D3gEn.js → _server.ts-BcyD4FAK.js} +5 -5
- package/build/server/chunks/{_server.ts-BT6D3gEn.js.map → _server.ts-BcyD4FAK.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DY7BHiev.js → _server.ts-BjzyHPaP.js} +5 -5
- package/build/server/chunks/{_server.ts-DY7BHiev.js.map → _server.ts-BjzyHPaP.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CRJ6wZDZ.js → _server.ts-BlD-xqHX.js} +6 -6
- package/build/server/chunks/{_server.ts-CRJ6wZDZ.js.map → _server.ts-BlD-xqHX.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BOhzCsMs.js → _server.ts-Bn2hwPxs.js} +6 -6
- package/build/server/chunks/{_server.ts-BOhzCsMs.js.map → _server.ts-Bn2hwPxs.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CbHCQlkY.js → _server.ts-BoxRUogb.js} +5 -5
- package/build/server/chunks/{_server.ts-CbHCQlkY.js.map → _server.ts-BoxRUogb.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Byjf_Yk3.js → _server.ts-Bs20Z2x5.js} +4 -4
- package/build/server/chunks/{_server.ts-Byjf_Yk3.js.map → _server.ts-Bs20Z2x5.js.map} +1 -1
- package/build/server/chunks/{_server.ts-qAVlgCgS.js → _server.ts-BxudLrGe.js} +5 -5
- package/build/server/chunks/{_server.ts-qAVlgCgS.js.map → _server.ts-BxudLrGe.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CsWOQwa4.js → _server.ts-Bz06ow3I.js} +11 -6
- package/build/server/chunks/_server.ts-Bz06ow3I.js.map +1 -0
- package/build/server/chunks/{_server.ts-DALbFCuy.js → _server.ts-C0v2G2ly.js} +2 -2
- package/build/server/chunks/{_server.ts-DALbFCuy.js.map → _server.ts-C0v2G2ly.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Hi6ffAhl.js → _server.ts-C4OpgCAn.js} +6 -6
- package/build/server/chunks/{_server.ts-Hi6ffAhl.js.map → _server.ts-C4OpgCAn.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B4U33TSS.js → _server.ts-C5SDazDN.js} +5 -5
- package/build/server/chunks/{_server.ts-B4U33TSS.js.map → _server.ts-C5SDazDN.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Bfg_O-Jd.js → _server.ts-C60smtiA.js} +6 -6
- package/build/server/chunks/{_server.ts-Bfg_O-Jd.js.map → _server.ts-C60smtiA.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DYy0jKI8.js → _server.ts-C7C_JnLA.js} +5 -5
- package/build/server/chunks/{_server.ts-DYy0jKI8.js.map → _server.ts-C7C_JnLA.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BE4_j8Dq.js → _server.ts-C8itNTqQ.js} +5 -5
- package/build/server/chunks/{_server.ts-BE4_j8Dq.js.map → _server.ts-C8itNTqQ.js.map} +1 -1
- package/build/server/chunks/_server.ts-CC7pljaX.js +47 -0
- package/build/server/chunks/_server.ts-CC7pljaX.js.map +1 -0
- package/build/server/chunks/{_server.ts-fH2ffIS9.js → _server.ts-CDcL1v18.js} +5 -5
- package/build/server/chunks/{_server.ts-fH2ffIS9.js.map → _server.ts-CDcL1v18.js.map} +1 -1
- package/build/server/chunks/_server.ts-CEarW7QY.js +112 -0
- package/build/server/chunks/_server.ts-CEarW7QY.js.map +1 -0
- package/build/server/chunks/{_server.ts-BYGu7b1P.js → _server.ts-CG2B5rlx.js} +5 -5
- package/build/server/chunks/{_server.ts-BYGu7b1P.js.map → _server.ts-CG2B5rlx.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DnlADeFs.js → _server.ts-CGqpENOm.js} +6 -6
- package/build/server/chunks/{_server.ts-DnlADeFs.js.map → _server.ts-CGqpENOm.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CZJM-wYv.js → _server.ts-CIhtd-Uh.js} +5 -5
- package/build/server/chunks/{_server.ts-CZJM-wYv.js.map → _server.ts-CIhtd-Uh.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CG17acEX.js → _server.ts-CLGLoOX4.js} +38 -17
- package/build/server/chunks/_server.ts-CLGLoOX4.js.map +1 -0
- package/build/server/chunks/{_server.ts-DdIvxjIl.js → _server.ts-CMuzkwXb.js} +5 -5
- package/build/server/chunks/{_server.ts-DdIvxjIl.js.map → _server.ts-CMuzkwXb.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BEt2_iG4.js → _server.ts-CPQlueaR.js} +5 -5
- package/build/server/chunks/{_server.ts-BEt2_iG4.js.map → _server.ts-CPQlueaR.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DTbiXJEw.js → _server.ts-CPoU3qb9.js} +5 -5
- package/build/server/chunks/{_server.ts-DTbiXJEw.js.map → _server.ts-CPoU3qb9.js.map} +1 -1
- package/build/server/chunks/{_server.ts-7K5ENa0R.js → _server.ts-CV4ZTrHb.js} +6 -6
- package/build/server/chunks/{_server.ts-7K5ENa0R.js.map → _server.ts-CV4ZTrHb.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Bfp5h_w-.js → _server.ts-CWMMcZva.js} +5 -5
- package/build/server/chunks/{_server.ts-Bfp5h_w-.js.map → _server.ts-CWMMcZva.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DCezeO9D.js → _server.ts-CecMDzNO.js} +7 -7
- package/build/server/chunks/{_server.ts-DCezeO9D.js.map → _server.ts-CecMDzNO.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CxHSDY6c.js → _server.ts-CigEk1M2.js} +5 -5
- package/build/server/chunks/{_server.ts-CxHSDY6c.js.map → _server.ts-CigEk1M2.js.map} +1 -1
- package/build/server/chunks/{_server.ts-mD4FWHNQ.js → _server.ts-ClFngQ5g.js} +5 -5
- package/build/server/chunks/{_server.ts-mD4FWHNQ.js.map → _server.ts-ClFngQ5g.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BSx9Bn4-.js → _server.ts-CnMD6tM7.js} +5 -5
- package/build/server/chunks/{_server.ts-BSx9Bn4-.js.map → _server.ts-CnMD6tM7.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CSSXRijy.js → _server.ts-CsUb-Aja.js} +5 -5
- package/build/server/chunks/{_server.ts-CSSXRijy.js.map → _server.ts-CsUb-Aja.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CBYbeZKo.js → _server.ts-CswJoelP.js} +5 -5
- package/build/server/chunks/{_server.ts-CBYbeZKo.js.map → _server.ts-CswJoelP.js.map} +1 -1
- package/build/server/chunks/{_server.ts-D1j4Npph.js → _server.ts-Cvr-yLEl.js} +7 -7
- package/build/server/chunks/{_server.ts-D1j4Npph.js.map → _server.ts-Cvr-yLEl.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BybDdchW.js → _server.ts-D-By2JBW.js} +5 -5
- package/build/server/chunks/{_server.ts-BybDdchW.js.map → _server.ts-D-By2JBW.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Dz-fCCYT.js → _server.ts-D264FNyX.js} +5 -5
- package/build/server/chunks/{_server.ts-Dz-fCCYT.js.map → _server.ts-D264FNyX.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DyxP5SI8.js → _server.ts-D2qIIqBN.js} +5 -5
- package/build/server/chunks/{_server.ts-DyxP5SI8.js.map → _server.ts-D2qIIqBN.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CSrUQMls.js → _server.ts-D4KazeVl.js} +5 -5
- package/build/server/chunks/{_server.ts-CSrUQMls.js.map → _server.ts-D4KazeVl.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BNScUI9e.js → _server.ts-D4Z6LeT3.js} +2 -2
- package/build/server/chunks/{_server.ts-BNScUI9e.js.map → _server.ts-D4Z6LeT3.js.map} +1 -1
- package/build/server/chunks/{_server.ts-5Yiwno6d.js → _server.ts-D6vZvzLt.js} +5 -5
- package/build/server/chunks/{_server.ts-5Yiwno6d.js.map → _server.ts-D6vZvzLt.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DjDeeV6L.js → _server.ts-D7IC_Y32.js} +7 -7
- package/build/server/chunks/{_server.ts-DjDeeV6L.js.map → _server.ts-D7IC_Y32.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CefiPTY7.js → _server.ts-D89NvzFz.js} +7 -7
- package/build/server/chunks/{_server.ts-CefiPTY7.js.map → _server.ts-D89NvzFz.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CGPLKrl6.js → _server.ts-D8kr1zcQ.js} +5 -5
- package/build/server/chunks/{_server.ts-CGPLKrl6.js.map → _server.ts-D8kr1zcQ.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CrR1vz-U.js → _server.ts-DBIVm5KK.js} +5 -5
- package/build/server/chunks/{_server.ts-CrR1vz-U.js.map → _server.ts-DBIVm5KK.js.map} +1 -1
- package/build/server/chunks/{_server.ts-D1kQ_j_2.js → _server.ts-DEgOzmt-.js} +5 -5
- package/build/server/chunks/{_server.ts-D1kQ_j_2.js.map → _server.ts-DEgOzmt-.js.map} +1 -1
- package/build/server/chunks/{_server.ts-4bwCw9CG.js → _server.ts-DFpIzR83.js} +6 -6
- package/build/server/chunks/{_server.ts-4bwCw9CG.js.map → _server.ts-DFpIzR83.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BkFpq5kl.js → _server.ts-DJdI0sh1.js} +6 -6
- package/build/server/chunks/{_server.ts-BkFpq5kl.js.map → _server.ts-DJdI0sh1.js.map} +1 -1
- package/build/server/chunks/{_server.ts-C2DDlJQE.js → _server.ts-DM9CM7r4.js} +6 -6
- package/build/server/chunks/{_server.ts-C2DDlJQE.js.map → _server.ts-DM9CM7r4.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Cqxa9z0t.js → _server.ts-DMCXKECk.js} +4 -4
- package/build/server/chunks/{_server.ts-Cqxa9z0t.js.map → _server.ts-DMCXKECk.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DugFVaf4.js → _server.ts-DMPk4tQR.js} +5 -5
- package/build/server/chunks/{_server.ts-DugFVaf4.js.map → _server.ts-DMPk4tQR.js.map} +1 -1
- package/build/server/chunks/{_server.ts-WPiWUEa6.js → _server.ts-DOHQRR39.js} +5 -5
- package/build/server/chunks/{_server.ts-WPiWUEa6.js.map → _server.ts-DOHQRR39.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BNE9aLNq.js → _server.ts-DTlf1C5O.js} +5 -5
- package/build/server/chunks/{_server.ts-BNE9aLNq.js.map → _server.ts-DTlf1C5O.js.map} +1 -1
- package/build/server/chunks/{_server.ts-EahvV4Vt.js → _server.ts-Di-AKVeN.js} +5 -5
- package/build/server/chunks/{_server.ts-EahvV4Vt.js.map → _server.ts-Di-AKVeN.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Dgq8tX6T.js → _server.ts-Dl9rmY33.js} +2 -2
- package/build/server/chunks/{_server.ts-Dgq8tX6T.js.map → _server.ts-Dl9rmY33.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B2bPdmtl.js → _server.ts-Dn4hPbO5.js} +5 -5
- package/build/server/chunks/{_server.ts-B2bPdmtl.js.map → _server.ts-Dn4hPbO5.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DmGUn9K1.js → _server.ts-DohkVO-9.js} +5 -5
- package/build/server/chunks/{_server.ts-DmGUn9K1.js.map → _server.ts-DohkVO-9.js.map} +1 -1
- package/build/server/chunks/{_server.ts-77-UZ7q6.js → _server.ts-DvVFuoZA.js} +6 -6
- package/build/server/chunks/{_server.ts-77-UZ7q6.js.map → _server.ts-DvVFuoZA.js.map} +1 -1
- package/build/server/chunks/{_server.ts-C9zraUpK.js → _server.ts-DyXpT2n9.js} +5 -5
- package/build/server/chunks/{_server.ts-C9zraUpK.js.map → _server.ts-DyXpT2n9.js.map} +1 -1
- package/build/server/chunks/{_server.ts-6S_K8mGO.js → _server.ts-JejNP4uV.js} +5 -5
- package/build/server/chunks/{_server.ts-6S_K8mGO.js.map → _server.ts-JejNP4uV.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DR8rM7PH.js → _server.ts-Oh_Zqa_M.js} +5 -5
- package/build/server/chunks/{_server.ts-DR8rM7PH.js.map → _server.ts-Oh_Zqa_M.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B-kfO_bH.js → _server.ts-QdNUZ6_w.js} +7 -7
- package/build/server/chunks/{_server.ts-B-kfO_bH.js.map → _server.ts-QdNUZ6_w.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CWYMIWeQ.js → _server.ts-SFtKmPEN.js} +5 -5
- package/build/server/chunks/{_server.ts-CWYMIWeQ.js.map → _server.ts-SFtKmPEN.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DJmx3la_.js → _server.ts-YBAOIJxB.js} +5 -5
- package/build/server/chunks/{_server.ts-DJmx3la_.js.map → _server.ts-YBAOIJxB.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DfUwiIFc.js → _server.ts-beFmwPmw.js} +5 -5
- package/build/server/chunks/{_server.ts-DfUwiIFc.js.map → _server.ts-beFmwPmw.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Dy396KQ2.js → _server.ts-c_lwcz9M.js} +5 -5
- package/build/server/chunks/{_server.ts-Dy396KQ2.js.map → _server.ts-c_lwcz9M.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B6d5y3_a.js → _server.ts-dD2FwqWw.js} +5 -5
- package/build/server/chunks/_server.ts-dD2FwqWw.js.map +1 -0
- package/build/server/chunks/{_server.ts-B-uMrGCn.js → _server.ts-gdEb-KvS.js} +5 -5
- package/build/server/chunks/{_server.ts-B-uMrGCn.js.map → _server.ts-gdEb-KvS.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BZ4T51Sp.js → _server.ts-mz0P4bQg.js} +5 -5
- package/build/server/chunks/{_server.ts-BZ4T51Sp.js.map → _server.ts-mz0P4bQg.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CM8mCJr2.js → _server.ts-qsfPaqQe.js} +5 -5
- package/build/server/chunks/{_server.ts-CM8mCJr2.js.map → _server.ts-qsfPaqQe.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CzvJLf02.js → _server.ts-xb_1w1kf.js} +2 -2
- package/build/server/chunks/{_server.ts-CzvJLf02.js.map → _server.ts-xb_1w1kf.js.map} +1 -1
- package/build/server/chunks/{addon-helpers-E9toOeAN.js → addon-helpers-CtXSmg5a.js} +3 -3
- package/build/server/chunks/{addon-helpers-E9toOeAN.js.map → addon-helpers-CtXSmg5a.js.map} +1 -1
- package/build/server/chunks/{akm-Iqapnq_M.js → akm-BRiRim0P.js} +2 -2
- package/build/server/chunks/{akm-Iqapnq_M.js.map → akm-BRiRim0P.js.map} +1 -1
- package/build/server/chunks/{catalog-kcWyiPep.js → catalog-DEv1nsOT.js} +5 -5
- package/build/server/chunks/{catalog-kcWyiPep.js.map → catalog-DEv1nsOT.js.map} +1 -1
- package/build/server/chunks/{client-COlNBMpO.js → client-BVhtM1mG.js} +2 -2
- package/build/server/chunks/{client-COlNBMpO.js.map → client-BVhtM1mG.js.map} +1 -1
- package/build/server/chunks/{config-osYhwi1d.js → config-CO8OSXtU.js} +2 -2
- package/build/server/chunks/{config-osYhwi1d.js.map → config-CO8OSXtU.js.map} +1 -1
- package/build/server/chunks/{docker-Cwz7g9Fp.js → docker-CTjWsP_Q.js} +2 -2
- package/build/server/chunks/{docker-Cwz7g9Fp.js.map → docker-CTjWsP_Q.js.map} +1 -1
- package/build/server/chunks/{endpoints-C2sfguhT.js → endpoints-UdQGgKsR.js} +2 -2
- package/build/server/chunks/{endpoints-C2sfguhT.js.map → endpoints-UdQGgKsR.js.map} +1 -1
- package/build/server/chunks/{environment-Dgk7Zpzu.js → environment-DedKcJdc.js} +2 -2
- package/build/server/chunks/{environment-Dgk7Zpzu.js.map → environment-DedKcJdc.js.map} +1 -1
- package/build/server/chunks/{error.svelte-B3E2hBuW.js → error.svelte-C6ZvgK-0.js} +4 -4
- package/build/server/chunks/{error.svelte-B3E2hBuW.js.map → error.svelte-C6ZvgK-0.js.map} +1 -1
- package/build/server/chunks/{helpers-DL0rlFJr.js → helpers-kzwksNq1.js} +3 -3
- package/build/server/chunks/{helpers-DL0rlFJr.js.map → helpers-kzwksNq1.js.map} +1 -1
- package/build/server/chunks/{hooks.server-BVNQXwcy.js → hooks.server-BjQOtOyj.js} +7 -7
- package/build/server/chunks/hooks.server-BjQOtOyj.js.map +1 -0
- package/build/server/chunks/{http-D2p_SepQ.js → http-D8YVIqJa.js} +2 -2
- package/build/server/chunks/{http-D2p_SepQ.js.map → http-D8YVIqJa.js.map} +1 -1
- package/build/server/chunks/{internal-D1Iu5LHn.js → internal-DQFuMtuQ.js} +3 -3
- package/build/server/chunks/{internal-D1Iu5LHn.js.map → internal-DQFuMtuQ.js.map} +1 -1
- package/build/server/chunks/{migration-status-BV4S8Q7v.js → migration-status-a9KsTKSo.js} +2 -2
- package/build/server/chunks/{migration-status-BV4S8Q7v.js.map → migration-status-a9KsTKSo.js.map} +1 -1
- package/build/server/chunks/{session-cookie-DTiNx7Rk.js → session-cookie-CHgIES2p.js} +2 -2
- package/build/server/chunks/{session-cookie-DTiNx7Rk.js.map → session-cookie-CHgIES2p.js.map} +1 -1
- package/build/server/chunks/{setup-deploy-CyDh3qyw.js → setup-deploy-B--th9ts.js} +2 -2
- package/build/server/chunks/{setup-deploy-CyDh3qyw.js.map → setup-deploy-B--th9ts.js.map} +1 -1
- package/build/server/chunks/{src-BGtbBgcg.js → src-CidJbygh.js} +245 -15
- package/build/server/chunks/src-CidJbygh.js.map +1 -0
- package/build/server/chunks/{state-yBCk2V-E.js → state-fxN45gBp.js} +2 -2
- package/build/server/chunks/{state-yBCk2V-E.js.map → state-fxN45gBp.js.map} +1 -1
- package/build/server/chunks/{state2-BvcX1tGj.js → state2-boKye0ZJ.js} +2 -2
- package/build/server/chunks/{state2-BvcX1tGj.js.map → state2-boKye0ZJ.js.map} +1 -1
- package/build/server/chunks/{theme-state.svelte-8qSluhfu.js → theme-state.svelte-BsNoJAjT.js} +38 -22
- package/build/server/chunks/theme-state.svelte-BsNoJAjT.js.map +1 -0
- package/build/server/chunks/version-cache-CSnmLqxQ.js +54 -0
- package/build/server/chunks/version-cache-CSnmLqxQ.js.map +1 -0
- package/build/server/index.js +2 -2
- package/build/server/manifest.js +101 -94
- package/build/server/manifest.js.map +1 -1
- package/package.json +2 -2
- package/build/client/_app/immutable/assets/4.C4HBo3yQ.css +0 -1
- package/build/client/_app/immutable/assets/4.C4HBo3yQ.css.br +0 -0
- package/build/client/_app/immutable/assets/4.C4HBo3yQ.css.gz +0 -0
- package/build/client/_app/immutable/chunks/BUmnu6gG.js +0 -3
- package/build/client/_app/immutable/chunks/BUmnu6gG.js.br +0 -0
- package/build/client/_app/immutable/chunks/BUmnu6gG.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CTyb4jX-.js.br +0 -0
- package/build/client/_app/immutable/chunks/CTyb4jX-.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CgKtEGfl.js +0 -1
- package/build/client/_app/immutable/chunks/CgKtEGfl.js.br +0 -0
- package/build/client/_app/immutable/chunks/CgKtEGfl.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CzrNiLaD.js +0 -1
- package/build/client/_app/immutable/chunks/CzrNiLaD.js.br +0 -2
- package/build/client/_app/immutable/chunks/CzrNiLaD.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Ej9QUT4P.js.br +0 -0
- package/build/client/_app/immutable/chunks/Ej9QUT4P.js.gz +0 -0
- package/build/client/_app/immutable/chunks/auSI7Wdb.js.br +0 -0
- package/build/client/_app/immutable/chunks/auSI7Wdb.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.DsQiW1Iw.js.br +0 -0
- package/build/client/_app/immutable/entry/app.DsQiW1Iw.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.DcWR1XKk.js +0 -1
- package/build/client/_app/immutable/entry/start.DcWR1XKk.js.br +0 -1
- package/build/client/_app/immutable/entry/start.DcWR1XKk.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.6LuHgRwe.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.6LuHgRwe.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.DnRffqy6.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.DnRffqy6.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.X-buCxyA.js +0 -133
- package/build/client/_app/immutable/nodes/4.X-buCxyA.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.X-buCxyA.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.CnQ0zkJ5.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.CnQ0zkJ5.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.BaOjUVsQ.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.BaOjUVsQ.js.gz +0 -0
- package/build/client/_app/immutable/nodes/7.Dy-QUnwV.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.Dy-QUnwV.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.B3kiJaWi.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.B3kiJaWi.js.gz +0 -0
- package/build/server/chunks/1-s4KrrHyU.js +0 -9
- package/build/server/chunks/10-BsKSeayN.js.map +0 -1
- package/build/server/chunks/4-DXcZ-YeU.js +0 -9
- package/build/server/chunks/5-CxWHKz_5.js +0 -9
- package/build/server/chunks/6-C2va3-p8.js +0 -9
- package/build/server/chunks/7-ZC2-wAze.js +0 -9
- package/build/server/chunks/_page.svelte-CmqaniiZ.js.map +0 -1
- package/build/server/chunks/_server.ts-B6d5y3_a.js.map +0 -1
- package/build/server/chunks/_server.ts-BbzNUN06.js +0 -79
- package/build/server/chunks/_server.ts-BbzNUN06.js.map +0 -1
- package/build/server/chunks/_server.ts-BjT0bTpr.js.map +0 -1
- package/build/server/chunks/_server.ts-CDOOK4kq.js +0 -85
- package/build/server/chunks/_server.ts-CDOOK4kq.js.map +0 -1
- package/build/server/chunks/_server.ts-CG17acEX.js.map +0 -1
- package/build/server/chunks/_server.ts-CsWOQwa4.js.map +0 -1
- package/build/server/chunks/hooks.server-BVNQXwcy.js.map +0 -1
- package/build/server/chunks/src-BGtbBgcg.js.map +0 -1
- package/build/server/chunks/theme-state.svelte-8qSluhfu.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Navbar-CqHAp9Qh.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 { E as fetchEndpoints, H as rejectChatQuestion, K as sendChatMessage, R as getSessionMessages, U as replyChatPermission, W as replyChatQuestion, Y as startChatMessageTurn, a as speakText, c as stopSpeaking, h as createSession, l as voiceState, n as destroyVoice, q as setActiveEndpoint, t as themeService, z as listSessions } from \"./theme-state.svelte.js\";\nimport { t as goto } from \"./client.js\";\nimport { t as page } from \"./state2.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/advanced-mode-state.svelte.ts\nvar ADVANCED_MODE_STORAGE_KEY = \"openpalm.chat.advanced\";\nvar AdvancedModeService = class {\n\tenabled = false;\n\tinitialized = false;\n\tinit() {\n\t\tif (typeof window === \"undefined\" || this.initialized) return;\n\t\tthis.enabled = this.#readStoredPreference();\n\t\tthis.initialized = true;\n\t}\n\tsetEnabled(value) {\n\t\tthis.enabled = value;\n\t\tthis.#writeStoredPreference(value);\n\t}\n\ttoggle() {\n\t\tconst next = !this.enabled;\n\t\tthis.setEnabled(next);\n\t\treturn next;\n\t}\n\tpreferredChatPath() {\n\t\treturn this.enabled ? \"/advanced\" : \"/chat\";\n\t}\n\t#readStoredPreference() {\n\t\tif (typeof window === \"undefined\") return false;\n\t\ttry {\n\t\t\treturn window.localStorage.getItem(ADVANCED_MODE_STORAGE_KEY) === \"1\";\n\t\t} catch {\n\t\t\treturn false;\n\t\t}\n\t}\n\t#writeStoredPreference(value) {\n\t\tif (typeof window === \"undefined\") return;\n\t\ttry {\n\t\t\twindow.localStorage.setItem(ADVANCED_MODE_STORAGE_KEY, value ? \"1\" : \"0\");\n\t\t} catch {}\n\t}\n};\nvar advancedModeService = new AdvancedModeService();\n//#endregion\n//#region src/lib/chat/oc-events.ts\nfunction propStr(props, key) {\n\tconst value = props?.[key];\n\treturn typeof value === \"string\" ? value : void 0;\n}\nfunction partSnapshotType(event) {\n\tif (event.type !== \"message.part.updated\") return null;\n\tconst part = event.properties?.part;\n\tif (typeof part?.id === \"string\" && typeof part.type === \"string\") return {\n\t\tpartID: part.id,\n\t\ttype: part.type\n\t};\n\treturn null;\n}\nfunction extractTextDelta(event, sessionId, reasoningPartIds) {\n\tconst props = event.properties ?? {};\n\tif (propStr(props, \"sessionID\") !== sessionId) return null;\n\tif (event.type === \"session.next.text.delta\") return propStr(props, \"delta\") ?? propStr(props, \"text\") ?? null;\n\tif (event.type === \"message.part.delta\") {\n\t\tconst field = propStr(props, \"field\");\n\t\tif (field && field !== \"text\") return null;\n\t\tconst partID = propStr(props, \"partID\");\n\t\tif (partID && reasoningPartIds?.has(partID)) return null;\n\t\treturn propStr(props, \"delta\") ?? null;\n\t}\n\treturn null;\n}\nfunction statusName(status) {\n\tif (typeof status === \"string\") return status;\n\tif (status && typeof status === \"object\" && typeof status.type === \"string\") return status.type;\n}\nfunction isTurnEnd(event, sessionId) {\n\tconst props = event.properties ?? {};\n\tif (propStr(props, \"sessionID\") !== sessionId) return false;\n\tif (event.type === \"session.idle\") return true;\n\tif (event.type === \"session.status\") {\n\t\tconst name = statusName(props.status);\n\t\treturn name === \"idle\" || name === \"completed\" || name === \"done\";\n\t}\n\treturn false;\n}\nfunction valueToText(value) {\n\tif (typeof value === \"string\") return value;\n\tif (value == null) return void 0;\n\tif (typeof value === \"number\" || typeof value === \"boolean\") return String(value);\n\ttry {\n\t\treturn JSON.stringify(value);\n\t} catch {\n\t\treturn;\n\t}\n}\nfunction firstText(...values) {\n\tfor (const value of values) {\n\t\tconst text = valueToText(value);\n\t\tif (text) return text;\n\t}\n}\nfunction extractToolUpdate(event, sessionId) {\n\tconst props = event.properties ?? {};\n\tif (propStr(props, \"sessionID\") !== sessionId) return null;\n\tconst part = props.part ?? props.tool;\n\tif (event.type === \"message.part.updated\" && part && (part.type === \"tool\" || part.state)) {\n\t\tconst state = part.state ?? {};\n\t\treturn {\n\t\t\tcallID: String(part.callID ?? part.id ?? \"\"),\n\t\t\ttool: String(part.tool ?? \"tool\"),\n\t\t\tstatus: String(state.status ?? \"running\"),\n\t\t\ttitle: typeof state.title === \"string\" ? state.title : void 0,\n\t\t\tdetail: firstText(state.input, state.metadata, state.progress, state.output),\n\t\t\toutput: valueToText(state.output),\n\t\t\terror: typeof state.error === \"string\" ? state.error : void 0\n\t\t};\n\t}\n\tif (event.type.startsWith(\"session.next.tool.\")) {\n\t\tconst type = event.type.replace(\"session.next.tool.\", \"\");\n\t\treturn {\n\t\t\tcallID: propStr(props, \"callID\") ?? \"\",\n\t\t\ttool: propStr(props, \"tool\") ?? \"tool\",\n\t\t\tstatus: type === \"completed\" ? \"completed\" : type === \"failed\" ? \"error\" : type === \"called\" ? \"running\" : propStr(props, \"status\") ?? \"running\",\n\t\t\ttitle: propStr(props, \"title\") ?? propStr(props, \"tool\"),\n\t\t\tdetail: firstText(props.message, props.delta, props.progress, props.input, props.metadata),\n\t\t\toutput: firstText(props.output, props.result),\n\t\t\terror: firstText(props.error)\n\t\t};\n\t}\n\treturn null;\n}\nfunction isSessionError(event, sessionId) {\n\treturn event.type === \"session.error\" && propStr(event.properties, \"sessionID\") === sessionId;\n}\nfunction extractPermissionAsk(event, sessionId) {\n\tif (event.type !== \"permission.asked\") return null;\n\tif (propStr(event.properties, \"sessionID\") !== sessionId) return null;\n\tconst id = propStr(event.properties, \"id\");\n\tif (!id) return null;\n\tconst patterns = Array.isArray(event.properties?.patterns) ? event.properties.patterns.filter((item) => typeof item === \"string\") : [];\n\tconst always = Array.isArray(event.properties?.always) ? event.properties.always.filter((item) => typeof item === \"string\") : [];\n\tconst toolRecord = event.properties?.tool;\n\treturn {\n\t\trequestID: id,\n\t\tpermission: propStr(event.properties, \"permission\") ?? \"tool\",\n\t\tpatterns,\n\t\talways,\n\t\ttool: propStr(toolRecord, \"callID\") ?? propStr(event.properties, \"permission\") ?? \"tool\",\n\t\tdetail: firstText(event.properties?.metadata, event.properties?.message) ?? \"\"\n\t};\n}\nfunction extractQuestionAsk(event, sessionId) {\n\tif (event.type !== \"question.asked\") return null;\n\tif (propStr(event.properties, \"sessionID\") !== sessionId) return null;\n\tconst id = propStr(event.properties, \"id\");\n\tif (!id) return null;\n\tconst rawQuestions = Array.isArray(event.properties?.questions) ? event.properties.questions : [];\n\tconst questions = [];\n\tfor (const raw of rawQuestions) {\n\t\tconst item = raw;\n\t\tconst options = Array.isArray(item.options) ? item.options.map((option) => option).filter((option) => typeof option.label === \"string\").map((option) => ({\n\t\t\tlabel: option.label,\n\t\t\tdescription: typeof option.description === \"string\" ? option.description : \"\"\n\t\t})) : [];\n\t\tquestions.push({\n\t\t\tquestion: typeof item.question === \"string\" ? item.question : \"\",\n\t\t\theader: typeof item.header === \"string\" ? item.header : \"\",\n\t\t\toptions\n\t\t});\n\t}\n\tif (questions.length === 0) return null;\n\treturn {\n\t\trequestID: id,\n\t\tquestions\n\t};\n}\nfunction extractStepUpdate(event, sessionId) {\n\tconst props = event.properties ?? {};\n\tif (propStr(props, \"sessionID\") !== sessionId) return null;\n\tif (event.type !== \"session.next.step.started\" && event.type !== \"session.next.step.ended\") return null;\n\treturn {\n\t\tid: propStr(props, \"stepID\") ?? propStr(props, \"id\") ?? event.type,\n\t\ttitle: propStr(props, \"title\") ?? propStr(props, \"step\") ?? (event.type === \"session.next.step.started\" ? \"Working\" : \"Step complete\"),\n\t\tstatus: event.type === \"session.next.step.ended\" ? \"completed\" : \"running\",\n\t\tdetail: firstText(props.detail, props.message)\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\thandlers.onEvent?.(payload);\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/desktop-notifications.ts\nvar DESKTOP_NOTIFY_ENABLED_KEY = \"openpalm.desktop.notify\";\nvar DESKTOP_NOTIFY_PREVIEW_KEY = \"openpalm.desktop.notify.preview\";\nfunction readFlag(key) {\n\tif (typeof window === \"undefined\") return false;\n\ttry {\n\t\treturn window.localStorage.getItem(key) === \"1\";\n\t} catch {\n\t\treturn false;\n\t}\n}\nfunction desktopNotifyEnabled() {\n\treturn readFlag(DESKTOP_NOTIFY_ENABLED_KEY);\n}\nfunction desktopReplyPreviewEnabled() {\n\treturn readFlag(DESKTOP_NOTIFY_PREVIEW_KEY);\n}\nfunction shouldNotifyDesktop() {\n\tif (typeof document === \"undefined\") return false;\n\tif (document.hasFocus()) return false;\n\tif (!desktopNotifyEnabled()) return false;\n\treturn typeof window !== \"undefined\" && typeof window.openpalm?.notify === \"function\";\n}\nfunction notifyAssistantReply(replyText) {\n\tif (!shouldNotifyDesktop()) return;\n\tconst body = desktopReplyPreviewEnabled() && replyText.trim() ? replyText.trim() : \"Assistant replied\";\n\twindow.openpalm?.notify?.(\"OpenPalm\", body);\n}\nfunction notifyAssistantError() {\n\tif (!shouldNotifyDesktop()) return;\n\twindow.openpalm?.notify?.(\"OpenPalm\", \"Assistant error\");\n}\n//#endregion\n//#region src/lib/chat/chat-state.svelte.ts\nvar STREAM_TURN_TIMEOUT_MS = 15e4;\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\tpendingAssistantText = \"\";\n\tpendingToolStates = [];\n\tpendingPermission = null;\n\tpendingQuestion = null;\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_pendingTurn = 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\tonEvent: (event) => {\n\t\t\t\tthis._onLiveEvent(event);\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\tif (this._pendingTurn) this._failPendingTurn(/* @__PURE__ */ new Error(\"Assistant event stream disconnected.\"));\n\t\t\t}\n\t\t});\n\t}\n\t_toRawEvent(event) {\n\t\treturn {\n\t\t\ttype: event.type,\n\t\t\tproperties: event.properties ?? {}\n\t\t};\n\t}\n\t_upsertPendingToolState(update) {\n\t\tconst id = update.callID || `${update.tool}:${this.pendingToolStates.length}`;\n\t\tconst next = {\n\t\t\tid,\n\t\t\tkind: \"tool\",\n\t\t\ttool: update.tool,\n\t\t\tstatus: update.status,\n\t\t\ttitle: update.title ?? update.tool,\n\t\t\tdetail: update.detail ?? \"\",\n\t\t\toutput: update.output ?? \"\",\n\t\t\terror: update.error ?? \"\",\n\t\t\tupdatedAt: Date.now()\n\t\t};\n\t\tif (!this.pendingToolStates.find((item) => item.id === id)) {\n\t\t\tthis.pendingToolStates = [...this.pendingToolStates, next];\n\t\t\treturn;\n\t\t}\n\t\tthis.pendingToolStates = this.pendingToolStates.map((item) => item.id === id ? {\n\t\t\t...item,\n\t\t\t...next\n\t\t} : item);\n\t}\n\t_upsertPendingStepState(update) {\n\t\tconst next = {\n\t\t\tid: update.id,\n\t\t\tkind: \"step\",\n\t\t\ttool: \"step\",\n\t\t\tstatus: update.status,\n\t\t\ttitle: update.title,\n\t\t\tdetail: update.detail ?? \"\",\n\t\t\toutput: \"\",\n\t\t\terror: \"\",\n\t\t\tupdatedAt: Date.now()\n\t\t};\n\t\tif (!this.pendingToolStates.find((item) => item.id === update.id)) {\n\t\t\tthis.pendingToolStates = [...this.pendingToolStates, next];\n\t\t\treturn;\n\t\t}\n\t\tthis.pendingToolStates = this.pendingToolStates.map((item) => item.id === update.id ? {\n\t\t\t...item,\n\t\t\t...next\n\t\t} : item);\n\t}\n\t_resetPendingRenderState() {\n\t\tthis.pendingAssistantText = \"\";\n\t\tthis.pendingToolStates = [];\n\t\tthis.pendingPermission = null;\n\t\tthis.pendingQuestion = null;\n\t}\n\t_appendAssistantReply(text, toolStates) {\n\t\tconst assistantEntry = {\n\t\t\tid: crypto.randomUUID(),\n\t\t\trole: \"assistant\",\n\t\t\ttext,\n\t\t\ttimestamp: Date.now(),\n\t\t\t...toolStates && toolStates.length > 0 ? { toolStates: [...toolStates] } : {}\n\t\t};\n\t\tthis.entries = [...this.entries, assistantEntry];\n\t}\n\t_clearPendingTurn() {\n\t\tconst pending = this._pendingTurn;\n\t\tif (!pending) return null;\n\t\tclearTimeout(pending.timeout);\n\t\tthis._pendingTurn = null;\n\t\treturn pending;\n\t}\n\t_finishPendingTurn(replyText) {\n\t\tconst pending = this._clearPendingTurn();\n\t\tif (!pending) return;\n\t\tconst text = (replyText ?? this.pendingAssistantText).trim() || \"(no response)\";\n\t\tif (this.pendingQuestion?.status === \"answered\" && this.pendingQuestion.message) {\n\t\t\tconst questionNote = {\n\t\t\t\tid: crypto.randomUUID(),\n\t\t\t\ttype: \"note\",\n\t\t\t\tlabel: \"Question answered\",\n\t\t\t\ttext: this.pendingQuestion.message,\n\t\t\t\ttimestamp: Date.now()\n\t\t\t};\n\t\t\tthis.entries = [...this.entries, questionNote];\n\t\t}\n\t\tconst capturedToolStates = this.pendingToolStates.length > 0 ? [...this.pendingToolStates] : void 0;\n\t\tthis._appendAssistantReply(text, capturedToolStates);\n\t\tthis._resetPendingRenderState();\n\t\tthis._bumpSession(pending.sessionId);\n\t\tif (voiceState.ttsSupported && voiceState.ttsAutoEnabled && text && text !== \"(no response)\") speakText(text, {\n\t\t\tmode: \"chat_reply\",\n\t\t\tuserText: pending.userText,\n\t\t\tassistantText: text\n\t\t});\n\t\tnotifyAssistantReply(text === \"(no response)\" ? \"\" : text);\n\t\tpending.resolve();\n\t}\n\t_failPendingTurn(error) {\n\t\tconst pending = this._clearPendingTurn();\n\t\tif (!pending) return;\n\t\tthis._resetPendingRenderState();\n\t\tpending.reject(error);\n\t}\n\t_bumpSession(sessionId) {\n\t\tconst endpointId = this.activeEndpointId;\n\t\tconst prev = this.byEndpoint.get(endpointId);\n\t\tif (!prev) return;\n\t\tconst now = Date.now();\n\t\tconst existing = prev.sessions.find((s) => s.id === sessionId);\n\t\tconst updated = existing ? {\n\t\t\t...existing,\n\t\t\tupdatedAt: now\n\t\t} : {\n\t\t\tid: sessionId,\n\t\t\ttitle: \"\",\n\t\t\tcreatedAt: now,\n\t\t\tupdatedAt: now\n\t\t};\n\t\tconst rest = prev.sessions.filter((s) => s.id !== sessionId);\n\t\tthis.setEndpointState(endpointId, { sessions: [updated, ...rest] });\n\t}\n\t_onLiveEvent(event) {\n\t\tconst pending = this._pendingTurn;\n\t\tif (!pending) return;\n\t\tconst raw = this._toRawEvent(event);\n\t\tif (pending.endpointId !== this.activeEndpointId) return;\n\t\tconst snapshot = partSnapshotType(raw);\n\t\tif (snapshot?.type === \"reasoning\") pending.reasoningPartIds.add(snapshot.partID);\n\t\tconst textDelta = extractTextDelta(raw, pending.sessionId, pending.reasoningPartIds);\n\t\tif (textDelta) this.pendingAssistantText += textDelta;\n\t\tconst toolUpdate = extractToolUpdate(raw, pending.sessionId);\n\t\tif (toolUpdate) this._upsertPendingToolState(toolUpdate);\n\t\tconst stepUpdate = extractStepUpdate(raw, pending.sessionId);\n\t\tif (stepUpdate) this._upsertPendingStepState(stepUpdate);\n\t\tconst permissionAsk = extractPermissionAsk(raw, pending.sessionId);\n\t\tif (permissionAsk) this.pendingPermission = {\n\t\t\t...permissionAsk,\n\t\t\tstatus: \"pending\",\n\t\t\tdecision: \"\",\n\t\t\tmessage: \"\"\n\t\t};\n\t\tconst questionAsk = extractQuestionAsk(raw, pending.sessionId);\n\t\tif (questionAsk) this.pendingQuestion = {\n\t\t\t...questionAsk,\n\t\t\tstatus: \"pending\",\n\t\t\tanswers: questionAsk.questions.map(() => \"\"),\n\t\t\tmessage: \"\"\n\t\t};\n\t\tif (isSessionError(raw, pending.sessionId)) {\n\t\t\tthis._failPendingTurn(/* @__PURE__ */ new Error(\"Assistant session ended unexpectedly.\"));\n\t\t\treturn;\n\t\t}\n\t\tif (isTurnEnd(raw, pending.sessionId)) this._finishPendingTurn();\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._resetPendingRenderState();\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\tthis._resetPendingRenderState();\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\tconst trimmed = text.trim();\n\t\tif (!trimmed) return;\n\t\tif (this.pendingQuestion && this.pendingQuestion.questions.length === 1 && this.sending) {\n\t\t\tawait this.answerQuestion(trimmed);\n\t\t\treturn;\n\t\t}\n\t\tif (this.pendingQuestion && this.sending) {\n\t\t\tthis.pendingQuestion = {\n\t\t\t\t...this.pendingQuestion,\n\t\t\t\tstatus: \"error\",\n\t\t\t\tmessage: \"This question has multiple parts and must be answered with the provided controls.\"\n\t\t\t};\n\t\t\treturn;\n\t\t}\n\t\tif (this.sending) 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._resetPendingRenderState();\n\t\tthis.error = \"\";\n\t\tthis.sending = true;\n\t\tif (voiceState.ttsSupported && voiceState.ttsAutoEnabled) speakText(\"Working on it.\", {\n\t\t\tmode: \"chat_ack\",\n\t\t\tuserText: trimmed\n\t\t});\n\t\ttry {\n\t\t\tif (this._unsubscribeEvents && this.liveConnected) await new Promise((resolve, reject) => {\n\t\t\t\tconst timeout = setTimeout(() => {\n\t\t\t\t\tthis._failPendingTurn(/* @__PURE__ */ new Error(\"Timed out waiting for the assistant response.\"));\n\t\t\t\t}, STREAM_TURN_TIMEOUT_MS);\n\t\t\t\tthis._pendingTurn = {\n\t\t\t\t\tendpointId: this.activeEndpointId,\n\t\t\t\t\tsessionId,\n\t\t\t\t\tuserText: trimmed,\n\t\t\t\t\treasoningPartIds: /* @__PURE__ */ new Set(),\n\t\t\t\t\tresolve,\n\t\t\t\t\treject,\n\t\t\t\t\ttimeout\n\t\t\t\t};\n\t\t\t\tstartChatMessageTurn(sessionId, trimmed).catch((error) => {\n\t\t\t\t\tthis._failPendingTurn(error instanceof Error ? error : new Error(String(error)));\n\t\t\t\t});\n\t\t\t});\n\t\t\telse {\n\t\t\t\tconst text = (await sendChatMessage(sessionId, trimmed)).parts.filter((p) => p.type === \"text\" && p.text).map((p) => p.text ?? \"\").join(\"\").trim() || \"(no response)\";\n\t\t\t\tconst capturedTools = this.pendingToolStates.length > 0 ? [...this.pendingToolStates] : void 0;\n\t\t\t\tthis._appendAssistantReply(text, capturedTools);\n\t\t\t\tthis._resetPendingRenderState();\n\t\t\t\tthis._bumpSession(sessionId);\n\t\t\t\tif (voiceState.ttsSupported && voiceState.ttsAutoEnabled && text !== \"(no response)\") speakText(text, {\n\t\t\t\t\tmode: \"chat_reply\",\n\t\t\t\t\tuserText: trimmed,\n\t\t\t\t\tassistantText: text\n\t\t\t\t});\n\t\t\t\tnotifyAssistantReply(text === \"(no response)\" ? \"\" : text);\n\t\t\t}\n\t\t} catch (e) {\n\t\t\tconst err = e;\n\t\t\tthis._resetPendingRenderState();\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\tnotifyAssistantError();\n\t\t} finally {\n\t\t\tthis.sending = false;\n\t\t}\n\t}\n\tasync answerPermission(reply) {\n\t\tif (!this.pendingPermission || this.pendingPermission.status === \"submitting\") return;\n\t\tconst current = this.pendingPermission;\n\t\tthis.pendingPermission = {\n\t\t\t...current,\n\t\t\tstatus: \"submitting\",\n\t\t\tdecision: reply,\n\t\t\tmessage: \"\"\n\t\t};\n\t\ttry {\n\t\t\tawait replyChatPermission(current.requestID, reply);\n\t\t\tthis.pendingPermission = {\n\t\t\t\t...current,\n\t\t\t\tstatus: \"resolved\",\n\t\t\t\tdecision: reply,\n\t\t\t\tmessage: 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...`\n\t\t\t};\n\t\t} catch (error) {\n\t\t\tconst message = error instanceof Error ? error.message : \"Failed to record permission reply.\";\n\t\t\tthis.pendingPermission = {\n\t\t\t\t...current,\n\t\t\t\tstatus: \"error\",\n\t\t\t\tdecision: reply,\n\t\t\t\tmessage\n\t\t\t};\n\t\t}\n\t}\n\tsetQuestionAnswer(index, answer) {\n\t\tif (!this.pendingQuestion) return;\n\t\tif (index < 0 || index >= this.pendingQuestion.questions.length) return;\n\t\tconst answers = [...this.pendingQuestion.answers];\n\t\tanswers[index] = answer;\n\t\tthis.pendingQuestion = {\n\t\t\t...this.pendingQuestion,\n\t\t\tanswers,\n\t\t\tmessage: \"\"\n\t\t};\n\t}\n\tasync answerQuestion(answer) {\n\t\tif (!this.pendingQuestion || this.pendingQuestion.status === \"submitting\") return;\n\t\tconst current = this.pendingQuestion;\n\t\tconst answers = current.questions.length === 1 && typeof answer === \"string\" ? [answer.trim()] : current.answers.map((item) => item.trim());\n\t\tif (answers.some((item) => !item)) {\n\t\t\tthis.pendingQuestion = {\n\t\t\t\t...current,\n\t\t\t\tstatus: \"error\",\n\t\t\t\tmessage: \"Answer every question before submitting.\"\n\t\t\t};\n\t\t\treturn;\n\t\t}\n\t\tthis.pendingQuestion = {\n\t\t\t...current,\n\t\t\tstatus: \"submitting\",\n\t\t\tanswers,\n\t\t\tmessage: \"\"\n\t\t};\n\t\ttry {\n\t\t\tawait replyChatQuestion(current.requestID, answers.map((item) => [item]));\n\t\t\tthis.pendingQuestion = {\n\t\t\t\t...current,\n\t\t\t\tstatus: \"answered\",\n\t\t\t\tanswers,\n\t\t\t\tmessage: \"Answer sent.\"\n\t\t\t};\n\t\t} catch (error) {\n\t\t\tconst message = error instanceof Error ? error.message : \"Failed to send answer.\";\n\t\t\tthis.pendingQuestion = {\n\t\t\t\t...current,\n\t\t\t\tstatus: \"error\",\n\t\t\t\tanswers,\n\t\t\t\tmessage\n\t\t\t};\n\t\t}\n\t}\n\tasync rejectQuestion() {\n\t\tif (!this.pendingQuestion || this.pendingQuestion.status === \"submitting\") return;\n\t\tconst current = this.pendingQuestion;\n\t\tthis.pendingQuestion = {\n\t\t\t...current,\n\t\t\tstatus: \"submitting\",\n\t\t\tmessage: \"\"\n\t\t};\n\t\ttry {\n\t\t\tawait rejectChatQuestion(current.requestID);\n\t\t\tthis.pendingQuestion = {\n\t\t\t\t...current,\n\t\t\t\tstatus: \"rejected\",\n\t\t\t\tmessage: \"Question declined.\"\n\t\t\t};\n\t\t} catch (error) {\n\t\t\tconst message = error instanceof Error ? error.message : \"Failed to reject question.\";\n\t\t\tthis.pendingQuestion = {\n\t\t\t\t...current,\n\t\t\t\tstatus: \"error\",\n\t\t\t\tmessage\n\t\t\t};\n\t\t}\n\t}\n\treset() {\n\t\tstopSpeaking();\n\t\tthis._clearPendingTurn();\n\t\tthis.entries = [];\n\t\tthis.error = \"\";\n\t\tthis._resetPendingRenderState();\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/chat/navigation.ts\nfunction currentChatSessionId() {\n\treturn chat.activeSessionId;\n}\nfunction buildAdvancedPath(sessionId) {\n\tconst params = new URLSearchParams();\n\tif (sessionId) params.set(\"session\", sessionId);\n\tconst query = params.toString();\n\treturn query ? `/advanced?${query}` : \"/advanced\";\n}\nfunction buildChatPath(sessionId, options) {\n\tconst params = new URLSearchParams();\n\tif (sessionId) params.set(\"session\", sessionId);\n\tif (options?.newChat) params.set(\"new\", \"1\");\n\tconst query = params.toString();\n\treturn query ? `/chat?${query}` : \"/chat\";\n}\n//#endregion\n//#region src/lib/components/chrome/ModeSwitch.svelte\nfunction advancedIcon($$renderer) {\n\t$$renderer.push(`<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\"><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>`);\n}\nfunction ModeSwitch($$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\tderived(() => pathname() === \"/advanced\" || pathname().startsWith(\"/advanced/\"));\n\t\tfunction toggle() {\n\t\t\tconst enabled = advancedModeService.toggle();\n\t\t\tif (onAdmin()) return;\n\t\t\tconst sessionId = page.url.searchParams.get(\"session\") ?? currentChatSessionId();\n\t\t\tgoto(enabled ? buildAdvancedPath(sessionId) : buildChatPath(sessionId));\n\t\t}\n\t\tToggleButton($$renderer, {\n\t\t\tpressed: advancedModeService.enabled,\n\t\t\tonToggle: toggle,\n\t\t\tariaLabel: \"Advanced mode\",\n\t\t\ttitle: \"Advanced mode (embedded OpenCode)\",\n\t\t\ticon: advancedIcon\n\t\t});\n\t});\n}\n//#endregion\n//#region src/lib/components/common/ThemeToggle.svelte\nfunction currentIcon($$renderer) {\n\tif (themeService.preference === \"system\") {\n\t\t$$renderer.push(\"<!--[0-->\");\n\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\"><rect x=\"2\" y=\"3\" width=\"20\" height=\"14\" rx=\"2\"></rect><path d=\"M8 21h8\"></path><path d=\"M12 17v4\"></path></svg>`);\n\t} else if (themeService.preference === \"light\") {\n\t\t$$renderer.push(\"<!--[1-->\");\n\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\"><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\t} else {\n\t\t$$renderer.push(\"<!--[-1-->\");\n\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\"><path d=\"M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9z\"></path></svg>`);\n\t}\n\t$$renderer.push(`<!--]-->`);\n}\nfunction ThemeToggle($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tconst CYCLE = [\n\t\t\t\"system\",\n\t\t\t\"light\",\n\t\t\t\"dark\"\n\t\t];\n\t\tfunction cycle() {\n\t\t\tconst current = themeService.preference;\n\t\t\tconst next = CYCLE[(CYCLE.indexOf(current) + 1) % CYCLE.length];\n\t\t\tthemeService.setPreference(next);\n\t\t}\n\t\tconst label = derived(() => themeService.preference === \"system\" ? \"Theme: system (click for light)\" : themeService.preference === \"light\" ? \"Theme: light (click for dark)\" : \"Theme: dark (click for system)\");\n\t\tIconButton($$renderer, {\n\t\t\ticon: currentIcon,\n\t\t\tariaLabel: label(),\n\t\t\ttitle: label(),\n\t\t\tonclick: cycle\n\t\t});\n\t});\n}\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/assistant-endpoint.ts\nfunction isLocalAssistantUrl(url) {\n\tif (!url) return true;\n\ttry {\n\t\tconst host = new URL(url).hostname;\n\t\treturn host === \"localhost\" || host === \"127.0.0.1\" || host === \"::1\" || host === \"host.docker.internal\";\n\t} catch {\n\t\treturn true;\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\tconst showManageAssistant = derived(() => isLocalAssistantUrl(active()?.url));\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> `);\n\t\tif (showManageAssistant()) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<a class=\"list-item link svelte-dlw00e\" href=\"/admin\">Manage this assistant…</a>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> <a class=\"list-item link svelte-dlw00e\" href=\"/admin/endpoints\">Manage assistant connections…</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/session-title.ts\nvar DEFAULT_TITLE_RE = /^New session - (\\d{4}-\\d{2}-\\d{2}T[0-9:.]+Z?)$/;\n/** Resolve a session's display title. */\nfunction resolveSessionTitle(title) {\n\tconst trimmed = (title ?? \"\").trim();\n\tif (!trimmed) return \"Untitled session\";\n\tconst match = DEFAULT_TITLE_RE.exec(trimmed);\n\tif (match) {\n\t\tconst ts = Date.parse(match[1]);\n\t\tif (!Number.isNaN(ts)) return formatDateTime(ts);\n\t}\n\treturn trimmed;\n}\n//#endregion\n//#region src/lib/components/chat/SessionTitle.svelte\nfunction SessionTitle($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tlet { title } = $$props;\n\t\tconst display = derived(() => resolveSessionTitle(title));\n\t\t$$renderer.push(`<!---->${escape_html(display())}`);\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(`<!--]--> `);\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\">`);\n\t\t\t\tSessionTitle($$renderer, { title: s.title });\n\t\t\t\t$$renderer.push(`<!---->`);\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 class=\"divider svelte-1o6rxhb\"></div> <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>`);\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() ? resolveSessionTitle(activeSummary().title) : \"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\tlet removeGlobalMicToggle = null;\n\t\tonDestroy(() => {\n\t\t\tif (typeof window !== \"undefined\") window.openpalm?.setTrayMicRecording?.(false);\n\t\t\tremoveGlobalMicToggle?.();\n\t\t\tremoveGlobalMicToggle = null;\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 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 onConversationSurface = derived(() => onChatSurface() || onAdvancedSurface());\n\t\tconst preferredChatHref = derived(() => {\n\t\t\tconst sessionId = page.url.searchParams.get(\"session\") ?? currentChatSessionId();\n\t\t\treturn advancedModeService.enabled ? buildAdvancedPath(sessionId) : buildChatPath(sessionId);\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\"${attr(\"href\", preferredChatHref())} 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: preferredChatHref(),\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 $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> `);\n\t\tThemeToggle($$renderer, {});\n\t\t$$renderer.push(`<!----> `);\n\t\tif (onConversationSurface()) {\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\tModeSwitch($$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, desktopNotifyEnabled as c, extractStepUpdate as d, extractToolUpdate as f, formatTime as h, Drawer as i, desktopReplyPreviewEnabled as l, IconButton as m, SessionList as n, buildAdvancedPath as o, advancedModeService as p, EndpointList as r, chat as s, Navbar as t, subscribeSessionEvents as u };\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Navbar-y0AyDpcy.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 { B as listSessions, E as fetchEndpoints, H as rejectChatQuestion, K as sendChatMessage, R as getSessionMessages, U as replyChatPermission, W as replyChatQuestion, Y as startChatMessageTurn, a as speakText, c as stopSpeaking, h as createSession, l as voiceState, n as destroyVoice, q as setActiveEndpoint, t as themeService } from \"./theme-state.svelte.js\";\nimport { t as goto } from \"./client.js\";\nimport { t as page } from \"./state2.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/advanced-mode-state.svelte.ts\nvar ADVANCED_MODE_STORAGE_KEY = \"openpalm.chat.advanced\";\nvar AdvancedModeService = class {\n\tenabled = false;\n\tinitialized = false;\n\tinit() {\n\t\tif (typeof window === \"undefined\" || this.initialized) return;\n\t\tthis.enabled = this.#readStoredPreference();\n\t\tthis.initialized = true;\n\t}\n\tsetEnabled(value) {\n\t\tthis.enabled = value;\n\t\tthis.#writeStoredPreference(value);\n\t}\n\ttoggle() {\n\t\tconst next = !this.enabled;\n\t\tthis.setEnabled(next);\n\t\treturn next;\n\t}\n\tpreferredChatPath() {\n\t\treturn this.enabled ? \"/advanced\" : \"/chat\";\n\t}\n\t#readStoredPreference() {\n\t\tif (typeof window === \"undefined\") return false;\n\t\ttry {\n\t\t\treturn window.localStorage.getItem(ADVANCED_MODE_STORAGE_KEY) === \"1\";\n\t\t} catch {\n\t\t\treturn false;\n\t\t}\n\t}\n\t#writeStoredPreference(value) {\n\t\tif (typeof window === \"undefined\") return;\n\t\ttry {\n\t\t\twindow.localStorage.setItem(ADVANCED_MODE_STORAGE_KEY, value ? \"1\" : \"0\");\n\t\t} catch {}\n\t}\n};\nvar advancedModeService = new AdvancedModeService();\n//#endregion\n//#region src/lib/chat/oc-events.ts\nfunction propStr(props, key) {\n\tconst value = props?.[key];\n\treturn typeof value === \"string\" ? value : void 0;\n}\nfunction partSnapshotType(event) {\n\tif (event.type !== \"message.part.updated\") return null;\n\tconst part = event.properties?.part;\n\tif (typeof part?.id === \"string\" && typeof part.type === \"string\") return {\n\t\tpartID: part.id,\n\t\ttype: part.type\n\t};\n\treturn null;\n}\nfunction extractTextDelta(event, sessionId, reasoningPartIds) {\n\tconst props = event.properties ?? {};\n\tif (propStr(props, \"sessionID\") !== sessionId) return null;\n\tif (event.type === \"session.next.text.delta\") return propStr(props, \"delta\") ?? propStr(props, \"text\") ?? null;\n\tif (event.type === \"message.part.delta\") {\n\t\tconst field = propStr(props, \"field\");\n\t\tif (field && field !== \"text\") return null;\n\t\tconst partID = propStr(props, \"partID\");\n\t\tif (partID && reasoningPartIds?.has(partID)) return null;\n\t\treturn propStr(props, \"delta\") ?? null;\n\t}\n\treturn null;\n}\nfunction statusName(status) {\n\tif (typeof status === \"string\") return status;\n\tif (status && typeof status === \"object\" && typeof status.type === \"string\") return status.type;\n}\nfunction isTurnEnd(event, sessionId) {\n\tconst props = event.properties ?? {};\n\tif (propStr(props, \"sessionID\") !== sessionId) return false;\n\tif (event.type === \"session.idle\") return true;\n\tif (event.type === \"session.status\") {\n\t\tconst name = statusName(props.status);\n\t\treturn name === \"idle\" || name === \"completed\" || name === \"done\";\n\t}\n\treturn false;\n}\nfunction valueToText(value) {\n\tif (typeof value === \"string\") return value;\n\tif (value == null) return void 0;\n\tif (typeof value === \"number\" || typeof value === \"boolean\") return String(value);\n\ttry {\n\t\treturn JSON.stringify(value);\n\t} catch {\n\t\treturn;\n\t}\n}\nfunction firstText(...values) {\n\tfor (const value of values) {\n\t\tconst text = valueToText(value);\n\t\tif (text) return text;\n\t}\n}\nfunction extractToolUpdate(event, sessionId) {\n\tconst props = event.properties ?? {};\n\tif (propStr(props, \"sessionID\") !== sessionId) return null;\n\tconst part = props.part ?? props.tool;\n\tif (event.type === \"message.part.updated\" && part && (part.type === \"tool\" || part.state)) {\n\t\tconst state = part.state ?? {};\n\t\treturn {\n\t\t\tcallID: String(part.callID ?? part.id ?? \"\"),\n\t\t\ttool: String(part.tool ?? \"tool\"),\n\t\t\tstatus: String(state.status ?? \"running\"),\n\t\t\ttitle: typeof state.title === \"string\" ? state.title : void 0,\n\t\t\tdetail: firstText(state.input, state.metadata, state.progress, state.output),\n\t\t\toutput: valueToText(state.output),\n\t\t\terror: typeof state.error === \"string\" ? state.error : void 0\n\t\t};\n\t}\n\tif (event.type.startsWith(\"session.next.tool.\")) {\n\t\tconst type = event.type.replace(\"session.next.tool.\", \"\");\n\t\treturn {\n\t\t\tcallID: propStr(props, \"callID\") ?? \"\",\n\t\t\ttool: propStr(props, \"tool\") ?? \"tool\",\n\t\t\tstatus: type === \"completed\" ? \"completed\" : type === \"failed\" ? \"error\" : type === \"called\" ? \"running\" : propStr(props, \"status\") ?? \"running\",\n\t\t\ttitle: propStr(props, \"title\") ?? propStr(props, \"tool\"),\n\t\t\tdetail: firstText(props.message, props.delta, props.progress, props.input, props.metadata),\n\t\t\toutput: firstText(props.output, props.result),\n\t\t\terror: firstText(props.error)\n\t\t};\n\t}\n\treturn null;\n}\nfunction isSessionError(event, sessionId) {\n\treturn event.type === \"session.error\" && propStr(event.properties, \"sessionID\") === sessionId;\n}\nfunction extractPermissionAsk(event, sessionId) {\n\tif (event.type !== \"permission.asked\") return null;\n\tif (propStr(event.properties, \"sessionID\") !== sessionId) return null;\n\tconst id = propStr(event.properties, \"id\");\n\tif (!id) return null;\n\tconst patterns = Array.isArray(event.properties?.patterns) ? event.properties.patterns.filter((item) => typeof item === \"string\") : [];\n\tconst always = Array.isArray(event.properties?.always) ? event.properties.always.filter((item) => typeof item === \"string\") : [];\n\tconst toolRecord = event.properties?.tool;\n\treturn {\n\t\trequestID: id,\n\t\tpermission: propStr(event.properties, \"permission\") ?? \"tool\",\n\t\tpatterns,\n\t\talways,\n\t\ttool: propStr(toolRecord, \"callID\") ?? propStr(event.properties, \"permission\") ?? \"tool\",\n\t\tdetail: firstText(event.properties?.metadata, event.properties?.message) ?? \"\"\n\t};\n}\nfunction extractQuestionAsk(event, sessionId) {\n\tif (event.type !== \"question.asked\") return null;\n\tif (propStr(event.properties, \"sessionID\") !== sessionId) return null;\n\tconst id = propStr(event.properties, \"id\");\n\tif (!id) return null;\n\tconst rawQuestions = Array.isArray(event.properties?.questions) ? event.properties.questions : [];\n\tconst questions = [];\n\tfor (const raw of rawQuestions) {\n\t\tconst item = raw;\n\t\tconst options = Array.isArray(item.options) ? item.options.map((option) => option).filter((option) => typeof option.label === \"string\").map((option) => ({\n\t\t\tlabel: option.label,\n\t\t\tdescription: typeof option.description === \"string\" ? option.description : \"\"\n\t\t})) : [];\n\t\tquestions.push({\n\t\t\tquestion: typeof item.question === \"string\" ? item.question : \"\",\n\t\t\theader: typeof item.header === \"string\" ? item.header : \"\",\n\t\t\toptions\n\t\t});\n\t}\n\tif (questions.length === 0) return null;\n\treturn {\n\t\trequestID: id,\n\t\tquestions\n\t};\n}\nfunction extractStepUpdate(event, sessionId) {\n\tconst props = event.properties ?? {};\n\tif (propStr(props, \"sessionID\") !== sessionId) return null;\n\tif (event.type !== \"session.next.step.started\" && event.type !== \"session.next.step.ended\") return null;\n\treturn {\n\t\tid: propStr(props, \"stepID\") ?? propStr(props, \"id\") ?? event.type,\n\t\ttitle: propStr(props, \"title\") ?? propStr(props, \"step\") ?? (event.type === \"session.next.step.started\" ? \"Working\" : \"Step complete\"),\n\t\tstatus: event.type === \"session.next.step.ended\" ? \"completed\" : \"running\",\n\t\tdetail: firstText(props.detail, props.message)\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\thandlers.onEvent?.(payload);\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/desktop-notifications.ts\nvar DESKTOP_NOTIFY_ENABLED_KEY = \"openpalm.desktop.notify\";\nvar DESKTOP_NOTIFY_PREVIEW_KEY = \"openpalm.desktop.notify.preview\";\nfunction readFlag(key) {\n\tif (typeof window === \"undefined\") return false;\n\ttry {\n\t\treturn window.localStorage.getItem(key) === \"1\";\n\t} catch {\n\t\treturn false;\n\t}\n}\nfunction desktopNotifyEnabled() {\n\treturn readFlag(DESKTOP_NOTIFY_ENABLED_KEY);\n}\nfunction desktopReplyPreviewEnabled() {\n\treturn readFlag(DESKTOP_NOTIFY_PREVIEW_KEY);\n}\nfunction shouldNotifyDesktop() {\n\tif (typeof document === \"undefined\") return false;\n\tif (document.hasFocus()) return false;\n\tif (!desktopNotifyEnabled()) return false;\n\treturn typeof window !== \"undefined\" && typeof window.openpalm?.notify === \"function\";\n}\nfunction notifyAssistantReply(replyText) {\n\tif (!shouldNotifyDesktop()) return;\n\tconst body = desktopReplyPreviewEnabled() && replyText.trim() ? replyText.trim() : \"Assistant replied\";\n\twindow.openpalm?.notify?.(\"OpenPalm\", body);\n}\nfunction notifyAssistantError() {\n\tif (!shouldNotifyDesktop()) return;\n\twindow.openpalm?.notify?.(\"OpenPalm\", \"Assistant error\");\n}\n//#endregion\n//#region src/lib/chat/chat-state.svelte.ts\nvar STREAM_TURN_TIMEOUT_MS = 15e4;\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\tpendingAssistantText = \"\";\n\tpendingToolStates = [];\n\tpendingPermission = null;\n\tpendingQuestion = null;\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_pendingTurn = 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\tonEvent: (event) => {\n\t\t\t\tthis._onLiveEvent(event);\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\tif (this._pendingTurn) this._failPendingTurn(/* @__PURE__ */ new Error(\"Assistant event stream disconnected.\"));\n\t\t\t}\n\t\t});\n\t}\n\t_toRawEvent(event) {\n\t\treturn {\n\t\t\ttype: event.type,\n\t\t\tproperties: event.properties ?? {}\n\t\t};\n\t}\n\t_upsertPendingToolState(update) {\n\t\tconst id = update.callID || `${update.tool}:${this.pendingToolStates.length}`;\n\t\tconst next = {\n\t\t\tid,\n\t\t\tkind: \"tool\",\n\t\t\ttool: update.tool,\n\t\t\tstatus: update.status,\n\t\t\ttitle: update.title ?? update.tool,\n\t\t\tdetail: update.detail ?? \"\",\n\t\t\toutput: update.output ?? \"\",\n\t\t\terror: update.error ?? \"\",\n\t\t\tupdatedAt: Date.now()\n\t\t};\n\t\tif (!this.pendingToolStates.find((item) => item.id === id)) {\n\t\t\tthis.pendingToolStates = [...this.pendingToolStates, next];\n\t\t\treturn;\n\t\t}\n\t\tthis.pendingToolStates = this.pendingToolStates.map((item) => item.id === id ? {\n\t\t\t...item,\n\t\t\t...next\n\t\t} : item);\n\t}\n\t_upsertPendingStepState(update) {\n\t\tconst next = {\n\t\t\tid: update.id,\n\t\t\tkind: \"step\",\n\t\t\ttool: \"step\",\n\t\t\tstatus: update.status,\n\t\t\ttitle: update.title,\n\t\t\tdetail: update.detail ?? \"\",\n\t\t\toutput: \"\",\n\t\t\terror: \"\",\n\t\t\tupdatedAt: Date.now()\n\t\t};\n\t\tif (!this.pendingToolStates.find((item) => item.id === update.id)) {\n\t\t\tthis.pendingToolStates = [...this.pendingToolStates, next];\n\t\t\treturn;\n\t\t}\n\t\tthis.pendingToolStates = this.pendingToolStates.map((item) => item.id === update.id ? {\n\t\t\t...item,\n\t\t\t...next\n\t\t} : item);\n\t}\n\t_resetPendingRenderState() {\n\t\tthis.pendingAssistantText = \"\";\n\t\tthis.pendingToolStates = [];\n\t\tthis.pendingPermission = null;\n\t\tthis.pendingQuestion = null;\n\t}\n\t_appendAssistantReply(text, toolStates) {\n\t\tconst assistantEntry = {\n\t\t\tid: crypto.randomUUID(),\n\t\t\trole: \"assistant\",\n\t\t\ttext,\n\t\t\ttimestamp: Date.now(),\n\t\t\t...toolStates && toolStates.length > 0 ? { toolStates: [...toolStates] } : {}\n\t\t};\n\t\tthis.entries = [...this.entries, assistantEntry];\n\t}\n\t_clearPendingTurn() {\n\t\tconst pending = this._pendingTurn;\n\t\tif (!pending) return null;\n\t\tclearTimeout(pending.timeout);\n\t\tthis._pendingTurn = null;\n\t\treturn pending;\n\t}\n\t_finishPendingTurn(replyText) {\n\t\tconst pending = this._clearPendingTurn();\n\t\tif (!pending) return;\n\t\tconst text = (replyText ?? this.pendingAssistantText).trim() || \"(no response)\";\n\t\tif (this.pendingQuestion?.status === \"answered\" && this.pendingQuestion.message) {\n\t\t\tconst questionNote = {\n\t\t\t\tid: crypto.randomUUID(),\n\t\t\t\ttype: \"note\",\n\t\t\t\tlabel: \"Question answered\",\n\t\t\t\ttext: this.pendingQuestion.message,\n\t\t\t\ttimestamp: Date.now()\n\t\t\t};\n\t\t\tthis.entries = [...this.entries, questionNote];\n\t\t}\n\t\tconst capturedToolStates = this.pendingToolStates.length > 0 ? [...this.pendingToolStates] : void 0;\n\t\tthis._appendAssistantReply(text, capturedToolStates);\n\t\tthis._resetPendingRenderState();\n\t\tthis._bumpSession(pending.sessionId);\n\t\tif (voiceState.ttsSupported && voiceState.ttsAutoEnabled && text && text !== \"(no response)\") speakText(text, {\n\t\t\tmode: \"chat_reply\",\n\t\t\tuserText: pending.userText,\n\t\t\tassistantText: text\n\t\t});\n\t\tnotifyAssistantReply(text === \"(no response)\" ? \"\" : text);\n\t\tpending.resolve();\n\t}\n\t_failPendingTurn(error) {\n\t\tconst pending = this._clearPendingTurn();\n\t\tif (!pending) return;\n\t\tthis._resetPendingRenderState();\n\t\tpending.reject(error);\n\t}\n\t_bumpSession(sessionId) {\n\t\tconst endpointId = this.activeEndpointId;\n\t\tconst prev = this.byEndpoint.get(endpointId);\n\t\tif (!prev) return;\n\t\tconst now = Date.now();\n\t\tconst existing = prev.sessions.find((s) => s.id === sessionId);\n\t\tconst updated = existing ? {\n\t\t\t...existing,\n\t\t\tupdatedAt: now\n\t\t} : {\n\t\t\tid: sessionId,\n\t\t\ttitle: \"\",\n\t\t\tcreatedAt: now,\n\t\t\tupdatedAt: now\n\t\t};\n\t\tconst rest = prev.sessions.filter((s) => s.id !== sessionId);\n\t\tthis.setEndpointState(endpointId, { sessions: [updated, ...rest] });\n\t}\n\t_onLiveEvent(event) {\n\t\tconst pending = this._pendingTurn;\n\t\tif (!pending) return;\n\t\tconst raw = this._toRawEvent(event);\n\t\tif (pending.endpointId !== this.activeEndpointId) return;\n\t\tconst snapshot = partSnapshotType(raw);\n\t\tif (snapshot?.type === \"reasoning\") pending.reasoningPartIds.add(snapshot.partID);\n\t\tconst textDelta = extractTextDelta(raw, pending.sessionId, pending.reasoningPartIds);\n\t\tif (textDelta) this.pendingAssistantText += textDelta;\n\t\tconst toolUpdate = extractToolUpdate(raw, pending.sessionId);\n\t\tif (toolUpdate) this._upsertPendingToolState(toolUpdate);\n\t\tconst stepUpdate = extractStepUpdate(raw, pending.sessionId);\n\t\tif (stepUpdate) this._upsertPendingStepState(stepUpdate);\n\t\tconst permissionAsk = extractPermissionAsk(raw, pending.sessionId);\n\t\tif (permissionAsk) this.pendingPermission = {\n\t\t\t...permissionAsk,\n\t\t\tstatus: \"pending\",\n\t\t\tdecision: \"\",\n\t\t\tmessage: \"\"\n\t\t};\n\t\tconst questionAsk = extractQuestionAsk(raw, pending.sessionId);\n\t\tif (questionAsk) this.pendingQuestion = {\n\t\t\t...questionAsk,\n\t\t\tstatus: \"pending\",\n\t\t\tanswers: questionAsk.questions.map(() => \"\"),\n\t\t\tmessage: \"\"\n\t\t};\n\t\tif (isSessionError(raw, pending.sessionId)) {\n\t\t\tthis._failPendingTurn(/* @__PURE__ */ new Error(\"Assistant session ended unexpectedly.\"));\n\t\t\treturn;\n\t\t}\n\t\tif (isTurnEnd(raw, pending.sessionId)) this._finishPendingTurn();\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._resetPendingRenderState();\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\tthis._resetPendingRenderState();\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\tconst trimmed = text.trim();\n\t\tif (!trimmed) return;\n\t\tif (this.pendingQuestion && this.pendingQuestion.questions.length === 1 && this.sending) {\n\t\t\tawait this.answerQuestion(trimmed);\n\t\t\treturn;\n\t\t}\n\t\tif (this.pendingQuestion && this.sending) {\n\t\t\tthis.pendingQuestion = {\n\t\t\t\t...this.pendingQuestion,\n\t\t\t\tstatus: \"error\",\n\t\t\t\tmessage: \"This question has multiple parts and must be answered with the provided controls.\"\n\t\t\t};\n\t\t\treturn;\n\t\t}\n\t\tif (this.sending) 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._resetPendingRenderState();\n\t\tthis.error = \"\";\n\t\tthis.sending = true;\n\t\tif (voiceState.ttsSupported && voiceState.ttsAutoEnabled) speakText(\"Working on it.\", {\n\t\t\tmode: \"chat_ack\",\n\t\t\tuserText: trimmed\n\t\t});\n\t\ttry {\n\t\t\tif (this._unsubscribeEvents && this.liveConnected) await new Promise((resolve, reject) => {\n\t\t\t\tconst timeout = setTimeout(() => {\n\t\t\t\t\tthis._failPendingTurn(/* @__PURE__ */ new Error(\"Timed out waiting for the assistant response.\"));\n\t\t\t\t}, STREAM_TURN_TIMEOUT_MS);\n\t\t\t\tthis._pendingTurn = {\n\t\t\t\t\tendpointId: this.activeEndpointId,\n\t\t\t\t\tsessionId,\n\t\t\t\t\tuserText: trimmed,\n\t\t\t\t\treasoningPartIds: /* @__PURE__ */ new Set(),\n\t\t\t\t\tresolve,\n\t\t\t\t\treject,\n\t\t\t\t\ttimeout\n\t\t\t\t};\n\t\t\t\tstartChatMessageTurn(sessionId, trimmed).catch((error) => {\n\t\t\t\t\tthis._failPendingTurn(error instanceof Error ? error : new Error(String(error)));\n\t\t\t\t});\n\t\t\t});\n\t\t\telse {\n\t\t\t\tconst text = (await sendChatMessage(sessionId, trimmed)).parts.filter((p) => p.type === \"text\" && p.text).map((p) => p.text ?? \"\").join(\"\").trim() || \"(no response)\";\n\t\t\t\tconst capturedTools = this.pendingToolStates.length > 0 ? [...this.pendingToolStates] : void 0;\n\t\t\t\tthis._appendAssistantReply(text, capturedTools);\n\t\t\t\tthis._resetPendingRenderState();\n\t\t\t\tthis._bumpSession(sessionId);\n\t\t\t\tif (voiceState.ttsSupported && voiceState.ttsAutoEnabled && text !== \"(no response)\") speakText(text, {\n\t\t\t\t\tmode: \"chat_reply\",\n\t\t\t\t\tuserText: trimmed,\n\t\t\t\t\tassistantText: text\n\t\t\t\t});\n\t\t\t\tnotifyAssistantReply(text === \"(no response)\" ? \"\" : text);\n\t\t\t}\n\t\t} catch (e) {\n\t\t\tconst err = e;\n\t\t\tthis._resetPendingRenderState();\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\tnotifyAssistantError();\n\t\t} finally {\n\t\t\tthis.sending = false;\n\t\t}\n\t}\n\tasync answerPermission(reply) {\n\t\tif (!this.pendingPermission || this.pendingPermission.status === \"submitting\") return;\n\t\tconst current = this.pendingPermission;\n\t\tthis.pendingPermission = {\n\t\t\t...current,\n\t\t\tstatus: \"submitting\",\n\t\t\tdecision: reply,\n\t\t\tmessage: \"\"\n\t\t};\n\t\ttry {\n\t\t\tawait replyChatPermission(current.requestID, reply);\n\t\t\tthis.pendingPermission = {\n\t\t\t\t...current,\n\t\t\t\tstatus: \"resolved\",\n\t\t\t\tdecision: reply,\n\t\t\t\tmessage: 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...`\n\t\t\t};\n\t\t} catch (error) {\n\t\t\tconst message = error instanceof Error ? error.message : \"Failed to record permission reply.\";\n\t\t\tthis.pendingPermission = {\n\t\t\t\t...current,\n\t\t\t\tstatus: \"error\",\n\t\t\t\tdecision: reply,\n\t\t\t\tmessage\n\t\t\t};\n\t\t}\n\t}\n\tsetQuestionAnswer(index, answer) {\n\t\tif (!this.pendingQuestion) return;\n\t\tif (index < 0 || index >= this.pendingQuestion.questions.length) return;\n\t\tconst answers = [...this.pendingQuestion.answers];\n\t\tanswers[index] = answer;\n\t\tthis.pendingQuestion = {\n\t\t\t...this.pendingQuestion,\n\t\t\tanswers,\n\t\t\tmessage: \"\"\n\t\t};\n\t}\n\tasync answerQuestion(answer) {\n\t\tif (!this.pendingQuestion || this.pendingQuestion.status === \"submitting\") return;\n\t\tconst current = this.pendingQuestion;\n\t\tconst answers = current.questions.length === 1 && typeof answer === \"string\" ? [answer.trim()] : current.answers.map((item) => item.trim());\n\t\tif (answers.some((item) => !item)) {\n\t\t\tthis.pendingQuestion = {\n\t\t\t\t...current,\n\t\t\t\tstatus: \"error\",\n\t\t\t\tmessage: \"Answer every question before submitting.\"\n\t\t\t};\n\t\t\treturn;\n\t\t}\n\t\tthis.pendingQuestion = {\n\t\t\t...current,\n\t\t\tstatus: \"submitting\",\n\t\t\tanswers,\n\t\t\tmessage: \"\"\n\t\t};\n\t\ttry {\n\t\t\tawait replyChatQuestion(current.requestID, answers.map((item) => [item]));\n\t\t\tthis.pendingQuestion = {\n\t\t\t\t...current,\n\t\t\t\tstatus: \"answered\",\n\t\t\t\tanswers,\n\t\t\t\tmessage: \"Answer sent.\"\n\t\t\t};\n\t\t} catch (error) {\n\t\t\tconst message = error instanceof Error ? error.message : \"Failed to send answer.\";\n\t\t\tthis.pendingQuestion = {\n\t\t\t\t...current,\n\t\t\t\tstatus: \"error\",\n\t\t\t\tanswers,\n\t\t\t\tmessage\n\t\t\t};\n\t\t}\n\t}\n\tasync rejectQuestion() {\n\t\tif (!this.pendingQuestion || this.pendingQuestion.status === \"submitting\") return;\n\t\tconst current = this.pendingQuestion;\n\t\tthis.pendingQuestion = {\n\t\t\t...current,\n\t\t\tstatus: \"submitting\",\n\t\t\tmessage: \"\"\n\t\t};\n\t\ttry {\n\t\t\tawait rejectChatQuestion(current.requestID);\n\t\t\tthis.pendingQuestion = {\n\t\t\t\t...current,\n\t\t\t\tstatus: \"rejected\",\n\t\t\t\tmessage: \"Question declined.\"\n\t\t\t};\n\t\t} catch (error) {\n\t\t\tconst message = error instanceof Error ? error.message : \"Failed to reject question.\";\n\t\t\tthis.pendingQuestion = {\n\t\t\t\t...current,\n\t\t\t\tstatus: \"error\",\n\t\t\t\tmessage\n\t\t\t};\n\t\t}\n\t}\n\treset() {\n\t\tstopSpeaking();\n\t\tthis._clearPendingTurn();\n\t\tthis.entries = [];\n\t\tthis.error = \"\";\n\t\tthis._resetPendingRenderState();\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/chat/navigation.ts\nfunction currentChatSessionId() {\n\treturn chat.activeSessionId;\n}\nfunction buildAdvancedPath(sessionId) {\n\tconst params = new URLSearchParams();\n\tif (sessionId) params.set(\"session\", sessionId);\n\tconst query = params.toString();\n\treturn query ? `/advanced?${query}` : \"/advanced\";\n}\nfunction buildChatPath(sessionId, options) {\n\tconst params = new URLSearchParams();\n\tif (sessionId) params.set(\"session\", sessionId);\n\tif (options?.newChat) params.set(\"new\", \"1\");\n\tconst query = params.toString();\n\treturn query ? `/chat?${query}` : \"/chat\";\n}\n//#endregion\n//#region src/lib/components/chrome/ModeSwitch.svelte\nfunction advancedIcon($$renderer) {\n\t$$renderer.push(`<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\"><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>`);\n}\nfunction ModeSwitch($$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\tderived(() => pathname() === \"/advanced\" || pathname().startsWith(\"/advanced/\"));\n\t\tfunction toggle() {\n\t\t\tconst enabled = advancedModeService.toggle();\n\t\t\tif (onAdmin()) return;\n\t\t\tconst sessionId = page.url.searchParams.get(\"session\") ?? currentChatSessionId();\n\t\t\tgoto(enabled ? buildAdvancedPath(sessionId) : buildChatPath(sessionId));\n\t\t}\n\t\tToggleButton($$renderer, {\n\t\t\tpressed: advancedModeService.enabled,\n\t\t\tonToggle: toggle,\n\t\t\tariaLabel: \"Advanced mode\",\n\t\t\ttitle: \"Advanced mode (embedded OpenCode)\",\n\t\t\ticon: advancedIcon\n\t\t});\n\t});\n}\n//#endregion\n//#region src/lib/components/common/ThemeToggle.svelte\nfunction currentIcon($$renderer) {\n\tif (themeService.preference === \"system\") {\n\t\t$$renderer.push(\"<!--[0-->\");\n\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\"><rect x=\"2\" y=\"3\" width=\"20\" height=\"14\" rx=\"2\"></rect><path d=\"M8 21h8\"></path><path d=\"M12 17v4\"></path></svg>`);\n\t} else if (themeService.preference === \"light\") {\n\t\t$$renderer.push(\"<!--[1-->\");\n\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\"><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\t} else {\n\t\t$$renderer.push(\"<!--[-1-->\");\n\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\"><path d=\"M12 3a6 6 0 0 0 9 9 9 9 0 1 1-9-9z\"></path></svg>`);\n\t}\n\t$$renderer.push(`<!--]-->`);\n}\nfunction ThemeToggle($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tconst CYCLE = [\n\t\t\t\"system\",\n\t\t\t\"light\",\n\t\t\t\"dark\"\n\t\t];\n\t\tfunction cycle() {\n\t\t\tconst current = themeService.preference;\n\t\t\tconst next = CYCLE[(CYCLE.indexOf(current) + 1) % CYCLE.length];\n\t\t\tthemeService.setPreference(next);\n\t\t}\n\t\tconst label = derived(() => themeService.preference === \"system\" ? \"Theme: system (click for light)\" : themeService.preference === \"light\" ? \"Theme: light (click for dark)\" : \"Theme: dark (click for system)\");\n\t\tIconButton($$renderer, {\n\t\t\ticon: currentIcon,\n\t\t\tariaLabel: label(),\n\t\t\ttitle: label(),\n\t\t\tonclick: cycle\n\t\t});\n\t});\n}\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/assistant-endpoint.ts\nfunction isLocalAssistantUrl(url) {\n\tif (!url) return true;\n\ttry {\n\t\tconst host = new URL(url).hostname;\n\t\treturn host === \"localhost\" || host === \"127.0.0.1\" || host === \"::1\" || host === \"host.docker.internal\";\n\t} catch {\n\t\treturn true;\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\tconst showManageAssistant = derived(() => isLocalAssistantUrl(active()?.url));\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> `);\n\t\tif (showManageAssistant()) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<a class=\"list-item link svelte-dlw00e\" href=\"/admin\">Manage this assistant…</a>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> <a class=\"list-item link svelte-dlw00e\" href=\"/admin/endpoints\">Manage assistant connections…</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/session-title.ts\nvar DEFAULT_TITLE_RE = /^New session - (\\d{4}-\\d{2}-\\d{2}T[0-9:.]+Z?)$/;\n/** Resolve a session's display title. */\nfunction resolveSessionTitle(title) {\n\tconst trimmed = (title ?? \"\").trim();\n\tif (!trimmed) return \"Untitled session\";\n\tconst match = DEFAULT_TITLE_RE.exec(trimmed);\n\tif (match) {\n\t\tconst ts = Date.parse(match[1]);\n\t\tif (!Number.isNaN(ts)) return formatDateTime(ts);\n\t}\n\treturn trimmed;\n}\n//#endregion\n//#region src/lib/components/chat/SessionTitle.svelte\nfunction SessionTitle($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tlet { title } = $$props;\n\t\tconst display = derived(() => resolveSessionTitle(title));\n\t\t$$renderer.push(`<!---->${escape_html(display())}`);\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(`<!--]--> `);\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\">`);\n\t\t\t\tSessionTitle($$renderer, { title: s.title });\n\t\t\t\t$$renderer.push(`<!---->`);\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 class=\"divider svelte-1o6rxhb\"></div> <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>`);\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() ? resolveSessionTitle(activeSummary().title) : \"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\tlet removeGlobalMicToggle = null;\n\t\tonDestroy(() => {\n\t\t\tif (typeof window !== \"undefined\") window.openpalm?.setTrayMicRecording?.(false);\n\t\t\tremoveGlobalMicToggle?.();\n\t\t\tremoveGlobalMicToggle = null;\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 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 onConversationSurface = derived(() => onChatSurface() || onAdvancedSurface());\n\t\tconst preferredChatHref = derived(() => {\n\t\t\tconst sessionId = page.url.searchParams.get(\"session\") ?? currentChatSessionId();\n\t\t\treturn advancedModeService.enabled ? buildAdvancedPath(sessionId) : buildChatPath(sessionId);\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\"${attr(\"href\", preferredChatHref())} 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: preferredChatHref(),\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 $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> `);\n\t\tThemeToggle($$renderer, {});\n\t\t$$renderer.push(`<!----> `);\n\t\tif (onConversationSurface()) {\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\tModeSwitch($$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, desktopNotifyEnabled as c, extractStepUpdate as d, extractToolUpdate as f, formatTime as h, Drawer as i, desktopReplyPreviewEnabled as l, IconButton as m, SessionList as n, buildAdvancedPath as o, advancedModeService as p, EndpointList as r, chat as s, Navbar as t, subscribeSessionEvents as u };\n"],"names":[],"mappings":"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"}
|