@openpalm/ui 0.13.0-beta.5 → 0.13.0-beta.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/.openpalm-ui-version +1 -1
- package/build/client/_app/immutable/assets/4.Cd3Y_8BZ.css +1 -0
- package/build/client/_app/immutable/assets/4.Cd3Y_8BZ.css.br +3 -0
- package/build/client/_app/immutable/assets/4.Cd3Y_8BZ.css.gz +0 -0
- package/build/client/_app/immutable/assets/6.BM7A1dW5.css +1 -0
- package/build/client/_app/immutable/assets/6.BM7A1dW5.css.br +0 -0
- package/build/client/_app/immutable/assets/6.BM7A1dW5.css.gz +0 -0
- package/build/client/_app/immutable/assets/7.BsquVIMw.css +1 -0
- package/build/client/_app/immutable/assets/7.BsquVIMw.css.br +0 -0
- package/build/client/_app/immutable/assets/7.BsquVIMw.css.gz +0 -0
- package/build/client/_app/immutable/assets/9.D8zTZB7v.css +1 -0
- package/build/client/_app/immutable/assets/9.D8zTZB7v.css.br +0 -0
- package/build/client/_app/immutable/assets/9.D8zTZB7v.css.gz +0 -0
- package/build/client/_app/immutable/assets/QuestionCard.CSfD3z_X.css +1 -0
- package/build/client/_app/immutable/assets/QuestionCard.CSfD3z_X.css.br +0 -0
- package/build/client/_app/immutable/assets/QuestionCard.CSfD3z_X.css.gz +0 -0
- package/build/client/_app/immutable/chunks/1F1QVf3N.js +1 -0
- package/build/client/_app/immutable/chunks/1F1QVf3N.js.br +0 -0
- package/build/client/_app/immutable/chunks/1F1QVf3N.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{DmFbAjwW.js → 92accNiq.js} +1 -1
- package/build/client/_app/immutable/chunks/92accNiq.js.br +0 -0
- package/build/client/_app/immutable/chunks/92accNiq.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{SXdvPq3_.js → BBXQKGHA.js} +1 -1
- package/build/client/_app/immutable/chunks/BBXQKGHA.js.br +1 -0
- package/build/client/_app/immutable/chunks/BBXQKGHA.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BE_4J5sS.js +3 -0
- package/build/client/_app/immutable/chunks/BE_4J5sS.js.br +0 -0
- package/build/client/_app/immutable/chunks/BE_4J5sS.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{CUa5ff3d.js → BGx9HO1u.js} +1 -1
- package/build/client/_app/immutable/chunks/BGx9HO1u.js.br +0 -0
- package/build/client/_app/immutable/chunks/BGx9HO1u.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BdIq5WIo.js +1 -0
- package/build/client/_app/immutable/chunks/BdIq5WIo.js.br +5 -0
- package/build/client/_app/immutable/chunks/BdIq5WIo.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{BDK50g8a.js → ByiipSaR.js} +1 -1
- package/build/client/_app/immutable/chunks/ByiipSaR.js.br +3 -0
- package/build/client/_app/immutable/chunks/ByiipSaR.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{D5FtEngX.js → C4qTU5YY.js} +1 -1
- package/build/client/_app/immutable/chunks/C4qTU5YY.js.br +0 -0
- package/build/client/_app/immutable/chunks/C4qTU5YY.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C6rMFkms.js +14 -0
- package/build/client/_app/immutable/chunks/C6rMFkms.js.br +0 -0
- package/build/client/_app/immutable/chunks/C6rMFkms.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{mG6HnNbi.js → CJc9QEdG.js} +1 -1
- package/build/client/_app/immutable/chunks/CJc9QEdG.js.br +2 -0
- package/build/client/_app/immutable/chunks/CJc9QEdG.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Clt9pCG1.js +1 -0
- package/build/client/_app/immutable/chunks/Clt9pCG1.js.br +0 -0
- package/build/client/_app/immutable/chunks/Clt9pCG1.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CuKFR3Qo.js +3 -0
- package/build/client/_app/immutable/chunks/CuKFR3Qo.js.br +0 -0
- package/build/client/_app/immutable/chunks/CuKFR3Qo.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CzKYnjEX.js +1 -0
- package/build/client/_app/immutable/chunks/CzKYnjEX.js.br +0 -0
- package/build/client/_app/immutable/chunks/CzKYnjEX.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D1VTYdXF.js +1 -0
- package/build/client/_app/immutable/chunks/D1VTYdXF.js.br +0 -0
- package/build/client/_app/immutable/chunks/D1VTYdXF.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D3d8Mm8X.js +1 -0
- package/build/client/_app/immutable/chunks/D3d8Mm8X.js.br +1 -0
- package/build/client/_app/immutable/chunks/D3d8Mm8X.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DF5Aoa59.js +1 -0
- package/build/client/_app/immutable/chunks/DF5Aoa59.js.br +2 -0
- package/build/client/_app/immutable/chunks/DF5Aoa59.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{NR-JVJz-.js → DTAO9S6h.js} +1 -1
- package/build/client/_app/immutable/chunks/DTAO9S6h.js.br +0 -0
- package/build/client/_app/immutable/chunks/DTAO9S6h.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DTLQuSQp.js +3 -0
- package/build/client/_app/immutable/chunks/DTLQuSQp.js.br +0 -0
- package/build/client/_app/immutable/chunks/DTLQuSQp.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DaRQZQEK.js +5 -0
- package/build/client/_app/immutable/chunks/DaRQZQEK.js.br +0 -0
- package/build/client/_app/immutable/chunks/DaRQZQEK.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Dz-hw4Sz.js +5 -0
- package/build/client/_app/immutable/chunks/Dz-hw4Sz.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dz-hw4Sz.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{hSjQday7.js → _zkFsY4j.js} +1 -1
- package/build/client/_app/immutable/chunks/_zkFsY4j.js.br +0 -0
- package/build/client/_app/immutable/chunks/_zkFsY4j.js.gz +0 -0
- package/build/client/_app/immutable/chunks/mNzUu332.js +1 -0
- package/build/client/_app/immutable/chunks/mNzUu332.js.br +0 -0
- package/build/client/_app/immutable/chunks/mNzUu332.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.DKG33-gU.js +2 -0
- package/build/client/_app/immutable/entry/app.DKG33-gU.js.br +0 -0
- package/build/client/_app/immutable/entry/app.DKG33-gU.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.vDtUfDrT.js +1 -0
- package/build/client/_app/immutable/entry/start.vDtUfDrT.js.br +1 -0
- package/build/client/_app/immutable/entry/start.vDtUfDrT.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.eA5H3idZ.js +1 -0
- package/build/client/_app/immutable/nodes/0.eA5H3idZ.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.eA5H3idZ.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.CvKFymDh.js +1 -0
- package/build/client/_app/immutable/nodes/1.CvKFymDh.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.CvKFymDh.js.gz +0 -0
- package/build/client/_app/immutable/nodes/10.DFMf8WUQ.js +1 -0
- package/build/client/_app/immutable/nodes/10.DFMf8WUQ.js.br +0 -0
- package/build/client/_app/immutable/nodes/10.DFMf8WUQ.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{11.Ti2X5F-7.js → 11.BZQW5Y67.js} +6 -6
- package/build/client/_app/immutable/nodes/11.BZQW5Y67.js.br +0 -0
- package/build/client/_app/immutable/nodes/11.BZQW5Y67.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.tmtk1Bjc.js +1 -0
- package/build/client/_app/immutable/nodes/2.tmtk1Bjc.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.tmtk1Bjc.js.gz +0 -0
- package/build/client/_app/immutable/nodes/3.BEaeucAu.js +1 -0
- package/build/client/_app/immutable/nodes/3.BEaeucAu.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.BEaeucAu.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.B-36aGPk.js +1 -0
- package/build/client/_app/immutable/nodes/4.B-36aGPk.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.B-36aGPk.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{5.CNMS0qgk.js → 5.bgdUYUlr.js} +2 -2
- package/build/client/_app/immutable/nodes/5.bgdUYUlr.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.bgdUYUlr.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.D0P837Li.js +2 -0
- package/build/client/_app/immutable/nodes/6.D0P837Li.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.D0P837Li.js.gz +0 -0
- package/build/client/_app/immutable/nodes/7.C4seSCJq.js +14 -0
- package/build/client/_app/immutable/nodes/7.C4seSCJq.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.C4seSCJq.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.BANf4x1v.js +1 -0
- package/build/client/_app/immutable/nodes/8.BANf4x1v.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.BANf4x1v.js.gz +0 -0
- package/build/client/_app/immutable/nodes/9.DCgNAMuD.js +128 -0
- package/build/client/_app/immutable/nodes/9.DCgNAMuD.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.DCgNAMuD.js.gz +0 -0
- package/build/client/_app/version.json +1 -1
- package/build/client/_app/version.json.br +1 -1
- package/build/client/_app/version.json.gz +0 -0
- package/build/server/chunks/{0-3ZKFLVwz.js → 0-D9FIO-Bk.js} +7 -6
- package/build/server/chunks/{0-3ZKFLVwz.js.map → 0-D9FIO-Bk.js.map} +1 -1
- package/build/server/chunks/1-ItPJxTHP.js +9 -0
- package/build/server/chunks/{1-BscBEom6.js.map → 1-ItPJxTHP.js.map} +1 -1
- package/build/server/chunks/{10-CYYH66rb.js → 10-B4fDiATl.js} +3 -3
- package/build/server/chunks/{10-CYYH66rb.js.map → 10-B4fDiATl.js.map} +1 -1
- package/build/server/chunks/11-CZj9K6K7.js +9 -0
- package/build/server/chunks/{11-DSzQavEB.js.map → 11-CZj9K6K7.js.map} +1 -1
- package/build/server/chunks/{2-CQSBaE_w.js → 2-KPMSLSlE.js} +2 -2
- package/build/server/chunks/{2-CQSBaE_w.js.map → 2-KPMSLSlE.js.map} +1 -1
- package/build/server/chunks/{3-t-iZh03o.js → 3-DpC38K23.js} +11 -11
- package/build/server/chunks/3-DpC38K23.js.map +1 -0
- package/build/server/chunks/4-DrJ64j1x.js +9 -0
- package/build/server/chunks/4-DrJ64j1x.js.map +1 -0
- package/build/server/chunks/{5-DLMaS6eR.js → 5-BxzwX0rY.js} +3 -3
- package/build/server/chunks/{5-DLMaS6eR.js.map → 5-BxzwX0rY.js.map} +1 -1
- package/build/server/chunks/6-DxXeT1e3.js +9 -0
- package/build/server/chunks/6-DxXeT1e3.js.map +1 -0
- package/build/server/chunks/7-CuHe_mFY.js +9 -0
- package/build/server/chunks/{7-BLHhygXi.js.map → 7-CuHe_mFY.js.map} +1 -1
- package/build/server/chunks/{8-DiHmrGkL.js → 8-DFD8sNRI.js} +5 -7
- package/build/server/chunks/8-DFD8sNRI.js.map +1 -0
- package/build/server/chunks/9-CVIPxN5B.js +9 -0
- package/build/server/chunks/9-CVIPxN5B.js.map +1 -0
- package/build/server/chunks/{IconActivity-DrgUhxxi.js → ChatMessage-fWnwEF6b.js} +3 -57
- package/build/server/chunks/ChatMessage-fWnwEF6b.js.map +1 -0
- package/build/server/chunks/{ChatNavbar-Takv7dQM.js → ChatNavbar-CJYo_Hbc.js} +9 -10
- package/build/server/chunks/ChatNavbar-CJYo_Hbc.js.map +1 -0
- package/build/server/chunks/IconActivity-BU1QGLAZ.js +58 -0
- package/build/server/chunks/IconActivity-BU1QGLAZ.js.map +1 -0
- package/build/server/chunks/{IconServer-C5rdlJAr.js → IconServer-DkywyVFu.js} +5 -5
- package/build/server/chunks/{IconServer-C5rdlJAr.js.map → IconServer-DkywyVFu.js.map} +1 -1
- package/build/server/chunks/{IconSoundOn-DHtvjphK.js → IconSoundOn-DoAiK-qp.js} +23 -21
- package/build/server/chunks/IconSoundOn-DoAiK-qp.js.map +1 -0
- package/build/server/chunks/IconStop-DKVpXPKq.js +1648 -0
- package/build/server/chunks/IconStop-DKVpXPKq.js.map +1 -0
- package/build/server/chunks/QuestionCard-BCfoxMiS.js +128 -0
- package/build/server/chunks/QuestionCard-BCfoxMiS.js.map +1 -0
- package/build/server/chunks/{_layout.svelte-BLxvGwKC.js → _layout.svelte-DArOWGd3.js} +3 -3
- package/build/server/chunks/{_layout.svelte-BLxvGwKC.js.map → _layout.svelte-DArOWGd3.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-BOwGlCzD.js → _page.svelte-B2cX_j9w.js} +3 -3
- package/build/server/chunks/{_page.svelte-BOwGlCzD.js.map → _page.svelte-B2cX_j9w.js.map} +1 -1
- package/build/server/chunks/{_page.svelte--MC2pNDj.js → _page.svelte-BcpGl-vl.js} +16 -20
- package/build/server/chunks/_page.svelte-BcpGl-vl.js.map +1 -0
- package/build/server/chunks/_page.svelte-CGEtuNmS.js +192 -0
- package/build/server/chunks/_page.svelte-CGEtuNmS.js.map +1 -0
- package/build/server/chunks/{_page.svelte-f3XZxZcO.js → _page.svelte-Dpf94Jor.js} +3 -3
- package/build/server/chunks/{_page.svelte-f3XZxZcO.js.map → _page.svelte-Dpf94Jor.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-BT81Bwrh.js → _page.svelte-FOm-OMQe.js} +6 -6
- package/build/server/chunks/_page.svelte-FOm-OMQe.js.map +1 -0
- package/build/server/chunks/{_page.svelte-BdH2kpT0.js → _page.svelte-S90xJHRa.js} +96 -203
- package/build/server/chunks/_page.svelte-S90xJHRa.js.map +1 -0
- package/build/server/chunks/{_page.svelte-BnV94Ogu.js → _page.svelte-qxgG6hsh.js} +20 -45
- package/build/server/chunks/_page.svelte-qxgG6hsh.js.map +1 -0
- package/build/server/chunks/{_server.ts-B12WIhKW.js → _server.ts--F22byeV.js} +28 -24
- package/build/server/chunks/_server.ts--F22byeV.js.map +1 -0
- package/build/server/chunks/{_server.ts-D_NDxdhC.js → _server.ts-08JCSzPu.js} +61 -59
- package/build/server/chunks/_server.ts-08JCSzPu.js.map +1 -0
- package/build/server/chunks/{_server.ts-D6UMAxY5.js → _server.ts-3bBG0DBN.js} +8 -7
- package/build/server/chunks/{_server.ts-D6UMAxY5.js.map → _server.ts-3bBG0DBN.js.map} +1 -1
- package/build/server/chunks/{_server.ts-COHW_bIw.js → _server.ts-7pcCO8Pf.js} +9 -8
- package/build/server/chunks/{_server.ts-COHW_bIw.js.map → _server.ts-7pcCO8Pf.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Z6bcCFE1.js → _server.ts-AC1zqetQ.js} +4 -3
- package/build/server/chunks/{_server.ts-Z6bcCFE1.js.map → _server.ts-AC1zqetQ.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CN26zawm.js → _server.ts-B-uAgtQC.js} +8 -7
- package/build/server/chunks/{_server.ts-CN26zawm.js.map → _server.ts-B-uAgtQC.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Dg2Gkcbx.js → _server.ts-B0MK-ynu.js} +11 -16
- package/build/server/chunks/_server.ts-B0MK-ynu.js.map +1 -0
- package/build/server/chunks/{_server.ts-DIB4OM3y.js → _server.ts-B1vQkdVA.js} +10 -9
- package/build/server/chunks/{_server.ts-DIB4OM3y.js.map → _server.ts-B1vQkdVA.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DC1tK0yE.js → _server.ts-B3iKXyUo.js} +8 -7
- package/build/server/chunks/{_server.ts-DC1tK0yE.js.map → _server.ts-B3iKXyUo.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DsfNtE_I.js → _server.ts-B7319d6O.js} +8 -7
- package/build/server/chunks/{_server.ts-DsfNtE_I.js.map → _server.ts-B7319d6O.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DNzhPgX5.js → _server.ts-BCpQ8Qdr.js} +8 -7
- package/build/server/chunks/{_server.ts-DNzhPgX5.js.map → _server.ts-BCpQ8Qdr.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DojcmGfa.js → _server.ts-BF5JzSrs.js} +8 -7
- package/build/server/chunks/{_server.ts-DojcmGfa.js.map → _server.ts-BF5JzSrs.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Ddf5c75T.js → _server.ts-BGTw6w-C.js} +11 -10
- package/build/server/chunks/_server.ts-BGTw6w-C.js.map +1 -0
- package/build/server/chunks/{_server.ts-CoA6nB9c.js → _server.ts-BH8Y1mmb.js} +6 -5
- package/build/server/chunks/{_server.ts-CoA6nB9c.js.map → _server.ts-BH8Y1mmb.js.map} +1 -1
- package/build/server/chunks/{_server.ts-McJwsQRP.js → _server.ts-BHaFrgm9.js} +9 -8
- package/build/server/chunks/{_server.ts-McJwsQRP.js.map → _server.ts-BHaFrgm9.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CLyMgmaf.js → _server.ts-BKnCIXe5.js} +8 -7
- package/build/server/chunks/{_server.ts-CLyMgmaf.js.map → _server.ts-BKnCIXe5.js.map} +1 -1
- package/build/server/chunks/{_server.ts-KVrYcUOG.js → _server.ts-BOn4TCRw.js} +9 -8
- package/build/server/chunks/{_server.ts-KVrYcUOG.js.map → _server.ts-BOn4TCRw.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Bba4knHI.js → _server.ts-BS4UTF4H.js} +8 -7
- package/build/server/chunks/{_server.ts-Bba4knHI.js.map → _server.ts-BS4UTF4H.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Drhyf5o4.js → _server.ts-BWMJRzwx.js} +10 -9
- package/build/server/chunks/_server.ts-BWMJRzwx.js.map +1 -0
- package/build/server/chunks/{_server.ts-BfTFlPSX.js → _server.ts-B_7lGoo_.js} +8 -7
- package/build/server/chunks/{_server.ts-BfTFlPSX.js.map → _server.ts-B_7lGoo_.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DrWTucF0.js → _server.ts-BaEUZaLH.js} +6 -5
- package/build/server/chunks/{_server.ts-DrWTucF0.js.map → _server.ts-BaEUZaLH.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DswOp5MZ.js → _server.ts-BgL3_hTS.js} +9 -8
- package/build/server/chunks/{_server.ts-DswOp5MZ.js.map → _server.ts-BgL3_hTS.js.map} +1 -1
- package/build/server/chunks/{_server.ts-qkGGHj13.js → _server.ts-BgOS_sDK.js} +9 -8
- package/build/server/chunks/{_server.ts-qkGGHj13.js.map → _server.ts-BgOS_sDK.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CYEiMdP-.js → _server.ts-BhA9ywuA.js} +8 -7
- package/build/server/chunks/{_server.ts-CYEiMdP-.js.map → _server.ts-BhA9ywuA.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DPtqK0c2.js → _server.ts-BtZ9-ZYu.js} +4 -3
- package/build/server/chunks/{_server.ts-DPtqK0c2.js.map → _server.ts-BtZ9-ZYu.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BjjNc0OV.js → _server.ts-C4tBc7fm.js} +11 -10
- package/build/server/chunks/{_server.ts-BjjNc0OV.js.map → _server.ts-C4tBc7fm.js.map} +1 -1
- package/build/server/chunks/{_server.ts-WfJI8r0e.js → _server.ts-C5T_Zuoy.js} +16 -15
- package/build/server/chunks/_server.ts-C5T_Zuoy.js.map +1 -0
- package/build/server/chunks/{_server.ts-BuByt6I7.js → _server.ts-CCTZbI7L.js} +9 -8
- package/build/server/chunks/{_server.ts-BuByt6I7.js.map → _server.ts-CCTZbI7L.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DZ3Yyeac.js → _server.ts-CEUFtmpE.js} +26 -18
- package/build/server/chunks/_server.ts-CEUFtmpE.js.map +1 -0
- package/build/server/chunks/{_server.ts-CZluUZ23.js → _server.ts-CFKGqT4L.js} +8 -7
- package/build/server/chunks/{_server.ts-CZluUZ23.js.map → _server.ts-CFKGqT4L.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CR1fXUx_.js → _server.ts-CLMsuxkK.js} +8 -7
- package/build/server/chunks/{_server.ts-CR1fXUx_.js.map → _server.ts-CLMsuxkK.js.map} +1 -1
- package/build/server/chunks/{_server.ts-sD2USOMT.js → _server.ts-CMfz71Do.js} +8 -7
- package/build/server/chunks/{_server.ts-sD2USOMT.js.map → _server.ts-CMfz71Do.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CQ9bUgsb.js → _server.ts-CQeqwCqj.js} +8 -7
- package/build/server/chunks/{_server.ts-CQ9bUgsb.js.map → _server.ts-CQeqwCqj.js.map} +1 -1
- package/build/server/chunks/{_server.ts-rBPifh0g.js → _server.ts-CSBd_6yC.js} +9 -8
- package/build/server/chunks/{_server.ts-rBPifh0g.js.map → _server.ts-CSBd_6yC.js.map} +1 -1
- package/build/server/chunks/_server.ts-CSYdjKAH.js +73 -0
- package/build/server/chunks/_server.ts-CSYdjKAH.js.map +1 -0
- package/build/server/chunks/{_server.ts-DfMcCjcV.js → _server.ts-CY-GNKZT.js} +8 -7
- package/build/server/chunks/{_server.ts-DfMcCjcV.js.map → _server.ts-CY-GNKZT.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CvL5DtEE.js → _server.ts-CYu5XSM8.js} +8 -7
- package/build/server/chunks/{_server.ts-CvL5DtEE.js.map → _server.ts-CYu5XSM8.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B8RJmRP7.js → _server.ts-CjeMP5Vf.js} +9 -8
- package/build/server/chunks/_server.ts-CjeMP5Vf.js.map +1 -0
- package/build/server/chunks/{_server.ts-c6ytwkWX.js → _server.ts-Cjo35hc1.js} +8 -7
- package/build/server/chunks/{_server.ts-c6ytwkWX.js.map → _server.ts-Cjo35hc1.js.map} +1 -1
- package/build/server/chunks/{_server.ts-C4cnIzbb.js → _server.ts-CkVeEW46.js} +8 -7
- package/build/server/chunks/{_server.ts-C4cnIzbb.js.map → _server.ts-CkVeEW46.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CkJ2MAlY.js → _server.ts-Cph8nHvr.js} +8 -7
- package/build/server/chunks/{_server.ts-CkJ2MAlY.js.map → _server.ts-Cph8nHvr.js.map} +1 -1
- package/build/server/chunks/_server.ts-CpyfojV9.js +83 -0
- package/build/server/chunks/_server.ts-CpyfojV9.js.map +1 -0
- package/build/server/chunks/{_server.ts-CYhI4sCU.js → _server.ts-CtkA_Ld0.js} +20 -14
- package/build/server/chunks/_server.ts-CtkA_Ld0.js.map +1 -0
- package/build/server/chunks/{_server.ts-DKtsPlqI.js → _server.ts-Cu48eVwM.js} +4 -3
- package/build/server/chunks/{_server.ts-DKtsPlqI.js.map → _server.ts-Cu48eVwM.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BWdKIMmK.js → _server.ts-CvjVUcFR.js} +8 -7
- package/build/server/chunks/_server.ts-CvjVUcFR.js.map +1 -0
- package/build/server/chunks/{_server.ts-Cifj-9A3.js → _server.ts-CxH-7UEc.js} +8 -7
- package/build/server/chunks/{_server.ts-Cifj-9A3.js.map → _server.ts-CxH-7UEc.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CDC5Za0f.js → _server.ts-D0XsGdhx.js} +8 -7
- package/build/server/chunks/{_server.ts-CDC5Za0f.js.map → _server.ts-D0XsGdhx.js.map} +1 -1
- package/build/server/chunks/_server.ts-D6-C5ctd.js +110 -0
- package/build/server/chunks/_server.ts-D6-C5ctd.js.map +1 -0
- package/build/server/chunks/{_server.ts-HoP6PRwU.js → _server.ts-DQI9hYcE.js} +8 -7
- package/build/server/chunks/{_server.ts-HoP6PRwU.js.map → _server.ts-DQI9hYcE.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B01LeWfv.js → _server.ts-DQTJ_bFp.js} +9 -8
- package/build/server/chunks/{_server.ts-B01LeWfv.js.map → _server.ts-DQTJ_bFp.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B6IuU4lX.js → _server.ts-DR0kmbl9.js} +9 -8
- package/build/server/chunks/_server.ts-DR0kmbl9.js.map +1 -0
- package/build/server/chunks/{_server.ts-Bx5L70N3.js → _server.ts-DR_9WXW4.js} +10 -9
- package/build/server/chunks/{_server.ts-Bx5L70N3.js.map → _server.ts-DR_9WXW4.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Dv1LAL-L.js → _server.ts-DXwG4w1_.js} +6 -6
- package/build/server/chunks/_server.ts-DXwG4w1_.js.map +1 -0
- package/build/server/chunks/{_server.ts-CnmdgRQ5.js → _server.ts-DYLc6Os9.js} +8 -7
- package/build/server/chunks/{_server.ts-CnmdgRQ5.js.map → _server.ts-DYLc6Os9.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BTQPdIRj.js → _server.ts-DYg52Wyj.js} +8 -7
- package/build/server/chunks/{_server.ts-BTQPdIRj.js.map → _server.ts-DYg52Wyj.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BjfWddPf.js → _server.ts-Dc1s3sLN.js} +10 -9
- package/build/server/chunks/_server.ts-Dc1s3sLN.js.map +1 -0
- package/build/server/chunks/{_server.ts-ClGBdG69.js → _server.ts-DcpOpD6s.js} +8 -7
- package/build/server/chunks/{_server.ts-ClGBdG69.js.map → _server.ts-DcpOpD6s.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DdL9GP2B.js → _server.ts-DeuURP8u.js} +8 -7
- package/build/server/chunks/{_server.ts-DdL9GP2B.js.map → _server.ts-DeuURP8u.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B_uD0GmU.js → _server.ts-DhcBS9KQ.js} +8 -7
- package/build/server/chunks/{_server.ts-B_uD0GmU.js.map → _server.ts-DhcBS9KQ.js.map} +1 -1
- package/build/server/chunks/{_server.ts-D7hUSvgG.js → _server.ts-DlKT-RbM.js} +11 -16
- package/build/server/chunks/_server.ts-DlKT-RbM.js.map +1 -0
- package/build/server/chunks/{_server.ts-z7K-ZCVq.js → _server.ts-DuO_GU5A.js} +8 -7
- package/build/server/chunks/{_server.ts-z7K-ZCVq.js.map → _server.ts-DuO_GU5A.js.map} +1 -1
- package/build/server/chunks/{_server.ts-ByTth5Q4.js → _server.ts-DvUVX3X0.js} +9 -8
- package/build/server/chunks/{_server.ts-ByTth5Q4.js.map → _server.ts-DvUVX3X0.js.map} +1 -1
- package/build/server/chunks/{_server.ts-eYI_yBAq.js → _server.ts-DvfnkNfI.js} +9 -8
- package/build/server/chunks/{_server.ts-eYI_yBAq.js.map → _server.ts-DvfnkNfI.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CQGc6Rzk.js → _server.ts-DzV6EO26.js} +8 -7
- package/build/server/chunks/{_server.ts-CQGc6Rzk.js.map → _server.ts-DzV6EO26.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CV7PsNSs.js → _server.ts-IEM_8o6U.js} +17 -12
- package/build/server/chunks/_server.ts-IEM_8o6U.js.map +1 -0
- package/build/server/chunks/{_server.ts-BnCHdcon.js → _server.ts-N_mH0t0f.js} +13 -13
- package/build/server/chunks/_server.ts-N_mH0t0f.js.map +1 -0
- package/build/server/chunks/{_server.ts-C7R2xQ_O.js → _server.ts-Y5pBzFz4.js} +8 -7
- package/build/server/chunks/{_server.ts-C7R2xQ_O.js.map → _server.ts-Y5pBzFz4.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BG1nkyV5.js → _server.ts-ZKEBn-qW.js} +10 -9
- package/build/server/chunks/{_server.ts-BG1nkyV5.js.map → _server.ts-ZKEBn-qW.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CqLbFV6m.js → _server.ts-fenM6Iln.js} +26 -22
- package/build/server/chunks/_server.ts-fenM6Iln.js.map +1 -0
- package/build/server/chunks/{_server.ts-BbxUaG2z.js → _server.ts-i9TaUbWr.js} +30 -10
- package/build/server/chunks/_server.ts-i9TaUbWr.js.map +1 -0
- package/build/server/chunks/{_server.ts-A_jvsf54.js → _server.ts-iXjPBf7J.js} +16 -15
- package/build/server/chunks/_server.ts-iXjPBf7J.js.map +1 -0
- package/build/server/chunks/{_server.ts-BvPCnwm4.js → _server.ts-jqktLs6L.js} +8 -7
- package/build/server/chunks/{_server.ts-BvPCnwm4.js.map → _server.ts-jqktLs6L.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Cg9mKyvd.js → _server.ts-oSGbQw4A.js} +8 -7
- package/build/server/chunks/_server.ts-oSGbQw4A.js.map +1 -0
- package/build/server/chunks/{_server.ts-DrdVm_2l.js → _server.ts-pf6WrGLo.js} +9 -8
- package/build/server/chunks/{_server.ts-DrdVm_2l.js.map → _server.ts-pf6WrGLo.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BAdTYKi0.js → _server.ts-v3cF2xWi.js} +8 -7
- package/build/server/chunks/{_server.ts-BAdTYKi0.js.map → _server.ts-v3cF2xWi.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B0oC8HQF.js → _server.ts-vJBq3idp.js} +4 -3
- package/build/server/chunks/{_server.ts-B0oC8HQF.js.map → _server.ts-vJBq3idp.js.map} +1 -1
- package/build/server/chunks/{_server.ts-oDtZo8YM.js → _server.ts-vlaPk3to.js} +8 -7
- package/build/server/chunks/{_server.ts-oDtZo8YM.js.map → _server.ts-vlaPk3to.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CGX-Vd-3.js → _server.ts-xQhNjF_X.js} +8 -7
- package/build/server/chunks/{_server.ts-CGX-Vd-3.js.map → _server.ts-xQhNjF_X.js.map} +1 -1
- package/build/server/chunks/_server.ts-yZ8CGJNE.js +82 -0
- package/build/server/chunks/_server.ts-yZ8CGJNE.js.map +1 -0
- package/build/server/chunks/{_server.ts-DMxAUnDp.js → _server.ts-z5C3PAAB.js} +4 -3
- package/build/server/chunks/{_server.ts-DMxAUnDp.js.map → _server.ts-z5C3PAAB.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CHBfflb0.js → _server.ts-zt3yI2wU.js} +8 -7
- package/build/server/chunks/{_server.ts-CHBfflb0.js.map → _server.ts-zt3yI2wU.js.map} +1 -1
- package/build/server/chunks/{addon-helpers-CkCisYhs.js → addon-helpers-B7bkHg-K.js} +18 -5
- package/build/server/chunks/addon-helpers-B7bkHg-K.js.map +1 -0
- package/build/server/chunks/admin-update-lock-B-z4UE8R.js +24 -0
- package/build/server/chunks/admin-update-lock-B-z4UE8R.js.map +1 -0
- package/build/server/chunks/{akm-Dv9-jfkS.js → akm-C4NCZfJB.js} +3 -3
- package/build/server/chunks/{akm-Dv9-jfkS.js.map → akm-C4NCZfJB.js.map} +1 -1
- package/build/server/chunks/{catalog-CilTg0Ck.js → catalog-Czlhb_2V.js} +5 -5
- package/build/server/chunks/{catalog-CilTg0Ck.js.map → catalog-Czlhb_2V.js.map} +1 -1
- package/build/server/chunks/{client-wd3mkq4X.js → client-HEAniq5u.js} +2 -2
- package/build/server/chunks/{client-wd3mkq4X.js.map → client-HEAniq5u.js.map} +1 -1
- package/build/server/chunks/{compose-args2-Ccr5RMHS.js → compose-args2-B1cYvF5r.js} +4 -3
- package/build/server/chunks/compose-args2-B1cYvF5r.js.map +1 -0
- package/build/server/chunks/{config-C_XJx8-D.js → config-C15S-ENd.js} +2 -2
- package/build/server/chunks/{config-C_XJx8-D.js.map → config-C15S-ENd.js.map} +1 -1
- package/build/server/chunks/{constants-1vPYIIwP.js → constants-C8L-P-CF.js} +2 -2
- package/build/server/chunks/{constants-1vPYIIwP.js.map → constants-C8L-P-CF.js.map} +1 -1
- package/build/server/chunks/dist-DtzrgNJ1.js +6617 -0
- package/build/server/chunks/dist-DtzrgNJ1.js.map +1 -0
- package/build/server/chunks/{docker2-BL8hjShD.js → docker2-CF7qyd1U.js} +4 -3
- package/build/server/chunks/docker2-CF7qyd1U.js.map +1 -0
- package/build/server/chunks/{docker3-TVLvF3ly.js → docker3-BsPagEza.js} +2 -2
- package/build/server/chunks/{docker3-TVLvF3ly.js.map → docker3-BsPagEza.js.map} +1 -1
- package/build/server/chunks/environment-BYp8JQYM.js.map +1 -1
- package/build/server/chunks/{error.svelte-BI8mJm7r.js → error.svelte-C-lukbaB.js} +4 -4
- package/build/server/chunks/{error.svelte-BI8mJm7r.js.map → error.svelte-C-lukbaB.js.map} +1 -1
- package/build/server/chunks/features-DltizIi4.js +79 -0
- package/build/server/chunks/features-DltizIi4.js.map +1 -0
- package/build/server/chunks/{helpers-9U7R7yqL.js → helpers-DWpoPvHz.js} +17 -22
- package/build/server/chunks/helpers-DWpoPvHz.js.map +1 -0
- package/build/server/chunks/{hooks.server-Bog01Hsc.js → hooks.server-BcdEyWVU.js} +13 -12
- package/build/server/chunks/hooks.server-BcdEyWVU.js.map +1 -0
- package/build/server/chunks/{http-D2Aul-FP.js → http-7E5W3vGt.js} +3 -3
- package/build/server/chunks/http-7E5W3vGt.js.map +1 -0
- package/build/server/chunks/{internal-DbH28JEx.js → internal-BNSUwl-r.js} +10 -8
- package/build/server/chunks/{internal-DbH28JEx.js.map → internal-BNSUwl-r.js.map} +1 -1
- package/build/server/chunks/{landing-CMnmbyhs.js → landing-DY53l_CN.js} +10 -12
- package/build/server/chunks/landing-DY53l_CN.js.map +1 -0
- package/build/server/chunks/{network-preset-CJ1RRnki.js → network-preset-BvVAoagy.js} +14 -13
- package/build/server/chunks/network-preset-BvVAoagy.js.map +1 -0
- package/build/server/chunks/opencode-target-DYD2zQ4l.js +203 -0
- package/build/server/chunks/opencode-target-DYD2zQ4l.js.map +1 -0
- package/build/server/chunks/{paths-CADLTBzK.js → paths-BVdkvR9U.js} +2 -2
- package/build/server/chunks/{paths-CADLTBzK.js.map → paths-BVdkvR9U.js.map} +1 -1
- package/build/server/chunks/{runtime-context.svelte-C5zNEC6u.js → runtime-context.svelte-CRT-b6Ae.js} +8 -11
- package/build/server/chunks/runtime-context.svelte-CRT-b6Ae.js.map +1 -0
- package/build/server/chunks/{session-cookie-9GKSbczI.js → session-cookie-D2_H1UEW.js} +2 -2
- package/build/server/chunks/{session-cookie-9GKSbczI.js.map → session-cookie-D2_H1UEW.js.map} +1 -1
- package/build/server/chunks/{setup-deploy-32URXYdb.js → setup-deploy-C1h733rH.js} +2 -2
- package/build/server/chunks/{setup-deploy-32URXYdb.js.map → setup-deploy-C1h733rH.js.map} +1 -1
- package/build/server/chunks/{src-AHSKeKr0.js → src-B2-r_9oB.js} +531 -7088
- package/build/server/chunks/src-B2-r_9oB.js.map +1 -0
- package/build/server/chunks/{state-CzXOEt0t.js → state-Dkjz2T4C.js} +2 -2
- package/build/server/chunks/{state-CzXOEt0t.js.map → state-Dkjz2T4C.js.map} +1 -1
- package/build/server/chunks/{state2-Dk2nfhFB.js → state2-CS9rhust.js} +17 -2
- package/build/server/chunks/{state2-Dk2nfhFB.js.map → state2-CS9rhust.js.map} +1 -1
- package/build/server/chunks/voice-state.svelte-CSmyLPRH.js +561 -0
- package/build/server/chunks/voice-state.svelte-CSmyLPRH.js.map +1 -0
- package/build/server/index.js +1 -1
- package/build/server/manifest.js +94 -129
- package/build/server/manifest.js.map +1 -1
- package/package.json +3 -3
- package/build/client/_app/immutable/assets/4.BXlLAfIE.css +0 -1
- package/build/client/_app/immutable/assets/4.BXlLAfIE.css.br +0 -0
- package/build/client/_app/immutable/assets/4.BXlLAfIE.css.gz +0 -0
- package/build/client/_app/immutable/assets/6.D_kTgQ70.css +0 -1
- package/build/client/_app/immutable/assets/6.D_kTgQ70.css.br +0 -0
- package/build/client/_app/immutable/assets/6.D_kTgQ70.css.gz +0 -0
- package/build/client/_app/immutable/assets/7.CNzyzDDZ.css +0 -1
- package/build/client/_app/immutable/assets/7.CNzyzDDZ.css.br +0 -0
- package/build/client/_app/immutable/assets/7.CNzyzDDZ.css.gz +0 -0
- package/build/client/_app/immutable/assets/9.DeeTO7Ju.css +0 -1
- package/build/client/_app/immutable/assets/9.DeeTO7Ju.css.br +0 -0
- package/build/client/_app/immutable/assets/9.DeeTO7Ju.css.gz +0 -0
- package/build/client/_app/immutable/chunks/B0yXlM3K.js +0 -1
- package/build/client/_app/immutable/chunks/B0yXlM3K.js.br +0 -0
- package/build/client/_app/immutable/chunks/B0yXlM3K.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BDK50g8a.js.br +0 -0
- package/build/client/_app/immutable/chunks/BDK50g8a.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BlYj4BBX.js +0 -1
- package/build/client/_app/immutable/chunks/BlYj4BBX.js.br +0 -0
- package/build/client/_app/immutable/chunks/BlYj4BBX.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Bz3r0btw.js +0 -3
- package/build/client/_app/immutable/chunks/Bz3r0btw.js.br +0 -0
- package/build/client/_app/immutable/chunks/Bz3r0btw.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BzIvC31O.js +0 -3
- package/build/client/_app/immutable/chunks/BzIvC31O.js.br +0 -0
- package/build/client/_app/immutable/chunks/BzIvC31O.js.gz +0 -0
- package/build/client/_app/immutable/chunks/C718MJXm.js +0 -5
- package/build/client/_app/immutable/chunks/C718MJXm.js.br +0 -0
- package/build/client/_app/immutable/chunks/C718MJXm.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CBM1fLGu.js +0 -1
- package/build/client/_app/immutable/chunks/CBM1fLGu.js.br +0 -0
- package/build/client/_app/immutable/chunks/CBM1fLGu.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CUa5ff3d.js.br +0 -0
- package/build/client/_app/immutable/chunks/CUa5ff3d.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D5FtEngX.js.br +0 -0
- package/build/client/_app/immutable/chunks/D5FtEngX.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DBHgGGCD.js +0 -1
- package/build/client/_app/immutable/chunks/DBHgGGCD.js.br +0 -0
- package/build/client/_app/immutable/chunks/DBHgGGCD.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DPYXdJcD.js +0 -1
- package/build/client/_app/immutable/chunks/DPYXdJcD.js.br +0 -2
- package/build/client/_app/immutable/chunks/DPYXdJcD.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DWtm_qwJ.js +0 -3
- package/build/client/_app/immutable/chunks/DWtm_qwJ.js.br +0 -0
- package/build/client/_app/immutable/chunks/DWtm_qwJ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DfZbBavE.js +0 -1
- package/build/client/_app/immutable/chunks/DfZbBavE.js.br +0 -1
- package/build/client/_app/immutable/chunks/DfZbBavE.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DmFbAjwW.js.br +0 -3
- package/build/client/_app/immutable/chunks/DmFbAjwW.js.gz +0 -0
- package/build/client/_app/immutable/chunks/NR-JVJz-.js.br +0 -0
- package/build/client/_app/immutable/chunks/NR-JVJz-.js.gz +0 -0
- package/build/client/_app/immutable/chunks/R6GPcDBF.js +0 -14
- package/build/client/_app/immutable/chunks/R6GPcDBF.js.br +0 -0
- package/build/client/_app/immutable/chunks/R6GPcDBF.js.gz +0 -0
- package/build/client/_app/immutable/chunks/SXdvPq3_.js.br +0 -0
- package/build/client/_app/immutable/chunks/SXdvPq3_.js.gz +0 -0
- package/build/client/_app/immutable/chunks/c0lkYAgh.js +0 -5
- package/build/client/_app/immutable/chunks/c0lkYAgh.js.br +0 -0
- package/build/client/_app/immutable/chunks/c0lkYAgh.js.gz +0 -0
- package/build/client/_app/immutable/chunks/hSjQday7.js.br +0 -0
- package/build/client/_app/immutable/chunks/hSjQday7.js.gz +0 -0
- package/build/client/_app/immutable/chunks/mG6HnNbi.js.br +0 -0
- package/build/client/_app/immutable/chunks/mG6HnNbi.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.FbKd4aR6.js +0 -2
- package/build/client/_app/immutable/entry/app.FbKd4aR6.js.br +0 -0
- package/build/client/_app/immutable/entry/app.FbKd4aR6.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.VEjfH6IP.js +0 -1
- package/build/client/_app/immutable/entry/start.VEjfH6IP.js.br +0 -1
- package/build/client/_app/immutable/entry/start.VEjfH6IP.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.mcDF2Cfv.js +0 -1
- package/build/client/_app/immutable/nodes/0.mcDF2Cfv.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.mcDF2Cfv.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.B_hGEgef.js +0 -1
- package/build/client/_app/immutable/nodes/1.B_hGEgef.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.B_hGEgef.js.gz +0 -0
- package/build/client/_app/immutable/nodes/10.B8xmblvj.js +0 -1
- package/build/client/_app/immutable/nodes/10.B8xmblvj.js.br +0 -0
- package/build/client/_app/immutable/nodes/10.B8xmblvj.js.gz +0 -0
- package/build/client/_app/immutable/nodes/11.Ti2X5F-7.js.br +0 -0
- package/build/client/_app/immutable/nodes/11.Ti2X5F-7.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.C-PzaHZx.js +0 -1
- package/build/client/_app/immutable/nodes/2.C-PzaHZx.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.C-PzaHZx.js.gz +0 -0
- package/build/client/_app/immutable/nodes/3.26Z_fr6N.js +0 -1
- package/build/client/_app/immutable/nodes/3.26Z_fr6N.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.26Z_fr6N.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.X5um5v0F.js +0 -1
- package/build/client/_app/immutable/nodes/4.X5um5v0F.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.X5um5v0F.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.CNMS0qgk.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.CNMS0qgk.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.PLWojxHU.js +0 -2
- package/build/client/_app/immutable/nodes/6.PLWojxHU.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.PLWojxHU.js.gz +0 -0
- package/build/client/_app/immutable/nodes/7.Bba4nkVZ.js +0 -14
- package/build/client/_app/immutable/nodes/7.Bba4nkVZ.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.Bba4nkVZ.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.NHp_bSVx.js +0 -1
- package/build/client/_app/immutable/nodes/8.NHp_bSVx.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.NHp_bSVx.js.gz +0 -0
- package/build/client/_app/immutable/nodes/9.nlW01gWY.js +0 -126
- package/build/client/_app/immutable/nodes/9.nlW01gWY.js.br +0 -0
- package/build/client/_app/immutable/nodes/9.nlW01gWY.js.gz +0 -0
- package/build/server/chunks/1-BscBEom6.js +0 -9
- package/build/server/chunks/11-DSzQavEB.js +0 -9
- package/build/server/chunks/3-t-iZh03o.js.map +0 -1
- package/build/server/chunks/4-CcOQz4eZ.js +0 -9
- package/build/server/chunks/4-CcOQz4eZ.js.map +0 -1
- package/build/server/chunks/6-BL469LUB.js +0 -9
- package/build/server/chunks/6-BL469LUB.js.map +0 -1
- package/build/server/chunks/7-BLHhygXi.js +0 -9
- package/build/server/chunks/8-DiHmrGkL.js.map +0 -1
- package/build/server/chunks/9-D4ocBCG0.js +0 -42
- package/build/server/chunks/9-D4ocBCG0.js.map +0 -1
- package/build/server/chunks/ChatNavbar-Takv7dQM.js.map +0 -1
- package/build/server/chunks/IconActivity-DrgUhxxi.js.map +0 -1
- package/build/server/chunks/IconSoundOn-DHtvjphK.js.map +0 -1
- package/build/server/chunks/IconStop-C89_dmt4.js +0 -956
- package/build/server/chunks/IconStop-C89_dmt4.js.map +0 -1
- package/build/server/chunks/_page.svelte--MC2pNDj.js.map +0 -1
- package/build/server/chunks/_page.svelte-BT81Bwrh.js.map +0 -1
- package/build/server/chunks/_page.svelte-BdH2kpT0.js.map +0 -1
- package/build/server/chunks/_page.svelte-BnV94Ogu.js.map +0 -1
- package/build/server/chunks/_page.svelte-CkYUucmY.js +0 -92
- package/build/server/chunks/_page.svelte-CkYUucmY.js.map +0 -1
- package/build/server/chunks/_server.ts-3RgOKIrg.js +0 -112
- package/build/server/chunks/_server.ts-3RgOKIrg.js.map +0 -1
- package/build/server/chunks/_server.ts-5GcuvVnk.js +0 -48
- package/build/server/chunks/_server.ts-5GcuvVnk.js.map +0 -1
- package/build/server/chunks/_server.ts-A_jvsf54.js.map +0 -1
- package/build/server/chunks/_server.ts-B12WIhKW.js.map +0 -1
- package/build/server/chunks/_server.ts-B6IuU4lX.js.map +0 -1
- package/build/server/chunks/_server.ts-B8RJmRP7.js.map +0 -1
- package/build/server/chunks/_server.ts-BMkzMnF3.js +0 -94
- package/build/server/chunks/_server.ts-BMkzMnF3.js.map +0 -1
- package/build/server/chunks/_server.ts-BWdKIMmK.js.map +0 -1
- package/build/server/chunks/_server.ts-BbvTyvkT.js +0 -69
- package/build/server/chunks/_server.ts-BbvTyvkT.js.map +0 -1
- package/build/server/chunks/_server.ts-BbxUaG2z.js.map +0 -1
- package/build/server/chunks/_server.ts-Bd7KmU8k.js +0 -141
- package/build/server/chunks/_server.ts-Bd7KmU8k.js.map +0 -1
- package/build/server/chunks/_server.ts-BjfWddPf.js.map +0 -1
- package/build/server/chunks/_server.ts-Bla3fiCh.js +0 -106
- package/build/server/chunks/_server.ts-Bla3fiCh.js.map +0 -1
- package/build/server/chunks/_server.ts-BnCHdcon.js.map +0 -1
- package/build/server/chunks/_server.ts-BpNKHMXM.js +0 -66
- package/build/server/chunks/_server.ts-BpNKHMXM.js.map +0 -1
- package/build/server/chunks/_server.ts-CV7PsNSs.js.map +0 -1
- package/build/server/chunks/_server.ts-CYhI4sCU.js.map +0 -1
- package/build/server/chunks/_server.ts-Cg9mKyvd.js.map +0 -1
- package/build/server/chunks/_server.ts-ClPgPihF.js +0 -248
- package/build/server/chunks/_server.ts-ClPgPihF.js.map +0 -1
- package/build/server/chunks/_server.ts-CqLbFV6m.js.map +0 -1
- package/build/server/chunks/_server.ts-D7hUSvgG.js.map +0 -1
- package/build/server/chunks/_server.ts-DZ3Yyeac.js.map +0 -1
- package/build/server/chunks/_server.ts-D_NDxdhC.js.map +0 -1
- package/build/server/chunks/_server.ts-DcWSFqr3.js +0 -72
- package/build/server/chunks/_server.ts-DcWSFqr3.js.map +0 -1
- package/build/server/chunks/_server.ts-Ddf5c75T.js.map +0 -1
- package/build/server/chunks/_server.ts-Dg2Gkcbx.js.map +0 -1
- package/build/server/chunks/_server.ts-Drhyf5o4.js.map +0 -1
- package/build/server/chunks/_server.ts-Dv1LAL-L.js.map +0 -1
- package/build/server/chunks/_server.ts-WfJI8r0e.js.map +0 -1
- package/build/server/chunks/addon-helpers-CkCisYhs.js.map +0 -1
- package/build/server/chunks/compose-args2-Ccr5RMHS.js.map +0 -1
- package/build/server/chunks/connections-api-mP7OE2x7.js +0 -34
- package/build/server/chunks/connections-api-mP7OE2x7.js.map +0 -1
- package/build/server/chunks/docker2-BL8hjShD.js.map +0 -1
- package/build/server/chunks/endpoints-CnnGlw2U.js +0 -452
- package/build/server/chunks/endpoints-CnnGlw2U.js.map +0 -1
- package/build/server/chunks/features-BUWlozR5.js +0 -118
- package/build/server/chunks/features-BUWlozR5.js.map +0 -1
- package/build/server/chunks/helpers-9U7R7yqL.js.map +0 -1
- package/build/server/chunks/hooks.server-Bog01Hsc.js.map +0 -1
- package/build/server/chunks/http-D2Aul-FP.js.map +0 -1
- package/build/server/chunks/landing-CMnmbyhs.js.map +0 -1
- package/build/server/chunks/network-preset-CJ1RRnki.js.map +0 -1
- package/build/server/chunks/runtime-context.svelte-C5zNEC6u.js.map +0 -1
- package/build/server/chunks/serial-queue-D9FEpYVv.js +0 -22
- package/build/server/chunks/serial-queue-D9FEpYVv.js.map +0 -1
- package/build/server/chunks/src-AHSKeKr0.js.map +0 -1
- package/build/server/chunks/voice-state.svelte-BAiqUOIX.js +0 -1214
- package/build/server/chunks/voice-state.svelte-BAiqUOIX.js.map +0 -1
- /package/build/client/_app/immutable/assets/{IconActivity.BdXOPwBm.css → ChatMessage.BdXOPwBm.css} +0 -0
- /package/build/client/_app/immutable/assets/{IconActivity.BdXOPwBm.css.br → ChatMessage.BdXOPwBm.css.br} +0 -0
- /package/build/client/_app/immutable/assets/{IconActivity.BdXOPwBm.css.gz → ChatMessage.BdXOPwBm.css.gz} +0 -0
|
@@ -1,72 +0,0 @@
|
|
|
1
|
-
import { d as deleteConnection, v as validateEndpointUrl, U as USER_ADDABLE_CONNECTION_KINDS, u as updateConnection } from './endpoints-CnnGlw2U.js';
|
|
2
|
-
import { d as getRequestId, k as jsonResponse, e as errorResponse, l as requireCapability, w as withAdminBody } from './helpers-9U7R7yqL.js';
|
|
3
|
-
import { r as requireConnectionsManage, a as publishConnectionEntry } from './connections-api-mP7OE2x7.js';
|
|
4
|
-
import './src-AHSKeKr0.js';
|
|
5
|
-
import './chunk-DOvWTNp_.js';
|
|
6
|
-
import 'node:module';
|
|
7
|
-
import './network-preset-CJ1RRnki.js';
|
|
8
|
-
import 'node:fs';
|
|
9
|
-
import 'node:child_process';
|
|
10
|
-
import 'node:path';
|
|
11
|
-
import 'buffer';
|
|
12
|
-
import 'node:url';
|
|
13
|
-
import 'node:os';
|
|
14
|
-
import 'node:crypto';
|
|
15
|
-
import 'events';
|
|
16
|
-
import 'fs';
|
|
17
|
-
import 'node:events';
|
|
18
|
-
import 'node:stream';
|
|
19
|
-
import 'node:string_decoder';
|
|
20
|
-
import 'path';
|
|
21
|
-
import 'assert';
|
|
22
|
-
import 'zlib';
|
|
23
|
-
import 'node:assert';
|
|
24
|
-
import 'node:fs/promises';
|
|
25
|
-
import './state-CzXOEt0t.js';
|
|
26
|
-
import './features-BUWlozR5.js';
|
|
27
|
-
|
|
28
|
-
//#region src/routes/api/connections/[id]/+server.ts
|
|
29
|
-
var PATCH = async (event) => {
|
|
30
|
-
const capabilityError = requireCapability(event, "connections:manage", getRequestId(event));
|
|
31
|
-
if (capabilityError) return capabilityError;
|
|
32
|
-
return withAdminBody(event, async ({ requestId, body }) => {
|
|
33
|
-
const id = event.params.id;
|
|
34
|
-
const patch = {};
|
|
35
|
-
if (typeof body.label === "string") patch.label = body.label;
|
|
36
|
-
if (typeof body.url === "string") {
|
|
37
|
-
const urlCheck = validateEndpointUrl(body.url);
|
|
38
|
-
if (!urlCheck.ok) return errorResponse(400, "invalid_connection", "URL must be a valid http(s) URL", {}, requestId);
|
|
39
|
-
patch.url = urlCheck.url;
|
|
40
|
-
}
|
|
41
|
-
if (body.password === null) patch.password = null;
|
|
42
|
-
else if (typeof body.password === "string") patch.password = body.password;
|
|
43
|
-
if (body.kind !== void 0) {
|
|
44
|
-
if (typeof body.kind !== "string" || !USER_ADDABLE_CONNECTION_KINDS.includes(body.kind)) return errorResponse(400, "invalid_connection", "kind must be remote-opencode or openpalm-client-api", {}, requestId);
|
|
45
|
-
patch.kind = body.kind;
|
|
46
|
-
}
|
|
47
|
-
try {
|
|
48
|
-
return jsonResponse(200, { connection: publishConnectionEntry(updateConnection(id, patch)) }, requestId);
|
|
49
|
-
} catch (e) {
|
|
50
|
-
const msg = e instanceof Error ? e.message : "failed to update connection";
|
|
51
|
-
const status = msg.startsWith("Endpoint not found") ? 404 : 400;
|
|
52
|
-
return errorResponse(status, status === 404 ? "not_found" : "invalid_connection", msg, {}, requestId);
|
|
53
|
-
}
|
|
54
|
-
});
|
|
55
|
-
};
|
|
56
|
-
var DELETE = async (event) => {
|
|
57
|
-
const requestId = getRequestId(event);
|
|
58
|
-
const guardError = requireConnectionsManage(event, requestId);
|
|
59
|
-
if (guardError) return guardError;
|
|
60
|
-
const id = event.params.id;
|
|
61
|
-
try {
|
|
62
|
-
deleteConnection(id);
|
|
63
|
-
return jsonResponse(200, { ok: true }, requestId);
|
|
64
|
-
} catch (e) {
|
|
65
|
-
const msg = e instanceof Error ? e.message : "failed to delete connection";
|
|
66
|
-
const status = msg.startsWith("Endpoint not found") ? 404 : 400;
|
|
67
|
-
return errorResponse(status, status === 404 ? "not_found" : "invalid_connection", msg, {}, requestId);
|
|
68
|
-
}
|
|
69
|
-
};
|
|
70
|
-
|
|
71
|
-
export { DELETE, PATCH };
|
|
72
|
-
//# sourceMappingURL=_server.ts-DcWSFqr3.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-DcWSFqr3.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/connections/_id_/_server.ts.js"],"sourcesContent":["import { c as updateConnection, l as validateEndpointUrl, r as deleteConnection, t as USER_ADDABLE_CONNECTION_KINDS } from \"../../../../../chunks/endpoints.js\";\nimport { a as getRequestId, c as jsonResponse, d as requireCapability, p as withAdminBody, r as errorResponse } from \"../../../../../chunks/helpers.js\";\nimport { n as publishConnectionEntry, r as requireConnectionsManage } from \"../../../../../chunks/connections-api.js\";\n//#region src/routes/api/connections/[id]/+server.ts\nvar PATCH = async (event) => {\n\tconst capabilityError = requireCapability(event, \"connections:manage\", getRequestId(event));\n\tif (capabilityError) return capabilityError;\n\treturn withAdminBody(event, async ({ requestId, body }) => {\n\t\tconst id = event.params.id;\n\t\tconst patch = {};\n\t\tif (typeof body.label === \"string\") patch.label = body.label;\n\t\tif (typeof body.url === \"string\") {\n\t\t\tconst urlCheck = validateEndpointUrl(body.url);\n\t\t\tif (!urlCheck.ok) return errorResponse(400, \"invalid_connection\", \"URL must be a valid http(s) URL\", {}, requestId);\n\t\t\tpatch.url = urlCheck.url;\n\t\t}\n\t\tif (body.password === null) patch.password = null;\n\t\telse if (typeof body.password === \"string\") patch.password = body.password;\n\t\tif (body.kind !== void 0) {\n\t\t\tif (typeof body.kind !== \"string\" || !USER_ADDABLE_CONNECTION_KINDS.includes(body.kind)) return errorResponse(400, \"invalid_connection\", \"kind must be remote-opencode or openpalm-client-api\", {}, requestId);\n\t\t\tpatch.kind = body.kind;\n\t\t}\n\t\ttry {\n\t\t\treturn jsonResponse(200, { connection: publishConnectionEntry(updateConnection(id, patch)) }, requestId);\n\t\t} catch (e) {\n\t\t\tconst msg = e instanceof Error ? e.message : \"failed to update connection\";\n\t\t\tconst status = msg.startsWith(\"Endpoint not found\") ? 404 : 400;\n\t\t\treturn errorResponse(status, status === 404 ? \"not_found\" : \"invalid_connection\", msg, {}, requestId);\n\t\t}\n\t});\n};\nvar DELETE = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst guardError = requireConnectionsManage(event, requestId);\n\tif (guardError) return guardError;\n\tconst id = event.params.id;\n\ttry {\n\t\tdeleteConnection(id);\n\t\treturn jsonResponse(200, { ok: true }, requestId);\n\t} catch (e) {\n\t\tconst msg = e instanceof Error ? e.message : \"failed to delete connection\";\n\t\tconst status = msg.startsWith(\"Endpoint not found\") ? 404 : 400;\n\t\treturn errorResponse(status, status === 404 ? \"not_found\" : \"invalid_connection\", msg, {}, requestId);\n\t}\n};\n//#endregion\nexport { DELETE, PATCH };\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-Ddf5c75T.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/host/containers/pull/_server.ts.js"],"sourcesContent":["import { Nt as createLogger, o as buildManagedServices, t as buildComposeOptions } from \"../../../../../../chunks/compose-args.js\";\nimport { i as checkDocker, t as applyStack } from \"../../../../../../chunks/docker.js\";\nimport \"../../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../../chunks/state.js\";\nimport { a as getRequestId, c as jsonResponse, d as requireCapability, r as errorResponse, u as requireAdmin } from \"../../../../../../chunks/helpers.js\";\nimport { t as withSerialQueue } from \"../../../../../../chunks/serial-queue.js\";\n//#region src/routes/api/host/containers/pull/+server.ts\nvar logger = createLogger(\"containers-pull\");\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst capabilityError = requireCapability(event, \"host:containers\", requestId);\n\tif (capabilityError) return capabilityError;\n\tlogger.info(\"pull request received\", { requestId });\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\treturn withSerialQueue(\"admin:containers:pull\", async () => {\n\t\tconst state = getState();\n\t\tconst dockerCheck = await checkDocker();\n\t\tif (!dockerCheck.ok) return errorResponse(503, \"docker_unavailable\", \"Docker is not available\", { stderr: dockerCheck.stderr }, requestId);\n\t\tconst composeOpts = buildComposeOptions(state);\n\t\tlogger.info(\"pulling and recreating containers\", { requestId });\n\t\tconst result = await applyStack({\n\t\t\tkind: \"services\",\n\t\t\tservices: await buildManagedServices(state)\n\t\t}, composeOpts, void 0, { pull: \"always\" });\n\t\tif (!result.ok) {\n\t\t\tlogger.error(\"pull/recreate failed\", {\n\t\t\t\trequestId,\n\t\t\t\terror: result.error\n\t\t\t});\n\t\t\treturn errorResponse(502, \"up_failed\", \"Failed to pull and recreate containers\", { stderr: result.rawStderr ?? result.error ?? \"\" }, requestId);\n\t\t}\n\t\tlogger.info(\"pull completed\", {\n\t\t\trequestId,\n\t\t\tstarted: result.started\n\t\t});\n\t\treturn jsonResponse(200, {\n\t\t\tok: true,\n\t\t\tstarted: result.started\n\t\t}, requestId);\n\t});\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA;AACA,IAAI,MAAM,GAAG,YAAY,CAAC,iBAAiB,CAAC;AACzC,IAAC,IAAI,GAAG,OAAO,KAAK,KAAK;AAC5B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,eAAe,GAAG,iBAAiB,CAAC,KAAK,EAAE,iBAAiB,EAAE,SAAS,CAAC;AAC/E,CAAC,IAAI,eAAe,EAAE,OAAO,eAAe;AAC5C,CAAC,MAAM,CAAC,IAAI,CAAC,uBAAuB,EAAE,EAAE,SAAS,EAAE,CAAC;AACpD,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AACjD,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS;AAChC,CAAC,OAAO,eAAe,CAAC,uBAAuB,EAAE,YAAY;AAC7D,EAAE,MAAM,KAAK,GAAG,QAAQ,EAAE;AAC1B,EAAE,MAAM,WAAW,GAAG,MAAM,WAAW,EAAE;AACzC,EAAE,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,EAAE,MAAM,EAAE,WAAW,CAAC,MAAM,EAAE,EAAE,SAAS,CAAC;AAC5I,EAAE,MAAM,WAAW,GAAG,mBAAmB,CAAC,KAAK,CAAC;AAChD,EAAE,MAAM,CAAC,IAAI,CAAC,mCAAmC,EAAE,EAAE,SAAS,EAAE,CAAC;AACjE,EAAE,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC;AAClC,GAAG,IAAI,EAAE,UAAU;AACnB,GAAG,QAAQ,EAAE,MAAM,oBAAoB,CAAC,KAAK;AAC7C,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AAC7C,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE;AAClB,GAAG,MAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE;AACxC,IAAI,SAAS;AACb,IAAI,KAAK,EAAE,MAAM,CAAC;AAClB,IAAI,CAAC;AACL,GAAG,OAAO,aAAa,CAAC,GAAG,EAAE,WAAW,EAAE,wCAAwC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,SAAS,IAAI,MAAM,CAAC,KAAK,IAAI,EAAE,EAAE,EAAE,SAAS,CAAC;AAClJ,EAAE;AACF,EAAE,MAAM,CAAC,IAAI,CAAC,gBAAgB,EAAE;AAChC,GAAG,SAAS;AACZ,GAAG,OAAO,EAAE,MAAM,CAAC;AACnB,GAAG,CAAC;AACJ,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE;AAC3B,GAAG,EAAE,EAAE,IAAI;AACX,GAAG,OAAO,EAAE,MAAM,CAAC;AACnB,GAAG,EAAE,SAAS,CAAC;AACf,CAAC,CAAC,CAAC;AACH;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-Dg2Gkcbx.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/host/addons/_name_/_server.ts.js"],"sourcesContent":["import { C as getRegistryAddonConfig, E as listEnabledAddonIds, Nt as createLogger, T as listAvailableAddonIds } from \"../../../../../../chunks/compose-args.js\";\nimport \"../../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../../chunks/state.js\";\nimport { a as getRequestId, c as jsonResponse, d as requireCapability, l as parseJsonBody, r as errorResponse, s as jsonBodyError, u as requireAdmin } from \"../../../../../../chunks/helpers.js\";\nimport { t as performAddonToggle } from \"../../../../../../chunks/addon-helpers.js\";\n//#region src/routes/api/host/addons/[name]/+server.ts\nvar logger = createLogger(\"addons.name\");\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst capabilityError = requireCapability(event, \"host:addons\", requestId);\n\tif (capabilityError) return capabilityError;\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(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 capabilityError = requireCapability(event, \"host:addons\", requestId);\n\tif (capabilityError) return capabilityError;\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 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-Drhyf5o4.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/host/versions/releases/_server.ts.js"],"sourcesContent":["import { r as json } from \"../../../../../../chunks/exports.js\";\nimport { mt as ELECTRON_ASSET_PATTERN } from \"../../../../../../chunks/compose-args.js\";\nimport \"../../../../../../chunks/src.js\";\nimport { a as getRequestId, d as requireCapability, u as requireAdmin } from \"../../../../../../chunks/helpers.js\";\n//#region src/lib/server/release-units.ts\n/**\n* Parse GitHub release tags into platform + per-unit release lists.\n*\n* With independently versioned units, git tags are unit-prefixed\n* (platform-X.Y.Z, assistant-X.Y.Z, guardian-X.Y.Z, portals-X.Y.Z). Docker\n* images always use the v-prefixed form, so the prefix is stripped here and the\n* UI re-adds the `v` only when talking to Docker. Legacy `vX.Y.Z` tags are kept\n* under the platform list for backward compat with pre-unit releases.\n*\n* Pure + side-effect free so it can be unit-tested without mocking the GitHub\n* API. The `/api/host/versions/releases` route calls {@link groupReleasesByUnit}\n* after fetching the raw release list.\n*/\nvar PLATFORM_TAG_PATTERN = /^platform-(\\d+\\.\\d+\\.\\d+(?:[-+][0-9A-Za-z.-]*)?)$/;\nvar LEGACY_V_TAG_PATTERN = /^v(\\d+\\.\\d+\\.\\d+(?:[-+][0-9A-Za-z.-]*)?)$/;\n/**\n* Select only platform releases that carry installable app assets (Electron\n* installer or skeleton/deploy bundle), skipping per-unit container-image\n* releases.\n*\n* Per-unit version pickers now read from Docker Hub tags (not GitHub releases),\n* so the releases endpoint only needs app-level releases — the ones with\n* downloadable installer/bundle assets. This dramatically reduces the data the\n* UI holds and keeps the GitHub API call to its existing single request (the\n* filtering is client-side of the fetch, not a second fetch).\n*\n* Deduplicates by semver so `{#each r.tag}` keys stay unique when a platform\n* release created both a `platform-X.Y.Z` and a legacy `vX.Y.Z` tag. Preserves\n* GitHub's `created_at` desc ordering.\n*/\nfunction selectInstallableReleases(raw) {\n\tconst seen = /* @__PURE__ */ new Set();\n\tconst releases = [];\n\tfor (const r of raw) {\n\t\tconst hasElectronBuild = r.assets.some((a) => ELECTRON_ASSET_PATTERN.test(a.name));\n\t\tif (!hasElectronBuild) continue;\n\t\tconst platformMatch = r.tag_name.match(PLATFORM_TAG_PATTERN);\n\t\tif (platformMatch) {\n\t\t\tconst tag = platformMatch[1];\n\t\t\tif (!seen.has(tag)) {\n\t\t\t\tseen.add(tag);\n\t\t\t\treleases.push({\n\t\t\t\t\ttag,\n\t\t\t\t\tprerelease: r.prerelease,\n\t\t\t\t\tpublishedAt: r.published_at,\n\t\t\t\t\thasElectronBuild\n\t\t\t\t});\n\t\t\t}\n\t\t\tcontinue;\n\t\t}\n\t\tconst legacyMatch = r.tag_name.match(LEGACY_V_TAG_PATTERN);\n\t\tif (legacyMatch) {\n\t\t\tconst tag = legacyMatch[1];\n\t\t\tif (!seen.has(tag)) {\n\t\t\t\tseen.add(tag);\n\t\t\t\treleases.push({\n\t\t\t\t\ttag,\n\t\t\t\t\tprerelease: r.prerelease,\n\t\t\t\t\tpublishedAt: r.published_at,\n\t\t\t\t\thasElectronBuild\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n\treturn releases;\n}\n//#endregion\n//#region src/routes/api/host/versions/releases/+server.ts\n/**\n* GET /api/host/versions/releases — list installable platform releases from GitHub.\n*\n* Powers the desktop App-update badge: only platform releases that carry an\n* Electron installer asset. Best-effort — a GitHub outage yields an empty list\n* with an error signal rather than failing the page. (No server-side cache: the\n* admin UI no longer polls this, so a direct fetch per visit is fine.)\n*/\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst capabilityError = requireCapability(event, \"host:updates\", requestId);\n\tif (capabilityError) return capabilityError;\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\ttry {\n\t\tconst res = await fetch(\"https://api.github.com/repos/itlackey/openpalm/releases?per_page=20\", {\n\t\t\theaders: {\n\t\t\t\t\"User-Agent\": \"openpalm-admin/1.0\",\n\t\t\t\tAccept: \"application/vnd.github+json\"\n\t\t\t},\n\t\t\tsignal: AbortSignal.timeout(8e3)\n\t\t});\n\t\tif (!res.ok) return json({\n\t\t\treleases: [],\n\t\t\terror: \"GitHub releases unavailable\"\n\t\t});\n\t\treturn json({ releases: selectInstallableReleases(await res.json()) });\n\t} catch {\n\t\treturn json({\n\t\t\treleases: [],\n\t\t\terror: \"GitHub releases unavailable\"\n\t\t});\n\t}\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-Dv1LAL-L.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/runtime/_server.ts.js"],"sourcesContent":["import { r as json } from \"../../../../chunks/exports.js\";\nimport { t as computeServerRuntimeContext } from \"../../../../chunks/features.js\";\n//#region src/routes/api/runtime/+server.ts\n/**\n* GET /api/runtime — public runtime-context endpoint (plan\n* ui-runtime-modes-plan.md §6.4, issue #509).\n*\n* PUBLIC by design: no auth is consulted. The body is the ServerRuntimeContext\n* whose `version` field is the contract-version handshake remote/hosted\n* clients use to detect version skew before enabling features. It carries no\n* secrets — mode, capability names, versions, and route pointers only.\n*/\nvar GET = (event) => {\n\treturn json(computeServerRuntimeContext(event));\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACG,IAAC,GAAG,GAAG,CAAC,KAAK,KAAK;AACrB,CAAC,OAAO,IAAI,CAAC,2BAA2B,CAAC,KAAK,CAAC,CAAC;AAChD;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-WfJI8r0e.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/host/containers/restart/_server.ts.js"],"sourcesContent":["import { Nt as createLogger, _ as HostSwapBlockedError, t as buildComposeOptions, v as reconcileHostOwnership } from \"../../../../../../chunks/compose-args.js\";\nimport { h as composeRestart, i as checkDocker } from \"../../../../../../chunks/docker.js\";\nimport { k as isAllowedService } from \"../../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../../chunks/state.js\";\nimport { a as getRequestId, c as jsonResponse, d as requireCapability, l as parseJsonBody, r as errorResponse, s as jsonBodyError, u as requireAdmin } from \"../../../../../../chunks/helpers.js\";\nimport { t as withSerialQueue } from \"../../../../../../chunks/serial-queue.js\";\n//#region src/routes/api/host/containers/restart/+server.ts\nvar logger = createLogger(\"containers-restart\");\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst capabilityError = requireCapability(event, \"host:containers\", requestId);\n\tif (capabilityError) return capabilityError;\n\tlogger.info(\"container restart request\", { requestId });\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\treturn withSerialQueue(\"admin:containers:restart\", async () => {\n\t\tconst state = getState();\n\t\tconst result = await parseJsonBody(event.request);\n\t\tif (\"error\" in result) return jsonBodyError(result, requestId);\n\t\tconst body = result.data;\n\t\tconst service = typeof body.service === \"string\" ? body.service : \"\";\n\t\tif (!isAllowedService(service, state.configDir)) return errorResponse(400, \"invalid_service\", \"Service is not in allowlist\", { service }, requestId);\n\t\tif ((await checkDocker()).ok) {\n\t\t\ttry {\n\t\t\t\tawait reconcileHostOwnership(state, { services: [service] });\n\t\t\t} catch (err) {\n\t\t\t\tif (err instanceof HostSwapBlockedError) return errorResponse(409, \"host_swap_blocked\", \"OP_HOME appears to have moved from another host. Ownership must be adopted for this host before starting. Run `openpalm start --adopt-host` from the host CLI, then retry.\", {\n\t\t\t\t\tservice,\n\t\t\t\t\tpreviousHost: err.previousIdentity?.host ?? null,\n\t\t\t\t\tcurrentHost: err.currentIdentity.host\n\t\t\t\t}, requestId);\n\t\t\t\tthrow err;\n\t\t\t}\n\t\t\tconst result = await composeRestart([service], buildComposeOptions(state));\n\t\t\tif (result.ok) state.services[service] = \"running\";\n\t\t\telse return errorResponse(500, \"docker_error\", `Failed to restart service: ${result.stderr}`, { service }, requestId);\n\t\t} else state.services[service] = \"running\";\n\t\treturn jsonResponse(200, {\n\t\t\tok: true,\n\t\t\tservice,\n\t\t\tstatus: state.services[service]\n\t\t}, requestId);\n\t});\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAMA;AACA,IAAI,MAAM,GAAG,YAAY,CAAC,oBAAoB,CAAC;AAC5C,IAAC,IAAI,GAAG,OAAO,KAAK,KAAK;AAC5B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,eAAe,GAAG,iBAAiB,CAAC,KAAK,EAAE,iBAAiB,EAAE,SAAS,CAAC;AAC/E,CAAC,IAAI,eAAe,EAAE,OAAO,eAAe;AAC5C,CAAC,MAAM,CAAC,IAAI,CAAC,2BAA2B,EAAE,EAAE,SAAS,EAAE,CAAC;AACxD,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AACjD,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS;AAChC,CAAC,OAAO,eAAe,CAAC,0BAA0B,EAAE,YAAY;AAChE,EAAE,MAAM,KAAK,GAAG,QAAQ,EAAE;AAC1B,EAAE,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC;AACnD,EAAE,IAAI,OAAO,IAAI,MAAM,EAAE,OAAO,aAAa,CAAC,MAAM,EAAE,SAAS,CAAC;AAChE,EAAE,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI;AAC1B,EAAE,MAAM,OAAO,GAAG,OAAO,IAAI,CAAC,OAAO,KAAK,QAAQ,GAAG,IAAI,CAAC,OAAO,GAAG,EAAE;AACtE,EAAE,IAAI,CAAC,gBAAgB,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,iBAAiB,EAAE,6BAA6B,EAAE,EAAE,OAAO,EAAE,EAAE,SAAS,CAAC;AACtJ,EAAE,IAAI,CAAC,MAAM,WAAW,EAAE,EAAE,EAAE,EAAE;AAChC,GAAG,IAAI;AACP,IAAI,MAAM,sBAAsB,CAAC,KAAK,EAAE,EAAE,QAAQ,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC;AAChE,GAAG,CAAC,CAAC,OAAO,GAAG,EAAE;AACjB,IAAI,IAAI,GAAG,YAAY,oBAAoB,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,mBAAmB,EAAE,4KAA4K,EAAE;AAC1Q,KAAK,OAAO;AACZ,KAAK,YAAY,EAAE,GAAG,CAAC,gBAAgB,EAAE,IAAI,IAAI,IAAI;AACrD,KAAK,WAAW,EAAE,GAAG,CAAC,eAAe,CAAC;AACtC,KAAK,EAAE,SAAS,CAAC;AACjB,IAAI,MAAM,GAAG;AACb,GAAG;AACH,GAAG,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,CAAC,OAAO,CAAC,EAAE,mBAAmB,CAAC,KAAK,CAAC,CAAC;AAC7E,GAAG,IAAI,MAAM,CAAC,EAAE,EAAE,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,SAAS;AACrD,QAAQ,OAAO,aAAa,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,2BAA2B,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,SAAS,CAAC;AACxH,EAAE,CAAC,MAAM,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,SAAS;AAC5C,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE;AAC3B,GAAG,EAAE,EAAE,IAAI;AACX,GAAG,OAAO;AACV,GAAG,MAAM,EAAE,KAAK,CAAC,QAAQ,CAAC,OAAO;AACjC,GAAG,EAAE,SAAS,CAAC;AACf,CAAC,CAAC,CAAC;AACH;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"addon-helpers-CkCisYhs.js","sources":["../../../.svelte-kit/adapter-node/chunks/addon-helpers.js"],"sourcesContent":["import { D as setAddonEnabled, E as listEnabledAddonIds, Nt as createLogger, S as getAddonServiceNames, t as buildComposeOptions } from \"./compose-args.js\";\nimport { i as checkDocker, v as composeStop } from \"./docker.js\";\nimport \"./src.js\";\nimport { n as resetState } from \"./state.js\";\n//#region src/lib/server/addon-helpers.ts\n/**\n* Shared addon enable/disable logic for admin route handlers.\n*\n* Both /admin/addons and /admin/addons/:name share the same POST flow:\n* validate → stop running services if disabling → mutate state → audit.\n* This module houses the shared mutation step so neither route duplicates it.\n*/\nvar logger = createLogger(\"addon-helpers\");\n/**\n* Stop running services if disabling, then call setAddonEnabled.\n* Returns the mutation result with the final enabled state.\n*/\nasync function performAddonToggle(state, name, requestedEnabled, requestId) {\n\tconst wasEnabled = listEnabledAddonIds(state.homeDir).includes(name);\n\tconst nextEnabled = requestedEnabled !== void 0 ? requestedEnabled : wasEnabled;\n\tif (!nextEnabled && wasEnabled) {\n\t\tconst serviceNames = getAddonServiceNames(state.homeDir, name);\n\t\tif (serviceNames.length > 0) {\n\t\t\tif ((await checkDocker()).ok) try {\n\t\t\t\tawait composeStop(serviceNames, buildComposeOptions(state));\n\t\t\t\tlogger.info(\"stopped addon services before disable\", {\n\t\t\t\t\tname,\n\t\t\t\t\tservices: serviceNames,\n\t\t\t\t\trequestId\n\t\t\t\t});\n\t\t\t} catch (err) {\n\t\t\t\tlogger.warn(\"failed to stop addon services before disable\", {\n\t\t\t\t\tname,\n\t\t\t\t\tservices: serviceNames,\n\t\t\t\t\terror: String(err),\n\t\t\t\t\trequestId\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t}\n\tconst mutation = setAddonEnabled(state.homeDir, name, nextEnabled, state);\n\tif (!mutation.ok) return mutation;\n\tif (mutation.changed) resetState();\n\treturn {\n\t\tok: true,\n\t\tenabled: listEnabledAddonIds(state.homeDir).includes(name),\n\t\tchanged: mutation.changed\n\t};\n}\n//#endregion\nexport { performAddonToggle as t };\n"],"names":[],"mappings":";;;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,IAAI,MAAM,GAAG,YAAY,CAAC,eAAe,CAAC;AAC1C;AACA;AACA;AACA;AACA,eAAe,kBAAkB,CAAC,KAAK,EAAE,IAAI,EAAE,gBAAgB,EAAE,SAAS,EAAE;AAC5E,CAAC,MAAM,UAAU,GAAG,mBAAmB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;AACrE,CAAC,MAAM,WAAW,GAAG,gBAAgB,KAAK,MAAM,GAAG,gBAAgB,GAAG,UAAU;AAChF,CAAC,IAAI,CAAC,WAAW,IAAI,UAAU,EAAE;AACjC,EAAE,MAAM,YAAY,GAAG,oBAAoB,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC;AAChE,EAAE,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE;AAC/B,GAAG,IAAI,CAAC,MAAM,WAAW,EAAE,EAAE,EAAE,EAAE,IAAI;AACrC,IAAI,MAAM,WAAW,CAAC,YAAY,EAAE,mBAAmB,CAAC,KAAK,CAAC,CAAC;AAC/D,IAAI,MAAM,CAAC,IAAI,CAAC,uCAAuC,EAAE;AACzD,KAAK,IAAI;AACT,KAAK,QAAQ,EAAE,YAAY;AAC3B,KAAK;AACL,KAAK,CAAC;AACN,GAAG,CAAC,CAAC,OAAO,GAAG,EAAE;AACjB,IAAI,MAAM,CAAC,IAAI,CAAC,8CAA8C,EAAE;AAChE,KAAK,IAAI;AACT,KAAK,QAAQ,EAAE,YAAY;AAC3B,KAAK,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC;AACvB,KAAK;AACL,KAAK,CAAC;AACN,GAAG;AACH,EAAE;AACF,CAAC;AACD,CAAC,MAAM,QAAQ,GAAG,eAAe,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,CAAC;AAC1E,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,OAAO,QAAQ;AAClC,CAAC,IAAI,QAAQ,CAAC,OAAO,EAAE,UAAU,EAAE;AACnC,CAAC,OAAO;AACR,EAAE,EAAE,EAAE,IAAI;AACV,EAAE,OAAO,EAAE,mBAAmB,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC;AAC5D,EAAE,OAAO,EAAE,QAAQ,CAAC;AACpB,EAAE;AACF;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"compose-args2-Ccr5RMHS.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,34 +0,0 @@
|
|
|
1
|
-
import { l as requireCapability, r as requireAdmin } from './helpers-9U7R7yqL.js';
|
|
2
|
-
|
|
3
|
-
//#region src/lib/server/connections-api.ts
|
|
4
|
-
/** Serialize a connection for the API — never includes the stored password. */
|
|
5
|
-
function publishConnection(c) {
|
|
6
|
-
return {
|
|
7
|
-
id: c.id,
|
|
8
|
-
label: c.label,
|
|
9
|
-
url: c.url,
|
|
10
|
-
kind: c.kind,
|
|
11
|
-
isDefault: c.isDefault,
|
|
12
|
-
hasPassword: Boolean(c.password)
|
|
13
|
-
};
|
|
14
|
-
}
|
|
15
|
-
/** Serialize a user-persisted record (kind defaulted the same way reads default it). */
|
|
16
|
-
function publishConnectionEntry(entry) {
|
|
17
|
-
return publishConnection({
|
|
18
|
-
...entry,
|
|
19
|
-
kind: entry.kind ?? "remote-opencode",
|
|
20
|
-
isDefault: false
|
|
21
|
-
});
|
|
22
|
-
}
|
|
23
|
-
/**
|
|
24
|
-
* Shared guard for every /api/connections/* handler: the `connections:manage`
|
|
25
|
-
* capability first (403 — capability-based, not session-based; plan §8.5),
|
|
26
|
-
* then the host admin session (plan §6.8: the host app gates connection
|
|
27
|
-
* writes behind the admin session).
|
|
28
|
-
*/
|
|
29
|
-
function requireConnectionsManage(event, requestId) {
|
|
30
|
-
return requireCapability(event, "connections:manage", requestId) ?? requireAdmin(event, requestId);
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
export { publishConnectionEntry as a, publishConnection as p, requireConnectionsManage as r };
|
|
34
|
-
//# sourceMappingURL=connections-api-mP7OE2x7.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"connections-api-mP7OE2x7.js","sources":["../../../.svelte-kit/adapter-node/chunks/connections-api.js"],"sourcesContent":["import { d as requireCapability, u as requireAdmin } from \"./helpers.js\";\n//#region src/lib/server/connections-api.ts\n/** Serialize a connection for the API — never includes the stored password. */\nfunction publishConnection(c) {\n\treturn {\n\t\tid: c.id,\n\t\tlabel: c.label,\n\t\turl: c.url,\n\t\tkind: c.kind,\n\t\tisDefault: c.isDefault,\n\t\thasPassword: Boolean(c.password)\n\t};\n}\n/** Serialize a user-persisted record (kind defaulted the same way reads default it). */\nfunction publishConnectionEntry(entry) {\n\treturn publishConnection({\n\t\t...entry,\n\t\tkind: entry.kind ?? \"remote-opencode\",\n\t\tisDefault: false\n\t});\n}\n/**\n* Shared guard for every /api/connections/* handler: the `connections:manage`\n* capability first (403 — capability-based, not session-based; plan §8.5),\n* then the host admin session (plan §6.8: the host app gates connection\n* writes behind the admin session).\n*/\nfunction requireConnectionsManage(event, requestId) {\n\treturn requireCapability(event, \"connections:manage\", requestId) ?? requireAdmin(event, requestId);\n}\n//#endregion\nexport { publishConnectionEntry as n, requireConnectionsManage as r, publishConnection as t };\n"],"names":[],"mappings":";;AACA;AACA;AACA,SAAS,iBAAiB,CAAC,CAAC,EAAE;AAC9B,CAAC,OAAO;AACR,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE;AACV,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK;AAChB,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG;AACZ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI;AACd,EAAE,SAAS,EAAE,CAAC,CAAC,SAAS;AACxB,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC,CAAC,QAAQ;AACjC,EAAE;AACF;AACA;AACA,SAAS,sBAAsB,CAAC,KAAK,EAAE;AACvC,CAAC,OAAO,iBAAiB,CAAC;AAC1B,EAAE,GAAG,KAAK;AACV,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,IAAI,iBAAiB;AACvC,EAAE,SAAS,EAAE;AACb,EAAE,CAAC;AACH;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,wBAAwB,CAAC,KAAK,EAAE,SAAS,EAAE;AACpD,CAAC,OAAO,iBAAiB,CAAC,KAAK,EAAE,oBAAoB,EAAE,SAAS,CAAC,IAAI,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AACnG;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"docker2-BL8hjShD.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;"}
|
|
@@ -1,452 +0,0 @@
|
|
|
1
|
-
import { aD as readStackEnv, aA as readSecret } from './src-AHSKeKr0.js';
|
|
2
|
-
import { g as getState } from './state-CzXOEt0t.js';
|
|
3
|
-
import { existsSync, readFileSync, mkdirSync, writeFileSync, chmodSync, unlinkSync } from 'node:fs';
|
|
4
|
-
import { dirname } from 'node:path';
|
|
5
|
-
import { randomUUID } from 'node:crypto';
|
|
6
|
-
|
|
7
|
-
//#region src/lib/server/basic-auth.ts
|
|
8
|
-
/**
|
|
9
|
-
* Shared HTTP Basic-auth encoding for host-UI → OpenCode/guardian calls.
|
|
10
|
-
*
|
|
11
|
-
* PR #564 P2-1: every host forwarder MUST send the exact same UTF-8 byte
|
|
12
|
-
* sequence the assistant and guardian expect. Two divergences caused correct
|
|
13
|
-
* passwords to 401 from the host:
|
|
14
|
-
* - `btoa()` is Latin-1-only and throws / corrupts on non-Latin-1 bytes
|
|
15
|
-
* (accents, CJK, emoji). Encode UTF-8 first (matches the guardian's
|
|
16
|
-
* `Buffer.from(..., 'utf-8')`).
|
|
17
|
-
* - the file-backed password was `.trim()`-ed, stripping surrounding spaces,
|
|
18
|
-
* while the assistant entrypoint (`$(cat)`) and the guardian strip only
|
|
19
|
-
* trailing newlines. Use `stripTrailingNewlines` so a password like
|
|
20
|
-
* `"päss 🔒 "` authenticates identically everywhere.
|
|
21
|
-
*/
|
|
22
|
-
/** OpenCode's server default Basic-auth username (the shipped assistant compose never overrides it). */
|
|
23
|
-
var DEFAULT_OPENCODE_USERNAME$1 = "opencode";
|
|
24
|
-
/** UTF-8-safe Basic auth header — identical byte sequence to the guardian's encoder. */
|
|
25
|
-
function basicAuthHeader(username, password) {
|
|
26
|
-
return `Basic ${Buffer.from(`${username}:${password}`, "utf-8").toString("base64")}`;
|
|
27
|
-
}
|
|
28
|
-
/**
|
|
29
|
-
* Strip only trailing newlines from a file-backed secret, matching the
|
|
30
|
-
* assistant entrypoint's `$(cat file)` and the guardian's reader. Surrounding
|
|
31
|
-
* spaces/tabs are preserved so the bytes match across every consumer.
|
|
32
|
-
*/
|
|
33
|
-
function stripTrailingNewlines(value) {
|
|
34
|
-
return value.replace(/\n+$/, "");
|
|
35
|
-
}
|
|
36
|
-
//#endregion
|
|
37
|
-
//#region src/lib/server/endpoints.ts
|
|
38
|
-
/**
|
|
39
|
-
* Assistant connections — list of OpenCode servers the UI can target, with
|
|
40
|
-
* one marked active. The internal model uses "connection" language (plan
|
|
41
|
-
* ui-runtime-modes-plan.md §6.6, Phase 2 / #486); the on-disk file keeps its
|
|
42
|
-
* historical name and schema keys — `endpoints.json` with
|
|
43
|
-
* `{ activeId, endpoints }` — and is NEVER renamed or migrated.
|
|
44
|
-
*
|
|
45
|
-
* The "default" entry is synthesized from environment (OP_OPENCODE_URL /
|
|
46
|
-
* OP_ASSISTANT_URL / OP_ASSISTANT_PORT) and cannot be deleted. User-added
|
|
47
|
-
* connections are persisted to a JSON file in the config directory (it's
|
|
48
|
-
* user-owned configuration, not service state — see Phase 5 / D4 in
|
|
49
|
-
* docs/technical/auth-and-proxy-refactor-plan.md).
|
|
50
|
-
*
|
|
51
|
-
* File: ${configDir}/endpoints.json (mode 0600)
|
|
52
|
-
* Shape: { activeId: string | null, endpoints: ConnectionEntry[] }
|
|
53
|
-
* - activeId === null or "default" → use the env-derived default
|
|
54
|
-
* - activeId === "<id>" → use the matching user entry (falls back to default if not found)
|
|
55
|
-
*
|
|
56
|
-
* Legacy path: ${dataDir}/admin/endpoints.json. Old installs are
|
|
57
|
-
* migrated lazily on first read by maybeMigrateLegacyEndpointsFile().
|
|
58
|
-
*/
|
|
59
|
-
/**
|
|
60
|
-
* Read-time kind defaulting (plan §6.6): a user-persisted record without a
|
|
61
|
-
* `kind` key is a remote OpenCode connection — that is the only thing the
|
|
62
|
-
* pre-Phase-2 UI let users add. Explicit kinds pass through untouched.
|
|
63
|
-
*/
|
|
64
|
-
function kindOf(entry) {
|
|
65
|
-
return entry.kind ?? "remote-opencode";
|
|
66
|
-
}
|
|
67
|
-
var DEFAULT_ID = "default";
|
|
68
|
-
/**
|
|
69
|
-
* OpenCode's server default Basic-auth username. The shipped assistant compose
|
|
70
|
-
* never overrides OPENCODE_SERVER_USERNAME, and the guardian's upstream auth
|
|
71
|
-
* sends `opencode:<password>`, so every host-UI forwarder must default here or
|
|
72
|
-
* a correct password 401s (PR #564 r3566888629). User-added connections may
|
|
73
|
-
* still carry an explicit username.
|
|
74
|
-
*/
|
|
75
|
-
var DEFAULT_OPENCODE_USERNAME = DEFAULT_OPENCODE_USERNAME$1;
|
|
76
|
-
var LOCAL_ELECTRON_ID = "local-electron";
|
|
77
|
-
var remoteStatusCache = null;
|
|
78
|
-
function endpointsPath() {
|
|
79
|
-
return `${getState().configDir}/endpoints.json`;
|
|
80
|
-
}
|
|
81
|
-
/**
|
|
82
|
-
* Legacy path used before Phase 5 of the auth/proxy refactor.
|
|
83
|
-
* See docs/technical/auth-and-proxy-refactor-plan.md § Phase 5 / D4.
|
|
84
|
-
*/
|
|
85
|
-
function legacyEndpointsPath() {
|
|
86
|
-
return `${getState().dataDir}/admin/endpoints.json`;
|
|
87
|
-
}
|
|
88
|
-
/**
|
|
89
|
-
* One-shot lazy migration from the legacy data/ path to the new config/ path.
|
|
90
|
-
*
|
|
91
|
-
* Phase 5 of docs/technical/auth-and-proxy-refactor-plan.md (D6 step 3):
|
|
92
|
-
* - If the new path already exists → no-op (already migrated).
|
|
93
|
-
* - If the legacy path doesn't exist → no-op (fresh install).
|
|
94
|
-
* - Otherwise copy contents to the new path (mode 0600), then unlink legacy.
|
|
95
|
-
*
|
|
96
|
-
* If the migration fails partway, the legacy file is left in place so reads
|
|
97
|
-
* fall back to it for the remainder of this session. Idempotent across
|
|
98
|
-
* process restarts because the existence check makes it a no-op after the
|
|
99
|
-
* first successful run.
|
|
100
|
-
*/
|
|
101
|
-
function maybeMigrateLegacyEndpointsFile() {
|
|
102
|
-
const newPath = endpointsPath();
|
|
103
|
-
if (existsSync(newPath)) return;
|
|
104
|
-
const oldPath = legacyEndpointsPath();
|
|
105
|
-
if (!existsSync(oldPath)) return;
|
|
106
|
-
try {
|
|
107
|
-
mkdirSync(dirname(newPath), { recursive: true });
|
|
108
|
-
writeFileSync(newPath, readFileSync(oldPath), { mode: 384 });
|
|
109
|
-
try {
|
|
110
|
-
chmodSync(newPath, 384);
|
|
111
|
-
} catch {}
|
|
112
|
-
unlinkSync(oldPath);
|
|
113
|
-
} catch (e) {
|
|
114
|
-
console.warn("[endpoints] Failed to migrate legacy endpoints.json from data/ to config/. Leaving the old file in place; reads will fall back to it for this session.", e);
|
|
115
|
-
}
|
|
116
|
-
}
|
|
117
|
-
function localRuntimePath() {
|
|
118
|
-
return `${getState().dataDir}/local-opencode.runtime.json`;
|
|
119
|
-
}
|
|
120
|
-
/**
|
|
121
|
-
* Read the Electron-written runtime.json each time it's needed. The file is
|
|
122
|
-
* 0600 and is rewritten on each Electron launch (random password per launch),
|
|
123
|
-
* so callers must NOT cache the result.
|
|
124
|
-
*/
|
|
125
|
-
function readLocalRuntime() {
|
|
126
|
-
const path = localRuntimePath();
|
|
127
|
-
if (!existsSync(path)) return null;
|
|
128
|
-
try {
|
|
129
|
-
const parsed = JSON.parse(readFileSync(path, "utf-8"));
|
|
130
|
-
if (!parsed || typeof parsed.url !== "string" || !parsed.url) return null;
|
|
131
|
-
return {
|
|
132
|
-
url: parsed.url,
|
|
133
|
-
username: typeof parsed.username === "string" ? parsed.username : void 0,
|
|
134
|
-
password: typeof parsed.password === "string" ? parsed.password : void 0,
|
|
135
|
-
pid: typeof parsed.pid === "number" ? parsed.pid : void 0,
|
|
136
|
-
startedAt: typeof parsed.startedAt === "string" ? parsed.startedAt : void 0
|
|
137
|
-
};
|
|
138
|
-
} catch (e) {
|
|
139
|
-
console.warn("[endpoints] Failed to parse local-opencode.runtime.json:", e);
|
|
140
|
-
return null;
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
function localEndpoint() {
|
|
144
|
-
const rt = readLocalRuntime();
|
|
145
|
-
if (!rt) return null;
|
|
146
|
-
return {
|
|
147
|
-
id: LOCAL_ELECTRON_ID,
|
|
148
|
-
label: "OpenPalm Admin",
|
|
149
|
-
url: normalizeBrowserFacingUrl(rt.url),
|
|
150
|
-
username: rt.username || DEFAULT_OPENCODE_USERNAME,
|
|
151
|
-
...rt.password ? { password: rt.password } : {},
|
|
152
|
-
kind: "local-opencode",
|
|
153
|
-
isDefault: false,
|
|
154
|
-
isLocal: true
|
|
155
|
-
};
|
|
156
|
-
}
|
|
157
|
-
function normalizeBrowserFacingUrl(raw) {
|
|
158
|
-
try {
|
|
159
|
-
const url = new URL(raw);
|
|
160
|
-
const host = url.hostname.toLowerCase().replace(/^\[|\]$/g, "");
|
|
161
|
-
if (host === "0.0.0.0" || host === "::") url.hostname = "127.0.0.1";
|
|
162
|
-
return url.toString().replace(/\/$/, "");
|
|
163
|
-
} catch {
|
|
164
|
-
return raw;
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
function readFile() {
|
|
168
|
-
maybeMigrateLegacyEndpointsFile();
|
|
169
|
-
let path = endpointsPath();
|
|
170
|
-
if (!existsSync(path)) {
|
|
171
|
-
const legacy = legacyEndpointsPath();
|
|
172
|
-
if (!existsSync(legacy)) return {
|
|
173
|
-
activeId: null,
|
|
174
|
-
endpoints: []
|
|
175
|
-
};
|
|
176
|
-
path = legacy;
|
|
177
|
-
}
|
|
178
|
-
try {
|
|
179
|
-
const parsed = JSON.parse(readFileSync(path, "utf-8"));
|
|
180
|
-
return {
|
|
181
|
-
activeId: typeof parsed.activeId === "string" ? parsed.activeId : null,
|
|
182
|
-
endpoints: Array.isArray(parsed.endpoints) ? parsed.endpoints.filter(isValidEntry) : []
|
|
183
|
-
};
|
|
184
|
-
} catch (e) {
|
|
185
|
-
console.warn("[endpoints] Failed to parse endpoints.json, resetting:", e);
|
|
186
|
-
return {
|
|
187
|
-
activeId: null,
|
|
188
|
-
endpoints: []
|
|
189
|
-
};
|
|
190
|
-
}
|
|
191
|
-
}
|
|
192
|
-
function isValidEntry(e) {
|
|
193
|
-
if (!e || typeof e !== "object") return false;
|
|
194
|
-
const o = e;
|
|
195
|
-
return typeof o.id === "string" && typeof o.label === "string" && typeof o.url === "string";
|
|
196
|
-
}
|
|
197
|
-
function writeFile(data) {
|
|
198
|
-
const path = endpointsPath();
|
|
199
|
-
mkdirSync(dirname(path), { recursive: true });
|
|
200
|
-
writeFileSync(path, JSON.stringify(data, null, 2), {
|
|
201
|
-
encoding: "utf-8",
|
|
202
|
-
mode: 384
|
|
203
|
-
});
|
|
204
|
-
try {
|
|
205
|
-
chmodSync(path, 384);
|
|
206
|
-
} catch {}
|
|
207
|
-
}
|
|
208
|
-
function defaultEndpoint() {
|
|
209
|
-
const persisted = readStackEnv(getState().homeDir);
|
|
210
|
-
const url = process.env.OP_OPENCODE_URL ?? process.env.OP_ASSISTANT_URL ?? `http://127.0.0.1:${process.env.OP_ASSISTANT_PORT ?? persisted.OP_ASSISTANT_PORT ?? "3800"}`;
|
|
211
|
-
const username = process.env.OPENCODE_SERVER_USERNAME || DEFAULT_OPENCODE_USERNAME;
|
|
212
|
-
const presetPassword = /^(true|1|yes)$/i.test((persisted.OPENCODE_AUTH ?? process.env.OPENCODE_AUTH ?? "").trim()) ? ((raw) => raw ? stripTrailingNewlines(raw) : void 0)(readSecret(getState().homeDir, "op_opencode_password") ?? void 0) || process.env.OP_OPENCODE_PASSWORD : void 0;
|
|
213
|
-
const password = process.env.OPENCODE_SERVER_PASSWORD || presetPassword || void 0;
|
|
214
|
-
return {
|
|
215
|
-
id: DEFAULT_ID,
|
|
216
|
-
label: "Local Assistant",
|
|
217
|
-
url: normalizeBrowserFacingUrl(url),
|
|
218
|
-
username,
|
|
219
|
-
password,
|
|
220
|
-
kind: "local-opencode",
|
|
221
|
-
isDefault: true
|
|
222
|
-
};
|
|
223
|
-
}
|
|
224
|
-
/**
|
|
225
|
-
* Discriminated validator that callers (admin routes) use to surface
|
|
226
|
-
* specific error messages. Plain HTTP is allowed for any host — OpenPalm is
|
|
227
|
-
* LAN-first, so remote instances on a private network are reached over http://.
|
|
228
|
-
*/
|
|
229
|
-
function validateEndpointUrl(input) {
|
|
230
|
-
let u;
|
|
231
|
-
try {
|
|
232
|
-
u = new URL(input.trim());
|
|
233
|
-
} catch {
|
|
234
|
-
return {
|
|
235
|
-
ok: false,
|
|
236
|
-
reason: "invalid_url"
|
|
237
|
-
};
|
|
238
|
-
}
|
|
239
|
-
if (u.protocol !== "http:" && u.protocol !== "https:") return {
|
|
240
|
-
ok: false,
|
|
241
|
-
reason: "invalid_scheme"
|
|
242
|
-
};
|
|
243
|
-
if (!u.hostname) return {
|
|
244
|
-
ok: false,
|
|
245
|
-
reason: "missing_host"
|
|
246
|
-
};
|
|
247
|
-
if (u.search || u.hash) return {
|
|
248
|
-
ok: false,
|
|
249
|
-
reason: "unexpected_query_or_fragment"
|
|
250
|
-
};
|
|
251
|
-
return {
|
|
252
|
-
ok: true,
|
|
253
|
-
url: u.toString().replace(/\/$/, "")
|
|
254
|
-
};
|
|
255
|
-
}
|
|
256
|
-
/**
|
|
257
|
-
* Validate a URL string — must be http(s) with a host. Returns the normalized
|
|
258
|
-
* URL or null. For finer-grained errors, use `validateEndpointUrl`.
|
|
259
|
-
*/
|
|
260
|
-
function normalizeEndpointUrl(input) {
|
|
261
|
-
const result = validateEndpointUrl(input);
|
|
262
|
-
return result.ok ? result.url : null;
|
|
263
|
-
}
|
|
264
|
-
/**
|
|
265
|
-
* Returns: [local-electron (if Electron is running it), default, ...user entries].
|
|
266
|
-
* The local-electron entry is synthesized at call time from
|
|
267
|
-
* state/local-opencode.runtime.json — never persisted to endpoints.json.
|
|
268
|
-
*/
|
|
269
|
-
function listConnections() {
|
|
270
|
-
const { endpoints } = readFile();
|
|
271
|
-
const local = localEndpoint();
|
|
272
|
-
return [
|
|
273
|
-
...local ? [local] : [],
|
|
274
|
-
defaultEndpoint(),
|
|
275
|
-
...endpoints.map((e) => ({
|
|
276
|
-
...e,
|
|
277
|
-
kind: kindOf(e),
|
|
278
|
-
isDefault: false
|
|
279
|
-
}))
|
|
280
|
-
];
|
|
281
|
-
}
|
|
282
|
-
/**
|
|
283
|
-
* Returns the active connection, falling back to the default if no active id
|
|
284
|
-
* is set OR if the active id is `local-electron` but the runtime.json isn't
|
|
285
|
-
* there (e.g. the Electron child died). Re-reads runtime.json each call so a
|
|
286
|
-
* password rotated by a new Electron launch is picked up immediately.
|
|
287
|
-
*/
|
|
288
|
-
function getActiveConnection() {
|
|
289
|
-
const { activeId, endpoints } = readFile();
|
|
290
|
-
if (activeId === LOCAL_ELECTRON_ID) {
|
|
291
|
-
const local = localEndpoint();
|
|
292
|
-
if (local) return local;
|
|
293
|
-
return defaultEndpoint();
|
|
294
|
-
}
|
|
295
|
-
if (!activeId || activeId === DEFAULT_ID) return defaultEndpoint();
|
|
296
|
-
const found = endpoints.find((e) => e.id === activeId);
|
|
297
|
-
if (!found) return defaultEndpoint();
|
|
298
|
-
return {
|
|
299
|
-
...found,
|
|
300
|
-
kind: kindOf(found),
|
|
301
|
-
isDefault: false
|
|
302
|
-
};
|
|
303
|
-
}
|
|
304
|
-
function setActiveConnectionId(id) {
|
|
305
|
-
const data = readFile();
|
|
306
|
-
if (!id || id === DEFAULT_ID) data.activeId = null;
|
|
307
|
-
else if (id === LOCAL_ELECTRON_ID) {
|
|
308
|
-
if (!localEndpoint()) throw new Error("Local OpenCode is not running (Electron only)");
|
|
309
|
-
data.activeId = LOCAL_ELECTRON_ID;
|
|
310
|
-
} else {
|
|
311
|
-
if (!data.endpoints.some((e) => e.id === id)) throw new Error(`Endpoint not found: ${id}`);
|
|
312
|
-
data.activeId = id;
|
|
313
|
-
}
|
|
314
|
-
writeFile(data);
|
|
315
|
-
return getActiveConnection();
|
|
316
|
-
}
|
|
317
|
-
/**
|
|
318
|
-
* User-addable connection kinds (#486 D2). `local-opencode` is reserved for
|
|
319
|
-
* synthesized entries (the env-derived default, the Electron local-runtime
|
|
320
|
-
* entry) and is never accepted from a write path.
|
|
321
|
-
*/
|
|
322
|
-
var USER_ADDABLE_CONNECTION_KINDS = ["remote-opencode", "openpalm-client-api"];
|
|
323
|
-
/**
|
|
324
|
-
* Normalize a guardian ('openpalm-client-api'-kind) connection URL so it
|
|
325
|
-
* always ends in `/oc` — the guardian's direct-ingress base path
|
|
326
|
-
* (#486 D2). Operates on an ALREADY `normalizeEndpointUrl`-ed string (no
|
|
327
|
-
* trailing slash), so only the `/oc` suffix logic is needed here.
|
|
328
|
-
*
|
|
329
|
-
* `packages/client/src/lib/connections/url-policy.ts` carries a deliberate
|
|
330
|
-
* CLIENT-side twin (`normalizeGuardianUrl`) with the same rule — the client
|
|
331
|
-
* artifact may not import host code and vice versa, so this is the same
|
|
332
|
-
* accepted duplication as `validateConnectionUrl`/`validateEndpointUrl`.
|
|
333
|
-
* Both are pinned by their own tests.
|
|
334
|
-
*/
|
|
335
|
-
function normalizeGuardianOcUrl(url) {
|
|
336
|
-
return url.endsWith("/oc") ? url : `${url}/oc`;
|
|
337
|
-
}
|
|
338
|
-
function assertAddableKind(kind) {
|
|
339
|
-
if (kind === void 0) return;
|
|
340
|
-
if (!USER_ADDABLE_CONNECTION_KINDS.includes(kind)) throw new Error("Invalid connection kind");
|
|
341
|
-
}
|
|
342
|
-
function addConnection(input) {
|
|
343
|
-
const label = input.label.trim();
|
|
344
|
-
if (!label) throw new Error("Label is required");
|
|
345
|
-
let url = normalizeEndpointUrl(input.url);
|
|
346
|
-
if (!url) throw new Error("URL must be a valid http(s) URL");
|
|
347
|
-
assertAddableKind(input.kind);
|
|
348
|
-
if (input.kind === "openpalm-client-api") url = normalizeGuardianOcUrl(url);
|
|
349
|
-
const data = readFile();
|
|
350
|
-
const entry = {
|
|
351
|
-
id: randomUUID(),
|
|
352
|
-
label,
|
|
353
|
-
url,
|
|
354
|
-
...input.password ? { password: input.password } : {},
|
|
355
|
-
...input.kind ? { kind: input.kind } : {}
|
|
356
|
-
};
|
|
357
|
-
data.endpoints.push(entry);
|
|
358
|
-
writeFile(data);
|
|
359
|
-
return entry;
|
|
360
|
-
}
|
|
361
|
-
function updateConnection(id, patch) {
|
|
362
|
-
if (id === DEFAULT_ID) throw new Error("Cannot edit the default endpoint");
|
|
363
|
-
if (id === LOCAL_ELECTRON_ID) throw new Error("Cannot edit the local Electron OpenCode entry (it is ephemeral and per-launch)");
|
|
364
|
-
assertAddableKind(patch.kind);
|
|
365
|
-
const data = readFile();
|
|
366
|
-
const idx = data.endpoints.findIndex((e) => e.id === id);
|
|
367
|
-
if (idx === -1) throw new Error(`Endpoint not found: ${id}`);
|
|
368
|
-
const next = { ...data.endpoints[idx] };
|
|
369
|
-
if (patch.label !== void 0) {
|
|
370
|
-
const label = patch.label.trim();
|
|
371
|
-
if (!label) throw new Error("Label cannot be empty");
|
|
372
|
-
next.label = label;
|
|
373
|
-
}
|
|
374
|
-
if (patch.url !== void 0) {
|
|
375
|
-
const url = normalizeEndpointUrl(patch.url);
|
|
376
|
-
if (!url) throw new Error("URL must be a valid http(s) URL");
|
|
377
|
-
next.url = url;
|
|
378
|
-
}
|
|
379
|
-
if (patch.password === null) delete next.password;
|
|
380
|
-
else if (typeof patch.password === "string") next.password = patch.password;
|
|
381
|
-
if (patch.kind !== void 0) next.kind = patch.kind;
|
|
382
|
-
if (next.kind === "openpalm-client-api") next.url = normalizeGuardianOcUrl(next.url);
|
|
383
|
-
data.endpoints[idx] = next;
|
|
384
|
-
writeFile(data);
|
|
385
|
-
return next;
|
|
386
|
-
}
|
|
387
|
-
function deleteConnection(id) {
|
|
388
|
-
if (id === DEFAULT_ID) throw new Error("Cannot delete the default endpoint");
|
|
389
|
-
if (id === LOCAL_ELECTRON_ID) throw new Error("Cannot delete the local Electron OpenCode entry (managed by Electron lifecycle)");
|
|
390
|
-
const data = readFile();
|
|
391
|
-
const idx = data.endpoints.findIndex((e) => e.id === id);
|
|
392
|
-
if (idx === -1) throw new Error(`Endpoint not found: ${id}`);
|
|
393
|
-
data.endpoints.splice(idx, 1);
|
|
394
|
-
if (data.activeId === id) data.activeId = null;
|
|
395
|
-
writeFile(data);
|
|
396
|
-
}
|
|
397
|
-
async function probeEndpoint(endpoint) {
|
|
398
|
-
const headers = new Headers();
|
|
399
|
-
if (endpoint.password) {
|
|
400
|
-
const username = endpoint.username ?? DEFAULT_OPENCODE_USERNAME;
|
|
401
|
-
headers.set("authorization", basicAuthHeader(username, endpoint.password));
|
|
402
|
-
}
|
|
403
|
-
const probeUrl = endpoint.kind === "openpalm-client-api" ? `${endpoint.url}/session` : endpoint.url;
|
|
404
|
-
try {
|
|
405
|
-
const response = await fetch(probeUrl, {
|
|
406
|
-
method: "GET",
|
|
407
|
-
headers,
|
|
408
|
-
redirect: "manual",
|
|
409
|
-
signal: AbortSignal.timeout(2e3)
|
|
410
|
-
});
|
|
411
|
-
if (response.status === 401 || response.status === 403) return {
|
|
412
|
-
id: endpoint.id,
|
|
413
|
-
name: endpoint.label,
|
|
414
|
-
url: endpoint.url,
|
|
415
|
-
state: "unauthorized",
|
|
416
|
-
detail: `HTTP ${response.status}`
|
|
417
|
-
};
|
|
418
|
-
if (response.ok || response.status >= 300 && response.status < 400) return {
|
|
419
|
-
id: endpoint.id,
|
|
420
|
-
name: endpoint.label,
|
|
421
|
-
url: endpoint.url,
|
|
422
|
-
state: "accessible"
|
|
423
|
-
};
|
|
424
|
-
return {
|
|
425
|
-
id: endpoint.id,
|
|
426
|
-
name: endpoint.label,
|
|
427
|
-
url: endpoint.url,
|
|
428
|
-
state: "unreachable",
|
|
429
|
-
detail: `HTTP ${response.status}`
|
|
430
|
-
};
|
|
431
|
-
} catch (error) {
|
|
432
|
-
return {
|
|
433
|
-
id: endpoint.id,
|
|
434
|
-
name: endpoint.label,
|
|
435
|
-
url: endpoint.url,
|
|
436
|
-
state: "unreachable",
|
|
437
|
-
detail: error instanceof Error ? error.message : String(error)
|
|
438
|
-
};
|
|
439
|
-
}
|
|
440
|
-
}
|
|
441
|
-
async function listRemoteStatuses() {
|
|
442
|
-
if (remoteStatusCache && remoteStatusCache.expiresAt > Date.now()) return remoteStatusCache.value.map((status) => ({ ...status }));
|
|
443
|
-
const statuses = await Promise.all(listConnections().map((endpoint) => probeEndpoint(endpoint)));
|
|
444
|
-
remoteStatusCache = {
|
|
445
|
-
value: statuses,
|
|
446
|
-
expiresAt: Date.now() + 5e3
|
|
447
|
-
};
|
|
448
|
-
return statuses.map((status) => ({ ...status }));
|
|
449
|
-
}
|
|
450
|
-
|
|
451
|
-
export { USER_ADDABLE_CONNECTION_KINDS as U, addConnection as a, basicAuthHeader as b, listRemoteStatuses as c, deleteConnection as d, getActiveConnection as g, listConnections as l, setActiveConnectionId as s, updateConnection as u, validateEndpointUrl as v };
|
|
452
|
-
//# sourceMappingURL=endpoints-CnnGlw2U.js.map
|