homebridge-config-ui-x 5.2.1-beta.9 → 5.3.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.
Files changed (97) hide show
  1. package/CHANGELOG.md +5 -9
  2. package/config.schema.json +0 -32
  3. package/dist/bin/standalone.d.ts +2 -0
  4. package/dist/bin/standalone.js +58 -0
  5. package/dist/bin/standalone.js.map +1 -0
  6. package/dist/core/auth/auth.controller.d.ts +0 -5
  7. package/dist/core/config/config.service.d.ts +0 -10
  8. package/dist/core/config/config.service.js +0 -5
  9. package/dist/core/config/config.service.js.map +1 -1
  10. package/dist/globalDefaults.js +0 -3
  11. package/dist/globalDefaults.js.map +1 -1
  12. package/dist/modules/config-editor/config-editor.controller.d.ts +0 -1
  13. package/dist/modules/config-editor/config-editor.controller.js +0 -13
  14. package/dist/modules/config-editor/config-editor.controller.js.map +1 -1
  15. package/dist/modules/config-editor/config-editor.service.d.ts +0 -1
  16. package/dist/modules/config-editor/config-editor.service.js +0 -7
  17. package/dist/modules/config-editor/config-editor.service.js.map +1 -1
  18. package/dist/modules/platform-tools/terminal/terminal.gateway.d.ts +0 -2
  19. package/dist/modules/platform-tools/terminal/terminal.gateway.js +0 -18
  20. package/dist/modules/platform-tools/terminal/terminal.gateway.js.map +1 -1
  21. package/dist/modules/platform-tools/terminal/terminal.module.js +0 -4
  22. package/dist/modules/platform-tools/terminal/terminal.module.js.map +1 -1
  23. package/dist/modules/platform-tools/terminal/terminal.service.d.ts +0 -10
  24. package/dist/modules/platform-tools/terminal/terminal.service.js +6 -167
  25. package/dist/modules/platform-tools/terminal/terminal.service.js.map +1 -1
  26. package/package.json +5 -5
  27. package/public/3rdpartylicenses.txt +58 -58
  28. package/public/chunk-2V74YNKO.js +20 -0
  29. package/public/{chunk-TERM33NM.js → chunk-3AKLELGT.js} +1 -1
  30. package/public/chunk-55DKEZRT.js +4 -0
  31. package/public/{chunk-7BMXM6QA.js → chunk-65R3WGJK.js} +1 -1
  32. package/public/{chunk-REG3DDO6.js → chunk-6ICMDOE6.js} +1 -1
  33. package/public/{chunk-X2BBC7SW.js → chunk-6QCBKKQ7.js} +1 -1
  34. package/public/{chunk-5Y2S4QBX.js → chunk-6U2B3ZIB.js} +1 -1
  35. package/public/{chunk-3HS7FMGZ.js → chunk-7L7OF6NJ.js} +1 -1
  36. package/public/chunk-7LC5ILOZ.js +8 -0
  37. package/public/{chunk-YU4LWTEL.js → chunk-7NRDWLRV.js} +1 -1
  38. package/public/{chunk-BRFVF5IQ.js → chunk-A5YPMEVZ.js} +1 -1
  39. package/public/{chunk-RZV5XKBT.js → chunk-AOQFASDR.js} +1 -1
  40. package/public/{chunk-ZNM44KAC.js → chunk-BCQ7O7GT.js} +1 -1
  41. package/public/{chunk-5O3WAMJC.js → chunk-BSFL67L2.js} +1 -1
  42. package/public/{chunk-POGQOCNO.js → chunk-BUFCBMS4.js} +1 -1
  43. package/public/{chunk-4CK4ITPJ.js → chunk-CIFVKKCL.js} +1 -1
  44. package/public/{chunk-GQPKI3T2.js → chunk-CN6AIV2G.js} +1 -1
  45. package/public/{chunk-XTHJMEKE.js → chunk-EJUHSQJT.js} +1 -1
  46. package/public/{chunk-UOXAMNMF.js → chunk-EY4TL7MQ.js} +1 -1
  47. package/public/chunk-FBKZG6NW.js +5 -0
  48. package/public/{chunk-L3YIHHF6.js → chunk-HCLPERDW.js} +1 -1
  49. package/public/{chunk-6HQ5IE56.js → chunk-HPDPYCCU.js} +1 -1
  50. package/public/chunk-J647HPEO.js +1 -0
  51. package/public/chunk-JOWPFOJ6.js +1 -0
  52. package/public/{chunk-Q2BKTKQN.js → chunk-JWNACTNS.js} +1 -1
  53. package/public/{chunk-3VASUP3D.js → chunk-KTVSDY3J.js} +1 -1
  54. package/public/chunk-L5YI32XL.js +1 -0
  55. package/public/chunk-MM4VXTF7.js +1 -0
  56. package/public/{chunk-R46CBXDN.js → chunk-NXD65TQY.js} +1 -1
  57. package/public/chunk-P3YJZITV.js +1 -0
  58. package/public/{chunk-H5HHDK23.js → chunk-PYA727PD.js} +1 -1
  59. package/public/chunk-QOU7SWHO.js +1 -0
  60. package/public/{chunk-SIT5Y3K2.js → chunk-RKLVJKRV.js} +1 -1
  61. package/public/{chunk-Y22EKIHI.js → chunk-RM73XLPO.js} +1 -1
  62. package/public/{chunk-ZJLWQI4M.js → chunk-RS2XIQ2D.js} +1 -1
  63. package/public/chunk-SNMQAZT2.js +1 -0
  64. package/public/{chunk-ZUAAUM5E.js → chunk-SS2BB5BR.js} +1 -1
  65. package/public/{chunk-PJKAYYQZ.js → chunk-T33UVRIX.js} +1 -1
  66. package/public/chunk-TDCLTQMH.js +1 -0
  67. package/public/chunk-TNHTCUOR.js +1 -0
  68. package/public/{chunk-ZNE3PBJO.js → chunk-UEO5SW2H.js} +1 -1
  69. package/public/{chunk-W3QRSUUF.js → chunk-UJT6ID6R.js} +1 -1
  70. package/public/{chunk-VIDMYRMZ.js → chunk-ULBODTVI.js} +1 -1
  71. package/public/chunk-X7V7CXS5.js +14 -0
  72. package/public/chunk-Y5LCR2EO.js +28 -0
  73. package/public/{chunk-MYAR5OQO.js → chunk-ZZMY2IKC.js} +1 -1
  74. package/public/index.html +1 -1
  75. package/public/main-5SJ6EOYL.js +1 -0
  76. package/dist/modules/platform-tools/terminal/terminal.controller.d.ts +0 -11
  77. package/dist/modules/platform-tools/terminal/terminal.controller.js +0 -46
  78. package/dist/modules/platform-tools/terminal/terminal.controller.js.map +0 -1
  79. package/public/chunk-4NL5FNK7.js +0 -1
  80. package/public/chunk-4ZOG2BNU.js +0 -20
  81. package/public/chunk-5BZE6F3L.js +0 -1
  82. package/public/chunk-AJTK4JYJ.js +0 -1
  83. package/public/chunk-BXCG7JVO.js +0 -1
  84. package/public/chunk-CCYDOS27.js +0 -8
  85. package/public/chunk-H66E2OMZ.js +0 -4
  86. package/public/chunk-J2H2OMG6.js +0 -1
  87. package/public/chunk-KLFW6IJB.js +0 -14
  88. package/public/chunk-KZE23QIK.js +0 -1
  89. package/public/chunk-LCRV6LYP.js +0 -1
  90. package/public/chunk-LN4FM4VS.js +0 -1
  91. package/public/chunk-TXEQGQYB.js +0 -1
  92. package/public/chunk-VC4HK4KT.js +0 -28
  93. package/public/chunk-W27N7J2J.js +0 -5
  94. package/public/chunk-W6RS6NBX.js +0 -1
  95. package/public/chunk-WB53NNLO.js +0 -1
  96. package/public/chunk-YFQVSUDS.js +0 -1
  97. package/public/main-ID7UIXSW.js +0 -1
@@ -1,5 +0,0 @@
1
- import{a as z,b,c as k}from"./chunk-BSZ6MHFZ.js";import{a as u}from"./chunk-3VASUP3D.js";import{n as f}from"./chunk-BXCG7JVO.js";import{M as t,g as n,ga as p,h as c,la as a,n as h}from"./chunk-V7SOQAC5.js";var d=n(z(),1),l=n(b(),1),m=n(k(),1);var g=(()=>{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({next:()=>console.log("Persistent session destroyed"),error:e=>console.error("Failed to destroy persistent session:",e)})}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(e){return console.error("Failed to check backend persistent session:",e),!1}})}hasUserTypedInSession(){return this.hasUserTyped}isTerminalReady(){return this.term&&!this.isInitializing}reconnectTerminal(e,i={},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(i),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(e.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",s=>{this.term.write(s)}),this.io.socket.on("process-exit",()=>{this.startSession()}),this.dataDisposable&&this.dataDisposable.dispose(),this.dataDisposable=this.term.onData(s=>{this.hasUserTyped=!0,this.io.socket.emit("stdin",s)}),this.term.onResize(s=>{this.resize.next(s)}),this.resize.pipe(t(500)).subscribe(s=>{this.io.socket.emit("resize",s)}),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(e,i,r)}startTerminal(e,i={},r){return this.isInitializing?!1:(this.isInitializing=!0,this.elementResize=r,this.io=this.$ws.connectToNamespace("platform-tools/terminal"),this.term=new m.Terminal(i),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(e.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
- \r
3
- \rTerminal disconnected. Is the server running?
4
- \r
5
- \r`)}),this.io.socket.on("process-exit",()=>{this.startSession()}),this.resize.pipe(t(500)).subscribe(s=>{this.io.socket.emit("resize",s)}),this.io.socket.on("stdout",s=>{this.term.write(s)}),this.dataDisposable=this.term.onData(s=>{this.hasUserTyped=!0,this.io.socket.emit("stdin",s)}),this.term.onResize(s=>{this.resize.next(s)}),this.elementResize&&this.elementResize.pipe(t(100)).subscribe({next:()=>{this.fitAddon.fit()}}),!0)}startSession(){this.term.reset(),this.hasUserTyped=!1,this.io.socket.emit("start-session",{cols:this.term.cols,rows:this.term.rows}),this.resize.next({cols:this.term.cols,rows:this.term.rows}),this.isInitializing=!1}static \u0275fac=function(i){return new(i||o)};static \u0275prov=p({token:o,factory:o.\u0275fac,providedIn:"root"})}return o})();export{g as a};
@@ -1 +0,0 @@
1
- import{m as I}from"./chunk-PSSVCFFV.js";import{b as H}from"./chunk-ZG3HINDJ.js";import{$b as p,Ac as g,Hb as x,Hc as C,Ib as d,Ic as b,Jb as c,Sb as o,Tb as a,Ub as s,Xa as r,_b as B,ab as i,cc as f,dc as m,la as M,mb as L,pc as v,qc as u,ra as T,rc as k,sa as y,sc as E}from"./chunk-V7SOQAC5.js";function S(t,_){if(t&1&&s(0,"i",14),t&2){let e=m();v(g("fas fa-fw ",e.faIconClass," mb-3"))}}function z(t,_){if(t&1&&s(0,"p",7),t&2){let e=m();p("innerHTML",e.message2,r)}}function h(t,_){if(t&1&&s(0,"p",7),t&2){let e=m();p("innerHTML",e.message3,r)}}function P(t,_){if(t&1){let e=B();o(0,"button",15),f("click",function(){T(e);let n=m();return y(n.closeModal())}),u(1),a()}if(t&2){let e=m();v(g("btn ",e.confirmButtonClass||"btn-primary")),i(),E(" ",e.confirmButtonLabel," ")}}var N=(()=>{class t{$activeModal=M(I);title;message;message2;message3;confirmButtonLabel;confirmButtonClass;faIconClass;dismissModal(){this.$activeModal.dismiss("Dismiss")}closeModal(){this.$activeModal.close()}static \u0275fac=function(l){return new(l||t)};static \u0275cmp=L({type:t,selectors:[["ng-component"]],inputs:{title:"title",message:"message",message2:"message2",message3:"message3",confirmButtonLabel:"confirmButtonLabel",confirmButtonClass:"confirmButtonClass",faIconClass:"faIconClass"},decls:20,vars:15,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body","text-center"],[2,"font-size","75px",3,"class"],[1,"mb-0","text-center",3,"innerHTML"],[1,"mt-2","mb-0","text-center",3,"innerHTML"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-center"],[1,"text-end"],["type","button","data-bs-dismiss","modal",3,"class"],[2,"font-size","75px"],["type","button","data-bs-dismiss","modal",3,"click"]],template:function(l,n){l&1&&(o(0,"div",0)(1,"div",1)(2,"h5",2),u(3),a(),o(4,"button",3),C(5,"translate"),f("click",function(){return n.dismissModal()}),a()(),o(6,"div",4),d(7,S,1,3,"i",5),s(8,"p",6),d(9,z,1,1,"p",7),d(10,h,1,1,"p",7),a(),o(11,"div",8)(12,"div",9)(13,"button",10),C(14,"translate"),f("click",function(){return n.dismissModal()}),u(15),C(16,"translate"),a()(),s(17,"div",11),o(18,"div",12),d(19,P,2,4,"button",13),a()()()),l&2&&(i(3),k(n.title),i(),x("aria-label",b(5,9,"form.button_close")),i(3),c(n.faIconClass?7:-1),i(),p("innerHTML",n.message,r),i(),c(n.message2?9:-1),i(),c(n.message3?10:-1),i(3),x("aria-label",b(14,11,"form.button_cancel")),i(2),E(" ",b(16,13,"form.button_cancel")," "),i(4),c(n.confirmButtonLabel?19:-1))},dependencies:[H],encapsulation:2})}return t})();export{N as a};
@@ -1 +0,0 @@
1
- import{g as r}from"./chunk-4XLPIGSD.js";import"./chunk-WU2LDFGK.js";import{ha as e,nb as o}from"./chunk-V7SOQAC5.js";var m=[{path:"",loadComponent:()=>import("./chunk-4NL5FNK7.js").then(t=>t.TerminalComponent),canDeactivate:[t=>t.canDeactivate?t.canDeactivate():!0]}],n=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=o({type:t});static \u0275inj=e({imports:[r.forChild(m),r]})}return t})();var s=(()=>{class t{static \u0275fac=function(i){return new(i||t)};static \u0275mod=o({type:t});static \u0275inj=e({imports:[n]})}return t})();export{s as TerminalModule};
@@ -1 +0,0 @@
1
- import{e as b}from"./chunk-V7SOQAC5.js";var L=b((p,v)=>{(function(d,r){typeof define=="function"&&define.amd?define([],r):typeof p<"u"?r():(r(),d.FileSaver={})})(p,function(){"use strict";function d(e,t){return typeof t>"u"?t={autoBom:!1}:typeof t!="object"&&(console.warn("Deprecated: Expected third argument to be a object"),t={autoBom:!t}),t.autoBom&&/^\s*(?:text\/\S*|application\/xml|\S*\/\S*\+xml)\s*;.*charset\s*=\s*utf-8/i.test(e.type)?new Blob(["\uFEFF",e],{type:e.type}):e}function r(e,t,i){var n=new XMLHttpRequest;n.open("GET",e),n.responseType="blob",n.onload=function(){l(n.response,t,i)},n.onerror=function(){console.error("could not download file")},n.send()}function w(e){var t=new XMLHttpRequest;t.open("HEAD",e,!1);try{t.send()}catch{}return 200<=t.status&&299>=t.status}function s(e){try{e.dispatchEvent(new MouseEvent("click"))}catch{var t=document.createEvent("MouseEvents");t.initMouseEvent("click",!0,!0,window,0,0,0,80,20,!1,!1,!1,!1,0,null),e.dispatchEvent(t)}}var a=typeof window=="object"&&window.window===window?window:typeof self=="object"&&self.self===self?self:typeof global=="object"&&global.global===global?global:void 0,m=a.navigator&&/Macintosh/.test(navigator.userAgent)&&/AppleWebKit/.test(navigator.userAgent)&&!/Safari/.test(navigator.userAgent),l=a.saveAs||(typeof window!="object"||window!==a?function(){}:"download"in HTMLAnchorElement.prototype&&!m?function(e,t,i){var n=a.URL||a.webkitURL,o=document.createElement("a");t=t||e.name||"download",o.download=t,o.rel="noopener",typeof e=="string"?(o.href=e,o.origin===location.origin?s(o):w(o.href)?r(e,t,i):s(o,o.target="_blank")):(o.href=n.createObjectURL(e),setTimeout(function(){n.revokeObjectURL(o.href)},4e4),setTimeout(function(){s(o)},0))}:"msSaveOrOpenBlob"in navigator?function(e,t,i){if(t=t||e.name||"download",typeof e!="string")navigator.msSaveOrOpenBlob(d(e,i),t);else if(w(e))r(e,t,i);else{var n=document.createElement("a");n.href=e,n.target="_blank",setTimeout(function(){s(n)})}}:function(e,t,i,n){if(n=n||open("","_blank"),n&&(n.document.title=n.document.body.innerText="downloading..."),typeof e=="string")return r(e,t,i);var o=e.type==="application/octet-stream",E=/constructor/i.test(a.HTMLElement)||a.safari,y=/CriOS\/[\d]+/.test(navigator.userAgent);if((y||o&&E||m)&&typeof FileReader<"u"){var u=new FileReader;u.onloadend=function(){var c=u.result;c=y?c:c.replace(/^data:[^;]*;/,"data:attachment/file;"),n?n.location.href=c:location=c,n=null},u.readAsDataURL(e)}else{var h=a.URL||a.webkitURL,f=h.createObjectURL(e);n?n.location=f:location.href=f,n=null,setTimeout(function(){h.revokeObjectURL(f)},4e4)}});a.saveAs=l.saveAs=l,typeof v<"u"&&(v.exports=l)})});export{L as a};