homebridge-config-ui-x 5.7.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.
Files changed (158) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/dist/app.module.js +2 -0
  3. package/dist/app.module.js.map +1 -1
  4. package/dist/core/auth/auth.controller.d.ts +5 -0
  5. package/dist/core/auth/auth.controller.js +13 -0
  6. package/dist/core/auth/auth.controller.js.map +1 -1
  7. package/dist/core/auth/auth.service.d.ts +1 -0
  8. package/dist/core/auth/auth.service.js +24 -0
  9. package/dist/core/auth/auth.service.js.map +1 -1
  10. package/dist/core/config/config.interfaces.d.ts +14 -3
  11. package/dist/core/config/config.service.d.ts +6 -0
  12. package/dist/core/config/config.service.js +6 -0
  13. package/dist/core/config/config.service.js.map +1 -1
  14. package/dist/core/config/config.startup.js +12 -0
  15. package/dist/core/config/config.startup.js.map +1 -1
  16. package/dist/core/homebridge-ipc/homebridge-ipc.service.js +8 -0
  17. package/dist/core/homebridge-ipc/homebridge-ipc.service.js.map +1 -1
  18. package/dist/core/spa/spa-html.service.d.ts +5 -0
  19. package/dist/core/spa/spa-html.service.js +38 -0
  20. package/dist/core/spa/spa-html.service.js.map +1 -0
  21. package/dist/core/spa/spa.filter.d.ts +3 -0
  22. package/dist/core/spa/spa.filter.js +21 -2
  23. package/dist/core/spa/spa.filter.js.map +1 -1
  24. package/dist/globalDefaults.js +3 -0
  25. package/dist/globalDefaults.js.map +1 -1
  26. package/dist/main.js +61 -3
  27. package/dist/main.js.map +1 -1
  28. package/dist/modules/child-bridges/child-bridges.controller.d.ts +35 -0
  29. package/dist/modules/child-bridges/child-bridges.controller.js +284 -0
  30. package/dist/modules/child-bridges/child-bridges.controller.js.map +1 -0
  31. package/dist/modules/child-bridges/child-bridges.gateway.d.ts +14 -1
  32. package/dist/modules/child-bridges/child-bridges.gateway.js +67 -1
  33. package/dist/modules/child-bridges/child-bridges.gateway.js.map +1 -1
  34. package/dist/modules/child-bridges/child-bridges.interfaces.d.ts +45 -0
  35. package/dist/modules/child-bridges/child-bridges.interfaces.js +3 -0
  36. package/dist/modules/child-bridges/child-bridges.interfaces.js.map +1 -0
  37. package/dist/modules/child-bridges/child-bridges.module.js +8 -0
  38. package/dist/modules/child-bridges/child-bridges.module.js.map +1 -1
  39. package/dist/modules/child-bridges/child-bridges.service.d.ts +40 -8
  40. package/dist/modules/child-bridges/child-bridges.service.js +345 -10
  41. package/dist/modules/child-bridges/child-bridges.service.js.map +1 -1
  42. package/dist/modules/config-editor/config-editor.service.js +7 -0
  43. package/dist/modules/config-editor/config-editor.service.js.map +1 -1
  44. package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.js +1 -1
  45. package/dist/modules/custom-plugins/plugins-settings-ui/plugins-settings-ui.service.js.map +1 -1
  46. package/dist/modules/matter-bridges/matter-bridges.gateway.d.ts +22 -0
  47. package/dist/modules/matter-bridges/matter-bridges.gateway.js +170 -0
  48. package/dist/modules/matter-bridges/matter-bridges.gateway.js.map +1 -0
  49. package/dist/modules/matter-bridges/matter-bridges.interfaces.d.ts +59 -0
  50. package/dist/modules/matter-bridges/matter-bridges.interfaces.js +10 -0
  51. package/dist/modules/matter-bridges/matter-bridges.interfaces.js.map +1 -0
  52. package/dist/modules/matter-bridges/matter-bridges.module.d.ts +2 -0
  53. package/dist/modules/matter-bridges/matter-bridges.module.js +37 -0
  54. package/dist/modules/matter-bridges/matter-bridges.module.js.map +1 -0
  55. package/dist/modules/matter-bridges/matter-bridges.service.d.ts +31 -0
  56. package/dist/modules/matter-bridges/matter-bridges.service.js +146 -0
  57. package/dist/modules/matter-bridges/matter-bridges.service.js.map +1 -0
  58. package/dist/modules/plugins/plugins.service.js +33 -0
  59. package/dist/modules/plugins/plugins.service.js.map +1 -1
  60. package/dist/modules/server/server.controller.d.ts +9 -6
  61. package/dist/modules/server/server.controller.js +33 -2
  62. package/dist/modules/server/server.controller.js.map +1 -1
  63. package/dist/modules/server/server.module.js +1 -1
  64. package/dist/modules/server/server.module.js.map +1 -1
  65. package/dist/modules/status/status.controller.d.ts +1 -1
  66. package/dist/modules/status/status.controller.js +3 -1
  67. package/dist/modules/status/status.controller.js.map +1 -1
  68. package/package.json +3 -2
  69. package/public/assets/hap.svg +6 -0
  70. package/public/assets/matter.svg +8 -0
  71. package/public/{chunk-RI7NDYXE.js → chunk-3EEMCOXX.js} +1 -1
  72. package/public/{chunk-NSQLP4XQ.js → chunk-3SPYAVYC.js} +1 -1
  73. package/public/{chunk-ME745R23.js → chunk-45MRBWTN.js} +1 -1
  74. package/public/{chunk-UOWHL3JS.js → chunk-4THME2AO.js} +1 -1
  75. package/public/{chunk-52HVORSV.js → chunk-5B4RGP7P.js} +1 -1
  76. package/public/chunk-5NHNQSBY.js +1 -0
  77. package/public/{chunk-FNES7NAZ.js → chunk-65BC6OEY.js} +1 -1
  78. package/public/{chunk-KCDVFJER.js → chunk-6UJVBU6Q.js} +1 -1
  79. package/public/{chunk-EACBJMOR.js → chunk-6XONIZJH.js} +1 -1
  80. package/public/chunk-6YMQTAOF.js +19 -0
  81. package/public/{chunk-BYQX2GRS.js → chunk-7GRKHAP7.js} +1 -1
  82. package/public/{chunk-7WOXKKE2.js → chunk-7UFFCHMH.js} +1 -1
  83. package/public/chunk-APXVBISC.js +49 -0
  84. package/public/{chunk-WSKDHSB5.js → chunk-BEUIEMBU.js} +1 -1
  85. package/public/{chunk-WXRQQ5BD.js → chunk-BV3UDQFS.js} +1 -1
  86. package/public/{chunk-R4FPIAYB.js → chunk-C6PVSB3L.js} +1 -1
  87. package/public/{chunk-WBIGPPVT.js → chunk-CEOXBLCW.js} +4 -4
  88. package/public/chunk-CEPCEO3W.js +1 -0
  89. package/public/{chunk-ANSL3J73.js → chunk-CTZDKMFO.js} +1 -1
  90. package/public/chunk-DCOG5S65.js +1 -0
  91. package/public/{chunk-DPCPSYPY.js → chunk-DIZQSD54.js} +1 -1
  92. package/public/chunk-DOUSYB6L.js +1 -0
  93. package/public/{chunk-RV2XRE2D.js → chunk-DWGESJFL.js} +1 -1
  94. package/public/{chunk-AKAZC37X.js → chunk-ECLVDJ5G.js} +1 -1
  95. package/public/{chunk-ILQ7SL7D.js → chunk-EL6RIMGW.js} +2 -2
  96. package/public/{chunk-ARXKMFEX.js → chunk-EO2OFTYL.js} +1 -1
  97. package/public/{chunk-FG3G2643.js → chunk-ERP7Y7CZ.js} +1 -1
  98. package/public/{chunk-KM452HFG.js → chunk-ES2W3HQE.js} +1 -1
  99. package/public/{chunk-V7LEKJVQ.js → chunk-F6BJ5XZH.js} +1 -1
  100. package/public/{chunk-VEV7AY3U.js → chunk-GPG64N53.js} +1 -1
  101. package/public/{chunk-DLCW3FCF.js → chunk-HSE662OB.js} +1 -1
  102. package/public/chunk-IU2R7ORW.js +1 -0
  103. package/public/{chunk-TAQAYILQ.js → chunk-JNGSK3ZR.js} +1 -1
  104. package/public/{chunk-SJJTZODI.js → chunk-JR3E32OK.js} +1 -1
  105. package/public/chunk-K3CI5ZO2.js +1 -0
  106. package/public/{chunk-ALRENZKI.js → chunk-KPR57544.js} +1 -1
  107. package/public/chunk-L74KRCJX.js +1 -0
  108. package/public/{chunk-F4ZBFEVD.js → chunk-LIZOYLJA.js} +1 -1
  109. package/public/{chunk-6XQFII2E.js → chunk-LPC6ZQZT.js} +1 -1
  110. package/public/{chunk-XUR2KE5E.js → chunk-M6BP6HSJ.js} +1 -1
  111. package/public/{chunk-NGSNZWF2.js → chunk-MD6P4NXL.js} +1 -1
  112. package/public/{chunk-LI3GXABA.js → chunk-OAZVGJPO.js} +1 -1
  113. package/public/{chunk-BSXL4VI2.js → chunk-OHIFXMDK.js} +1 -1
  114. package/public/chunk-OR5TLS5G.js +1 -0
  115. package/public/{chunk-M3XBSZDS.js → chunk-Q62OVHKR.js} +1 -1
  116. package/public/{chunk-5GPAOI75.js → chunk-QZCKU4E6.js} +1 -1
  117. package/public/{chunk-I3CM52HA.js → chunk-RX2M2DUA.js} +1 -1
  118. package/public/{chunk-66FBS25N.js → chunk-S3ACQCZH.js} +1 -1
  119. package/public/{chunk-NO6P5533.js → chunk-S3PEAO7D.js} +1 -1
  120. package/public/{chunk-TSJSYPRO.js → chunk-S6YTOEAT.js} +1 -1
  121. package/public/{chunk-AK5OP2BS.js → chunk-SGO34VYC.js} +1 -1
  122. package/public/{chunk-DJ6PGGNV.js → chunk-SO2Y7JSS.js} +1 -1
  123. package/public/chunk-SPH2NNMZ.js +4 -0
  124. package/public/{chunk-QOZ5D7SF.js → chunk-SXS3TPZP.js} +1 -1
  125. package/public/{chunk-JPRQZUJ4.js → chunk-TTXUZ63M.js} +1 -1
  126. package/public/{chunk-N45RSOWT.js → chunk-TXXOGRVJ.js} +1 -1
  127. package/public/{chunk-DQZAZG2F.js → chunk-U6DDIXEG.js} +1 -1
  128. package/public/chunk-UTUB67Y5.js +1 -0
  129. package/public/{chunk-ZQRDEGPP.js → chunk-UXTKBDMZ.js} +1 -1
  130. package/public/chunk-V5XBUXNN.js +1 -0
  131. package/public/chunk-VQGLVRRI.js +1 -0
  132. package/public/{chunk-UG5ZE6JE.js → chunk-WCZ6FM7L.js} +1 -1
  133. package/public/{chunk-P4SNIDEK.js → chunk-WTQ5JBLR.js} +1 -1
  134. package/public/{chunk-LVANZD6P.js → chunk-XEJOPOUU.js} +1 -1
  135. package/public/{chunk-2HHIHTIF.js → chunk-XG7WXUZ2.js} +1 -1
  136. package/public/chunk-Z2GZQLTV.js +16 -0
  137. package/public/{chunk-A2TKBIDM.js → chunk-ZU4Z7GGL.js} +1 -1
  138. package/public/index.html +2 -2
  139. package/public/main-JRFJSFGM.js +1 -0
  140. package/public/media/hap-24356SU3.svg +6 -0
  141. package/public/media/matter-P563JGDL.svg +8 -0
  142. package/public/{styles-BYCPUTDK.css → styles-AQTMFMEL.css} +1 -1
  143. package/public/chunk-EB6MB2VJ.js +0 -1
  144. package/public/chunk-EFVV2S7X.js +0 -1
  145. package/public/chunk-FS5CQPMN.js +0 -1
  146. package/public/chunk-H5PLA5CN.js +0 -1
  147. package/public/chunk-I4JRMIU7.js +0 -1
  148. package/public/chunk-IZZICZHP.js +0 -1
  149. package/public/chunk-OLVQZBFA.js +0 -1
  150. package/public/chunk-Q7ANBLGJ.js +0 -4
  151. package/public/chunk-RXHQ7R2N.js +0 -1
  152. package/public/chunk-S36VYQXO.js +0 -16
  153. package/public/chunk-TJFT4ETV.js +0 -19
  154. package/public/chunk-VWQULADU.js +0 -1
  155. package/public/chunk-XCHKRI2H.js +0 -1
  156. package/public/chunk-XNQ5LBVZ.js +0 -49
  157. package/public/chunk-XPFXM5HW.js +0 -1
  158. package/public/main-LAB4VW6X.js +0 -1
@@ -1 +0,0 @@
1
- import{m as J}from"./chunk-7WOXKKE2.js";import{B as H,e as O,l as W,s as z,t as q,v as G}from"./chunk-FNES7NAZ.js";import{d as Y}from"./chunk-FG3G2643.js";import{k as K,l as Q,n as X,q as Z}from"./chunk-EB6MB2VJ.js";import{Db as w,Gb as b,Ib as d,Jc as j,La as s,Vb as c,Wa as D,Wb as g,Xb as h,Yb as V,a as T,ac as F,b as R,bc as U,cc as L,h as M,hc as N,ic as P,ja as y,kb as A,lb as _,mb as u,mc as m,nc as p,oa as v,ob as k,pa as C,pb as E,qb as $,rb as f,sb as o,tb as a,ub as B,w as S}from"./chunk-WBIGPPVT.js";var te=(t,l)=>({"btn-danger":t,"btn-elegant":l}),ie=(t,l,e)=>({"fa-trash":t,"fa-undo":l,"fa-spinner fa-pulse":e});function ne(t,l){t&1&&(o(0,"div",12),B(1,"i",13),a(),o(2,"p",14),c(3),m(4,"translate"),a()),t&2&&(s(3),g(p(4,1,"reset.no_accessories")))}function se(t,l){if(t&1&&(o(0,"option",24),c(1),a()),t&2){let e=l.$implicit;f("value",e._id),s(),V("",e.name," (",e._username,")")}}function oe(t,l){if(t&1){let e=w();o(0,"li",20),c(1),m(2,"translate"),a(),o(3,"li",18)(4,"label",21),c(5),m(6,"translate"),a(),o(7,"div",22)(8,"select",23),L("ngModelChange",function(i){v(e);let r=d(2);return U(r.selectedBridge,i)||(r.selectedBridge=i),C(i)}),b("change",function(i){v(e);let r=d(2);return C(r.onBridgeChange(i.target.value))}),E(9,se,2,3,"option",24,k),a()()()}if(t&2){let e=d(2);s(),g(p(2,3,"form.label.changes_kept")),s(4),g(p(6,5,"reset.accessory_ind.bridge")),s(3),F("ngModel",e.selectedBridge),s(),$(e.pairings)}}function ae(t,l){if(t&1&&(o(0,"li",18)(1,"label",25),c(2),m(3,"translate"),a(),o(4,"div",26),c(5),a()()),t&2){let e=d(2);s(2),g(p(3,2,"reset.accessory_ind.bridge")),s(3),h(" ",e.getCurrentlySelectedBridge()," ")}}function re(t,l){if(t&1){let e=w();o(0,"li",19)(1,"span"),c(2),B(3,"br"),o(4,"small")(5,"span",27),c(6),a()()(),o(7,"button",28),m(8,"translate"),b("click",function(){let i=v(e).$implicit,r=d(2);return C(r.toggleList(i.UUID,i.$cacheFile))}),B(9,"i",29),a()()}if(t&2){let e=l.$implicit,n=d(2);s(2),h(" ",e.displayName),s(4),g(e.UUID),s(),f("disabled",n.clicked)("ngClass",N(8,te,!n.isInList(e.UUID,e.$cacheFile),n.isInList(e.UUID,e.$cacheFile))),A("aria-label",p(8,6,"form.button_delete")),s(2),f("ngClass",P(11,ie,!n.isInList(e.UUID,e.$cacheFile),n.isInList(e.UUID,e.$cacheFile)&&!n.clicked,n.isInList(e.UUID,e.$cacheFile)&&n.clicked))}}function le(t,l){if(t&1&&(o(0,"div",12),B(1,"i",15),a(),o(2,"ul",16)(3,"li"),c(4),m(5,"translate"),a(),o(6,"li"),c(7),m(8,"translate"),a(),o(9,"li"),c(10),m(11,"translate"),a()(),o(12,"ul",17),_(13,oe,11,7),_(14,ae,6,4,"li",18),E(15,re,10,15,"li",19,k),a()),t&2){let e=d();s(4),g(p(5,5,"reset.accessory_ind.list_1")),s(3),g(p(8,7,"reset.accessory_ind.list_2")),s(3),g(p(11,9,"reset.accessory_ind.list_3")),s(3),u(e.pairings.length>1?13:-1),s(),u(e.pairings.length===1?14:-1),s(),$(e.selectedBridgeAccessories)}}function ce(t,l){if(t&1){let e=w();o(0,"button",30),b("click",function(){v(e);let i=d();return C(i.dismissModal())}),c(1),m(2,"translate"),a()}if(t&2){let e=d();f("disabled",e.clicked),s(),h(" ",p(2,2,"form.button_close")," ")}}function de(t,l){if(t&1){let e=w();o(0,"button",31),b("click",function(){v(e);let i=d();return C(i.dismissModal())}),c(1),m(2,"translate"),a()}t&2&&(s(),h(" ",p(2,1,"form.button_close")," "))}function me(t,l){if(t&1&&c(0),t&2){let e=d(3);h(" (",e.toDelete.length,") ")}}function pe(t,l){if(t&1&&(c(0),m(1,"translate"),_(2,me,1,1)),t&2){let e=d(2);h(" ",p(1,2,"form.button_remove")," "),s(2),u(e.toDelete.length>0?2:-1)}}function _e(t,l){t&1&&B(0,"i",33)}function ue(t,l){if(t&1){let e=w();o(0,"button",32),b("click",function(){v(e);let i=d();return C(i.removeAccessories())}),_(1,pe,3,4),_(2,_e,1,0,"i",33),a()}if(t&2){let e=d();f("disabled",!e.toDelete.length||e.clicked),s(),u(e.clicked?-1:1),s(),u(e.clicked?2:-1)}}var ke=(()=>{class t{$activeModal=y(J);$api=y(Z);$router=y(Y);$toastr=y(X);$translate=y(K);selectedBridge="";pairings=[];clicked=!1;selectedBridgeAccessories=[];accessoriesExist=!1;toDelete=[];ngOnInit(){this.loadCachedAccessories()}onBridgeChange(e){this.selectedBridge=e,this.selectedBridgeAccessories=this.pairings.find(n=>n._id===this.selectedBridge)?.accessories}getCurrentlySelectedBridge(){let e=this.pairings.find(n=>n._id===this.selectedBridge);return`${e.name} - ${e._username}`}toggleList(e,n){this.toDelete.some(i=>i.uuid===e&&i.cacheFile===n)?this.toDelete=this.toDelete.filter(i=>i.uuid!==e||i.cacheFile!==n):this.toDelete.push({cacheFile:n,uuid:e})}isInList(e,n){return this.toDelete.some(i=>i.uuid===e&&i.cacheFile===n)}removeAccessories(){return this.clicked=!0,this.$api.delete("/server/cached-accessories",{body:this.toDelete}).subscribe({next:()=>{this.$toastr.success(this.$translate.instant("reset.accessory_ind.done"),this.$translate.instant("toast.title_success")),this.$activeModal.close(),this.$router.navigate(["/restart"],{queryParams:{restarting:!0}})},error:e=>{this.clicked=!1,console.error(e),this.$toastr.error(this.$translate.instant("reset.accessory_ind.fail"),this.$translate.instant("toast.title_error"))}})}dismissModal(){this.$activeModal.dismiss("Dismiss")}loadCachedAccessories(){return M(this,null,function*(){try{let[e,n]=yield Promise.all([S(this.$api.get("/server/cached-accessories")),S(this.$api.get("/server/pairings"))]),i=new Map(n.map(r=>[r._id,R(T({},r),{accessories:[]})]));e.sort((r,x)=>r.displayName.localeCompare(x.displayName)).forEach(r=>{let x=n.find(ee=>ee._main),I=r.$cacheFile?.split(".")?.[1]||x._id;(!this.selectedBridge||this.selectedBridge===I)&&(i.has(I)||i.set(I,{_id:I,_username:I.match(/.{1,2}/g).join(":"),name:this.$translate.instant("reset.accessory_ind.unknown"),accessories:[]}),i.get(I).accessories.push(r))}),this.pairings=Array.from(i.values()).filter(r=>r.accessories.length>0).sort((r,x)=>r._main&&!x._main?-1:!r._main&&x._main?1:r.name.localeCompare(x.name)),this.selectedBridge=this.selectedBridge||this.pairings[0]?._id,this.selectedBridge&&(this.accessoriesExist=!0,this.selectedBridgeAccessories=this.pairings[0].accessories)}catch(e){console.error(e),this.$toastr.error(this.$translate.instant("reset.error_message"),this.$translate.instant("toast.title_error")),this.$activeModal.close()}})}static \u0275fac=function(n){return new(n||t)};static \u0275cmp=D({type:t,selectors:[["ng-component"]],inputs:{selectedBridge:"selectedBridge"},decls:17,vars:12,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click","disabled"],[1,"modal-body"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"disabled"],[1,"text-center"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant"],[1,"text-end"],["type","button","data-bs-dismiss","modal",1,"btn","btn-danger",3,"disabled"],[1,"text-center","mb-3"],[1,"fas","fa-circle-check","primary-text",2,"font-size","75px"],[1,"mb-0","text-center"],[1,"fas","fa-network-wired","primary-text",2,"font-size","75px"],[1,"mb-3"],[1,"list-group","list-group-box","mb-0"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],[1,"list-group-item","d-flex","justify-content-between","align-items-center"],[1,"list-group-item","text-center","grey-text","small"],["for","bridgeSelect",1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-start","text-md-end","w-100","w-md-50"],["id","bridgeSelect",1,"custom-select",3,"ngModelChange","change","ngModel"],[3,"value"],[1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-start","text-md-end","w-100","w-md-50","grey-text","font-monospace"],[1,"font-monospace","grey-text"],[1,"btn","btn-danger","m-0","ms-3",3,"click","disabled","ngClass"],[1,"fas",3,"ngClass"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click","disabled"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],["type","button","data-bs-dismiss","modal",1,"btn","btn-danger",3,"click","disabled"],[1,"fas","fa-spinner","fa-pulse"]],template:function(n,i){n&1&&(o(0,"div",0)(1,"div",1)(2,"h5",2),c(3),m(4,"translate"),a(),o(5,"button",3),m(6,"translate"),b("click",function(){return i.dismissModal()}),a()(),o(7,"div",4),_(8,ne,5,3),_(9,le,17,11),a(),o(10,"div",5)(11,"div",6),_(12,ce,3,4,"button",7),a(),o(13,"div",8),_(14,de,3,3,"button",9),a(),o(15,"div",10),_(16,ue,3,3,"button",11),a()()()),n&2&&(s(3),g(p(4,8,"reset.accessory_ind.title")),s(2),f("disabled",i.clicked),A("aria-label",p(6,10,"form.button_close")),s(3),u(i.accessoriesExist?-1:8),s(),u(i.accessoriesExist?9:-1),s(3),u(i.accessoriesExist?12:-1),s(2),u(i.accessoriesExist?-1:14),s(2),u(i.accessoriesExist?16:-1))},dependencies:[j,H,q,G,z,O,W,Q],encapsulation:2})}return t})();export{ke as a};
@@ -1 +0,0 @@
1
- import{k as tt,n as et,q as it}from"./chunk-EB6MB2VJ.js";import{T as G,e as ut,ea as R,g as ct,gd as X,h as P,ja as Y,n as Q,w as U}from"./chunk-WBIGPPVT.js";var st=ut((J,K)=>{(function(w,D){typeof J=="object"&&typeof K<"u"?K.exports=D():typeof define=="function"&&define.amd?define(D):(w=typeof globalThis<"u"?globalThis:w||self).dayjs=D()})(J,function(){"use strict";var w=1e3,D=6e4,s=36e5,h="millisecond",d="second",m="minute",M="hour",y="day",f="week",b="month",B="quarter",S="year",_="date",E="Invalid Date",nt=/^(\d{4})[-/]?(\d{1,2})?[-/]?(\d{0,2})[Tt\s]*(\d{1,2})?:?(\d{1,2})?:?(\d{1,2})?[.:]?(\d+)?$/,rt=/\[([^\]]+)]|Y{1,4}|M{1,4}|D{1,2}|d{1,4}|H{1,2}|h{1,2}|a|A|m{1,2}|s{1,2}|Z{1,2}|SSS/g,ot={name:"en",weekdays:"Sunday_Monday_Tuesday_Wednesday_Thursday_Friday_Saturday".split("_"),months:"January_February_March_April_May_June_July_August_September_October_November_December".split("_"),ordinal:function(r){var i=["th","st","nd","rd"],t=r%100;return"["+r+(i[(t-20)%10]||i[t]||i[0])+"]"}},N=function(r,i,t){var n=String(r);return!n||n.length>=i?r:""+Array(i+1-n.length).join(t)+r},at={s:N,z:function(r){var i=-r.utcOffset(),t=Math.abs(i),n=Math.floor(t/60),e=t%60;return(i<=0?"+":"-")+N(n,2,"0")+":"+N(e,2,"0")},m:function r(i,t){if(i.date()<t.date())return-r(t,i);var n=12*(t.year()-i.year())+(t.month()-i.month()),e=i.clone().add(n,b),o=t-e<0,a=i.clone().add(n+(o?-1:1),b);return+(-(n+(t-e)/(o?e-a:a-e))||0)},a:function(r){return r<0?Math.ceil(r)||0:Math.floor(r)},p:function(r){return{M:b,y:S,w:f,d:y,D:_,h:M,m,s:d,ms:h,Q:B}[r]||String(r||"").toLowerCase().replace(/s$/,"")},u:function(r){return r===void 0}},j="en",T={};T[j]=ot;var Z="$isDayjsObject",F=function(r){return r instanceof V||!(!r||!r[Z])},C=function r(i,t,n){var e;if(!i)return j;if(typeof i=="string"){var o=i.toLowerCase();T[o]&&(e=o),t&&(T[o]=t,e=o);var a=i.split("-");if(!e&&a.length>1)return r(a[0])}else{var c=i.name;T[c]=i,e=c}return!n&&e&&(j=e),e||!n&&j},g=function(r,i){if(F(r))return r.clone();var t=typeof i=="object"?i:{};return t.date=r,t.args=arguments,new V(t)},u=at;u.l=C,u.i=F,u.w=function(r,i){return g(r,{locale:i.$L,utc:i.$u,x:i.$x,$offset:i.$offset})};var V=(function(){function r(t){this.$L=C(t.locale,null,!0),this.parse(t),this.$x=this.$x||t.x||{},this[Z]=!0}var i=r.prototype;return i.parse=function(t){this.$d=(function(n){var e=n.date,o=n.utc;if(e===null)return new Date(NaN);if(u.u(e))return new Date;if(e instanceof Date)return new Date(e);if(typeof e=="string"&&!/Z$/i.test(e)){var a=e.match(nt);if(a){var c=a[2]-1||0,l=(a[7]||"0").substring(0,3);return o?new Date(Date.UTC(a[1],c,a[3]||1,a[4]||0,a[5]||0,a[6]||0,l)):new Date(a[1],c,a[3]||1,a[4]||0,a[5]||0,a[6]||0,l)}}return new Date(e)})(t),this.init()},i.init=function(){var t=this.$d;this.$y=t.getFullYear(),this.$M=t.getMonth(),this.$D=t.getDate(),this.$W=t.getDay(),this.$H=t.getHours(),this.$m=t.getMinutes(),this.$s=t.getSeconds(),this.$ms=t.getMilliseconds()},i.$utils=function(){return u},i.isValid=function(){return this.$d.toString()!==E},i.isSame=function(t,n){var e=g(t);return this.startOf(n)<=e&&e<=this.endOf(n)},i.isAfter=function(t,n){return g(t)<this.startOf(n)},i.isBefore=function(t,n){return this.endOf(n)<g(t)},i.$g=function(t,n,e){return u.u(t)?this[n]:this.set(e,t)},i.unix=function(){return Math.floor(this.valueOf()/1e3)},i.valueOf=function(){return this.$d.getTime()},i.startOf=function(t,n){var e=this,o=!!u.u(n)||n,a=u.p(t),c=function(x,v){var k=u.w(e.$u?Date.UTC(e.$y,v,x):new Date(e.$y,v,x),e);return o?k:k.endOf(y)},l=function(x,v){return u.w(e.toDate()[x].apply(e.toDate("s"),(o?[0,0,0,0]:[23,59,59,999]).slice(v)),e)},$=this.$W,p=this.$M,L=this.$D,H="set"+(this.$u?"UTC":"");switch(a){case S:return o?c(1,0):c(31,11);case b:return o?c(1,p):c(0,p+1);case f:var O=this.$locale().weekStart||0,A=($<O?$+7:$)-O;return c(o?L-A:L+(6-A),p);case y:case _:return l(H+"Hours",0);case M:return l(H+"Minutes",1);case m:return l(H+"Seconds",2);case d:return l(H+"Milliseconds",3);default:return this.clone()}},i.endOf=function(t){return this.startOf(t,!1)},i.$set=function(t,n){var e,o=u.p(t),a="set"+(this.$u?"UTC":""),c=(e={},e[y]=a+"Date",e[_]=a+"Date",e[b]=a+"Month",e[S]=a+"FullYear",e[M]=a+"Hours",e[m]=a+"Minutes",e[d]=a+"Seconds",e[h]=a+"Milliseconds",e)[o],l=o===y?this.$D+(n-this.$W):n;if(o===b||o===S){var $=this.clone().set(_,1);$.$d[c](l),$.init(),this.$d=$.set(_,Math.min(this.$D,$.daysInMonth())).$d}else c&&this.$d[c](l);return this.init(),this},i.set=function(t,n){return this.clone().$set(t,n)},i.get=function(t){return this[u.p(t)]()},i.add=function(t,n){var e,o=this;t=Number(t);var a=u.p(n),c=function(p){var L=g(o);return u.w(L.date(L.date()+Math.round(p*t)),o)};if(a===b)return this.set(b,this.$M+t);if(a===S)return this.set(S,this.$y+t);if(a===y)return c(1);if(a===f)return c(7);var l=(e={},e[m]=D,e[M]=s,e[d]=w,e)[a]||1,$=this.$d.getTime()+t*l;return u.w($,this)},i.subtract=function(t,n){return this.add(-1*t,n)},i.format=function(t){var n=this,e=this.$locale();if(!this.isValid())return e.invalidDate||E;var o=t||"YYYY-MM-DDTHH:mm:ssZ",a=u.z(this),c=this.$H,l=this.$m,$=this.$M,p=e.weekdays,L=e.months,H=e.meridiem,O=function(v,k,I,W){return v&&(v[k]||v(n,o))||I[k].slice(0,W)},A=function(v){return u.s(c%12||12,v,"0")},x=H||function(v,k,I){var W=v<12?"AM":"PM";return I?W.toLowerCase():W};return o.replace(rt,function(v,k){return k||(function(I){switch(I){case"YY":return String(n.$y).slice(-2);case"YYYY":return u.s(n.$y,4,"0");case"M":return $+1;case"MM":return u.s($+1,2,"0");case"MMM":return O(e.monthsShort,$,L,3);case"MMMM":return O(L,$);case"D":return n.$D;case"DD":return u.s(n.$D,2,"0");case"d":return String(n.$W);case"dd":return O(e.weekdaysMin,n.$W,p,2);case"ddd":return O(e.weekdaysShort,n.$W,p,3);case"dddd":return p[n.$W];case"H":return String(c);case"HH":return u.s(c,2,"0");case"h":return A(1);case"hh":return A(2);case"a":return x(c,l,!0);case"A":return x(c,l,!1);case"m":return String(l);case"mm":return u.s(l,2,"0");case"s":return String(n.$s);case"ss":return u.s(n.$s,2,"0");case"SSS":return u.s(n.$ms,3,"0");case"Z":return a}return null})(v)||a.replace(":","")})},i.utcOffset=function(){return 15*-Math.round(this.$d.getTimezoneOffset()/15)},i.diff=function(t,n,e){var o,a=this,c=u.p(n),l=g(t),$=(l.utcOffset()-this.utcOffset())*D,p=this-l,L=function(){return u.m(a,l)};switch(c){case S:o=L()/12;break;case b:o=L();break;case B:o=L()/3;break;case f:o=(p-$)/6048e5;break;case y:o=(p-$)/864e5;break;case M:o=p/s;break;case m:o=p/D;break;case d:o=p/w;break;default:o=p}return e?o:u.a(o)},i.daysInMonth=function(){return this.endOf(b).$D},i.$locale=function(){return T[this.$L]},i.locale=function(t,n){if(!t)return this.$L;var e=this.clone(),o=C(t,n,!0);return o&&(e.$L=o),e},i.clone=function(){return u.w(this.$d,this)},i.toDate=function(){return new Date(this.valueOf())},i.toJSON=function(){return this.isValid()?this.toISOString():null},i.toISOString=function(){return this.$d.toISOString()},i.toString=function(){return this.$d.toUTCString()},r})(),z=V.prototype;return g.prototype=z,[["$ms",h],["$s",d],["$m",m],["$H",M],["$W",y],["$M",b],["$y",S],["$D",_]].forEach(function(r){z[r[1]]=function(i){return this.$g(i,r[0],r[1])}}),g.extend=function(r,i){return r.$i||(r(i,V,g),r.$i=!0),g},g.locale=C,g.isDayjs=F,g.unix=function(r){return g(1e3*r)},g.en=T[j],g.Ls=T,g.p={},g})});var q=ct(st(),1);var vt=(()=>{class w{$api=Y(it);$title=Y(X);$toastr=Y(et);$translate=Y(tt);settingsLoadedSubject=new Q;defaultTheme="deep-purple";forbiddenKeys=["__proto__","constructor","prototype"];env={};host;proxyHost;formAuth=!0;sessionTimeout=28800;uiVersion;theme;lightingMode;currentLightingMode;actualLightingMode;browserLightingMode;menuMode;keepOrphans;wallpaper;serverTimeOffset=0;rtl=!1;browserLang;onSettingsLoaded=this.settingsLoadedSubject.pipe(G());settingsLoaded=!1;themeList=["orange","red","pink","purple","deep-purple","indigo","blue","blue-grey","cyan","green","teal","grey","brown"];constructor(){this.getAppSettings()}getAppSettings(){return P(this,null,function*(){let s=yield U(this.$api.get("/auth/settings"));this.formAuth=s.formAuth,this.sessionTimeout=s.sessionTimeout,this.env=s.env,this.host=s.host,this.proxyHost=s.proxyHost,this.lightingMode=s.lightingMode,this.wallpaper=s.wallpaper,this.setLightingMode(this.lightingMode,"user"),this.setTheme(s.theme),this.setMenuMode(s.menuMode),this.setKeepOrphans(s.keepOrphans),this.setTitle(this.env.homebridgeInstanceName),this.checkServerTime(s.serverTimestamp),this.setUiVersion(s.env.packageVersion),this.setLang(this.env.lang),this.settingsLoaded=!0,this.settingsLoadedSubject.next(void 0),this.browserLang=this.$translate.getBrowserCultureLang()})}setBrowserLightingMode(s){this.browserLightingMode=s,this.lightingMode==="auto"&&this.setLightingMode(s,"browser")}setLightingMode(s,h){h==="user"&&(this.lightingMode=s),this.currentLightingMode=s,this.actualLightingMode=this.currentLightingMode==="auto"?this.browserLightingMode:this.currentLightingMode,this.theme&&this.setTheme(this.theme)}setTheme(s){(!s||!this.themeList.includes(s))&&(s=this.defaultTheme,U(this.$api.put("/config-editor/ui",{key:"theme",value:s})).catch(m=>console.error("Error saving setTheme:",m)));let h=window.document.querySelector("body");h.classList.remove(`config-ui-x-${this.theme}`),h.classList.remove(`config-ui-x-dark-mode-${this.theme}`),this.theme=s,this.actualLightingMode==="dark"?(h.classList.add(`config-ui-x-dark-mode-${this.theme}`),h.classList.contains("dark-mode")||h.classList.add("dark-mode")):(h.classList.add(`config-ui-x-${this.theme}`),h.classList.contains("dark-mode")&&h.classList.remove("dark-mode")),window.document.querySelectorAll("iframe").forEach((m,M)=>{try{let y=m.contentDocument;if(y){let f=y.body;this.actualLightingMode==="dark"?(f.classList.contains(`config-ui-x-${this.theme}`)&&f.classList.remove(`config-ui-x-${this.theme}`),f.classList.contains(`config-ui-x-dark-mode-${this.theme}`)||f.classList.add(`config-ui-x-dark-mode-${this.theme}`),f.classList.contains("dark-mode")||f.classList.add("dark-mode"),f.style.backgroundColor="#242424 !important",f.style.color="#ffffff !important"):(f.classList.contains(`config-ui-x-${this.theme}`)||f.classList.add(`config-ui-x-${this.theme}`),f.classList.contains(`config-ui-x-dark-mode-${this.theme}`)&&f.classList.remove(`config-ui-x-dark-mode-${this.theme}`),f.classList.contains("dark-mode")&&f.classList.remove("dark-mode"),f.style.backgroundColor="#ffffff !important",f.style.color="#000000 !important"),m.contentWindow.postMessage({type:"theme-update",isDark:this.actualLightingMode==="dark",theme:s},window.location.origin)}}catch(y){console.warn(`Iframe ${M}: Access denied (cross-origin?)`,{error:y,src:m.src})}})}setMenuMode(s){this.menuMode=s}setKeepOrphans(s){this.keepOrphans=s}setLang(s){s?this.$translate.use(s):s="auto",this.env.lang=s}setItem(s,h){this[s]=h}setEnvItem(s,h){if(s.includes(".")){let d=s.split("."),m=this.env;for(let M=0;M<d.length-1;M+=1){if(this.forbiddenKeys.includes(d[M]))return;m[d[M]]||(m[d[M]]={}),m=m[d[M]]}this.forbiddenKeys.includes(d[d.length-1])||(m[d[d.length-1]]=h)}else this.env[s]=h}checkServerTime(s){let d=(0,q.default)(s).diff((0,q.default)(),"hour");this.serverTimeOffset=d*60*60,(d>=8||d<=-8)&&this.$toastr.warning(this.$translate.instant("settings.datetime.incorrect"),this.$translate.instant("toast.title_warning"),{timeOut:2e4,tapToDismiss:!1}).onTap.subscribe(()=>{window.open("https://homebridge.io/w/JqTFs","_blank")})}setUiVersion(s){this.uiVersion||(this.uiVersion=s)}setTitle(s){this.$title.setTitle(s||"Homebridge")}setPageTitle(s){let h=this.env.homebridgeInstanceName||"Homebridge";s?this.$title.setTitle(`${h} \u2014 ${s}`):this.$title.setTitle(h)}static \u0275fac=function(h){return new(h||w)};static \u0275prov=R({token:w,factory:w.\u0275fac,providedIn:"root"})}return w})();export{st as a,vt as b};
@@ -1 +0,0 @@
1
- import{g as i}from"./chunk-FG3G2643.js";import{Xa as e,fa as t}from"./chunk-WBIGPPVT.js";var d=[{path:"",redirectTo:"/",pathMatch:"full"},{path:"docker",loadChildren:()=>import("./chunk-A2TKBIDM.js").then(o=>o.DockerModule)},{path:"linux",loadChildren:()=>import("./chunk-LVANZD6P.js").then(o=>o.LinuxModule)},{path:"terminal",loadChildren:()=>import("./chunk-RI7NDYXE.js").then(o=>o.TerminalModule)}],l=(()=>{class o{static \u0275fac=function(r){return new(r||o)};static \u0275mod=e({type:o});static \u0275inj=t({imports:[i.forChild(d),i]})}return o})();var p=(()=>{class o{static \u0275fac=function(r){return new(r||o)};static \u0275mod=e({type:o});static \u0275inj=t({imports:[l]})}return o})();export{p as PlatformToolsModule};