UNPKG

homebridge-config-ui-x

Version:

A web based management, configuration and control platform for Homebridge.

1 lines 3.51 kB
import{a as E}from"./chunk-D39XL-zh.js";import{$ as Le,Fr as se,Jr as ve,Kr as v3,M as Fe,Un as g,Vt as U3,Y as Je,_t as Pn,dt as Nf,fn as Z,gt as Pe,hr as nc,jt as S_,kn as br,pt as Ot,u as An,ui as z0,ut as N_,vt as Py,wr as q$1}from"./chunk-D96TCRAL.js";import{l as le}from"./chunk-DZYp0NQB.js";import{n as zt}from"./chunk-CdJ3i4Aq.js";import"./main-E3N63CH7.js";import{t as ds}from"./chunk-CiY-LsUw.js";function A(t,x){if(t&1&&(Pe(0,`div`,7),Ot(1),Je()),t&2){let i=ve();se(),Py(i.error())}}function I(t,x){t&1&&(Pe(0,`p`,9),Ot(1),S_(2,`translate`),Je(),Pe(3,`div`,10)(4,`div`,11),br(5,`i`,12),Je()()),t&2&&(se(),Py(N_(2,1,`restart.please_wait_while_server_restarts`)))}function T(t,x){t&1&&(Pe(0,`div`,8),Ot(1),S_(2,`translate`),Je()),t&2&&(se(),Py(N_(2,1,`platform.linux.long_time`)))}var q=(()=>{class t{$api=g(U3);$router=g(le);$settings=g(zt);$toastr=g(z0);$translate=g(Nf);$ws=g(ds);destroyRef=g(Z);io;statusCheckActive=q$1(!1);statusHandler=i=>{this.statusCheckActive()&&(i.status===`ok`||i.status===`pending`)&&(this.statusCheckActive.set(!1),this.$toastr.success(this.$translate.instant(`platform.linux.server_restarted`),this.$translate.instant(`toast.title_success`)),this.$router.navigate([`/`]))};timeout=q$1(!1);error=q$1(!1);ngOnInit(){this.initialize()}initialize(){return E(this,null,function*(){this.io=this.$ws.connectToNamespace(`status`),this.io.connected.pipe(An(this.destroyRef)).subscribe(()=>{this.io.socket.emit(`monitor-server-status`),this.$settings.getAppSettings().catch(()=>{})}),this.io.socket.on(`homebridge-status`,this.statusHandler);try{yield this.$api.put(`/platform-tools/linux/restart-host`,{}),this.checkIfServerUp()}catch(i){console.error(i),this.error.set(this.$translate.instant(`platform.linux.server_restart_error`)),this.$toastr.error(this.$translate.instant(`platform.linux.server_restart_error`),this.$translate.instant(`toast.title_error`))}})}ngOnDestroy(){this.io.socket.off(`homebridge-status`,this.statusHandler),this.statusCheckActive.set(!1),this.io.end?.()}checkIfServerUp(){Pn(3e4).pipe(An(this.destroyRef)).subscribe(()=>{this.statusCheckActive.set(!0),this.io.socket.emit(`monitor-server-status`)}),Pn(12e4).pipe(An(this.destroyRef)).subscribe(()=>{this.$toastr.warning(this.$translate.instant(`platform.linux.server_taking_long_time`),this.$translate.instant(`toast.title_warning`),{timeOut:1e4}),this.timeout.set(!0)})}static ɵfac=function(c){return new(c||t)};static ɵcmp=nc({type:t,selectors:[[`app-restart-linux`]],decls:14,vars:8,consts:[[1,`d-flex`,`justify-content-between`],[1,`primary-text`,`m-0`],[1,`my-4`,`align-items-center`,`container-narrow`],[1,`w-100`,`text-center`,`primary-text`,`mb-5`],[1,`fas`,`fa-power-off`,`icon-xl`],[1,`text-center`],[1,`primary-text`,`mb-4`],[1,`alert`,`alert-error`,`my-4`],[1,`alert`,`alert-warning`,`my-4`],[1,`grey-text`],[1,`justify-content-center`,`my-4`],[1,`restart-progress-box`,`primary-text`],[1,`fas`,`fa-circle-notch`,`fa-spin`]],template:function(c,g){c&1&&(Pe(0,`div`,0)(1,`h3`,1),Ot(2),S_(3,`translate`),Je()(),Pe(4,`div`,2)(5,`div`,3),br(6,`i`,4),Je(),Pe(7,`div`,5)(8,`h4`,6),Ot(9),S_(10,`translate`),Je(),Fe(11,A,2,1,`div`,7)(12,I,6,3),Fe(13,T,3,3,`div`,8),Je()()),c&2&&(se(2),Py(N_(3,4,`menu.restart.title`)),se(7),Py(N_(10,6,`platform.linux.restarting_server`)),se(2),Le(g.error()?11:12),se(2),Le(g.timeout()?13:-1))},dependencies:[v3],styles:[`.restart-progress-box[_ngcontent-%COMP%]{font-size:22px;font-weight:300;margin-top:15px}`]})}return t})();export{q as RestartLinuxComponent};