@openpalm/ui 0.11.1 → 0.11.2-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/.openpalm-ui-version +1 -1
- package/build/client/_app/immutable/assets/9.CK_nuPTW.css +1 -0
- package/build/client/_app/immutable/assets/9.CK_nuPTW.css.br +0 -0
- package/build/client/_app/immutable/assets/9.CK_nuPTW.css.gz +0 -0
- package/build/client/_app/immutable/chunks/{C5xMso3V.js → B9kBGpAJ.js} +1 -1
- package/build/client/_app/immutable/chunks/B9kBGpAJ.js.br +0 -0
- package/build/client/_app/immutable/chunks/B9kBGpAJ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BTqXEXC4.js +3 -0
- package/build/client/_app/immutable/chunks/BTqXEXC4.js.br +0 -0
- package/build/client/_app/immutable/chunks/BTqXEXC4.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Bx59jv_h.js +1 -0
- package/build/client/_app/immutable/chunks/Bx59jv_h.js.br +1 -0
- package/build/client/_app/immutable/chunks/Bx59jv_h.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{BBdT9Cjm.js → CBsYTB66.js} +1 -1
- package/build/client/_app/immutable/chunks/CBsYTB66.js.br +0 -0
- package/build/client/_app/immutable/chunks/CBsYTB66.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DQhBfV9e.js +1 -0
- package/build/client/_app/immutable/chunks/DQhBfV9e.js.br +2 -0
- package/build/client/_app/immutable/chunks/DQhBfV9e.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{s4upGypb.js → DyJ19VZu.js} +1 -1
- package/build/client/_app/immutable/chunks/DyJ19VZu.js.br +0 -0
- package/build/client/_app/immutable/chunks/DyJ19VZu.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{BQ0vnNWj.js → adhfkYFR.js} +1 -1
- package/build/client/_app/immutable/chunks/adhfkYFR.js.br +0 -0
- package/build/client/_app/immutable/chunks/adhfkYFR.js.gz +0 -0
- package/build/client/_app/immutable/chunks/bVbUAUAn.js +3 -0
- package/build/client/_app/immutable/chunks/bVbUAUAn.js.br +0 -0
- package/build/client/_app/immutable/chunks/bVbUAUAn.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{jhtvkF_A.js → c0HpR2WI.js} +1 -1
- package/build/client/_app/immutable/chunks/c0HpR2WI.js.br +0 -0
- package/build/client/_app/immutable/chunks/c0HpR2WI.js.gz +0 -0
- package/build/client/_app/immutable/entry/{app.BhaNzXRa.js → app.DPmsGUJp.js} +2 -2
- package/build/client/_app/immutable/entry/app.DPmsGUJp.js.br +0 -0
- package/build/client/_app/immutable/entry/app.DPmsGUJp.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.Cco8Jp7y.js +1 -0
- package/build/client/_app/immutable/entry/start.Cco8Jp7y.js.br +0 -0
- package/build/client/_app/immutable/entry/start.Cco8Jp7y.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{0.0pi4RS6G.js → 0.Dtu4G17f.js} +1 -1
- package/build/client/_app/immutable/nodes/0.Dtu4G17f.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.Dtu4G17f.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{1.B8IsMtPo.js → 1.tXMubY47.js} +1 -1
- package/build/client/_app/immutable/nodes/1.tXMubY47.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.tXMubY47.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.BAZ2QRxd.js +1 -0
- package/build/client/_app/immutable/nodes/2.BAZ2QRxd.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.BAZ2QRxd.js.gz +0 -0
- package/build/client/_app/immutable/nodes/3.CU_MVBDy.js +1 -0
- package/build/client/_app/immutable/nodes/3.CU_MVBDy.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.CU_MVBDy.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{4.Jf5TbLTF.js → 4.CEDfN_Gi.js} +1 -1
- package/build/client/_app/immutable/nodes/4.CEDfN_Gi.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.CEDfN_Gi.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{5.BXOM2W9q.js → 5.CTedszia.js} +1 -1
- package/build/client/_app/immutable/nodes/5.CTedszia.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.CTedszia.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{6.fVxTNYsE.js → 6.Dj2G5q_Y.js} +1 -1
- package/build/client/_app/immutable/nodes/6.Dj2G5q_Y.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.Dj2G5q_Y.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{7.E4FAL2cc.js → 7.D6Nw-pl1.js} +1 -1
- package/build/client/_app/immutable/nodes/7.D6Nw-pl1.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.D6Nw-pl1.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{8.By5-pJpM.js → 8.DzpdIlcK.js} +1 -1
- package/build/client/_app/immutable/nodes/8.DzpdIlcK.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.DzpdIlcK.js.gz +0 -0
- package/build/client/_app/immutable/nodes/9.q6VxiDYg.js +45 -0
- package/build/client/_app/immutable/nodes/9.q6VxiDYg.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.q6VxiDYg.js.gz +0 -0
- package/build/client/_app/version.json +1 -1
- package/build/client/_app/version.json.br +1 -1
- package/build/client/_app/version.json.gz +0 -0
- package/build/client/setup/wizard.css +10 -17
- package/build/client/setup/wizard.css.br +0 -0
- package/build/client/setup/wizard.css.gz +0 -0
- package/build/server/chunks/{0-BK7D9z9V.js → 0-CohBWzrb.js} +2 -2
- package/build/server/chunks/{0-BK7D9z9V.js.map → 0-CohBWzrb.js.map} +1 -1
- package/build/server/chunks/1-9GlsaHWX.js +9 -0
- package/build/server/chunks/{1-DiEYpQIN.js.map → 1-9GlsaHWX.js.map} +1 -1
- package/build/server/chunks/{2-DQWoUtW1.js → 2-vy1PpAbA.js} +2 -2
- package/build/server/chunks/{2-DQWoUtW1.js.map → 2-vy1PpAbA.js.map} +1 -1
- package/build/server/chunks/{3-COIGgysA.js → 3-BU0uFnIR.js} +2 -2
- package/build/server/chunks/{3-COIGgysA.js.map → 3-BU0uFnIR.js.map} +1 -1
- package/build/server/chunks/4-ldHpTpq0.js +9 -0
- package/build/server/chunks/{4-pHqpXb3H.js.map → 4-ldHpTpq0.js.map} +1 -1
- package/build/server/chunks/5-B6iGAka8.js +9 -0
- package/build/server/chunks/{5-D48D_0uX.js.map → 5-B6iGAka8.js.map} +1 -1
- package/build/server/chunks/6-BSZX2-mS.js +9 -0
- package/build/server/chunks/{6-CQ5NktVc.js.map → 6-BSZX2-mS.js.map} +1 -1
- package/build/server/chunks/7-C1xYJqTn.js +9 -0
- package/build/server/chunks/{7-Cbs2uIrU.js.map → 7-C1xYJqTn.js.map} +1 -1
- package/build/server/chunks/{8-Cp8CGb0N.js → 8-CkxlZEhw.js} +3 -3
- package/build/server/chunks/{8-Cp8CGb0N.js.map → 8-CkxlZEhw.js.map} +1 -1
- package/build/server/chunks/9-CReuqtkZ.js +9 -0
- package/build/server/chunks/{9-BKnkc58p.js.map → 9-CReuqtkZ.js.map} +1 -1
- package/build/server/chunks/{Navbar-PVEly3CX.js → Navbar-CvtXS8Br.js} +3 -3
- package/build/server/chunks/{Navbar-PVEly3CX.js.map → Navbar-CvtXS8Br.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-B1SlSu-R.js → _page.svelte-DLOnDP4u.js} +5 -5
- package/build/server/chunks/{_page.svelte-B1SlSu-R.js.map → _page.svelte-DLOnDP4u.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-BY2APmQv.js → _page.svelte-DPRrE2o7.js} +5 -5
- package/build/server/chunks/{_page.svelte-BY2APmQv.js.map → _page.svelte-DPRrE2o7.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-CDCe-J7o.js → _page.svelte-Dil5xfYa.js} +22 -1
- package/build/server/chunks/_page.svelte-Dil5xfYa.js.map +1 -0
- package/build/server/chunks/{_page.svelte-DtrBTed5.js → _page.svelte-DqmfyUaG.js} +3 -3
- package/build/server/chunks/{_page.svelte-DtrBTed5.js.map → _page.svelte-DqmfyUaG.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-DadWXVrr.js → _page.svelte-PbgUQ4cZ.js} +5 -5
- package/build/server/chunks/{_page.svelte-DadWXVrr.js.map → _page.svelte-PbgUQ4cZ.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-CF6Wb9iE.js → _page.svelte-YTnL96oH.js} +6 -6
- package/build/server/chunks/{_page.svelte-CF6Wb9iE.js.map → _page.svelte-YTnL96oH.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DTJuIcDg.js → _server.ts-0-ApvfUF.js} +4 -4
- package/build/server/chunks/{_server.ts-DTJuIcDg.js.map → _server.ts-0-ApvfUF.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CqkM3R41.js → _server.ts-3N-jIKPt.js} +4 -4
- package/build/server/chunks/{_server.ts-CqkM3R41.js.map → _server.ts-3N-jIKPt.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Bde_Pi6A.js → _server.ts-B0-0yZap.js} +5 -5
- package/build/server/chunks/{_server.ts-Bde_Pi6A.js.map → _server.ts-B0-0yZap.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B8pCRdwo.js → _server.ts-B2wk42hT.js} +9 -7
- package/build/server/chunks/_server.ts-B2wk42hT.js.map +1 -0
- package/build/server/chunks/{_server.ts-D2QOo_fa.js → _server.ts-B4V9SeNf.js} +4 -4
- package/build/server/chunks/{_server.ts-D2QOo_fa.js.map → _server.ts-B4V9SeNf.js.map} +1 -1
- package/build/server/chunks/{_server.ts-D7vymw_o.js → _server.ts-BACShnCW.js} +4 -4
- package/build/server/chunks/{_server.ts-D7vymw_o.js.map → _server.ts-BACShnCW.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Bh_r4-Vs.js → _server.ts-BEHfO4TD.js} +54 -27
- package/build/server/chunks/_server.ts-BEHfO4TD.js.map +1 -0
- package/build/server/chunks/{_server.ts-B2vBBz6Q.js → _server.ts-BGwZSYn-.js} +4 -4
- package/build/server/chunks/{_server.ts-B2vBBz6Q.js.map → _server.ts-BGwZSYn-.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Cm9oppJJ.js → _server.ts-BMpP5PNG.js} +4 -4
- package/build/server/chunks/{_server.ts-Cm9oppJJ.js.map → _server.ts-BMpP5PNG.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CxJxINit.js → _server.ts-BNcRsaYO.js} +4 -4
- package/build/server/chunks/{_server.ts-CxJxINit.js.map → _server.ts-BNcRsaYO.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BdEX6joM.js → _server.ts-BP8lFvxH.js} +4 -4
- package/build/server/chunks/{_server.ts-BdEX6joM.js.map → _server.ts-BP8lFvxH.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BYUfQeRr.js → _server.ts-BR4XEibW.js} +5 -5
- package/build/server/chunks/{_server.ts-BYUfQeRr.js.map → _server.ts-BR4XEibW.js.map} +1 -1
- package/build/server/chunks/{_server.ts-yvQ-qjyI.js → _server.ts-BS1_TD9E.js} +4 -4
- package/build/server/chunks/{_server.ts-yvQ-qjyI.js.map → _server.ts-BS1_TD9E.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DgZ2d-BT.js → _server.ts-BTyvF6Nf.js} +4 -4
- package/build/server/chunks/{_server.ts-DgZ2d-BT.js.map → _server.ts-BTyvF6Nf.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Big7vXEo.js → _server.ts-BVc71p7g.js} +4 -4
- package/build/server/chunks/{_server.ts-Big7vXEo.js.map → _server.ts-BVc71p7g.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BN3w-iUI.js → _server.ts-Bb3Cujgm.js} +4 -4
- package/build/server/chunks/{_server.ts-BN3w-iUI.js.map → _server.ts-Bb3Cujgm.js.map} +1 -1
- package/build/server/chunks/{_server.ts-__ul4l8J.js → _server.ts-Bg7ik1iz.js} +4 -4
- package/build/server/chunks/_server.ts-Bg7ik1iz.js.map +1 -0
- package/build/server/chunks/{_server.ts-B3uweiKb.js → _server.ts-BkAHRjAx.js} +6 -6
- package/build/server/chunks/{_server.ts-B3uweiKb.js.map → _server.ts-BkAHRjAx.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BwgtyrgF.js → _server.ts-BkOGrDZ4.js} +5 -5
- package/build/server/chunks/{_server.ts-BwgtyrgF.js.map → _server.ts-BkOGrDZ4.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Dnh6b7-J.js → _server.ts-BpQxnQ2O.js} +4 -4
- package/build/server/chunks/{_server.ts-Dnh6b7-J.js.map → _server.ts-BpQxnQ2O.js.map} +1 -1
- package/build/server/chunks/{_server.ts-w34_y9d_.js → _server.ts-Bs4cf3Bg.js} +27 -5
- package/build/server/chunks/_server.ts-Bs4cf3Bg.js.map +1 -0
- package/build/server/chunks/{_server.ts-C-9V_-cK.js → _server.ts-Btgzl9Ds.js} +4 -4
- package/build/server/chunks/{_server.ts-C-9V_-cK.js.map → _server.ts-Btgzl9Ds.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DfFo95a7.js → _server.ts-C0hfYyE8.js} +4 -4
- package/build/server/chunks/{_server.ts-DfFo95a7.js.map → _server.ts-C0hfYyE8.js.map} +1 -1
- package/build/server/chunks/{_server.ts-MNOR6YaX.js → _server.ts-C7p2LyhO.js} +4 -4
- package/build/server/chunks/{_server.ts-MNOR6YaX.js.map → _server.ts-C7p2LyhO.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DSlYMYYk.js → _server.ts-CE5OGGjJ.js} +4 -4
- package/build/server/chunks/{_server.ts-DSlYMYYk.js.map → _server.ts-CE5OGGjJ.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CCwIt_KL.js → _server.ts-CFVu94d-.js} +4 -4
- package/build/server/chunks/{_server.ts-CCwIt_KL.js.map → _server.ts-CFVu94d-.js.map} +1 -1
- package/build/server/chunks/{_server.ts-D4Vu3KCM.js → _server.ts-CHzGnp76.js} +4 -4
- package/build/server/chunks/{_server.ts-D4Vu3KCM.js.map → _server.ts-CHzGnp76.js.map} +1 -1
- package/build/server/chunks/{_server.ts-oqC79KoF.js → _server.ts-CJN0XAKJ.js} +4 -4
- package/build/server/chunks/{_server.ts-oqC79KoF.js.map → _server.ts-CJN0XAKJ.js.map} +1 -1
- package/build/server/chunks/{_server.ts-MtHT_432.js → _server.ts-CK8Xw6ia.js} +4 -4
- package/build/server/chunks/{_server.ts-MtHT_432.js.map → _server.ts-CK8Xw6ia.js.map} +1 -1
- package/build/server/chunks/{_server.ts-COMRHDN4.js → _server.ts-CMiIat2x.js} +14 -6
- package/build/server/chunks/_server.ts-CMiIat2x.js.map +1 -0
- package/build/server/chunks/{_server.ts-Bl-41j0D.js → _server.ts-CP_BI6Nx.js} +4 -4
- package/build/server/chunks/{_server.ts-Bl-41j0D.js.map → _server.ts-CP_BI6Nx.js.map} +1 -1
- package/build/server/chunks/{_server.ts-31Wp0zcV.js → _server.ts-CU0jn2LO.js} +4 -4
- package/build/server/chunks/{_server.ts-31Wp0zcV.js.map → _server.ts-CU0jn2LO.js.map} +1 -1
- package/build/server/chunks/{_server.ts-GxTTkaRQ.js → _server.ts-CbLsJZuR.js} +4 -4
- package/build/server/chunks/{_server.ts-GxTTkaRQ.js.map → _server.ts-CbLsJZuR.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CbZzxQR_.js → _server.ts-CcH-dqDe.js} +4 -4
- package/build/server/chunks/{_server.ts-CbZzxQR_.js.map → _server.ts-CcH-dqDe.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DgQDDDEz.js → _server.ts-CgsiXNhO.js} +4 -4
- package/build/server/chunks/{_server.ts-DgQDDDEz.js.map → _server.ts-CgsiXNhO.js.map} +1 -1
- package/build/server/chunks/{_server.ts-D-9t8-nD.js → _server.ts-CnV-B9wI.js} +3 -3
- package/build/server/chunks/{_server.ts-D-9t8-nD.js.map → _server.ts-CnV-B9wI.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Cszg5Fas.js → _server.ts-CnYeFzrQ.js} +4 -4
- package/build/server/chunks/{_server.ts-Cszg5Fas.js.map → _server.ts-CnYeFzrQ.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BMHPNIdu.js → _server.ts-CoJCMQ9O.js} +4 -4
- package/build/server/chunks/{_server.ts-BMHPNIdu.js.map → _server.ts-CoJCMQ9O.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Om-m3OOe.js → _server.ts-Cr894o8T.js} +4 -4
- package/build/server/chunks/{_server.ts-Om-m3OOe.js.map → _server.ts-Cr894o8T.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BBsksu6b.js → _server.ts-Csr--yoU.js} +6 -6
- package/build/server/chunks/{_server.ts-BBsksu6b.js.map → _server.ts-Csr--yoU.js.map} +1 -1
- package/build/server/chunks/{_server.ts-By47s5kb.js → _server.ts-CvNKkRf_.js} +5 -5
- package/build/server/chunks/{_server.ts-By47s5kb.js.map → _server.ts-CvNKkRf_.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DlzI77bJ.js → _server.ts-Cz4rqGcO.js} +4 -4
- package/build/server/chunks/{_server.ts-DlzI77bJ.js.map → _server.ts-Cz4rqGcO.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BoQ46bw9.js → _server.ts-D2tYhgkS.js} +5 -5
- package/build/server/chunks/{_server.ts-BoQ46bw9.js.map → _server.ts-D2tYhgkS.js.map} +1 -1
- package/build/server/chunks/{_server.ts-D2DzSUG5.js → _server.ts-D335o7vg.js} +4 -4
- package/build/server/chunks/{_server.ts-D2DzSUG5.js.map → _server.ts-D335o7vg.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CmMcnrpu.js → _server.ts-D3eL8ghY.js} +2 -2
- package/build/server/chunks/{_server.ts-CmMcnrpu.js.map → _server.ts-D3eL8ghY.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DL9CCFsk.js → _server.ts-D4GCS8S-.js} +4 -4
- package/build/server/chunks/{_server.ts-DL9CCFsk.js.map → _server.ts-D4GCS8S-.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DzbC2VQR.js → _server.ts-D4ZJODQ1.js} +2 -2
- package/build/server/chunks/{_server.ts-DzbC2VQR.js.map → _server.ts-D4ZJODQ1.js.map} +1 -1
- package/build/server/chunks/{_server.ts-zHkS9Tnj.js → _server.ts-D60NzF0a.js} +2 -2
- package/build/server/chunks/{_server.ts-zHkS9Tnj.js.map → _server.ts-D60NzF0a.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BDBz43vs.js → _server.ts-D6J-vSqv.js} +4 -4
- package/build/server/chunks/{_server.ts-BDBz43vs.js.map → _server.ts-D6J-vSqv.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CKNmPEUu.js → _server.ts-D7hNhjI7.js} +4 -4
- package/build/server/chunks/{_server.ts-CKNmPEUu.js.map → _server.ts-D7hNhjI7.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DSBUjxDK.js → _server.ts-DMKACnON.js} +4 -4
- package/build/server/chunks/{_server.ts-DSBUjxDK.js.map → _server.ts-DMKACnON.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B0CeVe_2.js → _server.ts-DOEG8mIs.js} +4 -4
- package/build/server/chunks/{_server.ts-B0CeVe_2.js.map → _server.ts-DOEG8mIs.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DwB3oRpy.js → _server.ts-DQVANT_s.js} +4 -4
- package/build/server/chunks/{_server.ts-DwB3oRpy.js.map → _server.ts-DQVANT_s.js.map} +1 -1
- package/build/server/chunks/{_server.ts-C1GoICVF.js → _server.ts-DSaRaRsv.js} +6 -6
- package/build/server/chunks/{_server.ts-C1GoICVF.js.map → _server.ts-DSaRaRsv.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DUmy4wsR.js → _server.ts-DceQDSDd.js} +5 -5
- package/build/server/chunks/{_server.ts-DUmy4wsR.js.map → _server.ts-DceQDSDd.js.map} +1 -1
- package/build/server/chunks/{_server.ts-URUUrX13.js → _server.ts-DdhxzkWp.js} +10 -5
- package/build/server/chunks/_server.ts-DdhxzkWp.js.map +1 -0
- package/build/server/chunks/{_server.ts-D2HqJdkr.js → _server.ts-DfhoSzqh.js} +4 -4
- package/build/server/chunks/{_server.ts-D2HqJdkr.js.map → _server.ts-DfhoSzqh.js.map} +1 -1
- package/build/server/chunks/{_server.ts-K4R4Q6b_.js → _server.ts-DgjEs7Bk.js} +5 -5
- package/build/server/chunks/{_server.ts-K4R4Q6b_.js.map → _server.ts-DgjEs7Bk.js.map} +1 -1
- package/build/server/chunks/{_server.ts-D68iKpcP.js → _server.ts-DjSCtZBm.js} +4 -4
- package/build/server/chunks/{_server.ts-D68iKpcP.js.map → _server.ts-DjSCtZBm.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DxGR3bmq.js → _server.ts-Dkw3m0id.js} +4 -4
- package/build/server/chunks/{_server.ts-DxGR3bmq.js.map → _server.ts-Dkw3m0id.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DijnYBzX.js → _server.ts-DoIdll9B.js} +4 -4
- package/build/server/chunks/{_server.ts-DijnYBzX.js.map → _server.ts-DoIdll9B.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DnBzi352.js → _server.ts-Dxjt3AcD.js} +4 -4
- package/build/server/chunks/{_server.ts-DnBzi352.js.map → _server.ts-Dxjt3AcD.js.map} +1 -1
- package/build/server/chunks/{_server.ts-C25PdnDT.js → _server.ts-IAz5Y8QW.js} +2 -2
- package/build/server/chunks/{_server.ts-C25PdnDT.js.map → _server.ts-IAz5Y8QW.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Dfx9HNlr.js → _server.ts-R-otxCJs.js} +5 -5
- package/build/server/chunks/{_server.ts-Dfx9HNlr.js.map → _server.ts-R-otxCJs.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Dvh0Hoso.js → _server.ts-SJVbfTY-.js} +4 -4
- package/build/server/chunks/{_server.ts-Dvh0Hoso.js.map → _server.ts-SJVbfTY-.js.map} +1 -1
- package/build/server/chunks/{_server.ts-8c17N53a.js → _server.ts-WxIT9W2N.js} +4 -4
- package/build/server/chunks/{_server.ts-8c17N53a.js.map → _server.ts-WxIT9W2N.js.map} +1 -1
- package/build/server/chunks/{_server.ts-C-xID91b.js → _server.ts-dsQ0_ecn.js} +4 -4
- package/build/server/chunks/{_server.ts-C-xID91b.js.map → _server.ts-dsQ0_ecn.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BnWc1lOg.js → _server.ts-hwnVsgqm.js} +4 -4
- package/build/server/chunks/{_server.ts-BnWc1lOg.js.map → _server.ts-hwnVsgqm.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CU1go_Ga.js → _server.ts-iPAMgkQE.js} +4 -4
- package/build/server/chunks/{_server.ts-CU1go_Ga.js.map → _server.ts-iPAMgkQE.js.map} +1 -1
- package/build/server/chunks/{_server.ts-D1bJgR3K.js → _server.ts-wKuNNV0n.js} +4 -4
- package/build/server/chunks/{_server.ts-D1bJgR3K.js.map → _server.ts-wKuNNV0n.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BLePivrN.js → _server.ts-zFBp1NmR.js} +6 -6
- package/build/server/chunks/{_server.ts-BLePivrN.js.map → _server.ts-zFBp1NmR.js.map} +1 -1
- package/build/server/chunks/{addon-helpers-CZyPj8WN.js → addon-helpers-CJtE_Dk0.js} +2 -2
- package/build/server/chunks/{addon-helpers-CZyPj8WN.js.map → addon-helpers-CJtE_Dk0.js.map} +1 -1
- package/build/server/chunks/{client-CiyZ88m2.js → client-B0Os1NyZ.js} +2 -2
- package/build/server/chunks/{client-CiyZ88m2.js.map → client-B0Os1NyZ.js.map} +1 -1
- package/build/server/chunks/{config-BKCgm_AV.js → config-DjPB0tcv.js} +2 -2
- package/build/server/chunks/{config-BKCgm_AV.js.map → config-DjPB0tcv.js.map} +1 -1
- package/build/server/chunks/{docker-8AuF7CwZ.js → docker-D7xUhSN0.js} +2 -2
- package/build/server/chunks/{docker-8AuF7CwZ.js.map → docker-D7xUhSN0.js.map} +1 -1
- package/build/server/chunks/{endpoints-DaDle7pk.js → endpoints-CRYjnmeW.js} +2 -2
- package/build/server/chunks/{endpoints-DaDle7pk.js.map → endpoints-CRYjnmeW.js.map} +1 -1
- package/build/server/chunks/{environment-Cp1uhq6U.js → environment-vrt2A8E3.js} +2 -2
- package/build/server/chunks/{environment-Cp1uhq6U.js.map → environment-vrt2A8E3.js.map} +1 -1
- package/build/server/chunks/{error.svelte-m6KMTHAJ.js → error.svelte-GrDfifPA.js} +4 -4
- package/build/server/chunks/{error.svelte-m6KMTHAJ.js.map → error.svelte-GrDfifPA.js.map} +1 -1
- package/build/server/chunks/{helpers-BACi22nU.js → helpers-C9xlDb4M.js} +3 -3
- package/build/server/chunks/{helpers-BACi22nU.js.map → helpers-C9xlDb4M.js.map} +1 -1
- package/build/server/chunks/{hooks.server-BdyM6mgJ.js → hooks.server-CWVrlPsn.js} +5 -5
- package/build/server/chunks/{hooks.server-BdyM6mgJ.js.map → hooks.server-CWVrlPsn.js.map} +1 -1
- package/build/server/chunks/{http-B8eIxVUs.js → http-CKxMa9DL.js} +2 -2
- package/build/server/chunks/{http-B8eIxVUs.js.map → http-CKxMa9DL.js.map} +1 -1
- package/build/server/chunks/{internal-BxEwVWRz.js → internal-Dmwjn9fG.js} +3 -3
- package/build/server/chunks/{internal-BxEwVWRz.js.map → internal-Dmwjn9fG.js.map} +1 -1
- package/build/server/chunks/{session-cookie-CFbH9CoY.js → session-cookie-Cp0GJgRc.js} +2 -2
- package/build/server/chunks/{session-cookie-CFbH9CoY.js.map → session-cookie-Cp0GJgRc.js.map} +1 -1
- package/build/server/chunks/{setup-deploy-Ck_d_qcE.js → setup-deploy-BrOYMz2M.js} +21 -31
- package/build/server/chunks/setup-deploy-BrOYMz2M.js.map +1 -0
- package/build/server/chunks/{src-CQbie-rx.js → src-Bs1lSXiF.js} +321 -85
- package/build/server/chunks/src-Bs1lSXiF.js.map +1 -0
- package/build/server/chunks/{state-oN2SUx4y.js → state-Dh7rqC1X.js} +2 -2
- package/build/server/chunks/{state-oN2SUx4y.js.map → state-Dh7rqC1X.js.map} +1 -1
- package/build/server/index.js +2 -2
- package/build/server/manifest.js +82 -82
- package/build/server/manifest.js.map +1 -1
- package/package.json +2 -2
- package/build/client/_app/immutable/assets/9.Bg2RXe3B.css +0 -1
- package/build/client/_app/immutable/assets/9.Bg2RXe3B.css.br +0 -0
- package/build/client/_app/immutable/assets/9.Bg2RXe3B.css.gz +0 -0
- package/build/client/_app/immutable/chunks/0swOyi-5.js +0 -3
- package/build/client/_app/immutable/chunks/0swOyi-5.js.br +0 -0
- package/build/client/_app/immutable/chunks/0swOyi-5.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BBdT9Cjm.js.br +0 -0
- package/build/client/_app/immutable/chunks/BBdT9Cjm.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BQ0vnNWj.js.br +0 -1
- package/build/client/_app/immutable/chunks/BQ0vnNWj.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Bmfn2m9N.js +0 -1
- package/build/client/_app/immutable/chunks/Bmfn2m9N.js.br +0 -1
- package/build/client/_app/immutable/chunks/Bmfn2m9N.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BsFaG4Si.js +0 -1
- package/build/client/_app/immutable/chunks/BsFaG4Si.js.br +0 -2
- package/build/client/_app/immutable/chunks/BsFaG4Si.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C5xMso3V.js.br +0 -0
- package/build/client/_app/immutable/chunks/C5xMso3V.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DPsWof9T.js +0 -3
- package/build/client/_app/immutable/chunks/DPsWof9T.js.br +0 -0
- package/build/client/_app/immutable/chunks/DPsWof9T.js.gz +0 -0
- package/build/client/_app/immutable/chunks/jhtvkF_A.js.br +0 -0
- package/build/client/_app/immutable/chunks/jhtvkF_A.js.gz +0 -0
- package/build/client/_app/immutable/chunks/s4upGypb.js.br +0 -0
- package/build/client/_app/immutable/chunks/s4upGypb.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.BhaNzXRa.js.br +0 -0
- package/build/client/_app/immutable/entry/app.BhaNzXRa.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.mqdezZzO.js +0 -1
- package/build/client/_app/immutable/entry/start.mqdezZzO.js.br +0 -0
- package/build/client/_app/immutable/entry/start.mqdezZzO.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.0pi4RS6G.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.0pi4RS6G.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.B8IsMtPo.js.br +0 -1
- package/build/client/_app/immutable/nodes/1.B8IsMtPo.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.B-8ehRO1.js +0 -1
- package/build/client/_app/immutable/nodes/2.B-8ehRO1.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.B-8ehRO1.js.gz +0 -0
- package/build/client/_app/immutable/nodes/3.B_FXzjZB.js +0 -1
- package/build/client/_app/immutable/nodes/3.B_FXzjZB.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.B_FXzjZB.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.Jf5TbLTF.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.Jf5TbLTF.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.BXOM2W9q.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.BXOM2W9q.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.fVxTNYsE.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.fVxTNYsE.js.gz +0 -0
- package/build/client/_app/immutable/nodes/7.E4FAL2cc.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.E4FAL2cc.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.By5-pJpM.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.By5-pJpM.js.gz +0 -0
- package/build/client/_app/immutable/nodes/9.HfUnLyFj.js +0 -2
- package/build/client/_app/immutable/nodes/9.HfUnLyFj.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.HfUnLyFj.js.gz +0 -0
- package/build/server/chunks/1-DiEYpQIN.js +0 -9
- package/build/server/chunks/4-pHqpXb3H.js +0 -9
- package/build/server/chunks/5-D48D_0uX.js +0 -9
- package/build/server/chunks/6-CQ5NktVc.js +0 -9
- package/build/server/chunks/7-Cbs2uIrU.js +0 -9
- package/build/server/chunks/9-BKnkc58p.js +0 -9
- package/build/server/chunks/_page.svelte-CDCe-J7o.js.map +0 -1
- package/build/server/chunks/_server.ts-B8pCRdwo.js.map +0 -1
- package/build/server/chunks/_server.ts-Bh_r4-Vs.js.map +0 -1
- package/build/server/chunks/_server.ts-COMRHDN4.js.map +0 -1
- package/build/server/chunks/_server.ts-URUUrX13.js.map +0 -1
- package/build/server/chunks/_server.ts-__ul4l8J.js.map +0 -1
- package/build/server/chunks/_server.ts-w34_y9d_.js.map +0 -1
- package/build/server/chunks/setup-deploy-Ck_d_qcE.js.map +0 -1
- package/build/server/chunks/src-CQbie-rx.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-BBsksu6b.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/providers/_server.ts.js"],"sourcesContent":["import { Ot as authJsonPath } from \"../../../../chunks/src.js\";\nimport { c as getState } from \"../../../../chunks/endpoints.js\";\nimport { f as requireAdmin, o as getRequestId, u as jsonResponse } from \"../../../../chunks/helpers.js\";\nimport { a as asStringRecord, i as asStringArray, n as asRecord, r as asString, t as asNumber } from \"../../../../chunks/coercion.js\";\nimport { t as opencodeFetch } from \"../../../../chunks/http.js\";\nimport { t as getCurrentConfig } from \"../../../../chunks/config.js\";\nimport { existsSync, readFileSync } from \"node:fs\";\n//#region src/lib/server/opencode/catalog.ts\n/**\n* Provider catalog assembly.\n*\n* Pulls catalog/auth/config/configured-provider data from the OpenCode server\n* (and the on-disk config), merges them, and emits ProviderView records the\n* UI renders directly.\n*/\n/**\n* Map of provider ID → credential type, as found in OpenCode's auth.json.\n* OpenCode's /provider response only reports env-var-detected providers in\n* `connected`; auth.json-stored credentials (API keys + OAuth tokens) are\n* loaded on-demand and don't appear there. We surface them here so the UI\n* can treat them as connected and show the right badge.\n*/\nfunction readAuthedProviders() {\n\tconst out = /* @__PURE__ */ new Map();\n\ttry {\n\t\tconst path = authJsonPath(getState());\n\t\tif (!existsSync(path)) return out;\n\t\tconst data = JSON.parse(readFileSync(path, \"utf-8\"));\n\t\tfor (const [id, entry] of Object.entries(data ?? {})) {\n\t\t\tconst type = entry?.type === \"oauth\" ? \"oauth\" : \"api\";\n\t\t\tout.set(id, type);\n\t\t}\n\t} catch {}\n\treturn out;\n}\nasync function loadProviderPage() {\n\ttry {\n\t\tconst [catalog, auth, ocConfig, configured] = await Promise.all([\n\t\t\topencodeFetch(\"/provider\"),\n\t\t\topencodeFetch(\"/provider/auth\"),\n\t\t\topencodeFetch(\"/config\"),\n\t\t\topencodeFetch(\"/config/providers\")\n\t\t]);\n\t\tconst diskConfig = await getCurrentConfig();\n\t\tconst config = {\n\t\t\t...ocConfig,\n\t\t\tprovider: {\n\t\t\t\t...ocConfig.provider ?? {},\n\t\t\t\t...diskConfig.provider ?? {}\n\t\t\t},\n\t\t\tdisabled_providers: diskConfig.disabled_providers ?? ocConfig.disabled_providers,\n\t\t\tenabled_providers: diskConfig.enabled_providers ?? ocConfig.enabled_providers\n\t\t};\n\t\tconst views = buildProviderViews(catalog, auth, config, configured, readAuthedProviders());\n\t\treturn {\n\t\t\tavailable: true,\n\t\t\tproviders: views,\n\t\t\tcurrentModel: config.model,\n\t\t\tcurrentSmallModel: config.small_model,\n\t\t\tdefaultModels: catalog.default,\n\t\t\tallowlistActive: Array.isArray(config.enabled_providers) && config.enabled_providers.length > 0,\n\t\t\tproviderCountLabel: `${views.length} providers indexed from OpenCode`,\n\t\t\tstats: {\n\t\t\t\ttotal: views.length,\n\t\t\t\tconnected: views.filter((p) => p.connected).length,\n\t\t\t\tconfigured: views.filter((p) => p.configured).length,\n\t\t\t\tdisabled: views.filter((p) => p.disabled).length\n\t\t\t}\n\t\t};\n\t} catch (error) {\n\t\treturn {\n\t\t\tavailable: false,\n\t\t\terror: error instanceof Error ? error.message : \"Unable to reach the OpenCode server.\",\n\t\t\tproviders: [],\n\t\t\tdefaultModels: {},\n\t\t\tallowlistActive: false,\n\t\t\tproviderCountLabel: \"The OpenCode server is currently unavailable.\",\n\t\t\tstats: {\n\t\t\t\ttotal: 0,\n\t\t\t\tconnected: 0,\n\t\t\t\tconfigured: 0,\n\t\t\t\tdisabled: 0\n\t\t\t}\n\t\t};\n\t}\n}\nfunction extractAndSortModels(...sources) {\n\tlet entries = {};\n\tfor (const source of sources) {\n\t\tconst record = asModelRecord(source);\n\t\tif (record) {\n\t\t\tentries = record;\n\t\t\tbreak;\n\t\t}\n\t}\n\treturn Object.entries(entries).map(([id, model]) => ({\n\t\tid,\n\t\tname: model.name ?? id\n\t})).sort((left, right) => left.name.localeCompare(right.name));\n}\nfunction buildProviderViews(catalog, auth, config, configured, authed) {\n\tconst catalogMap = new Map(catalog.all.map((p) => [p.id, p]));\n\tconst envConnected = new Set(catalog.connected);\n\tconst connected = new Set([...envConnected, ...authed.keys()]);\n\tconst disabled = new Set(config.disabled_providers ?? []);\n\tconst allowlist = config.enabled_providers ? new Set(config.enabled_providers) : void 0;\n\tconst configuredMap = new Map(configured.providers.map((p) => [p.id, p]));\n\tconst providerIds = new Set([\n\t\t...catalog.all.map((p) => p.id),\n\t\t...Object.keys(config.provider ?? {}),\n\t\t...configured.providers.map((p) => p.id)\n\t]);\n\treturn Array.from(providerIds).map((providerId) => {\n\t\tconst entry = catalogMap.get(providerId);\n\t\tconst configEntry = asRecord(config.provider?.[providerId]);\n\t\tconst resolvedEntry = configuredMap.get(providerId);\n\t\tconst rawOptions = {\n\t\t\t...asRecord(resolvedEntry?.options),\n\t\t\t...asRecord(configEntry?.options)\n\t\t};\n\t\tconst authMethods = (auth[providerId] ?? []).map((method, index) => ({\n\t\t\tindex,\n\t\t\ttype: method.type,\n\t\t\tlabel: method.label,\n\t\t\tprompts: method.prompts ?? []\n\t\t}));\n\t\tconst models = extractAndSortModels(resolvedEntry?.models, configEntry?.models, entry?.models);\n\t\tconst currentModelId = splitModel(config.model, providerId);\n\t\tconst currentSmallModelId = splitModel(config.small_model, providerId);\n\t\tconst enabled = allowlist ? allowlist.has(providerId) && !disabled.has(providerId) : !disabled.has(providerId);\n\t\tconst isConnected = connected.has(providerId);\n\t\tconst isEnvConnected = envConnected.has(providerId);\n\t\tconst authedType = authed.get(providerId);\n\t\tconst credentialType = !isConnected ? void 0 : isEnvConnected ? \"env\" : authedType ? authedType : configEntry ? \"config\" : \"custom\";\n\t\treturn {\n\t\t\tid: providerId,\n\t\t\tname: resolvedEntry?.name ?? asString(configEntry?.name) ?? entry?.name ?? providerId,\n\t\t\tsource: resolvedEntry?.source ?? (entry ? configEntry ? \"config\" : \"catalog\" : \"custom\"),\n\t\t\tenv: resolvedEntry?.env ?? asStringArray(configEntry?.env) ?? entry?.env ?? [],\n\t\t\tconnected: isConnected,\n\t\t\tconfigured: Boolean(resolvedEntry || configEntry),\n\t\t\tdisabled: !enabled,\n\t\t\tactiveMainModel: Boolean(currentModelId),\n\t\t\tactiveSmallModel: Boolean(currentSmallModelId),\n\t\t\trecommendedModelId: currentModelId ?? configured.default[providerId] ?? catalog.default[providerId] ?? models[0]?.id ?? \"\",\n\t\t\tmodelCount: models.length,\n\t\t\tmodels,\n\t\t\tauthMethods,\n\t\t\tcredentialType,\n\t\t\toptions: {\n\t\t\t\tbaseURL: asString(rawOptions.baseURL),\n\t\t\t\theaders: asStringRecord(rawOptions.headers),\n\t\t\t\ttimeout: asNumber(rawOptions.timeout),\n\t\t\t\tsetCacheKey: rawOptions.setCacheKey === true,\n\t\t\t\tenterpriseUrl: asString(rawOptions.enterpriseUrl)\n\t\t\t},\n\t\t\tsupportsOauth: authMethods.some((m) => m.type === \"oauth\"),\n\t\t\tsupportsApiAuth: authMethods.some((m) => m.type === \"api\")\n\t\t};\n\t}).sort((left, right) => {\n\t\tif (left.connected !== right.connected) return left.connected ? -1 : 1;\n\t\tif (left.activeMainModel !== right.activeMainModel) return left.activeMainModel ? -1 : 1;\n\t\tif (left.configured !== right.configured) return left.configured ? -1 : 1;\n\t\tif (left.disabled !== right.disabled) return left.disabled ? 1 : -1;\n\t\treturn left.name.localeCompare(right.name);\n\t});\n}\nfunction splitModel(model, providerId) {\n\tif (!model?.startsWith(`${providerId}/`)) return void 0;\n\treturn model.slice(providerId.length + 1);\n}\nfunction asModelRecord(value) {\n\treturn value && typeof value === \"object\" && !Array.isArray(value) ? value : void 0;\n}\n//#endregion\n//#region src/routes/admin/providers/+server.ts\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\treturn jsonResponse(200, await loadProviderPage(), requestId);\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"_server.ts-Csr--yoU.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/providers/_server.ts.js"],"sourcesContent":["import { kt as authJsonPath } from \"../../../../chunks/src.js\";\nimport { c as getState } from \"../../../../chunks/endpoints.js\";\nimport { f as requireAdmin, o as getRequestId, u as jsonResponse } from \"../../../../chunks/helpers.js\";\nimport { a as asStringRecord, i as asStringArray, n as asRecord, r as asString, t as asNumber } from \"../../../../chunks/coercion.js\";\nimport { t as opencodeFetch } from \"../../../../chunks/http.js\";\nimport { t as getCurrentConfig } from \"../../../../chunks/config.js\";\nimport { existsSync, readFileSync } from \"node:fs\";\n//#region src/lib/server/opencode/catalog.ts\n/**\n* Provider catalog assembly.\n*\n* Pulls catalog/auth/config/configured-provider data from the OpenCode server\n* (and the on-disk config), merges them, and emits ProviderView records the\n* UI renders directly.\n*/\n/**\n* Map of provider ID → credential type, as found in OpenCode's auth.json.\n* OpenCode's /provider response only reports env-var-detected providers in\n* `connected`; auth.json-stored credentials (API keys + OAuth tokens) are\n* loaded on-demand and don't appear there. We surface them here so the UI\n* can treat them as connected and show the right badge.\n*/\nfunction readAuthedProviders() {\n\tconst out = /* @__PURE__ */ new Map();\n\ttry {\n\t\tconst path = authJsonPath(getState());\n\t\tif (!existsSync(path)) return out;\n\t\tconst data = JSON.parse(readFileSync(path, \"utf-8\"));\n\t\tfor (const [id, entry] of Object.entries(data ?? {})) {\n\t\t\tconst type = entry?.type === \"oauth\" ? \"oauth\" : \"api\";\n\t\t\tout.set(id, type);\n\t\t}\n\t} catch {}\n\treturn out;\n}\nasync function loadProviderPage() {\n\ttry {\n\t\tconst [catalog, auth, ocConfig, configured] = await Promise.all([\n\t\t\topencodeFetch(\"/provider\"),\n\t\t\topencodeFetch(\"/provider/auth\"),\n\t\t\topencodeFetch(\"/config\"),\n\t\t\topencodeFetch(\"/config/providers\")\n\t\t]);\n\t\tconst diskConfig = await getCurrentConfig();\n\t\tconst config = {\n\t\t\t...ocConfig,\n\t\t\tprovider: {\n\t\t\t\t...ocConfig.provider ?? {},\n\t\t\t\t...diskConfig.provider ?? {}\n\t\t\t},\n\t\t\tdisabled_providers: diskConfig.disabled_providers ?? ocConfig.disabled_providers,\n\t\t\tenabled_providers: diskConfig.enabled_providers ?? ocConfig.enabled_providers\n\t\t};\n\t\tconst views = buildProviderViews(catalog, auth, config, configured, readAuthedProviders());\n\t\treturn {\n\t\t\tavailable: true,\n\t\t\tproviders: views,\n\t\t\tcurrentModel: config.model,\n\t\t\tcurrentSmallModel: config.small_model,\n\t\t\tdefaultModels: catalog.default,\n\t\t\tallowlistActive: Array.isArray(config.enabled_providers) && config.enabled_providers.length > 0,\n\t\t\tproviderCountLabel: `${views.length} providers indexed from OpenCode`,\n\t\t\tstats: {\n\t\t\t\ttotal: views.length,\n\t\t\t\tconnected: views.filter((p) => p.connected).length,\n\t\t\t\tconfigured: views.filter((p) => p.configured).length,\n\t\t\t\tdisabled: views.filter((p) => p.disabled).length\n\t\t\t}\n\t\t};\n\t} catch (error) {\n\t\treturn {\n\t\t\tavailable: false,\n\t\t\terror: error instanceof Error ? error.message : \"Unable to reach the OpenCode server.\",\n\t\t\tproviders: [],\n\t\t\tdefaultModels: {},\n\t\t\tallowlistActive: false,\n\t\t\tproviderCountLabel: \"The OpenCode server is currently unavailable.\",\n\t\t\tstats: {\n\t\t\t\ttotal: 0,\n\t\t\t\tconnected: 0,\n\t\t\t\tconfigured: 0,\n\t\t\t\tdisabled: 0\n\t\t\t}\n\t\t};\n\t}\n}\nfunction extractAndSortModels(...sources) {\n\tlet entries = {};\n\tfor (const source of sources) {\n\t\tconst record = asModelRecord(source);\n\t\tif (record) {\n\t\t\tentries = record;\n\t\t\tbreak;\n\t\t}\n\t}\n\treturn Object.entries(entries).map(([id, model]) => ({\n\t\tid,\n\t\tname: model.name ?? id\n\t})).sort((left, right) => left.name.localeCompare(right.name));\n}\nfunction buildProviderViews(catalog, auth, config, configured, authed) {\n\tconst catalogMap = new Map(catalog.all.map((p) => [p.id, p]));\n\tconst envConnected = new Set(catalog.connected);\n\tconst connected = new Set([...envConnected, ...authed.keys()]);\n\tconst disabled = new Set(config.disabled_providers ?? []);\n\tconst allowlist = config.enabled_providers ? new Set(config.enabled_providers) : void 0;\n\tconst configuredMap = new Map(configured.providers.map((p) => [p.id, p]));\n\tconst providerIds = new Set([\n\t\t...catalog.all.map((p) => p.id),\n\t\t...Object.keys(config.provider ?? {}),\n\t\t...configured.providers.map((p) => p.id)\n\t]);\n\treturn Array.from(providerIds).map((providerId) => {\n\t\tconst entry = catalogMap.get(providerId);\n\t\tconst configEntry = asRecord(config.provider?.[providerId]);\n\t\tconst resolvedEntry = configuredMap.get(providerId);\n\t\tconst rawOptions = {\n\t\t\t...asRecord(resolvedEntry?.options),\n\t\t\t...asRecord(configEntry?.options)\n\t\t};\n\t\tconst authMethods = (auth[providerId] ?? []).map((method, index) => ({\n\t\t\tindex,\n\t\t\ttype: method.type,\n\t\t\tlabel: method.label,\n\t\t\tprompts: method.prompts ?? []\n\t\t}));\n\t\tconst models = extractAndSortModels(resolvedEntry?.models, configEntry?.models, entry?.models);\n\t\tconst currentModelId = splitModel(config.model, providerId);\n\t\tconst currentSmallModelId = splitModel(config.small_model, providerId);\n\t\tconst enabled = allowlist ? allowlist.has(providerId) && !disabled.has(providerId) : !disabled.has(providerId);\n\t\tconst isConnected = connected.has(providerId);\n\t\tconst isEnvConnected = envConnected.has(providerId);\n\t\tconst authedType = authed.get(providerId);\n\t\tconst credentialType = !isConnected ? void 0 : isEnvConnected ? \"env\" : authedType ? authedType : configEntry ? \"config\" : \"custom\";\n\t\treturn {\n\t\t\tid: providerId,\n\t\t\tname: resolvedEntry?.name ?? asString(configEntry?.name) ?? entry?.name ?? providerId,\n\t\t\tsource: resolvedEntry?.source ?? (entry ? configEntry ? \"config\" : \"catalog\" : \"custom\"),\n\t\t\tenv: resolvedEntry?.env ?? asStringArray(configEntry?.env) ?? entry?.env ?? [],\n\t\t\tconnected: isConnected,\n\t\t\tconfigured: Boolean(resolvedEntry || configEntry),\n\t\t\tdisabled: !enabled,\n\t\t\tactiveMainModel: Boolean(currentModelId),\n\t\t\tactiveSmallModel: Boolean(currentSmallModelId),\n\t\t\trecommendedModelId: currentModelId ?? configured.default[providerId] ?? catalog.default[providerId] ?? models[0]?.id ?? \"\",\n\t\t\tmodelCount: models.length,\n\t\t\tmodels,\n\t\t\tauthMethods,\n\t\t\tcredentialType,\n\t\t\toptions: {\n\t\t\t\tbaseURL: asString(rawOptions.baseURL),\n\t\t\t\theaders: asStringRecord(rawOptions.headers),\n\t\t\t\ttimeout: asNumber(rawOptions.timeout),\n\t\t\t\tsetCacheKey: rawOptions.setCacheKey === true,\n\t\t\t\tenterpriseUrl: asString(rawOptions.enterpriseUrl)\n\t\t\t},\n\t\t\tsupportsOauth: authMethods.some((m) => m.type === \"oauth\"),\n\t\t\tsupportsApiAuth: authMethods.some((m) => m.type === \"api\")\n\t\t};\n\t}).sort((left, right) => {\n\t\tif (left.connected !== right.connected) return left.connected ? -1 : 1;\n\t\tif (left.activeMainModel !== right.activeMainModel) return left.activeMainModel ? -1 : 1;\n\t\tif (left.configured !== right.configured) return left.configured ? -1 : 1;\n\t\tif (left.disabled !== right.disabled) return left.disabled ? 1 : -1;\n\t\treturn left.name.localeCompare(right.name);\n\t});\n}\nfunction splitModel(model, providerId) {\n\tif (!model?.startsWith(`${providerId}/`)) return void 0;\n\treturn model.slice(providerId.length + 1);\n}\nfunction asModelRecord(value) {\n\treturn value && typeof value === \"object\" && !Array.isArray(value) ? value : void 0;\n}\n//#endregion\n//#region src/routes/admin/providers/+server.ts\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\treturn jsonResponse(200, await loadProviderPage(), requestId);\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { b as getState } from './endpoints-
|
|
3
|
-
import { d as getRequestId, r as requireAdmin, e as errorResponse, k as jsonResponse, p as parseJsonBody, j as jsonBodyError } from './helpers-
|
|
4
|
-
import { p as performAddonToggle } from './addon-helpers-
|
|
1
|
+
import { a4 as listAvailableAddonIds, a5 as listEnabledAddonIds, _ as getRegistryAddonConfig, y as createLogger } from './src-Bs1lSXiF.js';
|
|
2
|
+
import { b as getState } from './endpoints-CRYjnmeW.js';
|
|
3
|
+
import { d as getRequestId, r as requireAdmin, e as errorResponse, k as jsonResponse, p as parseJsonBody, j as jsonBodyError } from './helpers-C9xlDb4M.js';
|
|
4
|
+
import { p as performAddonToggle } from './addon-helpers-CJtE_Dk0.js';
|
|
5
5
|
import './chunk-CLZ62Ad-.js';
|
|
6
6
|
import 'node:module';
|
|
7
7
|
import 'node:fs';
|
|
@@ -70,4 +70,4 @@ var POST = async (event) => {
|
|
|
70
70
|
};
|
|
71
71
|
|
|
72
72
|
export { GET, POST };
|
|
73
|
-
//# sourceMappingURL=_server.ts-
|
|
73
|
+
//# sourceMappingURL=_server.ts-CvNKkRf_.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-CvNKkRf_.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/addons/_name_/_server.ts.js"],"sourcesContent":["import { Rt as createLogger, ct as getRegistryAddonConfig, lt as listAvailableAddonIds, ut as listEnabledAddonIds } from \"../../../../../chunks/src.js\";\nimport { c as getState } from \"../../../../../chunks/endpoints.js\";\nimport { d as parseJsonBody, f as requireAdmin, i as errorResponse, l as jsonBodyError, o as getRequestId, u as jsonResponse } from \"../../../../../chunks/helpers.js\";\nimport { t as performAddonToggle } from \"../../../../../chunks/addon-helpers.js\";\n//#region src/routes/admin/addons/[name]/+server.ts\nvar logger = createLogger(\"addons.name\");\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\tconst enabled = listEnabledAddonIds(state.homeDir).includes(name);\n\tlet config;\n\ttry {\n\t\tconfig = getRegistryAddonConfig(state.homeDir, name);\n\t} catch (error) {\n\t\tlogger.error(\"failed to read addon schema\", {\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\treturn jsonResponse(200, {\n\t\tname,\n\t\tenabled,\n\t\tconfig\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 result = await parseJsonBody(event.request);\n\tif (\"error\" in result) return jsonBodyError(result, requestId);\n\tconst body = result.data;\n\tconst toggle = await performAddonToggle(state, name, typeof body.enabled === \"boolean\" ? body.enabled : void 0, requestId);\n\tif (!toggle.ok) return errorResponse(500, \"internal_error\", toggle.error, {}, requestId);\n\treturn jsonResponse(200, {\n\t\tok: true,\n\t\taddon: name,\n\t\tenabled: toggle.enabled,\n\t\tchanged: toggle.changed\n\t}, requestId);\n};\n//#endregion\nexport { GET, POST };\n"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { y as createLogger,
|
|
2
|
-
import { b as getState } from './endpoints-
|
|
3
|
-
import { d as getRequestId, r as requireAdmin, k as jsonResponse, e as errorResponse } from './helpers-
|
|
1
|
+
import { y as createLogger, L as ensureHomeDirs, O as ensureOpenCodeConfig, Q as ensureOpenCodeSystemConfig, R as ensureSecrets, c as applyInstall, l as buildManagedServices, m as checkDocker, x as composeUp, k as buildComposeOptions, C as CORE_SERVICES } from './src-Bs1lSXiF.js';
|
|
2
|
+
import { b as getState } from './endpoints-CRYjnmeW.js';
|
|
3
|
+
import { d as getRequestId, r as requireAdmin, k as jsonResponse, e as errorResponse } from './helpers-C9xlDb4M.js';
|
|
4
4
|
import { w as withSerialQueue } from './serial-queue-D9FEpYVv.js';
|
|
5
5
|
import './chunk-CLZ62Ad-.js';
|
|
6
6
|
import 'node:module';
|
|
@@ -80,4 +80,4 @@ var POST = async (event) => {
|
|
|
80
80
|
};
|
|
81
81
|
|
|
82
82
|
export { POST };
|
|
83
|
-
//# sourceMappingURL=_server.ts-
|
|
83
|
+
//# sourceMappingURL=_server.ts-Cz4rqGcO.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-Cz4rqGcO.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/install/_server.ts.js"],"sourcesContent":["import { C as buildManagedServices, D as checkDocker, E as buildComposeOptions, Lt as CORE_SERVICES, Pt as ensureHomeDirs, R as composeUp, Rt as createLogger, _t as ensureOpenCodeConfig, gt as ensureOpenCodeSystemConfig, vt as ensureSecrets, y as applyInstall } from \"../../../../chunks/src.js\";\nimport { c as getState } from \"../../../../chunks/endpoints.js\";\nimport { f as requireAdmin, i as errorResponse, o as getRequestId, u as jsonResponse } from \"../../../../chunks/helpers.js\";\nimport { t as withSerialQueue } from \"../../../../chunks/serial-queue.js\";\n//#region src/routes/admin/install/+server.ts\nvar logger = createLogger(\"install\");\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tlogger.info(\"install request received\", { requestId });\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\treturn withSerialQueue(\"admin:install\", async () => {\n\t\ttry {\n\t\t\tconst state = getState();\n\t\t\tlogger.info(\"ensuring home directories and seeding config\", { requestId });\n\t\t\tensureHomeDirs();\n\t\t\tensureOpenCodeConfig();\n\t\t\tensureOpenCodeSystemConfig();\n\t\t\tensureSecrets(state);\n\t\t\tawait applyInstall(state);\n\t\t\tconst managedServices = await buildManagedServices(state);\n\t\t\tlogger.info(\"checking Docker availability\", { requestId });\n\t\t\tconst dockerCheck = await checkDocker();\n\t\t\tlet dockerResult = null;\n\t\t\tif (dockerCheck.ok) {\n\t\t\t\tlogger.info(\"starting compose up\", {\n\t\t\t\t\trequestId,\n\t\t\t\t\tservices: managedServices\n\t\t\t\t});\n\t\t\t\tdockerResult = await composeUp({\n\t\t\t\t\t...buildComposeOptions(state),\n\t\t\t\t\tservices: managedServices\n\t\t\t\t});\n\t\t\t}\n\t\t\tconst started = [...CORE_SERVICES];\n\t\t\tlogger.info(\"install completed\", {\n\t\t\t\trequestId,\n\t\t\t\tstarted,\n\t\t\t\tdockerAvailable: dockerCheck.ok,\n\t\t\t\tcomposeOk: dockerResult?.ok ?? null\n\t\t\t});\n\t\t\treturn jsonResponse(200, {\n\t\t\t\tok: true,\n\t\t\t\tstarted,\n\t\t\t\tdockerAvailable: dockerCheck.ok,\n\t\t\t\tcomposeResult: dockerResult ? {\n\t\t\t\t\tok: dockerResult.ok,\n\t\t\t\t\tstderr: dockerResult.stderr\n\t\t\t\t} : null\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(\"install failed\", {\n\t\t\t\trequestId,\n\t\t\t\terror: msg\n\t\t\t});\n\t\t\treturn errorResponse(500, \"install_failed\", msg, {}, requestId);\n\t\t}\n\t});\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;AAIA;AACA,IAAI,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC;AACjC,IAAC,IAAI,GAAG,OAAO,KAAK,KAAK;AAC5B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE,EAAE,SAAS,EAAE,CAAC;AACvD,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AACjD,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS;AAChC,CAAC,OAAO,eAAe,CAAC,eAAe,EAAE,YAAY;AACrD,EAAE,IAAI;AACN,GAAG,MAAM,KAAK,GAAG,QAAQ,EAAE;AAC3B,GAAG,MAAM,CAAC,IAAI,CAAC,8CAA8C,EAAE,EAAE,SAAS,EAAE,CAAC;AAC7E,GAAG,cAAc,EAAE;AACnB,GAAG,oBAAoB,EAAE;AACzB,GAAG,0BAA0B,EAAE;AAC/B,GAAG,aAAa,CAAC,KAAK,CAAC;AACvB,GAAG,MAAM,YAAY,CAAC,KAAK,CAAC;AAC5B,GAAG,MAAM,eAAe,GAAG,MAAM,oBAAoB,CAAC,KAAK,CAAC;AAC5D,GAAG,MAAM,CAAC,IAAI,CAAC,8BAA8B,EAAE,EAAE,SAAS,EAAE,CAAC;AAC7D,GAAG,MAAM,WAAW,GAAG,MAAM,WAAW,EAAE;AAC1C,GAAG,IAAI,YAAY,GAAG,IAAI;AAC1B,GAAG,IAAI,WAAW,CAAC,EAAE,EAAE;AACvB,IAAI,MAAM,CAAC,IAAI,CAAC,qBAAqB,EAAE;AACvC,KAAK,SAAS;AACd,KAAK,QAAQ,EAAE;AACf,KAAK,CAAC;AACN,IAAI,YAAY,GAAG,MAAM,SAAS,CAAC;AACnC,KAAK,GAAG,mBAAmB,CAAC,KAAK,CAAC;AAClC,KAAK,QAAQ,EAAE;AACf,KAAK,CAAC;AACN,GAAG;AACH,GAAG,MAAM,OAAO,GAAG,CAAC,GAAG,aAAa,CAAC;AACrC,GAAG,MAAM,CAAC,IAAI,CAAC,mBAAmB,EAAE;AACpC,IAAI,SAAS;AACb,IAAI,OAAO;AACX,IAAI,eAAe,EAAE,WAAW,CAAC,EAAE;AACnC,IAAI,SAAS,EAAE,YAAY,EAAE,EAAE,IAAI;AACnC,IAAI,CAAC;AACL,GAAG,OAAO,YAAY,CAAC,GAAG,EAAE;AAC5B,IAAI,EAAE,EAAE,IAAI;AACZ,IAAI,OAAO;AACX,IAAI,eAAe,EAAE,WAAW,CAAC,EAAE;AACnC,IAAI,aAAa,EAAE,YAAY,GAAG;AAClC,KAAK,EAAE,EAAE,YAAY,CAAC,EAAE;AACxB,KAAK,MAAM,EAAE,YAAY,CAAC;AAC1B,KAAK,GAAG;AACR,IAAI,EAAE,SAAS,CAAC;AAChB,EAAE,CAAC,CAAC,OAAO,GAAG,EAAE;AAChB,GAAG,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,GAAG,GAAG,CAAC,OAAO,GAAG,MAAM,CAAC,GAAG,CAAC;AAC/D,GAAG,MAAM,CAAC,KAAK,CAAC,gBAAgB,EAAE;AAClC,IAAI,SAAS;AACb,IAAI,KAAK,EAAE;AACX,IAAI,CAAC;AACL,GAAG,OAAO,aAAa,CAAC,GAAG,EAAE,gBAAgB,EAAE,GAAG,EAAE,EAAE,EAAE,SAAS,CAAC;AAClE,EAAE;AACF,CAAC,CAAC,CAAC;AACH;;;;"}
|
|
@@ -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-C9xlDb4M.js';
|
|
2
|
+
import { o as opencodeFetch } from './http-CKxMa9DL.js';
|
|
3
3
|
import { a as asStringOrEmpty } from './_helpers-B_lb4-jB.js';
|
|
4
|
-
import './src-
|
|
4
|
+
import './src-Bs1lSXiF.js';
|
|
5
5
|
import './chunk-CLZ62Ad-.js';
|
|
6
6
|
import 'node:module';
|
|
7
7
|
import 'node:fs';
|
|
@@ -21,7 +21,7 @@ import 'assert';
|
|
|
21
21
|
import 'zlib';
|
|
22
22
|
import 'node:assert';
|
|
23
23
|
import 'node:fs/promises';
|
|
24
|
-
import './endpoints-
|
|
24
|
+
import './endpoints-CRYjnmeW.js';
|
|
25
25
|
import './coercion-TNFJisCC.js';
|
|
26
26
|
|
|
27
27
|
//#region src/routes/admin/providers/oauth/finish/+server.ts
|
|
@@ -62,4 +62,4 @@ var POST = (event) => withAdminBody(event, async ({ requestId, body }) => {
|
|
|
62
62
|
});
|
|
63
63
|
|
|
64
64
|
export { POST };
|
|
65
|
-
//# sourceMappingURL=_server.ts-
|
|
65
|
+
//# sourceMappingURL=_server.ts-D2tYhgkS.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-D2tYhgkS.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/providers/oauth/finish/_server.ts.js"],"sourcesContent":["import { m as withAdminBody, u as jsonResponse } 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 deleteUserEnvKey,
|
|
2
|
-
import { b as getState } from './endpoints-
|
|
3
|
-
import { d as getRequestId, r as requireAdmin, e as errorResponse, k as jsonResponse, w as withAdminBody } from './helpers-
|
|
1
|
+
import { D as deleteUserEnvKey, K as ensureAkmUserEnv, aj as readUserEnvFile, y as createLogger, A as AKM_USER_ENV_REF, aB as writeUserEnvKey } from './src-Bs1lSXiF.js';
|
|
2
|
+
import { b as getState } from './endpoints-CRYjnmeW.js';
|
|
3
|
+
import { d as getRequestId, r as requireAdmin, e as errorResponse, k as jsonResponse, w as withAdminBody } from './helpers-C9xlDb4M.js';
|
|
4
4
|
import './chunk-CLZ62Ad-.js';
|
|
5
5
|
import 'node:module';
|
|
6
6
|
import 'node:fs';
|
|
@@ -94,4 +94,4 @@ var DELETE = async (event) => {
|
|
|
94
94
|
};
|
|
95
95
|
|
|
96
96
|
export { DELETE, GET, POST };
|
|
97
|
-
//# sourceMappingURL=_server.ts-
|
|
97
|
+
//# sourceMappingURL=_server.ts-D335o7vg.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-D335o7vg.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/secrets/user-env/_server.ts.js"],"sourcesContent":["import { Rt as createLogger, _ as readUserEnvFile, g as ensureAkmUserEnv, h as deleteUserEnvKey, p as AKM_USER_ENV_REF, v as writeUserEnvKey } from \"../../../../../chunks/src.js\";\nimport { c as getState } from \"../../../../../chunks/endpoints.js\";\nimport { f as requireAdmin, i as errorResponse, m as withAdminBody, o as getRequestId, u as jsonResponse } from \"../../../../../chunks/helpers.js\";\n//#region src/routes/admin/secrets/user-env/+server.ts\nvar logger = createLogger(\"admin.secrets.user-env\");\nvar KEY_RE = /^[A-Za-z_][A-Za-z0-9_]*$/;\n/**\n* GET — list keys in the akm env:user store. Values are NEVER returned.\n*/\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst envPath = ensureAkmUserEnv(getState());\n\treturn jsonResponse(200, {\n\t\tprovider: \"akm\",\n\t\tenvRef: AKM_USER_ENV_REF,\n\t\tkeys: Object.keys(readUserEnvFile(envPath)).sort()\n\t}, requestId);\n};\n/**\n* POST — write a key into the user env file. The value is shell-quoted and\n* written directly to `knowledge/env/user.env` (mode 0600); it never appears on\n* a process argv. The assistant sources the env file at startup, so a key\n* written here is visible to OpenCode after the next assistant restart.\n*/\nvar POST = (event) => withAdminBody(event, async ({ requestId, body }) => {\n\tconst state = getState();\n\tconst key = typeof body.key === \"string\" ? body.key.trim() : \"\";\n\tconst value = typeof body.value === \"string\" ? body.value : null;\n\tif (!key || value === null) return errorResponse(400, \"bad_request\", \"key and value are required\", {}, requestId);\n\tif (!KEY_RE.test(key)) return errorResponse(400, \"invalid_key\", \"key must match [A-Za-z_][A-Za-z0-9_]*\", {}, requestId);\n\tif (value.length === 0) return errorResponse(400, \"bad_request\", \"value must be non-empty; use DELETE to remove a key\", {}, requestId);\n\tif (/[\\x00-\\x08\\x0a-\\x1f\\x7f]/.test(value)) return errorResponse(400, \"invalid_value\", \"value must not contain newlines or control characters\", {}, requestId);\n\ttry {\n\t\twriteUserEnvKey(state, key, value);\n\t} catch (err) {\n\t\tconst reason = err instanceof Error ? err.message : String(err);\n\t\tlogger.warn(\"user env write failed\", {\n\t\t\tkey,\n\t\t\treason,\n\t\t\trequestId\n\t\t});\n\t\treturn errorResponse(500, \"write_failed\", `Failed to write user env key: ${reason}`, {}, requestId);\n\t}\n\treturn jsonResponse(200, {\n\t\tok: true,\n\t\tkey\n\t}, requestId);\n});\n/** DELETE — remove a key from the user env file. */\nvar DELETE = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst state = getState();\n\tconst key = new URL(event.request.url).searchParams.get(\"key\")?.trim() ?? \"\";\n\tif (!key || !KEY_RE.test(key)) return errorResponse(400, \"bad_request\", \"valid key query parameter is required\", {}, requestId);\n\ttry {\n\t\tdeleteUserEnvKey(state, key);\n\t} catch (err) {\n\t\tconst reason = err instanceof Error ? err.message : String(err);\n\t\tlogger.warn(\"user env delete failed\", {\n\t\t\tkey,\n\t\t\treason,\n\t\t\trequestId\n\t\t});\n\t\treturn errorResponse(500, \"delete_failed\", `Failed to remove user env key: ${reason}`, {}, requestId);\n\t}\n\treturn jsonResponse(200, {\n\t\tok: true,\n\t\tkey\n\t}, requestId);\n};\n//#endregion\nexport { DELETE, GET, POST };\n"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { j as json } from './exports-D1quPX8S.js';
|
|
2
|
-
import {
|
|
2
|
+
import { T as fetchProviderModels, aq as resolveStackDir } from './src-Bs1lSXiF.js';
|
|
3
3
|
import './utils-BSRjJDrZ.js';
|
|
4
4
|
import './chunk-CLZ62Ad-.js';
|
|
5
5
|
import 'node:module';
|
|
@@ -56,4 +56,4 @@ var POST = async ({ params, request }) => {
|
|
|
56
56
|
};
|
|
57
57
|
|
|
58
58
|
export { POST };
|
|
59
|
-
//# sourceMappingURL=_server.ts-
|
|
59
|
+
//# sourceMappingURL=_server.ts-D3eL8ghY.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-D3eL8ghY.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/setup/models/_provider_/_server.ts.js"],"sourcesContent":["import { r as json } from \"../../../../../../chunks/exports.js\";\nimport { It as resolveStackDir, Y as fetchProviderModels } from \"../../../../../../chunks/src.js\";\n//#region src/routes/api/setup/models/[provider]/+server.ts\nvar POST = async ({ params, request }) => {\n\tconst provider = decodeURIComponent(params.provider);\n\tlet body = {};\n\ttry {\n\t\tbody = await request.json();\n\t} catch {\n\t\treturn json({\n\t\t\tok: false,\n\t\t\terror: \"invalid_json\",\n\t\t\tmessage: \"Request body must be valid JSON\"\n\t\t}, { status: 400 });\n\t}\n\tconst apiKey = typeof body.apiKey === \"string\" ? body.apiKey : \"\";\n\tconst baseUrl = typeof body.baseUrl === \"string\" ? body.baseUrl : \"\";\n\ttry {\n\t\tconst result = await fetchProviderModels(provider, apiKey, baseUrl, resolveStackDir());\n\t\tif (result.status !== \"ok\") return json({\n\t\t\tok: false,\n\t\t\t...result\n\t\t}, { status: 502 });\n\t\treturn json({\n\t\t\tok: true,\n\t\t\t...result\n\t\t});\n\t} catch (err) {\n\t\treturn json({\n\t\t\tok: false,\n\t\t\terror: \"model_fetch_failed\",\n\t\t\tmessage: String(err)\n\t\t}, { status: 500 });\n\t}\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAEA;AACG,IAAC,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK;AAC1C,CAAC,MAAM,QAAQ,GAAG,kBAAkB,CAAC,MAAM,CAAC,QAAQ,CAAC;AACrD,CAAC,IAAI,IAAI,GAAG,EAAE;AACd,CAAC,IAAI;AACL,EAAE,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE;AAC7B,CAAC,CAAC,CAAC,MAAM;AACT,EAAE,OAAO,IAAI,CAAC;AACd,GAAG,EAAE,EAAE,KAAK;AACZ,GAAG,KAAK,EAAE,cAAc;AACxB,GAAG,OAAO,EAAE;AACZ,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACrB,CAAC;AACD,CAAC,MAAM,MAAM,GAAG,OAAO,IAAI,CAAC,MAAM,KAAK,QAAQ,GAAG,IAAI,CAAC,MAAM,GAAG,EAAE;AAClE,CAAC,MAAM,OAAO,GAAG,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,GAAG,IAAI,CAAC,OAAO,GAAG,EAAE;AACrE,CAAC,IAAI;AACL,EAAE,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,eAAe,EAAE,CAAC;AACxF,EAAE,IAAI,MAAM,CAAC,MAAM,KAAK,IAAI,EAAE,OAAO,IAAI,CAAC;AAC1C,GAAG,EAAE,EAAE,KAAK;AACZ,GAAG,GAAG;AACN,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACrB,EAAE,OAAO,IAAI,CAAC;AACd,GAAG,EAAE,EAAE,IAAI;AACX,GAAG,GAAG;AACN,GAAG,CAAC;AACJ,CAAC,CAAC,CAAC,OAAO,GAAG,EAAE;AACf,EAAE,OAAO,IAAI,CAAC;AACd,GAAG,EAAE,EAAE,KAAK;AACZ,GAAG,KAAK,EAAE,oBAAoB;AAC9B,GAAG,OAAO,EAAE,MAAM,CAAC,GAAG;AACtB,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACrB,CAAC;AACD;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { b as getState } from './endpoints-
|
|
3
|
-
import { d as getRequestId, r as requireAdmin, k as jsonResponse, p as parseJsonBody, j as jsonBodyError, e as errorResponse } from './helpers-
|
|
1
|
+
import { I as disableHostAkmSharing, Z as getHostAkmSharingStatus, J as enableHostAkmSharing } from './src-Bs1lSXiF.js';
|
|
2
|
+
import { b as getState } from './endpoints-CRYjnmeW.js';
|
|
3
|
+
import { d as getRequestId, r as requireAdmin, k as jsonResponse, p as parseJsonBody, j as jsonBodyError, e as errorResponse } from './helpers-C9xlDb4M.js';
|
|
4
4
|
import './chunk-CLZ62Ad-.js';
|
|
5
5
|
import 'node:module';
|
|
6
6
|
import 'node:fs';
|
|
@@ -61,4 +61,4 @@ var DELETE = async (event) => {
|
|
|
61
61
|
};
|
|
62
62
|
|
|
63
63
|
export { DELETE, GET, PUT };
|
|
64
|
-
//# sourceMappingURL=_server.ts-
|
|
64
|
+
//# sourceMappingURL=_server.ts-D4GCS8S-.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-D4GCS8S-.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/akm/host-sharing/_server.ts.js"],"sourcesContent":["import { G as getHostAkmSharingStatus, U as disableHostAkmSharing, W as enableHostAkmSharing } from \"../../../../../chunks/src.js\";\nimport { c as getState } from \"../../../../../chunks/endpoints.js\";\nimport { d as parseJsonBody, f as requireAdmin, i as errorResponse, l as jsonBodyError, o as getRequestId, u as jsonResponse } from \"../../../../../chunks/helpers.js\";\n//#region src/routes/admin/akm/host-sharing/+server.ts\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\treturn jsonResponse(200, { sharing: getHostAkmSharingStatus(getState()) }, requestId);\n};\nvar PUT = 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 opts = result.data;\n\tconst writable = opts.writable === void 0 ? true : opts.writable === true;\n\tconst importProfiles = opts.importProfiles === true;\n\tconst state = getState();\n\ttry {\n\t\tconst { profilesImported } = enableHostAkmSharing(state, {\n\t\t\twritable,\n\t\t\timportProfiles\n\t\t});\n\t\treturn jsonResponse(200, {\n\t\t\tsharing: getHostAkmSharingStatus(state),\n\t\t\tprofilesImported\n\t\t}, requestId);\n\t} catch (err) {\n\t\treturn errorResponse(409, \"conflict\", err.message, {}, requestId);\n\t}\n};\nvar DELETE = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst state = getState();\n\tdisableHostAkmSharing(state);\n\treturn jsonResponse(200, { sharing: getHostAkmSharingStatus(state) }, requestId);\n};\n//#endregion\nexport { DELETE, GET, PUT };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAGA;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,OAAO,YAAY,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,uBAAuB,CAAC,QAAQ,EAAE,CAAC,EAAE,EAAE,SAAS,CAAC;AACtF;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,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,IAAI,CAAC,QAAQ,KAAK,MAAM,GAAG,IAAI,GAAG,IAAI,CAAC,QAAQ,KAAK,IAAI;AAC1E,CAAC,MAAM,cAAc,GAAG,IAAI,CAAC,cAAc,KAAK,IAAI;AACpD,CAAC,MAAM,KAAK,GAAG,QAAQ,EAAE;AACzB,CAAC,IAAI;AACL,EAAE,MAAM,EAAE,gBAAgB,EAAE,GAAG,oBAAoB,CAAC,KAAK,EAAE;AAC3D,GAAG,QAAQ;AACX,GAAG;AACH,GAAG,CAAC;AACJ,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE;AAC3B,GAAG,OAAO,EAAE,uBAAuB,CAAC,KAAK,CAAC;AAC1C,GAAG;AACH,GAAG,EAAE,SAAS,CAAC;AACf,CAAC,CAAC,CAAC,OAAO,GAAG,EAAE;AACf,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,UAAU,EAAE,GAAG,CAAC,OAAO,EAAE,EAAE,EAAE,SAAS,CAAC;AACnE,CAAC;AACD;AACG,IAAC,MAAM,GAAG,OAAO,KAAK,KAAK;AAC9B,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,KAAK,GAAG,QAAQ,EAAE;AACzB,CAAC,qBAAqB,CAAC,KAAK,CAAC;AAC7B,CAAC,OAAO,YAAY,CAAC,GAAG,EAAE,EAAE,OAAO,EAAE,uBAAuB,CAAC,KAAK,CAAC,EAAE,EAAE,SAAS,CAAC;AACjF;;;;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { j as json } from './exports-D1quPX8S.js';
|
|
2
|
-
import {
|
|
2
|
+
import { a3 as isSetupComplete, aq as resolveStackDir } from './src-Bs1lSXiF.js';
|
|
3
3
|
import './utils-BSRjJDrZ.js';
|
|
4
4
|
import './chunk-CLZ62Ad-.js';
|
|
5
5
|
import 'node:module';
|
|
@@ -30,4 +30,4 @@ var GET = () => {
|
|
|
30
30
|
};
|
|
31
31
|
|
|
32
32
|
export { GET };
|
|
33
|
-
//# sourceMappingURL=_server.ts-
|
|
33
|
+
//# sourceMappingURL=_server.ts-D4ZJODQ1.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-D4ZJODQ1.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/setup/status/_server.ts.js"],"sourcesContent":["import { r as json } from \"../../../../../chunks/exports.js\";\nimport { It as resolveStackDir, Z as isSetupComplete } from \"../../../../../chunks/src.js\";\n//#region src/routes/api/setup/status/+server.ts\nvar GET = () => {\n\treturn json({\n\t\tok: true,\n\t\tsetupComplete: isSetupComplete(resolveStackDir())\n\t});\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAEA;AACG,IAAC,GAAG,GAAG,MAAM;AAChB,CAAC,OAAO,IAAI,CAAC;AACb,EAAE,EAAE,EAAE,IAAI;AACV,EAAE,aAAa,EAAE,eAAe,CAAC,eAAe,EAAE;AAClD,EAAE,CAAC;AACH;;;;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { j as json } from './exports-D1quPX8S.js';
|
|
2
|
-
import {
|
|
2
|
+
import { H as detectLocalProviders } from './src-Bs1lSXiF.js';
|
|
3
3
|
import './utils-BSRjJDrZ.js';
|
|
4
4
|
import './chunk-CLZ62Ad-.js';
|
|
5
5
|
import 'node:module';
|
|
@@ -38,4 +38,4 @@ var GET = async () => {
|
|
|
38
38
|
};
|
|
39
39
|
|
|
40
40
|
export { GET };
|
|
41
|
-
//# sourceMappingURL=_server.ts-
|
|
41
|
+
//# sourceMappingURL=_server.ts-D60NzF0a.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-D60NzF0a.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/setup/detect-providers/_server.ts.js"],"sourcesContent":["import { r as json } from \"../../../../../chunks/exports.js\";\nimport { l as detectLocalProviders } from \"../../../../../chunks/src.js\";\n//#region src/routes/api/setup/detect-providers/+server.ts\nvar GET = async () => {\n\ttry {\n\t\treturn json({\n\t\t\tok: true,\n\t\t\tproviders: await detectLocalProviders()\n\t\t});\n\t} catch (err) {\n\t\treturn json({\n\t\t\tok: false,\n\t\t\terror: \"detection_failed\",\n\t\t\tmessage: String(err)\n\t\t}, { status: 500 });\n\t}\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAEA;AACG,IAAC,GAAG,GAAG,YAAY;AACtB,CAAC,IAAI;AACL,EAAE,OAAO,IAAI,CAAC;AACd,GAAG,EAAE,EAAE,IAAI;AACX,GAAG,SAAS,EAAE,MAAM,oBAAoB;AACxC,GAAG,CAAC;AACJ,CAAC,CAAC,CAAC,OAAO,GAAG,EAAE;AACf,EAAE,OAAO,IAAI,CAAC;AACd,GAAG,EAAE,EAAE,KAAK;AACZ,GAAG,KAAK,EAAE,kBAAkB;AAC5B,GAAG,OAAO,EAAE,MAAM,CAAC,GAAG;AACtB,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACrB,CAAC;AACD;;;;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { d as getRequestId, r as requireAdmin, e as errorResponse } from './helpers-
|
|
2
|
-
import './src-
|
|
1
|
+
import { d as getRequestId, r as requireAdmin, e as errorResponse } from './helpers-C9xlDb4M.js';
|
|
2
|
+
import './src-Bs1lSXiF.js';
|
|
3
3
|
import './chunk-CLZ62Ad-.js';
|
|
4
4
|
import 'node:module';
|
|
5
5
|
import 'node:fs';
|
|
@@ -19,7 +19,7 @@ import 'assert';
|
|
|
19
19
|
import 'zlib';
|
|
20
20
|
import 'node:assert';
|
|
21
21
|
import 'node:fs/promises';
|
|
22
|
-
import './endpoints-
|
|
22
|
+
import './endpoints-CRYjnmeW.js';
|
|
23
23
|
|
|
24
24
|
//#region src/routes/api/speak/+server.ts
|
|
25
25
|
var DEFAULT_MODEL = "kokoro";
|
|
@@ -87,4 +87,4 @@ var POST = async (event) => {
|
|
|
87
87
|
};
|
|
88
88
|
|
|
89
89
|
export { POST };
|
|
90
|
-
//# sourceMappingURL=_server.ts-
|
|
90
|
+
//# sourceMappingURL=_server.ts-D6J-vSqv.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-D6J-vSqv.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/speak/_server.ts.js"],"sourcesContent":["import { f as requireAdmin, i as errorResponse, o as getRequestId } from \"../../../../chunks/helpers.js\";\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 ttsBaseURL = (process.env.OP_TTS_BASE_URL ?? \"\").trim();\n\tconst ttsModel = (process.env.OP_TTS_MODEL ?? \"\").trim() || DEFAULT_MODEL;\n\tconst ttsVoice = (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 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\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: text,\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,7 +1,7 @@
|
|
|
1
|
-
import { b as getState } from './endpoints-
|
|
2
|
-
import { d as getRequestId, r as requireAdmin, k as jsonResponse } from './helpers-
|
|
1
|
+
import { b as getState } from './endpoints-CRYjnmeW.js';
|
|
2
|
+
import { d as getRequestId, r as requireAdmin, k as jsonResponse } from './helpers-C9xlDb4M.js';
|
|
3
3
|
import { execFile } from 'node:child_process';
|
|
4
|
-
import './src-
|
|
4
|
+
import './src-Bs1lSXiF.js';
|
|
5
5
|
import './chunk-CLZ62Ad-.js';
|
|
6
6
|
import 'node:module';
|
|
7
7
|
import 'node:fs';
|
|
@@ -98,4 +98,4 @@ var GET = async (event) => {
|
|
|
98
98
|
};
|
|
99
99
|
|
|
100
100
|
export { GET };
|
|
101
|
-
//# sourceMappingURL=_server.ts-
|
|
101
|
+
//# sourceMappingURL=_server.ts-D7hNhjI7.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-D7hNhjI7.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/akm/health/_server.ts.js"],"sourcesContent":["import { c as getState } from \"../../../../../chunks/endpoints.js\";\nimport { f as requireAdmin, o as getRequestId, u as jsonResponse } from \"../../../../../chunks/helpers.js\";\nimport { execFile } from \"node:child_process\";\n//#region src/routes/admin/akm/health/+server.ts\n/**\n* GET /admin/akm/health — AKM runtime health + index stats for the dashboard.\n*\n* Runs the `akm` CLI (health + info) against the STACK's stash/state by pointing\n* AKM_* env at this OP_HOME, NOT the operator's personal ~/akm. Fails soft:\n* if the CLI is missing or errors, returns { available: false } so the dashboard\n* can show an \"unavailable\" state instead of breaking.\n*/\nfunction runAkm(args, env, timeoutMs) {\n\treturn new Promise((resolve) => {\n\t\texecFile(\"akm\", args, {\n\t\t\ttimeout: timeoutMs,\n\t\t\tenv,\n\t\t\tmaxBuffer: 4 * 1024 * 1024\n\t\t}, (error, stdout) => {\n\t\t\tresolve({\n\t\t\t\tok: !error,\n\t\t\t\tstdout: stdout?.toString() ?? \"\"\n\t\t\t});\n\t\t});\n\t});\n}\nfunction safeParse(s) {\n\ttry {\n\t\tconst v = JSON.parse(s);\n\t\treturn v && typeof v === \"object\" ? v : null;\n\t} catch {\n\t\treturn null;\n\t}\n}\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst denied = requireAdmin(event, requestId);\n\tif (denied) return denied;\n\tconst state = getState();\n\tconst env = {\n\t\t...process.env,\n\t\tAKM_STASH_DIR: state.stashDir,\n\t\tAKM_DATA_DIR: `${state.dataDir}/akm/data`,\n\t\tAKM_CONFIG_DIR: `${state.configDir}/akm`\n\t};\n\tconst [health, info] = await Promise.all([runAkm([\n\t\t\"health\",\n\t\t\"--json\",\n\t\t\"--quiet\"\n\t], env, 8e3), runAkm([\n\t\t\"info\",\n\t\t\"--json\",\n\t\t\"--quiet\"\n\t], env, 8e3)]);\n\tconst parsedHealth = safeParse(health.stdout);\n\tconst parsedInfo = safeParse(info.stdout);\n\tif (!parsedHealth && !parsedInfo) return jsonResponse(200, {\n\t\tavailable: false,\n\t\treason: \"akm CLI unavailable\"\n\t}, requestId);\n\tconst checks = Array.isArray(parsedHealth?.hardChecks) ? parsedHealth.hardChecks : [];\n\tconst checkCounts = {\n\t\tpass: 0,\n\t\twarn: 0,\n\t\tfail: 0\n\t};\n\tfor (const c of checks) if (c.status === \"pass\") checkCounts.pass++;\n\telse if (c.status === \"warn\") checkCounts.warn++;\n\telse checkCounts.fail++;\n\treturn jsonResponse(200, {\n\t\tavailable: true,\n\t\tstatus: parsedHealth?.status ?? \"unknown\",\n\t\tok: typeof parsedHealth?.ok === \"boolean\" ? parsedHealth.ok : null,\n\t\tchecks: checkCounts,\n\t\tmetrics: parsedHealth?.metrics ?? null,\n\t\tindex: parsedInfo?.indexStats ?? null\n\t}, requestId);\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { y as createLogger } from './src-
|
|
2
|
-
import { d as getRequestId, r as requireAdmin, e as errorResponse, g as getOpenCodeClient, k as jsonResponse, p as parseJsonBody, j as jsonBodyError } from './helpers-
|
|
1
|
+
import { y as createLogger } from './src-Bs1lSXiF.js';
|
|
2
|
+
import { d as getRequestId, r as requireAdmin, e as errorResponse, g as getOpenCodeClient, k as jsonResponse, p as parseJsonBody, j as jsonBodyError } from './helpers-C9xlDb4M.js';
|
|
3
3
|
import './chunk-CLZ62Ad-.js';
|
|
4
4
|
import 'node:module';
|
|
5
5
|
import 'node:fs';
|
|
@@ -19,7 +19,7 @@ import 'assert';
|
|
|
19
19
|
import 'zlib';
|
|
20
20
|
import 'node:assert';
|
|
21
21
|
import 'node:fs/promises';
|
|
22
|
-
import './endpoints-
|
|
22
|
+
import './endpoints-CRYjnmeW.js';
|
|
23
23
|
|
|
24
24
|
//#region src/routes/admin/opencode/providers/[id]/auth/+server.ts
|
|
25
25
|
var logger = createLogger("opencode.auth");
|
|
@@ -160,4 +160,4 @@ var DELETE = async (event) => {
|
|
|
160
160
|
};
|
|
161
161
|
|
|
162
162
|
export { DELETE, GET, POST };
|
|
163
|
-
//# sourceMappingURL=_server.ts-
|
|
163
|
+
//# sourceMappingURL=_server.ts-DMKACnON.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-DSBUjxDK.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/opencode/providers/_id_/auth/_server.ts.js"],"sourcesContent":["import { Lt as createLogger } from \"../../../../../../../chunks/src.js\";\nimport { a as getOpenCodeClient, d as parseJsonBody, f as requireAdmin, i as errorResponse, l as jsonBodyError, o as getRequestId, u as jsonResponse } from \"../../../../../../../chunks/helpers.js\";\n//#region src/routes/admin/opencode/providers/[id]/auth/+server.ts\nvar logger = createLogger(\"opencode.auth\");\nvar MAX_API_KEY_LENGTH = 512;\nvar API_KEY_PATTERN = /^[\\x20-\\x7E]+$/;\nvar OAUTH_SESSION_TTL_MS = 6e5;\nvar MAX_PROVIDER_ID_LENGTH = 128;\nvar PROVIDER_ID_PATTERN = /^[a-zA-Z0-9_.-]+$/;\nfunction validateApiKey(key) {\n\tif (key.length > MAX_API_KEY_LENGTH) return \"API key exceeds maximum length\";\n\tif (!API_KEY_PATTERN.test(key)) return \"API key contains invalid characters\";\n\treturn null;\n}\nvar oauthSessions = /* @__PURE__ */ new Map();\nfunction purgeExpiredSessions() {\n\tconst now = Date.now();\n\tfor (const [token, session] of oauthSessions) if (now - session.createdAt > OAUTH_SESSION_TTL_MS) oauthSessions.delete(token);\n}\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst pollToken = event.url.searchParams.get(\"pollToken\");\n\tif (!pollToken) return errorResponse(400, \"bad_request\", \"pollToken query parameter is required\", {}, requestId);\n\tpurgeExpiredSessions();\n\tconst session = oauthSessions.get(pollToken);\n\tif (!session) return errorResponse(404, \"not_found\", \"Poll session not found or expired\", {}, requestId);\n\tif (event.params.id !== session.providerId) return errorResponse(400, \"bad_request\", \"Provider ID does not match poll session\", {}, requestId);\n\tif ((await getOpenCodeClient().completeProviderOAuth(session.providerId, session.methodIndex)).ok) {\n\t\toauthSessions.delete(pollToken);\n\t\tlogger.info(\"oauth authorization completed\", {\n\t\t\tproviderId: session.providerId,\n\t\t\trequestId\n\t\t});\n\t\treturn jsonResponse(200, {\n\t\t\tstatus: \"complete\",\n\t\t\tmessage: \"Authorization successful\"\n\t\t}, requestId);\n\t}\n\tif (Date.now() - session.createdAt > OAUTH_SESSION_TTL_MS) {\n\t\toauthSessions.delete(pollToken);\n\t\treturn jsonResponse(200, {\n\t\t\tstatus: \"error\",\n\t\t\tmessage: \"Authorization session expired\"\n\t\t}, requestId);\n\t}\n\treturn jsonResponse(200, {\n\t\tstatus: \"pending\",\n\t\tmessage: \"Waiting for authorization...\"\n\t}, requestId);\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 providerId = event.params.id;\n\tconst mode = typeof body.mode === \"string\" ? body.mode : \"\";\n\tif (!providerId || providerId.length > MAX_PROVIDER_ID_LENGTH || !PROVIDER_ID_PATTERN.test(providerId)) return errorResponse(400, \"bad_request\", \"Invalid provider ID\", {}, requestId);\n\tpurgeExpiredSessions();\n\tif (mode === \"api_key\") {\n\t\tconst apiKey = typeof body.apiKey === \"string\" ? body.apiKey.trim() : \"\";\n\t\tif (!apiKey) return errorResponse(400, \"bad_request\", \"apiKey is required for api_key mode\", {}, requestId);\n\t\tconst keyError = validateApiKey(apiKey);\n\t\tif (keyError) return errorResponse(400, \"bad_request\", keyError, {}, requestId);\n\t\tconst result = await getOpenCodeClient().setProviderApiKey(providerId, apiKey);\n\t\tif (!result.ok) {\n\t\t\tlogger.warn(\"provider api key save failed\", {\n\t\t\t\tproviderId,\n\t\t\t\trequestId,\n\t\t\t\terror: result.code\n\t\t\t});\n\t\t\treturn errorResponse(result.status, result.code, result.message, {}, requestId);\n\t\t}\n\t\tlogger.info(\"provider API key saved to OpenCode auth.json\", {\n\t\t\tproviderId,\n\t\t\trequestId\n\t\t});\n\t\treturn jsonResponse(200, {\n\t\t\tok: true,\n\t\t\tmode: \"api_key\"\n\t\t}, requestId);\n\t}\n\tif (mode === \"oauth\") {\n\t\tif (typeof body.methodIndex !== \"undefined\" && (typeof body.methodIndex !== \"number\" || !Number.isInteger(body.methodIndex) || body.methodIndex < 0)) return errorResponse(400, \"bad_request\", \"methodIndex must be a non-negative integer\", {}, requestId);\n\t\tconst methodIndex = typeof body.methodIndex === \"number\" ? body.methodIndex : 0;\n\t\tconst result = await getOpenCodeClient().startProviderOAuth(providerId, methodIndex);\n\t\tif (!result.ok) return errorResponse(result.status, result.code, result.message, {}, requestId);\n\t\tconst data = result.data;\n\t\tconst pollToken = crypto.randomUUID();\n\t\toauthSessions.set(pollToken, {\n\t\t\tproviderId,\n\t\t\tmethodIndex,\n\t\t\tcreatedAt: Date.now()\n\t\t});\n\t\tlogger.info(\"oauth authorization started\", {\n\t\t\tproviderId,\n\t\t\tmethodIndex,\n\t\t\trequestId\n\t\t});\n\t\treturn jsonResponse(200, {\n\t\t\tok: true,\n\t\t\tmode: \"oauth\",\n\t\t\tpollToken,\n\t\t\turl: data.url,\n\t\t\tmethod: data.method,\n\t\t\tinstructions: data.instructions\n\t\t}, requestId);\n\t}\n\treturn errorResponse(400, \"bad_request\", \"mode must be api_key or oauth\", {}, requestId);\n};\n/**\n* DELETE /admin/opencode/providers/:id/auth — Disconnect a provider by\n* removing its credential from OpenCode's auth.json.\n*/\nvar DELETE = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst providerId = event.params.id ?? \"\";\n\tif (!providerId || providerId.length > MAX_PROVIDER_ID_LENGTH || !PROVIDER_ID_PATTERN.test(providerId)) return errorResponse(400, \"bad_request\", \"Invalid provider ID\", {}, requestId);\n\tconst result = await getOpenCodeClient().proxy(`/auth/${encodeURIComponent(providerId)}`, { method: \"DELETE\" });\n\tif (!result.ok) {\n\t\tlogger.warn(\"provider disconnect failed\", {\n\t\t\tproviderId,\n\t\t\trequestId,\n\t\t\terror: result.code\n\t\t});\n\t\treturn errorResponse(result.status, result.code, result.message, {}, requestId);\n\t}\n\tlogger.info(\"provider credential removed via OpenCode /auth DELETE\", {\n\t\tproviderId,\n\t\trequestId\n\t});\n\treturn jsonResponse(200, { ok: true }, requestId);\n};\n//#endregion\nexport { DELETE, GET, POST };\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"_server.ts-DMKACnON.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/opencode/providers/_id_/auth/_server.ts.js"],"sourcesContent":["import { Rt as createLogger } from \"../../../../../../../chunks/src.js\";\nimport { a as getOpenCodeClient, d as parseJsonBody, f as requireAdmin, i as errorResponse, l as jsonBodyError, o as getRequestId, u as jsonResponse } from \"../../../../../../../chunks/helpers.js\";\n//#region src/routes/admin/opencode/providers/[id]/auth/+server.ts\nvar logger = createLogger(\"opencode.auth\");\nvar MAX_API_KEY_LENGTH = 512;\nvar API_KEY_PATTERN = /^[\\x20-\\x7E]+$/;\nvar OAUTH_SESSION_TTL_MS = 6e5;\nvar MAX_PROVIDER_ID_LENGTH = 128;\nvar PROVIDER_ID_PATTERN = /^[a-zA-Z0-9_.-]+$/;\nfunction validateApiKey(key) {\n\tif (key.length > MAX_API_KEY_LENGTH) return \"API key exceeds maximum length\";\n\tif (!API_KEY_PATTERN.test(key)) return \"API key contains invalid characters\";\n\treturn null;\n}\nvar oauthSessions = /* @__PURE__ */ new Map();\nfunction purgeExpiredSessions() {\n\tconst now = Date.now();\n\tfor (const [token, session] of oauthSessions) if (now - session.createdAt > OAUTH_SESSION_TTL_MS) oauthSessions.delete(token);\n}\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst pollToken = event.url.searchParams.get(\"pollToken\");\n\tif (!pollToken) return errorResponse(400, \"bad_request\", \"pollToken query parameter is required\", {}, requestId);\n\tpurgeExpiredSessions();\n\tconst session = oauthSessions.get(pollToken);\n\tif (!session) return errorResponse(404, \"not_found\", \"Poll session not found or expired\", {}, requestId);\n\tif (event.params.id !== session.providerId) return errorResponse(400, \"bad_request\", \"Provider ID does not match poll session\", {}, requestId);\n\tif ((await getOpenCodeClient().completeProviderOAuth(session.providerId, session.methodIndex)).ok) {\n\t\toauthSessions.delete(pollToken);\n\t\tlogger.info(\"oauth authorization completed\", {\n\t\t\tproviderId: session.providerId,\n\t\t\trequestId\n\t\t});\n\t\treturn jsonResponse(200, {\n\t\t\tstatus: \"complete\",\n\t\t\tmessage: \"Authorization successful\"\n\t\t}, requestId);\n\t}\n\tif (Date.now() - session.createdAt > OAUTH_SESSION_TTL_MS) {\n\t\toauthSessions.delete(pollToken);\n\t\treturn jsonResponse(200, {\n\t\t\tstatus: \"error\",\n\t\t\tmessage: \"Authorization session expired\"\n\t\t}, requestId);\n\t}\n\treturn jsonResponse(200, {\n\t\tstatus: \"pending\",\n\t\tmessage: \"Waiting for authorization...\"\n\t}, requestId);\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 providerId = event.params.id;\n\tconst mode = typeof body.mode === \"string\" ? body.mode : \"\";\n\tif (!providerId || providerId.length > MAX_PROVIDER_ID_LENGTH || !PROVIDER_ID_PATTERN.test(providerId)) return errorResponse(400, \"bad_request\", \"Invalid provider ID\", {}, requestId);\n\tpurgeExpiredSessions();\n\tif (mode === \"api_key\") {\n\t\tconst apiKey = typeof body.apiKey === \"string\" ? body.apiKey.trim() : \"\";\n\t\tif (!apiKey) return errorResponse(400, \"bad_request\", \"apiKey is required for api_key mode\", {}, requestId);\n\t\tconst keyError = validateApiKey(apiKey);\n\t\tif (keyError) return errorResponse(400, \"bad_request\", keyError, {}, requestId);\n\t\tconst result = await getOpenCodeClient().setProviderApiKey(providerId, apiKey);\n\t\tif (!result.ok) {\n\t\t\tlogger.warn(\"provider api key save failed\", {\n\t\t\t\tproviderId,\n\t\t\t\trequestId,\n\t\t\t\terror: result.code\n\t\t\t});\n\t\t\treturn errorResponse(result.status, result.code, result.message, {}, requestId);\n\t\t}\n\t\tlogger.info(\"provider API key saved to OpenCode auth.json\", {\n\t\t\tproviderId,\n\t\t\trequestId\n\t\t});\n\t\treturn jsonResponse(200, {\n\t\t\tok: true,\n\t\t\tmode: \"api_key\"\n\t\t}, requestId);\n\t}\n\tif (mode === \"oauth\") {\n\t\tif (typeof body.methodIndex !== \"undefined\" && (typeof body.methodIndex !== \"number\" || !Number.isInteger(body.methodIndex) || body.methodIndex < 0)) return errorResponse(400, \"bad_request\", \"methodIndex must be a non-negative integer\", {}, requestId);\n\t\tconst methodIndex = typeof body.methodIndex === \"number\" ? body.methodIndex : 0;\n\t\tconst result = await getOpenCodeClient().startProviderOAuth(providerId, methodIndex);\n\t\tif (!result.ok) return errorResponse(result.status, result.code, result.message, {}, requestId);\n\t\tconst data = result.data;\n\t\tconst pollToken = crypto.randomUUID();\n\t\toauthSessions.set(pollToken, {\n\t\t\tproviderId,\n\t\t\tmethodIndex,\n\t\t\tcreatedAt: Date.now()\n\t\t});\n\t\tlogger.info(\"oauth authorization started\", {\n\t\t\tproviderId,\n\t\t\tmethodIndex,\n\t\t\trequestId\n\t\t});\n\t\treturn jsonResponse(200, {\n\t\t\tok: true,\n\t\t\tmode: \"oauth\",\n\t\t\tpollToken,\n\t\t\turl: data.url,\n\t\t\tmethod: data.method,\n\t\t\tinstructions: data.instructions\n\t\t}, requestId);\n\t}\n\treturn errorResponse(400, \"bad_request\", \"mode must be api_key or oauth\", {}, requestId);\n};\n/**\n* DELETE /admin/opencode/providers/:id/auth — Disconnect a provider by\n* removing its credential from OpenCode's auth.json.\n*/\nvar DELETE = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst providerId = event.params.id ?? \"\";\n\tif (!providerId || providerId.length > MAX_PROVIDER_ID_LENGTH || !PROVIDER_ID_PATTERN.test(providerId)) return errorResponse(400, \"bad_request\", \"Invalid provider ID\", {}, requestId);\n\tconst result = await getOpenCodeClient().proxy(`/auth/${encodeURIComponent(providerId)}`, { method: \"DELETE\" });\n\tif (!result.ok) {\n\t\tlogger.warn(\"provider disconnect failed\", {\n\t\t\tproviderId,\n\t\t\trequestId,\n\t\t\terror: result.code\n\t\t});\n\t\treturn errorResponse(result.status, result.code, result.message, {}, requestId);\n\t}\n\tlogger.info(\"provider credential removed via OpenCode /auth DELETE\", {\n\t\tproviderId,\n\t\trequestId\n\t});\n\treturn jsonResponse(200, { ok: true }, requestId);\n};\n//#endregion\nexport { DELETE, GET, POST };\n"],"names":[],"mappings":"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"}
|