@openpalm/ui 0.11.0-rc.11 → 0.11.0-rc.13
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/0.nenI9xO9.css +1 -0
- package/build/client/_app/immutable/assets/0.nenI9xO9.css.br +0 -0
- package/build/client/_app/immutable/assets/0.nenI9xO9.css.gz +0 -0
- package/build/client/_app/immutable/assets/4.j3F-W7h_.css +1 -0
- package/build/client/_app/immutable/assets/4.j3F-W7h_.css.br +0 -0
- package/build/client/_app/immutable/assets/4.j3F-W7h_.css.gz +0 -0
- package/build/client/_app/immutable/assets/7.CzC8JVIO.css +1 -0
- package/build/client/_app/immutable/assets/7.CzC8JVIO.css.br +0 -0
- package/build/client/_app/immutable/assets/7.CzC8JVIO.css.gz +0 -0
- package/build/client/_app/immutable/assets/8.cpz_TytB.css +1 -0
- package/build/client/_app/immutable/assets/8.cpz_TytB.css.br +0 -0
- package/build/client/_app/immutable/assets/8.cpz_TytB.css.gz +0 -0
- package/build/client/_app/immutable/assets/AuthGate._tqG1OIX.css +1 -0
- package/build/client/_app/immutable/assets/AuthGate._tqG1OIX.css.br +0 -0
- package/build/client/_app/immutable/assets/AuthGate._tqG1OIX.css.gz +0 -0
- package/build/client/_app/immutable/assets/ModeSwitch.DVIv_V4C.css +1 -0
- package/build/client/_app/immutable/assets/ModeSwitch.DVIv_V4C.css.br +0 -0
- package/build/client/_app/immutable/assets/ModeSwitch.DVIv_V4C.css.gz +0 -0
- package/build/client/_app/immutable/assets/Spinner.BtzHSsat.css +1 -0
- package/build/client/_app/immutable/assets/Spinner.BtzHSsat.css.br +2 -0
- package/build/client/_app/immutable/assets/Spinner.BtzHSsat.css.gz +0 -0
- package/build/client/_app/immutable/assets/VoiceProfileSelector.B8FTffwl.css +1 -0
- package/build/client/_app/immutable/assets/VoiceProfileSelector.B8FTffwl.css.br +0 -0
- package/build/client/_app/immutable/assets/VoiceProfileSelector.B8FTffwl.css.gz +0 -0
- package/build/client/_app/immutable/chunks/0swOyi-5.js +3 -0
- package/build/client/_app/immutable/chunks/0swOyi-5.js.br +0 -0
- package/build/client/_app/immutable/chunks/0swOyi-5.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B1uQvvlv.js +5 -0
- package/build/client/_app/immutable/chunks/B1uQvvlv.js.br +0 -0
- package/build/client/_app/immutable/chunks/B1uQvvlv.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{DpdFx-ph.js → BBdT9Cjm.js} +1 -1
- package/build/client/_app/immutable/chunks/BBdT9Cjm.js.br +0 -0
- package/build/client/_app/immutable/chunks/BBdT9Cjm.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{BxZ6a55y.js → BPh8tqAg.js} +1 -1
- package/build/client/_app/immutable/chunks/BPh8tqAg.js.br +2 -0
- package/build/client/_app/immutable/chunks/BPh8tqAg.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BQ0vnNWj.js +1 -0
- package/build/client/_app/immutable/chunks/BQ0vnNWj.js.br +1 -0
- package/build/client/_app/immutable/chunks/BQ0vnNWj.js.gz +0 -0
- package/build/client/_app/immutable/chunks/{CJkMgfFh.js → BQrb5YOM.js} +1 -1
- package/build/client/_app/immutable/chunks/BQrb5YOM.js.br +0 -0
- package/build/client/_app/immutable/chunks/BQrb5YOM.js.gz +0 -0
- package/build/client/_app/immutable/chunks/Bmfn2m9N.js +1 -0
- package/build/client/_app/immutable/chunks/Bmfn2m9N.js.br +1 -0
- package/build/client/_app/immutable/chunks/Bmfn2m9N.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CrcMJfbz.js +1 -0
- package/build/client/_app/immutable/chunks/CrcMJfbz.js.br +0 -0
- package/build/client/_app/immutable/chunks/CrcMJfbz.js.gz +0 -0
- package/build/client/_app/immutable/chunks/E7W0MQkU.js +1 -0
- package/build/client/_app/immutable/chunks/E7W0MQkU.js.br +0 -0
- package/build/client/_app/immutable/chunks/E7W0MQkU.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.9wfmQKXa.js +2 -0
- package/build/client/_app/immutable/entry/app.9wfmQKXa.js.br +0 -0
- package/build/client/_app/immutable/entry/app.9wfmQKXa.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.BzWuQgSn.js +1 -0
- package/build/client/_app/immutable/entry/start.BzWuQgSn.js.br +0 -0
- package/build/client/_app/immutable/entry/start.BzWuQgSn.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.DxAGOZgx.js +1 -0
- package/build/client/_app/immutable/nodes/0.DxAGOZgx.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.DxAGOZgx.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.B-z3blIe.js +1 -0
- package/build/client/_app/immutable/nodes/1.B-z3blIe.js.br +1 -0
- package/build/client/_app/immutable/nodes/1.B-z3blIe.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.B-8ehRO1.js +1 -0
- package/build/client/_app/immutable/nodes/2.B-8ehRO1.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.B-8ehRO1.js.gz +0 -0
- package/build/client/_app/immutable/nodes/3.DHPuQEyR.js +1 -0
- package/build/client/_app/immutable/nodes/3.DHPuQEyR.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.DHPuQEyR.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.DOO_QIq1.js +18 -0
- package/build/client/_app/immutable/nodes/4.DOO_QIq1.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.DOO_QIq1.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.BrAtimvQ.js +4 -0
- package/build/client/_app/immutable/nodes/5.BrAtimvQ.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.BrAtimvQ.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.CDpI1TrW.js +1 -0
- package/build/client/_app/immutable/nodes/6.CDpI1TrW.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.CDpI1TrW.js.gz +0 -0
- package/build/client/_app/immutable/nodes/{7.fFA0e6kz.js → 7.B5KYnWwU.js} +7 -7
- package/build/client/_app/immutable/nodes/7.B5KYnWwU.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.B5KYnWwU.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.2jRmEBBC.js +2 -0
- package/build/client/_app/immutable/nodes/8.2jRmEBBC.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.2jRmEBBC.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-CP9GcQBP.js +9 -0
- package/build/server/chunks/{0-TTdZdv8o.js.map → 0-CP9GcQBP.js.map} +1 -1
- package/build/server/chunks/1-BDxTrwG3.js +9 -0
- package/build/server/chunks/{1-BhLqDyOn.js.map → 1-BDxTrwG3.js.map} +1 -1
- package/build/server/chunks/2-DQWoUtW1.js +9 -0
- package/build/server/chunks/{2-C2y4ydWU.js.map → 2-DQWoUtW1.js.map} +1 -1
- package/build/server/chunks/{3-BgeGdVvT.js → 3-gylRjzeN.js} +2 -2
- package/build/server/chunks/{3-BgeGdVvT.js.map → 3-gylRjzeN.js.map} +1 -1
- package/build/server/chunks/4-CBgm4iSo.js +9 -0
- package/build/server/chunks/4-CBgm4iSo.js.map +1 -0
- package/build/server/chunks/5-CD1fuYOe.js +9 -0
- package/build/server/chunks/5-CD1fuYOe.js.map +1 -0
- package/build/server/chunks/6-B6tmbcQ8.js +9 -0
- package/build/server/chunks/6-B6tmbcQ8.js.map +1 -0
- package/build/server/chunks/7-m4KLf_Gx.js +9 -0
- package/build/server/chunks/7-m4KLf_Gx.js.map +1 -0
- package/build/server/chunks/8-CmPpxrjv.js +9 -0
- package/build/server/chunks/8-CmPpxrjv.js.map +1 -0
- package/build/server/chunks/{AuthGate-C3ZisQbA.js → AuthGate-BcB49fE5.js} +44 -41
- package/build/server/chunks/AuthGate-BcB49fE5.js.map +1 -0
- package/build/server/chunks/ModeSwitch-D26evPMy.js +15 -0
- package/build/server/chunks/ModeSwitch-D26evPMy.js.map +1 -0
- package/build/server/chunks/Spinner-Bk6e83RX.js +12 -0
- package/build/server/chunks/Spinner-Bk6e83RX.js.map +1 -0
- package/build/server/chunks/VoiceProfileSelector-CbOV_v5A.js +306 -0
- package/build/server/chunks/VoiceProfileSelector-CbOV_v5A.js.map +1 -0
- package/build/server/chunks/{_layout.svelte-B93aaRP_.js → _layout.svelte-BV7A7zff.js} +2 -2
- package/build/server/chunks/{_layout.svelte-B93aaRP_.js.map → _layout.svelte-BV7A7zff.js.map} +1 -1
- package/build/server/chunks/{_layout.svelte-CcloHuB_.js → _layout.svelte-C8ggVfth.js} +8 -8
- package/build/server/chunks/_layout.svelte-C8ggVfth.js.map +1 -0
- package/build/server/chunks/_page.svelte-CEjRvc8B.js +2579 -0
- package/build/server/chunks/_page.svelte-CEjRvc8B.js.map +1 -0
- package/build/server/chunks/{_page.svelte-C6H2En_w.js → _page.svelte-Cy4kcLwu.js} +7 -6
- package/build/server/chunks/{_page.svelte-C6H2En_w.js.map → _page.svelte-Cy4kcLwu.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-D0gMlmzQ.js → _page.svelte-DLAHj-kk.js} +6 -14
- package/build/server/chunks/_page.svelte-DLAHj-kk.js.map +1 -0
- package/build/server/chunks/{_page.svelte-DA9eUO0x.js → _page.svelte-DrWHHwCU.js} +8 -7
- package/build/server/chunks/{_page.svelte-DA9eUO0x.js.map → _page.svelte-DrWHHwCU.js.map} +1 -1
- package/build/server/chunks/{_page.svelte-Arw4vnr_.js → _page.svelte-WWZsjJuR.js} +25 -22
- package/build/server/chunks/_page.svelte-WWZsjJuR.js.map +1 -0
- package/build/server/chunks/{dev-DjANv7AF.js → dev-B6xUe35c.js} +23 -2
- package/build/server/chunks/{dev-DjANv7AF.js.map → dev-B6xUe35c.js.map} +1 -1
- package/build/server/chunks/{error.svelte-CEMlYvrw.js → error.svelte-CcHm-30A.js} +4 -4
- package/build/server/chunks/{error.svelte-CEMlYvrw.js.map → error.svelte-CcHm-30A.js.map} +1 -1
- package/build/server/chunks/{internal-CStLdOSk.js → internal-B08Y9iTe.js} +3 -3
- package/build/server/chunks/{internal-CStLdOSk.js.map → internal-B08Y9iTe.js.map} +1 -1
- package/build/server/chunks/{state-BCMZi_P3.js → state-CFHLgqLs.js} +3 -3
- package/build/server/chunks/{state-BCMZi_P3.js.map → state-CFHLgqLs.js.map} +1 -1
- package/build/server/chunks/{theme-state.svelte-PtPMmKGN.js → theme-state.svelte-y-mfJax7.js} +9 -2
- package/build/server/chunks/theme-state.svelte-y-mfJax7.js.map +1 -0
- package/build/server/index.js +2 -2
- package/build/server/index.js.map +1 -1
- package/build/server/manifest.js +10 -10
- package/build/server/manifest.js.map +1 -1
- package/package.json +1 -1
- package/build/client/_app/immutable/assets/0.p3iHeEvq.css +0 -1
- package/build/client/_app/immutable/assets/0.p3iHeEvq.css.br +0 -0
- package/build/client/_app/immutable/assets/0.p3iHeEvq.css.gz +0 -0
- package/build/client/_app/immutable/assets/4.DhrSl6jB.css +0 -1
- package/build/client/_app/immutable/assets/4.DhrSl6jB.css.br +0 -0
- package/build/client/_app/immutable/assets/4.DhrSl6jB.css.gz +0 -0
- package/build/client/_app/immutable/assets/7.Cucah5cY.css +0 -1
- package/build/client/_app/immutable/assets/7.Cucah5cY.css.br +0 -0
- package/build/client/_app/immutable/assets/7.Cucah5cY.css.gz +0 -0
- package/build/client/_app/immutable/assets/8.DjrHy5wu.css +0 -1
- package/build/client/_app/immutable/assets/8.DjrHy5wu.css.br +0 -0
- package/build/client/_app/immutable/assets/8.DjrHy5wu.css.gz +0 -0
- package/build/client/_app/immutable/assets/AuthGate.B8fOC_pJ.css +0 -1
- package/build/client/_app/immutable/assets/AuthGate.B8fOC_pJ.css.br +0 -0
- package/build/client/_app/immutable/assets/AuthGate.B8fOC_pJ.css.gz +0 -0
- package/build/client/_app/immutable/assets/ModeSwitch.RmRIDur-.css +0 -1
- package/build/client/_app/immutable/assets/ModeSwitch.RmRIDur-.css.br +0 -0
- package/build/client/_app/immutable/assets/ModeSwitch.RmRIDur-.css.gz +0 -0
- package/build/client/_app/immutable/assets/VoiceProfileSelector.CM_o2XIa.css +0 -1
- package/build/client/_app/immutable/assets/VoiceProfileSelector.CM_o2XIa.css.br +0 -0
- package/build/client/_app/immutable/assets/VoiceProfileSelector.CM_o2XIa.css.gz +0 -0
- package/build/client/_app/immutable/chunks/7rWcSIlt.js +0 -1
- package/build/client/_app/immutable/chunks/7rWcSIlt.js.br +0 -0
- package/build/client/_app/immutable/chunks/7rWcSIlt.js.gz +0 -0
- package/build/client/_app/immutable/chunks/B7ArSvo1.js +0 -1
- package/build/client/_app/immutable/chunks/B7ArSvo1.js.br +0 -0
- package/build/client/_app/immutable/chunks/B7ArSvo1.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BwTF6U35.js +0 -3
- package/build/client/_app/immutable/chunks/BwTF6U35.js.br +0 -0
- package/build/client/_app/immutable/chunks/BwTF6U35.js.gz +0 -0
- package/build/client/_app/immutable/chunks/BxZ6a55y.js.br +0 -0
- package/build/client/_app/immutable/chunks/BxZ6a55y.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CJkMgfFh.js.br +0 -0
- package/build/client/_app/immutable/chunks/CJkMgfFh.js.gz +0 -0
- package/build/client/_app/immutable/chunks/CaNTMSit.js +0 -5
- package/build/client/_app/immutable/chunks/CaNTMSit.js.br +0 -0
- package/build/client/_app/immutable/chunks/CaNTMSit.js.gz +0 -0
- package/build/client/_app/immutable/chunks/DpdFx-ph.js.br +0 -0
- package/build/client/_app/immutable/chunks/DpdFx-ph.js.gz +0 -0
- package/build/client/_app/immutable/chunks/os2NZ37U.js +0 -1
- package/build/client/_app/immutable/chunks/os2NZ37U.js.br +0 -1
- package/build/client/_app/immutable/chunks/os2NZ37U.js.gz +0 -0
- package/build/client/_app/immutable/entry/app.CzMd4RbT.js +0 -2
- package/build/client/_app/immutable/entry/app.CzMd4RbT.js.br +0 -0
- package/build/client/_app/immutable/entry/app.CzMd4RbT.js.gz +0 -0
- package/build/client/_app/immutable/entry/start.QaKTVCwD.js +0 -1
- package/build/client/_app/immutable/entry/start.QaKTVCwD.js.br +0 -0
- package/build/client/_app/immutable/entry/start.QaKTVCwD.js.gz +0 -0
- package/build/client/_app/immutable/nodes/0.BUaVTC13.js +0 -1
- package/build/client/_app/immutable/nodes/0.BUaVTC13.js.br +0 -0
- package/build/client/_app/immutable/nodes/0.BUaVTC13.js.gz +0 -0
- package/build/client/_app/immutable/nodes/1.D9TRUzbv.js +0 -1
- package/build/client/_app/immutable/nodes/1.D9TRUzbv.js.br +0 -2
- package/build/client/_app/immutable/nodes/1.D9TRUzbv.js.gz +0 -0
- package/build/client/_app/immutable/nodes/2.ojh8oE7F.js +0 -1
- package/build/client/_app/immutable/nodes/2.ojh8oE7F.js.br +0 -0
- package/build/client/_app/immutable/nodes/2.ojh8oE7F.js.gz +0 -0
- package/build/client/_app/immutable/nodes/3.DeAC3yVJ.js +0 -1
- package/build/client/_app/immutable/nodes/3.DeAC3yVJ.js.br +0 -0
- package/build/client/_app/immutable/nodes/3.DeAC3yVJ.js.gz +0 -0
- package/build/client/_app/immutable/nodes/4.5fL8qHix.js +0 -18
- package/build/client/_app/immutable/nodes/4.5fL8qHix.js.br +0 -0
- package/build/client/_app/immutable/nodes/4.5fL8qHix.js.gz +0 -0
- package/build/client/_app/immutable/nodes/5.DAAeB39N.js +0 -4
- package/build/client/_app/immutable/nodes/5.DAAeB39N.js.br +0 -0
- package/build/client/_app/immutable/nodes/5.DAAeB39N.js.gz +0 -0
- package/build/client/_app/immutable/nodes/6.CmMKgobq.js +0 -1
- package/build/client/_app/immutable/nodes/6.CmMKgobq.js.br +0 -0
- package/build/client/_app/immutable/nodes/6.CmMKgobq.js.gz +0 -0
- package/build/client/_app/immutable/nodes/7.fFA0e6kz.js.br +0 -0
- package/build/client/_app/immutable/nodes/7.fFA0e6kz.js.gz +0 -0
- package/build/client/_app/immutable/nodes/8.Rc3xcFgu.js +0 -2
- package/build/client/_app/immutable/nodes/8.Rc3xcFgu.js.br +0 -0
- package/build/client/_app/immutable/nodes/8.Rc3xcFgu.js.gz +0 -0
- package/build/server/chunks/0-TTdZdv8o.js +0 -9
- package/build/server/chunks/1-BhLqDyOn.js +0 -9
- package/build/server/chunks/2-C2y4ydWU.js +0 -9
- package/build/server/chunks/4-D6mAJO8F.js +0 -9
- package/build/server/chunks/4-D6mAJO8F.js.map +0 -1
- package/build/server/chunks/5-D5Apamdo.js +0 -9
- package/build/server/chunks/5-D5Apamdo.js.map +0 -1
- package/build/server/chunks/6-aCBWYjjQ.js +0 -9
- package/build/server/chunks/6-aCBWYjjQ.js.map +0 -1
- package/build/server/chunks/7-NlChqFlW.js +0 -9
- package/build/server/chunks/7-NlChqFlW.js.map +0 -1
- package/build/server/chunks/8-EJHw3wqt.js +0 -9
- package/build/server/chunks/8-EJHw3wqt.js.map +0 -1
- package/build/server/chunks/AuthGate-C3ZisQbA.js.map +0 -1
- package/build/server/chunks/ModeSwitch-B9a33ugm.js +0 -15
- package/build/server/chunks/ModeSwitch-B9a33ugm.js.map +0 -1
- package/build/server/chunks/_layout.svelte-CcloHuB_.js.map +0 -1
- package/build/server/chunks/_page.svelte-4WHOZ298.js +0 -408
- package/build/server/chunks/_page.svelte-4WHOZ298.js.map +0 -1
- package/build/server/chunks/_page.svelte-Arw4vnr_.js.map +0 -1
- package/build/server/chunks/_page.svelte-D0gMlmzQ.js.map +0 -1
- package/build/server/chunks/theme-state.svelte-PtPMmKGN.js.map +0 -1
|
@@ -1,408 +0,0 @@
|
|
|
1
|
-
import { B as head, n as ensure_array_like, e as attr_class, d as attr, p as escape_html, a6 as stringify, C as html, m as derived } from './dev-DjANv7AF.js';
|
|
2
|
-
import { o as onDestroy } from './state-BCMZi_P3.js';
|
|
3
|
-
import { e as fetchHealth, a as fetchContainers, f as fetchAutomations, i as fetchVersions, g as fetchReleases, h as fetchUiVersions } from './theme-state.svelte-PtPMmKGN.js';
|
|
4
|
-
import { A as AuthGate, N as Navbar, e as endpointsService } from './AuthGate-C3ZisQbA.js';
|
|
5
|
-
import './internal-CStLdOSk.js';
|
|
6
|
-
import './utils-BSRjJDrZ.js';
|
|
7
|
-
import 'node:module';
|
|
8
|
-
import './chunk-CLZ62Ad-.js';
|
|
9
|
-
|
|
10
|
-
//#region src/lib/components/TabBar.svelte
|
|
11
|
-
function TabBar($$renderer, $$props) {
|
|
12
|
-
$$renderer.component(($$renderer) => {
|
|
13
|
-
let { active} = $$props;
|
|
14
|
-
const ICONS = {
|
|
15
|
-
overview: `<rect x="3" y="3" width="7" height="7" /><rect x="14" y="3" width="7" height="7" /><rect x="14" y="14" width="7" height="7" /><rect x="3" y="14" width="7" height="7" />`,
|
|
16
|
-
containers: `<rect x="2" y="2" width="20" height="8" rx="2" ry="2" /><rect x="2" y="14" width="20" height="8" rx="2" ry="2" /><line x1="6" y1="6" x2="6.01" y2="6" /><line x1="6" y1="18" x2="6.01" y2="18" />`,
|
|
17
|
-
logs: `<polyline points="4 17 10 11 4 5" /><line x1="12" y1="19" x2="20" y2="19" />`,
|
|
18
|
-
connections: `<path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71" /><path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71" />`,
|
|
19
|
-
akm: `<path d="M2 3h6a4 4 0 0 1 4 4v14a3 3 0 0 0-3-3H2z" /><path d="M22 3h-6a4 4 0 0 0-4 4v14a3 3 0 0 1 3-3h7z" />`,
|
|
20
|
-
"host-sharing": `<circle cx="18" cy="5" r="3" /><circle cx="6" cy="12" r="3" /><circle cx="18" cy="19" r="3" /><line x1="8.59" y1="13.51" x2="15.42" y2="17.49" /><line x1="15.41" y1="6.51" x2="8.59" y2="10.49" />`,
|
|
21
|
-
voice: `<path d="M12 1a3 3 0 0 0-3 3v8a3 3 0 0 0 6 0V4a3 3 0 0 0-3-3z" /><path d="M19 10v2a7 7 0 0 1-14 0v-2" /><line x1="12" y1="19" x2="12" y2="23" /><line x1="8" y1="23" x2="16" y2="23" />`,
|
|
22
|
-
addons: `<path d="M12 2L2 7l10 5 10-5-10-5z" /><path d="M2 17l10 5 10-5" /><path d="M2 12l10 5 10-5" />`,
|
|
23
|
-
automations: `<circle cx="12" cy="12" r="10" /><polyline points="12 6 12 12 16 14" />`,
|
|
24
|
-
secrets: `<rect x="3" y="11" width="18" height="11" rx="2" ry="2" /><path d="M7 11V7a5 5 0 0 1 10 0v4" />`,
|
|
25
|
-
updates: `<polyline points="8 17 12 21 16 17" /><line x1="12" y1="12" x2="12" y2="21" /><path d="M20.88 18.09A5 5 0 0 0 18 9h-1.26A8 8 0 1 0 3 16.29" />`
|
|
26
|
-
};
|
|
27
|
-
const SECTIONS = [
|
|
28
|
-
{
|
|
29
|
-
id: "health",
|
|
30
|
-
label: "Health",
|
|
31
|
-
tabs: [
|
|
32
|
-
{
|
|
33
|
-
id: "overview",
|
|
34
|
-
label: "Overview",
|
|
35
|
-
icon: ICONS.overview
|
|
36
|
-
},
|
|
37
|
-
{
|
|
38
|
-
id: "containers",
|
|
39
|
-
label: "Containers",
|
|
40
|
-
icon: ICONS.containers
|
|
41
|
-
},
|
|
42
|
-
{
|
|
43
|
-
id: "logs",
|
|
44
|
-
label: "Logs",
|
|
45
|
-
icon: ICONS.logs
|
|
46
|
-
},
|
|
47
|
-
{
|
|
48
|
-
id: "updates",
|
|
49
|
-
label: "Updates",
|
|
50
|
-
icon: ICONS.updates
|
|
51
|
-
}
|
|
52
|
-
]
|
|
53
|
-
},
|
|
54
|
-
{
|
|
55
|
-
id: "knowledge",
|
|
56
|
-
label: "Knowledge",
|
|
57
|
-
tabs: [
|
|
58
|
-
{
|
|
59
|
-
id: "akm",
|
|
60
|
-
label: "Memory",
|
|
61
|
-
icon: ICONS.akm
|
|
62
|
-
},
|
|
63
|
-
{
|
|
64
|
-
id: "host-sharing",
|
|
65
|
-
label: "Host Sharing",
|
|
66
|
-
icon: ICONS["host-sharing"]
|
|
67
|
-
},
|
|
68
|
-
{
|
|
69
|
-
id: "secrets",
|
|
70
|
-
label: "Secrets",
|
|
71
|
-
icon: ICONS.secrets
|
|
72
|
-
}
|
|
73
|
-
]
|
|
74
|
-
},
|
|
75
|
-
{
|
|
76
|
-
id: "voice",
|
|
77
|
-
label: "Voice",
|
|
78
|
-
tabs: [{
|
|
79
|
-
id: "voice",
|
|
80
|
-
label: "Voice",
|
|
81
|
-
icon: ICONS.voice
|
|
82
|
-
}]
|
|
83
|
-
},
|
|
84
|
-
{
|
|
85
|
-
id: "mind",
|
|
86
|
-
label: "Mind",
|
|
87
|
-
tabs: [{
|
|
88
|
-
id: "connections",
|
|
89
|
-
label: "AI Providers",
|
|
90
|
-
icon: ICONS.connections
|
|
91
|
-
}]
|
|
92
|
-
},
|
|
93
|
-
{
|
|
94
|
-
id: "capabilities",
|
|
95
|
-
label: "Capabilities",
|
|
96
|
-
tabs: [{
|
|
97
|
-
id: "addons",
|
|
98
|
-
label: "Add-ons",
|
|
99
|
-
icon: ICONS.addons
|
|
100
|
-
}, {
|
|
101
|
-
id: "automations",
|
|
102
|
-
label: "Automations",
|
|
103
|
-
icon: ICONS.automations
|
|
104
|
-
}]
|
|
105
|
-
}
|
|
106
|
-
];
|
|
107
|
-
let activeSection = derived(() => SECTIONS.find((s) => s.tabs.some((t) => t.id === active)) ?? SECTIONS[0]);
|
|
108
|
-
$$renderer.push(`<nav class="nav-shell svelte-1wwzsr0" aria-label="Admin sections"><div class="section-strip svelte-1wwzsr0" role="tablist" aria-label="Sections"><!--[-->`);
|
|
109
|
-
const each_array = ensure_array_like(SECTIONS);
|
|
110
|
-
for (let $$index = 0, $$length = each_array.length; $$index < $$length; $$index++) {
|
|
111
|
-
let section = each_array[$$index];
|
|
112
|
-
$$renderer.push(`<button${attr_class("section-tab svelte-1wwzsr0", void 0, { "section-tab-active": activeSection().id === section.id })} role="tab"${attr("aria-selected", activeSection().id === section.id)}>${escape_html(section.label)}</button>`);
|
|
113
|
-
}
|
|
114
|
-
$$renderer.push(`<!--]--></div> `);
|
|
115
|
-
if (activeSection().tabs.length > 1) {
|
|
116
|
-
$$renderer.push("<!--[0-->");
|
|
117
|
-
$$renderer.push(`<div class="subtab-row svelte-1wwzsr0"><div class="tabs svelte-1wwzsr0" role="tablist"${attr("aria-label", `${stringify(activeSection().label)} tabs`)}><!--[-->`);
|
|
118
|
-
const each_array_1 = ensure_array_like(activeSection().tabs);
|
|
119
|
-
for (let $$index_1 = 0, $$length = each_array_1.length; $$index_1 < $$length; $$index_1++) {
|
|
120
|
-
let tab = each_array_1[$$index_1];
|
|
121
|
-
$$renderer.push(`<button${attr_class("tab svelte-1wwzsr0", void 0, { "tab-active": active === tab.id })} role="tab"${attr("aria-selected", active === tab.id)}><svg aria-hidden="true" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">${html(tab.icon)}</svg> ${escape_html(tab.label)}</button>`);
|
|
122
|
-
}
|
|
123
|
-
$$renderer.push(`<!--]--></div></div>`);
|
|
124
|
-
} else $$renderer.push("<!--[-1-->");
|
|
125
|
-
$$renderer.push(`<!--]--></nav>`);
|
|
126
|
-
});
|
|
127
|
-
}
|
|
128
|
-
//#endregion
|
|
129
|
-
//#region src/lib/components/AdminScopeBar.svelte
|
|
130
|
-
function AdminScopeBar($$renderer, $$props) {
|
|
131
|
-
$$renderer.component(($$renderer) => {
|
|
132
|
-
const active = derived(() => endpointsService.active);
|
|
133
|
-
const remote = derived(() => {
|
|
134
|
-
const url = active()?.url ?? "";
|
|
135
|
-
if (!url) return null;
|
|
136
|
-
try {
|
|
137
|
-
const host = new URL(url).hostname;
|
|
138
|
-
return host === "localhost" || host === "127.0.0.1" || host === "::1" || host === "host.docker.internal" ? null : active()?.label ?? host;
|
|
139
|
-
} catch {
|
|
140
|
-
return null;
|
|
141
|
-
}
|
|
142
|
-
});
|
|
143
|
-
$$renderer.push(`<div${attr_class("scope-bar svelte-zyzzee", void 0, { "scope-bar--remote": remote() })}><span class="scope-main svelte-zyzzee"><svg class="scope-icon svelte-zyzzee" aria-hidden="true" width="15" height="15" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><rect x="2" y="2" width="20" height="8" rx="2"></rect><rect x="2" y="14" width="20" height="8" rx="2"></rect><line x1="6" y1="6" x2="6.01" y2="6"></line><line x1="6" y1="18" x2="6.01" y2="18"></line></svg> <span class="scope-text svelte-zyzzee">Managing <strong class="svelte-zyzzee">this OpenPalm</strong> on this machine <span class="scope-local svelte-zyzzee">(local)</span></span></span> `);
|
|
144
|
-
if (remote()) {
|
|
145
|
-
$$renderer.push("<!--[0-->");
|
|
146
|
-
$$renderer.push(`<span class="scope-remote svelte-zyzzee" title="You're chatting with a remote assistant. Its settings are managed on that machine.">Chatting with <strong class="svelte-zyzzee">${escape_html(remote())}</strong> (remote) — managed there, not here</span>`);
|
|
147
|
-
} else $$renderer.push("<!--[-1-->");
|
|
148
|
-
$$renderer.push(`<!--]--></div>`);
|
|
149
|
-
});
|
|
150
|
-
}
|
|
151
|
-
//#endregion
|
|
152
|
-
//#region src/lib/components/OverviewTab.svelte
|
|
153
|
-
function OverviewTab($$renderer, $$props) {
|
|
154
|
-
$$renderer.component(($$renderer) => {
|
|
155
|
-
let { healthLoading, anyDangerousLoading, automationsData, mergedServices} = $$props;
|
|
156
|
-
let akmBadge = derived(() => {
|
|
157
|
-
return {
|
|
158
|
-
label: "Unavailable",
|
|
159
|
-
cls: "badge-neutral"
|
|
160
|
-
};
|
|
161
|
-
});
|
|
162
|
-
let automationCount = derived(() => automationsData?.automations.length ?? 0);
|
|
163
|
-
let enabledAutomationCount = derived(() => automationsData?.automations.filter((a) => a.enabled).length ?? 0);
|
|
164
|
-
let containerCounts = derived(() => {
|
|
165
|
-
if (mergedServices.size === 0) return null;
|
|
166
|
-
return {
|
|
167
|
-
total: mergedServices.size,
|
|
168
|
-
running: [...mergedServices.values()].filter((s) => s === "running").length
|
|
169
|
-
};
|
|
170
|
-
});
|
|
171
|
-
let downServices = derived(() => {
|
|
172
|
-
const out = [];
|
|
173
|
-
for (const [name, status] of mergedServices) if (status !== "running") out.push(name);
|
|
174
|
-
return out;
|
|
175
|
-
});
|
|
176
|
-
let health = derived(() => {
|
|
177
|
-
if (!containerCounts()) return {
|
|
178
|
-
status: "unknown",
|
|
179
|
-
title: "Checking services…",
|
|
180
|
-
detail: "Fetching the latest status from Docker."
|
|
181
|
-
};
|
|
182
|
-
if (containerCounts().running === containerCounts().total && containerCounts().total > 0) return {
|
|
183
|
-
status: "ok",
|
|
184
|
-
title: "All systems operational",
|
|
185
|
-
detail: `${containerCounts().total} of ${containerCounts().total} services are running normally.`
|
|
186
|
-
};
|
|
187
|
-
const down = containerCounts().total - containerCounts().running;
|
|
188
|
-
const names = downServices().map((n) => n.charAt(0).toUpperCase() + n.slice(1)).join(", ");
|
|
189
|
-
return {
|
|
190
|
-
status: "warning",
|
|
191
|
-
title: `${down} of ${containerCounts().total} services not running`,
|
|
192
|
-
detail: names ? `Not running: ${names}.` : "One or more services need attention."
|
|
193
|
-
};
|
|
194
|
-
});
|
|
195
|
-
$$renderer.push(`<section${attr_class(`hero hero--${stringify(health().status)}`, "svelte-1ob1zsm")} role="status" aria-live="polite"><span class="hero-icon svelte-1ob1zsm" aria-hidden="true">`);
|
|
196
|
-
if (health().status === "warning") {
|
|
197
|
-
$$renderer.push("<!--[0-->");
|
|
198
|
-
$$renderer.push(`<svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3Z"></path><line x1="12" y1="9" x2="12" y2="13"></line><line x1="12" y1="17" x2="12.01" y2="17"></line></svg>`);
|
|
199
|
-
} else if (health().status === "ok") {
|
|
200
|
-
$$renderer.push("<!--[1-->");
|
|
201
|
-
$$renderer.push(`<svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M22 11.08V12a10 10 0 1 1-5.93-9.14"></path><polyline points="22 4 12 14.01 9 11.01"></polyline></svg>`);
|
|
202
|
-
} else {
|
|
203
|
-
$$renderer.push("<!--[-1-->");
|
|
204
|
-
$$renderer.push(`<svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><circle cx="12" cy="12" r="10"></circle><line x1="12" y1="8" x2="12" y2="12"></line><line x1="12" y1="16" x2="12.01" y2="16"></line></svg>`);
|
|
205
|
-
}
|
|
206
|
-
$$renderer.push(`<!--]--></span> <div class="hero-text svelte-1ob1zsm"><h2 class="hero-title svelte-1ob1zsm">${escape_html(health().title)}</h2> <p class="hero-detail svelte-1ob1zsm">${escape_html(health().detail)}</p></div> <div class="hero-actions svelte-1ob1zsm"><button class="btn btn-secondary"${attr("disabled", healthLoading, true)}>${escape_html(healthLoading ? "Checking…" : "Re-check")}</button> `);
|
|
207
|
-
if (health().status === "warning") {
|
|
208
|
-
$$renderer.push("<!--[0-->");
|
|
209
|
-
$$renderer.push(`<button class="btn btn-secondary">View containers</button>`);
|
|
210
|
-
} else $$renderer.push("<!--[-1-->");
|
|
211
|
-
$$renderer.push(`<!--]--> <button class="btn btn-secondary"${attr("disabled", anyDangerousLoading || false, true)}>${escape_html("Apply config & restart")}</button></div></section> `);
|
|
212
|
-
$$renderer.push("<!--[-1-->");
|
|
213
|
-
$$renderer.push(`<!--]--> <div class="tile-grid svelte-1ob1zsm"><button class="tile svelte-1ob1zsm"><span class="tile-metric svelte-1ob1zsm">`);
|
|
214
|
-
if (containerCounts()) {
|
|
215
|
-
$$renderer.push("<!--[0-->");
|
|
216
|
-
$$renderer.push(`${escape_html(containerCounts().running)}<span class="tile-metric-sub svelte-1ob1zsm">/${escape_html(containerCounts().total)}</span>`);
|
|
217
|
-
} else {
|
|
218
|
-
$$renderer.push("<!--[-1-->");
|
|
219
|
-
$$renderer.push(`—`);
|
|
220
|
-
}
|
|
221
|
-
$$renderer.push(`<!--]--></span> <span class="tile-label svelte-1ob1zsm">Services running</span></button> <button class="tile svelte-1ob1zsm"><span class="tile-metric svelte-1ob1zsm">`);
|
|
222
|
-
if (automationsData) {
|
|
223
|
-
$$renderer.push("<!--[0-->");
|
|
224
|
-
$$renderer.push(`${escape_html(enabledAutomationCount())}<span class="tile-metric-sub svelte-1ob1zsm">/${escape_html(automationCount())}</span>`);
|
|
225
|
-
} else {
|
|
226
|
-
$$renderer.push("<!--[-1-->");
|
|
227
|
-
$$renderer.push(`—`);
|
|
228
|
-
}
|
|
229
|
-
$$renderer.push(`<!--]--></span> <span class="tile-label svelte-1ob1zsm">Automations active</span></button> <button class="tile svelte-1ob1zsm"><span class="tile-metric tile-metric--icon svelte-1ob1zsm" aria-hidden="true"><svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="4 17 10 11 4 5"></polyline><line x1="12" y1="19" x2="20" y2="19"></line></svg></span> <span class="tile-label svelte-1ob1zsm">View logs</span></button> <button class="tile svelte-1ob1zsm"><span class="tile-metric tile-metric--icon svelte-1ob1zsm" aria-hidden="true"><svg width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><polyline points="8 17 12 21 16 17"></polyline><line x1="12" y1="12" x2="12" y2="21"></line><path d="M20.88 18.09A5 5 0 0 0 18 9h-1.26A8 8 0 1 0 3 16.29"></path></svg></span> <span class="tile-label svelte-1ob1zsm">Check for updates</span></button></div> <h3 class="section-heading svelte-1ob1zsm">Knowledge base (AKM)</h3> <button class="akm-card svelte-1ob1zsm" aria-label="AKM health — open Knowledge settings"><div class="akm-head svelte-1ob1zsm"><span class="akm-title svelte-1ob1zsm">AKM runtime health</span> <span${attr_class(`badge ${stringify(akmBadge().cls)}`, "svelte-1ob1zsm")}>${escape_html(akmBadge().label)}</span></div> `);
|
|
230
|
-
$$renderer.push("<!--[-1-->");
|
|
231
|
-
$$renderer.push(`<p class="akm-unavailable svelte-1ob1zsm">Metrics unavailable — the akm CLI isn't reachable from the admin host.</p>`);
|
|
232
|
-
$$renderer.push(`<!--]--></button> <h3 class="section-heading svelte-1ob1zsm">Configure</h3> <div class="shortcut-grid svelte-1ob1zsm"><button class="shortcut svelte-1ob1zsm"><span class="shortcut-name svelte-1ob1zsm">AI Providers</span> <span class="shortcut-desc svelte-1ob1zsm">Models & provider credentials</span></button> <button class="shortcut svelte-1ob1zsm"><span class="shortcut-name svelte-1ob1zsm">Knowledge</span> <span class="shortcut-desc svelte-1ob1zsm">Assistant memory & behavior</span></button> <button class="shortcut svelte-1ob1zsm"><span class="shortcut-name svelte-1ob1zsm">Voice</span> <span class="shortcut-desc svelte-1ob1zsm">Speech-to-text & text-to-speech</span></button> <button class="shortcut svelte-1ob1zsm"><span class="shortcut-name svelte-1ob1zsm">Channels & add-ons</span> <span class="shortcut-desc svelte-1ob1zsm">Discord, Slack, API & more</span></button> <button class="shortcut svelte-1ob1zsm"><span class="shortcut-name svelte-1ob1zsm">Secrets</span> <span class="shortcut-desc svelte-1ob1zsm">Stack & channel credentials</span></button> <a class="shortcut svelte-1ob1zsm" href="/setup?rerun=1"><span class="shortcut-name svelte-1ob1zsm">Re-run setup</span> <span class="shortcut-desc svelte-1ob1zsm">Walk through the setup wizard again</span></a></div>`);
|
|
233
|
-
});
|
|
234
|
-
}
|
|
235
|
-
//#endregion
|
|
236
|
-
//#region src/routes/admin/+page.svelte
|
|
237
|
-
function _page($$renderer, $$props) {
|
|
238
|
-
$$renderer.component(($$renderer) => {
|
|
239
|
-
let authLocked = true;
|
|
240
|
-
let authLoading = false;
|
|
241
|
-
let authError = "";
|
|
242
|
-
let adminHealth = null;
|
|
243
|
-
let healthLoading = false;
|
|
244
|
-
let upgradeLoading = false;
|
|
245
|
-
let containerData = null;
|
|
246
|
-
let automationsData = null;
|
|
247
|
-
let activeTab = "overview";
|
|
248
|
-
let currentImageTag = "";
|
|
249
|
-
let inElectron = false;
|
|
250
|
-
let selectedUiTag = "";
|
|
251
|
-
let releases = [];
|
|
252
|
-
let uiVersions = [];
|
|
253
|
-
const POLL_INTERVAL_MS = 1e4;
|
|
254
|
-
let pollTimer = null;
|
|
255
|
-
function startContainerPolling() {
|
|
256
|
-
stopContainerPolling();
|
|
257
|
-
pollTimer = setInterval(() => {
|
|
258
|
-
if (!authLocked && containerData) loadContainers();
|
|
259
|
-
}, POLL_INTERVAL_MS);
|
|
260
|
-
}
|
|
261
|
-
function stopContainerPolling() {
|
|
262
|
-
if (pollTimer !== null) {
|
|
263
|
-
clearInterval(pollTimer);
|
|
264
|
-
pollTimer = null;
|
|
265
|
-
}
|
|
266
|
-
}
|
|
267
|
-
onDestroy(() => {
|
|
268
|
-
stopContainerPolling();
|
|
269
|
-
});
|
|
270
|
-
let anyDangerousLoading = derived(() => upgradeLoading);
|
|
271
|
-
/** Merged service → state map (used by OverviewTab for health indicators) */
|
|
272
|
-
let mergedServices = derived(() => {
|
|
273
|
-
if (!containerData) return /* @__PURE__ */ new Map();
|
|
274
|
-
const merged = /* @__PURE__ */ new Map();
|
|
275
|
-
if (containerData.containers) for (const [name, state] of Object.entries(containerData.containers)) merged.set(name, state);
|
|
276
|
-
if (containerData.dockerContainers) for (const c of containerData.dockerContainers) merged.set(c.Service, c.State);
|
|
277
|
-
return merged;
|
|
278
|
-
});
|
|
279
|
-
function applyInvalidTokenState() {
|
|
280
|
-
authLocked = true;
|
|
281
|
-
authError = "Invalid password.";
|
|
282
|
-
}
|
|
283
|
-
async function handleAuthSuccess(token) {
|
|
284
|
-
if (authLoading) return false;
|
|
285
|
-
authLoading = true;
|
|
286
|
-
authError = "";
|
|
287
|
-
try {
|
|
288
|
-
if (!(await fetch("/admin/auth/login", {
|
|
289
|
-
method: "POST",
|
|
290
|
-
headers: { "content-type": "application/json" },
|
|
291
|
-
body: JSON.stringify({ password: token }),
|
|
292
|
-
credentials: "include"
|
|
293
|
-
})).ok) {
|
|
294
|
-
applyInvalidTokenState();
|
|
295
|
-
return false;
|
|
296
|
-
}
|
|
297
|
-
authLocked = false;
|
|
298
|
-
authError = "";
|
|
299
|
-
startContainerPolling();
|
|
300
|
-
await loadHealth();
|
|
301
|
-
loadContainers();
|
|
302
|
-
loadAutomations();
|
|
303
|
-
loadVersions();
|
|
304
|
-
loadReleases();
|
|
305
|
-
return true;
|
|
306
|
-
} catch (e) {
|
|
307
|
-
console.warn("[page] Auth failed:", e);
|
|
308
|
-
authError = "Unable to reach admin API.";
|
|
309
|
-
return false;
|
|
310
|
-
} finally {
|
|
311
|
-
authLoading = false;
|
|
312
|
-
}
|
|
313
|
-
}
|
|
314
|
-
async function loadHealth() {
|
|
315
|
-
healthLoading = true;
|
|
316
|
-
try {
|
|
317
|
-
const health = await fetchHealth();
|
|
318
|
-
adminHealth = health.admin;
|
|
319
|
-
health.guardian;
|
|
320
|
-
} catch (e) {
|
|
321
|
-
console.warn("[page] Health check failed:", e);
|
|
322
|
-
adminHealth = {
|
|
323
|
-
status: "error",
|
|
324
|
-
service: "admin"
|
|
325
|
-
};
|
|
326
|
-
}
|
|
327
|
-
healthLoading = false;
|
|
328
|
-
}
|
|
329
|
-
async function loadContainers() {
|
|
330
|
-
try {
|
|
331
|
-
containerData = await fetchContainers();
|
|
332
|
-
} catch (e) {
|
|
333
|
-
containerData = null;
|
|
334
|
-
const err = e;
|
|
335
|
-
if (err.status === 401) {
|
|
336
|
-
applyInvalidTokenState();
|
|
337
|
-
} else `Failed to load containers: ${err.message ?? e}`;
|
|
338
|
-
}
|
|
339
|
-
if (containerData) (/* @__PURE__ */ new Date()).toLocaleTimeString();
|
|
340
|
-
}
|
|
341
|
-
async function loadAutomations() {
|
|
342
|
-
try {
|
|
343
|
-
automationsData = await fetchAutomations();
|
|
344
|
-
} catch (e) {
|
|
345
|
-
automationsData = null;
|
|
346
|
-
const err = e;
|
|
347
|
-
if (err.status === 401) {
|
|
348
|
-
applyInvalidTokenState();
|
|
349
|
-
} else `Failed to load automations: ${err.message ?? e}`;
|
|
350
|
-
}
|
|
351
|
-
}
|
|
352
|
-
async function loadVersions() {
|
|
353
|
-
try {
|
|
354
|
-
const data = await fetchVersions();
|
|
355
|
-
currentImageTag = data.imageTag;
|
|
356
|
-
inElectron = data.inElectron;
|
|
357
|
-
} catch {}
|
|
358
|
-
}
|
|
359
|
-
async function loadReleases() {
|
|
360
|
-
try {
|
|
361
|
-
const [releaseData, uiData] = await Promise.all([fetchReleases(), fetchUiVersions()]);
|
|
362
|
-
releases = releaseData.releases;
|
|
363
|
-
uiVersions = uiData.versions;
|
|
364
|
-
if (!selectedUiTag) {
|
|
365
|
-
const channelPick = uiData.versions.find((v) => v.distTag === "next" || v.distTag === "latest") ?? uiData.versions[0];
|
|
366
|
-
if (channelPick) selectedUiTag = channelPick.version;
|
|
367
|
-
}
|
|
368
|
-
} catch {}
|
|
369
|
-
}
|
|
370
|
-
head("1jef3w8", $$renderer, ($$renderer) => {
|
|
371
|
-
$$renderer.title(($$renderer) => {
|
|
372
|
-
$$renderer.push(`<title>OpenPalm Console</title>`);
|
|
373
|
-
});
|
|
374
|
-
});
|
|
375
|
-
if (authLocked) {
|
|
376
|
-
$$renderer.push("<!--[0-->");
|
|
377
|
-
AuthGate($$renderer, {
|
|
378
|
-
onSuccess: handleAuthSuccess,
|
|
379
|
-
loading: authLoading,
|
|
380
|
-
error: authError
|
|
381
|
-
});
|
|
382
|
-
} else {
|
|
383
|
-
$$renderer.push("<!--[-1-->");
|
|
384
|
-
Navbar($$renderer);
|
|
385
|
-
$$renderer.push(`<!----> <main class="svelte-1jef3w8">`);
|
|
386
|
-
TabBar($$renderer, {
|
|
387
|
-
active: activeTab});
|
|
388
|
-
$$renderer.push(`<!----> `);
|
|
389
|
-
AdminScopeBar($$renderer);
|
|
390
|
-
$$renderer.push(`<!----> `);
|
|
391
|
-
{
|
|
392
|
-
$$renderer.push("<!--[0-->");
|
|
393
|
-
OverviewTab($$renderer, {
|
|
394
|
-
healthLoading,
|
|
395
|
-
anyDangerousLoading: anyDangerousLoading(),
|
|
396
|
-
automationsData,
|
|
397
|
-
mergedServices: mergedServices()});
|
|
398
|
-
}
|
|
399
|
-
$$renderer.push(`<!--]--> `);
|
|
400
|
-
$$renderer.push("<!--[-1-->");
|
|
401
|
-
$$renderer.push(`<!--]--></main>`);
|
|
402
|
-
}
|
|
403
|
-
$$renderer.push(`<!--]-->`);
|
|
404
|
-
});
|
|
405
|
-
}
|
|
406
|
-
|
|
407
|
-
export { _page as default };
|
|
408
|
-
//# sourceMappingURL=_page.svelte-4WHOZ298.js.map
|