@openpalm/ui 0.11.0-rc.17 → 0.11.0-rc.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/.openpalm-ui-version +1 -1
- package/build/client/_app/immutable/assets/Navbar.Bnqciy-R.css +1 -0
- package/build/client/_app/immutable/assets/Navbar.Bnqciy-R.css.br +0 -0
- package/build/client/_app/immutable/assets/Navbar.Bnqciy-R.css.gz +0 -0
- package/build/client/_app/immutable/chunks/{0HMj31fq.js → 6MWqMcPj.js} +2 -2
- package/build/client/_app/immutable/chunks/6MWqMcPj.js.br +0 -0
- package/build/client/_app/immutable/chunks/6MWqMcPj.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BEG6kjxo.js +1 -0
- package/build/client/_app/immutable/chunks/BEG6kjxo.js.br +2 -0
- package/build/client/_app/immutable/chunks/BEG6kjxo.js.gz +0 -0
- package/build/client/_app/immutable/chunks/ClJ0e619.js +5 -0
- package/build/client/_app/immutable/chunks/ClJ0e619.js.br +0 -0
- package/build/client/_app/immutable/chunks/ClJ0e619.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{kNiXp35k.js → DQ-_WW-P.js} +1 -1
- package/build/client/_app/immutable/chunks/DQ-_WW-P.js.br +0 -0
- package/build/client/_app/immutable/chunks/DQ-_WW-P.js.gz +0 -0
- package/build/client/_app/immutable/entry/{app.Cv1PH2jt.js → app.ZFsJHpgm.js} +2 -2
- package/build/client/_app/immutable/entry/app.ZFsJHpgm.js.br +0 -0
- package/build/client/_app/immutable/entry/app.ZFsJHpgm.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.Bb2Dg17A.js +1 -0
- package/build/client/_app/immutable/entry/start.Bb2Dg17A.js.br +0 -0
- package/build/client/_app/immutable/entry/start.Bb2Dg17A.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{1.fppj_qm6.js → 1.p0a-6xRh.js} +1 -1
- package/build/client/_app/immutable/nodes/1.p0a-6xRh.js.br +1 -0
- package/build/client/_app/immutable/nodes/1.p0a-6xRh.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{4.vLih0VUL.js → 4.DlOTtTTT.js} +2 -2
- package/build/client/_app/immutable/nodes/4.DlOTtTTT.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.DlOTtTTT.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{5.BUCEUtUI.js → 5.BERyIpWQ.js} +1 -1
- package/build/client/_app/immutable/nodes/5.BERyIpWQ.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.BERyIpWQ.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{6.CMaZvA5U.js → 6.rQVZSkqN.js} +1 -1
- package/build/client/_app/immutable/nodes/6.rQVZSkqN.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.rQVZSkqN.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{7.D2EtnlP5.js → 7.C8WhBp0k.js} +2 -2
- package/build/client/_app/immutable/nodes/7.C8WhBp0k.js.br +0 -0
- package/build/client/_app/immutable/nodes/{7.D2EtnlP5.js.gz → 7.C8WhBp0k.js.gz} +0 -0
- package/build/client/_app/immutable/nodes/{8.XiMdTV0G.js → 8.DmEHzlZO.js} +1 -1
- package/build/client/_app/immutable/nodes/8.DmEHzlZO.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.DmEHzlZO.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-NRwWK1ef.js → 0-CTzT7i_m.js} +2 -2
- package/build/server/chunks/{0-NRwWK1ef.js.map → 0-CTzT7i_m.js.map} +1 -1
- package/build/server/chunks/1-BJ6QSHDy.js +9 -0
- package/build/server/chunks/{1-80ZhS44j.js.map → 1-BJ6QSHDy.js.map} +1 -1
- package/build/server/chunks/4-p48m7JXw.js +9 -0
- package/build/server/chunks/{4-ClensyA2.js.map → 4-p48m7JXw.js.map} +1 -1
- package/build/server/chunks/5-zn-Jbh7Z.js +9 -0
- package/build/server/chunks/{5-C6-Vzu10.js.map → 5-zn-Jbh7Z.js.map} +1 -1
- package/build/server/chunks/6-CJxJ9Yeh.js +9 -0
- package/build/server/chunks/{6-IwrFYOgB.js.map → 6-CJxJ9Yeh.js.map} +1 -1
- package/build/server/chunks/7-BnuUDTsp.js +9 -0
- package/build/server/chunks/{7-D3045x9x.js.map → 7-BnuUDTsp.js.map} +1 -1
- package/build/server/chunks/{8-BSDna0yi.js → 8-Cko994_N.js} +3 -3
- package/build/server/chunks/{8-BSDna0yi.js.map → 8-Cko994_N.js.map} +1 -1
- package/build/server/chunks/{Navbar-BLN7GYwV.js → Navbar-lB4kFS7g.js} +150 -77
- package/build/server/chunks/Navbar-lB4kFS7g.js.map +1 -0
- package/build/server/chunks/{_layout.svelte-DKVTcOyt.js → _layout.svelte-COQuY-BN.js} +2 -2
- package/build/server/chunks/{_layout.svelte-DKVTcOyt.js.map → _layout.svelte-COQuY-BN.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-GJbmjyG0.js → _page.svelte-BuUe4hhV.js} +6 -6
- package/build/server/chunks/{_page.svelte-GJbmjyG0.js.map → _page.svelte-BuUe4hhV.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-B2jHZbcQ.js → _page.svelte-Bv7qRPVj.js} +3 -3
- package/build/server/chunks/{_page.svelte-B2jHZbcQ.js.map → _page.svelte-Bv7qRPVj.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-BuqBOi0v.js → _page.svelte-CVpGxOAl.js} +6 -6
- package/build/server/chunks/{_page.svelte-BuqBOi0v.js.map → _page.svelte-CVpGxOAl.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-rVM8xRgy.js → _page.svelte-DWCKWYAF.js} +6 -6
- package/build/server/chunks/{_page.svelte-rVM8xRgy.js.map → _page.svelte-DWCKWYAF.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-BfXmAJOJ.js → _page.svelte-tPiVZDZQ.js} +7 -7
- package/build/server/chunks/{_page.svelte-BfXmAJOJ.js.map → _page.svelte-tPiVZDZQ.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Bf10Ccu9.js → _server.ts-8iOMau6K.js} +4 -4
- package/build/server/chunks/{_server.ts-Bf10Ccu9.js.map → _server.ts-8iOMau6K.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Bqo6JeVt.js → _server.ts-B2RCiGeA.js} +4 -4
- package/build/server/chunks/{_server.ts-Bqo6JeVt.js.map → _server.ts-B2RCiGeA.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BTZMTC6b.js → _server.ts-B8sdNvW5.js} +4 -4
- package/build/server/chunks/{_server.ts-BTZMTC6b.js.map → _server.ts-B8sdNvW5.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Bk3TlvyQ.js → _server.ts-BAsbrtjL.js} +2 -2
- package/build/server/chunks/{_server.ts-Bk3TlvyQ.js.map → _server.ts-BAsbrtjL.js.map} +1 -1
- package/build/server/chunks/{_server.ts-C_nVzkA0.js → _server.ts-BCcQdRne.js} +4 -4
- package/build/server/chunks/{_server.ts-C_nVzkA0.js.map → _server.ts-BCcQdRne.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B2DsaB4H.js → _server.ts-BD0Jit8e.js} +4 -4
- package/build/server/chunks/{_server.ts-B2DsaB4H.js.map → _server.ts-BD0Jit8e.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BmGE6Th4.js → _server.ts-BD6Urice.js} +4 -4
- package/build/server/chunks/{_server.ts-BmGE6Th4.js.map → _server.ts-BD6Urice.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CEYFX85x.js → _server.ts-BG3UvxEU.js} +2 -2
- package/build/server/chunks/{_server.ts-CEYFX85x.js.map → _server.ts-BG3UvxEU.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B45anFXC.js → _server.ts-BQZSWSLy.js} +5 -5
- package/build/server/chunks/{_server.ts-B45anFXC.js.map → _server.ts-BQZSWSLy.js.map} +1 -1
- package/build/server/chunks/{_server.ts-G0biT_kc.js → _server.ts-BTGThm9P.js} +4 -4
- package/build/server/chunks/{_server.ts-G0biT_kc.js.map → _server.ts-BTGThm9P.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CfYUv1UB.js → _server.ts-BVCET3CA.js} +4 -4
- package/build/server/chunks/{_server.ts-CfYUv1UB.js.map → _server.ts-BVCET3CA.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CLPWoDiB.js → _server.ts-BVYIqRK2.js} +4 -4
- package/build/server/chunks/{_server.ts-CLPWoDiB.js.map → _server.ts-BVYIqRK2.js.map} +1 -1
- package/build/server/chunks/{_server.ts-D1MKVR5k.js → _server.ts-BYTWLTxk.js} +4 -4
- package/build/server/chunks/{_server.ts-D1MKVR5k.js.map → _server.ts-BYTWLTxk.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BbBS5maD.js → _server.ts-BZ8wMJ7l.js} +4 -4
- package/build/server/chunks/{_server.ts-BbBS5maD.js.map → _server.ts-BZ8wMJ7l.js.map} +1 -1
- package/build/server/chunks/{_server.ts-AynKwaYe.js → _server.ts-Ban3zjRc.js} +4 -4
- package/build/server/chunks/{_server.ts-AynKwaYe.js.map → _server.ts-Ban3zjRc.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CDHbfAt-.js → _server.ts-BaxB3oQq.js} +4 -4
- package/build/server/chunks/{_server.ts-CDHbfAt-.js.map → _server.ts-BaxB3oQq.js.map} +1 -1
- package/build/server/chunks/{_server.ts-C41TntzK.js → _server.ts-Bj_nJzpo.js} +4 -4
- package/build/server/chunks/{_server.ts-C41TntzK.js.map → _server.ts-Bj_nJzpo.js.map} +1 -1
- package/build/server/chunks/{_server.ts-D42V6R2z.js → _server.ts-BkGQezlX.js} +6 -6
- package/build/server/chunks/{_server.ts-D42V6R2z.js.map → _server.ts-BkGQezlX.js.map} +1 -1
- package/build/server/chunks/{_server.ts-vCl87gC9.js → _server.ts-BlMOxGWA.js} +4 -4
- package/build/server/chunks/{_server.ts-vCl87gC9.js.map → _server.ts-BlMOxGWA.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DmboZKkU.js → _server.ts-BrExNZ-2.js} +4 -4
- package/build/server/chunks/{_server.ts-DmboZKkU.js.map → _server.ts-BrExNZ-2.js.map} +1 -1
- package/build/server/chunks/{_server.ts-ZpfMgKGX.js → _server.ts-C1CpbG3_.js} +4 -4
- package/build/server/chunks/{_server.ts-ZpfMgKGX.js.map → _server.ts-C1CpbG3_.js.map} +1 -1
- package/build/server/chunks/{_server.ts-85jwCe_m.js → _server.ts-C44tS0KC.js} +4 -4
- package/build/server/chunks/{_server.ts-85jwCe_m.js.map → _server.ts-C44tS0KC.js.map} +1 -1
- package/build/server/chunks/{_server.ts-A5d2KMGU.js → _server.ts-C5uu6b2a.js} +4 -4
- package/build/server/chunks/{_server.ts-A5d2KMGU.js.map → _server.ts-C5uu6b2a.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BCZRyI5-.js → _server.ts-C5wVttUW.js} +3 -3
- package/build/server/chunks/{_server.ts-BCZRyI5-.js.map → _server.ts-C5wVttUW.js.map} +1 -1
- package/build/server/chunks/{_server.ts-7JAGv6tT.js → _server.ts-C7D2sok_.js} +4 -4
- package/build/server/chunks/{_server.ts-7JAGv6tT.js.map → _server.ts-C7D2sok_.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BTtzSmnu.js → _server.ts-C8YMhHYj.js} +4 -4
- package/build/server/chunks/{_server.ts-BTtzSmnu.js.map → _server.ts-C8YMhHYj.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BtCUY1RE.js → _server.ts-CC-mpNNj.js} +4 -4
- package/build/server/chunks/{_server.ts-BtCUY1RE.js.map → _server.ts-CC-mpNNj.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BQh1z16f.js → _server.ts-CG1nihTT.js} +4 -4
- package/build/server/chunks/{_server.ts-BQh1z16f.js.map → _server.ts-CG1nihTT.js.map} +1 -1
- package/build/server/chunks/{_server.ts-4p5IEeUj.js → _server.ts-CH8VLn03.js} +4 -4
- package/build/server/chunks/{_server.ts-4p5IEeUj.js.map → _server.ts-CH8VLn03.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DlEzh3LR.js → _server.ts-COORKWSc.js} +4 -4
- package/build/server/chunks/{_server.ts-DlEzh3LR.js.map → _server.ts-COORKWSc.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DauUo17d.js → _server.ts-CPzbkayh.js} +4 -4
- package/build/server/chunks/{_server.ts-DauUo17d.js.map → _server.ts-CPzbkayh.js.map} +1 -1
- package/build/server/chunks/{_server.ts-XpcgGFlF.js → _server.ts-CQPWD_WN.js} +4 -4
- package/build/server/chunks/{_server.ts-XpcgGFlF.js.map → _server.ts-CQPWD_WN.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BSJ5Sw38.js → _server.ts-CSs35mBJ.js} +4 -4
- package/build/server/chunks/{_server.ts-BSJ5Sw38.js.map → _server.ts-CSs35mBJ.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BrVWvQI0.js → _server.ts-CsUi6NWt.js} +4 -4
- package/build/server/chunks/{_server.ts-BrVWvQI0.js.map → _server.ts-CsUi6NWt.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B5r89Pjn.js → _server.ts-Cw2YXWgK.js} +5 -5
- package/build/server/chunks/{_server.ts-B5r89Pjn.js.map → _server.ts-Cw2YXWgK.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Cw-YYgKK.js → _server.ts-D0FZ3wh5.js} +4 -4
- package/build/server/chunks/{_server.ts-Cw-YYgKK.js.map → _server.ts-D0FZ3wh5.js.map} +1 -1
- package/build/server/chunks/{_server.ts-WrJMMRfq.js → _server.ts-D4zkfcxH.js} +4 -4
- package/build/server/chunks/{_server.ts-WrJMMRfq.js.map → _server.ts-D4zkfcxH.js.map} +1 -1
- package/build/server/chunks/{_server.ts-K2JzWdR2.js → _server.ts-D5Q5mczv.js} +4 -4
- package/build/server/chunks/{_server.ts-K2JzWdR2.js.map → _server.ts-D5Q5mczv.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BlHQLcgV.js → _server.ts-D9HJ0cWI.js} +4 -4
- package/build/server/chunks/{_server.ts-BlHQLcgV.js.map → _server.ts-D9HJ0cWI.js.map} +1 -1
- package/build/server/chunks/{_server.ts-eDJO6l_F.js → _server.ts-DAb50kOu.js} +5 -5
- package/build/server/chunks/{_server.ts-eDJO6l_F.js.map → _server.ts-DAb50kOu.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BK2GpSWt.js → _server.ts-DFL8Mq_R.js} +4 -4
- package/build/server/chunks/{_server.ts-BK2GpSWt.js.map → _server.ts-DFL8Mq_R.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Rrlt-U6N.js → _server.ts-DLHN_6MC.js} +4 -4
- package/build/server/chunks/{_server.ts-Rrlt-U6N.js.map → _server.ts-DLHN_6MC.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CkAJ9SzD.js → _server.ts-DQE5fd19.js} +4 -4
- package/build/server/chunks/{_server.ts-CkAJ9SzD.js.map → _server.ts-DQE5fd19.js.map} +1 -1
- package/build/server/chunks/{_server.ts-ZTCkyUu3.js → _server.ts-DQcL5wr_.js} +4 -4
- package/build/server/chunks/{_server.ts-ZTCkyUu3.js.map → _server.ts-DQcL5wr_.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BgL8150-.js → _server.ts-DRxZJQd6.js} +6 -6
- package/build/server/chunks/{_server.ts-BgL8150-.js.map → _server.ts-DRxZJQd6.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DWOgLezk.js → _server.ts-DXOh4EZe.js} +5 -5
- package/build/server/chunks/{_server.ts-DWOgLezk.js.map → _server.ts-DXOh4EZe.js.map} +1 -1
- package/build/server/chunks/{_server.ts-h6-PmyqV.js → _server.ts-DbMkM72G.js} +4 -4
- package/build/server/chunks/{_server.ts-h6-PmyqV.js.map → _server.ts-DbMkM72G.js.map} +1 -1
- package/build/server/chunks/{_server.ts-mXCNoT5C.js → _server.ts-DcQTtmS3.js} +4 -4
- package/build/server/chunks/{_server.ts-mXCNoT5C.js.map → _server.ts-DcQTtmS3.js.map} +1 -1
- package/build/server/chunks/{_server.ts-C5zzcLqZ.js → _server.ts-DgIgXukK.js} +5 -5
- package/build/server/chunks/{_server.ts-C5zzcLqZ.js.map → _server.ts-DgIgXukK.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CCGjkpr6.js → _server.ts-DjlikYHH.js} +5 -5
- package/build/server/chunks/{_server.ts-CCGjkpr6.js.map → _server.ts-DjlikYHH.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DINAIoen.js → _server.ts-DjnK1iz8.js} +4 -4
- package/build/server/chunks/{_server.ts-DINAIoen.js.map → _server.ts-DjnK1iz8.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DdvhLln1.js → _server.ts-DrM8VAOS.js} +4 -4
- package/build/server/chunks/{_server.ts-DdvhLln1.js.map → _server.ts-DrM8VAOS.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DgeCAd3V.js → _server.ts-DtC0SjIr.js} +4 -4
- package/build/server/chunks/{_server.ts-DgeCAd3V.js.map → _server.ts-DtC0SjIr.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DLls-Pxd.js → _server.ts-DuBJyo4e.js} +4 -4
- package/build/server/chunks/{_server.ts-DLls-Pxd.js.map → _server.ts-DuBJyo4e.js.map} +1 -1
- package/build/server/chunks/{_server.ts-owsN4Bs7.js → _server.ts-EBySP1Ew.js} +2 -2
- package/build/server/chunks/{_server.ts-owsN4Bs7.js.map → _server.ts-EBySP1Ew.js.map} +1 -1
- package/build/server/chunks/{_server.ts-ChTN5RKe.js → _server.ts-IkgMCbAi.js} +6 -6
- package/build/server/chunks/{_server.ts-ChTN5RKe.js.map → _server.ts-IkgMCbAi.js.map} +1 -1
- package/build/server/chunks/{_server.ts-sw1WMMi4.js → _server.ts-Me1rXUGo.js} +4 -4
- package/build/server/chunks/{_server.ts-sw1WMMi4.js.map → _server.ts-Me1rXUGo.js.map} +1 -1
- package/build/server/chunks/{_server.ts-D2dKpZ_G.js → _server.ts-Mycnkmlz.js} +5 -5
- package/build/server/chunks/{_server.ts-D2dKpZ_G.js.map → _server.ts-Mycnkmlz.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CckEaeUq.js → _server.ts-N6WIc0vw.js} +4 -4
- package/build/server/chunks/{_server.ts-CckEaeUq.js.map → _server.ts-N6WIc0vw.js.map} +1 -1
- package/build/server/chunks/{_server.ts-D6hQ2QX3.js → _server.ts-XOLGzzNk.js} +4 -4
- package/build/server/chunks/{_server.ts-D6hQ2QX3.js.map → _server.ts-XOLGzzNk.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CUbXB2FY.js → _server.ts-ZE9PYnxj.js} +4 -4
- package/build/server/chunks/{_server.ts-CUbXB2FY.js.map → _server.ts-ZE9PYnxj.js.map} +1 -1
- package/build/server/chunks/{_server.ts-ddgBytLW.js → _server.ts-__xVWUvt.js} +4 -4
- package/build/server/chunks/{_server.ts-ddgBytLW.js.map → _server.ts-__xVWUvt.js.map} +1 -1
- package/build/server/chunks/{_server.ts-C7vZ6Msd.js → _server.ts-_o3Yebl6.js} +4 -4
- package/build/server/chunks/{_server.ts-C7vZ6Msd.js.map → _server.ts-_o3Yebl6.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DWXyKUhK.js → _server.ts-ccd1enMp.js} +4 -4
- package/build/server/chunks/{_server.ts-DWXyKUhK.js.map → _server.ts-ccd1enMp.js.map} +1 -1
- package/build/server/chunks/{_server.ts-xhwiTnat.js → _server.ts-iAOP7FW1.js} +2 -2
- package/build/server/chunks/{_server.ts-xhwiTnat.js.map → _server.ts-iAOP7FW1.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CEJKMtQL.js → _server.ts-l3A6IOvJ.js} +4 -4
- package/build/server/chunks/{_server.ts-CEJKMtQL.js.map → _server.ts-l3A6IOvJ.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B-2t5UWG.js → _server.ts-pLeJl6U2.js} +4 -4
- package/build/server/chunks/{_server.ts-B-2t5UWG.js.map → _server.ts-pLeJl6U2.js.map} +1 -1
- package/build/server/chunks/{_server.ts-eZueP9-i.js → _server.ts-sEc4S_v5.js} +6 -6
- package/build/server/chunks/{_server.ts-eZueP9-i.js.map → _server.ts-sEc4S_v5.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CrzpLP9a.js → _server.ts-vp9n_72N.js} +4 -4
- package/build/server/chunks/{_server.ts-CrzpLP9a.js.map → _server.ts-vp9n_72N.js.map} +1 -1
- package/build/server/chunks/{_server.ts-VDp6dz3T.js → _server.ts-ypkZ9bJf.js} +2 -2
- package/build/server/chunks/{_server.ts-VDp6dz3T.js.map → _server.ts-ypkZ9bJf.js.map} +1 -1
- package/build/server/chunks/{addon-helpers-DlSLVoRs.js → addon-helpers-B0E6L7iO.js} +2 -2
- package/build/server/chunks/{addon-helpers-DlSLVoRs.js.map → addon-helpers-B0E6L7iO.js.map} +1 -1
- package/build/server/chunks/{client-juBO8qWw.js → client-BoEGJzYk.js} +2 -2
- package/build/server/chunks/{client-juBO8qWw.js.map → client-BoEGJzYk.js.map} +1 -1
- package/build/server/chunks/{config-O4KOX28q.js → config-2pnPob92.js} +2 -2
- package/build/server/chunks/{config-O4KOX28q.js.map → config-2pnPob92.js.map} +1 -1
- package/build/server/chunks/{docker-CFYseKcW.js → docker-D17EjIlp.js} +2 -2
- package/build/server/chunks/{docker-CFYseKcW.js.map → docker-D17EjIlp.js.map} +1 -1
- package/build/server/chunks/{endpoints-DhI5iQtt.js → endpoints-DoIeO5WL.js} +2 -2
- package/build/server/chunks/{endpoints-DhI5iQtt.js.map → endpoints-DoIeO5WL.js.map} +1 -1
- package/build/server/chunks/{environment-mv8Ia49N.js → environment-B033HICs.js} +2 -2
- package/build/server/chunks/{environment-mv8Ia49N.js.map → environment-B033HICs.js.map} +1 -1
- package/build/server/chunks/{error.svelte-C7nVyEcK.js → error.svelte-BZj_44PV.js} +4 -4
- package/build/server/chunks/{error.svelte-C7nVyEcK.js.map → error.svelte-BZj_44PV.js.map} +1 -1
- package/build/server/chunks/{helpers-DcWUDVwP.js → helpers-CeQwqpAT.js} +3 -3
- package/build/server/chunks/{helpers-DcWUDVwP.js.map → helpers-CeQwqpAT.js.map} +1 -1
- package/build/server/chunks/{hooks.server-mU0kbvq7.js → hooks.server-2io-2N7D.js} +4 -4
- package/build/server/chunks/{hooks.server-mU0kbvq7.js.map → hooks.server-2io-2N7D.js.map} +1 -1
- package/build/server/chunks/{http-CM7bCNch.js → http-CHmjTVGA.js} +2 -2
- package/build/server/chunks/{http-CM7bCNch.js.map → http-CHmjTVGA.js.map} +1 -1
- package/build/server/chunks/{internal-DB0NJlYY.js → internal-XQrKrAX-.js} +3 -3
- package/build/server/chunks/{internal-DB0NJlYY.js.map → internal-XQrKrAX-.js.map} +1 -1
- package/build/server/chunks/{setup-deploy-TOJkt66i.js → setup-deploy-53S0fflh.js} +2 -2
- package/build/server/chunks/{setup-deploy-TOJkt66i.js.map → setup-deploy-53S0fflh.js.map} +1 -1
- package/build/server/chunks/{src-B_h3grR0.js → src-D9YnoOnU.js} +55 -1
- package/build/server/chunks/{src-B_h3grR0.js.map → src-D9YnoOnU.js.map} +1 -1
- package/build/server/chunks/{state-ChDdlVO0.js → state-C0rbnIhQ.js} +2 -2
- package/build/server/chunks/{state-ChDdlVO0.js.map → state-C0rbnIhQ.js.map} +1 -1
- package/build/server/chunks/{theme-state.svelte-mcvSSIO_.js → theme-state.svelte-CE13yM0n.js} +2 -3
- package/build/server/chunks/theme-state.svelte-CE13yM0n.js.map +1 -0
- package/build/server/index.js +2 -2
- package/build/server/manifest.js +78 -78
- package/build/server/manifest.js.map +1 -1
- package/package.json +2 -2
- package/build/client/_app/immutable/assets/Navbar.D_OX7fwq.css +0 -1
- package/build/client/_app/immutable/assets/Navbar.D_OX7fwq.css.br +0 -0
- package/build/client/_app/immutable/assets/Navbar.D_OX7fwq.css.gz +0 -0
- package/build/client/_app/immutable/chunks/0HMj31fq.js.br +0 -0
- package/build/client/_app/immutable/chunks/0HMj31fq.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CGjcdnRi.js +0 -5
- package/build/client/_app/immutable/chunks/CGjcdnRi.js.br +0 -0
- package/build/client/_app/immutable/chunks/CGjcdnRi.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Hnis2w7-.js +0 -1
- package/build/client/_app/immutable/chunks/Hnis2w7-.js.br +0 -2
- package/build/client/_app/immutable/chunks/Hnis2w7-.js.gz +0 -0
- package/build/client/_app/immutable/chunks/kNiXp35k.js.br +0 -0
- package/build/client/_app/immutable/chunks/kNiXp35k.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.Cv1PH2jt.js.br +0 -0
- package/build/client/_app/immutable/entry/app.Cv1PH2jt.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.CjSNMVEx.js +0 -1
- package/build/client/_app/immutable/entry/start.CjSNMVEx.js.br +0 -0
- package/build/client/_app/immutable/entry/start.CjSNMVEx.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.fppj_qm6.js.br +0 -1
- package/build/client/_app/immutable/nodes/1.fppj_qm6.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.vLih0VUL.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.vLih0VUL.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.BUCEUtUI.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.BUCEUtUI.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.CMaZvA5U.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.CMaZvA5U.js.gz +0 -0
- package/build/client/_app/immutable/nodes/7.D2EtnlP5.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.XiMdTV0G.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.XiMdTV0G.js.gz +0 -0
- package/build/server/chunks/1-80ZhS44j.js +0 -9
- package/build/server/chunks/4-ClensyA2.js +0 -9
- package/build/server/chunks/5-C6-Vzu10.js +0 -9
- package/build/server/chunks/6-IwrFYOgB.js +0 -9
- package/build/server/chunks/7-D3045x9x.js +0 -9
- package/build/server/chunks/Navbar-BLN7GYwV.js.map +0 -1
- package/build/server/chunks/theme-state.svelte-mcvSSIO_.js.map +0 -1
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { o as derived, r as escape_html, p as ensure_array_like, e as attr_class, d as attr, a8 as stringify, f as attr_style } from './dev-B6xUe35c.js';
|
|
2
|
-
import { o as onDestroy } from './client-
|
|
3
|
-
import { g as fetchEndpoints, m as setActiveEndpoint, l as listSessions, k as getSessionMessages, c as createSession, s as sendChatMessage, v as voiceState, p as speakText, q as stopSpeaking, d as destroyVoice, t as themeService } from './theme-state.svelte-
|
|
4
|
-
import { p as page } from './state-
|
|
2
|
+
import { o as onDestroy, g as goto } from './client-BoEGJzYk.js';
|
|
3
|
+
import { g as fetchEndpoints, m as setActiveEndpoint, l as listSessions, k as getSessionMessages, c as createSession, s as sendChatMessage, v as voiceState, p as speakText, q as stopSpeaking, d as destroyVoice, t as themeService } from './theme-state.svelte-CE13yM0n.js';
|
|
4
|
+
import { p as page } from './state-C0rbnIhQ.js';
|
|
5
5
|
import { S as Spinner } from './Spinner-Bk6e83RX.js';
|
|
6
6
|
|
|
7
7
|
//#region src/lib/format-date.ts
|
|
@@ -112,34 +112,108 @@ function ToggleButton($$renderer, $$props) {
|
|
|
112
112
|
});
|
|
113
113
|
}
|
|
114
114
|
//#endregion
|
|
115
|
-
//#region src/lib/components/
|
|
116
|
-
function
|
|
117
|
-
$$renderer.push(`<svg aria-hidden="true" width="
|
|
118
|
-
}
|
|
119
|
-
function sun($$renderer) {
|
|
120
|
-
$$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>`);
|
|
115
|
+
//#region src/lib/components/chrome/ModeSwitch.svelte
|
|
116
|
+
function advancedIcon($$renderer) {
|
|
117
|
+
$$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>`);
|
|
121
118
|
}
|
|
122
|
-
function
|
|
119
|
+
function ModeSwitch($$renderer, $$props) {
|
|
123
120
|
$$renderer.component(($$renderer) => {
|
|
124
|
-
const
|
|
125
|
-
const
|
|
121
|
+
const pathname = derived(() => page.url?.pathname ?? "");
|
|
122
|
+
const onAdvanced = derived(() => pathname() === "/advanced" || pathname().startsWith("/advanced/"));
|
|
123
|
+
function toggle() {
|
|
124
|
+
goto(onAdvanced() ? "/chat" : "/advanced");
|
|
125
|
+
}
|
|
126
126
|
ToggleButton($$renderer, {
|
|
127
|
-
pressed:
|
|
128
|
-
onToggle:
|
|
129
|
-
ariaLabel:
|
|
130
|
-
title:
|
|
131
|
-
icon:
|
|
132
|
-
selectedIcon: sun
|
|
127
|
+
pressed: onAdvanced(),
|
|
128
|
+
onToggle: toggle,
|
|
129
|
+
ariaLabel: "Advanced mode",
|
|
130
|
+
title: "Advanced mode (embedded OpenCode)",
|
|
131
|
+
icon: advancedIcon
|
|
133
132
|
});
|
|
134
133
|
});
|
|
135
134
|
}
|
|
136
135
|
//#endregion
|
|
137
|
-
//#region src/lib/components/
|
|
138
|
-
function
|
|
136
|
+
//#region src/lib/components/common/Drawer.svelte
|
|
137
|
+
function Drawer($$renderer, $$props) {
|
|
139
138
|
$$renderer.component(($$renderer) => {
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
139
|
+
/** Optional content rendered at the start of the header (e.g. a back button). */
|
|
140
|
+
/** Drawer width (CSS length). */
|
|
141
|
+
let { open, title, onClose, children, footer, headerStart, width = "32rem" } = $$props;
|
|
142
|
+
if (open) {
|
|
143
|
+
$$renderer.push("<!--[0-->");
|
|
144
|
+
$$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">`);
|
|
145
|
+
if (headerStart) {
|
|
146
|
+
$$renderer.push("<!--[0-->");
|
|
147
|
+
headerStart($$renderer);
|
|
148
|
+
$$renderer.push(`<!---->`);
|
|
149
|
+
} else $$renderer.push("<!--[-1-->");
|
|
150
|
+
$$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">`);
|
|
151
|
+
children($$renderer);
|
|
152
|
+
$$renderer.push(`<!----></div> `);
|
|
153
|
+
if (footer) {
|
|
154
|
+
$$renderer.push("<!--[0-->");
|
|
155
|
+
$$renderer.push(`<footer class="drawer-footer svelte-1u2o1qj">`);
|
|
156
|
+
footer($$renderer);
|
|
157
|
+
$$renderer.push(`<!----></footer>`);
|
|
158
|
+
} else $$renderer.push("<!--[-1-->");
|
|
159
|
+
$$renderer.push(`<!--]--></div>`);
|
|
160
|
+
} else $$renderer.push("<!--[-1-->");
|
|
161
|
+
$$renderer.push(`<!--]-->`);
|
|
162
|
+
});
|
|
163
|
+
}
|
|
164
|
+
//#endregion
|
|
165
|
+
//#region src/lib/components/chrome/SettingsDrawer.svelte
|
|
166
|
+
function gearIcon($$renderer) {
|
|
167
|
+
$$renderer.push(`<svg aria-hidden="true" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="3"></circle><path d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 1 1-2.83 2.83l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-4 0v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 1 1-2.83-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1 0-4h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 1 1 2.83-2.83l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 4 0v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 1 1 2.83 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 0 4h-.09a1.65 1.65 0 0 0-1.51 1z"></path></svg>`);
|
|
168
|
+
}
|
|
169
|
+
function SettingsDrawer($$renderer, $$props) {
|
|
170
|
+
$$renderer.component(($$renderer) => {
|
|
171
|
+
let { showManageAssistant = true } = $$props;
|
|
172
|
+
let open = false;
|
|
173
|
+
function setTheme(event) {
|
|
174
|
+
const next = event.currentTarget.value;
|
|
175
|
+
if (next === "light" || next === "dark" || next === "system") themeService.setPreference(next);
|
|
176
|
+
}
|
|
177
|
+
IconButton($$renderer, {
|
|
178
|
+
icon: gearIcon,
|
|
179
|
+
ariaLabel: "Settings",
|
|
180
|
+
title: "Settings",
|
|
181
|
+
selected: open,
|
|
182
|
+
ariaPressed: open,
|
|
183
|
+
onclick: () => open = true
|
|
184
|
+
});
|
|
185
|
+
$$renderer.push(`<!----> `);
|
|
186
|
+
Drawer($$renderer, {
|
|
187
|
+
open,
|
|
188
|
+
title: "Settings",
|
|
189
|
+
onClose: () => open = false,
|
|
190
|
+
width: "24rem",
|
|
191
|
+
children: ($$renderer) => {
|
|
192
|
+
$$renderer.push(`<div class="settings-drawer svelte-4kbm5j"><label class="field svelte-4kbm5j" for="theme-preference"><span class="field-label svelte-4kbm5j">Theme</span> `);
|
|
193
|
+
$$renderer.select({
|
|
194
|
+
id: "theme-preference",
|
|
195
|
+
class: "field-select",
|
|
196
|
+
value: themeService.preference,
|
|
197
|
+
onchange: setTheme
|
|
198
|
+
}, ($$renderer) => {
|
|
199
|
+
$$renderer.option({ value: "system" }, ($$renderer) => {
|
|
200
|
+
$$renderer.push(`System`);
|
|
201
|
+
});
|
|
202
|
+
$$renderer.option({ value: "light" }, ($$renderer) => {
|
|
203
|
+
$$renderer.push(`Light`);
|
|
204
|
+
});
|
|
205
|
+
$$renderer.option({ value: "dark" }, ($$renderer) => {
|
|
206
|
+
$$renderer.push(`Dark`);
|
|
207
|
+
});
|
|
208
|
+
}, "svelte-4kbm5j");
|
|
209
|
+
$$renderer.push(`</label> <nav class="settings-links svelte-4kbm5j" aria-label="Settings links">`);
|
|
210
|
+
if (showManageAssistant) {
|
|
211
|
+
$$renderer.push("<!--[0-->");
|
|
212
|
+
$$renderer.push(`<a class="settings-link svelte-4kbm5j" href="/admin">Manage this assistant...</a>`);
|
|
213
|
+
} else $$renderer.push("<!--[-1-->");
|
|
214
|
+
$$renderer.push(`<!--]--> <a class="settings-link svelte-4kbm5j" href="/admin/endpoints">Manage assistant connections...</a></nav></div>`);
|
|
215
|
+
}});
|
|
216
|
+
$$renderer.push(`<!---->`);
|
|
143
217
|
});
|
|
144
218
|
}
|
|
145
219
|
//#endregion
|
|
@@ -647,33 +721,15 @@ var EndpointsService = class {
|
|
|
647
721
|
};
|
|
648
722
|
var endpointsService = new EndpointsService();
|
|
649
723
|
//#endregion
|
|
650
|
-
//#region src/lib/
|
|
651
|
-
function
|
|
652
|
-
|
|
653
|
-
|
|
654
|
-
|
|
655
|
-
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
659
|
-
if (headerStart) {
|
|
660
|
-
$$renderer.push("<!--[0-->");
|
|
661
|
-
headerStart($$renderer);
|
|
662
|
-
$$renderer.push(`<!---->`);
|
|
663
|
-
} else $$renderer.push("<!--[-1-->");
|
|
664
|
-
$$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">`);
|
|
665
|
-
children($$renderer);
|
|
666
|
-
$$renderer.push(`<!----></div> `);
|
|
667
|
-
if (footer) {
|
|
668
|
-
$$renderer.push("<!--[0-->");
|
|
669
|
-
$$renderer.push(`<footer class="drawer-footer svelte-1u2o1qj">`);
|
|
670
|
-
footer($$renderer);
|
|
671
|
-
$$renderer.push(`<!----></footer>`);
|
|
672
|
-
} else $$renderer.push("<!--[-1-->");
|
|
673
|
-
$$renderer.push(`<!--]--></div>`);
|
|
674
|
-
} else $$renderer.push("<!--[-1-->");
|
|
675
|
-
$$renderer.push(`<!--]-->`);
|
|
676
|
-
});
|
|
724
|
+
//#region src/lib/assistant-endpoint.ts
|
|
725
|
+
function isLocalAssistantUrl(url) {
|
|
726
|
+
if (!url) return true;
|
|
727
|
+
try {
|
|
728
|
+
const host = new URL(url).hostname;
|
|
729
|
+
return host === "localhost" || host === "127.0.0.1" || host === "::1" || host === "host.docker.internal";
|
|
730
|
+
} catch {
|
|
731
|
+
return true;
|
|
732
|
+
}
|
|
677
733
|
}
|
|
678
734
|
//#endregion
|
|
679
735
|
//#region src/lib/components/chat/EndpointList.svelte
|
|
@@ -683,6 +739,7 @@ function EndpointList($$renderer, $$props) {
|
|
|
683
739
|
let { onChosen } = $$props;
|
|
684
740
|
const active = derived(() => endpointsService.active);
|
|
685
741
|
const endpoints = derived(() => endpointsService.endpoints);
|
|
742
|
+
const showManageAssistant = derived(() => isLocalAssistantUrl(active()?.url));
|
|
686
743
|
let switching = false;
|
|
687
744
|
$$renderer.push(`<div class="endpoint-list svelte-dlw00e">`);
|
|
688
745
|
if (endpointsService.error) {
|
|
@@ -700,7 +757,12 @@ function EndpointList($$renderer, $$props) {
|
|
|
700
757
|
} else $$renderer.push("<!--[-1-->");
|
|
701
758
|
$$renderer.push(`<!--]--></span> <span class="item-url svelte-dlw00e">${escape_html(ep.url)}</span></span></button>`);
|
|
702
759
|
}
|
|
703
|
-
$$renderer.push(`<!--]--></div> <div class="divider svelte-dlw00e"></div>
|
|
760
|
+
$$renderer.push(`<!--]--></div> <div class="divider svelte-dlw00e"></div> `);
|
|
761
|
+
if (showManageAssistant()) {
|
|
762
|
+
$$renderer.push("<!--[0-->");
|
|
763
|
+
$$renderer.push(`<a class="list-item link svelte-dlw00e" href="/admin">Manage this assistant…</a>`);
|
|
764
|
+
} else $$renderer.push("<!--[-1-->");
|
|
765
|
+
$$renderer.push(`<!--]--> <a class="list-item link svelte-dlw00e" href="/admin/endpoints">Manage assistant connections…</a></div>`);
|
|
704
766
|
});
|
|
705
767
|
}
|
|
706
768
|
//#endregion
|
|
@@ -722,6 +784,29 @@ function EndpointSwitcher($$renderer, $$props) {
|
|
|
722
784
|
});
|
|
723
785
|
}
|
|
724
786
|
//#endregion
|
|
787
|
+
//#region src/lib/session-title.ts
|
|
788
|
+
var DEFAULT_TITLE_RE = /^New session - (\d{4}-\d{2}-\d{2}T[0-9:.]+Z?)$/;
|
|
789
|
+
/** Resolve a session's display title. */
|
|
790
|
+
function resolveSessionTitle(title) {
|
|
791
|
+
const trimmed = (title ?? "").trim();
|
|
792
|
+
if (!trimmed) return "Untitled session";
|
|
793
|
+
const match = DEFAULT_TITLE_RE.exec(trimmed);
|
|
794
|
+
if (match) {
|
|
795
|
+
const ts = Date.parse(match[1]);
|
|
796
|
+
if (!Number.isNaN(ts)) return formatDateTime(ts);
|
|
797
|
+
}
|
|
798
|
+
return trimmed;
|
|
799
|
+
}
|
|
800
|
+
//#endregion
|
|
801
|
+
//#region src/lib/components/chat/SessionTitle.svelte
|
|
802
|
+
function SessionTitle($$renderer, $$props) {
|
|
803
|
+
$$renderer.component(($$renderer) => {
|
|
804
|
+
let { title } = $$props;
|
|
805
|
+
const display = derived(() => resolveSessionTitle(title));
|
|
806
|
+
$$renderer.push(`<!---->${escape_html(display())}`);
|
|
807
|
+
});
|
|
808
|
+
}
|
|
809
|
+
//#endregion
|
|
725
810
|
//#region src/lib/components/chat/SessionList.svelte
|
|
726
811
|
function SessionList($$renderer, $$props) {
|
|
727
812
|
$$renderer.component(($$renderer) => {
|
|
@@ -741,7 +826,7 @@ function SessionList($$renderer, $$props) {
|
|
|
741
826
|
$$renderer.push("<!--[0-->");
|
|
742
827
|
$$renderer.push(`<div class="notice svelte-1o6rxhb">Wait for the current reply to finish before switching.</div>`);
|
|
743
828
|
} else $$renderer.push("<!--[-1-->");
|
|
744
|
-
$$renderer.push(`<!--]-->
|
|
829
|
+
$$renderer.push(`<!--]--> `);
|
|
745
830
|
if (loading()) {
|
|
746
831
|
$$renderer.push("<!--[0-->");
|
|
747
832
|
$$renderer.push(`<div class="empty svelte-1o6rxhb">`);
|
|
@@ -759,7 +844,9 @@ function SessionList($$renderer, $$props) {
|
|
|
759
844
|
const each_array = ensure_array_like(visibleSessions());
|
|
760
845
|
for (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {
|
|
761
846
|
let s = each_array[$$index];
|
|
762
|
-
$$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"
|
|
847
|
+
$$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">`);
|
|
848
|
+
SessionTitle($$renderer, { title: s.title });
|
|
849
|
+
$$renderer.push(`<!---->`);
|
|
763
850
|
if (s.id === activeSessionId()) {
|
|
764
851
|
$$renderer.push("<!--[0-->");
|
|
765
852
|
$$renderer.push(`<span class="sr-only svelte-1o6rxhb">(current)</span>`);
|
|
@@ -773,7 +860,7 @@ function SessionList($$renderer, $$props) {
|
|
|
773
860
|
} else $$renderer.push("<!--[-1-->");
|
|
774
861
|
$$renderer.push(`<!--]-->`);
|
|
775
862
|
}
|
|
776
|
-
$$renderer.push(`<!--]
|
|
863
|
+
$$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>`);
|
|
777
864
|
});
|
|
778
865
|
}
|
|
779
866
|
//#endregion
|
|
@@ -787,7 +874,7 @@ function SessionPicker($$renderer, $$props) {
|
|
|
787
874
|
const activeSessionId = derived(() => chat.activeSessionId);
|
|
788
875
|
const liveConnected = derived(() => chat.liveConnected);
|
|
789
876
|
const activeSummary = derived(() => sessions().find((s) => s.id === activeSessionId()) ?? null);
|
|
790
|
-
const triggerLabel = derived(() => activeSummary() ? activeSummary().title
|
|
877
|
+
const triggerLabel = derived(() => activeSummary() ? resolveSessionTitle(activeSummary().title) : "New session");
|
|
791
878
|
$$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> `);
|
|
792
879
|
Drawer($$renderer, {
|
|
793
880
|
open,
|
|
@@ -806,7 +893,11 @@ function VoiceControl($$renderer, $$props) {
|
|
|
806
893
|
$$renderer.component(($$renderer) => {
|
|
807
894
|
const MAX_INTERIM_CHARS = 48;
|
|
808
895
|
let mounted = false;
|
|
896
|
+
let removeGlobalMicToggle = null;
|
|
809
897
|
onDestroy(() => {
|
|
898
|
+
window.openpalm?.setTrayMicRecording?.(false);
|
|
899
|
+
removeGlobalMicToggle?.();
|
|
900
|
+
removeGlobalMicToggle = null;
|
|
810
901
|
destroyVoice();
|
|
811
902
|
});
|
|
812
903
|
let supported = derived(() => mounted);
|
|
@@ -867,9 +958,6 @@ function VoiceControl($$renderer, $$props) {
|
|
|
867
958
|
function chatIcon($$renderer) {
|
|
868
959
|
$$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>`);
|
|
869
960
|
}
|
|
870
|
-
function gearIcon($$renderer) {
|
|
871
|
-
$$renderer.push(`<svg aria-hidden="true" width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="3"></circle><path d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 1 1-2.83 2.83l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-4 0v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 1 1-2.83-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1 0-4h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 1 1 2.83-2.83l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 4 0v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 1 1 2.83 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 0 4h-.09a1.65 1.65 0 0 0-1.51 1z"></path></svg>`);
|
|
872
|
-
}
|
|
873
961
|
function Navbar($$renderer, $$props) {
|
|
874
962
|
$$renderer.component(($$renderer) => {
|
|
875
963
|
const pathname = derived(() => page.url?.pathname ?? "");
|
|
@@ -877,14 +965,7 @@ function Navbar($$renderer, $$props) {
|
|
|
877
965
|
const onChatSurface = derived(() => pathname() === "/chat" || pathname().startsWith("/chat/"));
|
|
878
966
|
const onAdvancedSurface = derived(() => pathname() === "/advanced" || pathname().startsWith("/advanced/"));
|
|
879
967
|
const isLocalAssistant = derived(() => {
|
|
880
|
-
|
|
881
|
-
if (!url) return true;
|
|
882
|
-
try {
|
|
883
|
-
const host = new URL(url).hostname;
|
|
884
|
-
return host === "localhost" || host === "127.0.0.1" || host === "::1" || host === "host.docker.internal";
|
|
885
|
-
} catch {
|
|
886
|
-
return true;
|
|
887
|
-
}
|
|
968
|
+
return isLocalAssistantUrl(endpointsService.active?.url);
|
|
888
969
|
});
|
|
889
970
|
$$renderer.push(`<header class="navbar svelte-66bgq1"><div class="navbar-inner svelte-66bgq1"><a class="navbar-brand svelte-66bgq1" href="/chat" aria-label="OpenPalm — go to chat"><span class="brand-icon svelte-66bgq1" aria-hidden="true"><img src="/logo-128.png" alt="" class="svelte-66bgq1"/></span> <span class="brand-text svelte-66bgq1">OpenPalm</span></a> <div class="navbar-actions svelte-66bgq1">`);
|
|
890
971
|
if (onAdmin()) {
|
|
@@ -895,16 +976,10 @@ function Navbar($$renderer, $$props) {
|
|
|
895
976
|
title: "Chat",
|
|
896
977
|
icon: chatIcon
|
|
897
978
|
});
|
|
898
|
-
} else if (isLocalAssistant()) {
|
|
899
|
-
$$renderer.push("<!--[1-->");
|
|
900
|
-
IconButton($$renderer, {
|
|
901
|
-
href: "/admin",
|
|
902
|
-
ariaLabel: "Settings & administration",
|
|
903
|
-
title: "Manage this machine",
|
|
904
|
-
icon: gearIcon
|
|
905
|
-
});
|
|
906
979
|
} else $$renderer.push("<!--[-1-->");
|
|
907
980
|
$$renderer.push(`<!--]--> `);
|
|
981
|
+
SettingsDrawer($$renderer, { showManageAssistant: isLocalAssistant() });
|
|
982
|
+
$$renderer.push(`<!----> `);
|
|
908
983
|
if (onChatSurface()) {
|
|
909
984
|
$$renderer.push("<!--[0-->");
|
|
910
985
|
$$renderer.push(`<span class="chat-selectors svelte-66bgq1">`);
|
|
@@ -919,12 +994,10 @@ function Navbar($$renderer, $$props) {
|
|
|
919
994
|
ModeSwitch($$renderer);
|
|
920
995
|
} else $$renderer.push("<!--[-1-->");
|
|
921
996
|
$$renderer.push(`<!--]--> `);
|
|
922
|
-
ThemeToggle($$renderer);
|
|
923
|
-
$$renderer.push(`<!----> `);
|
|
924
997
|
VoiceControl($$renderer);
|
|
925
998
|
$$renderer.push(`<!----></div></div></header>`);
|
|
926
999
|
});
|
|
927
1000
|
}
|
|
928
1001
|
|
|
929
1002
|
export { EndpointList as E, IconButton as I, Navbar as N, SessionList as S, chat as c, endpointsService as e, formatTime as f };
|
|
930
|
-
//# sourceMappingURL=Navbar-
|
|
1003
|
+
//# sourceMappingURL=Navbar-lB4kFS7g.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Navbar-lB4kFS7g.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 { F as setActiveEndpoint, M as listSessions, P as sendChatMessage, a as speakText, c as stopSpeaking, j as getSessionMessages, l as voiceState, m as createSession, n as destroyVoice, t as themeService, x as fetchEndpoints } from \"./theme-state.svelte.js\";\nimport { t as goto } from \"./client.js\";\nimport { t as page } from \"./state.js\";\nimport \"./navigation.js\";\nimport { t as Spinner } from \"./Spinner.js\";\n//#region src/lib/format-date.ts\nvar TIME_FMT = new Intl.DateTimeFormat(void 0, {\n\thour: \"numeric\",\n\tminute: \"2-digit\"\n});\nvar DATE_TIME_FMT = new Intl.DateTimeFormat(void 0, {\n\tyear: \"numeric\",\n\tmonth: \"short\",\n\tday: \"numeric\",\n\thour: \"numeric\",\n\tminute: \"2-digit\"\n});\n/** Time of day, e.g. \"3:42 PM\" (locale-aware). Empty string for a falsy input. */\nfunction formatTime(ts) {\n\tif (!ts) return \"\";\n\treturn TIME_FMT.format(ts);\n}\n/**\n* Absolute date + time, e.g. \"Jun 7, 2026, 3:42 PM\". Use for tooltips / full\n* context where a relative label alone is ambiguous. Empty for a falsy input.\n*/\nfunction formatDateTime(ts) {\n\tif (!ts) return \"\";\n\treturn DATE_TIME_FMT.format(ts);\n}\n/**\n* Compact relative time, e.g. \"just now\", \"5m ago\", \"yesterday\", \"3w ago\".\n* Empty string for a falsy input. No date-fns dependency — that would be ~30 KB\n* for these few cases.\n*/\nfunction formatRelativeTime(ts) {\n\tif (!ts) return \"\";\n\tconst diffSec = Math.max(0, (Date.now() - ts) / 1e3);\n\tif (diffSec < 60) return \"just now\";\n\tconst min = Math.floor(diffSec / 60);\n\tif (min < 60) return `${min}m ago`;\n\tconst hr = Math.floor(min / 60);\n\tif (hr < 24) return `${hr}h ago`;\n\tconst day = Math.floor(hr / 24);\n\tif (day === 1) return \"yesterday\";\n\tif (day < 7) return `${day}d ago`;\n\tconst wk = Math.floor(day / 7);\n\tif (wk < 5) return `${wk}w ago`;\n\tconst mo = Math.floor(day / 30);\n\tif (mo < 12) return `${mo}mo ago`;\n\treturn `${Math.floor(day / 365)}y ago`;\n}\n//#endregion\n//#region src/lib/components/common/IconButton.svelte\nfunction IconButton($$renderer, $$props) {\n\t/** Icon contents (an inline <svg> or spinner). */\n\t/** Optional visible label; when present the button grows from a square to a pill. */\n\t/** Render as an anchor instead of a button when a destination is given. */\n\t/** \"On\"/active look (used by ToggleButton and active states). */\n\t/** Colour of the selected state. */\n\t/** Mirrors the toggle state for assistive tech (set by ToggleButton). */\n\tlet { icon, label, title, ariaLabel, disabled = false, href, onclick, type = \"button\", selected = false, tone = \"primary\", ariaPressed } = $$props;\n\tif (href) {\n\t\t$$renderer.push(\"<!--[0-->\");\n\t\t$$renderer.push(`<a${attr_class(\"icon-btn svelte-vx1yib\", void 0, {\n\t\t\t\"has-label\": label,\n\t\t\t\"selected\": selected,\n\t\t\t\"tone-danger\": tone === \"danger\"\n\t\t})}${attr(\"href\", href)}${attr(\"title\", title ?? ariaLabel ?? label)}${attr(\"aria-label\", ariaLabel ?? label)}${attr(\"aria-disabled\", disabled || void 0)}>`);\n\t\ticon($$renderer);\n\t\t$$renderer.push(`<!----> `);\n\t\tif (label) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<span class=\"icon-btn-label svelte-vx1yib\">${escape_html(label)}</span>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--></a>`);\n\t} else {\n\t\t$$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<button${attr_class(\"icon-btn svelte-vx1yib\", void 0, {\n\t\t\t\"has-label\": label,\n\t\t\t\"selected\": selected,\n\t\t\t\"tone-danger\": tone === \"danger\"\n\t\t})}${attr(\"type\", type)}${attr(\"disabled\", disabled, true)}${attr(\"title\", title ?? ariaLabel ?? label)}${attr(\"aria-label\", ariaLabel ?? label)}${attr(\"aria-pressed\", ariaPressed)}>`);\n\t\ticon($$renderer);\n\t\t$$renderer.push(`<!----> `);\n\t\tif (label) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<span class=\"icon-btn-label svelte-vx1yib\">${escape_html(label)}</span>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--></button>`);\n\t}\n\t$$renderer.push(`<!--]-->`);\n}\n//#endregion\n//#region src/lib/components/common/ToggleButton.svelte\nfunction ToggleButton($$renderer, $$props) {\n\t/** Icon shown when off (and when on, if no selectedIcon is given). */\n\t/** Optional distinct icon shown when on. */\n\t/** Colour of the on state. */\n\tlet { pressed, onToggle, icon, selectedIcon, label, title, ariaLabel, disabled = false, tone = \"primary\" } = $$props;\n\tIconButton($$renderer, {\n\t\ticon: pressed && selectedIcon ? selectedIcon : icon,\n\t\tlabel,\n\t\ttitle,\n\t\tariaLabel,\n\t\tdisabled,\n\t\ttone,\n\t\tselected: pressed,\n\t\tariaPressed: pressed,\n\t\tonclick: onToggle\n\t});\n}\n//#endregion\n//#region src/lib/components/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 onAdvanced = derived(() => pathname() === \"/advanced\" || pathname().startsWith(\"/advanced/\"));\n\t\tfunction toggle() {\n\t\t\tgoto(onAdvanced() ? \"/chat\" : \"/advanced\");\n\t\t}\n\t\tToggleButton($$renderer, {\n\t\t\tpressed: onAdvanced(),\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/Drawer.svelte\nfunction Drawer($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\t/** Optional content rendered at the start of the header (e.g. a back button). */\n\t\t/** Drawer width (CSS length). */\n\t\tlet { open, title, onClose, children, footer, headerStart, width = \"32rem\" } = $$props;\n\t\tif (open) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<div class=\"drawer-scrim svelte-1u2o1qj\"></div> <div class=\"drawer svelte-1u2o1qj\"${attr_style(`--drawer-width: ${stringify(width)}`)} role=\"dialog\" aria-modal=\"true\"${attr(\"aria-label\", title)} tabindex=\"-1\"><header class=\"drawer-header svelte-1u2o1qj\">`);\n\t\t\tif (headerStart) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\theaderStart($$renderer);\n\t\t\t\t$$renderer.push(`<!---->`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--> <h3 class=\"drawer-title svelte-1u2o1qj\">${escape_html(title)}</h3> <button class=\"drawer-close svelte-1u2o1qj\" aria-label=\"Close\"><svg aria-hidden=\"true\" width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\"><path d=\"M18 6 6 18\"></path><path d=\"m6 6 12 12\"></path></svg></button></header> <div class=\"drawer-body svelte-1u2o1qj\">`);\n\t\t\tchildren($$renderer);\n\t\t\t$$renderer.push(`<!----></div> `);\n\t\t\tif (footer) {\n\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t$$renderer.push(`<footer class=\"drawer-footer svelte-1u2o1qj\">`);\n\t\t\t\tfooter($$renderer);\n\t\t\t\t$$renderer.push(`<!----></footer>`);\n\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t$$renderer.push(`<!--]--></div>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]-->`);\n\t});\n}\n//#endregion\n//#region src/lib/components/chrome/SettingsDrawer.svelte\nfunction gearIcon($$renderer) {\n\t$$renderer.push(`<svg aria-hidden=\"true\" width=\"18\" height=\"18\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" stroke-linecap=\"round\" stroke-linejoin=\"round\"><circle cx=\"12\" cy=\"12\" r=\"3\"></circle><path d=\"M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 1 1-2.83 2.83l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 0 1-4 0v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 1 1-2.83-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 0 1 0-4h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 1 1 2.83-2.83l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 0 1 4 0v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 1 1 2.83 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 0 1 0 4h-.09a1.65 1.65 0 0 0-1.51 1z\"></path></svg>`);\n}\nfunction SettingsDrawer($$renderer, $$props) {\n\t$$renderer.component(($$renderer) => {\n\t\tlet { showManageAssistant = true } = $$props;\n\t\tlet open = false;\n\t\tfunction setTheme(event) {\n\t\t\tconst next = event.currentTarget.value;\n\t\t\tif (next === \"light\" || next === \"dark\" || next === \"system\") themeService.setPreference(next);\n\t\t}\n\t\tIconButton($$renderer, {\n\t\t\ticon: gearIcon,\n\t\t\tariaLabel: \"Settings\",\n\t\t\ttitle: \"Settings\",\n\t\t\tselected: open,\n\t\t\tariaPressed: open,\n\t\t\tonclick: () => open = true\n\t\t});\n\t\t$$renderer.push(`<!----> `);\n\t\tDrawer($$renderer, {\n\t\t\topen,\n\t\t\ttitle: \"Settings\",\n\t\t\tonClose: () => open = false,\n\t\t\twidth: \"24rem\",\n\t\t\tchildren: ($$renderer) => {\n\t\t\t\t$$renderer.push(`<div class=\"settings-drawer svelte-4kbm5j\"><label class=\"field svelte-4kbm5j\" for=\"theme-preference\"><span class=\"field-label svelte-4kbm5j\">Theme</span> `);\n\t\t\t\t$$renderer.select({\n\t\t\t\t\tid: \"theme-preference\",\n\t\t\t\t\tclass: \"field-select\",\n\t\t\t\t\tvalue: themeService.preference,\n\t\t\t\t\tonchange: setTheme\n\t\t\t\t}, ($$renderer) => {\n\t\t\t\t\t$$renderer.option({ value: \"system\" }, ($$renderer) => {\n\t\t\t\t\t\t$$renderer.push(`System`);\n\t\t\t\t\t});\n\t\t\t\t\t$$renderer.option({ value: \"light\" }, ($$renderer) => {\n\t\t\t\t\t\t$$renderer.push(`Light`);\n\t\t\t\t\t});\n\t\t\t\t\t$$renderer.option({ value: \"dark\" }, ($$renderer) => {\n\t\t\t\t\t\t$$renderer.push(`Dark`);\n\t\t\t\t\t});\n\t\t\t\t}, \"svelte-4kbm5j\");\n\t\t\t\t$$renderer.push(`</label> <nav class=\"settings-links svelte-4kbm5j\" aria-label=\"Settings links\">`);\n\t\t\t\tif (showManageAssistant) {\n\t\t\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t\t\t$$renderer.push(`<a class=\"settings-link svelte-4kbm5j\" href=\"/admin\">Manage this assistant...</a>`);\n\t\t\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t\t\t$$renderer.push(`<!--]--> <a class=\"settings-link svelte-4kbm5j\" href=\"/admin/endpoints\">Manage assistant connections...</a></nav></div>`);\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/chat/session-events.ts\nvar INITIAL_BACKOFF_MS = 1e3;\nvar MAX_BACKOFF_MS = 3e4;\nvar STREAM_URL = \"/proxy/assistant/event\";\n/**\n* Parse one `\\n\\n`-delimited SSE frame. Multi-line `data:` fields are\n* concatenated with `\\n` per the SSE spec.\n*/\nfunction parseFrame(chunk) {\n\tconst frame = {};\n\tconst dataLines = [];\n\tfor (const rawLine of chunk.split(\"\\n\")) {\n\t\tif (!rawLine || rawLine.startsWith(\":\")) continue;\n\t\tif (rawLine.startsWith(\"data:\")) dataLines.push(rawLine.replace(/^data:\\s?/, \"\"));\n\t\telse if (rawLine.startsWith(\"event:\")) frame.event = rawLine.replace(/^event:\\s?/, \"\");\n\t\telse if (rawLine.startsWith(\"id:\")) frame.id = rawLine.replace(/^id:\\s?/, \"\");\n\t}\n\tif (dataLines.length > 0) frame.data = dataLines.join(\"\\n\");\n\treturn frame;\n}\nfunction dispatch(handlers, payload) {\n\tconst info = payload.properties?.info;\n\tconst id = info?.id;\n\tif (!id) return;\n\tswitch (payload.type) {\n\t\tcase \"session.created\":\n\t\t\thandlers.onCreated(id);\n\t\t\treturn;\n\t\tcase \"session.updated\":\n\t\t\thandlers.onUpdated(id, {\n\t\t\t\ttitle: info?.title,\n\t\t\t\tupdatedAt: info?.time?.updated\n\t\t\t});\n\t\t\treturn;\n\t\tcase \"session.deleted\":\n\t\t\thandlers.onDeleted(id);\n\t\t\treturn;\n\t\tdefault: return;\n\t}\n}\n/**\n* Open an SSE connection to `/proxy/assistant/event` and dispatch\n* session-scoped events. Returns an unsubscribe function that aborts the\n* stream and prevents reconnection.\n*/\nfunction subscribeSessionEvents(handlers) {\n\tlet stopped = false;\n\tlet controller = new AbortController();\n\tlet lastEventId;\n\tconst sleep = (ms) => new Promise((resolve) => {\n\t\tconst timer = setTimeout(resolve, ms);\n\t\tcontroller.signal.addEventListener(\"abort\", () => {\n\t\t\tclearTimeout(timer);\n\t\t\tresolve();\n\t\t}, { once: true });\n\t});\n\tasync function readStream() {\n\t\tconst headers = { accept: \"text/event-stream\" };\n\t\tif (lastEventId !== void 0) headers[\"Last-Event-ID\"] = lastEventId;\n\t\tconst response = await fetch(STREAM_URL, {\n\t\t\tmethod: \"GET\",\n\t\t\theaders,\n\t\t\tcredentials: \"include\",\n\t\t\tsignal: controller.signal\n\t\t});\n\t\tif (!response.ok || !response.body) throw new Error(`SSE stream failed: ${response.status} ${response.statusText}`);\n\t\thandlers.onConnect?.();\n\t\tconst reader = response.body.pipeThrough(new TextDecoderStream()).getReader();\n\t\tlet buffer = \"\";\n\t\ttry {\n\t\t\twhile (true) {\n\t\t\t\tconst { done, value } = await reader.read();\n\t\t\t\tif (done) break;\n\t\t\t\tbuffer += value;\n\t\t\t\tconst chunks = buffer.split(\"\\n\\n\");\n\t\t\t\tbuffer = chunks.pop() ?? \"\";\n\t\t\t\tfor (const chunk of chunks) {\n\t\t\t\t\tif (!chunk) continue;\n\t\t\t\t\tconst frame = parseFrame(chunk);\n\t\t\t\t\tif (frame.id !== void 0) lastEventId = frame.id;\n\t\t\t\t\tif (!frame.data) continue;\n\t\t\t\t\tlet payload;\n\t\t\t\t\ttry {\n\t\t\t\t\t\tpayload = JSON.parse(frame.data);\n\t\t\t\t\t} catch (err) {\n\t\t\t\t\t\tconsole.warn(\"[session-events] Bad JSON in SSE frame\", err);\n\t\t\t\t\t\tcontinue;\n\t\t\t\t\t}\n\t\t\t\t\tdispatch(handlers, payload);\n\t\t\t\t}\n\t\t\t}\n\t\t} finally {\n\t\t\ttry {\n\t\t\t\treader.releaseLock();\n\t\t\t} catch {}\n\t\t}\n\t}\n\t(async () => {\n\t\tlet attempt = 0;\n\t\twhile (!stopped) try {\n\t\t\tattempt++;\n\t\t\tawait readStream();\n\t\t\tattempt = 0;\n\t\t\tif (!stopped) await sleep(500);\n\t\t} catch (err) {\n\t\t\tif (stopped) return;\n\t\t\tconst error = err instanceof Error ? err : new Error(String(err));\n\t\t\tif (error.name !== \"AbortError\") {\n\t\t\t\tconsole.warn(\"[session-events] SSE error, reconnecting\", error);\n\t\t\t\thandlers.onDisconnect?.(error);\n\t\t\t}\n\t\t\tawait sleep(Math.min(INITIAL_BACKOFF_MS * 2 ** Math.max(0, attempt - 1), MAX_BACKOFF_MS));\n\t\t\tif (controller.signal.aborted && !stopped) controller = new AbortController();\n\t\t}\n\t})();\n\treturn () => {\n\t\tstopped = true;\n\t\ttry {\n\t\t\tcontroller.abort();\n\t\t} catch {}\n\t};\n}\n//#endregion\n//#region src/lib/chat/chat-state.svelte.ts\nfunction emptyEndpointState() {\n\treturn {\n\t\tsessions: [],\n\t\tsessionsLoaded: false,\n\t\tsessionsLoading: false,\n\t\tsessionsError: \"\",\n\t\tactiveSessionId: null\n\t};\n}\nvar ChatService = class {\n\t/**\n\t* Per-endpoint session cache. Reassigned on every mutation so Svelte 5\n\t* picks up the change. Never mutate the existing Map in place.\n\t*/\n\tbyEndpoint = /* @__PURE__ */ new Map();\n\t/**\n\t* Mirrored from `endpointsService.activeId` via `onEndpointChanged()`\n\t* so the chat layer doesn't have to import the endpoint store.\n\t*/\n\tactiveEndpointId = \"default\";\n\t/** Messages for the currently rendered session only. */\n\tentries = [];\n\tentriesLoading = false;\n\tsending = false;\n\terror = \"\";\n\t/**\n\t* Set true while the SSE event stream is connected. Surfaced by the\n\t* SessionPicker as a tiny green/gray dot so the operator can see at a\n\t* glance whether live updates are flowing.\n\t*/\n\tliveConnected = false;\n\t/**\n\t* Active SSE subscription handle. Reassigned on every endpoint switch.\n\t* Plain field (not `$state`) — only the chat service touches it.\n\t*/\n\t_unsubscribeEvents = null;\n\t#activeSessionId = derived(() => this.byEndpoint.get(this.activeEndpointId)?.activeSessionId ?? null);\n\tget activeSessionId() {\n\t\treturn this.#activeSessionId();\n\t}\n\tset activeSessionId($$value) {\n\t\treturn this.#activeSessionId($$value);\n\t}\n\tsetEndpointState(id, patch) {\n\t\tconst next = {\n\t\t\t...this.byEndpoint.get(id) ?? emptyEndpointState(),\n\t\t\t...patch\n\t\t};\n\t\tthis.byEndpoint = new Map(this.byEndpoint).set(id, next);\n\t\treturn next;\n\t}\n\t/**\n\t* Handle an endpoint switch: load sessions, restore prior or pick\n\t* newest, fetch messages. Mid-generation switches are blocked.\n\t*/\n\tasync onEndpointChanged(id) {\n\t\tif (this.sending) {\n\t\t\tthis.error = \"Wait for the current reply to finish before switching.\";\n\t\t\treturn;\n\t\t}\n\t\tthis.activeEndpointId = id;\n\t\tthis.entries = [];\n\t\tthis.error = \"\";\n\t\tif (!this.byEndpoint.get(id)?.sessionsLoaded) await this.loadSessions();\n\t\tconst state = this.byEndpoint.get(id) ?? emptyEndpointState();\n\t\tconst sessions = state.sessions;\n\t\tconst previous = state.activeSessionId;\n\t\tlet nextSessionId = null;\n\t\tif (previous && sessions.some((s) => s.id === previous)) nextSessionId = previous;\n\t\telse if (sessions.length > 0) nextSessionId = sessions[0].id;\n\t\tif (nextSessionId !== state.activeSessionId) this.setEndpointState(id, { activeSessionId: nextSessionId });\n\t\tif (nextSessionId) await this.openSession(nextSessionId);\n\t\tthis._resubscribeEvents();\n\t}\n\t/**\n\t* Tear down any prior SSE subscription and open a new one. Handlers\n\t* dispatch session.created / updated / deleted into the per-endpoint\n\t* cache, mirroring out-of-band changes (CLI, other clients).\n\t*/\n\t_resubscribeEvents() {\n\t\tif (this._unsubscribeEvents) {\n\t\t\ttry {\n\t\t\t\tthis._unsubscribeEvents();\n\t\t\t} catch (err) {\n\t\t\t\tconsole.warn(\"[chat] failed to unsubscribe from previous event stream\", err);\n\t\t\t}\n\t\t\tthis._unsubscribeEvents = null;\n\t\t}\n\t\tthis.liveConnected = false;\n\t\tthis._unsubscribeEvents = subscribeSessionEvents({\n\t\t\tonCreated: (id) => {\n\t\t\t\tthis._onSessionCreated(id);\n\t\t\t},\n\t\t\tonUpdated: (id, info) => {\n\t\t\t\tthis._onSessionUpdated(id, info);\n\t\t\t},\n\t\t\tonDeleted: (id) => {\n\t\t\t\tthis._onSessionDeleted(id);\n\t\t\t},\n\t\t\tonConnect: () => {\n\t\t\t\tthis.liveConnected = true;\n\t\t\t},\n\t\t\tonDisconnect: () => {\n\t\t\t\tthis.liveConnected = false;\n\t\t\t}\n\t\t});\n\t}\n\t/**\n\t* A session was created out-of-band — prepend to the active endpoint's\n\t* list if not already known. Do not auto-switch to it: the user owns\n\t* navigation.\n\t*/\n\t_onSessionCreated(sessionId) {\n\t\tconst endpointId = this.activeEndpointId;\n\t\tconst prev = this.byEndpoint.get(endpointId) ?? emptyEndpointState();\n\t\tif (prev.sessions.some((s) => s.id === sessionId)) return;\n\t\tconst now = Date.now();\n\t\tconst summary = {\n\t\t\tid: sessionId,\n\t\t\ttitle: \"\",\n\t\t\tcreatedAt: now,\n\t\t\tupdatedAt: now\n\t\t};\n\t\tthis.setEndpointState(endpointId, {\n\t\t\tsessions: [summary, ...prev.sessions],\n\t\t\tsessionsLoaded: true\n\t\t});\n\t}\n\t/**\n\t* A session was touched out-of-band — patch its updatedAt (and title if\n\t* the event carries one) and re-sort. Do NOT refetch messages: if the\n\t* user is viewing this session, leave the in-memory entries alone for\n\t* v1. A follow-up phase can reconcile message deltas via the assistant\n\t* event stream.\n\t*/\n\t_onSessionUpdated(sessionId, info) {\n\t\tconst endpointId = this.activeEndpointId;\n\t\tconst prev = this.byEndpoint.get(endpointId);\n\t\tif (!prev) return;\n\t\tconst idx = prev.sessions.findIndex((s) => s.id === sessionId);\n\t\tif (idx === -1) return;\n\t\tconst existing = prev.sessions[idx];\n\t\tconst sessions = [{\n\t\t\t...existing,\n\t\t\ttitle: info?.title ?? existing.title,\n\t\t\tupdatedAt: info?.updatedAt ?? Date.now()\n\t\t}, ...prev.sessions.filter((s) => s.id !== sessionId)];\n\t\tsessions.sort((a, b) => b.updatedAt - a.updatedAt);\n\t\tthis.setEndpointState(endpointId, { sessions });\n\t}\n\t/**\n\t* A session was deleted out-of-band. Remove it from the list; if it was\n\t* the active session, fall back to the newest remaining session (or\n\t* null) and reload its messages.\n\t*/\n\tasync _onSessionDeleted(sessionId) {\n\t\tconst endpointId = this.activeEndpointId;\n\t\tconst prev = this.byEndpoint.get(endpointId);\n\t\tif (!prev) return;\n\t\tif (!prev.sessions.some((s) => s.id === sessionId)) return;\n\t\tconst sessions = prev.sessions.filter((s) => s.id !== sessionId);\n\t\tconst wasActive = prev.activeSessionId === sessionId;\n\t\tconst nextActive = wasActive ? sessions[0]?.id ?? null : prev.activeSessionId;\n\t\tthis.setEndpointState(endpointId, {\n\t\t\tsessions,\n\t\t\tactiveSessionId: nextActive\n\t\t});\n\t\tif (wasActive) {\n\t\t\tthis.entries = [];\n\t\t\tif (nextActive) await this.openSession(nextActive);\n\t\t}\n\t}\n\t/** Fetch the session list for the active endpoint. */\n\tasync loadSessions() {\n\t\tconst id = this.activeEndpointId;\n\t\tthis.setEndpointState(id, {\n\t\t\tsessionsLoading: true,\n\t\t\tsessionsError: \"\"\n\t\t});\n\t\ttry {\n\t\t\tconst sessions = await listSessions();\n\t\t\tthis.setEndpointState(id, {\n\t\t\t\tsessions,\n\t\t\t\tsessionsLoaded: true,\n\t\t\t\tsessionsLoading: false,\n\t\t\t\tsessionsError: \"\"\n\t\t\t});\n\t\t} catch (e) {\n\t\t\tconst err = e;\n\t\t\tconst message = err.status === 503 || err.status === 502 ? \"Assistant is not reachable.\" : err.message ?? \"Failed to load sessions.\";\n\t\t\tthis.setEndpointState(id, {\n\t\t\t\tsessionsLoading: false,\n\t\t\t\tsessionsError: message\n\t\t\t});\n\t\t}\n\t}\n\t/** Select a session and render its messages. */\n\tasync openSession(sessionId) {\n\t\tif (this.sending) {\n\t\t\tthis.error = \"Wait for the current reply to finish before switching.\";\n\t\t\treturn;\n\t\t}\n\t\tconst endpointId = this.activeEndpointId;\n\t\tthis.setEndpointState(endpointId, { activeSessionId: sessionId });\n\t\tthis.entries = [];\n\t\tthis.entriesLoading = true;\n\t\tthis.error = \"\";\n\t\ttry {\n\t\t\tconst messages = await getSessionMessages(sessionId);\n\t\t\tif (this.activeEndpointId === endpointId && this.byEndpoint.get(endpointId)?.activeSessionId === sessionId) this.entries = messages;\n\t\t} catch (e) {\n\t\t\tconst err = e;\n\t\t\tif (err.status === 503 || err.status === 502) this.error = \"Assistant is not reachable. Try reconnecting.\";\n\t\t\telse if (err.status === 401) this.error = \"Sign-in required.\";\n\t\t\telse this.error = err.message ?? \"Failed to load messages.\";\n\t\t} finally {\n\t\t\tthis.entriesLoading = false;\n\t\t}\n\t}\n\t/** Create a new session on the active endpoint and select it. */\n\tasync startNewSession() {\n\t\tif (this.sending) {\n\t\t\tthis.error = \"Wait for the current reply to finish before switching.\";\n\t\t\treturn null;\n\t\t}\n\t\tconst endpointId = this.activeEndpointId;\n\t\tthis.error = \"\";\n\t\ttry {\n\t\t\tconst { id } = await createSession();\n\t\t\tconst now = Date.now();\n\t\t\tconst summary = {\n\t\t\t\tid,\n\t\t\t\ttitle: \"\",\n\t\t\t\tcreatedAt: now,\n\t\t\t\tupdatedAt: now\n\t\t\t};\n\t\t\tconst prev = this.byEndpoint.get(endpointId) ?? emptyEndpointState();\n\t\t\tthis.setEndpointState(endpointId, {\n\t\t\t\tsessions: [summary, ...prev.sessions.filter((s) => s.id !== id)],\n\t\t\t\tsessionsLoaded: true,\n\t\t\t\tactiveSessionId: id\n\t\t\t});\n\t\t\tthis.entries = [];\n\t\t\treturn id;\n\t\t} catch (e) {\n\t\t\tconst err = e;\n\t\t\tthis.error = `Failed to start session: ${err.message ?? \"unknown error\"}`;\n\t\t\treturn null;\n\t\t}\n\t}\n\t/**\n\t* Send a message in the active session. If none is active, create one\n\t* first (matches the \"zero sessions\" empty-state flow).\n\t*/\n\tasync send(text) {\n\t\tif (this.sending) return;\n\t\tconst trimmed = text.trim();\n\t\tif (!trimmed) return;\n\t\tlet sessionId = this.activeSessionId;\n\t\tif (!sessionId) {\n\t\t\tsessionId = await this.startNewSession();\n\t\t\tif (!sessionId) return;\n\t\t}\n\t\tconst userEntry = {\n\t\t\tid: crypto.randomUUID(),\n\t\t\trole: \"user\",\n\t\t\ttext: trimmed,\n\t\t\ttimestamp: Date.now()\n\t\t};\n\t\tthis.entries = [...this.entries, userEntry];\n\t\tthis.error = \"\";\n\t\tthis.sending = true;\n\t\ttry {\n\t\t\tconst replyText = (await sendChatMessage(sessionId, trimmed)).parts.filter((p) => p.type === \"text\" && p.text).map((p) => p.text ?? \"\").join(\"\");\n\t\t\tconst assistantEntry = {\n\t\t\t\tid: crypto.randomUUID(),\n\t\t\t\trole: \"assistant\",\n\t\t\t\ttext: replyText || \"(no response)\",\n\t\t\t\ttimestamp: Date.now()\n\t\t\t};\n\t\t\tthis.entries = [...this.entries, assistantEntry];\n\t\t\tconst endpointId = this.activeEndpointId;\n\t\t\tconst prev = this.byEndpoint.get(endpointId);\n\t\t\tif (prev) {\n\t\t\t\tconst now = Date.now();\n\t\t\t\tconst existing = prev.sessions.find((s) => s.id === sessionId);\n\t\t\t\tconst updated = existing ? {\n\t\t\t\t\t...existing,\n\t\t\t\t\tupdatedAt: now\n\t\t\t\t} : {\n\t\t\t\t\tid: sessionId,\n\t\t\t\t\ttitle: \"\",\n\t\t\t\t\tcreatedAt: now,\n\t\t\t\t\tupdatedAt: now\n\t\t\t\t};\n\t\t\t\tconst rest = prev.sessions.filter((s) => s.id !== sessionId);\n\t\t\t\tthis.setEndpointState(endpointId, { sessions: [updated, ...rest] });\n\t\t\t}\n\t\t\tif (voiceState.ttsSupported && voiceState.ttsAutoEnabled && replyText) speakText(replyText);\n\t\t} catch (e) {\n\t\t\tconst err = e;\n\t\t\tif (err.status === 503 || err.status === 502) {\n\t\t\t\tthis.error = \"Assistant is not reachable. Try reconnecting.\";\n\t\t\t\tthis.setEndpointState(this.activeEndpointId, { activeSessionId: null });\n\t\t\t} else if (err.status === 401) this.error = \"Sign-in required.\";\n\t\t\telse this.error = err.message ?? \"Message failed.\";\n\t\t} finally {\n\t\t\tthis.sending = false;\n\t\t}\n\t}\n\treset() {\n\t\tstopSpeaking();\n\t\tthis.entries = [];\n\t\tthis.error = \"\";\n\t\tthis.byEndpoint = /* @__PURE__ */ new Map();\n\t\tif (this._unsubscribeEvents) {\n\t\t\ttry {\n\t\t\t\tthis._unsubscribeEvents();\n\t\t\t} catch (err) {\n\t\t\t\tconsole.warn(\"[chat] failed to unsubscribe from event stream during reset\", err);\n\t\t\t}\n\t\t\tthis._unsubscribeEvents = null;\n\t\t}\n\t\tthis.liveConnected = false;\n\t}\n};\nvar chat = new ChatService();\n//#endregion\n//#region src/lib/endpoints-state.svelte.ts\nvar EndpointsService = class {\n\tendpoints = [];\n\tactiveId = \"default\";\n\tloading = false;\n\tloaded = false;\n\terror = \"\";\n\t#active = derived(() => this.endpoints.find((e) => e.id === this.activeId) ?? this.endpoints[0] ?? null);\n\tget active() {\n\t\treturn this.#active();\n\t}\n\tset active($$value) {\n\t\treturn this.#active($$value);\n\t}\n\tasync load(force = false) {\n\t\tif (this.loading) return;\n\t\tif (this.loaded && !force) return;\n\t\tthis.loading = true;\n\t\tthis.error = \"\";\n\t\ttry {\n\t\t\tconst { endpoints, activeId } = await fetchEndpoints();\n\t\t\tthis.endpoints = endpoints;\n\t\t\tthis.activeId = activeId;\n\t\t\tthis.loaded = true;\n\t\t} catch (e) {\n\t\t\tconst err = e;\n\t\t\tif (err.status !== 401) this.error = err.message ?? \"Failed to load endpoints\";\n\t\t} finally {\n\t\t\tthis.loading = false;\n\t\t}\n\t}\n\tasync activate(id) {\n\t\tif (id === this.activeId) return;\n\t\tif (chat.sending) {\n\t\t\tthis.error = \"Wait for the current reply to finish before switching.\";\n\t\t\tthrow new Error(this.error);\n\t\t}\n\t\tconst previous = this.activeId;\n\t\tthis.activeId = id;\n\t\ttry {\n\t\t\tawait setActiveEndpoint(id);\n\t\t\tawait chat.onEndpointChanged(id);\n\t\t} catch (e) {\n\t\t\tthis.activeId = previous;\n\t\t\tconst err = e;\n\t\t\tthis.error = err.message ?? \"Failed to switch endpoint\";\n\t\t\tthrow e;\n\t\t}\n\t}\n};\nvar endpointsService = new EndpointsService();\n//#endregion\n//#region src/lib/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\twindow.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 isLocalAssistant = derived(() => {\n\t\t\treturn isLocalAssistantUrl(endpointsService.active?.url);\n\t\t});\n\t\t$$renderer.push(`<header class=\"navbar svelte-66bgq1\"><div class=\"navbar-inner svelte-66bgq1\"><a class=\"navbar-brand svelte-66bgq1\" href=\"/chat\" aria-label=\"OpenPalm — go to chat\"><span class=\"brand-icon svelte-66bgq1\" aria-hidden=\"true\"><img src=\"/logo-128.png\" alt=\"\" class=\"svelte-66bgq1\"/></span> <span class=\"brand-text svelte-66bgq1\">OpenPalm</span></a> <div class=\"navbar-actions svelte-66bgq1\">`);\n\t\tif (onAdmin()) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\tIconButton($$renderer, {\n\t\t\t\thref: \"/chat\",\n\t\t\t\tariaLabel: \"Back to chat\",\n\t\t\t\ttitle: \"Chat\",\n\t\t\t\ticon: chatIcon\n\t\t\t});\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> `);\n\t\tSettingsDrawer($$renderer, { showManageAssistant: isLocalAssistant() });\n\t\t$$renderer.push(`<!----> `);\n\t\tif (onChatSurface()) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\t$$renderer.push(`<span class=\"chat-selectors svelte-66bgq1\">`);\n\t\t\tEndpointSwitcher($$renderer, {});\n\t\t\t$$renderer.push(`<!----> `);\n\t\t\tSessionPicker($$renderer, {});\n\t\t\t$$renderer.push(`<!----></span>`);\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> `);\n\t\tif (onChatSurface() || onAdvancedSurface()) {\n\t\t\t$$renderer.push(\"<!--[0-->\");\n\t\t\tModeSwitch($$renderer, {});\n\t\t} else $$renderer.push(\"<!--[-1-->\");\n\t\t$$renderer.push(`<!--]--> `);\n\t\tVoiceControl($$renderer, {});\n\t\t$$renderer.push(`<!----></div></div></header>`);\n\t});\n}\n//#endregion\nexport { chat as a, formatTime as c, endpointsService as i, SessionList as n, Drawer as o, EndpointList as r, IconButton as s, Navbar as t };\n"],"names":[],"mappings":";;;;;;AAOA;AACA,IAAI,QAAQ,GAAG,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE;AAC/C,CAAC,IAAI,EAAE,SAAS;AAChB,CAAC,MAAM,EAAE;AACT,CAAC,CAAC;AACF,IAAI,aAAa,GAAG,IAAI,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE;AACpD,CAAC,IAAI,EAAE,SAAS;AAChB,CAAC,KAAK,EAAE,OAAO;AACf,CAAC,GAAG,EAAE,SAAS;AACf,CAAC,IAAI,EAAE,SAAS;AAChB,CAAC,MAAM,EAAE;AACT,CAAC,CAAC;AACF;AACA,SAAS,UAAU,CAAC,EAAE,EAAE;AACxB,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE;AACnB,CAAC,OAAO,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;AAC3B;AACA;AACA;AACA;AACA;AACA,SAAS,cAAc,CAAC,EAAE,EAAE;AAC5B,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE;AACnB,CAAC,OAAO,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;AAChC;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,kBAAkB,CAAC,EAAE,EAAE;AAChC,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,EAAE;AACnB,CAAC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,GAAG,CAAC;AACrD,CAAC,IAAI,OAAO,GAAG,EAAE,EAAE,OAAO,UAAU;AACpC,CAAC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,GAAG,EAAE,CAAC;AACrC,CAAC,IAAI,GAAG,GAAG,EAAE,EAAE,OAAO,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC;AACnC,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,EAAE,CAAC;AAChC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC;AACjC,CAAC,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,CAAC;AAChC,CAAC,IAAI,GAAG,KAAK,CAAC,EAAE,OAAO,WAAW;AAClC,CAAC,IAAI,GAAG,GAAG,CAAC,EAAE,OAAO,CAAC,EAAE,GAAG,CAAC,KAAK,CAAC;AAClC,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC;AAC/B,CAAC,IAAI,EAAE,GAAG,CAAC,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC;AAChC,CAAC,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,EAAE,CAAC;AAChC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC;AAClC,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,KAAK,CAAC;AACvC;AACA;AACA;AACA,SAAS,UAAU,CAAC,UAAU,EAAE,OAAO,EAAE;AACzC;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,GAAG,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,GAAG,QAAQ,EAAE,QAAQ,GAAG,KAAK,EAAE,IAAI,GAAG,SAAS,EAAE,WAAW,EAAE,GAAG,OAAO;AACnJ,CAAC,IAAI,IAAI,EAAE;AACX,EAAE,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAC9B,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,EAAE,UAAU,CAAC,wBAAwB,EAAE,MAAM,EAAE;AACpE,GAAG,WAAW,EAAE,KAAK;AACrB,GAAG,UAAU,EAAE,QAAQ;AACvB,GAAG,aAAa,EAAE,IAAI,KAAK;AAC3B,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,IAAI,SAAS,IAAI,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,SAAS,IAAI,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,eAAe,EAAE,QAAQ,IAAI,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AAC/J,EAAE,IAAI,CAAC,UAAU,CAAC;AAClB,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;AAC7B,EAAE,IAAI,KAAK,EAAE;AACb,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAC/B,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,2CAA2C,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;AAC7F,EAAE,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AACtC,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,CAAC;AACjC,CAAC,CAAC,MAAM;AACR,EAAE,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AAC/B,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,UAAU,CAAC,wBAAwB,EAAE,MAAM,EAAE;AACzE,GAAG,WAAW,EAAE,KAAK;AACrB,GAAG,UAAU,EAAE,QAAQ;AACvB,GAAG,aAAa,EAAE,IAAI,KAAK;AAC3B,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,KAAK,IAAI,SAAS,IAAI,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,SAAS,IAAI,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1L,EAAE,IAAI,CAAC,UAAU,CAAC;AAClB,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;AAC7B,EAAE,IAAI,KAAK,EAAE;AACb,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAC/B,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,2CAA2C,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,CAAC;AAC7F,EAAE,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AACtC,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,iBAAiB,CAAC,CAAC;AACtC,CAAC;AACD,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;AAC5B;AACA;AACA;AACA,SAAS,YAAY,CAAC,UAAU,EAAE,OAAO,EAAE;AAC3C;AACA;AACA;AACA,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,QAAQ,GAAG,KAAK,EAAE,IAAI,GAAG,SAAS,EAAE,GAAG,OAAO;AACrH,CAAC,UAAU,CAAC,UAAU,EAAE;AACxB,EAAE,IAAI,EAAE,OAAO,IAAI,YAAY,GAAG,YAAY,GAAG,IAAI;AACrD,EAAE,KAAK;AACP,EAAE,KAAK;AACP,EAAE,SAAS;AACX,EAAE,QAAQ;AACV,EAAE,IAAI;AACN,EAAE,QAAQ,EAAE,OAAO;AACnB,EAAE,WAAW,EAAE,OAAO;AACtB,EAAE,OAAO,EAAE;AACX,EAAE,CAAC;AACH;AACA;AACA;AACA,SAAS,YAAY,CAAC,UAAU,EAAE;AAClC,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,oTAAoT,CAAC,CAAC;AACxU;AACA,SAAS,UAAU,CAAC,UAAU,EAAE,OAAO,EAAE;AACzC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,KAAK;AACtC,EAAE,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,GAAG,EAAE,QAAQ,IAAI,EAAE,CAAC;AAC1D,EAAE,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,QAAQ,EAAE,KAAK,WAAW,IAAI,QAAQ,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;AACrG,EAAE,SAAS,MAAM,GAAG;AACpB,GAAG,IAAI,CAAC,UAAU,EAAE,GAAG,OAAO,GAAG,WAAW,CAAC;AAC7C,EAAE;AACF,EAAE,YAAY,CAAC,UAAU,EAAE;AAC3B,GAAG,OAAO,EAAE,UAAU,EAAE;AACxB,GAAG,QAAQ,EAAE,MAAM;AACnB,GAAG,SAAS,EAAE,eAAe;AAC7B,GAAG,KAAK,EAAE,mCAAmC;AAC7C,GAAG,IAAI,EAAE;AACT,GAAG,CAAC;AACJ,CAAC,CAAC,CAAC;AACH;AACA;AACA;AACA,SAAS,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE;AACrC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,KAAK;AACtC;AACA;AACA,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,KAAK,GAAG,OAAO,EAAE,GAAG,OAAO;AACxF,EAAE,IAAI,IAAI,EAAE;AACZ,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAC/B,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,kFAAkF,EAAE,UAAU,CAAC,CAAC,gBAAgB,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,gCAAgC,EAAE,IAAI,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC,4DAA4D,CAAC,CAAC;AACpR,GAAG,IAAI,WAAW,EAAE;AACpB,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAChC,IAAI,WAAW,CAAC,UAAU,CAAC;AAC3B,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;AAC9B,GAAG,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AACvC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,iDAAiD,EAAE,WAAW,CAAC,KAAK,CAAC,CAAC,2UAA2U,CAAC,CAAC;AACva,GAAG,QAAQ,CAAC,UAAU,CAAC;AACvB,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,CAAC;AACpC,GAAG,IAAI,MAAM,EAAE;AACf,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAChC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,6CAA6C,CAAC,CAAC;AACpE,IAAI,MAAM,CAAC,UAAU,CAAC;AACtB,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,gBAAgB,CAAC,CAAC;AACvC,GAAG,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AACvC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,CAAC;AACpC,EAAE,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AACtC,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;AAC7B,CAAC,CAAC,CAAC;AACH;AACA;AACA;AACA,SAAS,QAAQ,CAAC,UAAU,EAAE;AAC9B,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,k1BAAk1B,CAAC,CAAC;AACt2B;AACA,SAAS,cAAc,CAAC,UAAU,EAAE,OAAO,EAAE;AAC7C,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,KAAK;AACtC,EAAE,IAAI,EAAE,mBAAmB,GAAG,IAAI,EAAE,GAAG,OAAO;AAC9C,EAAE,IAAI,IAAI,GAAG,KAAK;AAClB,EAAE,SAAS,QAAQ,CAAC,KAAK,EAAE;AAC3B,GAAG,MAAM,IAAI,GAAG,KAAK,CAAC,aAAa,CAAC,KAAK;AACzC,GAAG,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,MAAM,IAAI,IAAI,KAAK,QAAQ,EAAE,YAAY,CAAC,aAAa,CAAC,IAAI,CAAC;AACjG,EAAE;AACF,EAAE,UAAU,CAAC,UAAU,EAAE;AACzB,GAAG,IAAI,EAAE,QAAQ;AACjB,GAAG,SAAS,EAAE,UAAU;AACxB,GAAG,KAAK,EAAE,UAAU;AACpB,GAAG,QAAQ,EAAE,IAAI;AACjB,GAAG,WAAW,EAAE,IAAI;AACpB,GAAG,OAAO,EAAE,MAAM,IAAI,GAAG;AACzB,GAAG,CAAC;AACJ,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;AAC7B,EAAE,MAAM,CAAC,UAAU,EAAE;AACrB,GAAG,IAAI;AACP,GAAG,KAAK,EAAE,UAAU;AACpB,GAAG,OAAO,EAAE,MAAM,IAAI,GAAG,KAAK;AAC9B,GAAG,KAAK,EAAE,OAAO;AACjB,GAAG,QAAQ,EAAE,CAAC,UAAU,KAAK;AAC7B,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,0JAA0J,CAAC,CAAC;AACjL,IAAI,UAAU,CAAC,MAAM,CAAC;AACtB,KAAK,EAAE,EAAE,kBAAkB;AAC3B,KAAK,KAAK,EAAE,cAAc;AAC1B,KAAK,KAAK,EAAE,YAAY,CAAC,UAAU;AACnC,KAAK,QAAQ,EAAE;AACf,KAAK,EAAE,CAAC,UAAU,KAAK;AACvB,KAAK,UAAU,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,CAAC,UAAU,KAAK;AAC5D,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC;AAC/B,KAAK,CAAC,CAAC;AACP,KAAK,UAAU,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,CAAC,UAAU,KAAK;AAC3D,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC;AAC9B,KAAK,CAAC,CAAC;AACP,KAAK,UAAU,CAAC,MAAM,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,UAAU,KAAK;AAC1D,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC;AAC7B,KAAK,CAAC,CAAC;AACP,IAAI,CAAC,EAAE,eAAe,CAAC;AACvB,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,+EAA+E,CAAC,CAAC;AACtG,IAAI,IAAI,mBAAmB,EAAE;AAC7B,KAAK,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AACjC,KAAK,UAAU,CAAC,IAAI,CAAC,CAAC,iFAAiF,CAAC,CAAC;AACzG,IAAI,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AACxC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,uHAAuH,CAAC,CAAC;AAC9I,GAAG,CAED,CAAC,CAAC;AACJ,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;AAC5B,CAAC,CAAC,CAAC;AACH;AACA;AACA;AACA,IAAI,kBAAkB,GAAG,GAAG;AAC5B,IAAI,cAAc,GAAG,GAAG;AACxB,IAAI,UAAU,GAAG,wBAAwB;AACzC;AACA;AACA;AACA;AACA,SAAS,UAAU,CAAC,KAAK,EAAE;AAC3B,CAAC,MAAM,KAAK,GAAG,EAAE;AACjB,CAAC,MAAM,SAAS,GAAG,EAAE;AACrB,CAAC,KAAK,MAAM,OAAO,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;AAC1C,EAAE,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;AAC3C,EAAE,IAAI,OAAO,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC;AACnF,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE,CAAC;AACxF,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,KAAK,CAAC,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC;AAC/E,CAAC;AACD,CAAC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,KAAK,CAAC,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;AAC5D,CAAC,OAAO,KAAK;AACb;AACA,SAAS,QAAQ,CAAC,QAAQ,EAAE,OAAO,EAAE;AACrC,CAAC,MAAM,IAAI,GAAG,OAAO,CAAC,UAAU,EAAE,IAAI;AACtC,CAAC,MAAM,EAAE,GAAG,IAAI,EAAE,EAAE;AACpB,CAAC,IAAI,CAAC,EAAE,EAAE;AACV,CAAC,QAAQ,OAAO,CAAC,IAAI;AACrB,EAAE,KAAK,iBAAiB;AACxB,GAAG,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;AACzB,GAAG;AACH,EAAE,KAAK,iBAAiB;AACxB,GAAG,QAAQ,CAAC,SAAS,CAAC,EAAE,EAAE;AAC1B,IAAI,KAAK,EAAE,IAAI,EAAE,KAAK;AACtB,IAAI,SAAS,EAAE,IAAI,EAAE,IAAI,EAAE;AAC3B,IAAI,CAAC;AACL,GAAG;AACH,EAAE,KAAK,iBAAiB;AACxB,GAAG,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;AACzB,GAAG;AACH,EAAE,SAAS;AACX;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,sBAAsB,CAAC,QAAQ,EAAE;AAC1C,CAAC,IAAI,OAAO,GAAG,KAAK;AACpB,CAAC,IAAI,UAAU,GAAG,IAAI,eAAe,EAAE;AACvC,CAAC,IAAI,WAAW;AAChB,CAAC,MAAM,KAAK,GAAG,CAAC,EAAE,KAAK,IAAI,OAAO,CAAC,CAAC,OAAO,KAAK;AAChD,EAAE,MAAM,KAAK,GAAG,UAAU,CAAC,OAAO,EAAE,EAAE,CAAC;AACvC,EAAE,UAAU,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,MAAM;AACpD,GAAG,YAAY,CAAC,KAAK,CAAC;AACtB,GAAG,OAAO,EAAE;AACZ,EAAE,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;AACpB,CAAC,CAAC,CAAC;AACH,CAAC,eAAe,UAAU,GAAG;AAC7B,EAAE,MAAM,OAAO,GAAG,EAAE,MAAM,EAAE,mBAAmB,EAAE;AACjD,EAAE,IAAI,WAAW,KAAK,MAAM,EAAE,OAAO,CAAC,eAAe,CAAC,GAAG,WAAW;AACpE,EAAE,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,UAAU,EAAE;AAC3C,GAAG,MAAM,EAAE,KAAK;AAChB,GAAG,OAAO;AACV,GAAG,WAAW,EAAE,SAAS;AACzB,GAAG,MAAM,EAAE,UAAU,CAAC;AACtB,GAAG,CAAC;AACJ,EAAE,IAAI,CAAC,QAAQ,CAAC,EAAE,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,IAAI,KAAK,CAAC,CAAC,mBAAmB,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;AACrH,EAAE,QAAQ,CAAC,SAAS,IAAI;AACxB,EAAE,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,iBAAiB,EAAE,CAAC,CAAC,SAAS,EAAE;AAC/E,EAAE,IAAI,MAAM,GAAG,EAAE;AACjB,EAAE,IAAI;AACN,GAAG,OAAO,IAAI,EAAE;AAChB,IAAI,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE;AAC/C,IAAI,IAAI,IAAI,EAAE;AACd,IAAI,MAAM,IAAI,KAAK;AACnB,IAAI,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC;AACvC,IAAI,MAAM,GAAG,MAAM,CAAC,GAAG,EAAE,IAAI,EAAE;AAC/B,IAAI,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE;AAChC,KAAK,IAAI,CAAC,KAAK,EAAE;AACjB,KAAK,MAAM,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;AACpC,KAAK,IAAI,KAAK,CAAC,EAAE,KAAK,KAAK,CAAC,EAAE,WAAW,GAAG,KAAK,CAAC,EAAE;AACpD,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE;AACtB,KAAK,IAAI,OAAO;AAChB,KAAK,IAAI;AACT,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC;AACtC,KAAK,CAAC,CAAC,OAAO,GAAG,EAAE;AACnB,MAAM,OAAO,CAAC,IAAI,CAAC,wCAAwC,EAAE,GAAG,CAAC;AACjE,MAAM;AACN,KAAK;AACL,KAAK,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;AAChC,IAAI;AACJ,GAAG;AACH,EAAE,CAAC,SAAS;AACZ,GAAG,IAAI;AACP,IAAI,MAAM,CAAC,WAAW,EAAE;AACxB,GAAG,CAAC,CAAC,MAAM,CAAC;AACZ,EAAE;AACF,CAAC;AACD,CAAC,CAAC,YAAY;AACd,EAAE,IAAI,OAAO,GAAG,CAAC;AACjB,EAAE,OAAO,CAAC,OAAO,EAAE,IAAI;AACvB,GAAG,OAAO,EAAE;AACZ,GAAG,MAAM,UAAU,EAAE;AACrB,GAAG,OAAO,GAAG,CAAC;AACd,GAAG,IAAI,CAAC,OAAO,EAAE,MAAM,KAAK,CAAC,GAAG,CAAC;AACjC,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,GAAG,IAAI,OAAO,EAAE;AAChB,GAAG,MAAM,KAAK,GAAG,GAAG,YAAY,KAAK,GAAG,GAAG,GAAG,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;AACpE,GAAG,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE;AACpC,IAAI,OAAO,CAAC,IAAI,CAAC,0CAA0C,EAAE,KAAK,CAAC;AACnE,IAAI,QAAQ,CAAC,YAAY,GAAG,KAAK,CAAC;AAClC,GAAG;AACH,GAAG,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,kBAAkB,GAAG,CAAC,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;AAC5F,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,OAAO,IAAI,CAAC,OAAO,EAAE,UAAU,GAAG,IAAI,eAAe,EAAE;AAChF,EAAE;AACF,CAAC,CAAC,GAAG;AACL,CAAC,OAAO,MAAM;AACd,EAAE,OAAO,GAAG,IAAI;AAChB,EAAE,IAAI;AACN,GAAG,UAAU,CAAC,KAAK,EAAE;AACrB,EAAE,CAAC,CAAC,MAAM,CAAC;AACX,CAAC,CAAC;AACF;AACA;AACA;AACA,SAAS,kBAAkB,GAAG;AAC9B,CAAC,OAAO;AACR,EAAE,QAAQ,EAAE,EAAE;AACd,EAAE,cAAc,EAAE,KAAK;AACvB,EAAE,eAAe,EAAE,KAAK;AACxB,EAAE,aAAa,EAAE,EAAE;AACnB,EAAE,eAAe,EAAE;AACnB,EAAE;AACF;AACA,IAAI,WAAW,GAAG,MAAM;AACxB;AACA;AACA;AACA;AACA,CAAC,UAAU,mBAAmB,IAAI,GAAG,EAAE;AACvC;AACA;AACA;AACA;AACA,CAAC,gBAAgB,GAAG,SAAS;AAC7B;AACA,CAAC,OAAO,GAAG,EAAE;AACb,CAAC,cAAc,GAAG,KAAK;AACvB,CAAC,OAAO,GAAG,KAAK;AAChB,CAAC,KAAK,GAAG,EAAE;AACX;AACA;AACA;AACA;AACA;AACA,CAAC,aAAa,GAAG,KAAK;AACtB;AACA;AACA;AACA;AACA,CAAC,kBAAkB,GAAG,IAAI;AAC1B,CAAC,gBAAgB,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,eAAe,IAAI,IAAI,CAAC;AACtG,CAAC,IAAI,eAAe,GAAG;AACvB,EAAE,OAAO,IAAI,CAAC,gBAAgB,EAAE;AAChC,CAAC;AACD,CAAC,IAAI,eAAe,CAAC,OAAO,EAAE;AAC9B,EAAE,OAAO,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC;AACvC,CAAC;AACD,CAAC,gBAAgB,CAAC,EAAE,EAAE,KAAK,EAAE;AAC7B,EAAE,MAAM,IAAI,GAAG;AACf,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,kBAAkB,EAAE;AACrD,GAAG,GAAG;AACN,GAAG;AACH,EAAE,IAAI,CAAC,UAAU,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC;AAC1D,EAAE,OAAO,IAAI;AACb,CAAC;AACD;AACA;AACA;AACA;AACA,CAAC,MAAM,iBAAiB,CAAC,EAAE,EAAE;AAC7B,EAAE,IAAI,IAAI,CAAC,OAAO,EAAE;AACpB,GAAG,IAAI,CAAC,KAAK,GAAG,wDAAwD;AACxE,GAAG;AACH,EAAE;AACF,EAAE,IAAI,CAAC,gBAAgB,GAAG,EAAE;AAC5B,EAAE,IAAI,CAAC,OAAO,GAAG,EAAE;AACnB,EAAE,IAAI,CAAC,KAAK,GAAG,EAAE;AACjB,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,cAAc,EAAE,MAAM,IAAI,CAAC,YAAY,EAAE;AACzE,EAAE,MAAM,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,kBAAkB,EAAE;AAC/D,EAAE,MAAM,QAAQ,GAAG,KAAK,CAAC,QAAQ;AACjC,EAAE,MAAM,QAAQ,GAAG,KAAK,CAAC,eAAe;AACxC,EAAE,IAAI,aAAa,GAAG,IAAI;AAC1B,EAAE,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,QAAQ,CAAC,EAAE,aAAa,GAAG,QAAQ;AACnF,OAAO,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,aAAa,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE;AAC9D,EAAE,IAAI,aAAa,KAAK,KAAK,CAAC,eAAe,EAAE,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE,EAAE,eAAe,EAAE,aAAa,EAAE,CAAC;AAC5G,EAAE,IAAI,aAAa,EAAE,MAAM,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC;AAC1D,EAAE,IAAI,CAAC,kBAAkB,EAAE;AAC3B,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC,kBAAkB,GAAG;AACtB,EAAE,IAAI,IAAI,CAAC,kBAAkB,EAAE;AAC/B,GAAG,IAAI;AACP,IAAI,IAAI,CAAC,kBAAkB,EAAE;AAC7B,GAAG,CAAC,CAAC,OAAO,GAAG,EAAE;AACjB,IAAI,OAAO,CAAC,IAAI,CAAC,yDAAyD,EAAE,GAAG,CAAC;AAChF,GAAG;AACH,GAAG,IAAI,CAAC,kBAAkB,GAAG,IAAI;AACjC,EAAE;AACF,EAAE,IAAI,CAAC,aAAa,GAAG,KAAK;AAC5B,EAAE,IAAI,CAAC,kBAAkB,GAAG,sBAAsB,CAAC;AACnD,GAAG,SAAS,EAAE,CAAC,EAAE,KAAK;AACtB,IAAI,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC;AAC9B,GAAG,CAAC;AACJ,GAAG,SAAS,EAAE,CAAC,EAAE,EAAE,IAAI,KAAK;AAC5B,IAAI,IAAI,CAAC,iBAAiB,CAAC,EAAE,EAAE,IAAI,CAAC;AACpC,GAAG,CAAC;AACJ,GAAG,SAAS,EAAE,CAAC,EAAE,KAAK;AACtB,IAAI,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC;AAC9B,GAAG,CAAC;AACJ,GAAG,SAAS,EAAE,MAAM;AACpB,IAAI,IAAI,CAAC,aAAa,GAAG,IAAI;AAC7B,GAAG,CAAC;AACJ,GAAG,YAAY,EAAE,MAAM;AACvB,IAAI,IAAI,CAAC,aAAa,GAAG,KAAK;AAC9B,GAAG;AACH,GAAG,CAAC;AACJ,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC,iBAAiB,CAAC,SAAS,EAAE;AAC9B,EAAE,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB;AAC1C,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,kBAAkB,EAAE;AACtE,EAAE,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,EAAE;AACrD,EAAE,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;AACxB,EAAE,MAAM,OAAO,GAAG;AAClB,GAAG,EAAE,EAAE,SAAS;AAChB,GAAG,KAAK,EAAE,EAAE;AACZ,GAAG,SAAS,EAAE,GAAG;AACjB,GAAG,SAAS,EAAE;AACd,GAAG;AACH,EAAE,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE;AACpC,GAAG,QAAQ,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC;AACxC,GAAG,cAAc,EAAE;AACnB,GAAG,CAAC;AACJ,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC,iBAAiB,CAAC,SAAS,EAAE,IAAI,EAAE;AACpC,EAAE,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB;AAC1C,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC;AAC9C,EAAE,IAAI,CAAC,IAAI,EAAE;AACb,EAAE,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC;AAChE,EAAE,IAAI,GAAG,KAAK,EAAE,EAAE;AAClB,EAAE,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC;AACrC,EAAE,MAAM,QAAQ,GAAG,CAAC;AACpB,GAAG,GAAG,QAAQ;AACd,GAAG,KAAK,EAAE,IAAI,EAAE,KAAK,IAAI,QAAQ,CAAC,KAAK;AACvC,GAAG,SAAS,EAAE,IAAI,EAAE,SAAS,IAAI,IAAI,CAAC,GAAG;AACzC,GAAG,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;AACxD,EAAE,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,CAAC;AACpD,EAAE,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC;AACjD,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,CAAC,MAAM,iBAAiB,CAAC,SAAS,EAAE;AACpC,EAAE,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB;AAC1C,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC;AAC9C,EAAE,IAAI,CAAC,IAAI,EAAE;AACb,EAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,EAAE;AACtD,EAAE,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC;AAClE,EAAE,MAAM,SAAS,GAAG,IAAI,CAAC,eAAe,KAAK,SAAS;AACtD,EAAE,MAAM,UAAU,GAAG,SAAS,GAAG,QAAQ,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,IAAI,GAAG,IAAI,CAAC,eAAe;AAC/E,EAAE,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE;AACpC,GAAG,QAAQ;AACX,GAAG,eAAe,EAAE;AACpB,GAAG,CAAC;AACJ,EAAE,IAAI,SAAS,EAAE;AACjB,GAAG,IAAI,CAAC,OAAO,GAAG,EAAE;AACpB,GAAG,IAAI,UAAU,EAAE,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC;AACrD,EAAE;AACF,CAAC;AACD;AACA,CAAC,MAAM,YAAY,GAAG;AACtB,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,gBAAgB;AAClC,EAAE,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE;AAC5B,GAAG,eAAe,EAAE,IAAI;AACxB,GAAG,aAAa,EAAE;AAClB,GAAG,CAAC;AACJ,EAAE,IAAI;AACN,GAAG,MAAM,QAAQ,GAAG,MAAM,YAAY,EAAE;AACxC,GAAG,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE;AAC7B,IAAI,QAAQ;AACZ,IAAI,cAAc,EAAE,IAAI;AACxB,IAAI,eAAe,EAAE,KAAK;AAC1B,IAAI,aAAa,EAAE;AACnB,IAAI,CAAC;AACL,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE;AACd,GAAG,MAAM,GAAG,GAAG,CAAC;AAChB,GAAG,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,GAAG,6BAA6B,GAAG,GAAG,CAAC,OAAO,IAAI,0BAA0B;AACvI,GAAG,IAAI,CAAC,gBAAgB,CAAC,EAAE,EAAE;AAC7B,IAAI,eAAe,EAAE,KAAK;AAC1B,IAAI,aAAa,EAAE;AACnB,IAAI,CAAC;AACL,EAAE;AACF,CAAC;AACD;AACA,CAAC,MAAM,WAAW,CAAC,SAAS,EAAE;AAC9B,EAAE,IAAI,IAAI,CAAC,OAAO,EAAE;AACpB,GAAG,IAAI,CAAC,KAAK,GAAG,wDAAwD;AACxE,GAAG;AACH,EAAE;AACF,EAAE,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB;AAC1C,EAAE,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,EAAE,eAAe,EAAE,SAAS,EAAE,CAAC;AACnE,EAAE,IAAI,CAAC,OAAO,GAAG,EAAE;AACnB,EAAE,IAAI,CAAC,cAAc,GAAG,IAAI;AAC5B,EAAE,IAAI,CAAC,KAAK,GAAG,EAAE;AACjB,EAAE,IAAI;AACN,GAAG,MAAM,QAAQ,GAAG,MAAM,kBAAkB,CAAC,SAAS,CAAC;AACvD,GAAG,IAAI,IAAI,CAAC,gBAAgB,KAAK,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,EAAE,eAAe,KAAK,SAAS,EAAE,IAAI,CAAC,OAAO,GAAG,QAAQ;AACtI,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE;AACd,GAAG,MAAM,GAAG,GAAG,CAAC;AAChB,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,IAAI,CAAC,KAAK,GAAG,+CAA+C;AAC7G,QAAQ,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,IAAI,CAAC,KAAK,GAAG,mBAAmB;AAChE,QAAQ,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,OAAO,IAAI,0BAA0B;AAC9D,EAAE,CAAC,SAAS;AACZ,GAAG,IAAI,CAAC,cAAc,GAAG,KAAK;AAC9B,EAAE;AACF,CAAC;AACD;AACA,CAAC,MAAM,eAAe,GAAG;AACzB,EAAE,IAAI,IAAI,CAAC,OAAO,EAAE;AACpB,GAAG,IAAI,CAAC,KAAK,GAAG,wDAAwD;AACxE,GAAG,OAAO,IAAI;AACd,EAAE;AACF,EAAE,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB;AAC1C,EAAE,IAAI,CAAC,KAAK,GAAG,EAAE;AACjB,EAAE,IAAI;AACN,GAAG,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM,aAAa,EAAE;AACvC,GAAG,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;AACzB,GAAG,MAAM,OAAO,GAAG;AACnB,IAAI,EAAE;AACN,IAAI,KAAK,EAAE,EAAE;AACb,IAAI,SAAS,EAAE,GAAG;AAClB,IAAI,SAAS,EAAE;AACf,IAAI;AACJ,GAAG,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,kBAAkB,EAAE;AACvE,GAAG,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE;AACrC,IAAI,QAAQ,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;AACpE,IAAI,cAAc,EAAE,IAAI;AACxB,IAAI,eAAe,EAAE;AACrB,IAAI,CAAC;AACL,GAAG,IAAI,CAAC,OAAO,GAAG,EAAE;AACpB,GAAG,OAAO,EAAE;AACZ,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE;AACd,GAAG,MAAM,GAAG,GAAG,CAAC;AAChB,GAAG,IAAI,CAAC,KAAK,GAAG,CAAC,yBAAyB,EAAE,GAAG,CAAC,OAAO,IAAI,eAAe,CAAC,CAAC;AAC5E,GAAG,OAAO,IAAI;AACd,EAAE;AACF,CAAC;AACD;AACA;AACA;AACA;AACA,CAAC,MAAM,IAAI,CAAC,IAAI,EAAE;AAClB,EAAE,IAAI,IAAI,CAAC,OAAO,EAAE;AACpB,EAAE,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE;AAC7B,EAAE,IAAI,CAAC,OAAO,EAAE;AAChB,EAAE,IAAI,SAAS,GAAG,IAAI,CAAC,eAAe;AACtC,EAAE,IAAI,CAAC,SAAS,EAAE;AAClB,GAAG,SAAS,GAAG,MAAM,IAAI,CAAC,eAAe,EAAE;AAC3C,GAAG,IAAI,CAAC,SAAS,EAAE;AACnB,EAAE;AACF,EAAE,MAAM,SAAS,GAAG;AACpB,GAAG,EAAE,EAAE,MAAM,CAAC,UAAU,EAAE;AAC1B,GAAG,IAAI,EAAE,MAAM;AACf,GAAG,IAAI,EAAE,OAAO;AAChB,GAAG,SAAS,EAAE,IAAI,CAAC,GAAG;AACtB,GAAG;AACH,EAAE,IAAI,CAAC,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC;AAC7C,EAAE,IAAI,CAAC,KAAK,GAAG,EAAE;AACjB,EAAE,IAAI,CAAC,OAAO,GAAG,IAAI;AACrB,EAAE,IAAI;AACN,GAAG,MAAM,SAAS,GAAG,CAAC,MAAM,eAAe,CAAC,SAAS,EAAE,OAAO,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAK,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;AACnJ,GAAG,MAAM,cAAc,GAAG;AAC1B,IAAI,EAAE,EAAE,MAAM,CAAC,UAAU,EAAE;AAC3B,IAAI,IAAI,EAAE,WAAW;AACrB,IAAI,IAAI,EAAE,SAAS,IAAI,eAAe;AACtC,IAAI,SAAS,EAAE,IAAI,CAAC,GAAG;AACvB,IAAI;AACJ,GAAG,IAAI,CAAC,OAAO,GAAG,CAAC,GAAG,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC;AACnD,GAAG,MAAM,UAAU,GAAG,IAAI,CAAC,gBAAgB;AAC3C,GAAG,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,UAAU,CAAC;AAC/C,GAAG,IAAI,IAAI,EAAE;AACb,IAAI,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE;AAC1B,IAAI,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC;AAClE,IAAI,MAAM,OAAO,GAAG,QAAQ,GAAG;AAC/B,KAAK,GAAG,QAAQ;AAChB,KAAK,SAAS,EAAE;AAChB,KAAK,GAAG;AACR,KAAK,EAAE,EAAE,SAAS;AAClB,KAAK,KAAK,EAAE,EAAE;AACd,KAAK,SAAS,EAAE,GAAG;AACnB,KAAK,SAAS,EAAE;AAChB,KAAK;AACL,IAAI,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC;AAChE,IAAI,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,EAAE,CAAC;AACvE,GAAG;AACH,GAAG,IAAI,UAAU,CAAC,YAAY,IAAI,UAAU,CAAC,cAAc,IAAI,SAAS,EAAE,SAAS,CAAC,SAAS,CAAC;AAC9F,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE;AACd,GAAG,MAAM,GAAG,GAAG,CAAC;AAChB,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE;AACjD,IAAI,IAAI,CAAC,KAAK,GAAG,+CAA+C;AAChE,IAAI,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,gBAAgB,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,CAAC;AAC3E,GAAG,CAAC,MAAM,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,IAAI,CAAC,KAAK,GAAG,mBAAmB;AAClE,QAAQ,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,OAAO,IAAI,iBAAiB;AACrD,EAAE,CAAC,SAAS;AACZ,GAAG,IAAI,CAAC,OAAO,GAAG,KAAK;AACvB,EAAE;AACF,CAAC;AACD,CAAC,KAAK,GAAG;AACT,EAAE,YAAY,EAAE;AAChB,EAAE,IAAI,CAAC,OAAO,GAAG,EAAE;AACnB,EAAE,IAAI,CAAC,KAAK,GAAG,EAAE;AACjB,EAAE,IAAI,CAAC,UAAU,mBAAmB,IAAI,GAAG,EAAE;AAC7C,EAAE,IAAI,IAAI,CAAC,kBAAkB,EAAE;AAC/B,GAAG,IAAI;AACP,IAAI,IAAI,CAAC,kBAAkB,EAAE;AAC7B,GAAG,CAAC,CAAC,OAAO,GAAG,EAAE;AACjB,IAAI,OAAO,CAAC,IAAI,CAAC,6DAA6D,EAAE,GAAG,CAAC;AACpF,GAAG;AACH,GAAG,IAAI,CAAC,kBAAkB,GAAG,IAAI;AACjC,EAAE;AACF,EAAE,IAAI,CAAC,aAAa,GAAG,KAAK;AAC5B,CAAC;AACD,CAAC;AACE,IAAC,IAAI,GAAG,IAAI,WAAW;AAC1B;AACA;AACA,IAAI,gBAAgB,GAAG,MAAM;AAC7B,CAAC,SAAS,GAAG,EAAE;AACf,CAAC,QAAQ,GAAG,SAAS;AACrB,CAAC,OAAO,GAAG,KAAK;AAChB,CAAC,MAAM,GAAG,KAAK;AACf,CAAC,KAAK,GAAG,EAAE;AACX,CAAC,OAAO,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;AACzG,CAAC,IAAI,MAAM,GAAG;AACd,EAAE,OAAO,IAAI,CAAC,OAAO,EAAE;AACvB,CAAC;AACD,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE;AACrB,EAAE,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC;AAC9B,CAAC;AACD,CAAC,MAAM,IAAI,CAAC,KAAK,GAAG,KAAK,EAAE;AAC3B,EAAE,IAAI,IAAI,CAAC,OAAO,EAAE;AACpB,EAAE,IAAI,IAAI,CAAC,MAAM,IAAI,CAAC,KAAK,EAAE;AAC7B,EAAE,IAAI,CAAC,OAAO,GAAG,IAAI;AACrB,EAAE,IAAI,CAAC,KAAK,GAAG,EAAE;AACjB,EAAE,IAAI;AACN,GAAG,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,MAAM,cAAc,EAAE;AACzD,GAAG,IAAI,CAAC,SAAS,GAAG,SAAS;AAC7B,GAAG,IAAI,CAAC,QAAQ,GAAG,QAAQ;AAC3B,GAAG,IAAI,CAAC,MAAM,GAAG,IAAI;AACrB,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE;AACd,GAAG,MAAM,GAAG,GAAG,CAAC;AAChB,GAAG,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,OAAO,IAAI,0BAA0B;AACjF,EAAE,CAAC,SAAS;AACZ,GAAG,IAAI,CAAC,OAAO,GAAG,KAAK;AACvB,EAAE;AACF,CAAC;AACD,CAAC,MAAM,QAAQ,CAAC,EAAE,EAAE;AACpB,EAAE,IAAI,EAAE,KAAK,IAAI,CAAC,QAAQ,EAAE;AAC5B,EAAE,IAAI,IAAI,CAAC,OAAO,EAAE;AACpB,GAAG,IAAI,CAAC,KAAK,GAAG,wDAAwD;AACxE,GAAG,MAAM,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC;AAC9B,EAAE;AACF,EAAE,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ;AAChC,EAAE,IAAI,CAAC,QAAQ,GAAG,EAAE;AACpB,EAAE,IAAI;AACN,GAAG,MAAM,iBAAiB,CAAC,EAAE,CAAC;AAC9B,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC;AACnC,EAAE,CAAC,CAAC,OAAO,CAAC,EAAE;AACd,GAAG,IAAI,CAAC,QAAQ,GAAG,QAAQ;AAC3B,GAAG,MAAM,GAAG,GAAG,CAAC;AAChB,GAAG,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,OAAO,IAAI,2BAA2B;AAC1D,GAAG,MAAM,CAAC;AACV,EAAE;AACF,CAAC;AACD,CAAC;AACE,IAAC,gBAAgB,GAAG,IAAI,gBAAgB;AAC3C;AACA;AACA,SAAS,mBAAmB,CAAC,GAAG,EAAE;AAClC,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,IAAI;AACtB,CAAC,IAAI;AACL,EAAE,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,QAAQ;AACpC,EAAE,OAAO,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,WAAW,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,sBAAsB;AAC1G,CAAC,CAAC,CAAC,MAAM;AACT,EAAE,OAAO,IAAI;AACb,CAAC;AACD;AACA;AACA;AACA,SAAS,YAAY,CAAC,UAAU,EAAE,OAAO,EAAE;AAC3C,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,KAAK;AACtC;AACA,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,OAAO;AAC5B,EAAE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,gBAAgB,CAAC,MAAM,CAAC;AACvD,EAAE,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,gBAAgB,CAAC,SAAS,CAAC;AAC7D,EAAE,MAAM,mBAAmB,GAAG,OAAO,CAAC,MAAM,mBAAmB,CAAC,MAAM,EAAE,EAAE,GAAG,CAAC,CAAC;AAC/E,EAAE,IAAI,SAAS,GAAG,KAAK;AACvB,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,yCAAyC,CAAC,CAAC;AAC9D,EAAE,IAAI,gBAAgB,CAAC,KAAK,EAAE;AAC9B,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAC/B,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,iDAAiD,EAAE,WAAW,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC;AACjH,EAAE,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AACtC,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,kFAAkF,CAAC,CAAC;AACvG,EAAE,MAAM,UAAU,GAAG,iBAAiB,CAAC,SAAS,EAAE,CAAC;AACnD,EAAE,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC,MAAM,EAAE,OAAO,GAAG,QAAQ,EAAE,OAAO,EAAE,EAAE;AACrF,GAAG,IAAI,EAAE,GAAG,UAAU,CAAC,OAAO,CAAC;AAC/B,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,qBAAqB,EAAE,UAAU,CAAC,yBAAyB,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,KAAK,MAAM,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,EAAE,CAAC,EAAE,KAAK,MAAM,EAAE,EAAE,EAAE,GAAG,MAAM,GAAG,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,8EAA8E,EAAE,WAAW,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AAC5U,GAAG,IAAI,EAAE,CAAC,EAAE,KAAK,MAAM,EAAE,EAAE,EAAE,EAAE;AAC/B,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAChC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,oDAAoD,CAAC,CAAC;AAC3E,GAAG,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AACvC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,qDAAqD,EAAE,WAAW,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,uBAAuB,CAAC,CAAC;AACxH,EAAE;AACF,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,yDAAyD,CAAC,CAAC;AAC9E,EAAE,IAAI,mBAAmB,EAAE,EAAE;AAC7B,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAC/B,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,gFAAgF,CAAC,CAAC;AACtG,EAAE,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AACtC,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,gHAAgH,CAAC,CAAC;AACrI,CAAC,CAAC,CAAC;AACH;AACA;AACA;AACA,SAAS,gBAAgB,CAAC,UAAU,EAAE,OAAO,EAAE;AAC/C,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,KAAK;AACtC,EAAE,IAAI,IAAI,GAAG,KAAK;AAClB,EAAE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,gBAAgB,CAAC,MAAM,CAAC;AACvD,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,0EAA0E,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,CAAC,oBAAoB,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,qBAAqB,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,cAAc,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,qBAAqB,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,EAAE,gBAAgB,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,kgBAAkgB,EAAE,WAAW,CAAC,MAAM,EAAE,EAAE,KAAK,IAAI,WAAW,CAAC,CAAC,+EAA+E,CAAC,CAAC;AACx/B,EAAE,MAAM,CAAC,UAAU,EAAE;AACrB,GAAG,IAAI;AACP,GAAG,KAAK,EAAE,oBAAoB;AAC9B,GAAG,OAAO,EAAE,MAAM,IAAI,GAAG,KAAK;AAC9B,GAAG,KAAK,EAAE,OAAO;AACjB,GAAG,QAAQ,EAAE,CAAC,UAAU,KAAK;AAC7B,IAAI,YAAY,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,KAAK,EAAE,CAAC;AAC9D,GAAG,CAED,CAAC,CAAC;AACJ,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;AAC5B,CAAC,CAAC,CAAC;AACH;AACA;AACA;AACA,IAAI,gBAAgB,GAAG,gDAAgD;AACvE;AACA,SAAS,mBAAmB,CAAC,KAAK,EAAE;AACpC,CAAC,MAAM,OAAO,GAAG,CAAC,KAAK,IAAI,EAAE,EAAE,IAAI,EAAE;AACrC,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,kBAAkB;AACxC,CAAC,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,CAAC,OAAO,CAAC;AAC7C,CAAC,IAAI,KAAK,EAAE;AACZ,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACjC,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,OAAO,cAAc,CAAC,EAAE,CAAC;AAClD,CAAC;AACD,CAAC,OAAO,OAAO;AACf;AACA;AACA;AACA,SAAS,YAAY,CAAC,UAAU,EAAE,OAAO,EAAE;AAC3C,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,KAAK;AACtC,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,OAAO;AACzB,EAAE,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,mBAAmB,CAAC,KAAK,CAAC,CAAC;AAC3D,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;AACrD,CAAC,CAAC,CAAC;AACH;AACA;AACA;AACA,SAAS,WAAW,CAAC,UAAU,EAAE,OAAO,EAAE;AAC1C,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,KAAK;AACtC;AACA,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,OAAO;AAC5B,EAAE,MAAM,gBAAgB,GAAG,EAAE;AAC7B,EAAE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,gBAAgB,CAAC,MAAM,CAAC;AACvD,EAAE,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,IAAI,GAAG,IAAI,CAAC;AACjG,EAAE,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,aAAa,EAAE,EAAE,QAAQ,IAAI,EAAE,CAAC;AACjE,EAAE,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,aAAa,EAAE,EAAE,eAAe,IAAI,KAAK,CAAC;AAC1E,EAAE,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,aAAa,EAAE,EAAE,aAAa,IAAI,EAAE,CAAC;AACnE,EAAE,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC;AAC7D,EAAE,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC;AAC9E,EAAE,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,MAAM,GAAG,gBAAgB,CAAC,CAAC;AACxF,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,yCAAyC,CAAC,CAAC;AAC9D,EAAE,IAAI,IAAI,CAAC,OAAO,EAAE;AACpB,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAC/B,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,+FAA+F,CAAC,CAAC;AACrH,EAAE,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AACtC,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC;AAC9B,EAAE,IAAI,OAAO,EAAE,EAAE;AACjB,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAC/B,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,kCAAkC,CAAC,CAAC;AACxD,GAAG,OAAO,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,CAAC;AACpC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,2CAA2C,CAAC,CAAC;AACjE,EAAE,CAAC,MAAM,IAAI,KAAK,EAAE,EAAE;AACtB,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAC/B,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,oEAAoE,EAAE,WAAW,CAAC,KAAK,EAAE,CAAC,CAAC,mFAAmF,CAAC,CAAC;AACpM,EAAE,CAAC,MAAM,IAAI,QAAQ,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE;AACtC,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAC/B,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,6EAA6E,CAAC,CAAC;AACnG,EAAE,CAAC,MAAM;AACT,GAAG,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AAChC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,oFAAoF,CAAC,CAAC;AAC1G,GAAG,MAAM,UAAU,GAAG,iBAAiB,CAAC,eAAe,EAAE,CAAC;AAC1D,GAAG,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC,MAAM,EAAE,OAAO,GAAG,QAAQ,EAAE,OAAO,EAAE,EAAE;AACtF,IAAI,IAAI,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC;AAC/B,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,qBAAqB,EAAE,UAAU,CAAC,uCAAuC,EAAE,MAAM,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,KAAK,eAAe,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,EAAE,KAAK,eAAe,EAAE,GAAG,MAAM,GAAG,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,gFAAgF,CAAC,CAAC;AAC7X,IAAI,YAAY,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;AAChD,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;AAC9B,IAAI,IAAI,CAAC,CAAC,EAAE,KAAK,eAAe,EAAE,EAAE;AACpC,KAAK,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AACjC,KAAK,UAAU,CAAC,IAAI,CAAC,CAAC,qDAAqD,CAAC,CAAC;AAC7E,IAAI,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AACxC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,uDAAuD,EAAE,WAAW,CAAC,kBAAkB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC;AACpJ,GAAG;AACH,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,eAAe,CAAC,CAAC;AACrC,GAAG,IAAI,aAAa,EAAE,GAAG,CAAC,EAAE;AAC5B,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAChC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,gEAAgE,EAAE,WAAW,CAAC,aAAa,EAAE,CAAC,CAAC,eAAe,CAAC,CAAC;AACrI,GAAG,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AACvC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;AAC9B,EAAE;AACF,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,kHAAkH,EAAE,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,uLAAuL,CAAC,CAAC;AACrW,CAAC,CAAC,CAAC;AACH;AACA;AACA;AACA,SAAS,aAAa,CAAC,UAAU,EAAE,OAAO,EAAE;AAC5C,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,KAAK;AACtC,EAAE,IAAI,IAAI,GAAG,KAAK;AAClB,EAAE,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,gBAAgB,CAAC,MAAM,CAAC;AACvD,EAAE,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,MAAM,EAAE,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC,IAAI,IAAI,GAAG,IAAI,CAAC;AACjG,EAAE,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,aAAa,EAAE,EAAE,QAAQ,IAAI,EAAE,CAAC;AACjE,EAAE,MAAM,eAAe,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,eAAe,CAAC;AAC7D,EAAE,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,aAAa,CAAC;AACzD,EAAE,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,eAAe,EAAE,CAAC,IAAI,IAAI,CAAC;AACjG,EAAE,MAAM,YAAY,GAAG,OAAO,CAAC,MAAM,aAAa,EAAE,GAAG,mBAAmB,CAAC,aAAa,EAAE,CAAC,KAAK,CAAC,GAAG,aAAa,CAAC;AAClH,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,0EAA0E,EAAE,IAAI,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC,sBAAsB,EAAE,IAAI,CAAC,OAAO,EAAE,YAAY,EAAE,CAAC,CAAC,qWAAqW,EAAE,UAAU,CAAC,mBAAmB,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC,mBAAmB,EAAE,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,GAAG,wBAAwB,GAAG,2BAA2B,CAAC,CAAC,2CAA2C,EAAE,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,+EAA+E,CAAC,CAAC;AACz2B,EAAE,MAAM,CAAC,UAAU,EAAE;AACrB,GAAG,IAAI;AACP,GAAG,KAAK,EAAE,CAAC,YAAY,EAAE,SAAS,CAAC,MAAM,EAAE,EAAE,KAAK,IAAI,eAAe,CAAC,CAAC,CAAC;AACxE,GAAG,OAAO,EAAE,MAAM,IAAI,GAAG,KAAK;AAC9B,GAAG,KAAK,EAAE,OAAO;AACjB,GAAG,QAAQ,EAAE,CAAC,UAAU,KAAK;AAC7B,IAAI,WAAW,CAAC,UAAU,EAAE,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,KAAK,EAAE,CAAC;AAC7D,GAAG,CAED,CAAC,CAAC;AACJ,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC;AAC5B,CAAC,CAAC,CAAC;AACH;AACA;AACA;AACA,SAAS,YAAY,CAAC,UAAU,EAAE,OAAO,EAAE;AAC3C,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,KAAK;AACtC,EAAE,MAAM,iBAAiB,GAAG,EAAE;AAC9B,EAAE,IAAI,OAAO,GAAG,KAAK;AACrB,EAAE,IAAI,qBAAqB,GAAG,IAAI;AAClC,EAAE,SAAS,CAAC,MAAM;AAClB,GAAG,MAAM,CAAC,QAAQ,EAAE,mBAAmB,GAAG,KAAK,CAAC;AAChD,GAAG,qBAAqB,IAAI;AAC5B,GAAG,qBAAqB,GAAG,IAAI;AAC/B,GAAG,YAAY,EAAE;AACjB,EAAE,CAAC,CAAC;AACJ,EAAE,IAAI,SAAS,GAAG,OAAO,CAAC,MAAM,OAAO,CAAC;AACxC,EAAE,IAAI,YAAY,GAAG,OAAO,CAAC,MAAM,OAAO,CAAC;AAC3C,EAAE,IAAI,WAAW,GAAG,OAAO,CAAC,MAAM,UAAU,CAAC,MAAM,KAAK,WAAW,CAAC;AACpE,EAAE,IAAI,cAAc,GAAG,OAAO,CAAC,MAAM,UAAU,CAAC,MAAM,KAAK,cAAc,CAAC;AAC1E,EAAE,IAAI,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,IAAI,CAAC,OAAO,CAAC;AACvF,EAAE,IAAI,UAAU,GAAG,OAAO,CAAC,MAAM,UAAU,CAAC,MAAM,KAAK,UAAU,CAAC;AAClE,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,oFAAoF,CAAC,CAAC;AACzG,EAAE,IAAI,WAAW,EAAE,IAAI,UAAU,CAAC,iBAAiB,EAAE;AACrD,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAC/B,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,4DAA4D,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,UAAU,CAAC,iBAAiB,CAAC,MAAM,GAAG,iBAAiB,GAAG,UAAU,CAAC,iBAAiB,CAAC,KAAK,CAAC,CAAC,EAAE,iBAAiB,CAAC,GAAG,GAAG,GAAG,UAAU,CAAC,iBAAiB,CAAC,CAAC,OAAO,CAAC,CAAC;AAC/S,EAAE,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AACtC,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC;AAC9B,EAAE,IAAI,UAAU,CAAC,eAAe,EAAE;AAClC,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAC/B,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,koBAAkoB,CAAC,CAAC;AACxpB,EAAE,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AACtC,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC;AAC9B,EAAE,IAAI,YAAY,EAAE,EAAE;AACtB,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAC/B,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,UAAU,CAAC,yBAAyB,EAAE,MAAM,EAAE;AAC3E,IAAI,cAAc,EAAE,UAAU,CAAC,cAAc;AAC7C,IAAI,oBAAoB,EAAE,UAAU;AACpC,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,UAAU,CAAC,cAAc,GAAG,2BAA2B,GAAG,0BAA0B,CAAC,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,UAAU,CAAC,cAAc,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,UAAU,EAAE,GAAG,+CAA+C,GAAG,UAAU,CAAC,cAAc,GAAG,6CAA6C,GAAG,6CAA6C,CAAC,CAAC,gRAAgR,CAAC,CAAC;AACjoB,GAAG,IAAI,UAAU,CAAC,cAAc,EAAE;AAClC,IAAI,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAChC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,sCAAsC,EAAE,UAAU,CAAC,eAAe,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC,iDAAiD,EAAE,UAAU,CAAC,eAAe,EAAE,MAAM,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC;AAClQ,GAAG,CAAC,MAAM;AACV,IAAI,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AACjC,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,oIAAoI,CAAC,CAAC;AAC3J,GAAG;AACH,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,uBAAuB,CAAC,CAAC;AAC7C,EAAE,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AACtC,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,gBAAgB,EAAE,UAAU,CAAC,yBAAyB,EAAE,MAAM,EAAE;AACnF,GAAG,kBAAkB,EAAE,WAAW,EAAE;AACpC,GAAG,sBAAsB,EAAE,YAAY,EAAE,IAAI,cAAc,EAAE;AAC7D,GAAG,oBAAoB,EAAE,CAAC,SAAS;AACnC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC,SAAS,EAAE,IAAI,YAAY,EAAE,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,YAAY,EAAE,CAAC,SAAS,EAAE,GAAG,yBAAyB,GAAG,WAAW,EAAE,GAAG,gBAAgB,GAAG,cAAc,EAAE,GAAG,eAAe,GAAG,YAAY,EAAE,GAAG,kBAAkB,GAAG,iBAAiB,CAAC,CAAC,EAAE,IAAI,CAAC,cAAc,EAAE,WAAW,EAAE,CAAC,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,GAAG,sFAAsF,GAAG,WAAW,EAAE,GAAG,gBAAgB,GAAG,cAAc,EAAE,GAAG,eAAe,GAAG,YAAY,EAAE,GAAG,kBAAkB,GAAG,wDAAwD,CAAC,CAAC,CAAC,CAAC,CAAC;AACxkB,EAAE,IAAI,CAAC,SAAS,EAAE,EAAE;AACpB,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAC/B,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,kkBAAkkB,CAAC,CAAC;AACxlB,EAAE,CAAC,MAAM,IAAI,cAAc,EAAE,IAAI,YAAY,EAAE,EAAE;AACjD,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAC/B,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,oEAAoE,CAAC,CAAC;AAC1F,EAAE,CAAC,MAAM,IAAI,WAAW,EAAE,EAAE;AAC5B,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAC/B,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,qQAAqQ,CAAC,CAAC;AAC3R,EAAE,CAAC,MAAM;AACT,GAAG,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AAChC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,oeAAoe,CAAC,CAAC;AAC1f,EAAE;AACF,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,yEAAyE,EAAE,WAAW,CAAC,WAAW,EAAE,IAAI,UAAU,CAAC,iBAAiB,GAAG,UAAU,CAAC,iBAAiB,GAAG,WAAW,EAAE,GAAG,WAAW,GAAG,cAAc,EAAE,GAAG,cAAc,GAAG,YAAY,EAAE,GAAG,8BAA8B,GAAG,UAAU,EAAE,GAAG,uBAAuB,GAAG,UAAU,CAAC,cAAc,GAAG,qBAAqB,GAAG,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC;AAC7Z,CAAC,CAAC,CAAC;AACH;AACA;AACA;AACA,SAAS,QAAQ,CAAC,UAAU,EAAE;AAC9B,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,0PAA0P,CAAC,CAAC;AAC9Q;AACA,SAAS,MAAM,CAAC,UAAU,EAAE,OAAO,EAAE;AACrC,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,UAAU,KAAK;AACtC,EAAE,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,IAAI,CAAC,GAAG,EAAE,QAAQ,IAAI,EAAE,CAAC;AAC1D,EAAE,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,QAAQ,EAAE,KAAK,QAAQ,IAAI,QAAQ,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;AAC5F,EAAE,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,QAAQ,EAAE,KAAK,OAAO,IAAI,QAAQ,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;AAChG,EAAE,MAAM,iBAAiB,GAAG,OAAO,CAAC,MAAM,QAAQ,EAAE,KAAK,WAAW,IAAI,QAAQ,EAAE,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;AAC5G,EAAE,MAAM,gBAAgB,GAAG,OAAO,CAAC,MAAM;AACzC,GAAG,OAAO,mBAAmB,CAAC,gBAAgB,CAAC,MAAM,EAAE,GAAG,CAAC;AAC3D,EAAE,CAAC,CAAC;AACJ,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,iYAAiY,CAAC,CAAC;AACtZ,EAAE,IAAI,OAAO,EAAE,EAAE;AACjB,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAC/B,GAAG,UAAU,CAAC,UAAU,EAAE;AAC1B,IAAI,IAAI,EAAE,OAAO;AACjB,IAAI,SAAS,EAAE,cAAc;AAC7B,IAAI,KAAK,EAAE,MAAM;AACjB,IAAI,IAAI,EAAE;AACV,IAAI,CAAC;AACL,EAAE,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AACtC,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC;AAC9B,EAAE,cAAc,CAAC,UAAU,EAAE,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,EAAE,CAAC;AACzE,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;AAC7B,EAAE,IAAI,aAAa,EAAE,EAAE;AACvB,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAC/B,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,2CAA2C,CAAC,CAAC;AACjE,GAAG,gBAAgB,CAAC,UAAc,CAAC;AACnC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC;AAC9B,GAAG,aAAa,CAAC,UAAc,CAAC;AAChC,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,cAAc,CAAC,CAAC;AACpC,EAAE,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AACtC,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC;AAC9B,EAAE,IAAI,aAAa,EAAE,IAAI,iBAAiB,EAAE,EAAE;AAC9C,GAAG,UAAU,CAAC,IAAI,CAAC,WAAW,CAAC;AAC/B,GAAG,UAAU,CAAC,UAAc,CAAC;AAC7B,EAAE,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,YAAY,CAAC;AACtC,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,CAAC;AAC9B,EAAE,YAAY,CAAC,UAAc,CAAC;AAC9B,EAAE,UAAU,CAAC,IAAI,CAAC,CAAC,4BAA4B,CAAC,CAAC;AACjD,CAAC,CAAC,CAAC;AACH;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { p as ensure_array_like, e as attr_class, a8 as stringify, d as attr, r as escape_html } from './dev-B6xUe35c.js';
|
|
2
2
|
import 'node:module';
|
|
3
|
-
import { n as notifications } from './theme-state.svelte-
|
|
3
|
+
import { n as notifications } from './theme-state.svelte-CE13yM0n.js';
|
|
4
4
|
|
|
5
5
|
//#region src/lib/components/common/UpdateBanner.svelte
|
|
6
6
|
function UpdateBanner($$renderer, $$props) {
|
|
@@ -57,4 +57,4 @@ function _layout($$renderer, $$props) {
|
|
|
57
57
|
}
|
|
58
58
|
|
|
59
59
|
export { _layout as default };
|
|
60
|
-
//# sourceMappingURL=_layout.svelte-
|
|
60
|
+
//# sourceMappingURL=_layout.svelte-COQuY-BN.js.map
|