@openpalm/ui 0.12.0-rc.2 → 0.12.0-rc.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/.openpalm-ui-version +1 -1
- package/build/client/_app/immutable/assets/4.4BLkUSeP.css +1 -0
- package/build/client/_app/immutable/assets/4.4BLkUSeP.css.br +0 -0
- package/build/client/_app/immutable/assets/4.4BLkUSeP.css.gz +0 -0
- package/build/client/_app/immutable/chunks/BqFl1zbV.js +5 -0
- package/build/client/_app/immutable/chunks/BqFl1zbV.js.br +0 -0
- package/build/client/_app/immutable/chunks/BqFl1zbV.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CmFpvFC0.js +3 -0
- package/build/client/_app/immutable/chunks/CmFpvFC0.js.br +0 -0
- package/build/client/_app/immutable/chunks/CmFpvFC0.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CuPMacDQ.js +1 -0
- package/build/client/_app/immutable/chunks/CuPMacDQ.js.br +2 -0
- package/build/client/_app/immutable/chunks/CuPMacDQ.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{DOWJsT_T.js → DHUWL49y.js} +1 -1
- package/build/client/_app/immutable/chunks/DHUWL49y.js.br +0 -0
- package/build/client/_app/immutable/chunks/DHUWL49y.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{BEuC-NYT.js → DL5sMDxv.js} +1 -1
- package/build/client/_app/immutable/chunks/DL5sMDxv.js.br +0 -0
- package/build/client/_app/immutable/chunks/DL5sMDxv.js.gz +0 -0
- package/build/client/_app/immutable/chunks/qjfxE7Kl.js +1 -0
- package/build/client/_app/immutable/chunks/qjfxE7Kl.js.br +0 -0
- package/build/client/_app/immutable/chunks/qjfxE7Kl.js.gz +0 -0
- package/build/client/_app/immutable/entry/{app.Dgd8Sqiz.js → app.CafiV7-w.js} +2 -2
- package/build/client/_app/immutable/entry/app.CafiV7-w.js.br +0 -0
- package/build/client/_app/immutable/entry/app.CafiV7-w.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.D9RjvJJI.js +1 -0
- package/build/client/_app/immutable/entry/start.D9RjvJJI.js.br +0 -0
- package/build/client/_app/immutable/entry/start.D9RjvJJI.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{0.DEcud9DA.js → 0.CoKytf3n.js} +1 -1
- package/build/client/_app/immutable/nodes/0.CoKytf3n.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.CoKytf3n.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{1.DiTVmAJ4.js → 1.Bds7gMIH.js} +1 -1
- package/build/client/_app/immutable/nodes/1.Bds7gMIH.js.br +2 -0
- package/build/client/_app/immutable/nodes/1.Bds7gMIH.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.bkv3exaP.js +130 -0
- package/build/client/_app/immutable/nodes/4.bkv3exaP.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.bkv3exaP.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{5.WMP0f8pf.js → 5.CGnOiX1Q.js} +2 -2
- package/build/client/_app/immutable/nodes/5.CGnOiX1Q.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.CGnOiX1Q.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{6.9o6Bephx.js → 6.BW2RFNrq.js} +1 -1
- package/build/client/_app/immutable/nodes/6.BW2RFNrq.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.BW2RFNrq.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{7._N3I_xWy.js → 7.B3oQeWT9.js} +1 -1
- package/build/client/_app/immutable/nodes/7.B3oQeWT9.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.B3oQeWT9.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{8.aWZ5mSKB.js → 8.BzjCWne1.js} +1 -1
- package/build/client/_app/immutable/nodes/8.BzjCWne1.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.BzjCWne1.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-u2E6UMPO.js → 0-_Ek7fSWr.js} +3 -3
- package/build/server/chunks/{0-u2E6UMPO.js.map → 0-_Ek7fSWr.js.map} +1 -1
- package/build/server/chunks/1-DXcmr_zA.js +9 -0
- package/build/server/chunks/{1-BdcHiFUZ.js.map → 1-DXcmr_zA.js.map} +1 -1
- package/build/server/chunks/{10-DMi_4x3S.js → 10-BW3Y4qaZ.js} +4 -4
- package/build/server/chunks/{10-DMi_4x3S.js.map → 10-BW3Y4qaZ.js.map} +1 -1
- package/build/server/chunks/4-BY7QM2MS.js +9 -0
- package/build/server/chunks/{4-siztlnPA.js.map → 4-BY7QM2MS.js.map} +1 -1
- package/build/server/chunks/5-P-f6Al-B.js +9 -0
- package/build/server/chunks/{5-DR1iBcbj.js.map → 5-P-f6Al-B.js.map} +1 -1
- package/build/server/chunks/6-BHZeYa5G.js +9 -0
- package/build/server/chunks/{6-BdZadUUO.js.map → 6-BHZeYa5G.js.map} +1 -1
- package/build/server/chunks/7-eE6c3_3B.js +9 -0
- package/build/server/chunks/{7-CjmZOzkF.js.map → 7-eE6c3_3B.js.map} +1 -1
- package/build/server/chunks/{8-DVpEHTHq.js → 8-DJTatpgo.js} +3 -3
- package/build/server/chunks/{8-DVpEHTHq.js.map → 8-DJTatpgo.js.map} +1 -1
- package/build/server/chunks/{ChatMessage-BNxQgrRW.js → ChatMessage-DqfLIJ0l.js} +2 -2
- package/build/server/chunks/{ChatMessage-BNxQgrRW.js.map → ChatMessage-DqfLIJ0l.js.map} +1 -1
- package/build/server/chunks/{Navbar-UVOusnw-.js → Navbar-BUZwbKR7.js} +4 -4
- package/build/server/chunks/{Navbar-UVOusnw-.js.map → Navbar-BUZwbKR7.js.map} +1 -1
- package/build/server/chunks/{_layout.svelte-DKvvz-xQ.js → _layout.svelte-CFKjimed.js} +2 -2
- package/build/server/chunks/{_layout.svelte-DKvvz-xQ.js.map → _layout.svelte-CFKjimed.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-CMyq-t3Q.js → _page.svelte-BGI4E82g.js} +185 -32
- package/build/server/chunks/_page.svelte-BGI4E82g.js.map +1 -0
- package/build/server/chunks/{_page.svelte-B5xh8SJ5.js → _page.svelte-BNJwzskB.js} +7 -7
- package/build/server/chunks/{_page.svelte-B5xh8SJ5.js.map → _page.svelte-BNJwzskB.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-w4SS3sVN.js → _page.svelte-BqrpD9EJ.js} +6 -6
- package/build/server/chunks/{_page.svelte-w4SS3sVN.js.map → _page.svelte-BqrpD9EJ.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-B7FQDg28.js → _page.svelte-CLi7npId.js} +6 -6
- package/build/server/chunks/{_page.svelte-B7FQDg28.js.map → _page.svelte-CLi7npId.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-D4Zivreu.js → _page.svelte-Da2QrUlJ.js} +3 -3
- package/build/server/chunks/{_page.svelte-D4Zivreu.js.map → _page.svelte-Da2QrUlJ.js.map} +1 -1
- package/build/server/chunks/{_server.ts-C_c_15ac.js → _server.ts--5gGceMl.js} +5 -5
- package/build/server/chunks/{_server.ts-C_c_15ac.js.map → _server.ts--5gGceMl.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B7Fkprd8.js → _server.ts-4J6w-r81.js} +2 -2
- package/build/server/chunks/{_server.ts-B7Fkprd8.js.map → _server.ts-4J6w-r81.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Bf3mh1Vw.js → _server.ts-8PqopElV.js} +5 -5
- package/build/server/chunks/{_server.ts-Bf3mh1Vw.js.map → _server.ts-8PqopElV.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DPpj-ZUv.js → _server.ts-B28oMCZG.js} +5 -5
- package/build/server/chunks/{_server.ts-DPpj-ZUv.js.map → _server.ts-B28oMCZG.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CfAx4ndA.js → _server.ts-B2veS97o.js} +5 -5
- package/build/server/chunks/{_server.ts-CfAx4ndA.js.map → _server.ts-B2veS97o.js.map} +1 -1
- package/build/server/chunks/{_server.ts-bClum6wa.js → _server.ts-B6X0dkuW.js} +5 -5
- package/build/server/chunks/{_server.ts-bClum6wa.js.map → _server.ts-B6X0dkuW.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B1Ka3iiX.js → _server.ts-B9U_bYQy.js} +6 -6
- package/build/server/chunks/{_server.ts-B1Ka3iiX.js.map → _server.ts-B9U_bYQy.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BHIqLHCr.js → _server.ts-BDjrSCF8.js} +2 -2
- package/build/server/chunks/{_server.ts-BHIqLHCr.js.map → _server.ts-BDjrSCF8.js.map} +1 -1
- package/build/server/chunks/{_server.ts-gLH0uvQH.js → _server.ts-BHJzuoOM.js} +6 -6
- package/build/server/chunks/{_server.ts-gLH0uvQH.js.map → _server.ts-BHJzuoOM.js.map} +1 -1
- package/build/server/chunks/{_server.ts-748DtXrC.js → _server.ts-BI3XQ7Fe.js} +5 -5
- package/build/server/chunks/{_server.ts-748DtXrC.js.map → _server.ts-BI3XQ7Fe.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BR_JejQG.js → _server.ts-BLyLxx8a.js} +5 -5
- package/build/server/chunks/{_server.ts-BR_JejQG.js.map → _server.ts-BLyLxx8a.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CN8iu9En.js → _server.ts-BNqC9EUT.js} +5 -5
- package/build/server/chunks/{_server.ts-CN8iu9En.js.map → _server.ts-BNqC9EUT.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CCEnPIKA.js → _server.ts-BP--7Yt5.js} +5 -5
- package/build/server/chunks/{_server.ts-CCEnPIKA.js.map → _server.ts-BP--7Yt5.js.map} +1 -1
- package/build/server/chunks/{_server.ts-6sLoCHl6.js → _server.ts-BTG7yKQJ.js} +5 -5
- package/build/server/chunks/{_server.ts-6sLoCHl6.js.map → _server.ts-BTG7yKQJ.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DQP6uEx5.js → _server.ts-BVvTNLyM.js} +5 -5
- package/build/server/chunks/{_server.ts-DQP6uEx5.js.map → _server.ts-BVvTNLyM.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CDLW9TPG.js → _server.ts-BddFxHWB.js} +6 -6
- package/build/server/chunks/{_server.ts-CDLW9TPG.js.map → _server.ts-BddFxHWB.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CzTX8a_p.js → _server.ts-BiL6n-uG.js} +5 -5
- package/build/server/chunks/{_server.ts-CzTX8a_p.js.map → _server.ts-BiL6n-uG.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BhzFTv-h.js → _server.ts-Bnc-nxXp.js} +6 -6
- package/build/server/chunks/{_server.ts-BhzFTv-h.js.map → _server.ts-Bnc-nxXp.js.map} +1 -1
- package/build/server/chunks/{_server.ts-D2tkCP8q.js → _server.ts-BobwONzr.js} +5 -5
- package/build/server/chunks/{_server.ts-D2tkCP8q.js.map → _server.ts-BobwONzr.js.map} +1 -1
- package/build/server/chunks/{_server.ts-C9E9tYAO.js → _server.ts-BpNoIDkC.js} +5 -5
- package/build/server/chunks/{_server.ts-C9E9tYAO.js.map → _server.ts-BpNoIDkC.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Dr6ShsbQ.js → _server.ts-BqBnHeP7.js} +5 -5
- package/build/server/chunks/{_server.ts-Dr6ShsbQ.js.map → _server.ts-BqBnHeP7.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Dpk6ddyU.js → _server.ts-Bqs67HUU.js} +7 -7
- package/build/server/chunks/{_server.ts-Dpk6ddyU.js.map → _server.ts-Bqs67HUU.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DT8fIE9B.js → _server.ts-BteARe-C.js} +5 -5
- package/build/server/chunks/{_server.ts-DT8fIE9B.js.map → _server.ts-BteARe-C.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BdN5NtL4.js → _server.ts-Bx9WEYbj.js} +5 -5
- package/build/server/chunks/{_server.ts-BdN5NtL4.js.map → _server.ts-Bx9WEYbj.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BaTXv_bR.js → _server.ts-C1ZgpST1.js} +5 -5
- package/build/server/chunks/{_server.ts-BaTXv_bR.js.map → _server.ts-C1ZgpST1.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BEgkYvNh.js → _server.ts-C5bfYlSP.js} +5 -5
- package/build/server/chunks/{_server.ts-BEgkYvNh.js.map → _server.ts-C5bfYlSP.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CILn0WEi.js → _server.ts-C77r_Slf.js} +5 -5
- package/build/server/chunks/{_server.ts-CILn0WEi.js.map → _server.ts-C77r_Slf.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CxWx02dy.js → _server.ts-CK46ky8H.js} +5 -5
- package/build/server/chunks/_server.ts-CK46ky8H.js.map +1 -0
- package/build/server/chunks/{_server.ts-Ts6pcZ0d.js → _server.ts-CKF9vpjm.js} +5 -5
- package/build/server/chunks/{_server.ts-Ts6pcZ0d.js.map → _server.ts-CKF9vpjm.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DsbN7dr7.js → _server.ts-CPmZZ9aQ.js} +5 -5
- package/build/server/chunks/{_server.ts-DsbN7dr7.js.map → _server.ts-CPmZZ9aQ.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CgPqNf7-.js → _server.ts-CTMjNL2a.js} +5 -5
- package/build/server/chunks/{_server.ts-CgPqNf7-.js.map → _server.ts-CTMjNL2a.js.map} +1 -1
- package/build/server/chunks/{_server.ts-MJdHZvPF.js → _server.ts-CTQGj2tV.js} +5 -5
- package/build/server/chunks/_server.ts-CTQGj2tV.js.map +1 -0
- package/build/server/chunks/{_server.ts-DMTF4KjV.js → _server.ts-CVV2PdRo.js} +2 -2
- package/build/server/chunks/{_server.ts-DMTF4KjV.js.map → _server.ts-CVV2PdRo.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CV30eOSb.js → _server.ts-CWFma6OW.js} +6 -6
- package/build/server/chunks/{_server.ts-CV30eOSb.js.map → _server.ts-CWFma6OW.js.map} +1 -1
- package/build/server/chunks/{_server.ts-C3ic1HZf.js → _server.ts-CaocPhJi.js} +5 -5
- package/build/server/chunks/{_server.ts-C3ic1HZf.js.map → _server.ts-CaocPhJi.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Cscu5y6A.js → _server.ts-CfJR6lH-.js} +6 -6
- package/build/server/chunks/{_server.ts-Cscu5y6A.js.map → _server.ts-CfJR6lH-.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CZ9rxA09.js → _server.ts-ClwJWqVa.js} +5 -5
- package/build/server/chunks/{_server.ts-CZ9rxA09.js.map → _server.ts-ClwJWqVa.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CTKPnd64.js → _server.ts-CrY-tcDK.js} +7 -7
- package/build/server/chunks/{_server.ts-CTKPnd64.js.map → _server.ts-CrY-tcDK.js.map} +1 -1
- package/build/server/chunks/{_server.ts-op5C3XGb.js → _server.ts-Cs8lC4CS.js} +6 -6
- package/build/server/chunks/{_server.ts-op5C3XGb.js.map → _server.ts-Cs8lC4CS.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DEV3GiN8.js → _server.ts-CxBdr3hE.js} +5 -5
- package/build/server/chunks/{_server.ts-DEV3GiN8.js.map → _server.ts-CxBdr3hE.js.map} +1 -1
- package/build/server/chunks/{_server.ts-RagJb3I4.js → _server.ts-D-u20jUU.js} +5 -5
- package/build/server/chunks/{_server.ts-RagJb3I4.js.map → _server.ts-D-u20jUU.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Djimbzpw.js → _server.ts-D9dsMRF-.js} +7 -7
- package/build/server/chunks/{_server.ts-Djimbzpw.js.map → _server.ts-D9dsMRF-.js.map} +1 -1
- package/build/server/chunks/{_server.ts-D5WwDggN.js → _server.ts-DAQcUe9k.js} +5 -5
- package/build/server/chunks/{_server.ts-D5WwDggN.js.map → _server.ts-DAQcUe9k.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BMeLIoiB.js → _server.ts-DAlXBvhR.js} +6 -6
- package/build/server/chunks/{_server.ts-BMeLIoiB.js.map → _server.ts-DAlXBvhR.js.map} +1 -1
- package/build/server/chunks/_server.ts-DC8kKPsd.js +81 -0
- package/build/server/chunks/_server.ts-DC8kKPsd.js.map +1 -0
- package/build/server/chunks/{_server.ts-Cs7f-gaR.js → _server.ts-DGUVJH31.js} +6 -6
- package/build/server/chunks/{_server.ts-Cs7f-gaR.js.map → _server.ts-DGUVJH31.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DFhNnn-G.js → _server.ts-DHfTcOkp.js} +5 -5
- package/build/server/chunks/{_server.ts-DFhNnn-G.js.map → _server.ts-DHfTcOkp.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CCtCwyZb.js → _server.ts-DMH-RbZr.js} +6 -6
- package/build/server/chunks/{_server.ts-CCtCwyZb.js.map → _server.ts-DMH-RbZr.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CSN60plL.js → _server.ts-DP2uRN66.js} +2 -2
- package/build/server/chunks/{_server.ts-CSN60plL.js.map → _server.ts-DP2uRN66.js.map} +1 -1
- package/build/server/chunks/{_server.ts-JPsLUf_g.js → _server.ts-DR2bRoGJ.js} +5 -5
- package/build/server/chunks/{_server.ts-JPsLUf_g.js.map → _server.ts-DR2bRoGJ.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DjJu23jV.js → _server.ts-DX2VL0w3.js} +5 -5
- package/build/server/chunks/{_server.ts-DjJu23jV.js.map → _server.ts-DX2VL0w3.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Dv7xll_B.js → _server.ts-DY0Tkqlv.js} +6 -6
- package/build/server/chunks/{_server.ts-Dv7xll_B.js.map → _server.ts-DY0Tkqlv.js.map} +1 -1
- package/build/server/chunks/{_server.ts-zUZknmZx.js → _server.ts-DZ5v5q0V.js} +6 -6
- package/build/server/chunks/{_server.ts-zUZknmZx.js.map → _server.ts-DZ5v5q0V.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BCKweCGM.js → _server.ts-DZlNWTv1.js} +4 -4
- package/build/server/chunks/{_server.ts-BCKweCGM.js.map → _server.ts-DZlNWTv1.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DPw4QRWb.js → _server.ts-D_5BJC_z.js} +5 -5
- package/build/server/chunks/{_server.ts-DPw4QRWb.js.map → _server.ts-D_5BJC_z.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BSxbdNXo.js → _server.ts-Da_AbetR.js} +5 -5
- package/build/server/chunks/{_server.ts-BSxbdNXo.js.map → _server.ts-Da_AbetR.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BkxwpAv2.js → _server.ts-DbEaJJqa.js} +5 -5
- package/build/server/chunks/{_server.ts-BkxwpAv2.js.map → _server.ts-DbEaJJqa.js.map} +1 -1
- package/build/server/chunks/_server.ts-DnC_IrzP.js +78 -0
- package/build/server/chunks/_server.ts-DnC_IrzP.js.map +1 -0
- package/build/server/chunks/{_server.ts-Cc-c2ehY.js → _server.ts-DpAumRrq.js} +5 -5
- package/build/server/chunks/{_server.ts-Cc-c2ehY.js.map → _server.ts-DpAumRrq.js.map} +1 -1
- package/build/server/chunks/_server.ts-Dq1UL_W-.js +89 -0
- package/build/server/chunks/_server.ts-Dq1UL_W-.js.map +1 -0
- package/build/server/chunks/{_server.ts-Ieve8Oxl.js → _server.ts-DuDeloL8.js} +8 -8
- package/build/server/chunks/{_server.ts-Ieve8Oxl.js.map → _server.ts-DuDeloL8.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BiwKKu1y.js → _server.ts-EZhgk1ej.js} +5 -5
- package/build/server/chunks/{_server.ts-BiwKKu1y.js.map → _server.ts-EZhgk1ej.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DAv3C7oW.js → _server.ts-J-kbq-R4.js} +5 -5
- package/build/server/chunks/{_server.ts-DAv3C7oW.js.map → _server.ts-J-kbq-R4.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BXOIslIH.js → _server.ts-MkaNzvkX.js} +5 -5
- package/build/server/chunks/{_server.ts-BXOIslIH.js.map → _server.ts-MkaNzvkX.js.map} +1 -1
- package/build/server/chunks/{_server.ts-lmfAKx6b.js → _server.ts-NKH2c4tC.js} +7 -7
- package/build/server/chunks/{_server.ts-lmfAKx6b.js.map → _server.ts-NKH2c4tC.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B4WEAp6B.js → _server.ts-UDLeVWXU.js} +18 -6
- package/build/server/chunks/_server.ts-UDLeVWXU.js.map +1 -0
- package/build/server/chunks/{_server.ts-DRpXmKSI.js → _server.ts-X8_yz_cF.js} +6 -6
- package/build/server/chunks/{_server.ts-DRpXmKSI.js.map → _server.ts-X8_yz_cF.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B2kJ3mfg.js → _server.ts-XqgZHMH_.js} +7 -7
- package/build/server/chunks/{_server.ts-B2kJ3mfg.js.map → _server.ts-XqgZHMH_.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BFp9Fobi.js → _server.ts-YAPI25bu.js} +4 -4
- package/build/server/chunks/{_server.ts-BFp9Fobi.js.map → _server.ts-YAPI25bu.js.map} +1 -1
- package/build/server/chunks/{_server.ts-QdyZiBuA.js → _server.ts-_7nvJE2X.js} +5 -5
- package/build/server/chunks/{_server.ts-QdyZiBuA.js.map → _server.ts-_7nvJE2X.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Cwuo2EyS.js → _server.ts-aC8GMqDc.js} +5 -5
- package/build/server/chunks/{_server.ts-Cwuo2EyS.js.map → _server.ts-aC8GMqDc.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B_du9gRB.js → _server.ts-dRdq38xL.js} +5 -5
- package/build/server/chunks/{_server.ts-B_du9gRB.js.map → _server.ts-dRdq38xL.js.map} +1 -1
- package/build/server/chunks/{_server.ts-VuZwBycD.js → _server.ts-f-vnJ7Ie.js} +5 -5
- package/build/server/chunks/{_server.ts-VuZwBycD.js.map → _server.ts-f-vnJ7Ie.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CMytohFo.js → _server.ts-fCMXRvRH.js} +5 -5
- package/build/server/chunks/{_server.ts-CMytohFo.js.map → _server.ts-fCMXRvRH.js.map} +1 -1
- package/build/server/chunks/{_server.ts-4Pwhm5iv.js → _server.ts-fn52Uf3f.js} +5 -5
- package/build/server/chunks/{_server.ts-4Pwhm5iv.js.map → _server.ts-fn52Uf3f.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B25xvhiX.js → _server.ts-iw5QZKgP.js} +5 -5
- package/build/server/chunks/{_server.ts-B25xvhiX.js.map → _server.ts-iw5QZKgP.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Byc_SyKx.js → _server.ts-lU516yVf.js} +5 -5
- package/build/server/chunks/{_server.ts-Byc_SyKx.js.map → _server.ts-lU516yVf.js.map} +1 -1
- package/build/server/chunks/_server.ts-mDvjMxar.js +64 -0
- package/build/server/chunks/_server.ts-mDvjMxar.js.map +1 -0
- package/build/server/chunks/{_server.ts-5cUQFkT_.js → _server.ts-n_99rmOB.js} +2 -2
- package/build/server/chunks/{_server.ts-5cUQFkT_.js.map → _server.ts-n_99rmOB.js.map} +1 -1
- package/build/server/chunks/{_server.ts-9zKJx2eV.js → _server.ts-pJnbal79.js} +5 -5
- package/build/server/chunks/{_server.ts-9zKJx2eV.js.map → _server.ts-pJnbal79.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DY4maxIB.js → _server.ts-rEZaxK90.js} +6 -6
- package/build/server/chunks/{_server.ts-DY4maxIB.js.map → _server.ts-rEZaxK90.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DE_dFybU.js → _server.ts-tyT3Bjv3.js} +7 -7
- package/build/server/chunks/{_server.ts-DE_dFybU.js.map → _server.ts-tyT3Bjv3.js.map} +1 -1
- package/build/server/chunks/{_server.ts-MORzCMU7.js → _server.ts-ug73AQNb.js} +5 -5
- package/build/server/chunks/{_server.ts-MORzCMU7.js.map → _server.ts-ug73AQNb.js.map} +1 -1
- package/build/server/chunks/{_server.ts-D4B9IkKh.js → _server.ts-ugLDRTpb.js} +5 -5
- package/build/server/chunks/{_server.ts-D4B9IkKh.js.map → _server.ts-ugLDRTpb.js.map} +1 -1
- package/build/server/chunks/{addon-helpers-CoPzjA3s.js → addon-helpers-CkQjHBvL.js} +3 -3
- package/build/server/chunks/{addon-helpers-CoPzjA3s.js.map → addon-helpers-CkQjHBvL.js.map} +1 -1
- package/build/server/chunks/{akm-BS59M7h3.js → akm-_cUsiv9b.js} +2 -2
- package/build/server/chunks/{akm-BS59M7h3.js.map → akm-_cUsiv9b.js.map} +1 -1
- package/build/server/chunks/{catalog-DAQWike4.js → catalog-CVQgQDZT.js} +5 -5
- package/build/server/chunks/{catalog-DAQWike4.js.map → catalog-CVQgQDZT.js.map} +1 -1
- package/build/server/chunks/{client-B3vN-Uvc.js → client-CK_EEC7q.js} +2 -2
- package/build/server/chunks/{client-B3vN-Uvc.js.map → client-CK_EEC7q.js.map} +1 -1
- package/build/server/chunks/{config-Bdb4ZTos.js → config-CW8zrJxw.js} +2 -2
- package/build/server/chunks/{config-Bdb4ZTos.js.map → config-CW8zrJxw.js.map} +1 -1
- package/build/server/chunks/{docker-DaU_SNhi.js → docker-BxDkWUiU.js} +2 -2
- package/build/server/chunks/{docker-DaU_SNhi.js.map → docker-BxDkWUiU.js.map} +1 -1
- package/build/server/chunks/{endpoints-1byh0xs8.js → endpoints-C9sjcucN.js} +2 -2
- package/build/server/chunks/{endpoints-1byh0xs8.js.map → endpoints-C9sjcucN.js.map} +1 -1
- package/build/server/chunks/{environment-BQh6a8iU.js → environment-D344CnXa.js} +2 -2
- package/build/server/chunks/{environment-BQh6a8iU.js.map → environment-D344CnXa.js.map} +1 -1
- package/build/server/chunks/{error.svelte-CEj0_dRA.js → error.svelte-CI7YrCLE.js} +4 -4
- package/build/server/chunks/{error.svelte-CEj0_dRA.js.map → error.svelte-CI7YrCLE.js.map} +1 -1
- package/build/server/chunks/{helpers-Be-wOei2.js → helpers-Bebo0tHj.js} +3 -3
- package/build/server/chunks/{helpers-Be-wOei2.js.map → helpers-Bebo0tHj.js.map} +1 -1
- package/build/server/chunks/{hooks.server-DlA1ck_e.js → hooks.server-ixIaeil8.js} +6 -6
- package/build/server/chunks/{hooks.server-DlA1ck_e.js.map → hooks.server-ixIaeil8.js.map} +1 -1
- package/build/server/chunks/{http-BbFgukqs.js → http-B9H_dpeX.js} +2 -2
- package/build/server/chunks/{http-BbFgukqs.js.map → http-B9H_dpeX.js.map} +1 -1
- package/build/server/chunks/{internal-CP-qQJfY.js → internal-Da04QZzQ.js} +3 -3
- package/build/server/chunks/{internal-CP-qQJfY.js.map → internal-Da04QZzQ.js.map} +1 -1
- package/build/server/chunks/{session-cookie-C-kIy9pI.js → session-cookie-DI4jIKdM.js} +2 -2
- package/build/server/chunks/{session-cookie-C-kIy9pI.js.map → session-cookie-DI4jIKdM.js.map} +1 -1
- package/build/server/chunks/{setup-deploy-BL_wmz6j.js → setup-deploy-NZRJZiNw.js} +2 -2
- package/build/server/chunks/{setup-deploy-BL_wmz6j.js.map → setup-deploy-NZRJZiNw.js.map} +1 -1
- package/build/server/chunks/{src-BEj0DuSB.js → src-kpR902Zr.js} +542 -122
- package/build/server/chunks/src-kpR902Zr.js.map +1 -0
- package/build/server/chunks/{state-DAPDF26p.js → state-TG4xDwlK.js} +2 -2
- package/build/server/chunks/{state-DAPDF26p.js.map → state-TG4xDwlK.js.map} +1 -1
- package/build/server/chunks/{state2-3fEu-ReG.js → state2-BqCIx1V7.js} +2 -2
- package/build/server/chunks/{state2-3fEu-ReG.js.map → state2-BqCIx1V7.js.map} +1 -1
- package/build/server/chunks/{theme-state.svelte-CUVpUHOv.js → theme-state.svelte-8qSluhfu.js} +35 -4
- package/build/server/chunks/theme-state.svelte-8qSluhfu.js.map +1 -0
- package/build/server/index.js +2 -2
- package/build/server/manifest.js +117 -89
- package/build/server/manifest.js.map +1 -1
- package/package.json +2 -2
- package/build/client/_app/immutable/assets/4.D-9LGiQD.css +0 -1
- package/build/client/_app/immutable/assets/4.D-9LGiQD.css.br +0 -0
- package/build/client/_app/immutable/assets/4.D-9LGiQD.css.gz +0 -0
- package/build/client/_app/immutable/chunks/B7L0wlSY.js +0 -1
- package/build/client/_app/immutable/chunks/B7L0wlSY.js.br +0 -2
- package/build/client/_app/immutable/chunks/B7L0wlSY.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BEuC-NYT.js.br +0 -0
- package/build/client/_app/immutable/chunks/BEuC-NYT.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BXh0hlRI.js +0 -1
- package/build/client/_app/immutable/chunks/BXh0hlRI.js.br +0 -0
- package/build/client/_app/immutable/chunks/BXh0hlRI.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DHRKaBFV.js +0 -3
- package/build/client/_app/immutable/chunks/DHRKaBFV.js.br +0 -0
- package/build/client/_app/immutable/chunks/DHRKaBFV.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DOWJsT_T.js.br +0 -0
- package/build/client/_app/immutable/chunks/DOWJsT_T.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DkCRM8d5.js +0 -5
- package/build/client/_app/immutable/chunks/DkCRM8d5.js.br +0 -0
- package/build/client/_app/immutable/chunks/DkCRM8d5.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.Dgd8Sqiz.js.br +0 -0
- package/build/client/_app/immutable/entry/app.Dgd8Sqiz.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.DN4LafZw.js +0 -1
- package/build/client/_app/immutable/entry/start.DN4LafZw.js.br +0 -1
- package/build/client/_app/immutable/entry/start.DN4LafZw.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.DEcud9DA.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.DEcud9DA.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.DiTVmAJ4.js.br +0 -3
- package/build/client/_app/immutable/nodes/1.DiTVmAJ4.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.C-pAk-ut.js +0 -121
- package/build/client/_app/immutable/nodes/4.C-pAk-ut.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.C-pAk-ut.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.WMP0f8pf.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.WMP0f8pf.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.9o6Bephx.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.9o6Bephx.js.gz +0 -0
- package/build/client/_app/immutable/nodes/7._N3I_xWy.js.br +0 -0
- package/build/client/_app/immutable/nodes/7._N3I_xWy.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.aWZ5mSKB.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.aWZ5mSKB.js.gz +0 -0
- package/build/server/chunks/1-BdcHiFUZ.js +0 -9
- package/build/server/chunks/4-siztlnPA.js +0 -9
- package/build/server/chunks/5-DR1iBcbj.js +0 -9
- package/build/server/chunks/6-BdZadUUO.js +0 -9
- package/build/server/chunks/7-CjmZOzkF.js +0 -9
- package/build/server/chunks/_page.svelte-CMyq-t3Q.js.map +0 -1
- package/build/server/chunks/_server.ts-B4WEAp6B.js.map +0 -1
- package/build/server/chunks/_server.ts-CxWx02dy.js.map +0 -1
- package/build/server/chunks/_server.ts-MJdHZvPF.js.map +0 -1
- package/build/server/chunks/src-BEj0DuSB.js.map +0 -1
- package/build/server/chunks/theme-state.svelte-CUVpUHOv.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-DbEaJJqa.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/providers/host-status/_server.ts.js"],"sourcesContent":["import { r as detectHostOpenCode } from \"../../../../../chunks/src.js\";\nimport { d as requireAdmin, l as jsonResponse, o as getRequestId } from \"../../../../../chunks/helpers.js\";\n//#region src/routes/admin/providers/host-status/+server.ts\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst status = detectHostOpenCode();\n\treturn jsonResponse(200, {\n\t\tdetected: status.providerCount > 0 || status.credentialCount > 0,\n\t\tproviderCount: status.providerCount,\n\t\tcredentialCount: status.credentialCount,\n\t\tconfigPath: status.configPath ?? null,\n\t\tauthPath: status.authPath ?? null\n\t}, requestId);\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AACjD,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS;AAChC,CAAC,MAAM,MAAM,GAAG,kBAAkB,EAAE;AACpC,CAAC,OAAO,YAAY,CAAC,GAAG,EAAE;AAC1B,EAAE,QAAQ,EAAE,MAAM,CAAC,aAAa,GAAG,CAAC,IAAI,MAAM,CAAC,eAAe,GAAG,CAAC;AAClE,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa;AACrC,EAAE,eAAe,EAAE,MAAM,CAAC,eAAe;AACzC,EAAE,UAAU,EAAE,MAAM,CAAC,UAAU,IAAI,IAAI;AACvC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,IAAI;AAC/B,EAAE,EAAE,SAAS,CAAC;AACd;;;;"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
import { af as inspectInstallLock, I as INSTALL_LOCK_STALE_AFTER_MS, aX as unlockInstallLock, G as createLogger } from './src-kpR902Zr.js';
|
|
2
|
+
import { g as getState } from './state-TG4xDwlK.js';
|
|
3
|
+
import { d as getRequestId, r as requireAdmin, k as jsonResponse, e as errorResponse } from './helpers-Bebo0tHj.js';
|
|
4
|
+
import './chunk-CLZ62Ad-.js';
|
|
5
|
+
import 'node:module';
|
|
6
|
+
import './provider-constants-DPrj3yBX.js';
|
|
7
|
+
import './dist-DOFcG0Zp.js';
|
|
8
|
+
import 'node:fs';
|
|
9
|
+
import 'node:path';
|
|
10
|
+
import 'buffer';
|
|
11
|
+
import 'fs';
|
|
12
|
+
import 'path';
|
|
13
|
+
import 'node:child_process';
|
|
14
|
+
import 'node:url';
|
|
15
|
+
import 'node:crypto';
|
|
16
|
+
import 'events';
|
|
17
|
+
import 'node:events';
|
|
18
|
+
import 'node:stream';
|
|
19
|
+
import 'node:string_decoder';
|
|
20
|
+
import 'assert';
|
|
21
|
+
import 'zlib';
|
|
22
|
+
import 'node:assert';
|
|
23
|
+
import 'node:fs/promises';
|
|
24
|
+
import 'node:os';
|
|
25
|
+
import './endpoints-C9sjcucN.js';
|
|
26
|
+
|
|
27
|
+
//#region src/routes/admin/unlock/+server.ts
|
|
28
|
+
var logger = createLogger("unlock-admin");
|
|
29
|
+
/**
|
|
30
|
+
* #500 — "an operation seems stuck — clear it?" Reports whether an install lock
|
|
31
|
+
* is present and whether it is stale (so the UI can decide whether to offer the
|
|
32
|
+
* clear action). Read-only.
|
|
33
|
+
*/
|
|
34
|
+
var GET = async (event) => {
|
|
35
|
+
const requestId = getRequestId(event);
|
|
36
|
+
const authError = requireAdmin(event, requestId);
|
|
37
|
+
if (authError) return authError;
|
|
38
|
+
const state = getState();
|
|
39
|
+
try {
|
|
40
|
+
return jsonResponse(200, {
|
|
41
|
+
ok: true,
|
|
42
|
+
staleAfterMs: INSTALL_LOCK_STALE_AFTER_MS,
|
|
43
|
+
...inspectInstallLock(state.dataDir)
|
|
44
|
+
}, requestId);
|
|
45
|
+
} catch (e) {
|
|
46
|
+
return errorResponse(500, "unlock_status_failed", e instanceof Error ? e.message : String(e), {}, requestId);
|
|
47
|
+
}
|
|
48
|
+
};
|
|
49
|
+
/**
|
|
50
|
+
* #500 — clears the install lock ONLY when stale (dead holder PID or older than
|
|
51
|
+
* the 30-minute staleness window). Returns 409 when a live install is still
|
|
52
|
+
* holding the lock so the UI can surface "an operation is still running" rather
|
|
53
|
+
* than forcing it. Never blind-removes a live lock.
|
|
54
|
+
*/
|
|
55
|
+
var POST = async (event) => {
|
|
56
|
+
const requestId = getRequestId(event);
|
|
57
|
+
const authError = requireAdmin(event, requestId);
|
|
58
|
+
if (authError) return authError;
|
|
59
|
+
const state = getState();
|
|
60
|
+
try {
|
|
61
|
+
const result = unlockInstallLock(state.dataDir);
|
|
62
|
+
if (!result.ok) return errorResponse(409, "install_in_progress", "An install or upgrade still appears to be running. The lock clears itself automatically once it finishes or after 30 minutes. Nothing was changed.", { status: result.status }, requestId);
|
|
63
|
+
logger.info("cleared install lock via admin", {
|
|
64
|
+
requestId,
|
|
65
|
+
removed: result.removed
|
|
66
|
+
});
|
|
67
|
+
return jsonResponse(200, {
|
|
68
|
+
ok: true,
|
|
69
|
+
removed: result.removed,
|
|
70
|
+
status: result.status
|
|
71
|
+
}, requestId);
|
|
72
|
+
} catch (e) {
|
|
73
|
+
return errorResponse(500, "unlock_failed", e instanceof Error ? e.message : String(e), {}, requestId);
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
export { GET, POST };
|
|
78
|
+
//# sourceMappingURL=_server.ts-DnC_IrzP.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_server.ts-DnC_IrzP.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/unlock/_server.ts.js"],"sourcesContent":["import { cn as INSTALL_LOCK_STALE_AFTER_MS, hn as createLogger, ln as inspectInstallLock, un as unlockInstallLock } from \"../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../chunks/state.js\";\nimport { d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId } from \"../../../../chunks/helpers.js\";\n//#region src/routes/admin/unlock/+server.ts\nvar logger = createLogger(\"unlock-admin\");\n/**\n* #500 — \"an operation seems stuck — clear it?\" Reports whether an install lock\n* is present and whether it is stale (so the UI can decide whether to offer the\n* clear action). Read-only.\n*/\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst state = getState();\n\ttry {\n\t\treturn jsonResponse(200, {\n\t\t\tok: true,\n\t\t\tstaleAfterMs: INSTALL_LOCK_STALE_AFTER_MS,\n\t\t\t...inspectInstallLock(state.dataDir)\n\t\t}, requestId);\n\t} catch (e) {\n\t\treturn errorResponse(500, \"unlock_status_failed\", e instanceof Error ? e.message : String(e), {}, requestId);\n\t}\n};\n/**\n* #500 — clears the install lock ONLY when stale (dead holder PID or older than\n* the 30-minute staleness window). Returns 409 when a live install is still\n* holding the lock so the UI can surface \"an operation is still running\" rather\n* than forcing it. Never blind-removes a live lock.\n*/\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst state = getState();\n\ttry {\n\t\tconst result = unlockInstallLock(state.dataDir);\n\t\tif (!result.ok) return errorResponse(409, \"install_in_progress\", \"An install or upgrade still appears to be running. The lock clears itself automatically once it finishes or after 30 minutes. Nothing was changed.\", { status: result.status }, requestId);\n\t\tlogger.info(\"cleared install lock via admin\", {\n\t\t\trequestId,\n\t\t\tremoved: result.removed\n\t\t});\n\t\treturn jsonResponse(200, {\n\t\t\tok: true,\n\t\t\tremoved: result.removed,\n\t\t\tstatus: result.status\n\t\t}, requestId);\n\t} catch (e) {\n\t\treturn errorResponse(500, \"unlock_failed\", e instanceof Error ? e.message : String(e), {}, requestId);\n\t}\n};\n//#endregion\nexport { GET, POST };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;AACA,IAAI,MAAM,GAAG,YAAY,CAAC,cAAc,CAAC;AACzC;AACA;AACA;AACA;AACA;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AACjD,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS;AAChC,CAAC,MAAM,KAAK,GAAG,QAAQ,EAAE;AACzB,CAAC,IAAI;AACL,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE;AAC3B,GAAG,EAAE,EAAE,IAAI;AACX,GAAG,YAAY,EAAE,2BAA2B;AAC5C,GAAG,GAAG,kBAAkB,CAAC,KAAK,CAAC,OAAO;AACtC,GAAG,EAAE,SAAS,CAAC;AACf,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE;AACb,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,YAAY,KAAK,GAAG,CAAC,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC;AAC9G,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACA;AACG,IAAC,IAAI,GAAG,OAAO,KAAK,KAAK;AAC5B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AACjD,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS;AAChC,CAAC,MAAM,KAAK,GAAG,QAAQ,EAAE;AACzB,CAAC,IAAI;AACL,EAAE,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,OAAO,CAAC;AACjD,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,qBAAqB,EAAE,oJAAoJ,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,EAAE,SAAS,CAAC;AAC9P,EAAE,MAAM,CAAC,IAAI,CAAC,gCAAgC,EAAE;AAChD,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,OAAO;AAC1B,GAAG,MAAM,EAAE,MAAM,CAAC;AAClB,GAAG,EAAE,SAAS,CAAC;AACf,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE;AACb,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,eAAe,EAAE,CAAC,YAAY,KAAK,GAAG,CAAC,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC;AACvG,CAAC;AACD;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { g as getState } from './state-
|
|
3
|
-
import { d as getRequestId, r as requireAdmin, e as errorResponse, k as jsonResponse, p as parseJsonBody, j as jsonBodyError } from './helpers-
|
|
1
|
+
import { al as listAvailableAddonIds, ab as getRegistryAddonConfig, aF as readStackSecretEnv, aD as readStackEnv, b1 as writeStackSecretEnv, au as patchSecretsEnvFile, G as createLogger } from './src-kpR902Zr.js';
|
|
2
|
+
import { g as getState } from './state-TG4xDwlK.js';
|
|
3
|
+
import { d as getRequestId, r as requireAdmin, e as errorResponse, k as jsonResponse, p as parseJsonBody, j as jsonBodyError } from './helpers-Bebo0tHj.js';
|
|
4
4
|
import './chunk-CLZ62Ad-.js';
|
|
5
5
|
import 'node:module';
|
|
6
6
|
import './provider-constants-DPrj3yBX.js';
|
|
@@ -22,7 +22,7 @@ import 'zlib';
|
|
|
22
22
|
import 'node:assert';
|
|
23
23
|
import 'node:fs/promises';
|
|
24
24
|
import 'node:os';
|
|
25
|
-
import './endpoints-
|
|
25
|
+
import './endpoints-C9sjcucN.js';
|
|
26
26
|
|
|
27
27
|
//#region src/routes/admin/addons/[name]/credentials/+server.ts
|
|
28
28
|
var logger = createLogger("addons.name.credentials");
|
|
@@ -166,4 +166,4 @@ var POST = async (event) => {
|
|
|
166
166
|
};
|
|
167
167
|
|
|
168
168
|
export { GET, POST };
|
|
169
|
-
//# sourceMappingURL=_server.ts-
|
|
169
|
+
//# sourceMappingURL=_server.ts-DpAumRrq.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-Cc-c2ehY.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/addons/_name_/credentials/_server.ts.js"],"sourcesContent":["import { Ct as getRegistryAddonConfig, It as readStackSecretEnv, Lt as writeStackSecretEnv, Nt as patchSecretsEnvFile, Pt as readStackEnv, in as createLogger, wt as listAvailableAddonIds } from \"../../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../../chunks/state.js\";\nimport { c as jsonBodyError, d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId, u as parseJsonBody } from \"../../../../../../chunks/helpers.js\";\n//#region src/routes/admin/addons/[name]/credentials/+server.ts\nvar logger = createLogger(\"addons.name.credentials\");\n/**\n* Parse a `.env.schema` file into structured fields.\n*\n* Schema conventions:\n* - Lines starting with `#` are comments; consecutive comment lines\n* accumulate as the *description* of the next KEY=VALUE line.\n* - `# @sensitive` marks the next field as sensitive (renders as a\n* password input and is masked on GET).\n* - `# ---` resets the accumulator (used as a section separator).\n* - `KEY=DEFAULT` declares the field; default may be empty.\n*/\nfunction parseEnvSchema(text) {\n\tconst fields = [];\n\tlet commentBuffer = [];\n\tlet sensitive = false;\n\tfor (const rawLine of text.split(/\\r?\\n/)) {\n\t\tconst line = rawLine.trim();\n\t\tif (!line) continue;\n\t\tif (line.startsWith(\"#\")) {\n\t\t\tconst body = line.slice(1).trim();\n\t\t\tif (body === \"---\") {\n\t\t\t\tcommentBuffer = [];\n\t\t\t\tsensitive = false;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (body.startsWith(\"@\")) {\n\t\t\t\tif (/\\B@sensitive\\b/.test(body)) sensitive = true;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tcommentBuffer.push(body);\n\t\t\tcontinue;\n\t\t}\n\t\tconst eq = line.indexOf(\"=\");\n\t\tif (eq <= 0) continue;\n\t\tconst key = line.slice(0, eq).trim();\n\t\tif (!key) continue;\n\t\tconst def = line.slice(eq + 1).trim();\n\t\tfields.push({\n\t\t\tkey,\n\t\t\tsensitive,\n\t\t\tdescription: commentBuffer.join(\" \").trim(),\n\t\t\tdefault: def\n\t\t});\n\t\tcommentBuffer = [];\n\t\tsensitive = false;\n\t}\n\treturn fields;\n}\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authErr = requireAdmin(event, requestId);\n\tif (authErr) return authErr;\n\tconst state = getState();\n\tconst name = event.params.name;\n\tif (!listAvailableAddonIds().includes(name)) return errorResponse(404, \"not_found\", `Addon \"${name}\" is not available`, { name }, requestId);\n\tlet config;\n\ttry {\n\t\tconfig = getRegistryAddonConfig(name);\n\t} catch (error) {\n\t\tlogger.error(\"schema read failed\", {\n\t\t\tname,\n\t\t\terror: String(error),\n\t\t\trequestId\n\t\t});\n\t\treturn errorResponse(500, \"internal_error\", `Addon \"${name}\" schema is unavailable`, {}, requestId);\n\t}\n\tconst schemaFields = parseEnvSchema(config.envSchema);\n\tconst secretEnv = readStackSecretEnv(state.stackDir);\n\tconst stackEnv = readStackEnv(state.stackDir);\n\treturn jsonResponse(200, {\n\t\tname,\n\t\tfields: schemaFields.map((f) => {\n\t\t\tconst set = ((f.sensitive ? secretEnv[f.key] : stackEnv[f.key]) ?? \"\").length > 0;\n\t\t\treturn {\n\t\t\t\tkey: f.key,\n\t\t\t\tsensitive: f.sensitive,\n\t\t\t\tdescription: f.description,\n\t\t\t\tdefault: f.default,\n\t\t\t\tset,\n\t\t\t\tsecret: {\n\t\t\t\t\tenvKey: f.key,\n\t\t\t\t\tpresent: set\n\t\t\t\t},\n\t\t\t\tvalue: \"\"\n\t\t\t};\n\t\t})\n\t}, requestId);\n};\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authErr = requireAdmin(event, requestId);\n\tif (authErr) return authErr;\n\tconst state = getState();\n\tconst name = event.params.name;\n\tif (!listAvailableAddonIds().includes(name)) return errorResponse(404, \"not_found\", `Addon \"${name}\" is not available`, { name }, requestId);\n\tconst parsed = await parseJsonBody(event.request);\n\tif (\"error\" in parsed) return jsonBodyError(parsed, requestId);\n\tconst valuesRaw = parsed.data.values ?? {};\n\tlet config;\n\ttry {\n\t\tconfig = getRegistryAddonConfig(name);\n\t} catch (error) {\n\t\tlogger.error(\"schema read failed (post)\", {\n\t\t\tname,\n\t\t\terror: String(error),\n\t\t\trequestId\n\t\t});\n\t\treturn errorResponse(500, \"internal_error\", `Addon \"${name}\" schema is unavailable`, {}, requestId);\n\t}\n\tconst schemaFields = parseEnvSchema(config.envSchema);\n\tconst sensitiveKeys = new Set(schemaFields.filter((f) => f.sensitive).map((f) => f.key));\n\tconst allowedKeys = new Set(schemaFields.map((f) => f.key));\n\tconst sensitiveUpdates = {};\n\tconst configUpdates = {};\n\tfor (const [k, v] of Object.entries(valuesRaw)) {\n\t\tif (!allowedKeys.has(k)) continue;\n\t\tconst val = typeof v === \"string\" ? v : \"\";\n\t\tif (sensitiveKeys.has(k)) sensitiveUpdates[k] = val;\n\t\telse configUpdates[k] = val;\n\t}\n\tif (Object.keys(sensitiveUpdates).length === 0 && Object.keys(configUpdates).length === 0) return errorResponse(400, \"bad_request\", \"no schema-declared keys supplied\", {}, requestId);\n\ttry {\n\t\tif (Object.keys(sensitiveUpdates).length > 0) writeStackSecretEnv(state, sensitiveUpdates);\n\t\tif (Object.keys(configUpdates).length > 0) patchSecretsEnvFile(state.stackDir, configUpdates);\n\t} catch (err) {\n\t\tlogger.error(\"write failed\", {\n\t\t\tname,\n\t\t\terror: String(err),\n\t\t\trequestId\n\t\t});\n\t\treturn errorResponse(500, \"internal_error\", err instanceof Error ? err.message : \"write failed\", {}, requestId);\n\t}\n\treturn jsonResponse(200, {\n\t\tok: true,\n\t\tname,\n\t\tupdated: [...Object.keys(sensitiveUpdates), ...Object.keys(configUpdates)].sort()\n\t}, requestId);\n};\n//#endregion\nexport { GET, POST };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;AACA,IAAI,MAAM,GAAG,YAAY,CAAC,yBAAyB,CAAC;AACpD;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAAS,cAAc,CAAC,IAAI,EAAE;AAC9B,CAAC,MAAM,MAAM,GAAG,EAAE;AAClB,CAAC,IAAI,aAAa,GAAG,EAAE;AACvB,CAAC,IAAI,SAAS,GAAG,KAAK;AACtB,CAAC,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE;AAC5C,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE;AAC7B,EAAE,IAAI,CAAC,IAAI,EAAE;AACb,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;AAC5B,GAAG,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE;AACpC,GAAG,IAAI,IAAI,KAAK,KAAK,EAAE;AACvB,IAAI,aAAa,GAAG,EAAE;AACtB,IAAI,SAAS,GAAG,KAAK;AACrB,IAAI;AACJ,GAAG;AACH,GAAG,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;AAC7B,IAAI,IAAI,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,SAAS,GAAG,IAAI;AACrD,IAAI;AACJ,GAAG;AACH,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC;AAC3B,GAAG;AACH,EAAE;AACF,EAAE,MAAM,EAAE,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;AAC9B,EAAE,IAAI,EAAE,IAAI,CAAC,EAAE;AACf,EAAE,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE;AACtC,EAAE,IAAI,CAAC,GAAG,EAAE;AACZ,EAAE,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE;AACvC,EAAE,MAAM,CAAC,IAAI,CAAC;AACd,GAAG,GAAG;AACN,GAAG,SAAS;AACZ,GAAG,WAAW,EAAE,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE;AAC9C,GAAG,OAAO,EAAE;AACZ,GAAG,CAAC;AACJ,EAAE,aAAa,GAAG,EAAE;AACpB,EAAE,SAAS,GAAG,KAAK;AACnB,CAAC;AACD,CAAC,OAAO,MAAM;AACd;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AAC/C,CAAC,IAAI,OAAO,EAAE,OAAO,OAAO;AAC5B,CAAC,MAAM,KAAK,GAAG,QAAQ,EAAE;AACzB,CAAC,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI;AAC/B,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,SAAS,CAAC;AAC7I,CAAC,IAAI,MAAM;AACX,CAAC,IAAI;AACL,EAAE,MAAM,GAAG,sBAAsB,CAAC,IAAI,CAAC;AACvC,CAAC,CAAC,CAAC,OAAO,KAAK,EAAE;AACjB,EAAE,MAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE;AACrC,GAAG,IAAI;AACP,GAAG,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;AACvB,GAAG;AACH,GAAG,CAAC;AACJ,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,gBAAgB,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,uBAAuB,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC;AACrG,CAAC;AACD,CAAC,MAAM,YAAY,GAAG,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC;AACtD,CAAC,MAAM,SAAS,GAAG,kBAAkB,CAAC,KAAK,CAAC,QAAQ,CAAC;AACrD,CAAC,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,CAAC,QAAQ,CAAC;AAC9C,CAAC,OAAO,YAAY,CAAC,GAAG,EAAE;AAC1B,EAAE,IAAI;AACN,EAAE,MAAM,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK;AAClC,GAAG,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,MAAM,GAAG,CAAC;AACpF,GAAG,OAAO;AACV,IAAI,GAAG,EAAE,CAAC,CAAC,GAAG;AACd,IAAI,SAAS,EAAE,CAAC,CAAC,SAAS;AAC1B,IAAI,WAAW,EAAE,CAAC,CAAC,WAAW;AAC9B,IAAI,OAAO,EAAE,CAAC,CAAC,OAAO;AACtB,IAAI,GAAG;AACP,IAAI,MAAM,EAAE;AACZ,KAAK,MAAM,EAAE,CAAC,CAAC,GAAG;AAClB,KAAK,OAAO,EAAE;AACd,KAAK;AACL,IAAI,KAAK,EAAE;AACX,IAAI;AACJ,EAAE,CAAC;AACH,EAAE,EAAE,SAAS,CAAC;AACd;AACG,IAAC,IAAI,GAAG,OAAO,KAAK,KAAK;AAC5B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,OAAO,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AAC/C,CAAC,IAAI,OAAO,EAAE,OAAO,OAAO;AAC5B,CAAC,MAAM,KAAK,GAAG,QAAQ,EAAE;AACzB,CAAC,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI;AAC/B,CAAC,IAAI,CAAC,qBAAqB,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,kBAAkB,CAAC,EAAE,EAAE,IAAI,EAAE,EAAE,SAAS,CAAC;AAC7I,CAAC,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,KAAK,CAAC,OAAO,CAAC;AAClD,CAAC,IAAI,OAAO,IAAI,MAAM,EAAE,OAAO,aAAa,CAAC,MAAM,EAAE,SAAS,CAAC;AAC/D,CAAC,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE;AAC3C,CAAC,IAAI,MAAM;AACX,CAAC,IAAI;AACL,EAAE,MAAM,GAAG,sBAAsB,CAAC,IAAI,CAAC;AACvC,CAAC,CAAC,CAAC,OAAO,KAAK,EAAE;AACjB,EAAE,MAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE;AAC5C,GAAG,IAAI;AACP,GAAG,KAAK,EAAE,MAAM,CAAC,KAAK,CAAC;AACvB,GAAG;AACH,GAAG,CAAC;AACJ,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,gBAAgB,EAAE,CAAC,OAAO,EAAE,IAAI,CAAC,uBAAuB,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC;AACrG,CAAC;AACD,CAAC,MAAM,YAAY,GAAG,cAAc,CAAC,MAAM,CAAC,SAAS,CAAC;AACtD,CAAC,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;AACzF,CAAC,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC;AAC5D,CAAC,MAAM,gBAAgB,GAAG,EAAE;AAC5B,CAAC,MAAM,aAAa,GAAG,EAAE;AACzB,CAAC,KAAK,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE;AACjD,EAAE,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE;AAC3B,EAAE,MAAM,GAAG,GAAG,OAAO,CAAC,KAAK,QAAQ,GAAG,CAAC,GAAG,EAAE;AAC5C,EAAE,IAAI,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,gBAAgB,CAAC,CAAC,CAAC,GAAG,GAAG;AACrD,OAAO,aAAa,CAAC,CAAC,CAAC,GAAG,GAAG;AAC7B,CAAC;AACD,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,aAAa,EAAE,kCAAkC,EAAE,EAAE,EAAE,SAAS,CAAC;AACvL,CAAC,IAAI;AACL,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,mBAAmB,CAAC,KAAK,EAAE,gBAAgB,CAAC;AAC5F,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,mBAAmB,CAAC,KAAK,CAAC,QAAQ,EAAE,aAAa,CAAC;AAC/F,CAAC,CAAC,CAAC,OAAO,GAAG,EAAE;AACf,EAAE,MAAM,CAAC,KAAK,CAAC,cAAc,EAAE;AAC/B,GAAG,IAAI;AACP,GAAG,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC;AACrB,GAAG;AACH,GAAG,CAAC;AACJ,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,gBAAgB,EAAE,GAAG,YAAY,KAAK,GAAG,GAAG,CAAC,OAAO,GAAG,cAAc,EAAE,EAAE,EAAE,SAAS,CAAC;AACjH,CAAC;AACD,CAAC,OAAO,YAAY,CAAC,GAAG,EAAE;AAC1B,EAAE,EAAE,EAAE,IAAI;AACV,EAAE,IAAI;AACN,EAAE,OAAO,EAAE,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC,gBAAgB,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI;AACjF,EAAE,EAAE,SAAS,CAAC;AACd;;;;"}
|
|
1
|
+
{"version":3,"file":"_server.ts-DpAumRrq.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/addons/_name_/credentials/_server.ts.js"],"sourcesContent":["import { Bt as readStackSecretEnv, Et as listAvailableAddonIds, Lt as patchSecretsEnvFile, Rt as readStackEnv, Tt as getRegistryAddonConfig, Vt as writeStackSecretEnv, hn as createLogger } from \"../../../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../../../chunks/state.js\";\nimport { c as jsonBodyError, d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId, u as parseJsonBody } from \"../../../../../../chunks/helpers.js\";\n//#region src/routes/admin/addons/[name]/credentials/+server.ts\nvar logger = createLogger(\"addons.name.credentials\");\n/**\n* Parse a `.env.schema` file into structured fields.\n*\n* Schema conventions:\n* - Lines starting with `#` are comments; consecutive comment lines\n* accumulate as the *description* of the next KEY=VALUE line.\n* - `# @sensitive` marks the next field as sensitive (renders as a\n* password input and is masked on GET).\n* - `# ---` resets the accumulator (used as a section separator).\n* - `KEY=DEFAULT` declares the field; default may be empty.\n*/\nfunction parseEnvSchema(text) {\n\tconst fields = [];\n\tlet commentBuffer = [];\n\tlet sensitive = false;\n\tfor (const rawLine of text.split(/\\r?\\n/)) {\n\t\tconst line = rawLine.trim();\n\t\tif (!line) continue;\n\t\tif (line.startsWith(\"#\")) {\n\t\t\tconst body = line.slice(1).trim();\n\t\t\tif (body === \"---\") {\n\t\t\t\tcommentBuffer = [];\n\t\t\t\tsensitive = false;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (body.startsWith(\"@\")) {\n\t\t\t\tif (/\\B@sensitive\\b/.test(body)) sensitive = true;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tcommentBuffer.push(body);\n\t\t\tcontinue;\n\t\t}\n\t\tconst eq = line.indexOf(\"=\");\n\t\tif (eq <= 0) continue;\n\t\tconst key = line.slice(0, eq).trim();\n\t\tif (!key) continue;\n\t\tconst def = line.slice(eq + 1).trim();\n\t\tfields.push({\n\t\t\tkey,\n\t\t\tsensitive,\n\t\t\tdescription: commentBuffer.join(\" \").trim(),\n\t\t\tdefault: def\n\t\t});\n\t\tcommentBuffer = [];\n\t\tsensitive = false;\n\t}\n\treturn fields;\n}\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authErr = requireAdmin(event, requestId);\n\tif (authErr) return authErr;\n\tconst state = getState();\n\tconst name = event.params.name;\n\tif (!listAvailableAddonIds().includes(name)) return errorResponse(404, \"not_found\", `Addon \"${name}\" is not available`, { name }, requestId);\n\tlet config;\n\ttry {\n\t\tconfig = getRegistryAddonConfig(name);\n\t} catch (error) {\n\t\tlogger.error(\"schema read failed\", {\n\t\t\tname,\n\t\t\terror: String(error),\n\t\t\trequestId\n\t\t});\n\t\treturn errorResponse(500, \"internal_error\", `Addon \"${name}\" schema is unavailable`, {}, requestId);\n\t}\n\tconst schemaFields = parseEnvSchema(config.envSchema);\n\tconst secretEnv = readStackSecretEnv(state.stackDir);\n\tconst stackEnv = readStackEnv(state.stackDir);\n\treturn jsonResponse(200, {\n\t\tname,\n\t\tfields: schemaFields.map((f) => {\n\t\t\tconst set = ((f.sensitive ? secretEnv[f.key] : stackEnv[f.key]) ?? \"\").length > 0;\n\t\t\treturn {\n\t\t\t\tkey: f.key,\n\t\t\t\tsensitive: f.sensitive,\n\t\t\t\tdescription: f.description,\n\t\t\t\tdefault: f.default,\n\t\t\t\tset,\n\t\t\t\tsecret: {\n\t\t\t\t\tenvKey: f.key,\n\t\t\t\t\tpresent: set\n\t\t\t\t},\n\t\t\t\tvalue: \"\"\n\t\t\t};\n\t\t})\n\t}, requestId);\n};\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authErr = requireAdmin(event, requestId);\n\tif (authErr) return authErr;\n\tconst state = getState();\n\tconst name = event.params.name;\n\tif (!listAvailableAddonIds().includes(name)) return errorResponse(404, \"not_found\", `Addon \"${name}\" is not available`, { name }, requestId);\n\tconst parsed = await parseJsonBody(event.request);\n\tif (\"error\" in parsed) return jsonBodyError(parsed, requestId);\n\tconst valuesRaw = parsed.data.values ?? {};\n\tlet config;\n\ttry {\n\t\tconfig = getRegistryAddonConfig(name);\n\t} catch (error) {\n\t\tlogger.error(\"schema read failed (post)\", {\n\t\t\tname,\n\t\t\terror: String(error),\n\t\t\trequestId\n\t\t});\n\t\treturn errorResponse(500, \"internal_error\", `Addon \"${name}\" schema is unavailable`, {}, requestId);\n\t}\n\tconst schemaFields = parseEnvSchema(config.envSchema);\n\tconst sensitiveKeys = new Set(schemaFields.filter((f) => f.sensitive).map((f) => f.key));\n\tconst allowedKeys = new Set(schemaFields.map((f) => f.key));\n\tconst sensitiveUpdates = {};\n\tconst configUpdates = {};\n\tfor (const [k, v] of Object.entries(valuesRaw)) {\n\t\tif (!allowedKeys.has(k)) continue;\n\t\tconst val = typeof v === \"string\" ? v : \"\";\n\t\tif (sensitiveKeys.has(k)) sensitiveUpdates[k] = val;\n\t\telse configUpdates[k] = val;\n\t}\n\tif (Object.keys(sensitiveUpdates).length === 0 && Object.keys(configUpdates).length === 0) return errorResponse(400, \"bad_request\", \"no schema-declared keys supplied\", {}, requestId);\n\ttry {\n\t\tif (Object.keys(sensitiveUpdates).length > 0) writeStackSecretEnv(state, sensitiveUpdates);\n\t\tif (Object.keys(configUpdates).length > 0) patchSecretsEnvFile(state.stackDir, configUpdates);\n\t} catch (err) {\n\t\tlogger.error(\"write failed\", {\n\t\t\tname,\n\t\t\terror: String(err),\n\t\t\trequestId\n\t\t});\n\t\treturn errorResponse(500, \"internal_error\", err instanceof Error ? err.message : \"write failed\", {}, requestId);\n\t}\n\treturn jsonResponse(200, {\n\t\tok: true,\n\t\tname,\n\t\tupdated: [...Object.keys(sensitiveUpdates), ...Object.keys(configUpdates)].sort()\n\t}, requestId);\n};\n//#endregion\nexport { GET, POST };\n"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { aV as summarizeBackups, am as listBackupDirs, ax as pruneBackupDirs, G as createLogger } from './src-kpR902Zr.js';
|
|
2
|
+
import { g as getState } from './state-TG4xDwlK.js';
|
|
3
|
+
import { d as getRequestId, r as requireAdmin, k as jsonResponse, e as errorResponse } from './helpers-Bebo0tHj.js';
|
|
4
|
+
import './chunk-CLZ62Ad-.js';
|
|
5
|
+
import 'node:module';
|
|
6
|
+
import './provider-constants-DPrj3yBX.js';
|
|
7
|
+
import './dist-DOFcG0Zp.js';
|
|
8
|
+
import 'node:fs';
|
|
9
|
+
import 'node:path';
|
|
10
|
+
import 'buffer';
|
|
11
|
+
import 'fs';
|
|
12
|
+
import 'path';
|
|
13
|
+
import 'node:child_process';
|
|
14
|
+
import 'node:url';
|
|
15
|
+
import 'node:crypto';
|
|
16
|
+
import 'events';
|
|
17
|
+
import 'node:events';
|
|
18
|
+
import 'node:stream';
|
|
19
|
+
import 'node:string_decoder';
|
|
20
|
+
import 'assert';
|
|
21
|
+
import 'zlib';
|
|
22
|
+
import 'node:assert';
|
|
23
|
+
import 'node:fs/promises';
|
|
24
|
+
import 'node:os';
|
|
25
|
+
import './endpoints-C9sjcucN.js';
|
|
26
|
+
|
|
27
|
+
//#region src/routes/admin/backups/+server.ts
|
|
28
|
+
var logger = createLogger("backups-admin");
|
|
29
|
+
/**
|
|
30
|
+
* #499 — backup visibility. Returns count, total size, last-backup time and a
|
|
31
|
+
* per-backup list (newest first) so the UI can surface the recovery net.
|
|
32
|
+
* Read-only.
|
|
33
|
+
*/
|
|
34
|
+
var GET = async (event) => {
|
|
35
|
+
const requestId = getRequestId(event);
|
|
36
|
+
const authError = requireAdmin(event, requestId);
|
|
37
|
+
if (authError) return authError;
|
|
38
|
+
const state = getState();
|
|
39
|
+
try {
|
|
40
|
+
return jsonResponse(200, {
|
|
41
|
+
ok: true,
|
|
42
|
+
...summarizeBackups(state.homeDir)
|
|
43
|
+
}, requestId);
|
|
44
|
+
} catch (e) {
|
|
45
|
+
return errorResponse(500, "backups_list_failed", e instanceof Error ? e.message : String(e), {}, requestId);
|
|
46
|
+
}
|
|
47
|
+
};
|
|
48
|
+
/**
|
|
49
|
+
* #499 — drives the EXISTING confirm-gated prune. The UI must pass an explicit
|
|
50
|
+
* `keep` count (the confirmation is the UI's modal); this NEVER auto-prunes and
|
|
51
|
+
* keeps the newest `keep` snapshots, deleting only the older ones.
|
|
52
|
+
*/
|
|
53
|
+
var POST = async (event) => {
|
|
54
|
+
const requestId = getRequestId(event);
|
|
55
|
+
const authError = requireAdmin(event, requestId);
|
|
56
|
+
if (authError) return authError;
|
|
57
|
+
let body;
|
|
58
|
+
try {
|
|
59
|
+
body = await event.request.json();
|
|
60
|
+
} catch {
|
|
61
|
+
body = {};
|
|
62
|
+
}
|
|
63
|
+
const keep = Number(body.keep);
|
|
64
|
+
if (!Number.isInteger(keep) || keep < 0) return errorResponse(400, "invalid_keep", "`keep` must be a non-negative integer", {}, requestId);
|
|
65
|
+
const state = getState();
|
|
66
|
+
try {
|
|
67
|
+
if (listBackupDirs(state.homeDir).slice(keep).length === 0) return jsonResponse(200, {
|
|
68
|
+
ok: true,
|
|
69
|
+
deleted: [],
|
|
70
|
+
kept: keep
|
|
71
|
+
}, requestId);
|
|
72
|
+
const deleted = pruneBackupDirs(state.homeDir, keep);
|
|
73
|
+
logger.info("pruned backups via admin", {
|
|
74
|
+
requestId,
|
|
75
|
+
deleted: deleted.length,
|
|
76
|
+
kept: keep
|
|
77
|
+
});
|
|
78
|
+
return jsonResponse(200, {
|
|
79
|
+
ok: true,
|
|
80
|
+
deleted,
|
|
81
|
+
kept: keep
|
|
82
|
+
}, requestId);
|
|
83
|
+
} catch (e) {
|
|
84
|
+
return errorResponse(500, "backups_prune_failed", e instanceof Error ? e.message : String(e), {}, requestId);
|
|
85
|
+
}
|
|
86
|
+
};
|
|
87
|
+
|
|
88
|
+
export { GET, POST };
|
|
89
|
+
//# sourceMappingURL=_server.ts-Dq1UL_W-.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_server.ts-Dq1UL_W-.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/backups/_server.ts.js"],"sourcesContent":["import { dn as listBackupDirs, fn as pruneBackupDirs, hn as createLogger, pn as summarizeBackups } from \"../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../chunks/state.js\";\nimport { d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId } from \"../../../../chunks/helpers.js\";\n//#region src/routes/admin/backups/+server.ts\nvar logger = createLogger(\"backups-admin\");\n/**\n* #499 — backup visibility. Returns count, total size, last-backup time and a\n* per-backup list (newest first) so the UI can surface the recovery net.\n* Read-only.\n*/\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst state = getState();\n\ttry {\n\t\treturn jsonResponse(200, {\n\t\t\tok: true,\n\t\t\t...summarizeBackups(state.homeDir)\n\t\t}, requestId);\n\t} catch (e) {\n\t\treturn errorResponse(500, \"backups_list_failed\", e instanceof Error ? e.message : String(e), {}, requestId);\n\t}\n};\n/**\n* #499 — drives the EXISTING confirm-gated prune. The UI must pass an explicit\n* `keep` count (the confirmation is the UI's modal); this NEVER auto-prunes and\n* keeps the newest `keep` snapshots, deleting only the older ones.\n*/\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tlet body;\n\ttry {\n\t\tbody = await event.request.json();\n\t} catch {\n\t\tbody = {};\n\t}\n\tconst keep = Number(body.keep);\n\tif (!Number.isInteger(keep) || keep < 0) return errorResponse(400, \"invalid_keep\", \"`keep` must be a non-negative integer\", {}, requestId);\n\tconst state = getState();\n\ttry {\n\t\tif (listBackupDirs(state.homeDir).slice(keep).length === 0) return jsonResponse(200, {\n\t\t\tok: true,\n\t\t\tdeleted: [],\n\t\t\tkept: keep\n\t\t}, requestId);\n\t\tconst deleted = pruneBackupDirs(state.homeDir, keep);\n\t\tlogger.info(\"pruned backups via admin\", {\n\t\t\trequestId,\n\t\t\tdeleted: deleted.length,\n\t\t\tkept: keep\n\t\t});\n\t\treturn jsonResponse(200, {\n\t\t\tok: true,\n\t\t\tdeleted,\n\t\t\tkept: keep\n\t\t}, requestId);\n\t} catch (e) {\n\t\treturn errorResponse(500, \"backups_prune_failed\", e instanceof Error ? e.message : String(e), {}, requestId);\n\t}\n};\n//#endregion\nexport { GET, POST };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAGA;AACA,IAAI,MAAM,GAAG,YAAY,CAAC,eAAe,CAAC;AAC1C;AACA;AACA;AACA;AACA;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AACjD,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS;AAChC,CAAC,MAAM,KAAK,GAAG,QAAQ,EAAE;AACzB,CAAC,IAAI;AACL,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE;AAC3B,GAAG,EAAE,EAAE,IAAI;AACX,GAAG,GAAG,gBAAgB,CAAC,KAAK,CAAC,OAAO;AACpC,GAAG,EAAE,SAAS,CAAC;AACf,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE;AACb,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,qBAAqB,EAAE,CAAC,YAAY,KAAK,GAAG,CAAC,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC;AAC7G,CAAC;AACD;AACA;AACA;AACA;AACA;AACA;AACG,IAAC,IAAI,GAAG,OAAO,KAAK,KAAK;AAC5B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AACjD,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS;AAChC,CAAC,IAAI,IAAI;AACT,CAAC,IAAI;AACL,EAAE,IAAI,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE;AACnC,CAAC,CAAC,CAAC,MAAM;AACT,EAAE,IAAI,GAAG,EAAE;AACX,CAAC;AACD,CAAC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC;AAC/B,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,cAAc,EAAE,uCAAuC,EAAE,EAAE,EAAE,SAAS,CAAC;AAC3I,CAAC,MAAM,KAAK,GAAG,QAAQ,EAAE;AACzB,CAAC,IAAI;AACL,EAAE,IAAI,cAAc,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE;AACvF,GAAG,EAAE,EAAE,IAAI;AACX,GAAG,OAAO,EAAE,EAAE;AACd,GAAG,IAAI,EAAE;AACT,GAAG,EAAE,SAAS,CAAC;AACf,EAAE,MAAM,OAAO,GAAG,eAAe,CAAC,KAAK,CAAC,OAAO,EAAE,IAAI,CAAC;AACtD,EAAE,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE;AAC1C,GAAG,SAAS;AACZ,GAAG,OAAO,EAAE,OAAO,CAAC,MAAM;AAC1B,GAAG,IAAI,EAAE;AACT,GAAG,CAAC;AACJ,EAAE,OAAO,YAAY,CAAC,GAAG,EAAE;AAC3B,GAAG,EAAE,EAAE,IAAI;AACX,GAAG,OAAO;AACV,GAAG,IAAI,EAAE;AACT,GAAG,EAAE,SAAS,CAAC;AACf,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE;AACb,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,sBAAsB,EAAE,CAAC,YAAY,KAAK,GAAG,CAAC,CAAC,OAAO,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC;AAC9G,CAAC;AACD;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { d as getRequestId, r as requireAdmin, k as jsonResponse } from './helpers-
|
|
2
|
-
import { l as loadProviderPage } from './catalog-
|
|
3
|
-
import './src-
|
|
1
|
+
import { d as getRequestId, r as requireAdmin, k as jsonResponse } from './helpers-Bebo0tHj.js';
|
|
2
|
+
import { l as loadProviderPage } from './catalog-CVQgQDZT.js';
|
|
3
|
+
import './src-kpR902Zr.js';
|
|
4
4
|
import './chunk-CLZ62Ad-.js';
|
|
5
5
|
import 'node:module';
|
|
6
6
|
import './provider-constants-DPrj3yBX.js';
|
|
@@ -22,11 +22,11 @@ import 'zlib';
|
|
|
22
22
|
import 'node:assert';
|
|
23
23
|
import 'node:fs/promises';
|
|
24
24
|
import 'node:os';
|
|
25
|
-
import './endpoints-
|
|
26
|
-
import './state-
|
|
25
|
+
import './endpoints-C9sjcucN.js';
|
|
26
|
+
import './state-TG4xDwlK.js';
|
|
27
27
|
import './coercion-TNFJisCC.js';
|
|
28
|
-
import './http-
|
|
29
|
-
import './config-
|
|
28
|
+
import './http-B9H_dpeX.js';
|
|
29
|
+
import './config-CW8zrJxw.js';
|
|
30
30
|
|
|
31
31
|
//#region src/routes/admin/providers/+server.ts
|
|
32
32
|
var GET = async (event) => {
|
|
@@ -37,4 +37,4 @@ var GET = async (event) => {
|
|
|
37
37
|
};
|
|
38
38
|
|
|
39
39
|
export { GET };
|
|
40
|
-
//# sourceMappingURL=_server.ts-
|
|
40
|
+
//# sourceMappingURL=_server.ts-DuDeloL8.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-DuDeloL8.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/providers/_server.ts.js"],"sourcesContent":["import { d as requireAdmin, l as jsonResponse, o as getRequestId } from \"../../../../chunks/helpers.js\";\nimport { t as loadProviderPage } from \"../../../../chunks/catalog.js\";\n//#region src/routes/admin/providers/+server.ts\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\treturn jsonResponse(200, await loadProviderPage(), requestId);\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AACjD,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS;AAChC,CAAC,OAAO,YAAY,CAAC,GAAG,EAAE,MAAM,gBAAgB,EAAE,EAAE,SAAS,CAAC;AAC9D;;;;"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { o as checkDocker,
|
|
2
|
-
import { d as getRequestId, r as requireAdmin, e as errorResponse, k as jsonResponse } from './helpers-
|
|
1
|
+
import { o as checkDocker, a9 as getDockerEvents } from './src-kpR902Zr.js';
|
|
2
|
+
import { d as getRequestId, r as requireAdmin, e as errorResponse, k as jsonResponse } from './helpers-Bebo0tHj.js';
|
|
3
3
|
import './chunk-CLZ62Ad-.js';
|
|
4
4
|
import 'node:module';
|
|
5
5
|
import './provider-constants-DPrj3yBX.js';
|
|
@@ -21,8 +21,8 @@ import 'zlib';
|
|
|
21
21
|
import 'node:assert';
|
|
22
22
|
import 'node:fs/promises';
|
|
23
23
|
import 'node:os';
|
|
24
|
-
import './endpoints-
|
|
25
|
-
import './state-
|
|
24
|
+
import './endpoints-C9sjcucN.js';
|
|
25
|
+
import './state-TG4xDwlK.js';
|
|
26
26
|
|
|
27
27
|
//#region src/routes/admin/containers/events/+server.ts
|
|
28
28
|
var GET = async (event) => {
|
|
@@ -44,4 +44,4 @@ var GET = async (event) => {
|
|
|
44
44
|
};
|
|
45
45
|
|
|
46
46
|
export { GET };
|
|
47
|
-
//# sourceMappingURL=_server.ts-
|
|
47
|
+
//# sourceMappingURL=_server.ts-EZhgk1ej.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-EZhgk1ej.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/containers/events/_server.ts.js"],"sourcesContent":["import { Q as checkDocker, ut as getDockerEvents } from \"../../../../../chunks/src.js\";\nimport { d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId } from \"../../../../../chunks/helpers.js\";\n//#region src/routes/admin/containers/events/+server.ts\nvar GET = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst since = event.url.searchParams.get(\"since\") || \"1h\";\n\tif (!(await checkDocker()).ok) return errorResponse(503, \"docker_unavailable\", \"Docker is not available\", {}, requestId);\n\tconst result = await getDockerEvents(\"openpalm\", since);\n\tif (!result.ok) return errorResponse(500, \"docker_error\", `Failed to get Docker events: ${result.stderr}`, {}, requestId);\n\tlet events = [];\n\tif (result.stdout.trim()) try {\n\t\tevents = result.stdout.trim().split(\"\\n\").filter((l) => l.startsWith(\"{\")).map((l) => JSON.parse(l));\n\t} catch (e) {\n\t\tconsole.warn(\"[containers.events] Failed to parse Docker events output\", e);\n\t\treturn errorResponse(500, \"parse_error\", \"Failed to parse Docker events output\", {}, requestId);\n\t}\n\treturn jsonResponse(200, { events }, requestId);\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AACG,IAAC,GAAG,GAAG,OAAO,KAAK,KAAK;AAC3B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,SAAS,CAAC;AACjD,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS;AAChC,CAAC,MAAM,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI;AAC1D,CAAC,IAAI,CAAC,CAAC,MAAM,WAAW,EAAE,EAAE,EAAE,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,EAAE,EAAE,SAAS,CAAC;AACzH,CAAC,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,UAAU,EAAE,KAAK,CAAC;AACxD,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,cAAc,EAAE,CAAC,6BAA6B,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,SAAS,CAAC;AAC1H,CAAC,IAAI,MAAM,GAAG,EAAE;AAChB,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,IAAI;AAC/B,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACtG,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE;AACb,EAAE,OAAO,CAAC,IAAI,CAAC,0DAA0D,EAAE,CAAC,CAAC;AAC7E,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,aAAa,EAAE,sCAAsC,EAAE,EAAE,EAAE,SAAS,CAAC;AACjG,CAAC;AACD,CAAC,OAAO,YAAY,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,EAAE,SAAS,CAAC;AAChD;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { d as deleteEndpoint, v as validateEndpointUrl, u as updateEndpoint } from './endpoints-
|
|
2
|
-
import { d as getRequestId, r as requireAdmin, k as jsonResponse, e as errorResponse, w as withAdminBody } from './helpers-
|
|
3
|
-
import './state-
|
|
4
|
-
import './src-
|
|
1
|
+
import { d as deleteEndpoint, v as validateEndpointUrl, u as updateEndpoint } from './endpoints-C9sjcucN.js';
|
|
2
|
+
import { d as getRequestId, r as requireAdmin, k as jsonResponse, e as errorResponse, w as withAdminBody } from './helpers-Bebo0tHj.js';
|
|
3
|
+
import './state-TG4xDwlK.js';
|
|
4
|
+
import './src-kpR902Zr.js';
|
|
5
5
|
import './chunk-CLZ62Ad-.js';
|
|
6
6
|
import 'node:module';
|
|
7
7
|
import './provider-constants-DPrj3yBX.js';
|
|
@@ -70,4 +70,4 @@ var DELETE = async (event) => {
|
|
|
70
70
|
};
|
|
71
71
|
|
|
72
72
|
export { DELETE, PATCH };
|
|
73
|
-
//# sourceMappingURL=_server.ts-
|
|
73
|
+
//# sourceMappingURL=_server.ts-J-kbq-R4.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-J-kbq-R4.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/endpoints/_id_/_server.ts.js"],"sourcesContent":["import { c as validateEndpointUrl, n as deleteEndpoint, s as updateEndpoint } from \"../../../../../chunks/endpoints.js\";\nimport { d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId, p as withAdminBody } from \"../../../../../chunks/helpers.js\";\n//#region src/routes/admin/endpoints/[id]/+server.ts\nvar PATCH = async (event) => withAdminBody(event, async ({ requestId, body }) => {\n\tconst id = event.params.id;\n\tconst patch = {};\n\tif (typeof body.label === \"string\") patch.label = body.label;\n\tif (typeof body.url === \"string\") {\n\t\tconst urlCheck = validateEndpointUrl(body.url);\n\t\tif (!urlCheck.ok) {\n\t\t\tif (urlCheck.reason === \"http_not_allowed\") return errorResponse(400, \"http_not_allowed\", \"Plain HTTP is only allowed for loopback addresses. Use https:// for remote OpenPalm instances.\", {}, requestId);\n\t\t\treturn errorResponse(400, \"invalid_endpoint\", \"URL must be a valid http(s) URL\", {}, requestId);\n\t\t}\n\t\tpatch.url = urlCheck.url;\n\t}\n\tif (body.password === null) patch.password = null;\n\telse if (typeof body.password === \"string\") patch.password = body.password;\n\ttry {\n\t\tconst entry = updateEndpoint(id, patch);\n\t\treturn jsonResponse(200, { endpoint: {\n\t\t\tid: entry.id,\n\t\t\tlabel: entry.label,\n\t\t\turl: entry.url,\n\t\t\tisDefault: false,\n\t\t\thasPassword: Boolean(entry.password)\n\t\t} }, requestId);\n\t} catch (e) {\n\t\tconst msg = e instanceof Error ? e.message : \"failed to update endpoint\";\n\t\tconst status = msg.startsWith(\"Endpoint not found\") ? 404 : 400;\n\t\treturn errorResponse(status, status === 404 ? \"not_found\" : \"invalid_endpoint\", msg, {}, requestId);\n\t}\n});\nvar DELETE = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tconst id = event.params.id;\n\ttry {\n\t\tdeleteEndpoint(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 endpoint\";\n\t\tconst status = msg.startsWith(\"Endpoint not found\") ? 404 : 400;\n\t\treturn errorResponse(status, status === 404 ? \"not_found\" : \"invalid_endpoint\", msg, {}, requestId);\n\t}\n};\n//#endregion\nexport { DELETE, PATCH };\n"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { j as json } from './exports-D1quPX8S.js';
|
|
2
|
-
import { g as getOpenCodeClient } from './helpers-
|
|
2
|
+
import { g as getOpenCodeClient } from './helpers-Bebo0tHj.js';
|
|
3
3
|
import './utils-BSRjJDrZ.js';
|
|
4
|
-
import './src-
|
|
4
|
+
import './src-kpR902Zr.js';
|
|
5
5
|
import './chunk-CLZ62Ad-.js';
|
|
6
6
|
import 'node:module';
|
|
7
7
|
import './provider-constants-DPrj3yBX.js';
|
|
@@ -23,8 +23,8 @@ import 'zlib';
|
|
|
23
23
|
import 'node:assert';
|
|
24
24
|
import 'node:fs/promises';
|
|
25
25
|
import 'node:os';
|
|
26
|
-
import './endpoints-
|
|
27
|
-
import './state-
|
|
26
|
+
import './endpoints-C9sjcucN.js';
|
|
27
|
+
import './state-TG4xDwlK.js';
|
|
28
28
|
|
|
29
29
|
//#region src/routes/api/setup/opencode/provider/[provider]/oauth/callback/+server.ts
|
|
30
30
|
var PROVIDER_ID_RE = /^[a-zA-Z0-9_-]{1,64}$/;
|
|
@@ -55,4 +55,4 @@ var POST = async ({ params, request }) => {
|
|
|
55
55
|
};
|
|
56
56
|
|
|
57
57
|
export { POST };
|
|
58
|
-
//# sourceMappingURL=_server.ts-
|
|
58
|
+
//# sourceMappingURL=_server.ts-MkaNzvkX.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-MkaNzvkX.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/setup/opencode/provider/_provider_/oauth/callback/_server.ts.js"],"sourcesContent":["import { r as json } from \"../../../../../../../../../chunks/exports.js\";\nimport { a as getOpenCodeClient } from \"../../../../../../../../../chunks/helpers.js\";\n//#region src/routes/api/setup/opencode/provider/[provider]/oauth/callback/+server.ts\nvar PROVIDER_ID_RE = /^[a-zA-Z0-9_-]{1,64}$/;\nvar POST = async ({ params, request }) => {\n\tif (!PROVIDER_ID_RE.test(params.provider)) return json({\n\t\tok: false,\n\t\tmessage: \"Invalid provider\"\n\t}, { status: 400 });\n\ttry {\n\t\tconst body = await request.json();\n\t\tconst method = Number.isInteger(body.method) ? body.method : 0;\n\t\tconst code = typeof body.code === \"string\" ? body.code.slice(0, 1024) : void 0;\n\t\tconst result = await getOpenCodeClient().completeProviderOAuth(params.provider, method, code);\n\t\tif (!result.ok) return json({\n\t\t\tok: false,\n\t\t\tmessage: \"OAuth callback failed\"\n\t\t}, { status: 400 });\n\t\treturn json({\n\t\t\tok: true,\n\t\t\tcomplete: result.data\n\t\t});\n\t} catch {\n\t\treturn json({\n\t\t\tok: false,\n\t\t\tmessage: \"OAuth callback failed\"\n\t\t}, { status: 500 });\n\t}\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AACA,IAAI,cAAc,GAAG,uBAAuB;AACzC,IAAC,IAAI,GAAG,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK;AAC1C,CAAC,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,OAAO,IAAI,CAAC;AACxD,EAAE,EAAE,EAAE,KAAK;AACX,EAAE,OAAO,EAAE;AACX,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACpB,CAAC,IAAI;AACL,EAAE,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE;AACnC,EAAE,MAAM,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC;AAChE,EAAE,MAAM,IAAI,GAAG,OAAO,IAAI,CAAC,IAAI,KAAK,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,KAAK,CAAC;AAChF,EAAE,MAAM,MAAM,GAAG,MAAM,iBAAiB,EAAE,CAAC,qBAAqB,CAAC,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC;AAC/F,EAAE,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,OAAO,IAAI,CAAC;AAC9B,GAAG,EAAE,EAAE,KAAK;AACZ,GAAG,OAAO,EAAE;AACZ,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACrB,EAAE,OAAO,IAAI,CAAC;AACd,GAAG,EAAE,EAAE,IAAI;AACX,GAAG,QAAQ,EAAE,MAAM,CAAC;AACpB,GAAG,CAAC;AACJ,CAAC,CAAC,CAAC,MAAM;AACT,EAAE,OAAO,IAAI,CAAC;AACd,GAAG,EAAE,EAAE,KAAK;AACZ,GAAG,OAAO,EAAE;AACZ,GAAG,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC;AACrB,CAAC;AACD;;;;"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { j as json } from './exports-D1quPX8S.js';
|
|
2
|
-
import { a as loadSetupProviderPage } from './catalog-
|
|
2
|
+
import { a as loadSetupProviderPage } from './catalog-CVQgQDZT.js';
|
|
3
3
|
import './utils-BSRjJDrZ.js';
|
|
4
|
-
import './src-
|
|
4
|
+
import './src-kpR902Zr.js';
|
|
5
5
|
import './chunk-CLZ62Ad-.js';
|
|
6
6
|
import 'node:module';
|
|
7
7
|
import './provider-constants-DPrj3yBX.js';
|
|
@@ -23,11 +23,11 @@ import 'zlib';
|
|
|
23
23
|
import 'node:assert';
|
|
24
24
|
import 'node:fs/promises';
|
|
25
25
|
import 'node:os';
|
|
26
|
-
import './state-
|
|
26
|
+
import './state-TG4xDwlK.js';
|
|
27
27
|
import './coercion-TNFJisCC.js';
|
|
28
|
-
import './http-
|
|
29
|
-
import './endpoints-
|
|
30
|
-
import './config-
|
|
28
|
+
import './http-B9H_dpeX.js';
|
|
29
|
+
import './endpoints-C9sjcucN.js';
|
|
30
|
+
import './config-CW8zrJxw.js';
|
|
31
31
|
|
|
32
32
|
//#region src/routes/api/setup/opencode/providers/+server.ts
|
|
33
33
|
var GET = async () => {
|
|
@@ -38,4 +38,4 @@ var GET = async () => {
|
|
|
38
38
|
};
|
|
39
39
|
|
|
40
40
|
export { GET };
|
|
41
|
-
//# sourceMappingURL=_server.ts-
|
|
41
|
+
//# sourceMappingURL=_server.ts-NKH2c4tC.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-NKH2c4tC.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/api/setup/opencode/providers/_server.ts.js"],"sourcesContent":["import { r as json } from \"../../../../../../chunks/exports.js\";\nimport { n as loadSetupProviderPage } from \"../../../../../../chunks/catalog.js\";\n//#region src/routes/api/setup/opencode/providers/+server.ts\nvar GET = async () => {\n\treturn json({\n\t\tok: true,\n\t\t...await loadSetupProviderPage()\n\t});\n};\n//#endregion\nexport { GET };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AACG,IAAC,GAAG,GAAG,YAAY;AACtB,CAAC,OAAO,IAAI,CAAC;AACb,EAAE,EAAE,EAAE,IAAI;AACV,EAAE,GAAG,MAAM,qBAAqB;AAChC,EAAE,CAAC;AACH;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { o as checkDocker, d as applyTagChange,
|
|
2
|
-
import { g as getState } from './state-
|
|
3
|
-
import { d as getRequestId, r as requireAdmin, e as errorResponse, k as jsonResponse } from './helpers-
|
|
1
|
+
import { o as checkDocker, d as applyTagChange, D as DowngradeConfirmationRequired, G as createLogger } from './src-kpR902Zr.js';
|
|
2
|
+
import { g as getState } from './state-TG4xDwlK.js';
|
|
3
|
+
import { d as getRequestId, r as requireAdmin, e as errorResponse, k as jsonResponse } from './helpers-Bebo0tHj.js';
|
|
4
4
|
import './chunk-CLZ62Ad-.js';
|
|
5
5
|
import 'node:module';
|
|
6
6
|
import './provider-constants-DPrj3yBX.js';
|
|
@@ -22,7 +22,7 @@ import 'zlib';
|
|
|
22
22
|
import 'node:assert';
|
|
23
23
|
import 'node:fs/promises';
|
|
24
24
|
import 'node:os';
|
|
25
|
-
import './endpoints-
|
|
25
|
+
import './endpoints-C9sjcucN.js';
|
|
26
26
|
|
|
27
27
|
//#region src/routes/admin/stack-version/+server.ts
|
|
28
28
|
var logger = createLogger("stack-version");
|
|
@@ -39,6 +39,7 @@ var PATCH = async (event) => {
|
|
|
39
39
|
const tag = typeof body.tag === "string" ? body.tag.trim() : "";
|
|
40
40
|
if (!tag) return errorResponse(400, "tag_required", "tag is required", {}, requestId);
|
|
41
41
|
if (!/^[a-zA-Z0-9._\-]+$/.test(tag)) return errorResponse(400, "invalid_tag", "Tag must be alphanumeric with . _ or - only", {}, requestId);
|
|
42
|
+
const confirmDowngrade = body.confirmDowngrade === true;
|
|
42
43
|
const state = getState();
|
|
43
44
|
const dockerCheck = await checkDocker();
|
|
44
45
|
if (!dockerCheck.ok) {
|
|
@@ -47,8 +48,19 @@ var PATCH = async (event) => {
|
|
|
47
48
|
}
|
|
48
49
|
let result;
|
|
49
50
|
try {
|
|
50
|
-
result = await applyTagChange(state, tag);
|
|
51
|
+
result = await applyTagChange(state, tag, { confirmDowngrade });
|
|
51
52
|
} catch (e) {
|
|
53
|
+
if (e instanceof DowngradeConfirmationRequired) {
|
|
54
|
+
logger.info("stack-version downgrade requires confirmation", {
|
|
55
|
+
requestId,
|
|
56
|
+
currentVersion: e.currentVersion,
|
|
57
|
+
targetVersion: e.targetVersion
|
|
58
|
+
});
|
|
59
|
+
return errorResponse(409, "downgrade_confirmation_required", e.message, {
|
|
60
|
+
currentVersion: e.currentVersion,
|
|
61
|
+
targetVersion: e.targetVersion
|
|
62
|
+
}, requestId);
|
|
63
|
+
}
|
|
52
64
|
const msg = e instanceof Error ? e.message : String(e);
|
|
53
65
|
logger.error("stack-version apply failed", {
|
|
54
66
|
requestId,
|
|
@@ -68,4 +80,4 @@ var PATCH = async (event) => {
|
|
|
68
80
|
};
|
|
69
81
|
|
|
70
82
|
export { PATCH };
|
|
71
|
-
//# sourceMappingURL=_server.ts-
|
|
83
|
+
//# sourceMappingURL=_server.ts-UDLeVWXU.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_server.ts-UDLeVWXU.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/stack-version/_server.ts.js"],"sourcesContent":["import { L as DowngradeConfirmationRequired, Q as checkDocker, hn as createLogger, z as applyTagChange } from \"../../../../chunks/src.js\";\nimport { t as getState } from \"../../../../chunks/state.js\";\nimport { d as requireAdmin, i as errorResponse, l as jsonResponse, o as getRequestId } from \"../../../../chunks/helpers.js\";\n//#region src/routes/admin/stack-version/+server.ts\nvar logger = createLogger(\"stack-version\");\nvar PATCH = async (event) => {\n\tconst requestId = getRequestId(event);\n\tconst authError = requireAdmin(event, requestId);\n\tif (authError) return authError;\n\tlet body;\n\ttry {\n\t\tbody = await event.request.json();\n\t} catch {\n\t\treturn errorResponse(400, \"invalid_json\", \"Request body must be valid JSON\", {}, requestId);\n\t}\n\tconst tag = typeof body.tag === \"string\" ? body.tag.trim() : \"\";\n\tif (!tag) return errorResponse(400, \"tag_required\", \"tag is required\", {}, requestId);\n\tif (!/^[a-zA-Z0-9._\\-]+$/.test(tag)) return errorResponse(400, \"invalid_tag\", \"Tag must be alphanumeric with . _ or - only\", {}, requestId);\n\tconst confirmDowngrade = body.confirmDowngrade === true;\n\tconst state = getState();\n\tconst dockerCheck = await checkDocker();\n\tif (!dockerCheck.ok) {\n\t\tlogger.error(\"stack-version aborted: docker unavailable\", { requestId });\n\t\treturn errorResponse(503, \"docker_unavailable\", \"Docker is not available\", { stderr: dockerCheck.stderr }, requestId);\n\t}\n\tlet result;\n\ttry {\n\t\tresult = await applyTagChange(state, tag, { confirmDowngrade });\n\t} catch (e) {\n\t\tif (e instanceof DowngradeConfirmationRequired) {\n\t\t\tlogger.info(\"stack-version downgrade requires confirmation\", {\n\t\t\t\trequestId,\n\t\t\t\tcurrentVersion: e.currentVersion,\n\t\t\t\ttargetVersion: e.targetVersion\n\t\t\t});\n\t\t\treturn errorResponse(409, \"downgrade_confirmation_required\", e.message, {\n\t\t\t\tcurrentVersion: e.currentVersion,\n\t\t\t\ttargetVersion: e.targetVersion\n\t\t\t}, requestId);\n\t\t}\n\t\tconst msg = e instanceof Error ? e.message : String(e);\n\t\tlogger.error(\"stack-version apply failed\", {\n\t\t\trequestId,\n\t\t\terror: msg\n\t\t});\n\t\treturn errorResponse(502, \"apply_failed\", msg, { message: msg }, requestId);\n\t}\n\tlogger.info(\"stack-version applied\", {\n\t\trequestId,\n\t\timageTag: result.imageTag\n\t});\n\treturn jsonResponse(200, {\n\t\tok: true,\n\t\timageTag: result.imageTag,\n\t\trestarted: result.restarted\n\t}, requestId);\n};\n//#endregion\nexport { PATCH };\n"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { d as getRequestId, e as errorResponse, f as getUiLoginPassword, s as safeTokenCompare, b as createSession } from './helpers-
|
|
2
|
-
import { s as sessionCookieHeader } from './session-cookie-
|
|
3
|
-
import './src-
|
|
1
|
+
import { d as getRequestId, e as errorResponse, f as getUiLoginPassword, s as safeTokenCompare, b as createSession } from './helpers-Bebo0tHj.js';
|
|
2
|
+
import { s as sessionCookieHeader } from './session-cookie-DI4jIKdM.js';
|
|
3
|
+
import './src-kpR902Zr.js';
|
|
4
4
|
import './chunk-CLZ62Ad-.js';
|
|
5
5
|
import 'node:module';
|
|
6
6
|
import './provider-constants-DPrj3yBX.js';
|
|
@@ -22,8 +22,8 @@ import 'zlib';
|
|
|
22
22
|
import 'node:assert';
|
|
23
23
|
import 'node:fs/promises';
|
|
24
24
|
import 'node:os';
|
|
25
|
-
import './endpoints-
|
|
26
|
-
import './state-
|
|
25
|
+
import './endpoints-C9sjcucN.js';
|
|
26
|
+
import './state-TG4xDwlK.js';
|
|
27
27
|
|
|
28
28
|
//#region src/routes/admin/auth/session/+server.ts
|
|
29
29
|
/**
|
|
@@ -61,4 +61,4 @@ var POST = async (event) => {
|
|
|
61
61
|
};
|
|
62
62
|
|
|
63
63
|
export { POST };
|
|
64
|
-
//# sourceMappingURL=_server.ts-
|
|
64
|
+
//# sourceMappingURL=_server.ts-X8_yz_cF.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_server.ts-
|
|
1
|
+
{"version":3,"file":"_server.ts-X8_yz_cF.js","sources":["../../../.svelte-kit/adapter-node/entries/endpoints/admin/auth/session/_server.ts.js"],"sourcesContent":["import { f as safeTokenCompare, g as getUiLoginPassword, h as createSession, i as errorResponse, o as getRequestId } from \"../../../../../chunks/helpers.js\";\nimport { r as sessionCookieHeader } from \"../../../../../chunks/session-cookie.js\";\n//#region src/routes/admin/auth/session/+server.ts\n/**\n* POST /admin/auth/session\n*\n* Issues an `op_session` cookie after verifying the operator-supplied password\n* against `process.env.OP_UI_LOGIN_PASSWORD`.\n*\n* The cookie value is a random UUID session token — NOT the plaintext password.\n* Kept alongside `/admin/auth/login` as an alias; both verify the same\n* `password` body field and issue the `op_session` cookie.\n*/\nvar POST = async (event) => {\n\tconst requestId = getRequestId(event);\n\tlet body;\n\ttry {\n\t\tbody = await event.request.json();\n\t} catch {\n\t\treturn errorResponse(400, \"bad_request\", \"Invalid JSON body\", {}, requestId);\n\t}\n\tconst password = typeof body.password === \"string\" ? body.password : \"\";\n\tif (!password) return errorResponse(400, \"bad_request\", \"password is required\", {}, requestId);\n\tconst configured = getUiLoginPassword();\n\tif (!configured) return errorResponse(503, \"admin_not_configured\", \"OP_UI_LOGIN_PASSWORD has not been set. Complete setup first.\", {}, requestId);\n\tif (!safeTokenCompare(password, configured)) return errorResponse(401, \"unauthorized\", \"Invalid password\", {}, requestId);\n\tconst sessionToken = createSession();\n\treturn new Response(JSON.stringify({ ok: true }), {\n\t\tstatus: 200,\n\t\theaders: {\n\t\t\t\"content-type\": \"application/json\",\n\t\t\t\"set-cookie\": sessionCookieHeader(sessionToken, event.request),\n\t\t\t\"x-request-id\": requestId\n\t\t}\n\t});\n};\n//#endregion\nexport { POST };\n"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACG,IAAC,IAAI,GAAG,OAAO,KAAK,KAAK;AAC5B,CAAC,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,CAAC;AACtC,CAAC,IAAI,IAAI;AACT,CAAC,IAAI;AACL,EAAE,IAAI,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE;AACnC,CAAC,CAAC,CAAC,MAAM;AACT,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,aAAa,EAAE,mBAAmB,EAAE,EAAE,EAAE,SAAS,CAAC;AAC9E,CAAC;AACD,CAAC,MAAM,QAAQ,GAAG,OAAO,IAAI,CAAC,QAAQ,KAAK,QAAQ,GAAG,IAAI,CAAC,QAAQ,GAAG,EAAE;AACxE,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,aAAa,EAAE,sBAAsB,EAAE,EAAE,EAAE,SAAS,CAAC;AAC/F,CAAC,MAAM,UAAU,GAAG,kBAAkB,EAAE;AACxC,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,sBAAsB,EAAE,8DAA8D,EAAE,EAAE,EAAE,SAAS,CAAC;AAClJ,CAAC,IAAI,CAAC,gBAAgB,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,OAAO,aAAa,CAAC,GAAG,EAAE,cAAc,EAAE,kBAAkB,EAAE,EAAE,EAAE,SAAS,CAAC;AAC1H,CAAC,MAAM,YAAY,GAAG,aAAa,EAAE;AACrC,CAAC,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE;AACnD,EAAE,MAAM,EAAE,GAAG;AACb,EAAE,OAAO,EAAE;AACX,GAAG,cAAc,EAAE,kBAAkB;AACrC,GAAG,YAAY,EAAE,mBAAmB,CAAC,YAAY,EAAE,KAAK,CAAC,OAAO,CAAC;AACjE,GAAG,cAAc,EAAE;AACnB;AACA,EAAE,CAAC;AACH;;;;"}
|