homebridge-config-ui-x 5.10.1-beta.0 → 5.11.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 +20 -0
- package/README.md +3 -3
- package/dist/core/auth/auth.controller.d.ts +0 -4
- package/dist/core/config/config.interfaces.d.ts +0 -14
- package/dist/core/config/config.service.d.ts +0 -6
- package/dist/core/config/config.service.js +0 -8
- package/dist/core/config/config.service.js.map +1 -1
- package/dist/core/config/config.startup.js +17 -48
- package/dist/core/config/config.startup.js.map +1 -1
- package/dist/core/feature-flags/feature-flags.registry.js +0 -5
- package/dist/core/feature-flags/feature-flags.registry.js.map +1 -1
- package/dist/core/homebridge-ipc/homebridge-ipc.service.js +0 -1
- package/dist/core/homebridge-ipc/homebridge-ipc.service.js.map +1 -1
- package/dist/core/spa/spa.filter.d.ts +0 -3
- package/dist/core/spa/spa.filter.js +2 -22
- package/dist/core/spa/spa.filter.js.map +1 -1
- package/dist/globalDefaults.js +0 -3
- package/dist/globalDefaults.js.map +1 -1
- package/dist/main.js +4 -18
- package/dist/main.js.map +1 -1
- package/dist/modules/accessories/accessories.controller.d.ts +1 -1
- package/dist/modules/accessories/accessories.module.js +0 -2
- package/dist/modules/accessories/accessories.module.js.map +1 -1
- package/dist/modules/accessories/accessories.service.d.ts +3 -21
- package/dist/modules/accessories/accessories.service.js +17 -280
- package/dist/modules/accessories/accessories.service.js.map +1 -1
- package/dist/modules/child-bridges/child-bridges.interfaces.d.ts +0 -9
- package/dist/modules/config-editor/config-editor.controller.d.ts +0 -4
- package/dist/modules/config-editor/config-editor.controller.js +0 -64
- package/dist/modules/config-editor/config-editor.controller.js.map +1 -1
- package/dist/modules/config-editor/config-editor.service.d.ts +1 -6
- package/dist/modules/config-editor/config-editor.service.js +1 -45
- package/dist/modules/config-editor/config-editor.service.js.map +1 -1
- package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.js +1 -1
- package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.js.map +1 -1
- package/dist/modules/plugins/plugins.service.js +2 -16
- package/dist/modules/plugins/plugins.service.js.map +1 -1
- package/dist/modules/server/server.controller.d.ts +0 -50
- package/dist/modules/server/server.controller.js +2 -201
- package/dist/modules/server/server.controller.js.map +1 -1
- package/dist/modules/server/server.service.d.ts +0 -48
- package/dist/modules/server/server.service.js +14 -502
- package/dist/modules/server/server.service.js.map +1 -1
- package/dist/modules/status/status.gateway.d.ts +0 -2
- package/dist/modules/status/status.interfaces.d.ts +0 -11
- package/dist/modules/status/status.service.d.ts +1 -4
- package/dist/modules/status/status.service.js +2 -21
- package/dist/modules/status/status.service.js.map +1 -1
- package/package.json +9 -14
- package/public/3rdpartylicenses.txt +52 -52
- package/public/assets/monaco/min/vs/assets/editor.worker-Be8ye1pW.js +26 -0
- package/public/assets/monaco/min/vs/assets/json.worker-DKiEKt88.js +58 -0
- package/public/assets/monaco/min/vs/basic-languages/monaco.contribution.js +1 -0
- package/public/assets/monaco/min/vs/editor/editor.main.css +1 -8
- package/public/assets/monaco/min/vs/editor/editor.main.js +4 -797
- package/public/assets/monaco/min/vs/editor.api-CalNCsUg.js +903 -0
- package/public/assets/monaco/min/vs/jsonMode-DULH5oaX.js +7 -0
- package/public/assets/monaco/min/vs/language/json/monaco.contribution.js +1 -0
- package/public/assets/monaco/min/vs/loader.js +1364 -7
- package/public/assets/monaco/min/vs/lspLanguageFeatures-kM9O9rjY.js +4 -0
- package/public/assets/monaco/min/vs/monaco.contribution-D2OdxNBt.js +1 -0
- package/public/assets/monaco/min/vs/monaco.contribution-DO3azKX8.js +1 -0
- package/public/assets/monaco/min/vs/monaco.contribution-EcChJV6a.js +1 -0
- package/public/assets/monaco/min/vs/monaco.contribution-qLAYrEOP.js +1 -0
- package/public/assets/monaco/min/vs/nls.messages-loader.js +1 -0
- package/public/assets/monaco/min/vs/workers-DcJshg-q.js +1 -0
- package/public/{chunk-ZUYIWQNV.js → chunk-227QDXDT.js} +1 -1
- package/public/{chunk-WTSUWA7S.js → chunk-2AF3WD4J.js} +1 -1
- package/public/chunk-3WJDQQZL.js +4 -0
- package/public/{chunk-PYAOOAFS.js → chunk-4EKX3Z76.js} +1 -1
- package/public/{chunk-OJ37C3YB.js → chunk-53KE3XPC.js} +1 -1
- package/public/{chunk-HUESZB2Q.js → chunk-53KNB3HO.js} +1 -1
- package/public/chunk-5KQ5PHZY.js +1 -0
- package/public/chunk-5RSQ3VKF.js +1 -0
- package/public/{chunk-4C4OAXTJ.js → chunk-7G4CXD2O.js} +1 -1
- package/public/{chunk-JXLJRPJS.js → chunk-A6U6HYY3.js} +1 -1
- package/public/{chunk-BZZVKG3V.js → chunk-APMBCXUH.js} +1 -1
- package/public/{chunk-K3PIHMRS.js → chunk-AW3MY6EQ.js} +1 -1
- package/public/{chunk-7RBF5X4H.js → chunk-C46IEABJ.js} +1 -1
- package/public/{chunk-ICS7ZICH.js → chunk-DEAIAR5T.js} +1 -1
- package/public/chunk-DOEUREPX.js +1 -0
- package/public/{chunk-UCNN3X7L.js → chunk-E7RYLM5U.js} +1 -1
- package/public/chunk-FDR4RMWN.js +1 -0
- package/public/{chunk-RAWL26R7.js → chunk-FHGIL4GK.js} +1 -1
- package/public/chunk-FK57KJRX.js +1 -0
- package/public/chunk-FYY57EXZ.js +5 -0
- package/public/{chunk-UASZBKBZ.js → chunk-G6G4X3LL.js} +1 -1
- package/public/{chunk-VXWLFCOQ.js → chunk-G6VVYCFK.js} +1 -1
- package/public/chunk-G7S7J6DQ.js +1 -0
- package/public/chunk-GZU7FSYR.js +1 -0
- package/public/{chunk-LXMBIF6W.js → chunk-HGQJCJDV.js} +1 -1
- package/public/{chunk-P2DQFTI7.js → chunk-HIFUKISS.js} +1 -1
- package/public/chunk-IKDCH6SV.js +1 -0
- package/public/chunk-IWRD5BS2.js +1 -0
- package/public/{chunk-2PQS43HJ.js → chunk-J3GNTL4X.js} +1 -1
- package/public/chunk-KK5HST3W.js +1 -0
- package/public/{chunk-RHJH4NAL.js → chunk-KO7OKSD4.js} +1 -1
- package/public/{chunk-3OCGL4VG.js → chunk-KY3N6RBR.js} +1 -1
- package/public/{chunk-DSA6B4PW.js → chunk-L5OY5K3Z.js} +1 -1
- package/public/{chunk-GBXDLKOS.js → chunk-LQSXNQRY.js} +1 -1
- package/public/chunk-NIVC55QC.js +1 -0
- package/public/{chunk-EXSN7ASU.js → chunk-NLVJP2FS.js} +1 -1
- package/public/{chunk-RFNZZH35.js → chunk-NVYUCMZB.js} +1 -1
- package/public/{chunk-XCJH7PUD.js → chunk-NXM6LODP.js} +1 -1
- package/public/chunk-O5PYZ4PG.js +16 -0
- package/public/chunk-OQAG4MQB.js +1 -0
- package/public/{chunk-CYZAN4CD.js → chunk-OQLCIKGK.js} +1 -1
- package/public/chunk-OT3OZVNB.js +50 -0
- package/public/{chunk-YCRH56FY.js → chunk-PA2FLQHK.js} +1 -1
- package/public/chunk-PD4EFNCS.js +1 -0
- package/public/{chunk-MA74SXNP.js → chunk-PHY7W3BQ.js} +1 -1
- package/public/chunk-PKVKTMRP.js +19 -0
- package/public/{chunk-6AGYELAU.js → chunk-PPU3W2KO.js} +1 -1
- package/public/{chunk-5FFAA6YO.js → chunk-QIJ6OIDU.js} +1 -1
- package/public/chunk-REIZTIW4.js +2 -0
- package/public/chunk-RQOGW4OS.js +1 -0
- package/public/{chunk-UYFTDKBB.js → chunk-RS6FC3D3.js} +1 -1
- package/public/{chunk-2OV2S53D.js → chunk-S5CZBBHY.js} +1 -1
- package/public/{chunk-XKXSOWIU.js → chunk-SQSP77TI.js} +1 -1
- package/public/chunk-TAJT2XQ6.js +1 -0
- package/public/{chunk-4EQFXSOO.js → chunk-U73PAFR5.js} +1 -1
- package/public/chunk-U77IESKH.js +1 -0
- package/public/{chunk-WDFYORD4.js → chunk-UBWU2SEH.js} +1 -1
- package/public/{chunk-FFBQ244V.js → chunk-UGNUDJ75.js} +1 -1
- package/public/{chunk-4Y574DAY.js → chunk-UPB765LT.js} +1 -1
- package/public/{chunk-NP2OU6PT.js → chunk-W4NH2DJW.js} +1 -1
- package/public/{chunk-G4KDX4LF.js → chunk-W5BUXVY6.js} +5 -5
- package/public/chunk-WPMRJABD.js +1 -0
- package/public/{chunk-HXBITOYP.js → chunk-WYCRIQDH.js} +1 -1
- package/public/chunk-YRC6JINT.js +1 -0
- package/public/{chunk-IC3ZXYWP.js → chunk-ZC4YICGQ.js} +1 -1
- package/public/{chunk-6VUYO4JJ.js → chunk-ZUOL6YC4.js} +1 -1
- package/public/{chunk-ZMTA7EPT.js → chunk-ZWGNHKFK.js} +1 -1
- package/public/chunk-ZXKMLKZT.js +40 -0
- package/public/index.html +2 -2
- package/public/main-WC4DXWXF.js +1 -0
- package/public/{styles-WNHDEKE4.css → styles-7EFV5QBG.css} +1 -1
- package/scripts/extract-plugin-alias.js +2 -53
- package/TODO-MATTER.md +0 -15
- package/dist/core/spa/spa-html.service.d.ts +0 -5
- package/dist/core/spa/spa-html.service.js +0 -32
- package/dist/core/spa/spa-html.service.js.map +0 -1
- package/dist/core/ssl/ssl-cert-generator.service.d.ts +0 -15
- package/dist/core/ssl/ssl-cert-generator.service.js +0 -125
- package/dist/core/ssl/ssl-cert-generator.service.js.map +0 -1
- package/dist/modules/accessories/accessories.interfaces.d.ts +0 -94
- package/dist/modules/accessories/accessories.interfaces.js +0 -2
- package/dist/modules/accessories/accessories.interfaces.js.map +0 -1
- package/docs/ssl-upload-pr.md +0 -103
- package/public/assets/matter.svg +0 -8
- 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 +0 -31
- package/public/assets/monaco/min/vs/basic-languages/shell/shell.js +0 -10
- package/public/assets/monaco/min/vs/language/json/jsonMode.js +0 -19
- package/public/assets/monaco/min/vs/language/json/jsonWorker.js +0 -42
- package/public/chunk-2G3RYG7T.js +0 -4
- package/public/chunk-3MP4NIEN.js +0 -1
- package/public/chunk-3NF5LSRS.js +0 -1
- package/public/chunk-3OS2E7NT.js +0 -1
- package/public/chunk-3U4TTBN3.js +0 -1
- package/public/chunk-6Y44WRYZ.js +0 -5
- package/public/chunk-AEA5MWJV.js +0 -1
- package/public/chunk-AQ7KVNYY.js +0 -1
- package/public/chunk-BRVBWBXQ.js +0 -1
- package/public/chunk-DT7PMMCU.js +0 -1
- package/public/chunk-F5RNPJMD.js +0 -16
- package/public/chunk-ILKO7HAU.js +0 -68
- package/public/chunk-JL6T3BSX.js +0 -1
- package/public/chunk-K3NHKO4E.js +0 -1
- package/public/chunk-KKHQOHXA.js +0 -1
- package/public/chunk-LGUE3JKA.js +0 -1
- package/public/chunk-LNBMZDII.js +0 -1
- package/public/chunk-M3CXG4MR.js +0 -1
- package/public/chunk-N3WEHNOH.js +0 -1
- package/public/chunk-NRCW2EPZ.js +0 -50
- package/public/chunk-QRB4TY6A.js +0 -1
- package/public/chunk-QTWA67OK.js +0 -2
- package/public/chunk-W7GOVRP4.js +0 -1
- package/public/chunk-WL5GK7PI.js +0 -19
- package/public/chunk-ZTJZA6OC.js +0 -1
- package/public/chunk-ZUM4REDQ.js +0 -1
- package/public/main-ZIKN743D.js +0 -1
- package/public/media/matter-P563JGDL.svg +0 -8
package/public/chunk-QRB4TY6A.js
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{a as V}from"./chunk-NP2OU6PT.js";import{n as $,t as S}from"./chunk-G4KDX4LF.js";import"./chunk-ICS7ZICH.js";import"./chunk-N3WEHNOH.js";import{b as O}from"./chunk-JL6T3BSX.js";import{k,l as y,n as I,q as P}from"./chunk-LGUE3JKA.js";import{e as R}from"./chunk-XKXSOWIU.js";import{$b as T,Ib as h,Lb as m,Nb as b,Qa as i,_b as c,ac as d,db as w,na as p,qb as f,rb as v,sa as u,sc as a,ta as _,tc as s,wb as x,xb as r,yb as o,zb as C}from"./chunk-6Y44WRYZ.js";function E(e,g){if(e&1){let t=h();r(0,"p",5)(1,"button",6),m("click",function(){u(t);let n=b();return _(n.restartServer())}),c(2),a(3,"translate"),o()()}e&2&&(i(2),d(" ",s(3,1,"menu.linux.label_restart_server")," "))}function H(e,g){if(e&1){let t=h();r(0,"p",5)(1,"button",6),m("click",function(){u(t);let n=b();return _(n.shutdownServer())}),c(2),a(3,"translate"),o()()}e&2&&(i(2),d(" ",s(3,1,"menu.linux.label_shutdown_server")," "))}function D(e,g){if(e&1){let t=h();r(0,"p",5)(1,"button",6),m("click",function(){u(t);let n=b();return _(n.dockerRestartContainer())}),c(2),a(3,"translate"),o()()}e&2&&(i(2),d(" ",s(3,1,"menu.docker.restart_container")," "))}var K=(()=>{class e{$api=p(P);$modal=p($);$router=p(R);$settings=p(O);$toastr=p(I);$translate=p(k);canShutdownRestartHost=this.$settings.env.canShutdownRestartHost;runningInDocker=this.$settings.env.runningInDocker;ngOnInit(){let t=this.$translate.instant("menu.restart.title");this.$settings.setPageTitle(t)}closeRestartToast(){this.$settings.dismissRestartToast()}restartHomebridge(){this.closeRestartToast(),this.$router.navigate(["/restart"])}restartHomebridgeService(){this.closeRestartToast(),this.$api.put("/platform-tools/hb-service/set-full-service-restart-flag",{}).subscribe({next:()=>{this.$router.navigate(["/restart"])},error:t=>{console.error(t),this.$toastr.error(t.message,this.$translate.instant("toast.title_error"))}})}restartServer(){this.closeRestartToast(),this.$router.navigate(["/platform-tools/linux/restart-server"])}shutdownServer(){this.closeRestartToast();let t=this.$modal.open(V,{size:"lg",backdrop:"static"});t.componentInstance.title=this.$translate.instant("menu.linux.label_shutdown_server"),t.componentInstance.message=this.$translate.instant("menu.linux.label_shutdown_modal"),t.componentInstance.confirmButtonLabel=this.$translate.instant("form.button_continue"),t.componentInstance.faIconClass="fa fa-power-off primary-text",t.result.then(()=>{this.$router.navigate(["/platform-tools/linux/shutdown-server"])}).catch(()=>{})}dockerRestartContainer(){this.closeRestartToast(),this.$router.navigate(["/platform-tools/docker/restart-container"])}static \u0275fac=function(l){return new(l||e)};static \u0275cmp=w({type:e,selectors:[["ng-component"]],decls:19,vars:16,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,"fas","fa-power-off",2,"font-size","75px"],[1,"w-100","text-center","my-5"],["type","button",1,"btn","btn-primary","p-3","my-0",2,"width","85%",3,"click"],["type","button","container","body","triggers","hover",1,"btn","btn-primary","p-3","my-0",2,"width","85%",3,"click","openDelay","ngbTooltip"]],template:function(l,n){l&1&&(r(0,"div",0)(1,"h3",1),c(2),a(3,"translate"),o()(),r(4,"div",2)(5,"div",3),C(6,"i",4),o(),r(7,"p",5)(8,"button",6),m("click",function(){return n.restartHomebridge()}),c(9),a(10,"translate"),o()(),r(11,"p",5)(12,"button",7),a(13,"translate"),m("click",function(){return n.restartHomebridgeService()}),c(14),a(15,"translate"),o()(),f(16,E,4,3,"p",5),f(17,H,4,3,"p",5),f(18,D,4,3,"p",5),o()),l&2&&(i(2),T(s(3,8,"menu.restart.title")),i(7),d(" ",s(10,10,"menu.hbrestart.confirm_hb")," "),i(3),x("openDelay",150)("ngbTooltip",s(13,12,"reset.force_restart_hb_help_text")),i(2),d(" ",s(15,14,"menu.hbrestart.confirm_ui")," "),i(2),v(n.canShutdownRestartHost?16:-1),i(),v(n.canShutdownRestartHost?17:-1),i(),v(n.runningInDocker?18:-1))},dependencies:[S,y],encapsulation:2})}return e})();export{K as PowerOptionsComponent};
|
package/public/chunk-QTWA67OK.js
DELETED
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{C as Y,D as Z,c as G,d as k,e as j,f as D,g as K,j as $,m as A,q as J,r as Q,y as X}from"./chunk-ICS7ZICH.js";import{a as ae}from"./chunk-WDFYORD4.js";import{b as oe}from"./chunk-LXMBIF6W.js";import{b as re}from"./chunk-JL6T3BSX.js";import{k as ee,l as te,n as ie,p as U,q as ne}from"./chunk-LGUE3JKA.js";import"./chunk-XKXSOWIU.js";import{$b as _,Ib as I,La as W,Lb as x,Nb as g,Qa as n,Rc as H,Uc as N,Xb as O,_b as l,ac as f,db as V,dd as R,h as S,lc as L,mc as B,na as w,nc as E,pb as M,pd as q,qb as z,rb as T,sa as C,sc as a,ta as b,tc as s,wb as m,x as h,xb as o,yb as r,zb as u}from"./chunk-6Y44WRYZ.js";var pe=t=>({background:t}),de=t=>({anim:t}),ce=t=>({"progress-bar-animated":t}),me=()=>["restoring","restarting","restore-complete"],P=(t,d)=>({"is-valid":t,"is-invalid":d});function ue(t,d){if(t&1){let e=I();o(0,"div",5)(1,"h4",6),l(2),a(3,"translate"),r(),u(4,"div",7),a(5,"translate"),o(6,"button",8),x("click",function(){C(e);let i=g();return b(i.onClickGettingStarted())}),l(7),a(8,"translate"),r(),o(9,"a",9),x("click",function(){C(e);let i=g();return b(i.onClickRestoreBackup())}),l(10),a(11,"translate"),r()()}t&2&&(n(2),_(s(3,4,"setup.welcome_to_homebridge")),n(2),m("innerHTML",s(5,6,"setup.intro"),W),n(3),f(" ",s(8,8,"setup.button_get_started")," "),n(3),_(s(11,10,"setup_wizard_restore")))}function ge(t,d){if(t&1){let e=I();o(0,"div",5)(1,"h4",6),l(2),a(3,"translate"),r(),o(4,"div",10),l(5),a(6,"translate"),r(),o(7,"div",11)(8,"form",12),x("ngSubmit",function(){C(e);let i=g();return b(i.createFirstUser())}),o(9,"div",13)(10,"span",14),u(11,"i",15),r(),u(12,"input",16),a(13,"translate"),r(),o(14,"div",13)(15,"span",14),u(16,"i",17),r(),u(17,"input",18),a(18,"translate"),r(),o(19,"div",13)(20,"span",14),u(21,"i",17),r(),u(22,"input",19),a(23,"translate"),r(),o(24,"div",20)(25,"button",21),x("click",function(){C(e);let i=g();return b(i.onClickCancelRestore())}),l(26),a(27,"translate"),r(),o(28,"button",22),l(29),a(30,"translate"),r()()()()()}if(t&2){let e=g();n(2),_(s(3,16,"setup.create_account")),n(3),_(s(6,18,"setup_wizard_create_info")),n(3),m("formGroup",e.createUserForm),n(4),m("readonly",e.loading)("ngClass",E(30,P,e.createUserForm.controls.username.dirty&&e.createUserForm.controls.username.valid,e.createUserForm.controls.username.dirty&&e.createUserForm.controls.username.invalid))("placeholder",s(13,20,"users.label_username")),n(5),m("readonly",e.loading)("ngClass",E(33,P,e.createUserForm.controls.password.dirty&&e.createUserForm.controls.password.valid,e.createUserForm.controls.password.dirty&&e.createUserForm.controls.password.errors))("placeholder",s(18,22,"users.label_password")),n(5),m("readonly",e.loading)("ngClass",E(36,P,e.createUserForm.controls.passwordConfirm.dirty&&e.createUserForm.controls.passwordConfirm.valid,e.createUserForm.controls.passwordConfirm.dirty&&e.createUserForm.controls.passwordConfirm.errors))("placeholder",s(23,24,"users.label_confirm_password")),n(3),m("disabled",e.restoreUploading),n(),f(" ",s(27,26,"form.button_back")," "),n(2),m("disabled",e.createUserForm.invalid||e.loading),n(),f(" ",s(30,28,"form.button_continue")," ")}}function _e(t,d){t&1&&(u(0,"i",25),l(1),a(2,"translate")),t&2&&(n(),f(" ",s(2,1,"backup.label_uploading")," "))}function fe(t,d){t&1&&(l(0),a(1,"translate")),t&2&&f(" ",s(1,1,"form.button_continue")," ")}function he(t,d){if(t&1){let e=I();o(0,"div",5)(1,"h4",6),l(2),a(3,"translate"),r(),o(4,"div",10),l(5),a(6,"translate"),r(),o(7,"input",23),x("change",function(i){C(e);let F=g();return b(F.handleRestoreFileInput(i.target.files))}),r(),o(8,"div",20)(9,"button",21),x("click",function(){C(e);let i=g();return b(i.onClickCancelRestore())}),l(10),a(11,"translate"),r(),o(12,"button",24),x("click",function(){C(e);let i=g();return b(i.onRestoreBackupClick())}),z(13,_e,3,3)(14,fe,2,3),r()()()}if(t&2){let e=g();n(2),_(s(3,6,"setup_wizard_restore")),n(3),_(s(6,8,"backup.restore_help_one")),n(4),m("disabled",e.restoreUploading),n(),f(" ",s(11,10,"form.button_back")," "),n(2),m("disabled",e.restoreUploading||!e.selectedFile),n(),T(e.restoreUploading?13:14)}}function we(t,d){t&1&&(l(0),a(1,"translate")),t&2&&f(" ",s(1,1,"setup_wizard_restoring")," ")}function Ce(t,d){t&1&&(l(0),a(1,"translate")),t&2&&f(" ",s(1,1,"setup_wizard_starting")," ")}function be(t,d){t&1&&(l(0),a(1,"translate")),t&2&&f(" ",s(1,1,"setup_wizard_complete")," ")}function xe(t,d){t&1&&(o(0,"a",27),l(1),a(2,"translate"),r()),t&2&&(n(),_(s(2,1,"form.button_continue")))}function ve(t,d){if(t&1&&(o(0,"div",5)(1,"h4",6),z(2,we,2,3)(3,Ce,2,3)(4,be,2,3),r(),u(5,"div",26),z(6,xe,3,3,"a",27),r()),t&2){let e=g();n(2),T(e.step==="restoring"?2:e.step==="restarting"?3:e.step==="restore-complete"?4:-1),n(4),T(e.step==="restore-complete"?6:-1)}}function ye(t,d){t&1&&(o(0,"div",5)(1,"h4",28),l(2),a(3,"translate"),r(),o(4,"div",10),l(5),a(6,"translate"),r(),o(7,"a",29),l(8),a(9,"translate"),r()()),t&2&&(n(2),_(s(3,3,"setup_wizard_complete_title")),n(3),_(s(6,5,"setup_wizard_completed")),n(3),_(s(9,7,"form.button_continue")))}var He=(()=>{class t{$api=w(ne);$auth=w(oe);$settings=w(re);$title=w(q);$toastr=w(ie);$translate=w(ee);$ws=w(ae);io;step="welcome";backgroundStyle;progress=1;restoreInProgress=!1;restoreStarted=!1;restoreFailed=!1;loading=!1;selectedFile;restoreUploading=!1;createUserForm=new K({username:new $("",[k.required]),password:new $("",[k.compose([k.required,k.minLength(4)])]),passwordConfirm:new $("",[k.required])},this.matchPassword);ngOnInit(){return S(this,null,function*(){this.$title.setTitle(this.$translate.instant("setup_wizard_page_title")),yield this.setBackground()})}onClickGettingStarted(){this.step="create-account",this.progress=50}onClickRestoreBackup(){this.step="restore-backup",this.progress=20}onClickCancelRestore(){this.selectedFile=null,this.step="welcome",this.progress=1}createFirstUser(){return S(this,null,function*(){this.loading=!0,this.progress=75;let e=this.createUserForm.getRawValue();e.name=e.username;try{yield h(this.$api.post("/setup-wizard/create-first-user",e)),this.$settings.env.setupWizardComplete=!0,this.progress=100,this.loading=!1,yield this.$auth.login({username:e.username,password:e.password}),this.step="setup-complete"}catch(p){this.loading=!1,this.progress=50,console.error(p),this.$toastr.error(p.message,this.$translate.instant("toast.title_error"))}})}handleRestoreFileInput(e){e.length?(this.selectedFile=e[0],this.progress=40):(delete this.selectedFile,this.progress=20)}onRestoreBackupClick(){return S(this,null,function*(){this.restoreUploading=!0,this.step="restoring",this.progress=60;try{let e=yield h(this.$api.get("/setup-wizard/get-setup-wizard-token"));window.localStorage.setItem(U.jwt.tokenKey,e.access_token),this.$auth.token=e.access_token,this.progress=65;let p=new FormData;p.append("restoreArchive",this.selectedFile,this.selectedFile.name),yield h(this.$api.post("/backup/restore",p)),this.progress=70,this.io=this.$ws.connectToNamespace("backup");let i=document.getElementById("output");this.io.socket.on("stdout",c=>{c.split(`
|
|
2
|
-
\r`).forEach(v=>{if(v&&!/^[⠇⠏⠋⠙⠹⠸]+$/.test(v)){let y=document.createElement("div"),le=/\x1B\[(\d{1,2}(;\d{1,2})?)?[mGK]/g;y.innerHTML=v.replace(le,""),v.includes("[0;31m")?y.classList.add("red-text"):v.includes("[0;32m")?y.classList.add("green-text"):v.includes("[0;33m")?y.classList.add("orange-text"):v.includes("[0;36m")&&y.classList.add("cyan-text"),i.appendChild(y),i.scrollTop=i.scrollHeight}})}),this.restoreStarted=!0,this.restoreInProgress=!0,this.progress=75,yield h(this.io.request("do-restore")),this.progress=80,this.restoreInProgress=!1,yield h(this.$api.put("/backup/restart",{})),this.step="restarting",this.progress=85,window.localStorage.removeItem(U.jwt.tokenKey),this.$auth.token=null;let F=document.createElement("div");F.classList.add("orange-text"),F.innerHTML="Starting Homebridge, please wait...",i.appendChild(F),i.scrollTop=i.scrollHeight,yield new Promise(c=>setTimeout(c,3e3)),this.progress=88,yield new Promise(c=>setTimeout(c,3e3)),this.progress=91,yield new Promise(c=>setTimeout(c,3e3)),this.progress=94,yield new Promise(c=>setTimeout(c,3e3)),this.progress=97,yield new Promise(c=>setTimeout(c,3e3)),this.progress=99;let se=setInterval(()=>S(this,null,function*(){try{yield h(this.$api.get("/auth/settings")),clearInterval(se),this.progress=100,this.restoreUploading=!1,this.step="restore-complete"}catch{}}),1e3)}catch(e){console.error(e),this.restoreUploading=!1,this.restoreFailed=!0,this.progress=20,this.step="restore-backup",this.$toastr.error(e.message,this.$translate.instant("toast.title_error"))}finally{this.io&&this.io.end()}})}setBackground(){return S(this,null,function*(){if(this.$settings.settingsLoaded||(yield h(this.$settings.onSettingsLoaded)),this.$settings.env.customWallpaperHash){let e=`${U.api.base}/auth/wallpaper/${this.$settings.env.customWallpaperHash}`;this.backgroundStyle=`url('${e}') center/cover`}})}matchPassword(e){let p=e.get("password").value,i=e.get("passwordConfirm").value;if(p!==i)e.get("passwordConfirm").setErrors({matchPassword:!0});else return null}static \u0275fac=function(p){return new(p||t)};static \u0275cmp=V({type:t,selectors:[["ng-component"]],decls:10,vars:14,consts:[[1,"setup-container","gradient","d-flex","align-items-start","justify-content-center",3,"ngStyle","ngClass"],[1,"w-100","setup-card","d-flex","py-4","flex-column"],["ngSrc","assets/homebridge-color-round.svg","alt","Homebridge Logo","height","100","width","100","priority","true",1,"homebridge-logo","mx-auto","my-3"],[1,"progress","w-100","my-4"],["role","progressbar","aria-valuemin","0","aria-valuemax","100",1,"progress-bar","progress-bar-striped","bg-success",3,"ngClass"],[1,"w-100","d-flex","flex-column","align-items-center","mb-2"],[1,"mb-3","text-center"],[1,"mb-4","small","grey-text","text-center",3,"innerHTML"],["type","button",1,"btn","btn-lg","btn-primary","mb-4",3,"click"],["href","javascript:void(0)",1,"grey-text",3,"click"],[1,"mb-4","small","grey-text","text-center"],[1,"w-100"],["novalidate","",3,"ngSubmit","formGroup"],[1,"input-group","mb-4"],[1,"input-group-text","custom-input"],[1,"fas","fa-user","primary-text","fa-lg"],["formControlName","username","type","text","id","form-username","autocomplete","username","autocapitalize","none","tabindex","1","required","",1,"form-control","custom-input",3,"readonly","ngClass","placeholder"],[1,"fas","fa-lock","primary-text","fa-lg"],["formControlName","password","type","password","id","form-pass","autocomplete","new-password","tabindex","2","required","",1,"form-control","custom-input",3,"readonly","ngClass","placeholder"],["formControlName","passwordConfirm","type","password","id","form-pass-confirm","autocomplete","new-password","tabindex","2","required","",1,"form-control","custom-input",3,"readonly","ngClass","placeholder"],[1,"mt-3","w-100","d-flex","justify-content-between"],["type","button",1,"btn","btn-elegant","ms-0",3,"click","disabled"],["type","submit",1,"btn","btn-primary",3,"disabled"],["type","file","id","restoreFileUpload","accept","application/gzip, .gz",1,"form-control","custom-input","mb-3",3,"change"],["type","button",1,"btn","btn-primary","me-0",3,"click","disabled"],[1,"fas","fa-spinner","fa-pulse"],["id","output",1,"font-monospace","small","alert","alert-info","w-100","text-start","mt-1","mb-0"],["href","/login",1,"btn","btn-lg","btn-primary","mt-4"],[1,"mb-3"],["href","/",1,"btn","btn-lg","btn-primary"]],template:function(p,i){p&1&&(o(0,"div",0)(1,"div",1),u(2,"img",2),o(3,"div",3),u(4,"div",4),r(),z(5,ue,12,12,"div",5)(6,ge,31,39,"div",5)(7,he,15,12,"div",5)(8,ve,7,2,"div",5)(9,ye,10,9,"div",5),r()()),p&2&&(m("ngStyle",B(7,pe,i.backgroundStyle))("ngClass",B(9,de,!i.backgroundStyle)),n(4),O("width",i.progress+"%"),m("ngClass",B(11,ce,i.loading||i.restoreUploading)),M("aria-valuenow",i.progress),n(),T(i.step==="welcome"?5:i.step==="create-account"?6:i.step==="restore-backup"?7:L(13,me).includes(i.step)?8:i.step==="setup-complete"?9:-1))},dependencies:[H,R,Y,A,G,j,D,X,Z,J,Q,N,te],styles:["body{overflow:scroll!important} body.dark-mode .setup-card{background-color:#2b2b2b;color:#fff}.setup-container[_ngcontent-%COMP%]{z-index:-1;padding-top:2em;padding-bottom:2em;min-height:100%;background-size:300% 300%}.anim[_ngcontent-%COMP%]{-webkit-animation:_ngcontent-%COMP%_gradient 20s ease infinite;-moz-animation:gradient 20s ease infinite;-o-animation:gradient 20s ease infinite;animation:_ngcontent-%COMP%_gradient 20s ease infinite}@keyframes _ngcontent-%COMP%_gradient{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}.setup-card[_ngcontent-%COMP%]{max-width:550px;border-radius:1rem;padding-right:25px;padding-left:25px;background-color:#ffffffe6}.setup-card[_ngcontent-%COMP%] .form-control[_ngcontent-%COMP%]:focus{background-color:inherit!important}@media screen and (max-width: 575px){.setup-card[_ngcontent-%COMP%]{margin-left:1em;margin-right:1em}}.homebridge-logo[_ngcontent-%COMP%]{margin-bottom:10px}.progress[_ngcontent-%COMP%]{background-color:#ddd}#output[_ngcontent-%COMP%]{height:200px;overflow-y:scroll;white-space:pre-wrap}"]})}return t})();export{He as SetupWizardComponent};
|