homebridge-config-ui-x 5.5.0 → 5.5.1-alpha.0
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/CHANGELOG.md +36 -0
- package/dist/bin/hb-service.js +1 -1
- package/dist/bin/hb-service.js.map +1 -1
- package/dist/core/auth/auth.controller.d.ts +3 -0
- package/dist/core/config/config.interfaces.d.ts +124 -0
- package/dist/core/config/config.interfaces.js +3 -0
- package/dist/core/config/config.interfaces.js.map +1 -0
- package/dist/core/config/config.service.d.ts +7 -73
- package/dist/core/config/config.service.js +6 -0
- package/dist/core/config/config.service.js.map +1 -1
- package/dist/core/config/config.startup.d.ts +2 -12
- package/dist/core/config/config.startup.js +12 -0
- package/dist/core/config/config.startup.js.map +1 -1
- package/dist/core/spa/spa-html.service.d.ts +5 -0
- package/dist/core/spa/spa-html.service.js +38 -0
- package/dist/core/spa/spa-html.service.js.map +1 -0
- package/dist/core/spa/spa.filter.d.ts +3 -0
- package/dist/core/spa/spa.filter.js +22 -2
- package/dist/core/spa/spa.filter.js.map +1 -1
- package/dist/globalDefaults.js +11 -0
- package/dist/globalDefaults.js.map +1 -1
- package/dist/main.js +18 -3
- package/dist/main.js.map +1 -1
- package/dist/modules/accessories/accessories.service.js +5 -1
- package/dist/modules/accessories/accessories.service.js.map +1 -1
- package/dist/modules/backup/backup.service.js +4 -1
- package/dist/modules/backup/backup.service.js.map +1 -1
- package/dist/modules/config-editor/config-editor.controller.d.ts +3 -3
- package/dist/modules/config-editor/config-editor.service.d.ts +3 -2
- package/dist/modules/config-editor/config-editor.service.js +38 -15
- package/dist/modules/config-editor/config-editor.service.js.map +1 -1
- package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.d.ts +1 -1
- package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.js +2 -1
- package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.js.map +1 -1
- package/dist/modules/log/log.gateway.d.ts +1 -1
- package/dist/modules/log/log.interfaces.d.ts +4 -0
- package/dist/modules/log/log.interfaces.js +3 -0
- package/dist/modules/log/log.interfaces.js.map +1 -0
- package/dist/modules/log/log.service.d.ts +1 -4
- package/dist/modules/log/log.service.js.map +1 -1
- package/dist/modules/platform-tools/terminal/terminal.gateway.d.ts +1 -1
- package/dist/modules/platform-tools/terminal/terminal.interfaces.d.ts +8 -0
- package/dist/modules/platform-tools/terminal/terminal.interfaces.js +3 -0
- package/dist/modules/platform-tools/terminal/terminal.interfaces.js.map +1 -0
- package/dist/modules/platform-tools/terminal/terminal.service.d.ts +1 -8
- package/dist/modules/platform-tools/terminal/terminal.service.js.map +1 -1
- package/dist/modules/plugins/plugins.controller.d.ts +5 -5
- package/dist/modules/plugins/plugins.interfaces.d.ts +211 -0
- package/dist/modules/plugins/plugins.interfaces.js +3 -0
- package/dist/modules/plugins/plugins.interfaces.js.map +1 -0
- package/dist/modules/plugins/plugins.service.d.ts +2 -1
- package/dist/modules/plugins/plugins.service.js +47 -24
- package/dist/modules/plugins/plugins.service.js.map +1 -1
- package/dist/modules/server/server.controller.d.ts +3 -0
- package/dist/modules/server/server.controller.js +13 -0
- package/dist/modules/server/server.controller.js.map +1 -1
- package/dist/modules/server/server.service.js +6 -4
- package/dist/modules/server/server.service.js.map +1 -1
- package/dist/modules/status/status.controller.d.ts +2 -2
- package/dist/modules/status/status.gateway.d.ts +5 -5
- package/dist/modules/status/status.interfaces.d.ts +27 -0
- package/dist/modules/status/status.interfaces.js +10 -0
- package/dist/modules/status/status.interfaces.js.map +1 -0
- package/dist/modules/status/status.service.d.ts +2 -29
- package/dist/modules/status/status.service.js +4 -9
- package/dist/modules/status/status.service.js.map +1 -1
- package/package.json +3 -3
- package/public/3rdpartylicenses.txt +91 -91
- package/public/assets/monaco/ThirdPartyNotices.txt +448 -0
- package/public/assets/monaco/min/vs/base/browser/ui/codicons/codicon/codicon.ttf +0 -0
- package/public/assets/monaco/min/vs/base/worker/workerMain.js +31 -0
- package/public/assets/monaco/min/vs/basic-languages/shell/shell.js +10 -0
- package/public/assets/monaco/min/vs/editor/editor.main.css +8 -0
- package/public/assets/monaco/min/vs/editor/editor.main.js +798 -0
- package/public/assets/monaco/min/vs/language/json/jsonMode.js +19 -0
- package/public/assets/monaco/min/vs/language/json/jsonWorker.js +42 -0
- package/public/assets/monaco/min/vs/loader.js +11 -0
- package/public/chunk-23AU3MX7.js +1 -0
- package/public/chunk-2NPKZMGF.js +1 -0
- package/public/chunk-3U2WVJBA.js +1 -0
- package/public/{chunk-EQZV7W2F.js → chunk-3XX6K3N6.js} +1 -1
- package/public/{chunk-X5R4UHSV.js → chunk-4HFHCAVH.js} +1 -1
- package/public/{chunk-CDYGLUTV.js → chunk-4L36XSQH.js} +1 -1
- package/public/{chunk-MCHXOMUK.js → chunk-4X2ASGAG.js} +1 -1
- package/public/chunk-5BXICZM2.js +1 -0
- package/public/{chunk-GK2FJAIA.js → chunk-5R6IGZK6.js} +1 -1
- package/public/chunk-5UD7DCZJ.js +1 -0
- package/public/chunk-6IUEQMGQ.js +1 -0
- package/public/chunk-6QGMCM3D.js +1 -0
- package/public/{chunk-X4BK4EIR.js → chunk-6TZDM7LH.js} +1 -1
- package/public/chunk-77KJDFG2.js +1 -0
- package/public/chunk-AD3UWE4P.js +1 -0
- package/public/{chunk-MPEVLH5I.js → chunk-AF3VGM4S.js} +1 -1
- package/public/chunk-ATQI5X2M.js +1 -0
- package/public/{chunk-OCIXLP3Q.js → chunk-C66EAVPD.js} +1 -1
- package/public/chunk-CBEKHPKJ.js +1 -0
- package/public/{chunk-PETLNERF.js → chunk-CHSHRPAX.js} +1 -1
- package/public/{chunk-XNPJRZJU.js → chunk-CSBZ7TOY.js} +1 -1
- package/public/{chunk-QUAAVQGQ.js → chunk-CYT4MBBY.js} +1 -1
- package/public/chunk-D5B32ONS.js +1 -0
- package/public/chunk-DVCB2DRD.js +1 -0
- package/public/chunk-DXZBLXBX.js +1 -0
- package/public/chunk-EIJ3XF67.js +1 -0
- package/public/chunk-EIKPWDYR.js +1 -0
- package/public/chunk-EJI5A4GB.js +40 -0
- package/public/chunk-EK2MY2IP.js +1 -0
- package/public/{chunk-V2CYUM6X.js → chunk-GEA434I4.js} +1 -1
- package/public/chunk-HQWCWWHG.js +49 -0
- package/public/chunk-I5F6WOLX.js +1 -0
- package/public/chunk-ICHTBC24.js +1 -0
- package/public/{chunk-COTJCJ2Q.js → chunk-IZMCLNBP.js} +1 -1
- package/public/chunk-KGLXH7TA.js +1 -0
- package/public/{chunk-LVQGJ2B5.js → chunk-KOU3OJVF.js} +1 -1
- package/public/{chunk-RKGFBHJG.js → chunk-LQN66MFG.js} +1 -1
- package/public/chunk-LVWJGLUG.js +16 -0
- package/public/chunk-MVR4POOR.js +5 -0
- package/public/chunk-NHIZA4QK.js +4 -0
- package/public/{chunk-RD5FVAI2.js → chunk-NSO3DUQK.js} +4 -4
- package/public/chunk-NZROLC4K.js +1 -0
- package/public/{chunk-5PCDPQTV.js → chunk-OJMSJQ3B.js} +1 -1
- package/public/chunk-OVYAORCF.js +1 -0
- package/public/{chunk-6ZQMSK4C.js → chunk-P2RTAUAT.js} +1 -1
- package/public/chunk-PDAYBWCP.js +4 -0
- package/public/chunk-PGIRVXR4.js +1 -0
- package/public/{chunk-MNU7VJ4F.js → chunk-PK4R4QYF.js} +1 -1
- package/public/chunk-POEKC22L.js +1 -0
- package/public/{chunk-2TN4MWRG.js → chunk-PTHIWOB4.js} +1 -1
- package/public/chunk-RRIQGW3Y.js +1 -0
- package/public/chunk-S7BH6Q3Q.js +1 -0
- package/public/chunk-SESRE6K4.js +1 -0
- package/public/chunk-SJAYHV5T.js +19 -0
- package/public/chunk-SMJ5BAI5.js +1 -0
- package/public/chunk-TUN7H57E.js +1 -0
- package/public/chunk-UKDO3SQL.js +1 -0
- package/public/chunk-UOY7XUPC.js +1 -0
- package/public/chunk-V2466IWV.js +1 -0
- package/public/{chunk-6BYNCIUB.js → chunk-VAPGGHB4.js} +1 -1
- package/public/chunk-VJ34BQPJ.js +1 -0
- package/public/chunk-WAEZKTEF.js +2 -0
- package/public/{chunk-TJXKMEJL.js → chunk-XBI2X6IL.js} +1 -1
- package/public/chunk-XJO2KULM.js +1 -0
- package/public/chunk-Y4VCV3GI.js +1 -0
- package/public/chunk-Y7ICUNCY.js +1 -0
- package/public/chunk-YCL5FMNZ.js +1 -0
- package/public/{chunk-EJCUIKT3.js → chunk-ZJLC6C3I.js} +1 -1
- package/public/index.html +2 -2
- package/public/main-X5UQLIPE.js +1 -0
- package/public/{styles-YBNX7ZGB.css → styles-643WFJRY.css} +1 -1
- package/config.schema.json +0 -590
- package/public/assets/hap-icons/light-bulb.svg +0 -25
- package/public/assets/hap-icons/outlet.svg +0 -25
- package/public/assets/hap-icons/switch.svg +0 -25
- package/public/assets/hap-icons/unknown.svg +0 -25
- package/public/assets/monaco-0.21.3/README.md +0 -96
- package/public/assets/monaco-0.21.3/ThirdPartyNotices.txt +0 -283
- package/public/assets/monaco-0.21.3/min/vs/base/browser/ui/codicons/codicon/codicon.ttf +0 -0
- package/public/assets/monaco-0.21.3/min/vs/base/worker/workerMain.js +0 -160
- package/public/assets/monaco-0.21.3/min/vs/basic-languages/shell/shell.js +0 -7
- package/public/assets/monaco-0.21.3/min/vs/editor/editor.main.css +0 -6
- package/public/assets/monaco-0.21.3/min/vs/editor/editor.main.js +0 -2368
- package/public/assets/monaco-0.21.3/min/vs/editor/editor.main.nls.js +0 -39
- package/public/assets/monaco-0.21.3/min/vs/language/json/jsonMode.js +0 -7
- package/public/assets/monaco-0.21.3/min/vs/language/json/jsonWorker.js +0 -7
- package/public/assets/monaco-0.21.3/min/vs/loader.js +0 -38
- package/public/assets/monaco-0.21.3/package.json +0 -38
- package/public/chunk-4HE4ZOV2.js +0 -1
- package/public/chunk-4VRTWDLC.js +0 -1
- package/public/chunk-6NTI6OJP.js +0 -1
- package/public/chunk-6U5EVCLL.js +0 -1
- package/public/chunk-6XPBXGXL.js +0 -1
- package/public/chunk-APPIBA3A.js +0 -1
- package/public/chunk-BLACXXS5.js +0 -1
- package/public/chunk-CH37ERZR.js +0 -1
- package/public/chunk-CHVOUSYH.js +0 -1
- package/public/chunk-CNO7HM45.js +0 -1
- package/public/chunk-DA7RMT4Z.js +0 -12
- package/public/chunk-ESVHJP54.js +0 -1
- package/public/chunk-FWGBG4GE.js +0 -1
- package/public/chunk-FY5GOYXM.js +0 -1
- package/public/chunk-HJJYHJFU.js +0 -1
- package/public/chunk-IISL7R2U.js +0 -1
- package/public/chunk-JKYIXL2W.js +0 -1
- package/public/chunk-JLXHBDV4.js +0 -14
- package/public/chunk-JU5TVELH.js +0 -4
- package/public/chunk-KYYR7BKL.js +0 -1
- package/public/chunk-L2Z3AXVM.js +0 -1
- package/public/chunk-LCNBB75Q.js +0 -1
- package/public/chunk-LJ2VDV7E.js +0 -1
- package/public/chunk-LYUFPCJS.js +0 -1
- package/public/chunk-MSFNTB56.js +0 -1
- package/public/chunk-O4QZ4POF.js +0 -2
- package/public/chunk-OIGVYJ2D.js +0 -1
- package/public/chunk-OTQCO6QF.js +0 -4
- package/public/chunk-PM76DNNB.js +0 -1
- package/public/chunk-PSA5BJ4O.js +0 -2
- package/public/chunk-PT7VJPA5.js +0 -1
- package/public/chunk-PXTRJNWG.js +0 -30
- package/public/chunk-Q47QL6G5.js +0 -1
- package/public/chunk-Q6EFZDOI.js +0 -1
- package/public/chunk-QA4W42HX.js +0 -1
- package/public/chunk-QBUMDNNR.js +0 -1
- package/public/chunk-QUNHDVU7.js +0 -1
- package/public/chunk-TGY4SBYK.js +0 -20
- package/public/chunk-VDXOHOIZ.js +0 -23
- package/public/chunk-VEO6347U.js +0 -1
- package/public/chunk-VPT3FTAG.js +0 -1
- package/public/chunk-WBSZIAJG.js +0 -1
- package/public/chunk-XFT7CDBN.js +0 -1
- package/public/chunk-Z5XI7ADB.js +0 -1
- package/public/chunk-ZEHWCP2W.js +0 -1
- package/public/chunk-ZESBGGVH.js +0 -1
- package/public/main-UIFNF6J4.js +0 -1
- /package/public/assets/{monaco-0.21.3 → monaco}/LICENSE +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{a as H}from"./chunk-TUN7H57E.js";import{a as X}from"./chunk-OJMSJQ3B.js";import{a as G}from"./chunk-6TZDM7LH.js";import{a as Z}from"./chunk-CHSHRPAX.js";import"./chunk-KOU3OJVF.js";import{a as R}from"./chunk-4X2ASGAG.js";import{n as E}from"./chunk-CYT4MBBY.js";import"./chunk-5BXICZM2.js";import{a as j}from"./chunk-XBI2X6IL.js";import{b as A}from"./chunk-EIJ3XF67.js";import{a as q,c as N,d as V,e as W,f as D}from"./chunk-UOY7XUPC.js";import{b as T}from"./chunk-5UD7DCZJ.js";import{k as L,l as U,p as $}from"./chunk-D5B32ONS.js";import{Db as S,Gb as _,Ib as x,Kc as O,La as i,Pa as F,Vb as f,Wa as P,Wb as v,Xc as K,fc as h,g as Y,gc as M,h as I,ja as u,kb as m,lb as w,mb as y,mc as s,nc as d,oa as b,pa as C,rb as c,sb as n,tb as a,ub as p,w as z}from"./chunk-MVR4POOR.js";var Q=Y(Z(),1);var B=()=>["/"],te=o=>({"hamburger-icon-cross":o}),ne=o=>({expanded:o}),ie=()=>({exact:!0}),oe=()=>["/plugins"],re=()=>["/accessories"],ae=()=>["/logs"],se=()=>["/support"],de=()=>["/platform-tools/terminal"],le=()=>["/config"],pe=()=>["/settings"],ce=()=>["/power-options"];function me(o,k){if(o&1){let e=S();n(0,"div",10)(1,"div",20),s(2,"translate"),s(3,"translate"),_("click",function(){b(e);let t=x();return C(t.openUnderVoltageModal())})("keydown",function(t){b(e);let r=x();return C(r.handleKeydown(t))}),n(4,"div",12),p(5,"i",21),a(),n(6,"div",14),f(7),s(8,"translate"),a()()()}o&2&&(i(),m("aria-label",d(2,2,"rpi.throttled.undervoltage_title")+" - "+d(3,4,"rpi.throttled.undervoltage_description")),i(6),v(d(8,6,"rpi.throttled.undervoltage_title")))}function ue(o,k){if(o&1){let e=S();n(0,"div",10)(1,"div",15),s(2,"translate"),_("keydown",function(t){b(e);let r=x();return C(r.handleKeydown(t))}),n(3,"div",12),p(4,"i",22),a(),n(5,"div",14),f(6),s(7,"translate"),a()()()}o&2&&(i(),c("routerLink",h(8,de))("routerLinkActive","active"),m("aria-label",d(2,4,"menu.linux.label_terminal")),i(5),v(d(7,6,"menu.linux.label_terminal")))}function _e(o,k){if(o&1){let e=S();n(0,"div",10)(1,"div",15),s(2,"translate"),_("keydown",function(t){b(e);let r=x();return C(r.handleKeydown(t))}),n(3,"div",12),p(4,"i",23),a(),n(5,"div",14),f(6),s(7,"translate"),a()()()}o&2&&(i(),c("routerLink",h(8,le))("routerLinkActive","active"),m("aria-label",d(2,4,"menu.config_json_editor")),i(5),v(d(7,6,"menu.config_json_editor")))}function fe(o,k){if(o&1){let e=S();n(0,"div",10)(1,"div",15),s(2,"translate"),_("keydown",function(t){b(e);let r=x();return C(r.handleKeydown(t))}),n(3,"div",12),p(4,"i",24),a(),n(5,"div",14),f(6),s(7,"translate"),a()()()}o&2&&(i(),c("routerLink",h(8,pe))("routerLinkActive","active"),m("aria-label",d(2,4,"menu.label_settings")),i(5),v(d(7,6,"menu.label_settings")))}function ge(o,k){if(o&1){let e=S();n(0,"div",10)(1,"div",15),s(2,"translate"),_("keydown",function(t){b(e);let r=x();return C(r.handleKeydown(t))}),n(3,"div",12),p(4,"i",25),a(),n(5,"div",14),f(6),s(7,"translate"),a()()()}o&2&&(i(),c("routerLink",h(8,ce))("routerLinkActive","active"),m("aria-label",d(2,4,"menu.restart.title")),i(5),v(d(7,6,"menu.restart.title")))}function ve(o,k){if(o&1){let e=S();n(0,"div",10)(1,"div",20),s(2,"translate"),_("click",function(){b(e);let t=x();return C(t.reloadPage())})("keydown",function(t){b(e);let r=x();return C(r.handleKeydown(t))}),n(3,"div",12),p(4,"i",26),a(),n(5,"div",14),f(6),s(7,"translate"),a()()()}o&2&&(i(),m("aria-label",d(2,2,"menu.reload")),i(5),v(d(7,4,"menu.reload")))}function he(o,k){if(o&1){let e=S();n(0,"div",10)(1,"div",20),s(2,"translate"),_("click",function(){b(e);let t=x();return C(t.logout())})("keydown",function(t){b(e);let r=x();return C(r.handleKeydown(t))}),n(3,"div",12),p(4,"i",27),a(),n(5,"div",14),f(6),s(7,"translate"),a()()()}o&2&&(i(),m("aria-label",d(2,2,"menu.tooltip_logout")),i(5),v(d(7,4,"menu.tooltip_logout")))}var J=(()=>{class o{$auth=u(A);$settings=u(T);$modal=u(E);$notification=u(G);$renderer=u(F);$router=u(V);$translate=u(L);isExpanded=!1;formAuth=this.$settings.formAuth;isAdmin=this.$auth.user.admin;enableTerminalAccess=this.$settings.env.enableTerminalAccess;rPiCurrentlyUnderVoltage=!1;rPiWasUnderVoltage=!1;isMobile=!1;freezeMenu=!1;isPwa=H();constructor(){this.isMobile=window.innerWidth<768;let e;window.addEventListener("resize",()=>{clearTimeout(e),e=setTimeout(()=>{this.updateListeners()},500)}),this.$router.events.subscribe(l=>{l instanceof q&&(this.closeSidebar(),this.freezeMenu=!0,setTimeout(()=>{this.freezeMenu=!1},750))})}ngOnInit(){this.$notification.raspberryPiThrottled.subscribe(r=>{r["Under Voltage"]&&(this.rPiCurrentlyUnderVoltage=!0),r["Under-voltage has occurred"]&&(this.rPiWasUnderVoltage=!0)}),this.$notification.formAuthEnabled.subscribe(r=>{this.formAuth=r});let e=document.querySelector(".sidebar"),l=document.querySelector(".m-header"),t=document.querySelector(".content");this.isMobile?document.addEventListener("touchstart",r=>{if(t.contains(r.target)&&this.isExpanded){r.preventDefault(),this.toggleSidebar();return}!e.contains(r.target)&&!l.contains(r.target)&&this.isExpanded&&(r.preventDefault(),this.closeSidebar())},{passive:!1}):(this.updateListeners(),l.addEventListener("mouseenter",()=>this.openSidebar(),{passive:!1}),l.addEventListener("mouseleave",()=>this.closeSidebar(),{passive:!1}),document.addEventListener("click",r=>{e.contains(r.target)&&r.clientX>60&&this.closeSidebar()},{passive:!1})),this.updateContentStyles()}toggleSidebar(){this.freezeMenu||(this.isExpanded=!this.isExpanded,this.updateContentStyles())}openUnderVoltageModal(){let e=this.$modal.open(X,{size:"lg",backdrop:"static"});e.componentInstance.title=this.$translate.instant("rpi.throttled.undervoltage_title"),e.componentInstance.message=this.$translate.instant(this.rPiCurrentlyUnderVoltage?"rpi.throttled.currently_message":"rpi.throttled.previously_message"),e.componentInstance.ctaButtonLabel=this.$translate.instant("form.button_more_info"),e.componentInstance.faIconClass="fas fa-fw fa-bolt yellow-text",e.componentInstance.ctaButtonLink="https://pimylifeup.com/raspberry-pi-low-voltage-warning"}handleKeydown(e){if(e.key==="Enter"){let l=e.target;["menuitem","button"].includes(l.getAttribute("role"))&&l.click()}}reloadPage(){window.location.reload()}ngOnDestroy(){document.removeEventListener("touchstart",()=>{}),document.removeEventListener("click",()=>{})}logout(){this.$auth.logout()}openSidebar(){this.freezeMenu||(this.isExpanded=!0,this.updateContentStyles())}closeSidebar(){this.freezeMenu||(this.isExpanded=!1,this.updateContentStyles())}updateContentStyles(){let e=document.querySelector(".content");this.isExpanded?(this.$renderer.setStyle(e,"opacity","20%"),this.$renderer.setStyle(e,"pointer-events","none"),this.$renderer.setStyle(e,"overflow","hidden")):(this.$renderer.removeStyle(e,"opacity"),this.$renderer.removeStyle(e,"pointer-events"),this.$renderer.removeStyle(e,"overflow"))}updateListeners(){this.isMobile=window.innerWidth<768;let e=document.querySelector(".sidebar");e.removeAllListeners(),(this.isMobile||!this.isMobile&&this.$settings.menuMode!=="freeze")&&(e.addEventListener("mouseenter",()=>this.openSidebar(),{passive:!1}),e.addEventListener("mouseleave",()=>this.closeSidebar(),{passive:!1}))}static \u0275fac=function(l){return new(l||o)};static \u0275cmp=P({type:o,selectors:[["app-sidebar"]],inputs:{isExpanded:"isExpanded"},decls:68,vars:75,consts:[["tabindex","0","role","button",1,"m-header","text-end",3,"click","keydown"],[1,"me-2","d-block","d-lg-none",2,"font-size","0.9rem","color","#dddddd"],[3,"routerLink"],["ngSrc","assets/homebridge-logo.svg","alt","HB Logo","height","35","width","35",2,"height","35px","width","35px"],[1,"hb-logo-text-mobile"],[1,"hamburger-icon",3,"ngClass"],["role","navigation","id","sidebar",1,"sidebar",3,"ngClass"],["tabindex","0","role","button",1,"header",3,"click","keydown"],[1,"hb-logo-text"],[1,"link-wrapper"],[1,"link"],["role","menuitem","tabindex","0",1,"link-row",3,"keydown","routerLink","routerLinkActive","routerLinkActiveOptions"],[1,"icon"],[1,"fa","fa-fw","fa-house"],[1,"title"],["role","menuitem","tabindex","0",1,"link-row",3,"keydown","routerLink","routerLinkActive"],[1,"fa","fa-fw","fa-plug"],[1,"fa","fa-fw","fa-lightbulb"],[1,"fa","fa-fw","fa-wave-square"],[1,"fa","fa-fw","fa-question-circle-o"],["role","menuitem","tabindex","0",1,"link-row",3,"click","keydown"],[1,"fas","fa-fw","fa-bolt","fa-beat","yellow-text",2,"--fa-beat-scale","1.5"],[1,"fa","fa-fw","fa-terminal"],[1,"fa","fa-fw","fa-code"],[1,"fa","fa-fw","fa-cog"],[1,"fa","fa-fw","fa-power-off"],[1,"fa","fa-fw","fa-refresh"],[1,"fa","fa-fw","fa-right-from-bracket"]],template:function(l,t){l&1&&(n(0,"div",0),s(1,"translate"),_("click",function(){return t.toggleSidebar()})("keydown",function(g){return t.handleKeydown(g)}),p(2,"span",1),n(3,"a",2),s(4,"translate"),p(5,"img",3),n(6,"div",4),f(7,"Homebridge"),a()(),n(8,"div",5),p(9,"span")(10,"span")(11,"span")(12,"span"),a()(),n(13,"div",6)(14,"div",7),_("click",function(){return t.toggleSidebar()})("keydown",function(g){return t.handleKeydown(g)}),n(15,"a",2),s(16,"translate"),p(17,"img",3),n(18,"div",8),f(19,"Homebridge"),a()()(),n(20,"div",9)(21,"div",10)(22,"div",11),s(23,"translate"),_("keydown",function(g){return t.handleKeydown(g)}),n(24,"div",12),p(25,"i",13),a(),n(26,"div",14),f(27),s(28,"translate"),a()()(),w(29,me,9,8,"div",10),n(30,"div",10)(31,"div",15),s(32,"translate"),_("keydown",function(g){return t.handleKeydown(g)}),n(33,"div",12),p(34,"i",16),a(),n(35,"div",14),f(36),s(37,"translate"),a()()(),n(38,"div",10)(39,"div",15),s(40,"translate"),_("keydown",function(g){return t.handleKeydown(g)}),n(41,"div",12),p(42,"i",17),a(),n(43,"div",14),f(44),s(45,"translate"),a()()(),n(46,"div",10)(47,"div",15),s(48,"translate"),_("keydown",function(g){return t.handleKeydown(g)}),n(49,"div",12),p(50,"i",18),a(),n(51,"div",14),f(52),s(53,"translate"),a()()(),w(54,ue,8,9,"div",10),w(55,_e,8,9,"div",10),w(56,fe,8,9,"div",10),n(57,"div",10)(58,"div",15),s(59,"translate"),_("keydown",function(g){return t.handleKeydown(g)}),n(60,"div",12),p(61,"i",19),a(),n(62,"div",14),f(63),s(64,"translate"),a()()(),w(65,ge,8,9,"div",10),w(66,ve,8,6,"div",10),w(67,he,8,6,"div",10),a()()),l&2&&(m("aria-expanded",t.isExpanded?"true":"false")("aria-controls","sidebar")("aria-label",d(1,37,"menu.sidebar.aria_menu")),i(3),c("routerLink",h(63,B)),m("aria-label",d(4,39,"menu.label_status")),i(5),c("ngClass",M(64,te,t.isExpanded)),i(5),c("ngClass",M(66,ne,t.isExpanded)),i(2),c("routerLink",h(68,B)),m("aria-label",d(16,41,"menu.label_status")),i(7),c("routerLink",h(69,B))("routerLinkActive","active")("routerLinkActiveOptions",h(70,ie)),m("aria-label",d(23,43,"menu.label_status")),i(5),v(d(28,45,"menu.label_status")),i(2),y(t.rPiWasUnderVoltage||t.rPiCurrentlyUnderVoltage?29:-1),i(2),c("routerLink",h(71,oe))("routerLinkActive","active"),m("aria-label",d(32,47,"menu.label_plugins")),i(5),v(d(37,49,"menu.label_plugins")),i(3),c("routerLink",h(72,re))("routerLinkActive","active"),m("aria-label",d(40,51,"menu.label_accessories")),i(5),v(d(45,53,"menu.label_accessories")),i(3),c("routerLink",h(73,ae))("routerLinkActive","active"),m("aria-label",d(48,55,"menu.linux.label_logs")),i(5),v(d(53,57,"menu.linux.label_logs")),i(2),y(t.enableTerminalAccess&&t.isAdmin?54:-1),i(),y(t.isAdmin?55:-1),i(),y(t.isAdmin?56:-1),i(2),c("routerLink",h(74,se))("routerLinkActive","active"),m("aria-label",d(59,59,"support.title")),i(5),v(d(64,61,"support.title")),i(2),y(t.isAdmin?65:-1),i(),y(t.isPwa?66:-1),i(),y(t.formAuth?67:-1))},dependencies:[W,K,O,D,U],styles:[".m-header[_ngcontent-%COMP%]{position:fixed;top:0;left:0;width:100%;height:65px;z-index:510;display:flex;align-items:center;padding-left:3px;padding-right:3px}.m-header[_ngcontent-%COMP%]:hover{cursor:pointer}@media (min-width: 768px){.m-header[_ngcontent-%COMP%]{display:none}}.sidebar[_ngcontent-%COMP%]{position:fixed;left:0;top:0;height:100vh;transition:.3s;width:60px;z-index:500}.sidebar[_ngcontent-%COMP%] .header[_ngcontent-%COMP%]{display:flex;flex-direction:column;justify-content:center;padding:15px 10px 15px 11px;font-size:.85rem}.sidebar[_ngcontent-%COMP%] .header[_ngcontent-%COMP%]:hover{cursor:pointer}.sidebar[_ngcontent-%COMP%] .link-wrapper[_ngcontent-%COMP%]{overflow-y:auto;max-height:calc(100vh - 80px)!important}@media (max-width: 767px){.sidebar[_ngcontent-%COMP%] .link-wrapper[_ngcontent-%COMP%]{padding-bottom:60px}}.sidebar[_ngcontent-%COMP%] .link-wrapper[_ngcontent-%COMP%] .link[_ngcontent-%COMP%] .link-row[_ngcontent-%COMP%]{display:flex;align-items:center;padding:15px 10px;cursor:pointer;transition:.2s;font-size:17px}.sidebar[_ngcontent-%COMP%] .link-wrapper[_ngcontent-%COMP%] .link[_ngcontent-%COMP%] .link-row[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{flex:0 0 38px;display:flex;align-items:center;justify-content:center}.sidebar[_ngcontent-%COMP%] .link-wrapper[_ngcontent-%COMP%] .link[_ngcontent-%COMP%] .link-row[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{flex:1;transition:.3s;max-width:0;overflow:hidden;white-space:nowrap}@media (max-width: 767px){.sidebar[_ngcontent-%COMP%]{width:0}.sidebar[_ngcontent-%COMP%] .link-wrapper[_ngcontent-%COMP%]{display:none}}.sidebar.expanded[_ngcontent-%COMP%]{width:210px}@media (max-width: 767px){.sidebar.expanded[_ngcontent-%COMP%]{width:210px}.sidebar.expanded[_ngcontent-%COMP%] .link-wrapper[_ngcontent-%COMP%]{display:block}}.sidebar.expanded[_ngcontent-%COMP%] .link-wrapper[_ngcontent-%COMP%] .link[_ngcontent-%COMP%] .link-row[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{max-width:150px;padding-left:10px}.hamburger-icon[_ngcontent-%COMP%]{margin:-7px 0 0 25px}@media (min-width: 768px){.hb-logo-text[_ngcontent-%COMP%]{color:#fff;position:absolute;top:17px;font-size:22px;padding-left:3px}.sidebar.expanded[_ngcontent-%COMP%] .hb-logo-text[_ngcontent-%COMP%]{opacity:1;left:55px;transition:.3s}.sidebar[_ngcontent-%COMP%]:not(.expanded) .hb-logo-text[_ngcontent-%COMP%]{opacity:0;left:40px;transition:.3s}.hb-logo-text-mobile[_ngcontent-%COMP%], .hamburger-icon[_ngcontent-%COMP%]{display:none!important}}@media (max-width: 767px){.hb-logo-text[_ngcontent-%COMP%]{display:none!important}.hb-logo-text-mobile[_ngcontent-%COMP%]{color:#fff;position:absolute;top:17px;font-size:22px;padding-left:3px;opacity:1;left:55px}.hamburger-icon[_ngcontent-%COMP%]{position:absolute;right:10px;top:28px;width:30px;transform:rotate(0);transition:.5s ease-in-out;cursor:pointer}.hamburger-icon[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{display:block;position:absolute;height:2px;width:100%;background-color:#fff;border-radius:9px;opacity:1;left:0;transform:rotate(0);transition:.25s ease-in-out}.hamburger-icon[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(1){top:0}.hamburger-icon[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(2), .hamburger-icon[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(3){top:10px}.hamburger-icon[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(4){top:20px}.hamburger-icon-cross[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(1){top:10px;width:0;left:50%}.hamburger-icon-cross[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(2){transform:rotate(45deg)}.hamburger-icon-cross[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(3){transform:rotate(-45deg)}.hamburger-icon-cross[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(4){top:10px;width:0;left:50%}}"]})}return o})();var be=o=>({sidebarExpanded:o}),Re=(()=>{class o{$auth=u(A);$modal=u(E);$router=u(V);$settings=u(T);$translate=u(L);$ws=u(j);io;sidebarExpanded=!1;ngOnInit(){this.io=this.$ws.connectToNamespace("app"),this.io.socket.on("reconnect",()=>{this.$auth.checkToken()}),this.compareServerUiVersion()}compareServerUiVersion(){return I(this,null,function*(){if(this.$settings.settingsLoaded||(yield z(this.$settings.onSettingsLoaded)),!this.$router.url.endsWith("/restart")&&(0,Q.lt)(this.$settings.uiVersion,$.serverTarget)){console.log(`Server restart required. UI Version: ${$.serverTarget} - Server Version: ${this.$settings.uiVersion} `);let e=this.$modal.open(R,{size:"lg",backdrop:"static"});e.componentInstance.title=this.$translate.instant("platform.version.service_restart_required"),e.componentInstance.message=this.$translate.instant("platform.version.restart_required",{serverVersion:this.$settings.uiVersion,uiVersion:$.serverTarget}),e.componentInstance.confirmButtonLabel=this.$translate.instant("menu.tooltip_restart"),e.componentInstance.faIconClass="fas fa-power-off orange-text",e.result.then(()=>this.$router.navigate(["/restart"])).catch(()=>{})}})}static \u0275fac=function(l){return new(l||o)};static \u0275cmp=P({type:o,selectors:[["app-layout"]],decls:3,vars:4,consts:[[3,"isExpanded"],[1,"content","px-3","p-md-4",3,"ngClass"]],template:function(l,t){l&1&&(p(0,"app-sidebar",0),n(1,"div",1),p(2,"router-outlet"),a()),l&2&&(c("isExpanded",t.sidebarExpanded),i(),c("ngClass",M(2,be,t.sidebarExpanded)))},dependencies:[J,O,N],styles:[".content[_ngcontent-%COMP%]{margin-left:60px;transition:.3s;height:100%}@media (max-width: 767px){.content[_ngcontent-%COMP%]{margin-left:0;padding-top:85px!important}}@media (min-width: 768px){.content[_ngcontent-%COMP%]{height:100%}}a[_ngcontent-%COMP%]:hover{text-decoration:none!important}"]})}return o})();export{Re as LayoutComponent};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{a as z,b,c as k}from"./chunk-
|
|
1
|
+
import{a as z,b,c as k}from"./chunk-5R6IGZK6.js";import{a as u}from"./chunk-XBI2X6IL.js";import{q as f}from"./chunk-D5B32ONS.js";import{M as t,ea as p,g as n,h as c,ja as a,n as h}from"./chunk-MVR4POOR.js";var d=n(z(),1),l=n(b(),1),m=n(k(),1);var v=(()=>{class o{$ws=a(u);$api=a(f);io;fitAddon;webLinksAddon;resize;elementResize;dataDisposable=null;isInitializing=!1;hasUserTyped=!1;term;destroyTerminal(){this.dataDisposable&&(this.dataDisposable.dispose(),this.dataDisposable=null),this.io&&this.io.end(),this.term&&(this.term.dispose(),this.term=null),this.resize&&this.resize.complete(),this.elementResize&&this.elementResize.complete(),this.isInitializing=!1,this.hasUserTyped=!1}destroyPersistentSession(){this.destroyTerminal(),this.$api.post("/platform-tools/terminal/destroy-persistent-session",{}).subscribe({error:s=>console.error("Failed to destroy persistent session:",s)})}detachTerminal(){this.dataDisposable&&(this.dataDisposable.dispose(),this.dataDisposable=null),this.term&&this.term.dispose(),this.resize&&this.resize.complete(),this.elementResize&&this.elementResize.complete(),this.isInitializing=!1}hasActiveSession(){return this.io&&this.io.socket&&this.io.socket.connected}checkBackendPersistentSession(){return c(this,null,function*(){try{return(yield this.$api.get("/platform-tools/terminal/has-persistent-session").toPromise()).hasPersistentSession}catch(s){return console.error("Failed to check backend persistent session:",s),!1}})}hasUserTypedInSession(){return this.hasUserTyped}isTerminalReady(){return this.term&&!this.isInitializing}reconnectTerminal(s,e={},r){if(this.isInitializing)return!1;this.isInitializing=!0,this.elementResize=r,this.io&&this.io.socket&&this.io.socket.connected?(this.term=new m.Terminal(e),this.fitAddon=new d.FitAddon,this.webLinksAddon=new l.WebLinksAddon,setTimeout(()=>{this.term.loadAddon(this.fitAddon),this.term.loadAddon(this.webLinksAddon)}),this.resize=new h,this.term.open(s.nativeElement),setTimeout(()=>{this.fitAddon.activate(this.term),this.fitAddon.fit()}),this.io.socket.removeAllListeners("stdout"),this.io.socket.removeAllListeners("process-exit"),this.io.socket.on("stdout",i=>{this.term.write(i)}),this.io.socket.on("process-exit",()=>{this.startSession()}),this.dataDisposable&&this.dataDisposable.dispose(),this.dataDisposable=this.term.onData(i=>{this.hasUserTyped=!0,this.io.socket.emit("stdin",i)}),this.term.onResize(i=>{this.resize.next(i)}),this.resize.pipe(t(500)).subscribe(i=>{this.io.socket.emit("resize",i)}),this.elementResize&&this.elementResize.pipe(t(100)).subscribe({next:()=>{this.fitAddon.fit()}}),this.io.socket.emit("start-session",{cols:this.term.cols,rows:this.term.rows}),this.isInitializing=!1):this.startTerminal(s,e,r)}startTerminal(s,e={},r){return this.isInitializing?!1:(this.isInitializing=!0,this.elementResize=r,this.io=this.$ws.connectToNamespace("platform-tools/terminal"),this.term=new m.Terminal(e),setTimeout(()=>{this.term.loadAddon(this.fitAddon),this.term.loadAddon(this.webLinksAddon)}),this.fitAddon=new d.FitAddon,this.webLinksAddon=new l.WebLinksAddon,this.resize=new h,this.term.open(s.nativeElement),setTimeout(()=>{this.fitAddon.activate(this.term),this.fitAddon.fit()}),this.io.connected.pipe(t(200)).subscribe(()=>{this.startSession()}),this.io.socket.on("disconnect",()=>{this.term.write(`
|
|
2
2
|
\r
|
|
3
3
|
\rTerminal disconnected. Is the server running?
|
|
4
4
|
\r
|