homebridge-config-ui-x 5.7.1-alpha.0 → 5.7.1-alpha.1
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/dist/core/config/config.interfaces.d.ts +1 -4
- package/dist/core/homebridge-ipc/homebridge-ipc.service.js +2 -0
- package/dist/core/homebridge-ipc/homebridge-ipc.service.js.map +1 -1
- package/dist/modules/child-bridges/child-bridges.controller.d.ts +35 -0
- package/dist/modules/child-bridges/child-bridges.controller.js +284 -0
- package/dist/modules/child-bridges/child-bridges.controller.js.map +1 -0
- package/dist/modules/child-bridges/child-bridges.gateway.d.ts +14 -1
- package/dist/modules/child-bridges/child-bridges.gateway.js +67 -1
- package/dist/modules/child-bridges/child-bridges.gateway.js.map +1 -1
- package/dist/modules/child-bridges/child-bridges.interfaces.d.ts +45 -0
- package/dist/modules/child-bridges/child-bridges.interfaces.js +3 -0
- package/dist/modules/child-bridges/child-bridges.interfaces.js.map +1 -0
- package/dist/modules/child-bridges/child-bridges.module.js +8 -0
- package/dist/modules/child-bridges/child-bridges.module.js.map +1 -1
- package/dist/modules/child-bridges/child-bridges.service.d.ts +40 -8
- package/dist/modules/child-bridges/child-bridges.service.js +345 -10
- package/dist/modules/child-bridges/child-bridges.service.js.map +1 -1
- package/dist/modules/config-editor/config-editor.service.js +7 -0
- package/dist/modules/config-editor/config-editor.service.js.map +1 -1
- package/dist/modules/matter-bridges/matter-bridges.gateway.d.ts +6 -3
- package/dist/modules/matter-bridges/matter-bridges.gateway.js +42 -0
- package/dist/modules/matter-bridges/matter-bridges.gateway.js.map +1 -1
- package/dist/modules/matter-bridges/matter-bridges.interfaces.d.ts +59 -0
- package/dist/modules/matter-bridges/matter-bridges.interfaces.js +10 -0
- package/dist/modules/matter-bridges/matter-bridges.interfaces.js.map +1 -0
- package/dist/modules/matter-bridges/matter-bridges.module.js +0 -4
- package/dist/modules/matter-bridges/matter-bridges.module.js.map +1 -1
- package/dist/modules/matter-bridges/matter-bridges.service.d.ts +17 -38
- package/dist/modules/matter-bridges/matter-bridges.service.js +67 -11
- package/dist/modules/matter-bridges/matter-bridges.service.js.map +1 -1
- package/dist/modules/plugins/plugins.service.js +27 -0
- package/dist/modules/plugins/plugins.service.js.map +1 -1
- package/dist/modules/server/server.controller.d.ts +6 -6
- package/dist/modules/server/server.controller.js +20 -2
- package/dist/modules/server/server.controller.js.map +1 -1
- package/dist/modules/server/server.module.js +1 -1
- package/dist/modules/server/server.module.js.map +1 -1
- package/dist/modules/status/status.controller.d.ts +1 -1
- package/dist/modules/status/status.controller.js +3 -1
- package/dist/modules/status/status.controller.js.map +1 -1
- package/package.json +2 -2
- package/public/assets/hap.svg +1 -2
- package/public/assets/matter.svg +6 -5
- package/public/{chunk-BSWIQAC3.js → chunk-3EEMCOXX.js} +1 -1
- package/public/{chunk-VIN3IQKP.js → chunk-3SPYAVYC.js} +1 -1
- package/public/{chunk-NBLX3S4Q.js → chunk-45MRBWTN.js} +1 -1
- package/public/{chunk-7ZQT7GPI.js → chunk-4THME2AO.js} +1 -1
- package/public/{chunk-ZHUPJTJI.js → chunk-5B4RGP7P.js} +1 -1
- package/public/chunk-5NHNQSBY.js +1 -0
- package/public/{chunk-QPTX7IVE.js → chunk-65BC6OEY.js} +1 -1
- package/public/{chunk-3QJX4QBO.js → chunk-6UJVBU6Q.js} +1 -1
- package/public/{chunk-4JL4TGFX.js → chunk-6XONIZJH.js} +1 -1
- package/public/chunk-6YMQTAOF.js +19 -0
- package/public/{chunk-YHK4PENP.js → chunk-7GRKHAP7.js} +1 -1
- package/public/{chunk-J2VLADZD.js → chunk-7UFFCHMH.js} +1 -1
- package/public/chunk-APXVBISC.js +49 -0
- package/public/{chunk-36YMEWXN.js → chunk-BEUIEMBU.js} +1 -1
- package/public/{chunk-IHAYSSES.js → chunk-BV3UDQFS.js} +1 -1
- package/public/{chunk-5JDHV5WO.js → chunk-C6PVSB3L.js} +1 -1
- package/public/{chunk-M33HG622.js → chunk-CEOXBLCW.js} +4 -4
- package/public/chunk-CEPCEO3W.js +1 -0
- package/public/{chunk-PNH5U2XG.js → chunk-CTZDKMFO.js} +1 -1
- package/public/chunk-DCOG5S65.js +1 -0
- package/public/{chunk-I7P2NGOH.js → chunk-DIZQSD54.js} +1 -1
- package/public/chunk-DOUSYB6L.js +1 -0
- package/public/{chunk-YS5RGFOZ.js → chunk-DWGESJFL.js} +1 -1
- package/public/{chunk-KSLPU3O3.js → chunk-ECLVDJ5G.js} +1 -1
- package/public/{chunk-ZDLVXYCY.js → chunk-EL6RIMGW.js} +1 -1
- package/public/{chunk-USOR7VSL.js → chunk-EO2OFTYL.js} +1 -1
- package/public/{chunk-VHUDBTN7.js → chunk-ERP7Y7CZ.js} +1 -1
- package/public/{chunk-4XGWVELQ.js → chunk-ES2W3HQE.js} +1 -1
- package/public/{chunk-CT7SWAGC.js → chunk-F6BJ5XZH.js} +1 -1
- package/public/{chunk-KUEFA3JL.js → chunk-GPG64N53.js} +1 -1
- package/public/{chunk-76QOUSET.js → chunk-HSE662OB.js} +1 -1
- package/public/chunk-IU2R7ORW.js +1 -0
- package/public/{chunk-MPGZVDTB.js → chunk-JNGSK3ZR.js} +1 -1
- package/public/{chunk-5XSDDD4U.js → chunk-JR3E32OK.js} +1 -1
- package/public/chunk-K3CI5ZO2.js +1 -0
- package/public/{chunk-DBZLCAJF.js → chunk-KPR57544.js} +1 -1
- package/public/{chunk-TBUS22HP.js → chunk-L74KRCJX.js} +1 -1
- package/public/{chunk-IULWRLBV.js → chunk-LIZOYLJA.js} +1 -1
- package/public/{chunk-VVIMLURR.js → chunk-LPC6ZQZT.js} +1 -1
- package/public/{chunk-RVHILM7B.js → chunk-M6BP6HSJ.js} +1 -1
- package/public/{chunk-5M7A3XMS.js → chunk-MD6P4NXL.js} +1 -1
- package/public/{chunk-SKTDZPNI.js → chunk-OAZVGJPO.js} +1 -1
- package/public/{chunk-4XDXTE6Q.js → chunk-OHIFXMDK.js} +1 -1
- package/public/{chunk-3HG2CEI6.js → chunk-OR5TLS5G.js} +1 -1
- package/public/{chunk-4ZIKJDZL.js → chunk-Q62OVHKR.js} +1 -1
- package/public/{chunk-R4TZ5MLM.js → chunk-QZCKU4E6.js} +1 -1
- package/public/{chunk-E7V47C3O.js → chunk-RX2M2DUA.js} +1 -1
- package/public/{chunk-H3LTW2P3.js → chunk-S3ACQCZH.js} +1 -1
- package/public/{chunk-2DMYP4GO.js → chunk-S3PEAO7D.js} +1 -1
- package/public/{chunk-CJ5JUR54.js → chunk-S6YTOEAT.js} +1 -1
- package/public/{chunk-6IZWTQQA.js → chunk-SGO34VYC.js} +1 -1
- package/public/{chunk-QJGZZ452.js → chunk-SO2Y7JSS.js} +1 -1
- package/public/chunk-SPH2NNMZ.js +4 -0
- package/public/{chunk-ACDJDUZH.js → chunk-SXS3TPZP.js} +1 -1
- package/public/{chunk-UQH6WF6C.js → chunk-TTXUZ63M.js} +1 -1
- package/public/{chunk-OX6VXPNA.js → chunk-TXXOGRVJ.js} +1 -1
- package/public/{chunk-S7JFZWBJ.js → chunk-U6DDIXEG.js} +1 -1
- package/public/chunk-UTUB67Y5.js +1 -0
- package/public/{chunk-XXIVHEVG.js → chunk-UXTKBDMZ.js} +1 -1
- package/public/{chunk-UXQKT5SK.js → chunk-V5XBUXNN.js} +1 -1
- package/public/{chunk-EFE3KGLG.js → chunk-VQGLVRRI.js} +1 -1
- package/public/{chunk-Q2HNVGH2.js → chunk-WCZ6FM7L.js} +1 -1
- package/public/{chunk-AZR7T42D.js → chunk-WTQ5JBLR.js} +1 -1
- package/public/{chunk-O2XH35ZA.js → chunk-XEJOPOUU.js} +1 -1
- package/public/{chunk-E6MIBZYJ.js → chunk-XG7WXUZ2.js} +1 -1
- package/public/chunk-Z2GZQLTV.js +16 -0
- package/public/{chunk-IL3DK2BB.js → chunk-ZU4Z7GGL.js} +1 -1
- package/public/index.html +2 -2
- package/public/{main-W5ZHIO2T.js → main-JRFJSFGM.js} +1 -1
- package/public/media/hap-24356SU3.svg +6 -0
- package/public/media/matter-P563JGDL.svg +8 -0
- package/public/{styles-ZW3WTDSN.css → styles-AQTMFMEL.css} +1 -1
- package/dist/modules/matter-bridges/matter-bridges.controller.d.ts +0 -28
- package/dist/modules/matter-bridges/matter-bridges.controller.js +0 -130
- package/dist/modules/matter-bridges/matter-bridges.controller.js.map +0 -1
- package/public/chunk-2RSXLXGG.js +0 -1
- package/public/chunk-7GRRWGZZ.js +0 -1
- package/public/chunk-ATWPSJMZ.js +0 -19
- package/public/chunk-FUZF5RIH.js +0 -16
- package/public/chunk-IIYIOD2I.js +0 -1
- package/public/chunk-IUFXDDQB.js +0 -49
- package/public/chunk-L5WP36ZU.js +0 -1
- package/public/chunk-LJP2FKAV.js +0 -1
- package/public/chunk-MLF2RQCI.js +0 -1
- package/public/chunk-O26B5DLA.js +0 -1
- package/public/chunk-QUSPVKNV.js +0 -4
- package/public/media/hap-SQVLRU5O.svg +0 -7
- package/public/media/matter-LDPD4ZMH.svg +0 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as D}from"./chunk-
|
|
1
|
+
import{b as D}from"./chunk-V5XBUXNN.js";import{p as h,q as S}from"./chunk-K3CI5ZO2.js";import{C as T,Xa as E,bd as j,ea as d,fa as y,h as a,ha as v,ia as l,ja as p,r as f,ta as I,w as c,x as k,z as w}from"./chunk-CEOXBLCW.js";var g=new v("JWT_OPTIONS"),m=(()=>{class o{constructor(e=null){this.tokenGetter=e&&e.tokenGetter||function(){}}urlBase64Decode(e){let t=e.replace(/-/g,"+").replace(/_/g,"/");switch(t.length%4){case 0:break;case 2:{t+="==";break}case 3:{t+="=";break}default:throw new Error("Illegal base64url string!")}return this.b64DecodeUnicode(t)}b64decode(e){let t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",i="";if(e=String(e).replace(/=+$/,""),e.length%4===1)throw new Error("'atob' failed: The string to be decoded is not correctly encoded.");for(let r=0,s,n,x=0;n=e.charAt(x++);~n&&(s=r%4?s*64+n:n,r++%4)?i+=String.fromCharCode(255&s>>(-2*r&6)):0)n=t.indexOf(n);return i}b64DecodeUnicode(e){return decodeURIComponent(Array.prototype.map.call(this.b64decode(e),t=>"%"+("00"+t.charCodeAt(0).toString(16)).slice(-2)).join(""))}decodeToken(e=this.tokenGetter()){return e instanceof Promise?e.then(t=>this._decodeToken(t)):this._decodeToken(e)}_decodeToken(e){if(!e||e==="")return null;let t=e.split(".");if(t.length!==3)throw new Error("The inspected token doesn't appear to be a JWT. Check to make sure it has three parts and see https://jwt.io for more.");let i=this.urlBase64Decode(t[1]);if(!i)throw new Error("Cannot decode the token.");return JSON.parse(i)}getTokenExpirationDate(e=this.tokenGetter()){return e instanceof Promise?e.then(t=>this._getTokenExpirationDate(t)):this._getTokenExpirationDate(e)}_getTokenExpirationDate(e){let t;if(t=this.decodeToken(e),!t||!t.hasOwnProperty("exp"))return null;let i=new Date(0);return i.setUTCSeconds(t.exp),i}isTokenExpired(e=this.tokenGetter(),t){return e instanceof Promise?e.then(i=>this._isTokenExpired(i,t)):this._isTokenExpired(e,t)}_isTokenExpired(e,t){if(!e||e==="")return!0;let i=this.getTokenExpirationDate(e);return t=t||0,i===null?!1:!(i.valueOf()>new Date().valueOf()+t*1e3)}getAuthScheme(e,t){return typeof e=="function"?e(t):e}}return o.\u0275fac=function(e){return new(e||o)(l(g))},o.\u0275prov=d({token:o,factory:o.\u0275fac}),o})(),$=o=>o instanceof Promise?T(()=>o):f(o),b=(()=>{class o{constructor(e,t,i){this.jwtHelper=t,this.document=i,this.standardPorts=["80","443"],this.tokenGetter=e.tokenGetter,this.headerName=e.headerName||"Authorization",this.authScheme=e.authScheme||e.authScheme===""?e.authScheme:"Bearer ",this.allowedDomains=e.allowedDomains||[],this.disallowedRoutes=e.disallowedRoutes||[],this.throwNoTokenError=e.throwNoTokenError||!1,this.skipWhenExpired=e.skipWhenExpired}isAllowedDomain(e){let t=new URL(e.url,this.document.location.origin);if(t.host===this.document.location.host)return!0;let i=`${t.hostname}${t.port&&!this.standardPorts.includes(t.port)?":"+t.port:""}`;return this.allowedDomains.findIndex(r=>typeof r=="string"?r===i:r instanceof RegExp?r.test(i):!1)>-1}isDisallowedRoute(e){let t=new URL(e.url,this.document.location.origin);return this.disallowedRoutes.findIndex(i=>{if(typeof i=="string"){let r=new URL(i,this.document.location.origin);return r.hostname===t.hostname&&r.pathname===t.pathname}return i instanceof RegExp?i.test(e.url):!1})>-1}handleInterception(e,t,i){let r=this.jwtHelper.getAuthScheme(this.authScheme,t);if(!e&&this.throwNoTokenError)throw new Error("Could not get token from tokenGetter function.");let s=f(!1);return this.skipWhenExpired&&(s=e?$(this.jwtHelper.isTokenExpired(e)):f(!0)),e?s.pipe(k(n=>n&&this.skipWhenExpired?t.clone():t.clone({setHeaders:{[this.headerName]:`${r}${e}`}})),w(n=>i.handle(n))):i.handle(t)}intercept(e,t){if(!this.isAllowedDomain(e)||this.isDisallowedRoute(e))return t.handle(e);let i=this.tokenGetter(e);return $(i).pipe(w(r=>this.handleInterception(r,e,t)))}}return o.\u0275fac=function(e){return new(e||o)(l(g),l(m),l(I))},o.\u0275prov=d({token:o,factory:o.\u0275fac}),o})(),U=(()=>{class o{constructor(e){if(e)throw new Error("JwtModule is already loaded. It should only be imported in your application's main module.")}static forRoot(e){return{ngModule:o,providers:[{provide:j,useClass:b,multi:!0},e.jwtOptionsProvider||{provide:g,useValue:e.config},m]}}}return o.\u0275fac=function(e){return new(e||o)(l(o,12))},o.\u0275mod=E({type:o}),o.\u0275inj=y({}),o})();var X=(()=>{class o{$api=p(S);$jwtHelper=p(m);$settings=p(D);token;user={};logoutTimer;lastRefreshTime=Date.now();isRefreshing=!1;constructor(){this.loadToken()}login(e){return a(this,null,function*(){let t=yield c(this.$api.post("/auth/login",e));if(!this.validateToken(t.access_token))throw new Error("Invalid username or password.");window.localStorage.setItem(h.jwt.tokenKey,t.access_token),yield this.$settings.getAppSettings()})}noauth(){return a(this,null,function*(){let e=yield c(this.$api.post("/auth/noauth",{}));if(this.validateToken(e.access_token))window.localStorage.setItem(h.jwt.tokenKey,e.access_token),yield this.$settings.getAppSettings();else throw new Error("Invalid username or password.")})}logout(){this.user=null,this.token=null,clearTimeout(this.logoutTimer),window.localStorage.removeItem(h.jwt.tokenKey),window.location.reload()}loadToken(){return a(this,null,function*(){this.$settings.settingsLoaded||(yield c(this.$settings.onSettingsLoaded));let e=window.localStorage.getItem(h.jwt.tokenKey);e&&this.validateToken(e)})}checkToken(){return a(this,null,function*(){try{return yield c(this.$api.get("/auth/check"))}catch(e){e.status===401&&(console.error("Current token is not valid"),this.logout())}})}isLoggedIn(){return this.$settings.env.instanceId!==this.user.instanceId?(console.error("Token does not match instance"),!1):this.user&&this.token&&!this.$jwtHelper.isTokenExpired(this.token,this.$settings.serverTimeOffset)}validateToken(e){try{return this.$jwtHelper.isTokenExpired(e,this.$settings.serverTimeOffset)&&this.logout(),this.user=this.$jwtHelper.decodeToken(e),this.token=e,this.setLogoutTimer(),!0}catch{return window.localStorage.removeItem(h.jwt.tokenKey),this.token=null,!1}}setLogoutTimer(){if(clearTimeout(this.logoutTimer),!this.$jwtHelper.isTokenExpired(this.token,this.$settings.serverTimeOffset)){let e=this.$settings.sessionTimeout*1e3;e<=2147483647&&(this.logoutTimer=setTimeout(()=>a(this,null,function*(){this.$settings.formAuth===!1?(yield this.noauth(),window.location.reload()):this.logout()}),e))}}checkAndRefreshIfNeeded(){return a(this,null,function*(){if(!this.$settings.formAuth||!this.$settings.sessionTimeoutInactivityBased||!this.token||!this.isLoggedIn()||this.isRefreshing)return;let t=Date.now()-this.lastRefreshTime,r=this.$settings.sessionTimeout*1e3*.7;if(t>r)try{yield this.refreshSession()}catch(s){console.error("Failed to refresh session:",s)}})}refreshSession(){return a(this,null,function*(){if(!this.isRefreshing){this.isRefreshing=!0;try{let e=yield c(this.$api.post("/auth/refresh",{}));e.access_token&&(this.token=e.access_token,window.localStorage.setItem(h.jwt.tokenKey,e.access_token),this.lastRefreshTime=Date.now(),this.setLogoutTimer())}finally{this.isRefreshing=!1}}})}static \u0275fac=function(t){return new(t||o)};static \u0275prov=d({token:o,factory:o.\u0275fac})}return o})();export{U as a,X as b};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{g as r}from"./chunk-
|
|
1
|
+
import{g as r}from"./chunk-ERP7Y7CZ.js";import{Xa as e,fa as t}from"./chunk-CEOXBLCW.js";var m=[{path:"",loadComponent:()=>import("./chunk-TTXUZ63M.js").then(o=>o.PowerOptionsComponent)}],n=(()=>{class o{static \u0275fac=function(i){return new(i||o)};static \u0275mod=e({type:o});static \u0275inj=t({imports:[r.forChild(m),r]})}return o})();var d=(()=>{class o{static \u0275fac=function(i){return new(i||o)};static \u0275mod=e({type:o});static \u0275inj=t({imports:[n]})}return o})();export{d as PowerOptionsModule};
|