@openpalm/ui 0.12.44-beta.2 → 0.12.44-beta.4
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/chunks/AcSAasHS.js +1 -0
- package/build/client/_app/immutable/chunks/AcSAasHS.js.br +2 -0
- package/build/client/_app/immutable/chunks/AcSAasHS.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{BKCtXWas.js → BJznZTLz.js} +1 -1
- package/build/client/_app/immutable/chunks/BJznZTLz.js.br +0 -0
- package/build/client/_app/immutable/chunks/BJznZTLz.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{BykBfG91.js → BZAs55y_.js} +1 -1
- package/build/client/_app/immutable/chunks/BZAs55y_.js.br +0 -0
- package/build/client/_app/immutable/chunks/BZAs55y_.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BwflfDsq.js +3 -0
- package/build/client/_app/immutable/chunks/BwflfDsq.js.br +0 -0
- package/build/client/_app/immutable/chunks/BwflfDsq.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{DpDZsrUx.js → CKVZpD28.js} +1 -1
- package/build/client/_app/immutable/chunks/CKVZpD28.js.br +0 -0
- package/build/client/_app/immutable/chunks/CKVZpD28.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{odiNZBok.js → DnqsAfBD.js} +1 -1
- package/build/client/_app/immutable/chunks/DnqsAfBD.js.br +0 -0
- package/build/client/_app/immutable/chunks/DnqsAfBD.js.gz +0 -0
- package/build/client/_app/immutable/chunks/YN5ShA1l.js +1 -0
- package/build/client/_app/immutable/chunks/YN5ShA1l.js.br +0 -0
- package/build/client/_app/immutable/chunks/YN5ShA1l.js.gz +0 -0
- package/build/client/_app/immutable/entry/{app.B4QXVY5C.js → app.BA1E2ohX.js} +2 -2
- package/build/client/_app/immutable/entry/app.BA1E2ohX.js.br +0 -0
- package/build/client/_app/immutable/entry/app.BA1E2ohX.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.DXV2fqTa.js +1 -0
- package/build/client/_app/immutable/entry/start.DXV2fqTa.js.br +1 -0
- package/build/client/_app/immutable/entry/start.DXV2fqTa.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{0.DAxgC2To.js → 0.C-cj1xnK.js} +1 -1
- package/build/client/_app/immutable/nodes/0.C-cj1xnK.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.C-cj1xnK.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{1.zdgwnkll.js → 1.CzAbiYtD.js} +1 -1
- package/build/client/_app/immutable/nodes/1.CzAbiYtD.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.CzAbiYtD.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{10.DIo8JL3K.js → 10.DxUSU-lz.js} +1 -1
- package/build/client/_app/immutable/nodes/10.DxUSU-lz.js.br +0 -0
- package/build/client/_app/immutable/nodes/10.DxUSU-lz.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{4.CMr3pbmP.js → 4.C4___y-c.js} +1 -1
- package/build/client/_app/immutable/nodes/4.C4___y-c.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.C4___y-c.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{5.DFnVNk42.js → 5.CwNS_H63.js} +1 -1
- package/build/client/_app/immutable/nodes/5.CwNS_H63.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.CwNS_H63.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{6.BHz3oYHQ.js → 6.Bm8-4wfw.js} +1 -1
- package/build/client/_app/immutable/nodes/6.Bm8-4wfw.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.Bm8-4wfw.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{7.BtYu1NBj.js → 7.DiZzljlc.js} +1 -1
- package/build/client/_app/immutable/nodes/7.DiZzljlc.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.DiZzljlc.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{8.BSEbjvqM.js → 8.4vwaOVRY.js} +1 -1
- package/build/client/_app/immutable/nodes/8.4vwaOVRY.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.4vwaOVRY.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{9.CkZQS54v.js → 9.DOM38Fxh.js} +1 -1
- package/build/client/_app/immutable/nodes/9.DOM38Fxh.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.DOM38Fxh.js.gz +0 -0
- package/build/client/_app/version.json +1 -1
- package/build/client/_app/version.json.br +0 -0
- package/build/client/_app/version.json.gz +0 -0
- package/build/server/chunks/{0-D_KtCyiy.js → 0-BLQ3qoWN.js} +2 -2
- package/build/server/chunks/{0-D_KtCyiy.js.map → 0-BLQ3qoWN.js.map} +1 -1
- package/build/server/chunks/1-BvUMS98T.js +9 -0
- package/build/server/chunks/{1-CBSvcbcR.js.map → 1-BvUMS98T.js.map} +1 -1
- package/build/server/chunks/{10-B6OcWgRh.js → 10-BDhR4-Uu.js} +6 -6
- package/build/server/chunks/{10-B6OcWgRh.js.map → 10-BDhR4-Uu.js.map} +1 -1
- package/build/server/chunks/{4-C5OowV4P.js → 4-BvnjGWkC.js} +3 -3
- package/build/server/chunks/{4-C5OowV4P.js.map → 4-BvnjGWkC.js.map} +1 -1
- package/build/server/chunks/{5-C3z33Kel.js → 5-DvbbPyY9.js} +3 -3
- package/build/server/chunks/{5-C3z33Kel.js.map → 5-DvbbPyY9.js.map} +1 -1
- package/build/server/chunks/6-D5NC8xTz.js +9 -0
- package/build/server/chunks/{6-CTZDDb7P.js.map → 6-D5NC8xTz.js.map} +1 -1
- package/build/server/chunks/{7-CYOthDsD.js → 7-CL0d1m29.js} +3 -3
- package/build/server/chunks/{7-CYOthDsD.js.map → 7-CL0d1m29.js.map} +1 -1
- package/build/server/chunks/{8-CnvFjK3Q.js → 8-CMPBZc2N.js} +3 -3
- package/build/server/chunks/{8-CnvFjK3Q.js.map → 8-CMPBZc2N.js.map} +1 -1
- package/build/server/chunks/{9-B-Pes-kN.js → 9-U30Z0uuM.js} +3 -3
- package/build/server/chunks/{9-B-Pes-kN.js.map → 9-U30Z0uuM.js.map} +1 -1
- package/build/server/chunks/{Navbar-EaMalVM8.js → Navbar-u5KgOHs4.js} +4 -4
- package/build/server/chunks/{Navbar-EaMalVM8.js.map → Navbar-u5KgOHs4.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-BcmGVh1D.js → _page.svelte-B1WjclYR.js} +6 -6
- package/build/server/chunks/{_page.svelte-BcmGVh1D.js.map → _page.svelte-B1WjclYR.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-BLfHfErj.js → _page.svelte-BqWCR3kW.js} +3 -3
- package/build/server/chunks/{_page.svelte-BLfHfErj.js.map → _page.svelte-BqWCR3kW.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-bfmi4TFI.js → _page.svelte-CZOPXebf.js} +6 -6
- package/build/server/chunks/{_page.svelte-bfmi4TFI.js.map → _page.svelte-CZOPXebf.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-DYbPitCk.js → _page.svelte-Cs3LzPPH.js} +6 -6
- package/build/server/chunks/{_page.svelte-DYbPitCk.js.map → _page.svelte-Cs3LzPPH.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-CU9DqEl4.js → _page.svelte-DCfiXPeg.js} +4 -4
- package/build/server/chunks/{_page.svelte-CU9DqEl4.js.map → _page.svelte-DCfiXPeg.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-C0SUSu9_.js → _page.svelte-DLFBvep9.js} +2 -2
- package/build/server/chunks/{_page.svelte-C0SUSu9_.js.map → _page.svelte-DLFBvep9.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-C9vEEY_y.js → _page.svelte-DhDG6cI0.js} +3 -3
- package/build/server/chunks/{_page.svelte-C9vEEY_y.js.map → _page.svelte-DhDG6cI0.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BjT4r9Wa.js → _server.ts-2_Ad34NH.js} +5 -5
- package/build/server/chunks/{_server.ts-BjT4r9Wa.js.map → _server.ts-2_Ad34NH.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Crw2xWbv.js → _server.ts-4yLWlsdx.js} +5 -5
- package/build/server/chunks/{_server.ts-Crw2xWbv.js.map → _server.ts-4yLWlsdx.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DM1ae7YM.js → _server.ts-7HW0Z9O2.js} +5 -5
- package/build/server/chunks/{_server.ts-DM1ae7YM.js.map → _server.ts-7HW0Z9O2.js.map} +1 -1
- package/build/server/chunks/{_server.ts-x3Bsd3bn.js → _server.ts-8wd8rNeG.js} +5 -5
- package/build/server/chunks/{_server.ts-x3Bsd3bn.js.map → _server.ts-8wd8rNeG.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DLZc86ci.js → _server.ts-B2AVKoUw.js} +5 -5
- package/build/server/chunks/{_server.ts-DLZc86ci.js.map → _server.ts-B2AVKoUw.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BfjPHxLv.js → _server.ts-B6yiEV8m.js} +6 -6
- package/build/server/chunks/{_server.ts-BfjPHxLv.js.map → _server.ts-B6yiEV8m.js.map} +1 -1
- package/build/server/chunks/{_server.ts-1uNJogSG.js → _server.ts-B7VTiQSO.js} +6 -6
- package/build/server/chunks/{_server.ts-1uNJogSG.js.map → _server.ts-B7VTiQSO.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Dw10jZFp.js → _server.ts-B8PKU6u7.js} +6 -6
- package/build/server/chunks/{_server.ts-Dw10jZFp.js.map → _server.ts-B8PKU6u7.js.map} +1 -1
- package/build/server/chunks/{_server.ts-tmlPD-eh.js → _server.ts-B9qSeW8F.js} +6 -6
- package/build/server/chunks/{_server.ts-tmlPD-eh.js.map → _server.ts-B9qSeW8F.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B7szQHio.js → _server.ts-BGt_gN2P.js} +5 -5
- package/build/server/chunks/{_server.ts-B7szQHio.js.map → _server.ts-BGt_gN2P.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B2_JPh3v.js → _server.ts-BMDzxZgO.js} +6 -6
- package/build/server/chunks/{_server.ts-B2_JPh3v.js.map → _server.ts-BMDzxZgO.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BB6_r6xt.js → _server.ts-BOiQXIyo.js} +5 -5
- package/build/server/chunks/{_server.ts-BB6_r6xt.js.map → _server.ts-BOiQXIyo.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Of5aGuzq.js → _server.ts-BX_f3vix.js} +5 -5
- package/build/server/chunks/{_server.ts-Of5aGuzq.js.map → _server.ts-BX_f3vix.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CrbNy-Pb.js → _server.ts-BY8qj87H.js} +5 -5
- package/build/server/chunks/{_server.ts-CrbNy-Pb.js.map → _server.ts-BY8qj87H.js.map} +1 -1
- package/build/server/chunks/{_server.ts-zEqGaSIH.js → _server.ts-BgqEDQes.js} +5 -5
- package/build/server/chunks/{_server.ts-zEqGaSIH.js.map → _server.ts-BgqEDQes.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CwuQkRpj.js → _server.ts-BiIgPmU3.js} +5 -5
- package/build/server/chunks/{_server.ts-CwuQkRpj.js.map → _server.ts-BiIgPmU3.js.map} +1 -1
- package/build/server/chunks/{_server.ts-mr-bAV39.js → _server.ts-BjSWL3Il.js} +5 -5
- package/build/server/chunks/{_server.ts-mr-bAV39.js.map → _server.ts-BjSWL3Il.js.map} +1 -1
- package/build/server/chunks/{_server.ts-6U5VN79P.js → _server.ts-BmEuPDca.js} +5 -5
- package/build/server/chunks/{_server.ts-6U5VN79P.js.map → _server.ts-BmEuPDca.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CQgRj4ox.js → _server.ts-BmGhvEkW.js} +2 -2
- package/build/server/chunks/{_server.ts-CQgRj4ox.js.map → _server.ts-BmGhvEkW.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Bh1wk7Oe.js → _server.ts-BpG4HhrA.js} +5 -5
- package/build/server/chunks/{_server.ts-Bh1wk7Oe.js.map → _server.ts-BpG4HhrA.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CJ4jkWDq.js → _server.ts-BpL2riwT.js} +7 -7
- package/build/server/chunks/{_server.ts-CJ4jkWDq.js.map → _server.ts-BpL2riwT.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CTBIEb1p.js → _server.ts-BsjlSv_u.js} +5 -5
- package/build/server/chunks/{_server.ts-CTBIEb1p.js.map → _server.ts-BsjlSv_u.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DMWqjfC6.js → _server.ts-BtQTA5QT.js} +5 -5
- package/build/server/chunks/{_server.ts-DMWqjfC6.js.map → _server.ts-BtQTA5QT.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DKwzDUeB.js → _server.ts-Bv6t8IPb.js} +5 -5
- package/build/server/chunks/{_server.ts-DKwzDUeB.js.map → _server.ts-Bv6t8IPb.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BvwsgMFF.js → _server.ts-BwAKeO4T.js} +6 -6
- package/build/server/chunks/{_server.ts-BvwsgMFF.js.map → _server.ts-BwAKeO4T.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BTOWT6Pj.js → _server.ts-ByISJcCm.js} +6 -6
- package/build/server/chunks/{_server.ts-BTOWT6Pj.js.map → _server.ts-ByISJcCm.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CKLDsxBS.js → _server.ts-C-F0jSYX.js} +5 -5
- package/build/server/chunks/{_server.ts-CKLDsxBS.js.map → _server.ts-C-F0jSYX.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BW_HzK-a.js → _server.ts-C0oFR9jI.js} +5 -5
- package/build/server/chunks/{_server.ts-BW_HzK-a.js.map → _server.ts-C0oFR9jI.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BDEx48zi.js → _server.ts-C6ZVknFm.js} +7 -7
- package/build/server/chunks/{_server.ts-BDEx48zi.js.map → _server.ts-C6ZVknFm.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DaEMaG6P.js → _server.ts-C7nxO7oZ.js} +5 -5
- package/build/server/chunks/{_server.ts-DaEMaG6P.js.map → _server.ts-C7nxO7oZ.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BJ5XMm2C.js → _server.ts-CDdKFVNE.js} +16 -5
- package/build/server/chunks/_server.ts-CDdKFVNE.js.map +1 -0
- package/build/server/chunks/{_server.ts-CqWWaZdK.js → _server.ts-CFqsr0jm.js} +5 -5
- package/build/server/chunks/{_server.ts-CqWWaZdK.js.map → _server.ts-CFqsr0jm.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Cb_iNzbZ.js → _server.ts-CGTRE_Kl.js} +5 -5
- package/build/server/chunks/{_server.ts-Cb_iNzbZ.js.map → _server.ts-CGTRE_Kl.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BWypoe2Q.js → _server.ts-CKjtgs2f.js} +5 -5
- package/build/server/chunks/{_server.ts-BWypoe2Q.js.map → _server.ts-CKjtgs2f.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Dja0PGr_.js → _server.ts-CYqAkedw.js} +4 -4
- package/build/server/chunks/{_server.ts-Dja0PGr_.js.map → _server.ts-CYqAkedw.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Dv0jRAA5.js → _server.ts-C_CBrQmR.js} +5 -5
- package/build/server/chunks/{_server.ts-Dv0jRAA5.js.map → _server.ts-C_CBrQmR.js.map} +1 -1
- package/build/server/chunks/{_server.ts-D77ujqKm.js → _server.ts-CcQA5Ice.js} +5 -5
- package/build/server/chunks/{_server.ts-D77ujqKm.js.map → _server.ts-CcQA5Ice.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BiEZHu3M.js → _server.ts-Ccb0Jj3i.js} +5 -5
- package/build/server/chunks/{_server.ts-BiEZHu3M.js.map → _server.ts-Ccb0Jj3i.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B9KsvJWP.js → _server.ts-CfL7ZiWC.js} +2 -2
- package/build/server/chunks/{_server.ts-B9KsvJWP.js.map → _server.ts-CfL7ZiWC.js.map} +1 -1
- package/build/server/chunks/{_server.ts-D5IqNNpP.js → _server.ts-Cho8ae05.js} +5 -5
- package/build/server/chunks/{_server.ts-D5IqNNpP.js.map → _server.ts-Cho8ae05.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Dnzmfl4e.js → _server.ts-Cl9NK0rP.js} +7 -7
- package/build/server/chunks/{_server.ts-Dnzmfl4e.js.map → _server.ts-Cl9NK0rP.js.map} +1 -1
- package/build/server/chunks/{_server.ts-D1WNknML.js → _server.ts-ClzfWwPQ.js} +5 -5
- package/build/server/chunks/{_server.ts-D1WNknML.js.map → _server.ts-ClzfWwPQ.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DOmdUrxT.js → _server.ts-Ct_BmV9z.js} +5 -5
- package/build/server/chunks/{_server.ts-DOmdUrxT.js.map → _server.ts-Ct_BmV9z.js.map} +1 -1
- package/build/server/chunks/{_server.ts-C6l3MXrV.js → _server.ts-CzGsIVDJ.js} +6 -6
- package/build/server/chunks/{_server.ts-C6l3MXrV.js.map → _server.ts-CzGsIVDJ.js.map} +1 -1
- package/build/server/chunks/{_server.ts-C2QKIf40.js → _server.ts-D-DoomK2.js} +5 -5
- package/build/server/chunks/{_server.ts-C2QKIf40.js.map → _server.ts-D-DoomK2.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CcwkfNiY.js → _server.ts-D-GNtHl6.js} +6 -6
- package/build/server/chunks/{_server.ts-CcwkfNiY.js.map → _server.ts-D-GNtHl6.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CsHRyjzd.js → _server.ts-D20x68Af.js} +5 -5
- package/build/server/chunks/{_server.ts-CsHRyjzd.js.map → _server.ts-D20x68Af.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BlleO4Iw.js → _server.ts-D4yiBNVB.js} +2 -2
- package/build/server/chunks/{_server.ts-BlleO4Iw.js.map → _server.ts-D4yiBNVB.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BovKiZyj.js → _server.ts-D7QwZV3q.js} +5 -5
- package/build/server/chunks/{_server.ts-BovKiZyj.js.map → _server.ts-D7QwZV3q.js.map} +1 -1
- package/build/server/chunks/{_server.ts-9VcePdaY.js → _server.ts-DBvtDu2n.js} +5 -5
- package/build/server/chunks/{_server.ts-9VcePdaY.js.map → _server.ts-DBvtDu2n.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CLxzAtpC.js → _server.ts-DC9-TXRd.js} +4 -4
- package/build/server/chunks/{_server.ts-CLxzAtpC.js.map → _server.ts-DC9-TXRd.js.map} +1 -1
- package/build/server/chunks/{_server.ts-o5426IQN.js → _server.ts-DDY4PL2z.js} +5 -5
- package/build/server/chunks/{_server.ts-o5426IQN.js.map → _server.ts-DDY4PL2z.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BVyvLZ8E.js → _server.ts-DEe2bHPR.js} +5 -5
- package/build/server/chunks/{_server.ts-BVyvLZ8E.js.map → _server.ts-DEe2bHPR.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DnmRZ13E.js → _server.ts-DJwAwijv.js} +5 -5
- package/build/server/chunks/{_server.ts-DnmRZ13E.js.map → _server.ts-DJwAwijv.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BGmHZpt-.js → _server.ts-DK7QJTuM.js} +5 -5
- package/build/server/chunks/{_server.ts-BGmHZpt-.js.map → _server.ts-DK7QJTuM.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DT3zo083.js → _server.ts-DRq4LBVr.js} +5 -5
- package/build/server/chunks/{_server.ts-DT3zo083.js.map → _server.ts-DRq4LBVr.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CXKIRU1E.js → _server.ts-DTS32Uz1.js} +5 -5
- package/build/server/chunks/{_server.ts-CXKIRU1E.js.map → _server.ts-DTS32Uz1.js.map} +1 -1
- package/build/server/chunks/{_server.ts-C8GxF-_G.js → _server.ts-DYHr8xnf.js} +5 -5
- package/build/server/chunks/{_server.ts-C8GxF-_G.js.map → _server.ts-DYHr8xnf.js.map} +1 -1
- package/build/server/chunks/{_server.ts-D9LioPhs.js → _server.ts-DYuqVy3R.js} +5 -5
- package/build/server/chunks/{_server.ts-D9LioPhs.js.map → _server.ts-DYuqVy3R.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DCyIbOG5.js → _server.ts-DYzKj-s4.js} +5 -5
- package/build/server/chunks/{_server.ts-DCyIbOG5.js.map → _server.ts-DYzKj-s4.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Bq0mGTzm.js → _server.ts-D_mf_j2u.js} +2 -2
- package/build/server/chunks/{_server.ts-Bq0mGTzm.js.map → _server.ts-D_mf_j2u.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BQbzONXj.js → _server.ts-DdqZbqRJ.js} +8 -8
- package/build/server/chunks/{_server.ts-BQbzONXj.js.map → _server.ts-DdqZbqRJ.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CmHau90Y.js → _server.ts-DfUlgZz4.js} +7 -7
- package/build/server/chunks/{_server.ts-CmHau90Y.js.map → _server.ts-DfUlgZz4.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DTLC83_O.js → _server.ts-DfY3KSQW.js} +6 -6
- package/build/server/chunks/{_server.ts-DTLC83_O.js.map → _server.ts-DfY3KSQW.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CzDHz-gR.js → _server.ts-DflQe1gC.js} +5 -5
- package/build/server/chunks/{_server.ts-CzDHz-gR.js.map → _server.ts-DflQe1gC.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Db_cWgB9.js → _server.ts-DiyuxN7m.js} +5 -5
- package/build/server/chunks/{_server.ts-Db_cWgB9.js.map → _server.ts-DiyuxN7m.js.map} +1 -1
- package/build/server/chunks/{_server.ts-D0Lp30px.js → _server.ts-DkLXCLm3.js} +6 -6
- package/build/server/chunks/{_server.ts-D0Lp30px.js.map → _server.ts-DkLXCLm3.js.map} +1 -1
- package/build/server/chunks/{_server.ts-_rap8oWt.js → _server.ts-Dt3kASyU.js} +5 -5
- package/build/server/chunks/{_server.ts-_rap8oWt.js.map → _server.ts-Dt3kASyU.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Cq3pSH4z.js → _server.ts-DukyiQYM.js} +5 -5
- package/build/server/chunks/{_server.ts-Cq3pSH4z.js.map → _server.ts-DukyiQYM.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CclnQ7yP.js → _server.ts-EtzK1JmN.js} +5 -5
- package/build/server/chunks/{_server.ts-CclnQ7yP.js.map → _server.ts-EtzK1JmN.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BolPEljP.js → _server.ts-H96u6tSZ.js} +5 -5
- package/build/server/chunks/{_server.ts-BolPEljP.js.map → _server.ts-H96u6tSZ.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DEGt2NQH.js → _server.ts-KnZLQFwx.js} +2 -2
- package/build/server/chunks/{_server.ts-DEGt2NQH.js.map → _server.ts-KnZLQFwx.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DIa1O4fP.js → _server.ts-N0sinBIw.js} +5 -5
- package/build/server/chunks/{_server.ts-DIa1O4fP.js.map → _server.ts-N0sinBIw.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CglyXcFV.js → _server.ts-VH6AUIr1.js} +6 -6
- package/build/server/chunks/{_server.ts-CglyXcFV.js.map → _server.ts-VH6AUIr1.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BWJMaUtE.js → _server.ts-Vp7Rcg85.js} +7 -7
- package/build/server/chunks/{_server.ts-BWJMaUtE.js.map → _server.ts-Vp7Rcg85.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DMcRqwAG.js → _server.ts-dZbl72KX.js} +5 -5
- package/build/server/chunks/{_server.ts-DMcRqwAG.js.map → _server.ts-dZbl72KX.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CPB3MKf1.js → _server.ts-leyq4M-4.js} +5 -5
- package/build/server/chunks/{_server.ts-CPB3MKf1.js.map → _server.ts-leyq4M-4.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B7DRhmjo.js → _server.ts-n8mvC5oW.js} +5 -5
- package/build/server/chunks/{_server.ts-B7DRhmjo.js.map → _server.ts-n8mvC5oW.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BUGZjc1d.js → _server.ts-nW6q1Q-G.js} +7 -7
- package/build/server/chunks/{_server.ts-BUGZjc1d.js.map → _server.ts-nW6q1Q-G.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DFcjup7N.js → _server.ts-vEIHECmm.js} +5 -5
- package/build/server/chunks/{_server.ts-DFcjup7N.js.map → _server.ts-vEIHECmm.js.map} +1 -1
- package/build/server/chunks/{_server.ts-C9mD-8vS.js → _server.ts-vcoDp61P.js} +5 -5
- package/build/server/chunks/{_server.ts-C9mD-8vS.js.map → _server.ts-vcoDp61P.js.map} +1 -1
- package/build/server/chunks/{_server.ts-C8sb_Suo.js → _server.ts-zhMuOiiX.js} +5 -5
- package/build/server/chunks/{_server.ts-C8sb_Suo.js.map → _server.ts-zhMuOiiX.js.map} +1 -1
- package/build/server/chunks/{addon-helpers-DuwUG5zT.js → addon-helpers-Cql-Tq8H.js} +3 -3
- package/build/server/chunks/{addon-helpers-DuwUG5zT.js.map → addon-helpers-Cql-Tq8H.js.map} +1 -1
- package/build/server/chunks/{akm-De9RlHPs.js → akm-CgK9qKdL.js} +2 -2
- package/build/server/chunks/{akm-De9RlHPs.js.map → akm-CgK9qKdL.js.map} +1 -1
- package/build/server/chunks/{catalog-CqywldZX.js → catalog-DGRp8u5A.js} +5 -5
- package/build/server/chunks/{catalog-CqywldZX.js.map → catalog-DGRp8u5A.js.map} +1 -1
- package/build/server/chunks/{client-B4GBqzNo.js → client-CwdaXUsx.js} +2 -2
- package/build/server/chunks/{client-B4GBqzNo.js.map → client-CwdaXUsx.js.map} +1 -1
- package/build/server/chunks/{config-CTUYWLn1.js → config-T9SCux1L.js} +2 -2
- package/build/server/chunks/{config-CTUYWLn1.js.map → config-T9SCux1L.js.map} +1 -1
- package/build/server/chunks/{docker-B8xhUjS8.js → docker-iOCUpGp4.js} +2 -2
- package/build/server/chunks/{docker-B8xhUjS8.js.map → docker-iOCUpGp4.js.map} +1 -1
- package/build/server/chunks/{endpoints-B5kqgVQo.js → endpoints-BpgyaHnY.js} +2 -2
- package/build/server/chunks/{endpoints-B5kqgVQo.js.map → endpoints-BpgyaHnY.js.map} +1 -1
- package/build/server/chunks/environment-DqfL567G.js.map +1 -1
- package/build/server/chunks/{error.svelte-xAKyJNbq.js → error.svelte-B_vdAFKV.js} +4 -4
- package/build/server/chunks/{error.svelte-xAKyJNbq.js.map → error.svelte-B_vdAFKV.js.map} +1 -1
- package/build/server/chunks/{helpers-C_e8wlRS.js → helpers-BEJZySFf.js} +3 -3
- package/build/server/chunks/{helpers-C_e8wlRS.js.map → helpers-BEJZySFf.js.map} +1 -1
- package/build/server/chunks/{hooks.server-fHofpso1.js → hooks.server-CWM5ejMJ.js} +6 -6
- package/build/server/chunks/{hooks.server-fHofpso1.js.map → hooks.server-CWM5ejMJ.js.map} +1 -1
- package/build/server/chunks/{http-Djg8zk5F.js → http-Cfjg0mI7.js} +2 -2
- package/build/server/chunks/{http-Djg8zk5F.js.map → http-Cfjg0mI7.js.map} +1 -1
- package/build/server/chunks/{internal-WU1JOrpW.js → internal-DHhXSRaW.js} +3 -3
- package/build/server/chunks/{internal-WU1JOrpW.js.map → internal-DHhXSRaW.js.map} +1 -1
- package/build/server/chunks/{paths-GbFdQntr.js → paths-BzGreWEt.js} +2 -2
- package/build/server/chunks/{paths-GbFdQntr.js.map → paths-BzGreWEt.js.map} +1 -1
- package/build/server/chunks/{session-cookie-D7LD9nNB.js → session-cookie-DaI-X1u7.js} +2 -2
- package/build/server/chunks/{session-cookie-D7LD9nNB.js.map → session-cookie-DaI-X1u7.js.map} +1 -1
- package/build/server/chunks/{setup-deploy-jgBJ2_dg.js → setup-deploy-Dq5ZD5Db.js} +2 -2
- package/build/server/chunks/{setup-deploy-jgBJ2_dg.js.map → setup-deploy-Dq5ZD5Db.js.map} +1 -1
- package/build/server/chunks/{src-O9QA_b9U.js → src-CBQKBSM9.js} +4 -5
- package/build/server/chunks/src-CBQKBSM9.js.map +1 -0
- package/build/server/chunks/{state-DjoSRCLN.js → state-BBeqCbpv.js} +2 -2
- package/build/server/chunks/{state-DjoSRCLN.js.map → state-BBeqCbpv.js.map} +1 -1
- package/build/server/chunks/{state2-Bf2xxcc7.js → state2-CI7lure8.js} +2 -2
- package/build/server/chunks/{state2-Bf2xxcc7.js.map → state2-CI7lure8.js.map} +1 -1
- package/build/server/index.js +1 -1
- package/build/server/manifest.js +92 -92
- package/build/server/manifest.js.map +1 -1
- package/package.json +2 -2
- package/build/client/_app/immutable/chunks/B9MSGyaK.js +0 -1
- package/build/client/_app/immutable/chunks/B9MSGyaK.js.br +0 -0
- package/build/client/_app/immutable/chunks/B9MSGyaK.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BKCtXWas.js.br +0 -0
- package/build/client/_app/immutable/chunks/BKCtXWas.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BhtySIxX.js +0 -1
- package/build/client/_app/immutable/chunks/BhtySIxX.js.br +0 -2
- package/build/client/_app/immutable/chunks/BhtySIxX.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BykBfG91.js.br +0 -0
- package/build/client/_app/immutable/chunks/BykBfG91.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D-Fd43HU.js +0 -3
- package/build/client/_app/immutable/chunks/D-Fd43HU.js.br +0 -0
- package/build/client/_app/immutable/chunks/D-Fd43HU.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DpDZsrUx.js.br +0 -0
- package/build/client/_app/immutable/chunks/DpDZsrUx.js.gz +0 -0
- package/build/client/_app/immutable/chunks/odiNZBok.js.br +0 -0
- package/build/client/_app/immutable/chunks/odiNZBok.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.B4QXVY5C.js.br +0 -0
- package/build/client/_app/immutable/entry/app.B4QXVY5C.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.DEZonG8f.js +0 -1
- package/build/client/_app/immutable/entry/start.DEZonG8f.js.br +0 -0
- package/build/client/_app/immutable/entry/start.DEZonG8f.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.DAxgC2To.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.DAxgC2To.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.zdgwnkll.js.br +0 -2
- package/build/client/_app/immutable/nodes/1.zdgwnkll.js.gz +0 -0
- package/build/client/_app/immutable/nodes/10.DIo8JL3K.js.br +0 -0
- package/build/client/_app/immutable/nodes/10.DIo8JL3K.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.CMr3pbmP.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.CMr3pbmP.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.DFnVNk42.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.DFnVNk42.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.BHz3oYHQ.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.BHz3oYHQ.js.gz +0 -0
- package/build/client/_app/immutable/nodes/7.BtYu1NBj.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.BtYu1NBj.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.BSEbjvqM.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.BSEbjvqM.js.gz +0 -0
- package/build/client/_app/immutable/nodes/9.CkZQS54v.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.CkZQS54v.js.gz +0 -0
- package/build/server/chunks/1-CBSvcbcR.js +0 -9
- package/build/server/chunks/6-CTZDDb7P.js +0 -9
- package/build/server/chunks/_server.ts-BJ5XMm2C.js.map +0 -1
- package/build/server/chunks/src-O9QA_b9U.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-CJ4jkWDq.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/speak/_server.ts.js"],"sourcesContent":["import { Vt as readStackEnv } from \"../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../chunks/state.js\";\nimport { d as requireAdmin, i as errorResponse, o as getRequestId } from \"../../../../chunks/helpers.js\";\nimport { t as opencodeFetch } from \"../../../../chunks/http.js\";\nimport { t as getCurrentConfig } from \"../../../../chunks/config.js\";\nimport { existsSync, readFileSync } from \"node:fs\";\nimport { join } from \"node:path\";\n//#region src/lib/server/speech-prep.ts\nfunction personaPath() {\n\treturn join(getState().configDir, \"assistant\", \"persona.md\");\n}\nfunction readPersona() {\n\tconst path = personaPath();\n\tif (!existsSync(path)) return \"\";\n\ttry {\n\t\treturn readFileSync(path, \"utf-8\").trim();\n\t} catch {\n\t\treturn \"\";\n\t}\n}\nfunction extractText(response) {\n\treturn (response.parts ?? []).filter((part) => part.type === \"text\" && typeof part.text === \"string\").map((part) => part.text?.trim() ?? \"\").join(\" \").trim();\n}\nfunction buildPrompt(input) {\n\tconst personaBlock = input.persona ? input.persona : \"No persona markdown is configured. Use a neutral, helpful, conversational tone.\";\n\tif (input.mode === \"chat_ack\") return [\n\t\t\"You are preparing a short spoken acknowledgement for text-to-speech.\",\n\t\t\"Return only the exact words to speak.\",\n\t\t\"Keep it to one brief sentence.\",\n\t\t\"Sound conversational and aligned with the persona context.\",\n\t\t\"Do not use markdown, lists, or quotes.\",\n\t\t\"Do not answer the full request. Just acknowledge that you are working on it.\",\n\t\t\"\",\n\t\t\"Persona markdown:\",\n\t\tpersonaBlock,\n\t\t\"\",\n\t\t\"User request:\",\n\t\tinput.userText\n\t].join(\"\\n\");\n\treturn [\n\t\t\"You are preparing a spoken summary for text-to-speech.\",\n\t\t\"Return only the exact words to speak.\",\n\t\t\"Rewrite the final assistant reply into a concise, natural, conversational response.\",\n\t\t\"Preserve the meaning and important caveats.\",\n\t\t\"Keep it brief enough for audio playback.\",\n\t\t\"Do not use markdown, lists, or quotes.\",\n\t\t\"\",\n\t\t\"Persona markdown:\",\n\t\tpersonaBlock,\n\t\t\"\",\n\t\t\"User request:\",\n\t\tinput.userText,\n\t\t\"\",\n\t\t\"Final assistant reply:\",\n\t\tinput.assistantText ?? \"\"\n\t].join(\"\\n\");\n}\nfunction resolveSpeechModel(config) {\n\tconst small = typeof config.small_model === \"string\" ? config.small_model.trim() : \"\";\n\tif (small) return small;\n\treturn (typeof config.model === \"string\" ? config.model.trim() : \"\") || null;\n}\nasync function loadSpeechConfig() {\n\ttry {\n\t\treturn await opencodeFetch(\"/config\");\n\t} catch {\n\t\treturn getCurrentConfig();\n\t}\n}\nasync function prepareSpeechText(input) {\n\tconst userText = input.userText.trim();\n\tif (!userText) return null;\n\tif (input.mode === \"chat_reply\" && !input.assistantText?.trim()) return null;\n\tconst persona = readPersona();\n\tconst model = resolveSpeechModel(await loadSpeechConfig());\n\tconst prompt = buildPrompt({\n\t\tmode: input.mode,\n\t\tuserText,\n\t\tassistantText: input.assistantText?.trim(),\n\t\tpersona\n\t});\n\tlet sessionId = \"\";\n\ttry {\n\t\tconst created = await opencodeFetch(\"/session\", {\n\t\t\tmethod: \"POST\",\n\t\t\tbody: JSON.stringify({})\n\t\t});\n\t\tsessionId = typeof created.id === \"string\" ? created.id : \"\";\n\t\tif (!sessionId) return null;\n\t\treturn extractText(await opencodeFetch(`/session/${encodeURIComponent(sessionId)}/message`, {\n\t\t\tmethod: \"POST\",\n\t\t\tbody: JSON.stringify({\n\t\t\t\tparts: [{\n\t\t\t\t\ttype: \"text\",\n\t\t\t\t\ttext: prompt\n\t\t\t\t}],\n\t\t\t\t...model ? { model } : {}\n\t\t\t})\n\t\t})) || null;\n\t} finally {\n\t\tif (sessionId) await opencodeFetch(`/session/${encodeURIComponent(sessionId)}`, { method: \"DELETE\" }).catch(() => {});\n\t}\n}\n//#endregion\n//#region src/routes/api/speak/+server.ts\nvar DEFAULT_MODEL = \"kokoro\";\nvar DEFAULT_VOICE = \"bf_isabella\";\nvar DEFAULT_FORMAT = \"wav\";\nvar UPSTREAM_TIMEOUT_MS = 6e4;\nfunction redactKey(s) {\n\treturn s.replace(/(sk-[A-Za-z0-9_-]{4,})/g, \"sk-***\").replace(/(Bearer\\s+)[A-Za-z0-9._-]+/gi, \"$1***\");\n}\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst stackEnv = readStackEnv(getState().homeDir);\n\tconst ttsBaseURL = (stackEnv.OP_TTS_BASE_URL || process.env.OP_TTS_BASE_URL || \"\").trim();\n\tconst ttsModel = (stackEnv.OP_TTS_MODEL || process.env.OP_TTS_MODEL || \"\").trim() || DEFAULT_MODEL;\n\tconst ttsVoice = (stackEnv.OP_TTS_VOICE || process.env.OP_TTS_VOICE || \"\").trim() || DEFAULT_VOICE;\n\tconst ttsApiKey = (process.env.OP_TTS_API_KEY ?? \"\").trim();\n\tif (!ttsBaseURL) return errorResponse(503, \"tts_not_configured\", \"Configure a TTS engine in Admin → Voice settings.\", {}, requestId);\n\tlet body;\n\ttry {\n\t\tbody = await event.request.json();\n\t} catch {\n\t\treturn errorResponse(400, \"bad_request\", \"Invalid JSON body\", {}, requestId);\n\t}\n\tconst b = body ?? {};\n\tconst text = typeof b.text === \"string\" ? b.text.trim() : \"\";\n\tif (!text) return errorResponse(400, \"bad_request\", \"\\\"text\\\" is required\", {}, requestId);\n\tconst mode = b.mode === \"chat_ack\" || b.mode === \"chat_reply\" ? b.mode : null;\n\tconst userText = typeof b.userText === \"string\" ? b.userText.trim() : \"\";\n\tconst assistantText = typeof b.assistantText === \"string\" ? b.assistantText.trim() : \"\";\n\tconst voice = typeof b.voice === \"string\" && b.voice.trim() ? b.voice.trim() : ttsVoice;\n\tconst format = typeof b.format === \"string\" && b.format.trim() ? b.format.trim() : DEFAULT_FORMAT;\n\tlet speechText = text;\n\tif (mode) try {\n\t\tconst prepared = await prepareSpeechText({\n\t\t\tmode,\n\t\t\tuserText,\n\t\t\tassistantText\n\t\t});\n\t\tif (prepared) speechText = prepared;\n\t} catch (err) {\n\t\tconsole.warn(\"[api/speak] speech prep failed; falling back to raw text\", err);\n\t}\n\tconst upstreamUrl = ttsBaseURL.replace(/\\/+$/, \"\") + \"/v1/audio/speech\";\n\tconst headers = { \"content-type\": \"application/json\" };\n\tif (ttsApiKey) headers[\"authorization\"] = `Bearer ${ttsApiKey}`;\n\tlet upstream;\n\ttry {\n\t\tupstream = await fetch(upstreamUrl, {\n\t\t\tmethod: \"POST\",\n\t\t\theaders,\n\t\t\tbody: JSON.stringify({\n\t\t\t\tmodel: ttsModel,\n\t\t\t\tvoice,\n\t\t\t\tinput: speechText,\n\t\t\t\tresponse_format: format\n\t\t\t}),\n\t\t\tsignal: AbortSignal.timeout(UPSTREAM_TIMEOUT_MS)\n\t\t});\n\t} catch (err) {\n\t\treturn errorResponse(502, \"upstream_error\", `Could not reach TTS endpoint: ${redactKey(err instanceof Error ? err.message : String(err))}`, { upstream: upstreamUrl }, requestId);\n\t}\n\tif (!upstream.ok) {\n\t\tconst body = await upstream.text().catch(() => \"\");\n\t\treturn errorResponse(502, \"upstream_error\", `TTS endpoint returned ${upstream.status}`, {\n\t\t\tupstreamStatus: upstream.status,\n\t\t\tbody: redactKey(body).slice(0, 500)\n\t\t}, requestId);\n\t}\n\tconst responseHeaders = new Headers();\n\tresponseHeaders.set(\"content-type\", upstream.headers.get(\"content-type\") ?? \"audio/wav\");\n\tconst contentLength = upstream.headers.get(\"content-length\");\n\tif (contentLength) responseHeaders.set(\"content-length\", contentLength);\n\tresponseHeaders.set(\"x-request-id\", requestId);\n\treturn new Response(upstream.body, {\n\t\tstatus: 200,\n\t\theaders: responseHeaders\n\t});\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"_server.ts-BpL2riwT.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/speak/_server.ts.js"],"sourcesContent":["import { Ht as readStackEnv } from \"../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../chunks/state.js\";\nimport { d as requireAdmin, i as errorResponse, o as getRequestId } from \"../../../../chunks/helpers.js\";\nimport { t as opencodeFetch } from \"../../../../chunks/http.js\";\nimport { t as getCurrentConfig } from \"../../../../chunks/config.js\";\nimport { existsSync, readFileSync } from \"node:fs\";\nimport { join } from \"node:path\";\n//#region src/lib/server/speech-prep.ts\nfunction personaPath() {\n\treturn join(getState().configDir, \"assistant\", \"persona.md\");\n}\nfunction readPersona() {\n\tconst path = personaPath();\n\tif (!existsSync(path)) return \"\";\n\ttry {\n\t\treturn readFileSync(path, \"utf-8\").trim();\n\t} catch {\n\t\treturn \"\";\n\t}\n}\nfunction extractText(response) {\n\treturn (response.parts ?? []).filter((part) => part.type === \"text\" && typeof part.text === \"string\").map((part) => part.text?.trim() ?? \"\").join(\" \").trim();\n}\nfunction buildPrompt(input) {\n\tconst personaBlock = input.persona ? input.persona : \"No persona markdown is configured. Use a neutral, helpful, conversational tone.\";\n\tif (input.mode === \"chat_ack\") return [\n\t\t\"You are preparing a short spoken acknowledgement for text-to-speech.\",\n\t\t\"Return only the exact words to speak.\",\n\t\t\"Keep it to one brief sentence.\",\n\t\t\"Sound conversational and aligned with the persona context.\",\n\t\t\"Do not use markdown, lists, or quotes.\",\n\t\t\"Do not answer the full request. Just acknowledge that you are working on it.\",\n\t\t\"\",\n\t\t\"Persona markdown:\",\n\t\tpersonaBlock,\n\t\t\"\",\n\t\t\"User request:\",\n\t\tinput.userText\n\t].join(\"\\n\");\n\treturn [\n\t\t\"You are preparing a spoken summary for text-to-speech.\",\n\t\t\"Return only the exact words to speak.\",\n\t\t\"Rewrite the final assistant reply into a concise, natural, conversational response.\",\n\t\t\"Preserve the meaning and important caveats.\",\n\t\t\"Keep it brief enough for audio playback.\",\n\t\t\"Do not use markdown, lists, or quotes.\",\n\t\t\"\",\n\t\t\"Persona markdown:\",\n\t\tpersonaBlock,\n\t\t\"\",\n\t\t\"User request:\",\n\t\tinput.userText,\n\t\t\"\",\n\t\t\"Final assistant reply:\",\n\t\tinput.assistantText ?? \"\"\n\t].join(\"\\n\");\n}\nfunction resolveSpeechModel(config) {\n\tconst small = typeof config.small_model === \"string\" ? config.small_model.trim() : \"\";\n\tif (small) return small;\n\treturn (typeof config.model === \"string\" ? config.model.trim() : \"\") || null;\n}\nasync function loadSpeechConfig() {\n\ttry {\n\t\treturn await opencodeFetch(\"/config\");\n\t} catch {\n\t\treturn getCurrentConfig();\n\t}\n}\nasync function prepareSpeechText(input) {\n\tconst userText = input.userText.trim();\n\tif (!userText) return null;\n\tif (input.mode === \"chat_reply\" && !input.assistantText?.trim()) return null;\n\tconst persona = readPersona();\n\tconst model = resolveSpeechModel(await loadSpeechConfig());\n\tconst prompt = buildPrompt({\n\t\tmode: input.mode,\n\t\tuserText,\n\t\tassistantText: input.assistantText?.trim(),\n\t\tpersona\n\t});\n\tlet sessionId = \"\";\n\ttry {\n\t\tconst created = await opencodeFetch(\"/session\", {\n\t\t\tmethod: \"POST\",\n\t\t\tbody: JSON.stringify({})\n\t\t});\n\t\tsessionId = typeof created.id === \"string\" ? created.id : \"\";\n\t\tif (!sessionId) return null;\n\t\treturn extractText(await opencodeFetch(`/session/${encodeURIComponent(sessionId)}/message`, {\n\t\t\tmethod: \"POST\",\n\t\t\tbody: JSON.stringify({\n\t\t\t\tparts: [{\n\t\t\t\t\ttype: \"text\",\n\t\t\t\t\ttext: prompt\n\t\t\t\t}],\n\t\t\t\t...model ? { model } : {}\n\t\t\t})\n\t\t})) || null;\n\t} finally {\n\t\tif (sessionId) await opencodeFetch(`/session/${encodeURIComponent(sessionId)}`, { method: \"DELETE\" }).catch(() => {});\n\t}\n}\n//#endregion\n//#region src/routes/api/speak/+server.ts\nvar DEFAULT_MODEL = \"kokoro\";\nvar DEFAULT_VOICE = \"bf_isabella\";\nvar DEFAULT_FORMAT = \"wav\";\nvar UPSTREAM_TIMEOUT_MS = 6e4;\nfunction redactKey(s) {\n\treturn s.replace(/(sk-[A-Za-z0-9_-]{4,})/g, \"sk-***\").replace(/(Bearer\\s+)[A-Za-z0-9._-]+/gi, \"$1***\");\n}\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst stackEnv = readStackEnv(getState().homeDir);\n\tconst ttsBaseURL = (stackEnv.OP_TTS_BASE_URL || process.env.OP_TTS_BASE_URL || \"\").trim();\n\tconst ttsModel = (stackEnv.OP_TTS_MODEL || process.env.OP_TTS_MODEL || \"\").trim() || DEFAULT_MODEL;\n\tconst ttsVoice = (stackEnv.OP_TTS_VOICE || process.env.OP_TTS_VOICE || \"\").trim() || DEFAULT_VOICE;\n\tconst ttsApiKey = (process.env.OP_TTS_API_KEY ?? \"\").trim();\n\tif (!ttsBaseURL) return errorResponse(503, \"tts_not_configured\", \"Configure a TTS engine in Admin → Voice settings.\", {}, requestId);\n\tlet body;\n\ttry {\n\t\tbody = await event.request.json();\n\t} catch {\n\t\treturn errorResponse(400, \"bad_request\", \"Invalid JSON body\", {}, requestId);\n\t}\n\tconst b = body ?? {};\n\tconst text = typeof b.text === \"string\" ? b.text.trim() : \"\";\n\tif (!text) return errorResponse(400, \"bad_request\", \"\\\"text\\\" is required\", {}, requestId);\n\tconst mode = b.mode === \"chat_ack\" || b.mode === \"chat_reply\" ? b.mode : null;\n\tconst userText = typeof b.userText === \"string\" ? b.userText.trim() : \"\";\n\tconst assistantText = typeof b.assistantText === \"string\" ? b.assistantText.trim() : \"\";\n\tconst voice = typeof b.voice === \"string\" && b.voice.trim() ? b.voice.trim() : ttsVoice;\n\tconst format = typeof b.format === \"string\" && b.format.trim() ? b.format.trim() : DEFAULT_FORMAT;\n\tlet speechText = text;\n\tif (mode) try {\n\t\tconst prepared = await prepareSpeechText({\n\t\t\tmode,\n\t\t\tuserText,\n\t\t\tassistantText\n\t\t});\n\t\tif (prepared) speechText = prepared;\n\t} catch (err) {\n\t\tconsole.warn(\"[api/speak] speech prep failed; falling back to raw text\", err);\n\t}\n\tconst upstreamUrl = ttsBaseURL.replace(/\\/+$/, \"\") + \"/v1/audio/speech\";\n\tconst headers = { \"content-type\": \"application/json\" };\n\tif (ttsApiKey) headers[\"authorization\"] = `Bearer ${ttsApiKey}`;\n\tlet upstream;\n\ttry {\n\t\tupstream = await fetch(upstreamUrl, {\n\t\t\tmethod: \"POST\",\n\t\t\theaders,\n\t\t\tbody: JSON.stringify({\n\t\t\t\tmodel: ttsModel,\n\t\t\t\tvoice,\n\t\t\t\tinput: speechText,\n\t\t\t\tresponse_format: format\n\t\t\t}),\n\t\t\tsignal: AbortSignal.timeout(UPSTREAM_TIMEOUT_MS)\n\t\t});\n\t} catch (err) {\n\t\treturn errorResponse(502, \"upstream_error\", `Could not reach TTS endpoint: ${redactKey(err instanceof Error ? err.message : String(err))}`, { upstream: upstreamUrl }, requestId);\n\t}\n\tif (!upstream.ok) {\n\t\tconst body = await upstream.text().catch(() => \"\");\n\t\treturn errorResponse(502, \"upstream_error\", `TTS endpoint returned ${upstream.status}`, {\n\t\t\tupstreamStatus: upstream.status,\n\t\t\tbody: redactKey(body).slice(0, 500)\n\t\t}, requestId);\n\t}\n\tconst responseHeaders = new Headers();\n\tresponseHeaders.set(\"content-type\", upstream.headers.get(\"content-type\") ?? \"audio/wav\");\n\tconst contentLength = upstream.headers.get(\"content-length\");\n\tif (contentLength) responseHeaders.set(\"content-length\", contentLength);\n\tresponseHeaders.set(\"x-request-id\", requestId);\n\treturn new Response(upstream.body, {\n\t\tstatus: 200,\n\t\theaders: responseHeaders\n\t});\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { g as getState } from './state-
|
|
3
|
-
import { d as getRequestId, r as requireAdmin, e as errorResponse, k as jsonResponse, p as parseJsonBody, j as jsonBodyError } from './helpers-
|
|
1
|
+
import { ad as listAvailableAddonIds, a4 as getRegistryAddonConfig, aA as readStackSecretEnv, ay as readStackEnv, aZ as writeStackSecretEnv, ao as patchSecretsEnvFile, F as createLogger } from './src-CBQKBSM9.js';
|
|
2
|
+
import { g as getState } from './state-BBeqCbpv.js';
|
|
3
|
+
import { d as getRequestId, r as requireAdmin, e as errorResponse, k as jsonResponse, p as parseJsonBody, j as jsonBodyError } from './helpers-BEJZySFf.js';
|
|
4
4
|
import './chunk-CLZ62Ad-.js';
|
|
5
5
|
import 'node:module';
|
|
6
6
|
import './provider-constants-DPrj3yBX.js';
|
|
@@ -22,7 +22,7 @@ import 'zlib';
|
|
|
22
22
|
import 'node:assert';
|
|
23
23
|
import 'node:fs/promises';
|
|
24
24
|
import 'node:os';
|
|
25
|
-
import './endpoints-
|
|
25
|
+
import './endpoints-BpgyaHnY.js';
|
|
26
26
|
|
|
27
27
|
//#region src/routes/admin/addons/[name]/credentials/+server.ts
|
|
28
28
|
var logger = createLogger("addons.name.credentials");
|
|
@@ -166,4 +166,4 @@ var POST = async (event) => {
|
|
|
166
166
|
};
|
|
167
167
|
|
|
168
168
|
export { GET, POST };
|
|
169
|
-
//# sourceMappingURL=_server.ts-
|
|
169
|
+
//# sourceMappingURL=_server.ts-BsjlSv_u.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-CTBIEb1p.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/addons/_name_/credentials/_server.ts.js"],"sourcesContent":["import { Bt as patchSecretsEnvFile, Tt as listAvailableAddonIds, Ut as readStackSecretEnv, Vt as readStackEnv, Wt as writeStackSecretEnv, dn as createLogger, wt as getRegistryAddonConfig } from \"../../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../../chunks/state.js\";\nimport { c as jsonBodyError, d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId, u as parseJsonBody } from \"../../../../../../chunks/helpers.js\";\n//#region src/routes/admin/addons/[name]/credentials/+server.ts\nvar logger = createLogger(\"addons.name.credentials\");\n/**\n* Parse a `.env.schema` file into structured fields.\n*\n* Schema conventions:\n* - Lines starting with `#` are comments; consecutive comment lines\n* accumulate as the *description* of the next KEY=VALUE line.\n* - `# @sensitive` marks the next field as sensitive (renders as a\n* password input and is masked on GET).\n* - `# ---` resets the accumulator (used as a section separator).\n* - `KEY=DEFAULT` declares the field; default may be empty.\n*/\nfunction parseEnvSchema(text) {\n\tconst fields = [];\n\tlet commentBuffer = [];\n\tlet sensitive = false;\n\tfor (const rawLine of text.split(/\\r?\\n/)) {\n\t\tconst line = rawLine.trim();\n\t\tif (!line) continue;\n\t\tif (line.startsWith(\"#\")) {\n\t\t\tconst body = line.slice(1).trim();\n\t\t\tif (body === \"---\") {\n\t\t\t\tcommentBuffer = [];\n\t\t\t\tsensitive = false;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (body.startsWith(\"@\")) {\n\t\t\t\tif (/\\B@sensitive\\b/.test(body)) sensitive = true;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tcommentBuffer.push(body);\n\t\t\tcontinue;\n\t\t}\n\t\tconst eq = line.indexOf(\"=\");\n\t\tif (eq <= 0) continue;\n\t\tconst key = line.slice(0, eq).trim();\n\t\tif (!key) continue;\n\t\tconst def = line.slice(eq + 1).trim();\n\t\tfields.push({\n\t\t\tkey,\n\t\t\tsensitive,\n\t\t\tdescription: commentBuffer.join(\" \").trim(),\n\t\t\tdefault: def\n\t\t});\n\t\tcommentBuffer = [];\n\t\tsensitive = false;\n\t}\n\treturn fields;\n}\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authErr = requireAdmin(event, requestId);\n\tif (authErr) return authErr;\n\tconst state = getState();\n\tconst name = event.params.name;\n\tif (!listAvailableAddonIds().includes(name)) return errorResponse(404, \"not_found\", `Addon \"${name}\" is not available`, { name }, requestId);\n\tlet config;\n\ttry {\n\t\tconfig = getRegistryAddonConfig(name);\n\t} catch (error) {\n\t\tlogger.error(\"schema read failed\", {\n\t\t\tname,\n\t\t\terror: String(error),\n\t\t\trequestId\n\t\t});\n\t\treturn errorResponse(500, \"internal_error\", `Addon \"${name}\" schema is unavailable`, {}, requestId);\n\t}\n\tconst schemaFields = parseEnvSchema(config.envSchema);\n\tconst secretEnv = readStackSecretEnv(state.homeDir);\n\tconst stackEnv = readStackEnv(state.homeDir);\n\treturn jsonResponse(200, {\n\t\tname,\n\t\tfields: schemaFields.map((f) => {\n\t\t\tconst set = ((f.sensitive ? secretEnv[f.key] : stackEnv[f.key]) ?? \"\").length > 0;\n\t\t\treturn {\n\t\t\t\tkey: f.key,\n\t\t\t\tsensitive: f.sensitive,\n\t\t\t\tdescription: f.description,\n\t\t\t\tdefault: f.default,\n\t\t\t\tset,\n\t\t\t\tsecret: {\n\t\t\t\t\tenvKey: f.key,\n\t\t\t\t\tpresent: set\n\t\t\t\t},\n\t\t\t\tvalue: \"\"\n\t\t\t};\n\t\t})\n\t}, requestId);\n};\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authErr = requireAdmin(event, requestId);\n\tif (authErr) return authErr;\n\tconst state = getState();\n\tconst name = event.params.name;\n\tif (!listAvailableAddonIds().includes(name)) return errorResponse(404, \"not_found\", `Addon \"${name}\" is not available`, { name }, requestId);\n\tconst parsed = await parseJsonBody(event.request);\n\tif (\"error\" in parsed) return jsonBodyError(parsed, requestId);\n\tconst valuesRaw = parsed.data.values ?? {};\n\tlet config;\n\ttry {\n\t\tconfig = getRegistryAddonConfig(name);\n\t} catch (error) {\n\t\tlogger.error(\"schema read failed (post)\", {\n\t\t\tname,\n\t\t\terror: String(error),\n\t\t\trequestId\n\t\t});\n\t\treturn errorResponse(500, \"internal_error\", `Addon \"${name}\" schema is unavailable`, {}, requestId);\n\t}\n\tconst schemaFields = parseEnvSchema(config.envSchema);\n\tconst sensitiveKeys = new Set(schemaFields.filter((f) => f.sensitive).map((f) => f.key));\n\tconst allowedKeys = new Set(schemaFields.map((f) => f.key));\n\tconst sensitiveUpdates = {};\n\tconst configUpdates = {};\n\tfor (const [k, v] of Object.entries(valuesRaw)) {\n\t\tif (!allowedKeys.has(k)) continue;\n\t\tconst val = typeof v === \"string\" ? v : \"\";\n\t\tif (sensitiveKeys.has(k)) sensitiveUpdates[k] = val;\n\t\telse configUpdates[k] = val;\n\t}\n\tif (Object.keys(sensitiveUpdates).length === 0 && Object.keys(configUpdates).length === 0) return errorResponse(400, \"bad_request\", \"no schema-declared keys supplied\", {}, requestId);\n\ttry {\n\t\tif (Object.keys(sensitiveUpdates).length > 0) writeStackSecretEnv(state, sensitiveUpdates);\n\t\tif (Object.keys(configUpdates).length > 0) patchSecretsEnvFile(state.homeDir, configUpdates);\n\t} catch (err) {\n\t\tlogger.error(\"write failed\", {\n\t\t\tname,\n\t\t\terror: String(err),\n\t\t\trequestId\n\t\t});\n\t\treturn errorResponse(500, \"internal_error\", err instanceof Error ? err.message : \"write failed\", {}, requestId);\n\t}\n\treturn jsonResponse(200, {\n\t\tok: true,\n\t\tname,\n\t\tupdated: [...Object.keys(sensitiveUpdates), ...Object.keys(configUpdates)].sort()\n\t}, requestId);\n};\n//#endregion\nexport { GET, POST };\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"_server.ts-BsjlSv_u.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/addons/_name_/credentials/_server.ts.js"],"sourcesContent":["import { Gt as writeStackSecretEnv, Ht as readStackEnv, Tt as listAvailableAddonIds, Vt as patchSecretsEnvFile, Wt as readStackSecretEnv, fn as createLogger, wt as getRegistryAddonConfig } from \"../../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../../chunks/state.js\";\nimport { c as jsonBodyError, d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId, u as parseJsonBody } from \"../../../../../../chunks/helpers.js\";\n//#region src/routes/admin/addons/[name]/credentials/+server.ts\nvar logger = createLogger(\"addons.name.credentials\");\n/**\n* Parse a `.env.schema` file into structured fields.\n*\n* Schema conventions:\n* - Lines starting with `#` are comments; consecutive comment lines\n* accumulate as the *description* of the next KEY=VALUE line.\n* - `# @sensitive` marks the next field as sensitive (renders as a\n* password input and is masked on GET).\n* - `# ---` resets the accumulator (used as a section separator).\n* - `KEY=DEFAULT` declares the field; default may be empty.\n*/\nfunction parseEnvSchema(text) {\n\tconst fields = [];\n\tlet commentBuffer = [];\n\tlet sensitive = false;\n\tfor (const rawLine of text.split(/\\r?\\n/)) {\n\t\tconst line = rawLine.trim();\n\t\tif (!line) continue;\n\t\tif (line.startsWith(\"#\")) {\n\t\t\tconst body = line.slice(1).trim();\n\t\t\tif (body === \"---\") {\n\t\t\t\tcommentBuffer = [];\n\t\t\t\tsensitive = false;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (body.startsWith(\"@\")) {\n\t\t\t\tif (/\\B@sensitive\\b/.test(body)) sensitive = true;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tcommentBuffer.push(body);\n\t\t\tcontinue;\n\t\t}\n\t\tconst eq = line.indexOf(\"=\");\n\t\tif (eq <= 0) continue;\n\t\tconst key = line.slice(0, eq).trim();\n\t\tif (!key) continue;\n\t\tconst def = line.slice(eq + 1).trim();\n\t\tfields.push({\n\t\t\tkey,\n\t\t\tsensitive,\n\t\t\tdescription: commentBuffer.join(\" \").trim(),\n\t\t\tdefault: def\n\t\t});\n\t\tcommentBuffer = [];\n\t\tsensitive = false;\n\t}\n\treturn fields;\n}\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authErr = requireAdmin(event, requestId);\n\tif (authErr) return authErr;\n\tconst state = getState();\n\tconst name = event.params.name;\n\tif (!listAvailableAddonIds().includes(name)) return errorResponse(404, \"not_found\", `Addon \"${name}\" is not available`, { name }, requestId);\n\tlet config;\n\ttry {\n\t\tconfig = getRegistryAddonConfig(name);\n\t} catch (error) {\n\t\tlogger.error(\"schema read failed\", {\n\t\t\tname,\n\t\t\terror: String(error),\n\t\t\trequestId\n\t\t});\n\t\treturn errorResponse(500, \"internal_error\", `Addon \"${name}\" schema is unavailable`, {}, requestId);\n\t}\n\tconst schemaFields = parseEnvSchema(config.envSchema);\n\tconst secretEnv = readStackSecretEnv(state.homeDir);\n\tconst stackEnv = readStackEnv(state.homeDir);\n\treturn jsonResponse(200, {\n\t\tname,\n\t\tfields: schemaFields.map((f) => {\n\t\t\tconst set = ((f.sensitive ? secretEnv[f.key] : stackEnv[f.key]) ?? \"\").length > 0;\n\t\t\treturn {\n\t\t\t\tkey: f.key,\n\t\t\t\tsensitive: f.sensitive,\n\t\t\t\tdescription: f.description,\n\t\t\t\tdefault: f.default,\n\t\t\t\tset,\n\t\t\t\tsecret: {\n\t\t\t\t\tenvKey: f.key,\n\t\t\t\t\tpresent: set\n\t\t\t\t},\n\t\t\t\tvalue: \"\"\n\t\t\t};\n\t\t})\n\t}, requestId);\n};\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authErr = requireAdmin(event, requestId);\n\tif (authErr) return authErr;\n\tconst state = getState();\n\tconst name = event.params.name;\n\tif (!listAvailableAddonIds().includes(name)) return errorResponse(404, \"not_found\", `Addon \"${name}\" is not available`, { name }, requestId);\n\tconst parsed = await parseJsonBody(event.request);\n\tif (\"error\" in parsed) return jsonBodyError(parsed, requestId);\n\tconst valuesRaw = parsed.data.values ?? {};\n\tlet config;\n\ttry {\n\t\tconfig = getRegistryAddonConfig(name);\n\t} catch (error) {\n\t\tlogger.error(\"schema read failed (post)\", {\n\t\t\tname,\n\t\t\terror: String(error),\n\t\t\trequestId\n\t\t});\n\t\treturn errorResponse(500, \"internal_error\", `Addon \"${name}\" schema is unavailable`, {}, requestId);\n\t}\n\tconst schemaFields = parseEnvSchema(config.envSchema);\n\tconst sensitiveKeys = new Set(schemaFields.filter((f) => f.sensitive).map((f) => f.key));\n\tconst allowedKeys = new Set(schemaFields.map((f) => f.key));\n\tconst sensitiveUpdates = {};\n\tconst configUpdates = {};\n\tfor (const [k, v] of Object.entries(valuesRaw)) {\n\t\tif (!allowedKeys.has(k)) continue;\n\t\tconst val = typeof v === \"string\" ? v : \"\";\n\t\tif (sensitiveKeys.has(k)) sensitiveUpdates[k] = val;\n\t\telse configUpdates[k] = val;\n\t}\n\tif (Object.keys(sensitiveUpdates).length === 0 && Object.keys(configUpdates).length === 0) return errorResponse(400, \"bad_request\", \"no schema-declared keys supplied\", {}, requestId);\n\ttry {\n\t\tif (Object.keys(sensitiveUpdates).length > 0) writeStackSecretEnv(state, sensitiveUpdates);\n\t\tif (Object.keys(configUpdates).length > 0) patchSecretsEnvFile(state.homeDir, configUpdates);\n\t} catch (err) {\n\t\tlogger.error(\"write failed\", {\n\t\t\tname,\n\t\t\terror: String(err),\n\t\t\trequestId\n\t\t});\n\t\treturn errorResponse(500, \"internal_error\", err instanceof Error ? err.message : \"write failed\", {}, requestId);\n\t}\n\treturn jsonResponse(200, {\n\t\tok: true,\n\t\tname,\n\t\tupdated: [...Object.keys(sensitiveUpdates), ...Object.keys(configUpdates)].sort()\n\t}, requestId);\n};\n//#endregion\nexport { GET, POST };\n"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { s as setActiveId } from './endpoints-
|
|
2
|
-
import { w as withAdminBody, e as errorResponse, k as jsonResponse } from './helpers-
|
|
3
|
-
import './state-
|
|
4
|
-
import './src-
|
|
1
|
+
import { s as setActiveId } from './endpoints-BpgyaHnY.js';
|
|
2
|
+
import { w as withAdminBody, e as errorResponse, k as jsonResponse } from './helpers-BEJZySFf.js';
|
|
3
|
+
import './state-BBeqCbpv.js';
|
|
4
|
+
import './src-CBQKBSM9.js';
|
|
5
5
|
import './chunk-CLZ62Ad-.js';
|
|
6
6
|
import 'node:module';
|
|
7
7
|
import './provider-constants-DPrj3yBX.js';
|
|
@@ -46,4 +46,4 @@ var POST = async (event) => withAdminBody(event, async ({ requestId, body }) =>
|
|
|
46
46
|
});
|
|
47
47
|
|
|
48
48
|
export { POST };
|
|
49
|
-
//# sourceMappingURL=_server.ts-
|
|
49
|
+
//# sourceMappingURL=_server.ts-BtQTA5QT.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-BtQTA5QT.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/endpoints/active/_server.ts.js"],"sourcesContent":["import { o as setActiveId } from \"../../../../../chunks/endpoints.js\";\nimport { i as errorResponse, l as jsonResponse, p as withAdminBody } from \"../../../../../chunks/helpers.js\";\n//#region src/routes/admin/endpoints/active/+server.ts\nvar POST = async (event) => withAdminBody(event, async ({ requestId, body }) => {\n\tconst id = typeof body.id === \"string\" ? body.id : \"\";\n\tif (!id) return errorResponse(400, \"invalid_request\", \"id is required\", {}, requestId);\n\ttry {\n\t\tconst active = setActiveId(id);\n\t\treturn jsonResponse(200, {\n\t\t\tactiveId: active.id,\n\t\t\tendpoint: {\n\t\t\t\tid: active.id,\n\t\t\t\tlabel: active.label,\n\t\t\t\turl: active.url,\n\t\t\t\tisDefault: active.isDefault,\n\t\t\t\thasPassword: Boolean(active.password)\n\t\t\t}\n\t\t}, requestId);\n\t} catch (e) {\n\t\treturn errorResponse(404, \"not_found\", e instanceof Error ? e.message : \"failed to set active endpoint\", {}, requestId);\n\t}\n});\n//#endregion\nexport { POST };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AACG,IAAC,IAAI,GAAG,OAAO,KAAK,KAAK,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK;AAChF,CAAC,MAAM,EAAE,GAAG,OAAO,IAAI,CAAC,EAAE,KAAK,QAAQ,GAAG,IAAI,CAAC,EAAE,GAAG,EAAE;AACtD,CAAC,IAAI,CAAC,EAAE,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,EAAE,EAAE,SAAS,CAAC;AACvF,CAAC,IAAI;AACL,EAAE,MAAM,MAAM,GAAG,WAAW,CAAC,EAAE,CAAC;AAChC,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE;AAC3B,GAAG,QAAQ,EAAE,MAAM,CAAC,EAAE;AACtB,GAAG,QAAQ,EAAE;AACb,IAAI,EAAE,EAAE,MAAM,CAAC,EAAE;AACjB,IAAI,KAAK,EAAE,MAAM,CAAC,KAAK;AACvB,IAAI,GAAG,EAAE,MAAM,CAAC,GAAG;AACnB,IAAI,SAAS,EAAE,MAAM,CAAC,SAAS;AAC/B,IAAI,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ;AACxC;AACA,GAAG,EAAE,SAAS,CAAC;AACf,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE;AACb,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC,YAAY,KAAK,GAAG,CAAC,CAAC,OAAO,GAAG,+BAA+B,EAAE,EAAE,EAAE,SAAS,CAAC;AACzH,CAAC;AACD,CAAC;;;;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { k as jsonResponse, d as getRequestId } from './helpers-
|
|
2
|
-
import './src-
|
|
1
|
+
import { k as jsonResponse, d as getRequestId } from './helpers-BEJZySFf.js';
|
|
2
|
+
import './src-CBQKBSM9.js';
|
|
3
3
|
import './chunk-CLZ62Ad-.js';
|
|
4
4
|
import 'node:module';
|
|
5
5
|
import './provider-constants-DPrj3yBX.js';
|
|
@@ -21,8 +21,8 @@ import 'zlib';
|
|
|
21
21
|
import 'node:assert';
|
|
22
22
|
import 'node:fs/promises';
|
|
23
23
|
import 'node:os';
|
|
24
|
-
import './endpoints-
|
|
25
|
-
import './state-
|
|
24
|
+
import './endpoints-BpgyaHnY.js';
|
|
25
|
+
import './state-BBeqCbpv.js';
|
|
26
26
|
|
|
27
27
|
//#region src/routes/health/+server.ts
|
|
28
28
|
var GET = async (event) => {
|
|
@@ -33,4 +33,4 @@ var GET = async (event) => {
|
|
|
33
33
|
};
|
|
34
34
|
|
|
35
35
|
export { GET };
|
|
36
|
-
//# sourceMappingURL=_server.ts-
|
|
36
|
+
//# sourceMappingURL=_server.ts-Bv6t8IPb.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-Bv6t8IPb.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/health/_server.ts.js"],"sourcesContent":["import { l as jsonResponse, o as getRequestId } from \"../../../chunks/helpers.js\";\n//#region src/routes/health/+server.ts\nvar GET = async (event) => {\n\treturn jsonResponse(200, {\n\t\tstatus: \"ok\",\n\t\tservice: \"admin\"\n\t}, getRequestId(event));\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AACA;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,OAAO,YAAY,CAAC,GAAG,EAAE;AAC1B,EAAE,MAAM,EAAE,IAAI;AACd,EAAE,OAAO,EAAE;AACX,EAAE,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;AACxB;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { w as withAdminBody, k as jsonResponse } from './helpers-
|
|
2
|
-
import { o as opencodeFetch } from './http-
|
|
1
|
+
import { w as withAdminBody, k as jsonResponse } from './helpers-BEJZySFf.js';
|
|
2
|
+
import { o as opencodeFetch } from './http-Cfjg0mI7.js';
|
|
3
3
|
import { a as asStringOrEmpty } from './_helpers-B_lb4-jB.js';
|
|
4
|
-
import './src-
|
|
4
|
+
import './src-CBQKBSM9.js';
|
|
5
5
|
import './chunk-CLZ62Ad-.js';
|
|
6
6
|
import 'node:module';
|
|
7
7
|
import './provider-constants-DPrj3yBX.js';
|
|
@@ -23,8 +23,8 @@ import 'zlib';
|
|
|
23
23
|
import 'node:assert';
|
|
24
24
|
import 'node:fs/promises';
|
|
25
25
|
import 'node:os';
|
|
26
|
-
import './endpoints-
|
|
27
|
-
import './state-
|
|
26
|
+
import './endpoints-BpgyaHnY.js';
|
|
27
|
+
import './state-BBeqCbpv.js';
|
|
28
28
|
import './coercion-TNFJisCC.js';
|
|
29
29
|
|
|
30
30
|
//#region src/routes/admin/providers/oauth/finish/+server.ts
|
|
@@ -65,4 +65,4 @@ var POST = (event) => withAdminBody(event, async ({ requestId, body }) => {
|
|
|
65
65
|
});
|
|
66
66
|
|
|
67
67
|
export { POST };
|
|
68
|
-
//# sourceMappingURL=_server.ts-
|
|
68
|
+
//# sourceMappingURL=_server.ts-BwAKeO4T.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-BwAKeO4T.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/providers/oauth/finish/_server.ts.js"],"sourcesContent":["import { l as jsonResponse, p as withAdminBody } from \"../../../../../../chunks/helpers.js\";\nimport { t as opencodeFetch } from \"../../../../../../chunks/http.js\";\nimport { t as asStringOrEmpty } from \"../../../../../../chunks/_helpers.js\";\n//#region src/routes/admin/providers/oauth/finish/+server.ts\n/**\n* POST /admin/providers/oauth/finish — Complete an OAuth code-mode\n* sign-in by exchanging the operator-pasted authorization code with the\n* assistant OpenCode instance.\n*/\nvar POST = (event) => withAdminBody(event, async ({ requestId, body }) => {\n\ttry {\n\t\tconst providerId = asStringOrEmpty(body.providerId);\n\t\tconst methodIndex = Number(asStringOrEmpty(body.methodIndex));\n\t\tconst code = asStringOrEmpty(body.code);\n\t\tif (!providerId || Number.isNaN(methodIndex) || !code) return jsonResponse(200, {\n\t\t\tok: false,\n\t\t\tmessage: \"Paste the authorization code before finishing sign-in.\",\n\t\t\tselectedProviderId: providerId\n\t\t}, requestId);\n\t\tawait opencodeFetch(`/provider/${encodeURIComponent(providerId)}/oauth/callback`, {\n\t\t\tmethod: \"POST\",\n\t\t\tbody: JSON.stringify({\n\t\t\t\tmethod: methodIndex,\n\t\t\t\tcode\n\t\t\t})\n\t\t});\n\t\treturn jsonResponse(200, {\n\t\t\tok: true,\n\t\t\tmessage: \"OAuth connection completed.\",\n\t\t\tselectedProviderId: providerId\n\t\t}, requestId);\n\t} catch (error) {\n\t\treturn jsonResponse(200, {\n\t\t\tok: false,\n\t\t\tmessage: error instanceof Error ? error.message : \"Internal error\",\n\t\t\tselectedProviderId: void 0\n\t\t}, requestId);\n\t}\n});\n//#endregion\nexport { POST };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;AACA;AACA;AACA;AACA;AACA;AACG,IAAC,IAAI,GAAG,CAAC,KAAK,KAAK,aAAa,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK;AAC1E,CAAC,IAAI;AACL,EAAE,MAAM,UAAU,GAAG,eAAe,CAAC,IAAI,CAAC,UAAU,CAAC;AACrD,EAAE,MAAM,WAAW,GAAG,MAAM,CAAC,eAAe,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;AAC/D,EAAE,MAAM,IAAI,GAAG,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC;AACzC,EAAE,IAAI,CAAC,UAAU,IAAI,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE;AAClF,GAAG,EAAE,EAAE,KAAK;AACZ,GAAG,OAAO,EAAE,wDAAwD;AACpE,GAAG,kBAAkB,EAAE;AACvB,GAAG,EAAE,SAAS,CAAC;AACf,EAAE,MAAM,aAAa,CAAC,CAAC,UAAU,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC,eAAe,CAAC,EAAE;AACpF,GAAG,MAAM,EAAE,MAAM;AACjB,GAAG,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;AACxB,IAAI,MAAM,EAAE,WAAW;AACvB,IAAI;AACJ,IAAI;AACJ,GAAG,CAAC;AACJ,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE;AAC3B,GAAG,EAAE,EAAE,IAAI;AACX,GAAG,OAAO,EAAE,6BAA6B;AACzC,GAAG,kBAAkB,EAAE;AACvB,GAAG,EAAE,SAAS,CAAC;AACf,CAAC,CAAC,CAAC,OAAO,KAAK,EAAE;AACjB,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE;AAC3B,GAAG,EAAE,EAAE,KAAK;AACZ,GAAG,OAAO,EAAE,KAAK,YAAY,KAAK,GAAG,KAAK,CAAC,OAAO,GAAG,gBAAgB;AACrE,GAAG,kBAAkB,EAAE;AACvB,GAAG,EAAE,SAAS,CAAC;AACf,CAAC;AACD,CAAC;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { d as getRequestId, h as invalidateSession } from './helpers-
|
|
2
|
-
import { S as SESSION_COOKIE_NAME, c as clearSessionCookieHeader } from './session-cookie-
|
|
3
|
-
import './src-
|
|
1
|
+
import { d as getRequestId, h as invalidateSession } from './helpers-BEJZySFf.js';
|
|
2
|
+
import { S as SESSION_COOKIE_NAME, c as clearSessionCookieHeader } from './session-cookie-DaI-X1u7.js';
|
|
3
|
+
import './src-CBQKBSM9.js';
|
|
4
4
|
import './chunk-CLZ62Ad-.js';
|
|
5
5
|
import 'node:module';
|
|
6
6
|
import './provider-constants-DPrj3yBX.js';
|
|
@@ -22,8 +22,8 @@ import 'zlib';
|
|
|
22
22
|
import 'node:assert';
|
|
23
23
|
import 'node:fs/promises';
|
|
24
24
|
import 'node:os';
|
|
25
|
-
import './endpoints-
|
|
26
|
-
import './state-
|
|
25
|
+
import './endpoints-BpgyaHnY.js';
|
|
26
|
+
import './state-BBeqCbpv.js';
|
|
27
27
|
|
|
28
28
|
//#region src/routes/admin/auth/logout/+server.ts
|
|
29
29
|
var POST = async (event) => {
|
|
@@ -41,4 +41,4 @@ var POST = async (event) => {
|
|
|
41
41
|
};
|
|
42
42
|
|
|
43
43
|
export { POST };
|
|
44
|
-
//# sourceMappingURL=_server.ts-
|
|
44
|
+
//# sourceMappingURL=_server.ts-ByISJcCm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-ByISJcCm.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/auth/logout/_server.ts.js"],"sourcesContent":["import { _ as invalidateSession, o as getRequestId } from \"../../../../../chunks/helpers.js\";\nimport { n as clearSessionCookieHeader, t as SESSION_COOKIE_NAME } from \"../../../../../chunks/session-cookie.js\";\n//#region src/routes/admin/auth/logout/+server.ts\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst match = (event.request.headers.get(\"cookie\") ?? \"\").match(new RegExp(`(?:^|;\\\\s*)${SESSION_COOKIE_NAME}=([^;]+)`));\n\tif (match) invalidateSession(match[1]);\n\treturn new Response(JSON.stringify({ ok: true }), {\n\t\tstatus: 200,\n\t\theaders: {\n\t\t\t\"content-type\": \"application/json\",\n\t\t\t\"set-cookie\": clearSessionCookieHeader(event.request),\n\t\t\t\"x-request-id\": requestId\n\t\t}\n\t});\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AACG,IAAC,IAAI,GAAG,OAAO,KAAK,KAAK;AAC5B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,KAAK,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,CAAC,WAAW,EAAE,mBAAmB,CAAC,QAAQ,CAAC,CAAC,CAAC;AACzH,CAAC,IAAI,KAAK,EAAE,iBAAiB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACvC,CAAC,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE;AACnD,EAAE,MAAM,EAAE,GAAG;AACb,EAAE,OAAO,EAAE;AACX,GAAG,cAAc,EAAE,kBAAkB;AACrC,GAAG,YAAY,EAAE,wBAAwB,CAAC,KAAK,CAAC,OAAO,CAAC;AACxD,GAAG,cAAc,EAAE;AACnB;AACA,EAAE,CAAC;AACH;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { g as getActiveEndpoint } from './endpoints-
|
|
2
|
-
import { d as getRequestId, r as requireAdmin, k as jsonResponse } from './helpers-
|
|
3
|
-
import './state-
|
|
4
|
-
import './src-
|
|
1
|
+
import { g as getActiveEndpoint } from './endpoints-BpgyaHnY.js';
|
|
2
|
+
import { d as getRequestId, r as requireAdmin, k as jsonResponse } from './helpers-BEJZySFf.js';
|
|
3
|
+
import './state-BBeqCbpv.js';
|
|
4
|
+
import './src-CBQKBSM9.js';
|
|
5
5
|
import './chunk-CLZ62Ad-.js';
|
|
6
6
|
import 'node:module';
|
|
7
7
|
import './provider-constants-DPrj3yBX.js';
|
|
@@ -55,4 +55,4 @@ var GET = async (event) => {
|
|
|
55
55
|
};
|
|
56
56
|
|
|
57
57
|
export { GET };
|
|
58
|
-
//# sourceMappingURL=_server.ts-
|
|
58
|
+
//# sourceMappingURL=_server.ts-C-F0jSYX.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-C-F0jSYX.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/health/_server.ts.js"],"sourcesContent":["import { r as getActiveEndpoint } from \"../../../../chunks/endpoints.js\";\nimport { d as requireAdmin, l as jsonResponse, o as getRequestId } from \"../../../../chunks/helpers.js\";\n//#region src/routes/admin/health/+server.ts\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst endpoint = getActiveEndpoint();\n\tlet opencode = false;\n\ttry {\n\t\tconst headers = {};\n\t\tif (endpoint.password) {\n\t\t\tconst user = endpoint.username || \"openpalm\";\n\t\t\theaders[\"authorization\"] = `Basic ${btoa(`${user}:${endpoint.password}`)}`;\n\t\t}\n\t\topencode = (await fetch(`${endpoint.url}/health`, {\n\t\t\theaders,\n\t\t\tsignal: AbortSignal.timeout(2e3)\n\t\t})).ok;\n\t} catch {}\n\treturn jsonResponse(200, {\n\t\tok: true,\n\t\topencode,\n\t\tendpoint: {\n\t\t\tid: endpoint.id,\n\t\t\tlabel: endpoint.label,\n\t\t\turl: endpoint.url,\n\t\t\tisDefault: endpoint.isDefault\n\t\t}\n\t}, requestId);\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AACjD,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS;AAChC,CAAC,MAAM,QAAQ,GAAG,iBAAiB,EAAE;AACrC,CAAC,IAAI,QAAQ,GAAG,KAAK;AACrB,CAAC,IAAI;AACL,EAAE,MAAM,OAAO,GAAG,EAAE;AACpB,EAAE,IAAI,QAAQ,CAAC,QAAQ,EAAE;AACzB,GAAG,MAAM,IAAI,GAAG,QAAQ,CAAC,QAAQ,IAAI,UAAU;AAC/C,GAAG,OAAO,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7E,EAAE;AACF,EAAE,QAAQ,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;AACpD,GAAG,OAAO;AACV,GAAG,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,GAAG;AAClC,GAAG,CAAC,EAAE,EAAE;AACR,CAAC,CAAC,CAAC,MAAM,CAAC;AACV,CAAC,OAAO,YAAY,CAAC,GAAG,EAAE;AAC1B,EAAE,EAAE,EAAE,IAAI;AACV,EAAE,QAAQ;AACV,EAAE,QAAQ,EAAE;AACZ,GAAG,EAAE,EAAE,QAAQ,CAAC,EAAE;AAClB,GAAG,KAAK,EAAE,QAAQ,CAAC,KAAK;AACxB,GAAG,GAAG,EAAE,QAAQ,CAAC,GAAG;AACpB,GAAG,SAAS,EAAE,QAAQ,CAAC;AACvB;AACA,EAAE,EAAE,SAAS,CAAC;AACd;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { j as json } from './exports-D1quPX8S.js';
|
|
2
|
-
import { r as requireAdmin, d as getRequestId } from './helpers-
|
|
2
|
+
import { r as requireAdmin, d as getRequestId } from './helpers-BEJZySFf.js';
|
|
3
3
|
import './utils-BSRjJDrZ.js';
|
|
4
|
-
import './src-
|
|
4
|
+
import './src-CBQKBSM9.js';
|
|
5
5
|
import './chunk-CLZ62Ad-.js';
|
|
6
6
|
import 'node:module';
|
|
7
7
|
import './provider-constants-DPrj3yBX.js';
|
|
@@ -23,8 +23,8 @@ import 'zlib';
|
|
|
23
23
|
import 'node:assert';
|
|
24
24
|
import 'node:fs/promises';
|
|
25
25
|
import 'node:os';
|
|
26
|
-
import './endpoints-
|
|
27
|
-
import './state-
|
|
26
|
+
import './endpoints-BpgyaHnY.js';
|
|
27
|
+
import './state-BBeqCbpv.js';
|
|
28
28
|
|
|
29
29
|
//#region src/lib/server/release-units.ts
|
|
30
30
|
var ELECTRON_ASSET_PATTERN = /^OpenPalm-.*\.(dmg|AppImage|zip|deb|rpm|pkg)$/i;
|
|
@@ -117,4 +117,4 @@ var GET = async (event) => {
|
|
|
117
117
|
};
|
|
118
118
|
|
|
119
119
|
export { GET };
|
|
120
|
-
//# sourceMappingURL=_server.ts-
|
|
120
|
+
//# sourceMappingURL=_server.ts-C0oFR9jI.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-C0oFR9jI.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/versions/releases/_server.ts.js"],"sourcesContent":["import { r as json } from \"../../../../../chunks/exports.js\";\nimport { d as requireAdmin, o as getRequestId } from \"../../../../../chunks/helpers.js\";\n//#region src/lib/server/release-units.ts\nvar ELECTRON_ASSET_PATTERN = /^OpenPalm-.*\\.(dmg|AppImage|zip|deb|rpm|pkg)$/i;\nvar PLATFORM_TAG_PATTERN = /^platform-(\\d+\\.\\d+\\.\\d+(?:[-+][0-9A-Za-z.-]*)?)$/;\nvar LEGACY_V_TAG_PATTERN = /^v(\\d+\\.\\d+\\.\\d+(?:[-+][0-9A-Za-z.-]*)?)$/;\n/**\n* Select only platform releases that carry installable app assets (Electron\n* installer or skeleton/deploy bundle), skipping per-unit container-image\n* releases.\n*\n* Per-unit version pickers now read from Docker Hub tags (not GitHub releases),\n* so the releases endpoint only needs app-level releases — the ones with\n* downloadable installer/bundle assets. This dramatically reduces the data the\n* UI holds and keeps the GitHub API call to its existing single request (the\n* filtering is client-side of the fetch, not a second fetch).\n*\n* Deduplicates by semver so `{#each r.tag}` keys stay unique when a platform\n* release created both a `platform-X.Y.Z` and a legacy `vX.Y.Z` tag. Preserves\n* GitHub's `created_at` desc ordering.\n*/\nfunction selectInstallableReleases(raw) {\n\tconst seen = /* @__PURE__ */ new Set();\n\tconst releases = [];\n\tfor (const r of raw) {\n\t\tconst hasElectronBuild = r.assets.some((a) => ELECTRON_ASSET_PATTERN.test(a.name));\n\t\tif (!hasElectronBuild) continue;\n\t\tconst platformMatch = r.tag_name.match(PLATFORM_TAG_PATTERN);\n\t\tif (platformMatch) {\n\t\t\tconst tag = platformMatch[1];\n\t\t\tif (!seen.has(tag)) {\n\t\t\t\tseen.add(tag);\n\t\t\t\treleases.push({\n\t\t\t\t\ttag,\n\t\t\t\t\tprerelease: r.prerelease,\n\t\t\t\t\tpublishedAt: r.published_at,\n\t\t\t\t\thasElectronBuild\n\t\t\t\t});\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\t\tconst legacyMatch = r.tag_name.match(LEGACY_V_TAG_PATTERN);\n\t\tif (legacyMatch) {\n\t\t\tconst tag = legacyMatch[1];\n\t\t\tif (!seen.has(tag)) {\n\t\t\t\tseen.add(tag);\n\t\t\t\treleases.push({\n\t\t\t\t\ttag,\n\t\t\t\t\tprerelease: r.prerelease,\n\t\t\t\t\tpublishedAt: r.published_at,\n\t\t\t\t\thasElectronBuild\n\t\t\t\t});\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\t}\n\treturn releases;\n}\n//#endregion\n//#region src/routes/admin/versions/releases/+server.ts\n/**\n* GET /admin/versions/releases — list installable platform releases from GitHub.\n*\n* Powers the desktop App-update badge: only platform releases that carry an\n* Electron installer asset. Best-effort — a GitHub outage yields an empty list\n* with an error signal rather than failing the page. (No server-side cache: the\n* admin UI no longer polls this, so a direct fetch per visit is fine.)\n*/\nvar GET = async (event) => {\n\tconst authError = requireAdmin(event, getRequestId(event));\n\tif (authError) return authError;\n\ttry {\n\t\tconst res = await fetch(\"https://api.github.com/repos/itlackey/openpalm/releases?per_page=20\", {\n\t\t\theaders: {\n\t\t\t\t\"User-Agent\": \"openpalm-admin/1.0\",\n\t\t\t\tAccept: \"application/vnd.github+json\"\n\t\t\t},\n\t\t\tsignal: AbortSignal.timeout(8e3)\n\t\t});\n\t\tif (!res.ok) return json({\n\t\t\treleases: [],\n\t\t\terror: \"GitHub releases unavailable\"\n\t\t});\n\t\treturn json({ releases: selectInstallableReleases(await res.json()) });\n\t} catch {\n\t\treturn json({\n\t\t\treleases: [],\n\t\t\terror: \"GitHub releases unavailable\"\n\t\t});\n\t}\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { d as getRequestId, r as requireAdmin, g as getOpenCodeClient, e as errorResponse, k as jsonResponse, p as parseJsonBody, j as jsonBodyError } from './helpers-
|
|
2
|
-
import { u as unsetMainModel, s as setMainModel } from './config-
|
|
3
|
-
import './src-
|
|
1
|
+
import { d as getRequestId, r as requireAdmin, g as getOpenCodeClient, e as errorResponse, k as jsonResponse, p as parseJsonBody, j as jsonBodyError } from './helpers-BEJZySFf.js';
|
|
2
|
+
import { u as unsetMainModel, s as setMainModel } from './config-T9SCux1L.js';
|
|
3
|
+
import './src-CBQKBSM9.js';
|
|
4
4
|
import './chunk-CLZ62Ad-.js';
|
|
5
5
|
import 'node:module';
|
|
6
6
|
import './provider-constants-DPrj3yBX.js';
|
|
@@ -22,10 +22,10 @@ import 'zlib';
|
|
|
22
22
|
import 'node:assert';
|
|
23
23
|
import 'node:fs/promises';
|
|
24
24
|
import 'node:os';
|
|
25
|
-
import './endpoints-
|
|
26
|
-
import './state-
|
|
25
|
+
import './endpoints-BpgyaHnY.js';
|
|
26
|
+
import './state-BBeqCbpv.js';
|
|
27
27
|
import './coercion-TNFJisCC.js';
|
|
28
|
-
import './http-
|
|
28
|
+
import './http-Cfjg0mI7.js';
|
|
29
29
|
|
|
30
30
|
//#region src/routes/admin/opencode/model/+server.ts
|
|
31
31
|
var GET = async (event) => {
|
|
@@ -82,4 +82,4 @@ var POST = async (event) => {
|
|
|
82
82
|
};
|
|
83
83
|
|
|
84
84
|
export { GET, POST };
|
|
85
|
-
//# sourceMappingURL=_server.ts-
|
|
85
|
+
//# sourceMappingURL=_server.ts-C6ZVknFm.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-C6ZVknFm.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/opencode/model/_server.ts.js"],"sourcesContent":["import { a as getOpenCodeClient, c as jsonBodyError, d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId, u as parseJsonBody } from \"../../../../../chunks/helpers.js\";\nimport { i as setMainModel, s as unsetMainModel } from \"../../../../../chunks/config.js\";\n//#region src/routes/admin/opencode/model/+server.ts\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst config = await getOpenCodeClient().getConfig();\n\tif (!config) return errorResponse(503, \"opencode_unavailable\", \"OpenCode is not reachable\", {}, requestId);\n\treturn jsonResponse(200, {\n\t\tmodel: config.model ?? \"\",\n\t\tsmall_model: config.small_model ?? \"\"\n\t}, requestId);\n};\n/** Parse a \"provider/model\" string. Returns null if the input is empty or malformed. */\nfunction parseProviderModel(raw) {\n\tif (typeof raw !== \"string\") return null;\n\tconst trimmed = raw.trim();\n\tif (!trimmed) return null;\n\tconst slash = trimmed.indexOf(\"/\");\n\tif (slash <= 0 || slash === trimmed.length - 1) return null;\n\treturn {\n\t\tprovider: trimmed.slice(0, slash),\n\t\tmodel: trimmed.slice(slash + 1)\n\t};\n}\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst result = await parseJsonBody(event.request);\n\tif (\"error\" in result) return jsonBodyError(result, requestId);\n\tconst body = result.data;\n\tconst hasModel = \"model\" in body;\n\tconst hasSmallModel = \"small_model\" in body;\n\tif (!hasModel && !hasSmallModel) return errorResponse(400, \"bad_request\", \"model or small_model is required\", {}, requestId);\n\ttry {\n\t\tif (hasModel) if (body.model === null || body.model === \"\") await unsetMainModel(\"model\");\n\t\telse {\n\t\t\tconst parsed = parseProviderModel(body.model);\n\t\t\tif (!parsed) return errorResponse(400, \"bad_request\", \"model must be in \\\"provider/model\\\" format\", {}, requestId);\n\t\t\tawait setMainModel(parsed.provider, parsed.model, \"model\");\n\t\t}\n\t\tif (hasSmallModel) if (body.small_model === null || body.small_model === \"\") await unsetMainModel(\"small_model\");\n\t\telse {\n\t\t\tconst parsed = parseProviderModel(body.small_model);\n\t\t\tif (!parsed) return errorResponse(400, \"bad_request\", \"small_model must be in \\\"provider/model\\\" format\", {}, requestId);\n\t\t\tawait setMainModel(parsed.provider, parsed.model, \"small_model\");\n\t\t}\n\t} catch (e) {\n\t\tconsole.warn(\"[opencode.model] Failed to persist model selection\", e);\n\t\treturn errorResponse(500, \"internal_error\", \"Failed to persist model selection\", {}, requestId);\n\t}\n\treturn jsonResponse(200, { ok: true }, requestId);\n};\n//#endregion\nexport { GET, POST };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AACjD,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS;AAChC,CAAC,MAAM,MAAM,GAAG,MAAM,iBAAiB,EAAE,CAAC,SAAS,EAAE;AACrD,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,sBAAsB,EAAE,2BAA2B,EAAE,EAAE,EAAE,SAAS,CAAC;AAC3G,CAAC,OAAO,YAAY,CAAC,GAAG,EAAE;AAC1B,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,EAAE;AAC3B,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,IAAI;AACrC,EAAE,EAAE,SAAS,CAAC;AACd;AACA;AACA,SAAS,kBAAkB,CAAC,GAAG,EAAE;AACjC,CAAC,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE,OAAO,IAAI;AACzC,CAAC,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,EAAE;AAC3B,CAAC,IAAI,CAAC,OAAO,EAAE,OAAO,IAAI;AAC1B,CAAC,MAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC;AACnC,CAAC,IAAI,KAAK,IAAI,CAAC,IAAI,KAAK,KAAK,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,OAAO,IAAI;AAC5D,CAAC,OAAO;AACR,EAAE,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC;AACnC,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC;AAChC,EAAE;AACF;AACG,IAAC,IAAI,GAAG,OAAO,KAAK,KAAK;AAC5B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AACjD,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS;AAChC,CAAC,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC;AAClD,CAAC,IAAI,OAAO,IAAI,MAAM,EAAE,OAAO,aAAa,CAAC,MAAM,EAAE,SAAS,CAAC;AAC/D,CAAC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI;AACzB,CAAC,MAAM,QAAQ,GAAG,OAAO,IAAI,IAAI;AACjC,CAAC,MAAM,aAAa,GAAG,aAAa,IAAI,IAAI;AAC5C,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,aAAa,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,aAAa,EAAE,kCAAkC,EAAE,EAAE,EAAE,SAAS,CAAC;AAC7H,CAAC,IAAI;AACL,EAAE,IAAI,QAAQ,EAAE,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,KAAK,EAAE,EAAE,MAAM,cAAc,CAAC,OAAO,CAAC;AAC3F,OAAO;AACP,GAAG,MAAM,MAAM,GAAG,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC;AAChD,GAAG,IAAI,CAAC,MAAM,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,aAAa,EAAE,4CAA4C,EAAE,EAAE,EAAE,SAAS,CAAC;AACrH,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,CAAC;AAC7D,EAAE;AACF,EAAE,IAAI,aAAa,EAAE,IAAI,IAAI,CAAC,WAAW,KAAK,IAAI,IAAI,IAAI,CAAC,WAAW,KAAK,EAAE,EAAE,MAAM,cAAc,CAAC,aAAa,CAAC;AAClH,OAAO;AACP,GAAG,MAAM,MAAM,GAAG,kBAAkB,CAAC,IAAI,CAAC,WAAW,CAAC;AACtD,GAAG,IAAI,CAAC,MAAM,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,aAAa,EAAE,kDAAkD,EAAE,EAAE,EAAE,SAAS,CAAC;AAC3H,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAE,aAAa,CAAC;AACnE,EAAE;AACF,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE;AACb,EAAE,OAAO,CAAC,IAAI,CAAC,oDAAoD,EAAE,CAAC,CAAC;AACvE,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,gBAAgB,EAAE,mCAAmC,EAAE,EAAE,EAAE,SAAS,CAAC;AACjG,CAAC;AACD,CAAC,OAAO,YAAY,CAAC,GAAG,EAAE,EAAE,EAAE,EAAE,IAAI,EAAE,EAAE,SAAS,CAAC;AAClD;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { j as json } from './exports-D1quPX8S.js';
|
|
2
|
-
import { r as requireAdmin, d as getRequestId } from './helpers-
|
|
2
|
+
import { r as requireAdmin, d as getRequestId } from './helpers-BEJZySFf.js';
|
|
3
3
|
import './utils-BSRjJDrZ.js';
|
|
4
|
-
import './src-
|
|
4
|
+
import './src-CBQKBSM9.js';
|
|
5
5
|
import './chunk-CLZ62Ad-.js';
|
|
6
6
|
import 'node:module';
|
|
7
7
|
import './provider-constants-DPrj3yBX.js';
|
|
@@ -23,8 +23,8 @@ import 'zlib';
|
|
|
23
23
|
import 'node:assert';
|
|
24
24
|
import 'node:fs/promises';
|
|
25
25
|
import 'node:os';
|
|
26
|
-
import './endpoints-
|
|
27
|
-
import './state-
|
|
26
|
+
import './endpoints-BpgyaHnY.js';
|
|
27
|
+
import './state-BBeqCbpv.js';
|
|
28
28
|
|
|
29
29
|
//#region src/routes/admin/versions/ui/+server.ts
|
|
30
30
|
var UI_PACKAGE = "@openpalm/ui";
|
|
@@ -81,4 +81,4 @@ var GET = async (event) => {
|
|
|
81
81
|
};
|
|
82
82
|
|
|
83
83
|
export { GET };
|
|
84
|
-
//# sourceMappingURL=_server.ts-
|
|
84
|
+
//# sourceMappingURL=_server.ts-C7nxO7oZ.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-C7nxO7oZ.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/versions/ui/_server.ts.js"],"sourcesContent":["import { r as json } from \"../../../../../chunks/exports.js\";\nimport { d as requireAdmin, o as getRequestId } from \"../../../../../chunks/helpers.js\";\n//#region src/routes/admin/versions/ui/+server.ts\nvar UI_PACKAGE = \"@openpalm/ui\";\n/**\n* List published `@openpalm/ui` npm versions for the admin \"UI build\" picker.\n*\n* The UI is independently versioned and distributed via npm, so this is the\n* authoritative source of installable UI builds — the selected version is POSTed\n* to /admin/ui-version, which seeds it from npm. Best-effort: a 404 (package not\n* yet published) or registry outage yields an empty list. Newest-first. (No\n* server-side cache — the admin UI no longer polls this.)\n*/\nvar GET = async (event) => {\n\tconst authError = requireAdmin(event, getRequestId(event));\n\tif (authError) return authError;\n\ttry {\n\t\tconst res = await fetch(`https://registry.npmjs.org/${encodeURIComponent(UI_PACKAGE)}`, {\n\t\t\theaders: {\n\t\t\t\tAccept: \"application/json\",\n\t\t\t\t\"User-Agent\": \"openpalm-admin/1.0\"\n\t\t\t},\n\t\t\tsignal: AbortSignal.timeout(8e3)\n\t\t});\n\t\tif (!res.ok) return json({\n\t\t\tversions: [],\n\t\t\tdistTags: {},\n\t\t\terror: \"npm registry unavailable\"\n\t\t});\n\t\tconst pack = await res.json();\n\t\tconst distTagByVersion = /* @__PURE__ */ new Map();\n\t\tconst distTags = {};\n\t\tfor (const [tag, version] of Object.entries(pack[\"dist-tags\"] ?? {})) {\n\t\t\tdistTags[tag] = version;\n\t\t\tif (!distTagByVersion.has(version) || tag === \"latest\") distTagByVersion.set(version, tag);\n\t\t}\n\t\tconst allVersions = Object.keys(pack.versions ?? {});\n\t\tconst time = pack.time ?? {};\n\t\treturn json({\n\t\t\tversions: allVersions.map((version) => ({\n\t\t\t\tversion,\n\t\t\t\tprerelease: version.includes(\"-\"),\n\t\t\t\tpublishedAt: time[version] ?? null,\n\t\t\t\tdistTag: distTagByVersion.get(version) ?? null\n\t\t\t})).sort((a, b) => (b.publishedAt ?? \"\").localeCompare(a.publishedAt ?? \"\")).slice(0, 20),\n\t\t\tdistTags\n\t\t});\n\t} catch {\n\t\treturn json({\n\t\t\tversions: [],\n\t\t\tdistTags: {},\n\t\t\terror: \"npm registry unavailable\"\n\t\t});\n\t}\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AACA,IAAI,UAAU,GAAG,cAAc;AAC/B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC;AAC3D,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS;AAChC,CAAC,IAAI;AACL,EAAE,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,CAAC,2BAA2B,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE;AAC1F,GAAG,OAAO,EAAE;AACZ,IAAI,MAAM,EAAE,kBAAkB;AAC9B,IAAI,YAAY,EAAE;AAClB,IAAI;AACJ,GAAG,MAAM,EAAE,WAAW,CAAC,OAAO,CAAC,GAAG;AAClC,GAAG,CAAC;AACJ,EAAE,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,OAAO,IAAI,CAAC;AAC3B,GAAG,QAAQ,EAAE,EAAE;AACf,GAAG,QAAQ,EAAE,EAAE;AACf,GAAG,KAAK,EAAE;AACV,GAAG,CAAC;AACJ,EAAE,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE;AAC/B,EAAE,MAAM,gBAAgB,mBAAmB,IAAI,GAAG,EAAE;AACpD,EAAE,MAAM,QAAQ,GAAG,EAAE;AACrB,EAAE,KAAK,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,EAAE;AACxE,GAAG,QAAQ,CAAC,GAAG,CAAC,GAAG,OAAO;AAC1B,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,KAAK,QAAQ,EAAE,gBAAgB,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC;AAC7F,EAAE;AACF,EAAE,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC;AACtD,EAAE,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,IAAI,EAAE;AAC9B,EAAE,OAAO,IAAI,CAAC;AACd,GAAG,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,OAAO,MAAM;AAC3C,IAAI,OAAO;AACX,IAAI,UAAU,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;AACrC,IAAI,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI;AACtC,IAAI,OAAO,EAAE,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI;AAC9C,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,EAAE,aAAa,CAAC,CAAC,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC;AAC5F,GAAG;AACH,GAAG,CAAC;AACJ,CAAC,CAAC,CAAC,MAAM;AACT,EAAE,OAAO,IAAI,CAAC;AACd,GAAG,QAAQ,EAAE,EAAE;AACf,GAAG,QAAQ,EAAE,EAAE;AACf,GAAG,KAAK,EAAE;AACV,GAAG,CAAC;AACJ,CAAC;AACD;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { F as createLogger, m as buildComposeOptions, o as checkDocker, d as applyStack, f as applyUpdate } from './src-
|
|
2
|
-
import { g as getState } from './state-
|
|
3
|
-
import { d as getRequestId, r as requireAdmin, k as jsonResponse, e as errorResponse } from './helpers-
|
|
1
|
+
import { ab as isVersionKey, F as createLogger, m as buildComposeOptions, o as checkDocker, ao as patchSecretsEnvFile, d as applyStack, f as applyUpdate } from './src-CBQKBSM9.js';
|
|
2
|
+
import { g as getState } from './state-BBeqCbpv.js';
|
|
3
|
+
import { d as getRequestId, r as requireAdmin, k as jsonResponse, e as errorResponse } from './helpers-BEJZySFf.js';
|
|
4
4
|
import { w as withSerialQueue } from './serial-queue-D9FEpYVv.js';
|
|
5
5
|
import './chunk-CLZ62Ad-.js';
|
|
6
6
|
import 'node:module';
|
|
@@ -23,7 +23,7 @@ import 'zlib';
|
|
|
23
23
|
import 'node:assert';
|
|
24
24
|
import 'node:fs/promises';
|
|
25
25
|
import 'node:os';
|
|
26
|
-
import './endpoints-
|
|
26
|
+
import './endpoints-BpgyaHnY.js';
|
|
27
27
|
|
|
28
28
|
//#region src/routes/admin/update/+server.ts
|
|
29
29
|
var logger = createLogger("update");
|
|
@@ -33,9 +33,13 @@ var POST = async (event) => {
|
|
|
33
33
|
const authError = requireAdmin(event, requestId);
|
|
34
34
|
if (authError) return authError;
|
|
35
35
|
let service;
|
|
36
|
+
const targetVersions = {};
|
|
36
37
|
try {
|
|
37
38
|
const body = event.request.headers.get("content-type")?.includes("application/json") ? await event.request.json() : {};
|
|
38
39
|
if (typeof body?.service === "string" && body.service.trim()) service = body.service.trim();
|
|
40
|
+
if (body?.versions && typeof body.versions === "object") {
|
|
41
|
+
for (const [k, v] of Object.entries(body.versions)) if (isVersionKey(k) && typeof v === "string" && v.trim()) targetVersions[k] = v.trim();
|
|
42
|
+
}
|
|
39
43
|
} catch {}
|
|
40
44
|
return withSerialQueue("admin:update", async () => {
|
|
41
45
|
try {
|
|
@@ -51,6 +55,13 @@ var POST = async (event) => {
|
|
|
51
55
|
overallSuccess: false
|
|
52
56
|
}, requestId);
|
|
53
57
|
}
|
|
58
|
+
if (Object.keys(targetVersions).length > 0) {
|
|
59
|
+
patchSecretsEnvFile(state.homeDir, targetVersions);
|
|
60
|
+
logger.info("advanced versions before update", {
|
|
61
|
+
requestId,
|
|
62
|
+
targetVersions
|
|
63
|
+
});
|
|
64
|
+
}
|
|
54
65
|
if (service) {
|
|
55
66
|
logger.info("scoped service update", {
|
|
56
67
|
requestId,
|
|
@@ -115,4 +126,4 @@ var POST = async (event) => {
|
|
|
115
126
|
};
|
|
116
127
|
|
|
117
128
|
export { POST };
|
|
118
|
-
//# sourceMappingURL=_server.ts-
|
|
129
|
+
//# sourceMappingURL=_server.ts-CDdKFVNE.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_server.ts-CDdKFVNE.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/update/_server.ts.js"],"sourcesContent":["import { I as applyUpdate, J as checkDocker, N as buildComposeOptions, Pt as isVersionKey, Vt as patchSecretsEnvFile, fn as createLogger, q as applyStack } from \"../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../chunks/state.js\";\nimport { d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId } from \"../../../../chunks/helpers.js\";\nimport { t as withSerialQueue } from \"../../../../chunks/serial-queue.js\";\n//#region src/routes/admin/update/+server.ts\nvar logger = createLogger(\"update\");\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tlogger.info(\"update request received\", { requestId });\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tlet service;\n\tconst targetVersions = {};\n\ttry {\n\t\tconst body = event.request.headers.get(\"content-type\")?.includes(\"application/json\") ? await event.request.json() : {};\n\t\tif (typeof body?.service === \"string\" && body.service.trim()) service = body.service.trim();\n\t\tif (body?.versions && typeof body.versions === \"object\") {\n\t\t\tfor (const [k, v] of Object.entries(body.versions)) if (isVersionKey(k) && typeof v === \"string\" && v.trim()) targetVersions[k] = v.trim();\n\t\t}\n\t} catch {}\n\treturn withSerialQueue(\"admin:update\", async () => {\n\t\ttry {\n\t\t\tconst state = getState();\n\t\t\tconst composeOpts = buildComposeOptions(state);\n\t\t\tif (!(await checkDocker()).ok) {\n\t\t\t\tlogger.info(\"Docker unavailable — update rejected\", { requestId });\n\t\t\t\treturn jsonResponse(200, {\n\t\t\t\t\tok: false,\n\t\t\t\t\trestarted: [],\n\t\t\t\t\tfailed: [],\n\t\t\t\t\tdockerAvailable: false,\n\t\t\t\t\toverallSuccess: false\n\t\t\t\t}, requestId);\n\t\t\t}\n\t\t\tif (Object.keys(targetVersions).length > 0) {\n\t\t\t\tpatchSecretsEnvFile(state.homeDir, targetVersions);\n\t\t\t\tlogger.info(\"advanced versions before update\", {\n\t\t\t\t\trequestId,\n\t\t\t\t\ttargetVersions\n\t\t\t\t});\n\t\t\t}\n\t\t\tif (service) {\n\t\t\t\tlogger.info(\"scoped service update\", {\n\t\t\t\t\trequestId,\n\t\t\t\t\tservice\n\t\t\t\t});\n\t\t\t\tconst stackResult = await applyStack({\n\t\t\t\t\tkind: \"service\",\n\t\t\t\t\tservice\n\t\t\t\t}, composeOpts);\n\t\t\t\tconst overallSuccess = stackResult.ok;\n\t\t\t\tconst status = stackResult.ok ? 200 : 502;\n\t\t\t\tlogger.info(\"service update completed\", {\n\t\t\t\t\trequestId,\n\t\t\t\t\tservice,\n\t\t\t\t\toverallSuccess,\n\t\t\t\t\tstartedCount: stackResult.started.length,\n\t\t\t\t\tfailedCount: stackResult.failed.length,\n\t\t\t\t\terror: stackResult.error\n\t\t\t\t});\n\t\t\t\treturn jsonResponse(status, {\n\t\t\t\t\tok: overallSuccess,\n\t\t\t\t\trestarted: stackResult.started,\n\t\t\t\t\tfailed: stackResult.failed,\n\t\t\t\t\tdockerAvailable: true,\n\t\t\t\t\toverallSuccess,\n\t\t\t\t\t...stackResult.error ? { error: stackResult.error } : {}\n\t\t\t\t}, requestId);\n\t\t\t}\n\t\t\tconst result = await applyUpdate(state);\n\t\t\tlogger.info(\"update applied, running applyStack\", {\n\t\t\t\trequestId,\n\t\t\t\tintended: result.restarted\n\t\t\t});\n\t\t\tconst stackResult = await applyStack({ kind: \"all\" }, composeOpts);\n\t\t\tconst overallSuccess = stackResult.ok;\n\t\t\tconst status = stackResult.ok ? 200 : 502;\n\t\t\tlogger.info(\"update completed\", {\n\t\t\t\trequestId,\n\t\t\t\tdockerAvailable: true,\n\t\t\t\toverallSuccess,\n\t\t\t\tstartedCount: stackResult.started.length,\n\t\t\t\tfailedCount: stackResult.failed.length,\n\t\t\t\terror: stackResult.error\n\t\t\t});\n\t\t\treturn jsonResponse(status, {\n\t\t\t\tok: overallSuccess,\n\t\t\t\trestarted: stackResult.started,\n\t\t\t\tfailed: stackResult.failed,\n\t\t\t\tdockerAvailable: true,\n\t\t\t\toverallSuccess,\n\t\t\t\t...stackResult.error ? { error: stackResult.error } : {}\n\t\t\t}, requestId);\n\t\t} catch (err) {\n\t\t\tconst msg = err instanceof Error ? err.message : String(err);\n\t\t\tlogger.error(\"update failed\", {\n\t\t\t\trequestId,\n\t\t\t\terror: msg\n\t\t\t});\n\t\t\treturn errorResponse(500, \"update_failed\", msg, {}, requestId);\n\t\t}\n\t});\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":"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"}
|