@openpalm/ui 0.12.34 → 0.12.35
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/.openpalm-ui-version +1 -1
- package/build/client/_app/immutable/chunks/{B5tYS-bg.js → BJ1FElAi.js} +2 -2
- package/build/client/_app/immutable/chunks/BJ1FElAi.js.br +0 -0
- package/build/client/_app/immutable/chunks/BJ1FElAi.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BllPz2fN.js +1 -0
- package/build/client/_app/immutable/chunks/BllPz2fN.js.br +2 -0
- package/build/client/_app/immutable/chunks/BllPz2fN.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{CJjzJNol.js → Cn5j2N5s.js} +1 -1
- package/build/client/_app/immutable/chunks/Cn5j2N5s.js.br +0 -0
- package/build/client/_app/immutable/chunks/Cn5j2N5s.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{CS-tYlaw.js → Dma1yH6T.js} +1 -1
- package/build/client/_app/immutable/chunks/Dma1yH6T.js.br +0 -0
- package/build/client/_app/immutable/chunks/Dma1yH6T.js.gz +0 -0
- package/build/client/_app/immutable/entry/{app.D7TBsXqj.js → app.DCTrXp6P.js} +2 -2
- package/build/client/_app/immutable/entry/app.DCTrXp6P.js.br +0 -0
- package/build/client/_app/immutable/entry/app.DCTrXp6P.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.DSb-TcOn.js +1 -0
- package/build/client/_app/immutable/entry/start.DSb-TcOn.js.br +1 -0
- package/build/client/_app/immutable/entry/start.DSb-TcOn.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{1.Bi6WIdhc.js → 1.DeODpuBZ.js} +1 -1
- package/build/client/_app/immutable/nodes/1.DeODpuBZ.js.br +0 -0
- package/build/client/_app/immutable/nodes/1.DeODpuBZ.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{4.NXDNIo_o.js → 4.BPWbyAG8.js} +1 -1
- package/build/client/_app/immutable/nodes/4.BPWbyAG8.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.BPWbyAG8.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{5.CGz0srSp.js → 5.DSNlc6_T.js} +1 -1
- package/build/client/_app/immutable/nodes/5.DSNlc6_T.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.DSNlc6_T.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{6.BUJ84ynI.js → 6.BXpzaUL0.js} +1 -1
- package/build/client/_app/immutable/nodes/6.BXpzaUL0.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.BXpzaUL0.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{7.D4v1j10K.js → 7.BrFVK4tb.js} +1 -1
- package/build/client/_app/immutable/nodes/7.BrFVK4tb.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.BrFVK4tb.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{8.eBCg3Ry9.js → 8.w_eWNqum.js} +1 -1
- package/build/client/_app/immutable/nodes/8.w_eWNqum.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.w_eWNqum.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/1-DHr2ahqY.js +9 -0
- package/build/server/chunks/{1-DrFASQif.js.map → 1-DHr2ahqY.js.map} +1 -1
- package/build/server/chunks/{10-B6IaM0-e.js → 10-Bhcyw8HA.js} +5 -5
- package/build/server/chunks/{10-B6IaM0-e.js.map → 10-Bhcyw8HA.js.map} +1 -1
- package/build/server/chunks/{4-C3H9LKRg.js → 4-Cd3Q4DoQ.js} +3 -3
- package/build/server/chunks/{4-C3H9LKRg.js.map → 4-Cd3Q4DoQ.js.map} +1 -1
- package/build/server/chunks/{5-BGxY0RSD.js → 5-BBhfqYBp.js} +3 -3
- package/build/server/chunks/{5-BGxY0RSD.js.map → 5-BBhfqYBp.js.map} +1 -1
- package/build/server/chunks/{6-BZ-Odk7I.js → 6-Djg8mg9E.js} +3 -3
- package/build/server/chunks/{6-BZ-Odk7I.js.map → 6-Djg8mg9E.js.map} +1 -1
- package/build/server/chunks/{7-etzd-Xd2.js → 7-D2mE5z4a.js} +3 -3
- package/build/server/chunks/{7-etzd-Xd2.js.map → 7-D2mE5z4a.js.map} +1 -1
- package/build/server/chunks/{8-CNz8Jpc-.js → 8-BZ53nosC.js} +3 -3
- package/build/server/chunks/{8-CNz8Jpc-.js.map → 8-BZ53nosC.js.map} +1 -1
- package/build/server/chunks/{Navbar-CXNzYgdt.js → Navbar-DmstJWgp.js} +3 -3
- package/build/server/chunks/{Navbar-CXNzYgdt.js.map → Navbar-DmstJWgp.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-mebE6HA8.js → _page.svelte-6H8jZf49.js} +3 -3
- package/build/server/chunks/{_page.svelte-mebE6HA8.js.map → _page.svelte-6H8jZf49.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-DhOqX8mJ.js → _page.svelte-CupozR5-.js} +3 -3
- package/build/server/chunks/{_page.svelte-DhOqX8mJ.js.map → _page.svelte-CupozR5-.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-DSEIDtL1.js → _page.svelte-CzA8BxOP.js} +5 -5
- package/build/server/chunks/{_page.svelte-DSEIDtL1.js.map → _page.svelte-CzA8BxOP.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-Cj0Y9tCh.js → _page.svelte-DGMNp0WD.js} +5 -5
- package/build/server/chunks/{_page.svelte-Cj0Y9tCh.js.map → _page.svelte-DGMNp0WD.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-DtgRYmye.js → _page.svelte-DmAj2xUu.js} +5 -5
- package/build/server/chunks/{_page.svelte-DtgRYmye.js.map → _page.svelte-DmAj2xUu.js.map} +1 -1
- package/build/server/chunks/{_server.ts-jf6Xk_xd.js → _server.ts-17Sm7tBJ.js} +5 -5
- package/build/server/chunks/{_server.ts-jf6Xk_xd.js.map → _server.ts-17Sm7tBJ.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DoHWs9cP.js → _server.ts-4mcrPKs8.js} +5 -5
- package/build/server/chunks/{_server.ts-DoHWs9cP.js.map → _server.ts-4mcrPKs8.js.map} +1 -1
- package/build/server/chunks/{_server.ts-COm0mfdC.js → _server.ts-644qDVn-.js} +5 -5
- package/build/server/chunks/{_server.ts-COm0mfdC.js.map → _server.ts-644qDVn-.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BbuEozdR.js → _server.ts-7HHVmf6s.js} +5 -5
- package/build/server/chunks/{_server.ts-BbuEozdR.js.map → _server.ts-7HHVmf6s.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Df9n4LH_.js → _server.ts-7PYmr9Z-.js} +5 -5
- package/build/server/chunks/{_server.ts-Df9n4LH_.js.map → _server.ts-7PYmr9Z-.js.map} +1 -1
- package/build/server/chunks/{_server.ts-OiPARfGO.js → _server.ts-7YfKZbRf.js} +6 -6
- package/build/server/chunks/{_server.ts-OiPARfGO.js.map → _server.ts-7YfKZbRf.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B1ToGf9w.js → _server.ts-B4IkHWrK.js} +5 -5
- package/build/server/chunks/{_server.ts-B1ToGf9w.js.map → _server.ts-B4IkHWrK.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BagzUjh6.js → _server.ts-B4sIzTwj.js} +5 -5
- package/build/server/chunks/{_server.ts-BagzUjh6.js.map → _server.ts-B4sIzTwj.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Dg9JwLNX.js → _server.ts-BHglX11P.js} +7 -7
- package/build/server/chunks/{_server.ts-Dg9JwLNX.js.map → _server.ts-BHglX11P.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Adh_oL_T.js → _server.ts-BIKnhFxu.js} +5 -5
- package/build/server/chunks/{_server.ts-Adh_oL_T.js.map → _server.ts-BIKnhFxu.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CjQHzpFo.js → _server.ts-BItwSO5E.js} +2 -2
- package/build/server/chunks/{_server.ts-CjQHzpFo.js.map → _server.ts-BItwSO5E.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BsCPihL8.js → _server.ts-BJlwCXg-.js} +5 -5
- package/build/server/chunks/{_server.ts-BsCPihL8.js.map → _server.ts-BJlwCXg-.js.map} +1 -1
- package/build/server/chunks/{_server.ts-GtYK4DYD.js → _server.ts-BR0sBzB0.js} +5 -5
- package/build/server/chunks/{_server.ts-GtYK4DYD.js.map → _server.ts-BR0sBzB0.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DaWQ85du.js → _server.ts-Baozh1FE.js} +5 -5
- package/build/server/chunks/{_server.ts-DaWQ85du.js.map → _server.ts-Baozh1FE.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CxB6_YDS.js → _server.ts-BbtNmpd6.js} +5 -5
- package/build/server/chunks/{_server.ts-CxB6_YDS.js.map → _server.ts-BbtNmpd6.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DkNKtYwN.js → _server.ts-BexCNXZL.js} +5 -5
- package/build/server/chunks/{_server.ts-DkNKtYwN.js.map → _server.ts-BexCNXZL.js.map} +1 -1
- package/build/server/chunks/{_server.ts-WvKWpw-U.js → _server.ts-Bh-5jiYC.js} +5 -5
- package/build/server/chunks/{_server.ts-WvKWpw-U.js.map → _server.ts-Bh-5jiYC.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CtKU8FWp.js → _server.ts-Bh5t8TMR.js} +5 -5
- package/build/server/chunks/{_server.ts-CtKU8FWp.js.map → _server.ts-Bh5t8TMR.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B80VYpEB.js → _server.ts-BkKDLEw2.js} +5 -5
- package/build/server/chunks/{_server.ts-B80VYpEB.js.map → _server.ts-BkKDLEw2.js.map} +1 -1
- package/build/server/chunks/{_server.ts-n1RjgFMa.js → _server.ts-BlGrZPhR.js} +7 -7
- package/build/server/chunks/{_server.ts-n1RjgFMa.js.map → _server.ts-BlGrZPhR.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BUrVYBb9.js → _server.ts-BmQzKzgF.js} +5 -5
- package/build/server/chunks/{_server.ts-BUrVYBb9.js.map → _server.ts-BmQzKzgF.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CZuDLyOr.js → _server.ts-Bp8WEV3T.js} +5 -5
- package/build/server/chunks/{_server.ts-CZuDLyOr.js.map → _server.ts-Bp8WEV3T.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CT31IqQJ.js → _server.ts-BrMoDp9S.js} +5 -5
- package/build/server/chunks/{_server.ts-CT31IqQJ.js.map → _server.ts-BrMoDp9S.js.map} +1 -1
- package/build/server/chunks/{_server.ts-C0kEzW7V.js → _server.ts-Bv2PmRE5.js} +7 -7
- package/build/server/chunks/{_server.ts-C0kEzW7V.js.map → _server.ts-Bv2PmRE5.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DtycNfMN.js → _server.ts-BvJoozcb.js} +5 -5
- package/build/server/chunks/{_server.ts-DtycNfMN.js.map → _server.ts-BvJoozcb.js.map} +1 -1
- package/build/server/chunks/{_server.ts-I0lkvp1g.js → _server.ts-Bzx8e_vT.js} +5 -5
- package/build/server/chunks/{_server.ts-I0lkvp1g.js.map → _server.ts-Bzx8e_vT.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BBHgp0iO.js → _server.ts-C759kKrI.js} +5 -5
- package/build/server/chunks/{_server.ts-BBHgp0iO.js.map → _server.ts-C759kKrI.js.map} +1 -1
- package/build/server/chunks/{_server.ts-cT2SjALE.js → _server.ts-C7BHJSCS.js} +6 -6
- package/build/server/chunks/{_server.ts-cT2SjALE.js.map → _server.ts-C7BHJSCS.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BwZW3eok.js → _server.ts-C7EVl-bi.js} +5 -5
- package/build/server/chunks/{_server.ts-BwZW3eok.js.map → _server.ts-C7EVl-bi.js.map} +1 -1
- package/build/server/chunks/{_server.ts-qwACnEWC.js → _server.ts-C8owE7KE.js} +5 -5
- package/build/server/chunks/{_server.ts-qwACnEWC.js.map → _server.ts-C8owE7KE.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CY5x6NoR.js → _server.ts-CCSbDOWm.js} +5 -5
- package/build/server/chunks/{_server.ts-CY5x6NoR.js.map → _server.ts-CCSbDOWm.js.map} +1 -1
- package/build/server/chunks/{_server.ts-fEdCKaDh.js → _server.ts-CFPp8keI.js} +5 -5
- package/build/server/chunks/{_server.ts-fEdCKaDh.js.map → _server.ts-CFPp8keI.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Z4V3QkQm.js → _server.ts-CKnr7Uu8.js} +2 -2
- package/build/server/chunks/{_server.ts-Z4V3QkQm.js.map → _server.ts-CKnr7Uu8.js.map} +1 -1
- package/build/server/chunks/{_server.ts-4BGJWB3J.js → _server.ts-CMfWgDOR.js} +6 -6
- package/build/server/chunks/{_server.ts-4BGJWB3J.js.map → _server.ts-CMfWgDOR.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Dosr-dE4.js → _server.ts-CPEbL-Pt.js} +6 -6
- package/build/server/chunks/{_server.ts-Dosr-dE4.js.map → _server.ts-CPEbL-Pt.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CM7rcTWq.js → _server.ts-CUSgj-vr.js} +7 -7
- package/build/server/chunks/{_server.ts-CM7rcTWq.js.map → _server.ts-CUSgj-vr.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DvFTsvub.js → _server.ts-CWb18g88.js} +8 -8
- package/build/server/chunks/{_server.ts-DvFTsvub.js.map → _server.ts-CWb18g88.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DVQsU_HM.js → _server.ts-CWz-e7Hy.js} +7 -7
- package/build/server/chunks/{_server.ts-DVQsU_HM.js.map → _server.ts-CWz-e7Hy.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B_d52cJx.js → _server.ts-CZJ1Q1LT.js} +7 -7
- package/build/server/chunks/{_server.ts-B_d52cJx.js.map → _server.ts-CZJ1Q1LT.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CftDPhoe.js → _server.ts-Caecp_9T.js} +6 -6
- package/build/server/chunks/{_server.ts-CftDPhoe.js.map → _server.ts-Caecp_9T.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DllcywUx.js → _server.ts-CbW89QHq.js} +5 -5
- package/build/server/chunks/{_server.ts-DllcywUx.js.map → _server.ts-CbW89QHq.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DG6KmiIw.js → _server.ts-CeuX4TD2.js} +6 -6
- package/build/server/chunks/{_server.ts-DG6KmiIw.js.map → _server.ts-CeuX4TD2.js.map} +1 -1
- package/build/server/chunks/{_server.ts-fCo6TSRW.js → _server.ts-CjrBMt_s.js} +5 -5
- package/build/server/chunks/{_server.ts-fCo6TSRW.js.map → _server.ts-CjrBMt_s.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DNRHhDFK.js → _server.ts-Clnw_CPP.js} +4 -4
- package/build/server/chunks/{_server.ts-DNRHhDFK.js.map → _server.ts-Clnw_CPP.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CawziIqs.js → _server.ts-Co5cJt5A.js} +2 -2
- package/build/server/chunks/{_server.ts-CawziIqs.js.map → _server.ts-Co5cJt5A.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Ce-Yb2f8.js → _server.ts-CswojIO6.js} +5 -5
- package/build/server/chunks/{_server.ts-Ce-Yb2f8.js.map → _server.ts-CswojIO6.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B1BKJgU_.js → _server.ts-CwLV4b1f.js} +27 -5
- package/build/server/chunks/_server.ts-CwLV4b1f.js.map +1 -0
- package/build/server/chunks/{_server.ts-B3BDnoZu.js → _server.ts-CyCT3WI1.js} +5 -5
- package/build/server/chunks/{_server.ts-B3BDnoZu.js.map → _server.ts-CyCT3WI1.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DYCdg-2V.js → _server.ts-D-kETy9m.js} +5 -5
- package/build/server/chunks/{_server.ts-DYCdg-2V.js.map → _server.ts-D-kETy9m.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BAZYZreJ.js → _server.ts-D02ydqWj.js} +5 -5
- package/build/server/chunks/{_server.ts-BAZYZreJ.js.map → _server.ts-D02ydqWj.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Dr9Qc9qb.js → _server.ts-D1SQw1xr.js} +5 -5
- package/build/server/chunks/{_server.ts-Dr9Qc9qb.js.map → _server.ts-D1SQw1xr.js.map} +1 -1
- package/build/server/chunks/{_server.ts-mL9UAmlh.js → _server.ts-D92SRQrD.js} +5 -5
- package/build/server/chunks/{_server.ts-mL9UAmlh.js.map → _server.ts-D92SRQrD.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BWbP8wPw.js → _server.ts-DEmX_Z0O.js} +6 -6
- package/build/server/chunks/{_server.ts-BWbP8wPw.js.map → _server.ts-DEmX_Z0O.js.map} +1 -1
- package/build/server/chunks/{_server.ts-Bdv1N4Zn.js → _server.ts-DEmtjEMi.js} +5 -5
- package/build/server/chunks/{_server.ts-Bdv1N4Zn.js.map → _server.ts-DEmtjEMi.js.map} +1 -1
- package/build/server/chunks/{_server.ts-ZReIn63p.js → _server.ts-DGdvFSCJ.js} +5 -5
- package/build/server/chunks/{_server.ts-ZReIn63p.js.map → _server.ts-DGdvFSCJ.js.map} +1 -1
- package/build/server/chunks/{_server.ts-C7mCmTRF.js → _server.ts-DI7DVHmY.js} +5 -5
- package/build/server/chunks/{_server.ts-C7mCmTRF.js.map → _server.ts-DI7DVHmY.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DBG9PZWB.js → _server.ts-DKAThwNY.js} +5 -5
- package/build/server/chunks/{_server.ts-DBG9PZWB.js.map → _server.ts-DKAThwNY.js.map} +1 -1
- package/build/server/chunks/{_server.ts-B2oxlCMT.js → _server.ts-DMk0lyPh.js} +5 -5
- package/build/server/chunks/{_server.ts-B2oxlCMT.js.map → _server.ts-DMk0lyPh.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BPposGPj.js → _server.ts-DP5YV8h3.js} +5 -5
- package/build/server/chunks/{_server.ts-BPposGPj.js.map → _server.ts-DP5YV8h3.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DcJBYt6E.js → _server.ts-DTa1SYz_.js} +5 -5
- package/build/server/chunks/{_server.ts-DcJBYt6E.js.map → _server.ts-DTa1SYz_.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BfQ7ldwW.js → _server.ts-DYjYHIIg.js} +5 -5
- package/build/server/chunks/{_server.ts-BfQ7ldwW.js.map → _server.ts-DYjYHIIg.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DB3tMVgG.js → _server.ts-De3Ci2sP.js} +5 -5
- package/build/server/chunks/{_server.ts-DB3tMVgG.js.map → _server.ts-De3Ci2sP.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DlEksmNN.js → _server.ts-De6opDLP.js} +5 -5
- package/build/server/chunks/{_server.ts-DlEksmNN.js.map → _server.ts-De6opDLP.js.map} +1 -1
- package/build/server/chunks/{_server.ts-D2ZlFfi4.js → _server.ts-Der6MKsu.js} +2 -2
- package/build/server/chunks/{_server.ts-D2ZlFfi4.js.map → _server.ts-Der6MKsu.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DtLrRPqj.js → _server.ts-DfwiRzeI.js} +5 -5
- package/build/server/chunks/{_server.ts-DtLrRPqj.js.map → _server.ts-DfwiRzeI.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CxiVPWJk.js → _server.ts-Dg1Zjg-X.js} +2 -2
- package/build/server/chunks/{_server.ts-CxiVPWJk.js.map → _server.ts-Dg1Zjg-X.js.map} +1 -1
- package/build/server/chunks/{_server.ts-C5OqiDmH.js → _server.ts-DgYWHXWn.js} +5 -5
- package/build/server/chunks/{_server.ts-C5OqiDmH.js.map → _server.ts-DgYWHXWn.js.map} +1 -1
- package/build/server/chunks/{_server.ts-NMR4dwKz.js → _server.ts-DkpnaxtR.js} +6 -6
- package/build/server/chunks/{_server.ts-NMR4dwKz.js.map → _server.ts-DkpnaxtR.js.map} +1 -1
- package/build/server/chunks/{_server.ts-COIxtLd8.js → _server.ts-DnTpL24U.js} +5 -5
- package/build/server/chunks/{_server.ts-COIxtLd8.js.map → _server.ts-DnTpL24U.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DT10TFj6.js → _server.ts-Do9vXHTl.js} +5 -5
- package/build/server/chunks/{_server.ts-DT10TFj6.js.map → _server.ts-Do9vXHTl.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BMZDMOWe.js → _server.ts-Dr9Nrd0B.js} +4 -4
- package/build/server/chunks/{_server.ts-BMZDMOWe.js.map → _server.ts-Dr9Nrd0B.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DrHTacva.js → _server.ts-DuzwVKnI.js} +6 -6
- package/build/server/chunks/{_server.ts-DrHTacva.js.map → _server.ts-DuzwVKnI.js.map} +1 -1
- package/build/server/chunks/{_server.ts-C6EvDiCB.js → _server.ts-DyAq_u9y.js} +5 -5
- package/build/server/chunks/{_server.ts-C6EvDiCB.js.map → _server.ts-DyAq_u9y.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CpOcb-Dy.js → _server.ts-F9jr1TXS.js} +5 -5
- package/build/server/chunks/{_server.ts-CpOcb-Dy.js.map → _server.ts-F9jr1TXS.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CWdInfEp.js → _server.ts-Ff36E_kQ.js} +5 -5
- package/build/server/chunks/{_server.ts-CWdInfEp.js.map → _server.ts-Ff36E_kQ.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BYJr9N2P.js → _server.ts-IrIGIyzI.js} +6 -6
- package/build/server/chunks/{_server.ts-BYJr9N2P.js.map → _server.ts-IrIGIyzI.js.map} +1 -1
- package/build/server/chunks/{_server.ts-iMaXV6FY.js → _server.ts-IuJoqgcf.js} +5 -5
- package/build/server/chunks/{_server.ts-iMaXV6FY.js.map → _server.ts-IuJoqgcf.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CFXMWI2h.js → _server.ts-Q6gku721.js} +5 -5
- package/build/server/chunks/{_server.ts-CFXMWI2h.js.map → _server.ts-Q6gku721.js.map} +1 -1
- package/build/server/chunks/{_server.ts-CvE-xhWs.js → _server.ts-WRqR790z.js} +5 -5
- package/build/server/chunks/{_server.ts-CvE-xhWs.js.map → _server.ts-WRqR790z.js.map} +1 -1
- package/build/server/chunks/{_server.ts-D45cu11n.js → _server.ts-aIvJGwVD.js} +5 -5
- package/build/server/chunks/{_server.ts-D45cu11n.js.map → _server.ts-aIvJGwVD.js.map} +1 -1
- package/build/server/chunks/{_server.ts-r4_ma4-J.js → _server.ts-p6BIfEPN.js} +6 -6
- package/build/server/chunks/{_server.ts-r4_ma4-J.js.map → _server.ts-p6BIfEPN.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BD8TAE0P.js → _server.ts-wZerakZf.js} +5 -5
- package/build/server/chunks/{_server.ts-BD8TAE0P.js.map → _server.ts-wZerakZf.js.map} +1 -1
- package/build/server/chunks/{_server.ts-BzpCbc3S.js → _server.ts-x2T-1ecq.js} +27 -5
- package/build/server/chunks/_server.ts-x2T-1ecq.js.map +1 -0
- package/build/server/chunks/{_server.ts-Cxr9pVQe.js → _server.ts-ygo2IFet.js} +5 -5
- package/build/server/chunks/{_server.ts-Cxr9pVQe.js.map → _server.ts-ygo2IFet.js.map} +1 -1
- package/build/server/chunks/{_server.ts-DK2txFVU.js → _server.ts-zlBR3T4Z.js} +6 -6
- package/build/server/chunks/{_server.ts-DK2txFVU.js.map → _server.ts-zlBR3T4Z.js.map} +1 -1
- package/build/server/chunks/{addon-helpers-BiMRh0Y0.js → addon-helpers-XImVlKha.js} +3 -3
- package/build/server/chunks/{addon-helpers-BiMRh0Y0.js.map → addon-helpers-XImVlKha.js.map} +1 -1
- package/build/server/chunks/{akm-Ry9Pheex.js → akm-BHWIeMbV.js} +2 -2
- package/build/server/chunks/{akm-Ry9Pheex.js.map → akm-BHWIeMbV.js.map} +1 -1
- package/build/server/chunks/{catalog-UO1eH4XT.js → catalog-Fe3z4JM_.js} +5 -5
- package/build/server/chunks/{catalog-UO1eH4XT.js.map → catalog-Fe3z4JM_.js.map} +1 -1
- package/build/server/chunks/{client-DrRpdh3J.js → client-lMbA6Jug.js} +2 -2
- package/build/server/chunks/{client-DrRpdh3J.js.map → client-lMbA6Jug.js.map} +1 -1
- package/build/server/chunks/{config-CJ5lgj6m.js → config-B2V9qVRT.js} +2 -2
- package/build/server/chunks/{config-CJ5lgj6m.js.map → config-B2V9qVRT.js.map} +1 -1
- package/build/server/chunks/{docker-BA7ZmLlN.js → docker-CEt-3e57.js} +2 -2
- package/build/server/chunks/{docker-BA7ZmLlN.js.map → docker-CEt-3e57.js.map} +1 -1
- package/build/server/chunks/{endpoints-CaZDtz1E.js → endpoints-ev9YSBb8.js} +2 -2
- package/build/server/chunks/{endpoints-CaZDtz1E.js.map → endpoints-ev9YSBb8.js.map} +1 -1
- package/build/server/chunks/{error.svelte-HbdmPA5p.js → error.svelte-CIoDqhLx.js} +4 -4
- package/build/server/chunks/{error.svelte-HbdmPA5p.js.map → error.svelte-CIoDqhLx.js.map} +1 -1
- package/build/server/chunks/{helpers-CbGxMTVo.js → helpers-BluGgY3g.js} +3 -3
- package/build/server/chunks/{helpers-CbGxMTVo.js.map → helpers-BluGgY3g.js.map} +1 -1
- package/build/server/chunks/{hooks.server-wW3pI-qp.js → hooks.server-DMdbB9Fv.js} +7 -7
- package/build/server/chunks/{hooks.server-wW3pI-qp.js.map → hooks.server-DMdbB9Fv.js.map} +1 -1
- package/build/server/chunks/{http-BJBLvJS_.js → http-BmFqfzyw.js} +2 -2
- package/build/server/chunks/{http-BJBLvJS_.js.map → http-BmFqfzyw.js.map} +1 -1
- package/build/server/chunks/{internal-Cg-mVr8r.js → internal-CGvCj4Lu.js} +3 -3
- package/build/server/chunks/{internal-Cg-mVr8r.js.map → internal-CGvCj4Lu.js.map} +1 -1
- package/build/server/chunks/{migration-status-DwG2iEgP.js → migration-status-UK_z_iXN.js} +2 -2
- package/build/server/chunks/{migration-status-DwG2iEgP.js.map → migration-status-UK_z_iXN.js.map} +1 -1
- package/build/server/chunks/{session-cookie-CAsGSkTV.js → session-cookie-Cn2O_Cv6.js} +2 -2
- package/build/server/chunks/{session-cookie-CAsGSkTV.js.map → session-cookie-Cn2O_Cv6.js.map} +1 -1
- package/build/server/chunks/{setup-deploy-BfBaLbir.js → setup-deploy-B9QxcV6K.js} +2 -2
- package/build/server/chunks/{setup-deploy-BfBaLbir.js.map → setup-deploy-B9QxcV6K.js.map} +1 -1
- package/build/server/chunks/{src-BunIUeZg.js → src-Bms-Wpj4.js} +205 -134
- package/build/server/chunks/src-Bms-Wpj4.js.map +1 -0
- package/build/server/chunks/{state-DvXQigXN.js → state-dBGSHxF6.js} +2 -2
- package/build/server/chunks/{state-DvXQigXN.js.map → state-dBGSHxF6.js.map} +1 -1
- package/build/server/chunks/{state2-CH9BSbkr.js → state2-tak_X-zN.js} +2 -2
- package/build/server/chunks/{state2-CH9BSbkr.js.map → state2-tak_X-zN.js.map} +1 -1
- package/build/server/index.js +1 -1
- package/build/server/index.js.map +1 -1
- package/build/server/manifest.js +93 -93
- package/build/server/manifest.js.map +1 -1
- package/package.json +2 -2
- package/build/client/_app/immutable/chunks/B5tYS-bg.js.br +0 -0
- package/build/client/_app/immutable/chunks/B5tYS-bg.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CJjzJNol.js.br +0 -0
- package/build/client/_app/immutable/chunks/CJjzJNol.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CS-tYlaw.js.br +0 -0
- package/build/client/_app/immutable/chunks/CS-tYlaw.js.gz +0 -0
- package/build/client/_app/immutable/chunks/D2tCvxVC.js +0 -1
- package/build/client/_app/immutable/chunks/D2tCvxVC.js.br +0 -2
- package/build/client/_app/immutable/chunks/D2tCvxVC.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.D7TBsXqj.js.br +0 -0
- package/build/client/_app/immutable/entry/app.D7TBsXqj.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.BBl-U2qJ.js +0 -1
- package/build/client/_app/immutable/entry/start.BBl-U2qJ.js.br +0 -0
- package/build/client/_app/immutable/entry/start.BBl-U2qJ.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.Bi6WIdhc.js.br +0 -1
- package/build/client/_app/immutable/nodes/1.Bi6WIdhc.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.NXDNIo_o.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.NXDNIo_o.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.CGz0srSp.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.CGz0srSp.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.BUJ84ynI.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.BUJ84ynI.js.gz +0 -0
- package/build/client/_app/immutable/nodes/7.D4v1j10K.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.D4v1j10K.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.eBCg3Ry9.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.eBCg3Ry9.js.gz +0 -0
- package/build/server/chunks/1-DrFASQif.js +0 -9
- package/build/server/chunks/_server.ts-B1BKJgU_.js.map +0 -1
- package/build/server/chunks/_server.ts-BzpCbc3S.js.map +0 -1
- package/build/server/chunks/src-BunIUeZg.js.map +0 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { S as SESSION_TTL_SECONDS } from './helpers-
|
|
1
|
+
import { S as SESSION_TTL_SECONDS } from './helpers-BluGgY3g.js';
|
|
2
2
|
|
|
3
3
|
//#region src/lib/server/session-cookie.ts
|
|
4
4
|
/**
|
|
@@ -71,4 +71,4 @@ function clearSessionCookieHeader(request) {
|
|
|
71
71
|
}
|
|
72
72
|
|
|
73
73
|
export { SESSION_COOKIE_NAME as S, clearSessionCookieHeader as c, sessionCookieHeader as s };
|
|
74
|
-
//# sourceMappingURL=session-cookie-
|
|
74
|
+
//# sourceMappingURL=session-cookie-Cn2O_Cv6.js.map
|
package/build/server/chunks/{session-cookie-CAsGSkTV.js.map → session-cookie-Cn2O_Cv6.js.map}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"session-cookie-
|
|
1
|
+
{"version":3,"file":"session-cookie-Cn2O_Cv6.js","sources":["../../../.svelte-kit/adapter-node/chunks/session-cookie.js"],"sourcesContent":["import { m as SESSION_TTL_SECONDS } from \"./helpers.js\";\n//#region src/lib/server/session-cookie.ts\n/**\n* Single source of truth for the `op_session` cookie's Set-Cookie attributes.\n*\n* Every issuer (login, session, setup/complete) and the sliding-renewal path in\n* hooks.server.ts builds the cookie through these helpers so the attributes can\n* never drift apart. Logout uses `clearSessionCookie()` with the SAME path so\n* the browser actually drops the cookie.\n*\n* Attribute rationale:\n* - HttpOnly — the cookie is the only credential the browser holds; XSS\n* must not be able to read it.\n* - SameSite=Lax — the cookie must ride along on top-level GET navigations\n* (typing the admin URL, following a bookmark) so a valid\n* session loads admin with no prompt. SameSite=Strict drops\n* the cookie on cross-site top-level GETs (e.g. opening the\n* console from a link in another app on the LAN), which\n* would force a needless re-prompt. State-mutating requests\n* are independently CSRF-guarded by the Origin check\n* (SEC-2) in hooks.server.ts, so Lax is safe here.\n* - Secure — set ONLY when the request arrived over HTTPS. LAN installs\n* are commonly plain HTTP; hardcoding Secure would make the\n* browser refuse to send the cookie and break login entirely\n* on those deployments. We honour `x-forwarded-proto` first\n* (reverse-proxy TLS termination) then the request URL.\n* - Path=/ — valid for the whole app; matched by the clear on logout.\n* - Max-Age — SESSION_TTL_SECONDS (14 days), in lockstep with the token expiry.\n*/\nvar SESSION_COOKIE_NAME = \"op_session\";\n/** True when the request reached us over HTTPS (direct or via TLS-terminating proxy). */\nfunction isSecureRequest(request) {\n\tconst forwarded = request.headers.get(\"x-forwarded-proto\");\n\tif (forwarded) return forwarded.split(\",\")[0].trim().toLowerCase() === \"https\";\n\ttry {\n\t\treturn new URL(request.url).protocol === \"https:\";\n\t} catch {\n\t\treturn false;\n\t}\n}\n/**\n* Build the `Set-Cookie` value that issues/renews the session cookie.\n* `secure` is derived from the request so LAN-over-HTTP installs still work.\n*/\nfunction sessionCookieHeader(token, request) {\n\tconst parts = [\n\t\t`${SESSION_COOKIE_NAME}=${token}`,\n\t\t\"HttpOnly\",\n\t\t\"SameSite=Lax\",\n\t\t\"Path=/\",\n\t\t`Max-Age=${SESSION_TTL_SECONDS}`\n\t];\n\tif (isSecureRequest(request)) parts.push(\"Secure\");\n\treturn parts.join(\"; \");\n}\n/**\n* Build the `Set-Cookie` value that clears the session cookie (logout).\n* Must mirror name/path/attributes of the issued cookie so the browser deletes it.\n*/\nfunction clearSessionCookieHeader(request) {\n\tconst parts = [\n\t\t`${SESSION_COOKIE_NAME}=`,\n\t\t\"HttpOnly\",\n\t\t\"SameSite=Lax\",\n\t\t\"Path=/\",\n\t\t\"Max-Age=0\"\n\t];\n\tif (isSecureRequest(request)) parts.push(\"Secure\");\n\treturn parts.join(\"; \");\n}\n//#endregion\nexport { clearSessionCookieHeader as n, sessionCookieHeader as r, SESSION_COOKIE_NAME as t };\n"],"names":[],"mappings":";;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACG,IAAC,mBAAmB,GAAG;AAC1B;AACA,SAAS,eAAe,CAAC,OAAO,EAAE;AAClC,CAAC,MAAM,SAAS,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC;AAC3D,CAAC,IAAI,SAAS,EAAE,OAAO,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,KAAK,OAAO;AAC/E,CAAC,IAAI;AACL,EAAE,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,QAAQ,KAAK,QAAQ;AACnD,CAAC,CAAC,CAAC,MAAM;AACT,EAAE,OAAO,KAAK;AACd,CAAC;AACD;AACA;AACA;AACA;AACA;AACA,SAAS,mBAAmB,CAAC,KAAK,EAAE,OAAO,EAAE;AAC7C,CAAC,MAAM,KAAK,GAAG;AACf,EAAE,CAAC,EAAE,mBAAmB,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;AACnC,EAAE,UAAU;AACZ,EAAE,cAAc;AAChB,EAAE,QAAQ;AACV,EAAE,CAAC,QAAQ,EAAE,mBAAmB,CAAC;AACjC,EAAE;AACF,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;AACnD,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;AACxB;AACA;AACA;AACA;AACA;AACA,SAAS,wBAAwB,CAAC,OAAO,EAAE;AAC3C,CAAC,MAAM,KAAK,GAAG;AACf,EAAE,CAAC,EAAE,mBAAmB,CAAC,CAAC,CAAC;AAC3B,EAAE,UAAU;AACZ,EAAE,cAAc;AAChB,EAAE,QAAQ;AACV,EAAE;AACF,EAAE;AACF,CAAC,IAAI,eAAe,CAAC,OAAO,CAAC,EAAE,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC;AACnD,CAAC,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;AACxB;;;;"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { i as backupSetupInputs, aS as runDeploy, aO as resolveDeployJournalPath, ai as isSetupComplete, aQ as resolveStackDir, az as readDeployJournal, aq as markSetupComplete } from './src-
|
|
1
|
+
import { i as backupSetupInputs, aS as runDeploy, aO as resolveDeployJournalPath, ai as isSetupComplete, aQ as resolveStackDir, az as readDeployJournal, aq as markSetupComplete } from './src-Bms-Wpj4.js';
|
|
2
2
|
|
|
3
3
|
//#region src/lib/server/setup-deploy.ts
|
|
4
4
|
var _state = {
|
|
@@ -72,4 +72,4 @@ function prepareSetupRestorePoint(state) {
|
|
|
72
72
|
}
|
|
73
73
|
|
|
74
74
|
export { getDeployState as g, prepareSetupRestorePoint as p, resetDeployState as r, startDeploy as s };
|
|
75
|
-
//# sourceMappingURL=setup-deploy-
|
|
75
|
+
//# sourceMappingURL=setup-deploy-B9QxcV6K.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"setup-deploy-
|
|
1
|
+
{"version":3,"file":"setup-deploy-B9QxcV6K.js","sources":["../../../.svelte-kit/adapter-node/chunks/setup-deploy.js"],"sourcesContent":["import { A as readDeployJournal, M as runDeploy, O as backupSetupInputs, en as resolveStackDir, j as resolveDeployJournalPath, k as markSetupComplete, lt as isSetupComplete } from \"./src.js\";\n//#region src/lib/server/setup-deploy.ts\nvar _state = {\n\tdeploying: false,\n\tsetupComplete: false,\n\tdeployStatus: [],\n\tdeployError: null,\n\timageWarning: null,\n\tphase: \"writing-config\"\n};\nvar _deployPromise = null;\nfunction deployStateFromJournal(state) {\n\tconst journal = readDeployJournal(resolveDeployJournalPath(state));\n\treturn {\n\t\tdeploying: journal.deploying,\n\t\tinterrupted: journal.interrupted,\n\t\tsetupComplete: journal.setupComplete || isSetupComplete(resolveStackDir()),\n\t\tdeployStatus: journal.deployStatus,\n\t\tdeployError: journal.deployError,\n\t\timageWarning: journal.imageWarning,\n\t\tphase: journal.phase\n\t};\n}\nfunction getDeployState(state) {\n\tif (state) _state = deployStateFromJournal(state);\n\telse if (!_state.setupComplete && !_state.deploying && isSetupComplete(resolveStackDir())) _state.setupComplete = true;\n\treturn {\n\t\t..._state,\n\t\tdeployStatus: _state.deployStatus.map((entry) => ({ ...entry }))\n\t};\n}\nfunction resetDeployState() {\n\t_state = {\n\t\tdeploying: false,\n\t\tsetupComplete: false,\n\t\tdeployStatus: [],\n\t\tdeployError: null,\n\t\timageWarning: null,\n\t\tphase: \"writing-config\"\n\t};\n}\nfunction startDeploy(state) {\n\tif (_deployPromise) {\n\t\t_state.deployError = \"install_in_progress: A deploy is already running. Wait for it to finish.\";\n\t\treturn;\n\t}\n\t_deployPromise = (async () => {\n\t\tawait runDeploy(state, {\n\t\t\tjournalPath: resolveDeployJournalPath(state),\n\t\t\tonUpdate(progress) {\n\t\t\t\t_state = {\n\t\t\t\t\tdeploying: progress.deploying,\n\t\t\t\t\tinterrupted: progress.interrupted,\n\t\t\t\t\tsetupComplete: progress.setupComplete,\n\t\t\t\t\tdeployStatus: progress.deployStatus,\n\t\t\t\t\tdeployError: progress.deployError,\n\t\t\t\t\timageWarning: progress.imageWarning,\n\t\t\t\t\tphase: progress.phase\n\t\t\t\t};\n\t\t\t},\n\t\t\tmarkSetupComplete() {\n\t\t\t\tmarkSetupComplete(state);\n\t\t\t}\n\t\t});\n\t})().finally(() => {\n\t\t_deployPromise = null;\n\t});\n}\nfunction prepareSetupRestorePoint(state) {\n\treturn backupSetupInputs(state);\n}\n//#endregion\nexport { startDeploy as i, prepareSetupRestorePoint as n, resetDeployState as r, getDeployState as t };\n"],"names":[],"mappings":";;AACA;AACA,IAAI,MAAM,GAAG;AACb,CAAC,SAAS,EAAE,KAAK;AACjB,CAAC,aAAa,EAAE,KAAK;AACrB,CAAC,YAAY,EAAE,EAAE;AACjB,CAAC,WAAW,EAAE,IAAI;AAClB,CAAC,YAAY,EAAE,IAAI;AACnB,CAAC,KAAK,EAAE;AACR,CAAC;AACD,IAAI,cAAc,GAAG,IAAI;AACzB,SAAS,sBAAsB,CAAC,KAAK,EAAE;AACvC,CAAC,MAAM,OAAO,GAAG,iBAAiB,CAAC,wBAAwB,CAAC,KAAK,CAAC,CAAC;AACnE,CAAC,OAAO;AACR,EAAE,SAAS,EAAE,OAAO,CAAC,SAAS;AAC9B,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW;AAClC,EAAE,aAAa,EAAE,OAAO,CAAC,aAAa,IAAI,eAAe,CAAC,eAAe,EAAE,CAAC;AAC5E,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY;AACpC,EAAE,WAAW,EAAE,OAAO,CAAC,WAAW;AAClC,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY;AACpC,EAAE,KAAK,EAAE,OAAO,CAAC;AACjB,EAAE;AACF;AACA,SAAS,cAAc,CAAC,KAAK,EAAE;AAC/B,CAAC,IAAI,KAAK,EAAE,MAAM,GAAG,sBAAsB,CAAC,KAAK,CAAC;AAClD,MAAM,IAAI,CAAC,MAAM,CAAC,aAAa,IAAI,CAAC,MAAM,CAAC,SAAS,IAAI,eAAe,CAAC,eAAe,EAAE,CAAC,EAAE,MAAM,CAAC,aAAa,GAAG,IAAI;AACvH,CAAC,OAAO;AACR,EAAE,GAAG,MAAM;AACX,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,MAAM,EAAE,GAAG,KAAK,EAAE,CAAC;AACjE,EAAE;AACF;AACA,SAAS,gBAAgB,GAAG;AAC5B,CAAC,MAAM,GAAG;AACV,EAAE,SAAS,EAAE,KAAK;AAClB,EAAE,aAAa,EAAE,KAAK;AACtB,EAAE,YAAY,EAAE,EAAE;AAClB,EAAE,WAAW,EAAE,IAAI;AACnB,EAAE,YAAY,EAAE,IAAI;AACpB,EAAE,KAAK,EAAE;AACT,EAAE;AACF;AACA,SAAS,WAAW,CAAC,KAAK,EAAE;AAC5B,CAAC,IAAI,cAAc,EAAE;AACrB,EAAE,MAAM,CAAC,WAAW,GAAG,0EAA0E;AACjG,EAAE;AACF,CAAC;AACD,CAAC,cAAc,GAAG,CAAC,YAAY;AAC/B,EAAE,MAAM,SAAS,CAAC,KAAK,EAAE;AACzB,GAAG,WAAW,EAAE,wBAAwB,CAAC,KAAK,CAAC;AAC/C,GAAG,QAAQ,CAAC,QAAQ,EAAE;AACtB,IAAI,MAAM,GAAG;AACb,KAAK,SAAS,EAAE,QAAQ,CAAC,SAAS;AAClC,KAAK,WAAW,EAAE,QAAQ,CAAC,WAAW;AACtC,KAAK,aAAa,EAAE,QAAQ,CAAC,aAAa;AAC1C,KAAK,YAAY,EAAE,QAAQ,CAAC,YAAY;AACxC,KAAK,WAAW,EAAE,QAAQ,CAAC,WAAW;AACtC,KAAK,YAAY,EAAE,QAAQ,CAAC,YAAY;AACxC,KAAK,KAAK,EAAE,QAAQ,CAAC;AACrB,KAAK;AACL,GAAG,CAAC;AACJ,GAAG,iBAAiB,GAAG;AACvB,IAAI,iBAAiB,CAAC,KAAK,CAAC;AAC5B,GAAG;AACH,GAAG,CAAC;AACJ,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM;AACpB,EAAE,cAAc,GAAG,IAAI;AACvB,CAAC,CAAC,CAAC;AACH;AACA,SAAS,wBAAwB,CAAC,KAAK,EAAE;AACzC,CAAC,OAAO,iBAAiB,CAAC,KAAK,CAAC;AAChC;;;;"}
|
|
@@ -3,7 +3,7 @@ import { P as PROVIDER_DEFAULT_URLS, a as PROVIDER_KEY_MAP } from './provider-co
|
|
|
3
3
|
import { r as require_dist } from './dist-DOFcG0Zp.js';
|
|
4
4
|
import { createRequire } from 'node:module';
|
|
5
5
|
import Vt, { existsSync, readFileSync, copyFileSync, chmodSync, mkdirSync, lstatSync, rmSync, readdirSync, renameSync, writeFileSync, statfsSync, cpSync, openSync, constants, writeSync, closeSync, statSync, chownSync } from 'node:fs';
|
|
6
|
-
import or, { join, basename, dirname, resolve, win32, posix } from 'node:path';
|
|
6
|
+
import or, { join, basename, dirname, resolve, win32, posix, relative } from 'node:path';
|
|
7
7
|
import { Buffer as Buffer$1 } from 'buffer';
|
|
8
8
|
import I from 'fs';
|
|
9
9
|
import Xs, { parse, dirname as dirname$1 } from 'path';
|
|
@@ -362,6 +362,13 @@ function acquireInstallLock(dataDir) {
|
|
|
362
362
|
});
|
|
363
363
|
return null;
|
|
364
364
|
}
|
|
365
|
+
try {
|
|
366
|
+
const { pid } = parseLockContent(readFileSync(path, "utf-8"));
|
|
367
|
+
if (pid === process.pid) return {
|
|
368
|
+
path,
|
|
369
|
+
reentrant: true
|
|
370
|
+
};
|
|
371
|
+
} catch {}
|
|
365
372
|
if (!isStale(path)) return null;
|
|
366
373
|
logger$13.info("removing stale install lock and retrying acquire", { path });
|
|
367
374
|
try {
|
|
@@ -459,6 +466,7 @@ function unlockInstallLock(dataDir) {
|
|
|
459
466
|
}
|
|
460
467
|
function releaseInstallLock(handle) {
|
|
461
468
|
if (!handle) return;
|
|
469
|
+
if (handle.reentrant) return;
|
|
462
470
|
try {
|
|
463
471
|
rmSync(handle.path, { force: true });
|
|
464
472
|
} catch (err) {
|
|
@@ -738,7 +746,7 @@ var import_main = (/* @__PURE__ */ __commonJSMin(((exports, module) => {
|
|
|
738
746
|
module.exports = DotenvModule;
|
|
739
747
|
})))();
|
|
740
748
|
var package_default = {
|
|
741
|
-
version: "0.12.
|
|
749
|
+
version: "0.12.35"};
|
|
742
750
|
//#endregion
|
|
743
751
|
//#region ../lib/src/control-plane/versioning.ts
|
|
744
752
|
var SEMVER_RE = /^v?\d+\.\d+\.\d+(?:[-+].*)?$/;
|
|
@@ -5260,7 +5268,6 @@ function randomHex(bytes) {
|
|
|
5260
5268
|
* historical `.env.schema` files (varlock format) were retired in #391.
|
|
5261
5269
|
*/
|
|
5262
5270
|
var logger$12 = createLogger("core-assets");
|
|
5263
|
-
var GITHUB_ASSET_TIMEOUT_MS = 1e4;
|
|
5264
5271
|
var _require$1 = createRequire(import.meta.url);
|
|
5265
5272
|
function bundledAssetPath(relPath) {
|
|
5266
5273
|
try {
|
|
@@ -5296,10 +5303,7 @@ function ensureOpenCodeSystemConfig() {
|
|
|
5296
5303
|
}
|
|
5297
5304
|
var SHIPPED_DEFAULT_HASHES = { "config/guardian/instructions/moderation.md": ["dfa770d433bef9954e58e29cfb337679eb27ed3c9de61ddd2c4106d3add9a628"] };
|
|
5298
5305
|
/** Assets under config/guardian/ that are managed (refreshable) but respect user edits. */
|
|
5299
|
-
var GUARDIAN_MANAGED_ASSETS = [{
|
|
5300
|
-
relPath: "config/guardian/instructions/moderation.md",
|
|
5301
|
-
githubFilename: ".openpalm/config/guardian/instructions/moderation.md"
|
|
5302
|
-
}];
|
|
5306
|
+
var GUARDIAN_MANAGED_ASSETS = [{ relPath: "config/guardian/instructions/moderation.md" }];
|
|
5303
5307
|
/**
|
|
5304
5308
|
* Returns true when the on-disk content is still byte-identical to one of the
|
|
5305
5309
|
* previously shipped defaults for the given relPath (i.e. the user has not
|
|
@@ -5311,41 +5315,12 @@ function isUnmodifiedDefault(relPath, currentContent) {
|
|
|
5311
5315
|
const h = sha256(currentContent);
|
|
5312
5316
|
return known.includes(h);
|
|
5313
5317
|
}
|
|
5314
|
-
var REPO = "itlackey/openpalm";
|
|
5315
|
-
function normalizeAssetRef(version) {
|
|
5316
|
-
const v = version.trim();
|
|
5317
|
-
if (!v) throw new Error("Cannot download OpenPalm stack assets: no version provided. The caller must pass the target release tag (e.g. \"v0.11.0-rc.6\").");
|
|
5318
|
-
return /^\d/.test(v) ? `v${v}` : v;
|
|
5319
|
-
}
|
|
5320
5318
|
var MANAGED_ASSETS = [
|
|
5321
|
-
{
|
|
5322
|
-
|
|
5323
|
-
|
|
5324
|
-
},
|
|
5325
|
-
{
|
|
5326
|
-
relPath: "config/stack/services.compose.yml",
|
|
5327
|
-
githubFilename: ".openpalm/config/stack/services.compose.yml"
|
|
5328
|
-
},
|
|
5329
|
-
{
|
|
5330
|
-
relPath: "config/stack/portals.compose.yml",
|
|
5331
|
-
githubFilename: ".openpalm/config/stack/portals.compose.yml"
|
|
5332
|
-
}
|
|
5319
|
+
{ relPath: "config/stack/core.compose.yml" },
|
|
5320
|
+
{ relPath: "config/stack/services.compose.yml" },
|
|
5321
|
+
{ relPath: "config/stack/portals.compose.yml" }
|
|
5333
5322
|
];
|
|
5334
|
-
var SEEDED_ASSETS = [{
|
|
5335
|
-
relPath: "config/assistant/opencode.jsonc",
|
|
5336
|
-
githubFilename: ".openpalm/config/assistant/opencode.jsonc"
|
|
5337
|
-
}, {
|
|
5338
|
-
relPath: "config/stack/custom.compose.yml",
|
|
5339
|
-
githubFilename: ".openpalm/config/stack/custom.compose.yml"
|
|
5340
|
-
}];
|
|
5341
|
-
async function downloadAsset(filename, version) {
|
|
5342
|
-
const rawUrl = `https://raw.githubusercontent.com/${REPO}/${version}/${filename}`;
|
|
5343
|
-
try {
|
|
5344
|
-
const res = await fetch(rawUrl, { signal: AbortSignal.timeout(GITHUB_ASSET_TIMEOUT_MS) });
|
|
5345
|
-
if (res.ok) return await res.text();
|
|
5346
|
-
} catch {}
|
|
5347
|
-
throw new Error(`Failed to download ${filename} from GitHub (ref "${version}" not found or network error)`);
|
|
5348
|
-
}
|
|
5323
|
+
var SEEDED_ASSETS = [{ relPath: "config/assistant/opencode.jsonc" }, { relPath: "config/stack/custom.compose.yml" }];
|
|
5349
5324
|
function ensureBackupDir(backupDir, suffix = "") {
|
|
5350
5325
|
if (backupDir) return backupDir;
|
|
5351
5326
|
return join(resolveBackupsDir(), `${(/* @__PURE__ */ new Date()).toISOString().replace(/[:.]/g, "-")}${suffix}`);
|
|
@@ -5408,56 +5383,6 @@ function refreshCoreAssetsFromSource(sourceRoot, homeDir = resolveOpenPalmHome()
|
|
|
5408
5383
|
kept
|
|
5409
5384
|
};
|
|
5410
5385
|
}
|
|
5411
|
-
async function refreshCoreAssets(version) {
|
|
5412
|
-
const ref = normalizeAssetRef(version);
|
|
5413
|
-
const homeDir = resolveOpenPalmHome();
|
|
5414
|
-
const updated = [];
|
|
5415
|
-
const kept = [];
|
|
5416
|
-
let backupDir = null;
|
|
5417
|
-
for (const asset of MANAGED_ASSETS) {
|
|
5418
|
-
const freshContent = await downloadAsset(asset.githubFilename, ref);
|
|
5419
|
-
const targetPath = join(homeDir, asset.relPath);
|
|
5420
|
-
if (existsSync(targetPath)) {
|
|
5421
|
-
if (sha256(readFileSync(targetPath, "utf-8")) === sha256(freshContent)) continue;
|
|
5422
|
-
backupDir = backupExistingFile(targetPath, asset.relPath, backupDir);
|
|
5423
|
-
}
|
|
5424
|
-
mkdirSync(dirname(targetPath), { recursive: true });
|
|
5425
|
-
writeFileSync(targetPath, freshContent);
|
|
5426
|
-
updated.push(asset.relPath);
|
|
5427
|
-
}
|
|
5428
|
-
for (const asset of GUARDIAN_MANAGED_ASSETS) {
|
|
5429
|
-
const freshContent = await downloadAsset(asset.githubFilename, ref);
|
|
5430
|
-
const targetPath = join(homeDir, asset.relPath);
|
|
5431
|
-
if (existsSync(targetPath)) {
|
|
5432
|
-
const currentContent = readFileSync(targetPath, "utf-8");
|
|
5433
|
-
if (sha256(currentContent) === sha256(freshContent)) continue;
|
|
5434
|
-
if (!isUnmodifiedDefault(asset.relPath, currentContent)) {
|
|
5435
|
-
logger$12.info("guardian managed asset kept (user-modified); new default available", {
|
|
5436
|
-
path: asset.relPath,
|
|
5437
|
-
hint: "Remove the file or restore the shipped default to pick up the new version on the next refresh."
|
|
5438
|
-
});
|
|
5439
|
-
kept.push(asset.relPath);
|
|
5440
|
-
continue;
|
|
5441
|
-
}
|
|
5442
|
-
}
|
|
5443
|
-
mkdirSync(dirname(targetPath), { recursive: true });
|
|
5444
|
-
writeFileSync(targetPath, freshContent);
|
|
5445
|
-
updated.push(asset.relPath);
|
|
5446
|
-
}
|
|
5447
|
-
for (const asset of SEEDED_ASSETS) {
|
|
5448
|
-
const targetPath = join(homeDir, asset.relPath);
|
|
5449
|
-
if (existsSync(targetPath)) continue;
|
|
5450
|
-
const freshContent = await downloadAsset(asset.githubFilename, ref);
|
|
5451
|
-
mkdirSync(dirname(targetPath), { recursive: true });
|
|
5452
|
-
writeFileSync(targetPath, freshContent);
|
|
5453
|
-
updated.push(asset.relPath);
|
|
5454
|
-
}
|
|
5455
|
-
return {
|
|
5456
|
-
backupDir,
|
|
5457
|
-
updated,
|
|
5458
|
-
kept
|
|
5459
|
-
};
|
|
5460
|
-
}
|
|
5461
5386
|
//#endregion
|
|
5462
5387
|
//#region ../lib/src/control-plane/ui-assets.ts
|
|
5463
5388
|
/**
|
|
@@ -5492,6 +5417,21 @@ async function fetchWithRetry(url, retries = 3) {
|
|
|
5492
5417
|
}
|
|
5493
5418
|
throw new Error(`Failed to fetch ${url} after ${retries} attempts`);
|
|
5494
5419
|
}
|
|
5420
|
+
function copyTree(src, dest, opts) {
|
|
5421
|
+
if (!existsSync(src)) return;
|
|
5422
|
+
const entries = readdirSync(src, {
|
|
5423
|
+
recursive: true,
|
|
5424
|
+
withFileTypes: true
|
|
5425
|
+
});
|
|
5426
|
+
for (const entry of entries) {
|
|
5427
|
+
if (!entry.isFile()) continue;
|
|
5428
|
+
const srcFile = join(entry.parentPath ?? entry.path, entry.name);
|
|
5429
|
+
const destFile = join(dest, relative(src, srcFile));
|
|
5430
|
+
if (existsSync(destFile)) continue;
|
|
5431
|
+
mkdirSync(dirname(destFile), { recursive: true });
|
|
5432
|
+
copyFileSync(srcFile, destFile);
|
|
5433
|
+
}
|
|
5434
|
+
}
|
|
5495
5435
|
/** Resolve a candidate path using three strategies, returning the first that exists. */
|
|
5496
5436
|
function resolveLocalCandidate(...strategies) {
|
|
5497
5437
|
for (const strategy of strategies) try {
|
|
@@ -5520,6 +5460,60 @@ function resolveLocalOpenpalmDir() {
|
|
|
5520
5460
|
}, () => null);
|
|
5521
5461
|
}
|
|
5522
5462
|
/**
|
|
5463
|
+
* Seed OP_HOME from the .openpalm/ skeleton.
|
|
5464
|
+
*
|
|
5465
|
+
* Existing files are never overwritten (user edits win).
|
|
5466
|
+
* Falls back to downloading the repo tarball from GitHub when no local
|
|
5467
|
+
* skeleton is found (production binary, packaged Electron app).
|
|
5468
|
+
*/
|
|
5469
|
+
/** Version stamp recording which skeleton version OP_HOME was last seeded from. */
|
|
5470
|
+
var SKELETON_VERSION_STAMP = ".skeleton-version";
|
|
5471
|
+
/**
|
|
5472
|
+
* Seed the bundled `.openpalm/` skeleton into OP_HOME — ONCE PER VERSION.
|
|
5473
|
+
*
|
|
5474
|
+
* Electron calls this on every launch; without a guard it re-copied the entire
|
|
5475
|
+
* skeleton tree each time (wasteful, and it re-materialized files a user/process
|
|
5476
|
+
* had deliberately removed). We stamp OP_HOME/.skeleton-version with `repoRef`
|
|
5477
|
+
* after a successful seed and skip the copy when it already matches — so a given
|
|
5478
|
+
* version seeds once and an upgrade re-seeds (skipExisting still preserves any
|
|
5479
|
+
* user edits). To force a re-seed, delete the stamp.
|
|
5480
|
+
*/
|
|
5481
|
+
async function seedOpenPalmDir(repoRef, homeDir, _configDir, _dataDir) {
|
|
5482
|
+
const stampPath = join(homeDir, SKELETON_VERSION_STAMP);
|
|
5483
|
+
let alreadySeeded = false;
|
|
5484
|
+
if (existsSync(stampPath)) try {
|
|
5485
|
+
alreadySeeded = readFileSync(stampPath, "utf-8").trim() === repoRef.trim();
|
|
5486
|
+
} catch {}
|
|
5487
|
+
const stamp = () => {
|
|
5488
|
+
try {
|
|
5489
|
+
writeFileSync(stampPath, `${repoRef}\n`);
|
|
5490
|
+
} catch {}
|
|
5491
|
+
};
|
|
5492
|
+
const local = resolveLocalOpenpalmDir();
|
|
5493
|
+
if (local) {
|
|
5494
|
+
const { updated, backupDir } = refreshCoreAssetsFromSource(local, homeDir);
|
|
5495
|
+
if (updated.length) logger$11.debug("refreshed managed stack assets", { refreshed: updated });
|
|
5496
|
+
if (alreadySeeded) {
|
|
5497
|
+
logger$11.debug("skeleton already seeded for this version — managed assets refreshed, skipping full seed", { repoRef });
|
|
5498
|
+
return {
|
|
5499
|
+
updated,
|
|
5500
|
+
backupDir
|
|
5501
|
+
};
|
|
5502
|
+
}
|
|
5503
|
+
logger$11.debug("seeding .openpalm from local source", {
|
|
5504
|
+
src: local,
|
|
5505
|
+
repoRef
|
|
5506
|
+
});
|
|
5507
|
+
copyTree(local, homeDir);
|
|
5508
|
+
stamp();
|
|
5509
|
+
return {
|
|
5510
|
+
updated,
|
|
5511
|
+
backupDir
|
|
5512
|
+
};
|
|
5513
|
+
}
|
|
5514
|
+
throw new Error("Cannot locate @openpalm/skeleton. Set OPENPALM_REPO_ROOT (dev) or install @openpalm/skeleton: npm install @openpalm/skeleton@" + (process.env.OP_SKELETON_VERSION ?? process.env.PLATFORM_VERSION ?? "<version>"));
|
|
5515
|
+
}
|
|
5516
|
+
/**
|
|
5523
5517
|
* The UI ships as `@openpalm/ui` on npm — a self-contained `adapter-node`
|
|
5524
5518
|
* bundle (only `build/` is published; no `node_modules` is needed at runtime,
|
|
5525
5519
|
* because the build bundles every dependency). The desktop and host updaters
|
|
@@ -7717,11 +7711,42 @@ async function reconcileCore(state, opts) {
|
|
|
7717
7711
|
throw new Error(`Compose preflight failed: ${preflight.stderr}\nFiles: ${files.join(", ")}\nEnv files: ${envFiles.filter(existsSync).join(", ")}\nProfiles: ${profiles.join(", ") || "(none)"}\nProject: ${projectName}`);
|
|
7718
7712
|
}
|
|
7719
7713
|
}
|
|
7720
|
-
if (!opts.skipSnapshot && !hasArmedSnapshot()) snapshotCurrentState(state);
|
|
7721
7714
|
state.artifacts = resolveRuntimeFiles();
|
|
7722
7715
|
writeRuntimeFiles(state);
|
|
7723
7716
|
return active;
|
|
7724
7717
|
}
|
|
7718
|
+
/**
|
|
7719
|
+
* Idempotent OP_HOME asset reconciliation to the running platform version.
|
|
7720
|
+
*
|
|
7721
|
+
* This is the single place that brings an OP_HOME's *assets* (layout, skeleton
|
|
7722
|
+
* data/, managed compose, release transforms) up to PLATFORM_VERSION. It is
|
|
7723
|
+
* keyed entirely on PLATFORM_VERSION (the running control plane), NOT on the
|
|
7724
|
+
* per-image OP_*_VERSION pins in stack.env — those stay independent and drive
|
|
7725
|
+
* compose image resolution only.
|
|
7726
|
+
*
|
|
7727
|
+
* Every step is a cheap no-op when already current:
|
|
7728
|
+
* • ensureMigrated — forward-only layout migrations (skip-if-done)
|
|
7729
|
+
* • seedOpenPalmDir — skeleton data/ seed (stamp-gated, skip-existing) +
|
|
7730
|
+
* managed compose refresh from BUNDLED local source
|
|
7731
|
+
* • ensureReleaseMigrated — forward-only release transforms (copy-only, idempotent)
|
|
7732
|
+
*
|
|
7733
|
+
* Returns the assets it actually changed (the refreshed managed compose/config
|
|
7734
|
+
* files) and the backup directory a release migration created (if any), so
|
|
7735
|
+
* performUpgrade can surface them in UpgradeResult — the upgrade route logs the
|
|
7736
|
+
* asset list and shows the backup dir to the operator.
|
|
7737
|
+
*/
|
|
7738
|
+
async function reconcileHome(state) {
|
|
7739
|
+
ensureMigrated({ homeDir: state.homeDir });
|
|
7740
|
+
const seed = await seedOpenPalmDir(PLATFORM_VERSION, state.homeDir, state.configDir, state.dataDir);
|
|
7741
|
+
const release = ensureReleaseMigrated({
|
|
7742
|
+
homeDir: state.homeDir,
|
|
7743
|
+
targetVersion: PLATFORM_VERSION
|
|
7744
|
+
});
|
|
7745
|
+
return {
|
|
7746
|
+
assetsUpdated: seed.updated,
|
|
7747
|
+
backupDir: release.backupDir ?? seed.backupDir
|
|
7748
|
+
};
|
|
7749
|
+
}
|
|
7725
7750
|
function resolveLifecycleLock(state, opts) {
|
|
7726
7751
|
if (opts && "lock" in opts) return opts.lock ?? null;
|
|
7727
7752
|
return acquireInstallLock(state.dataDir);
|
|
@@ -7730,11 +7755,71 @@ function releaseLifecycleLock(lock, opts) {
|
|
|
7730
7755
|
if (opts && "lock" in opts) return;
|
|
7731
7756
|
releaseInstallLock(lock);
|
|
7732
7757
|
}
|
|
7758
|
+
/**
|
|
7759
|
+
* The single idempotent stack reconcile. Every lifecycle entry point is a thin
|
|
7760
|
+
* flag variant of this:
|
|
7761
|
+
* 1. reconcileHome — bring OP_HOME assets up to PLATFORM_VERSION (migrations,
|
|
7762
|
+
* bundled skeleton seed, release transforms). No GitHub.
|
|
7763
|
+
* 2. reconcileCore — preflight, snapshot (rollback), write runtime files,
|
|
7764
|
+
* flip service state per activate/deactivate.
|
|
7765
|
+
* 3. composePull — (compose+pull only) fetch images per OP_*_VERSION pins.
|
|
7766
|
+
* 4. composeUp — (compose only) recreate the managed service set.
|
|
7767
|
+
*
|
|
7768
|
+
* The whole thing runs under withStackEnvRollback: stack.env + the portals/custom
|
|
7769
|
+
* compose files are snapshotted and restored if any step throws, and the
|
|
7770
|
+
* pre-reconcile state is armed for `openpalm rollback`. reconcileCore runs with
|
|
7771
|
+
* skipSnapshot:true so it never takes a second snapshot over that armed one.
|
|
7772
|
+
*
|
|
7773
|
+
* The `compose` flag is deliberately OFF for install/update/uninstall: those
|
|
7774
|
+
* consumers (runDeploy, the admin install/update/uninstall routes) already own a
|
|
7775
|
+
* bespoke compose phase — pulling images first, parsing per-service failures,
|
|
7776
|
+
* polling health, and emitting progress. Letting the wrapper composeUp too would
|
|
7777
|
+
* (a) double-recreate and (b) on a fresh install fatally `up` BEFORE images are
|
|
7778
|
+
* pulled. Only performUpgrade sets compose:true — its consumers (CLI update, the
|
|
7779
|
+
* admin upgrade route) have no separate compose phase and want the full
|
|
7780
|
+
* pull+recreate to happen inside the wrapper, with rollback on failure.
|
|
7781
|
+
*
|
|
7782
|
+
* Returns the services that were active (running) after the reconcile — the
|
|
7783
|
+
* "restarted" set for update/upgrade reporting — plus the OP_HOME assets it
|
|
7784
|
+
* changed and any backup dir a release migration created, for UpgradeResult.
|
|
7785
|
+
*/
|
|
7786
|
+
function reconcileStack(state, opts) {
|
|
7787
|
+
return withStackEnvRollback(state, async () => {
|
|
7788
|
+
const activating = !opts.deactivate;
|
|
7789
|
+
if (activating && opts.compose) await repairRootOwnedBindMounts(state.homeDir);
|
|
7790
|
+
const home = await reconcileHome(state);
|
|
7791
|
+
const active = await reconcileCore(state, {
|
|
7792
|
+
activateServices: opts.activate,
|
|
7793
|
+
deactivateServices: opts.deactivate,
|
|
7794
|
+
skipSnapshot: true
|
|
7795
|
+
});
|
|
7796
|
+
if (activating && opts.compose) {
|
|
7797
|
+
const composeOpts = buildComposeOptions(state);
|
|
7798
|
+
if (opts.pull) {
|
|
7799
|
+
const pullResult = await composePull(composeOpts);
|
|
7800
|
+
if (!pullResult.ok) throw new Error(`Failed to pull images: ${pullResult.stderr}`);
|
|
7801
|
+
}
|
|
7802
|
+
const services = await buildManagedServices(state);
|
|
7803
|
+
const upResult = await composeUp({
|
|
7804
|
+
...composeOpts,
|
|
7805
|
+
services,
|
|
7806
|
+
forceRecreate: true,
|
|
7807
|
+
removeOrphans: true
|
|
7808
|
+
});
|
|
7809
|
+
if (!upResult.ok) throw new Error(`Failed to recreate containers: ${upResult.stderr}`);
|
|
7810
|
+
}
|
|
7811
|
+
return {
|
|
7812
|
+
active,
|
|
7813
|
+
assetsUpdated: home.assetsUpdated,
|
|
7814
|
+
backupDir: home.backupDir
|
|
7815
|
+
};
|
|
7816
|
+
});
|
|
7817
|
+
}
|
|
7733
7818
|
async function applyInstall(state, opts) {
|
|
7734
7819
|
const lock = resolveLifecycleLock(state, opts);
|
|
7735
7820
|
if (!lock) throw new Error("Another install is already in progress");
|
|
7736
7821
|
try {
|
|
7737
|
-
await
|
|
7822
|
+
await reconcileStack(state, { activate: true });
|
|
7738
7823
|
ensureComposeVolumeTargets(state);
|
|
7739
7824
|
} finally {
|
|
7740
7825
|
releaseLifecycleLock(lock, opts);
|
|
@@ -7744,7 +7829,8 @@ async function applyUpdate(state, opts) {
|
|
|
7744
7829
|
const lock = resolveLifecycleLock(state, opts);
|
|
7745
7830
|
if (!lock) throw new Error("Another install is already in progress");
|
|
7746
7831
|
try {
|
|
7747
|
-
|
|
7832
|
+
const { active } = await reconcileStack(state, {});
|
|
7833
|
+
return { restarted: active };
|
|
7748
7834
|
} finally {
|
|
7749
7835
|
releaseLifecycleLock(lock, opts);
|
|
7750
7836
|
}
|
|
@@ -7753,7 +7839,8 @@ async function applyUninstall(state, opts) {
|
|
|
7753
7839
|
const lock = resolveLifecycleLock(state, opts);
|
|
7754
7840
|
if (!lock) throw new Error("Another install is already in progress");
|
|
7755
7841
|
try {
|
|
7756
|
-
|
|
7842
|
+
const { active } = await reconcileStack(state, { deactivate: true });
|
|
7843
|
+
return { stopped: active };
|
|
7757
7844
|
} finally {
|
|
7758
7845
|
releaseLifecycleLock(lock, opts);
|
|
7759
7846
|
}
|
|
@@ -7763,21 +7850,6 @@ function resolveImageNamespace(state) {
|
|
|
7763
7850
|
if (!IMAGE_NAMESPACE_RE.test(namespace)) throw new Error(`Invalid image namespace in system.env: ${namespace}`);
|
|
7764
7851
|
return namespace;
|
|
7765
7852
|
}
|
|
7766
|
-
async function applyUpgrade(state, version, opts) {
|
|
7767
|
-
const lock = resolveLifecycleLock(state, opts);
|
|
7768
|
-
if (!lock) throw new Error("Another install is already in progress");
|
|
7769
|
-
try {
|
|
7770
|
-
await repairRootOwnedBindMounts(state.homeDir);
|
|
7771
|
-
const { backupDir, updated } = await refreshCoreAssets(version);
|
|
7772
|
-
return {
|
|
7773
|
-
backupDir,
|
|
7774
|
-
updated,
|
|
7775
|
-
restarted: await reconcileCore(state, { skipSnapshot: true })
|
|
7776
|
-
};
|
|
7777
|
-
} finally {
|
|
7778
|
-
releaseLifecycleLock(lock, opts);
|
|
7779
|
-
}
|
|
7780
|
-
}
|
|
7781
7853
|
async function withStackEnvRollback(state, run) {
|
|
7782
7854
|
const stackEnvPath = `${state.stashDir}/env/stack.env`;
|
|
7783
7855
|
const portalsComposePath = `${state.stackDir}/portals.compose.yml`;
|
|
@@ -7794,7 +7866,7 @@ async function withStackEnvRollback(state, run) {
|
|
|
7794
7866
|
try {
|
|
7795
7867
|
originalCustomCompose = readFileSync(customComposePath, "utf-8");
|
|
7796
7868
|
} catch {}
|
|
7797
|
-
snapshotCurrentState(state, { arm: true });
|
|
7869
|
+
if (!hasArmedSnapshot()) snapshotCurrentState(state, { arm: true });
|
|
7798
7870
|
try {
|
|
7799
7871
|
return await run();
|
|
7800
7872
|
} catch (e) {
|
|
@@ -7819,36 +7891,35 @@ async function withStackEnvRollback(state, run) {
|
|
|
7819
7891
|
* There are NO Docker Hub calls: image versions are user-managed in stack.env
|
|
7820
7892
|
* (PATCH /admin/versions), and the platform asset version is the running lib's
|
|
7821
7893
|
* PLATFORM_VERSION — never resolved from a remote registry.
|
|
7822
|
-
|
|
7823
|
-
|
|
7824
|
-
|
|
7825
|
-
|
|
7894
|
+
*
|
|
7895
|
+
* `allowPrerelease` is accepted for caller intent/forward-compatibility but is
|
|
7896
|
+
* currently a NO-OP: there is no remote-tag resolution to gate, since the target
|
|
7897
|
+
* is always the running PLATFORM_VERSION and image tags are user-pinned in
|
|
7898
|
+
* stack.env. Forward-only release migrations decide compatibility (a downgrade
|
|
7899
|
+
* target yields no pending migrations rather than throwing). Callers pass it so
|
|
7900
|
+
* the gate can be wired here later without an API change.
|
|
7901
|
+
*/
|
|
7902
|
+
async function performUpgrade(state, opts) {
|
|
7903
|
+
const lock = resolveLifecycleLock(state, opts);
|
|
7904
|
+
if (!lock) throw new Error("Another install is already in progress");
|
|
7905
|
+
try {
|
|
7826
7906
|
const namespace = resolveImageNamespace(state);
|
|
7827
|
-
const
|
|
7828
|
-
|
|
7829
|
-
|
|
7830
|
-
|
|
7907
|
+
const { active, assetsUpdated, backupDir } = await reconcileStack(state, {
|
|
7908
|
+
activate: true,
|
|
7909
|
+
pull: true,
|
|
7910
|
+
compose: true
|
|
7831
7911
|
});
|
|
7832
|
-
const upgradeResult = await applyUpgrade(state, releaseTag);
|
|
7833
|
-
const pullResult = await composePull(composeOpts);
|
|
7834
|
-
if (!pullResult.ok) throw new Error(`Failed to pull images: ${pullResult.stderr}`);
|
|
7835
|
-
const services = await buildManagedServices(state);
|
|
7836
|
-
const upResult = await composeUp({
|
|
7837
|
-
...composeOpts,
|
|
7838
|
-
services,
|
|
7839
|
-
forceRecreate: true,
|
|
7840
|
-
removeOrphans: true
|
|
7841
|
-
});
|
|
7842
|
-
if (!upResult.ok) throw new Error(`Images pulled but failed to recreate containers: ${upResult.stderr}`);
|
|
7843
7912
|
return {
|
|
7844
7913
|
imageTag: PLATFORM_VERSION,
|
|
7845
7914
|
namespace,
|
|
7846
|
-
backupDir
|
|
7847
|
-
assetsUpdated
|
|
7848
|
-
restarted:
|
|
7915
|
+
backupDir,
|
|
7916
|
+
assetsUpdated,
|
|
7917
|
+
restarted: active,
|
|
7849
7918
|
warnings: []
|
|
7850
7919
|
};
|
|
7851
|
-
}
|
|
7920
|
+
} finally {
|
|
7921
|
+
releaseLifecycleLock(lock, opts);
|
|
7922
|
+
}
|
|
7852
7923
|
}
|
|
7853
7924
|
function buildComposeFileList(state) {
|
|
7854
7925
|
return discoverStackOverlays(state.stackDir);
|
|
@@ -10385,4 +10456,4 @@ function collectBindAddressWarnings(env) {
|
|
|
10385
10456
|
}
|
|
10386
10457
|
|
|
10387
10458
|
export { ensureReleaseMigrated as $, AKM_USER_ENV_REF as A, BackupSpaceError as B, CORE_SERVICES as C, DOCKER_IMAGE_NAMES as D, composeUp as E, createLogger as F, createOpenCodeClient as G, createState as H, INSTALL_LOCK_STALE_AFTER_MS as I, deleteUserEnvKey as J, deriveLaunchStatus as K, deriveLocalStackState as L, MigrationError as M, detectGpu as N, detectHostOpenCode as O, PLATFORM_VERSION as P, detectLocalProviders as Q, detectRuntime as R, SERVICE_VERSION_KEYS as S, disableHostAkmSharing as T, dismissSecretStripNotice as U, enableHostAkmSharing as V, ensureAkmUserEnv as W, ensureHomeDirs as X, ensureMigrated as Y, ensureOpenCodeConfig as Z, ensureOpenCodeSystemConfig as _, addonProfileId as a, writeFileAtomic as a$, ensureSecrets as a0, executeAutomation as a1, fetchProviderModels as a2, formatForDisplay as a3, getAddonProfileAvailability as a4, getAddonProfileSelection as a5, getAddonProfiles as a6, getAddonServiceNames as a7, getAkmStats as a8, getDockerEvents as a9, readSecret as aA, readSecretFile as aB, readSecretStripNotice as aC, readStackEnv as aD, readStackRuntimeEnv as aE, readStackSecretEnv as aF, readTaskFile as aG, readUserEnvFile as aH, readVersions as aI, recommendSetup as aJ, removeSecretFile as aK, removeTaskFile as aL, resolveComposeProjectName as aM, resolveDataDir as aN, resolveDeployJournalPath as aO, resolveRuntimeFiles as aP, resolveStackDir as aQ, runAssistantAkmCommand as aR, runDeploy as aS, seedUiBuild as aT, setAddonEnabled as aU, setAddonProfileSelection as aV, summarizeBackups as aW, summarizeComposeStderr as aX, unlockInstallLock as aY, useExistingProviderForAssistantCli as aZ, validateProposedState as a_, getHostAkmSharingStatus as aa, getRegistryAddonConfig as ab, hostAkmStashPath as ac, importHostOpenCode as ad, initializeStateSecrets as ae, inspectInstallLock as af, isAllowedService as ag, isPrerelease as ah, isSetupComplete as ai, listAssistantCliTools as aj, listAvailableAddonIds as ak, listBackupDirs as al, listEnabledAddonIds as am, listSecretFiles as an, loadAutomations as ao, mapDockerError as ap, markSetupComplete as aq, mergeEnvContent as ar, parseComposeStderr as as, parseEnvFile as at, patchSecretsEnvFile as au, performSetup as av, performUpgrade as aw, pruneBackupDirs as ax, readAutomationLogs as ay, readDeployJournal as az, annotateAddonProfileAvailability as b, writeRuntimeFiles as b0, writeSecretFile as b1, writeStackSecretEnv as b2, writeTaskFile as b3, writeUserEnvKey as b4, writeVersions as b5, writeVoiceVars as b6, applyInstall as c, applyUninstall as d, applyUpdate as e, assertSafeSecretFilename as f, assertSafeTaskFilename as g, authJsonPath as h, backupSetupInputs as i, buildAkmEndpoint as j, buildAkmEnv as k, buildComposeOptions as l, buildManagedServices as m, checkDocker as n, checkDockerCompose as o, classifyLocalInstall as p, collectBindAddressWarnings as q, composeDown as r, composeLogs as s, composePreflight as t, composePs as u, composePull as v, composeRestart as w, composeStart as x, composeStats as y, composeStop as z };
|
|
10388
|
-
//# sourceMappingURL=src-
|
|
10459
|
+
//# sourceMappingURL=src-Bms-Wpj4.js.map
|