homebridge-config-ui-x
Version:
A web based management, configuration and control platform for Homebridge.
2 lines (1 loc) • 3.51 kB
JavaScript
import{a as E}from"./chunk-HLPH5YTD.js";import{d as w}from"./chunk-ZS7TMHAN.js";import{b}from"./chunk-REE7MX3I.js";import{h as k,k as S}from"./chunk-LNTR2LBX.js";import{a as $,b as T}from"./chunk-2WNK6SOS.js";import{Ac as c,Bc as p,Cc as C,Kb as g,Pb as m,Ub as r,Vb as n,Wb as f,cb as v,cc as h,gb as i,ma as a,mc as o,nc as s,tb as _,wc as y,zb as x}from"./chunk-NVNBNEFN.js";var I=t=>({command:t});function R(t,u){t&1&&(r(0,"p",7),o(1),c(2,"translate"),n()),t&2&&(i(),s(p(2,1,"restart.please_wait_while_server_restarts")))}function D(t,u){if(t&1&&(r(0,"div",8),o(1),n()),t&2){let e=h();i(),s(e.error)}}function B(t,u){t&1&&(r(0,"div",9)(1,"div",11),f(2,"i",12),n()())}function M(t,u){if(t&1&&(r(0,"div",10)(1,"p"),o(2),c(3,"translate"),n(),f(4,"p",13),c(5,"translate"),n()),t&2){let e=h();i(2),s(p(3,2,"platform.docker.server_long_time")),i(2),g("innerHTML",C(5,4,"platform.docker.run_with_restart",y(7,I,e.command)),v)}}var N=(()=>{class t{$api=a(S);$router=a(w);$settings=a(b);$toastr=a(k);$translate=a($);$ws=a(E);checkTimeout;checkDelay;resp={};timeout=!1;error=!1;command='<span class="font-monospace">--restart=always</span>';io;constructor(){}ngOnInit(){this.io=this.$ws.connectToNamespace("status"),this.io.connected.subscribe(()=>{this.io.socket.emit("monitor-server-status"),this.$settings.getAppSettings().catch(()=>{})}),this.$api.put("/platform-tools/docker/restart-container",{}).subscribe({next:e=>{this.resp=e,this.checkIfServerUp()},error:e=>{this.error=this.$translate.instant("restart.toast_server_restart_error"),console.error(e),this.$toastr.error(this.$translate.instant("restart.toast_server_restart_error"),this.$translate.instant("toast.title_error"))}})}checkIfServerUp(){this.checkDelay=setTimeout(()=>{this.io.socket.on("homebridge-status",e=>{(e.status==="up"||e.status==="pending")&&(this.$toastr.success(this.$translate.instant("platform.docker.container_restarted"),this.$translate.instant("toast.title_success")),this.$router.navigate(["/"]))})},1e4),this.checkTimeout=setTimeout(()=>{this.$toastr.warning(this.$translate.instant("restart.toast_server_restart_timeout"),this.$translate.instant("toast.title_warning"),{timeOut:1e4}),this.timeout=!0},6e4)}ngOnDestroy(){this.io.end(),clearTimeout(this.checkDelay),clearTimeout(this.checkTimeout)}static \u0275fac=function(l){return new(l||t)};static \u0275cmp=_({type:t,selectors:[["ng-component"]],decls:15,vars:10,consts:[[1,"d-flex","justify-content-between"],[1,"primary-text","m-0"],[1,"my-4","align-items-center",2,"max-width","1000px","margin","auto"],[1,"w-100","text-center","primary-text","mb-5"],[1,"fab","fa-fw","fa-docker",2,"font-size","75px"],[1,"text-center"],[1,"primary-text","mb-4"],[1,"grey-text"],[1,"alert","alert-error","my-4"],[1,"justify-content-center","my-4"],[1,"alert","alert-warning","my-4"],[1,"restart-progress-box","primary-text"],[1,"fas","fa-fw","fa-spinner","fa-spin"],[1,"grey-text","mb-0",3,"innerHTML"]],template:function(l,d){l&1&&(r(0,"div",0)(1,"h3",1),o(2),c(3,"translate"),n()(),r(4,"div",2)(5,"div",3),f(6,"i",4),n(),r(7,"div",5)(8,"h4",6),o(9),c(10,"translate"),n(),x(11,R,3,3,"p",7)(12,D,2,1,"div",8)(13,B,3,0,"div",9)(14,M,6,9,"div",10),n()()),l&2&&(i(2),s(p(3,6,"menu.restart.title")),i(7),s(p(10,8,"platform.docker.title_restarting")),i(2),m(d.error?-1:11),i(),m(d.error?12:-1),i(),m(d.error?-1:13),i(),m(d.timeout?14:-1))},dependencies:[T],styles:[".restart-progress-box[_ngcontent-%COMP%]{font-size:22px;font-weight:300;margin-top:15px}"]})}return t})();export{N as a};