homebridge-config-ui-x 4.78.2-beta.5 → 4.78.2-beta.7

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 (140) hide show
  1. package/CHANGELOG.md +9 -1
  2. package/dist/main.js +1 -0
  3. package/dist/main.js.map +1 -1
  4. package/package.json +1 -1
  5. package/public/3rdpartylicenses.txt +132 -132
  6. package/public/assets/hap-icons/{airpurifier.svg → air-purifier.svg} +11 -11
  7. package/public/assets/hap-icons/{filtermaintenance.svg → filter-maintenance.svg} +1 -1
  8. package/public/{chunk-DW53RC2J.js → chunk-24HGAFIA.js} +1 -1
  9. package/public/chunk-335BVUT7.js +1 -0
  10. package/public/chunk-3FIZ5SHA.js +1 -0
  11. package/public/chunk-3K6K2EED.js +2 -0
  12. package/public/{chunk-HAZ2TOVS.js → chunk-4SCDQJ67.js} +1 -1
  13. package/public/chunk-5MYMUS7R.js +3 -0
  14. package/public/chunk-5QYOJ5G7.js +1 -0
  15. package/public/chunk-5SOTFW4L.js +1 -0
  16. package/public/{chunk-MA7HSK5I.js → chunk-5XE7ACAJ.js} +16 -16
  17. package/public/chunk-7UNMO36V.js +1 -0
  18. package/public/chunk-CHQMUTDZ.js +4 -0
  19. package/public/chunk-CIJ7JUI4.js +1 -0
  20. package/public/chunk-DFK6HAB2.js +1 -0
  21. package/public/chunk-F3ERQJVG.js +1 -0
  22. package/public/chunk-FSQU6S5U.js +1 -0
  23. package/public/chunk-G7MJKB2I.js +1 -0
  24. package/public/chunk-GMZYTKA7.js +1 -0
  25. package/public/chunk-GW2DVJRQ.js +1 -0
  26. package/public/chunk-HDDSK4T6.js +1 -0
  27. package/public/chunk-HDIZOXS3.js +1 -0
  28. package/public/chunk-HVYATWTL.js +1 -0
  29. package/public/chunk-IN7NZAFJ.js +1 -0
  30. package/public/chunk-J4CE5VUG.js +1 -0
  31. package/public/chunk-J6YDFLQQ.js +1 -0
  32. package/public/chunk-JKFIZ5HO.js +1 -0
  33. package/public/chunk-JL52RNPX.js +1 -0
  34. package/public/chunk-KX4HFAMS.js +1 -0
  35. package/public/chunk-KZXWMOV5.js +1 -0
  36. package/public/chunk-M7Q25OA7.js +12 -0
  37. package/public/chunk-N2BRDQMV.js +1 -0
  38. package/public/chunk-NFOOVJXR.js +23 -0
  39. package/public/chunk-NHCHG3Z6.js +1 -0
  40. package/public/chunk-NJPGGFP6.js +1 -0
  41. package/public/{chunk-PZ4EJUWJ.js → chunk-OCUYP77B.js} +1 -1
  42. package/public/{chunk-HYRHD4VJ.js → chunk-OFS35DEJ.js} +1 -1
  43. package/public/chunk-OQR4JGQQ.js +1 -0
  44. package/public/{chunk-MOMFYMZX.js → chunk-PBJK6VW5.js} +1 -1
  45. package/public/chunk-RCXJKKFJ.js +1 -0
  46. package/public/chunk-RDHSN5YP.js +1 -0
  47. package/public/chunk-RPGBJBQM.js +1 -0
  48. package/public/chunk-RTYG6XT7.js +1 -0
  49. package/public/chunk-SRAPPW2T.js +4 -0
  50. package/public/chunk-TQNKRJOX.js +1 -0
  51. package/public/chunk-TTFPDSBH.js +20 -0
  52. package/public/chunk-UJKWN6WW.js +1 -0
  53. package/public/{chunk-YTSL4WKW.js → chunk-UQYCFN3T.js} +1 -1
  54. package/public/chunk-V5SJINUD.js +1 -0
  55. package/public/chunk-WBSGPRW6.js +1 -0
  56. package/public/chunk-WIKVE33G.js +1 -0
  57. package/public/chunk-YO4OJGZL.js +1 -0
  58. package/public/chunk-ZYZKPRJW.js +5 -0
  59. package/public/index.html +1 -1
  60. package/public/main-HK64V7MI.js +1 -0
  61. package/public/chunk-2BG2CSJ2.js +0 -1
  62. package/public/chunk-3BLUUVJH.js +0 -1
  63. package/public/chunk-3JILA3K4.js +0 -5
  64. package/public/chunk-4SA4GMB2.js +0 -1
  65. package/public/chunk-4SWQFHHP.js +0 -1
  66. package/public/chunk-56PY5QTA.js +0 -1
  67. package/public/chunk-5ZWZPDTW.js +0 -1
  68. package/public/chunk-7FD3EC7J.js +0 -1
  69. package/public/chunk-7LNTGSCN.js +0 -1
  70. package/public/chunk-7X55NKR3.js +0 -20
  71. package/public/chunk-AC3XUOVQ.js +0 -1
  72. package/public/chunk-AY7YHLF5.js +0 -1
  73. package/public/chunk-B3U7UOR3.js +0 -1
  74. package/public/chunk-BM6T3M62.js +0 -6
  75. package/public/chunk-C5CQZHR2.js +0 -1
  76. package/public/chunk-D5A7AKWO.js +0 -1
  77. package/public/chunk-DBKYJGLQ.js +0 -1
  78. package/public/chunk-DDARHLW6.js +0 -1
  79. package/public/chunk-DEVBRHQE.js +0 -1
  80. package/public/chunk-ECZQTQYF.js +0 -4
  81. package/public/chunk-EIRMDXFU.js +0 -1
  82. package/public/chunk-EOTSCZHB.js +0 -1
  83. package/public/chunk-F35OKPJJ.js +0 -1
  84. package/public/chunk-FBAFQRNU.js +0 -2
  85. package/public/chunk-FGF4IVHI.js +0 -1
  86. package/public/chunk-FLUPYWZS.js +0 -1
  87. package/public/chunk-FPYIY6YX.js +0 -1
  88. package/public/chunk-G7WIBZOG.js +0 -1
  89. package/public/chunk-H6HTVCWS.js +0 -1
  90. package/public/chunk-HKCMS5E6.js +0 -1
  91. package/public/chunk-IF3KFND5.js +0 -1
  92. package/public/chunk-IIPUK2BI.js +0 -23
  93. package/public/chunk-J74LBPGO.js +0 -1
  94. package/public/chunk-JODV6RHA.js +0 -1
  95. package/public/chunk-LDLY2W2L.js +0 -12
  96. package/public/chunk-LIR7QVML.js +0 -1
  97. package/public/chunk-M2S3C4EG.js +0 -1
  98. package/public/chunk-MXARL4DO.js +0 -1
  99. package/public/chunk-N53PZ7G7.js +0 -1
  100. package/public/chunk-NPI2SMFS.js +0 -1
  101. package/public/chunk-OAFL5KUH.js +0 -1
  102. package/public/chunk-OTZLBFXM.js +0 -1
  103. package/public/chunk-OVZ7RBX7.js +0 -1
  104. package/public/chunk-P2K2XE6W.js +0 -1
  105. package/public/chunk-PEVVFCXI.js +0 -1
  106. package/public/chunk-QAMMYHW2.js +0 -1
  107. package/public/chunk-QY46HWDD.js +0 -1
  108. package/public/chunk-R53BOK3Z.js +0 -1
  109. package/public/chunk-RKB6QR63.js +0 -1
  110. package/public/chunk-SOHPXRDW.js +0 -1
  111. package/public/chunk-SOOC2JQJ.js +0 -1
  112. package/public/chunk-SWAUKWH7.js +0 -1
  113. package/public/chunk-V53MRZ5F.js +0 -1
  114. package/public/chunk-VYOUOZE7.js +0 -1
  115. package/public/chunk-WVNHIT6J.js +0 -1
  116. package/public/chunk-XHKH2R5G.js +0 -1
  117. package/public/chunk-YPA2CDCH.js +0 -1
  118. package/public/chunk-ZVHPQCQY.js +0 -1
  119. package/public/main-OTQSSOQS.js +0 -1
  120. /package/public/assets/hap-icons/{airquality.svg → air-quality-sensor.svg} +0 -0
  121. /package/public/assets/hap-icons/{co2-sensor.svg → carbon-dioxide-sensor.svg} +0 -0
  122. /package/public/assets/hap-icons/{co-sensor.svg → carbon-monoxide-sensor.svg} +0 -0
  123. /package/public/assets/hap-icons/{contactsensor-closed.svg → contact-sensor-closed.svg} +0 -0
  124. /package/public/assets/hap-icons/{contactsensor-open.svg → contact-sensor-open.svg} +0 -0
  125. /package/public/assets/hap-icons/{garagedoor.svg → garage-door.svg} +0 -0
  126. /package/public/assets/hap-icons/{humidity.svg → humidity-sensor.svg} +0 -0
  127. /package/public/assets/hap-icons/{leaksensor.svg → leak-sensor.svg} +0 -0
  128. /package/public/assets/hap-icons/{lightbulb.svg → light-bulb.svg} +0 -0
  129. /package/public/assets/hap-icons/{light.svg → light-sensor.svg} +0 -0
  130. /package/public/assets/hap-icons/{motionsensor.svg → motion-sensor.svg} +0 -0
  131. /package/public/assets/hap-icons/{occupancysensor.svg → occupancy-sensor.svg} +0 -0
  132. /package/public/assets/hap-icons/{securitysystem-active.svg → security-system-active.svg} +0 -0
  133. /package/public/assets/hap-icons/{securitysystem-off.svg → security-system-off.svg} +0 -0
  134. /package/public/assets/hap-icons/{securitysystem-triggered.svg → security-system-triggered.svg} +0 -0
  135. /package/public/assets/hap-icons/{smokesensor.svg → smoke-sensor.svg} +0 -0
  136. /package/public/assets/hap-icons/{statelessprogrammableswitch.svg → stateless-programmable-switch.svg} +0 -0
  137. /package/public/assets/hap-icons/{valve-waterfaucet.svg → valve-faucet.svg} +0 -0
  138. /package/public/assets/hap-icons/{valve-showerhead.svg → valve-shower-head.svg} +0 -0
  139. /package/public/assets/hap-icons/{windowcovering-closed.svg → window-covering-closed.svg} +0 -0
  140. /package/public/assets/hap-icons/{windowcovering-open.svg → window-covering-open.svg} +0 -0
@@ -0,0 +1 @@
1
+ import{a as Se}from"./chunk-F3ERQJVG.js";import{l as ke,n as Q}from"./chunk-5XE7ACAJ.js";import{a as H}from"./chunk-UQYCFN3T.js";import"./chunk-GDFV4BMO.js";import{a as Be}from"./chunk-NGNQPAAK.js";import"./chunk-QDCKP2LU.js";import"./chunk-4SCDQJ67.js";import"./chunk-UD6SVFW2.js";import"./chunk-7EQ4BJZB.js";import"./chunk-EGCUYKRH.js";import{a as ye}from"./chunk-TQNKRJOX.js";import{g as _e,h as Ce,i as he,j as be,k as ve,l as xe,m as $,n as O,t as U}from"./chunk-CF2ZN7LY.js";import{A as fe,c as le,e as re,f as se,g as de,j as pe,m as ce,p as ue,q as me,z as ge}from"./chunk-T252YJXA.js";import{a as W}from"./chunk-OFS35DEJ.js";import"./chunk-24HGAFIA.js";import{a as we,d as Pe}from"./chunk-X7PVYZAE.js";import{b as G}from"./chunk-PBJK6VW5.js";import{k as R,n as L}from"./chunk-OCUYP77B.js";import{a as q,b as B}from"./chunk-LXXELGX4.js";import"./chunk-SRP6QX5M.js";import{Bc as r,Cc as s,Dc as E,Hb as y,Ib as m,Jb as g,Lb as j,Mb as F,Nb as z,Ob as C,Pb as a,Qb as l,Rb as d,Vb as w,Xa as N,Ya as T,Yb as _,Za as Z,Zb as f,ab as n,bc as ee,cc as ie,cd as M,dc as te,fd as ae,h as k,jc as J,jd as oe,kc as c,la as P,lc as h,mb as S,mc as b,ra as v,sa as x,uc as K,w as D,xc as V,yc as I,zc as ne}from"./chunk-SKZUTSHE.js";var Ne=t=>({pluginName:t});function He(t,p){t&1&&(a(0,"ul",7)(1,"li"),c(2),r(3,"translate"),l(),a(4,"li"),c(5),r(6,"translate"),l()()),t&2&&(n(2),h(s(3,2,"plugins.manage.confirm_disable_accessory_1")),n(3),h(s(6,4,"plugins.manage.confirm_disable_accessory_2")))}function Ae(t,p){t&1&&(a(0,"ul",7)(1,"li"),c(2),r(3,"translate"),l(),a(4,"li"),c(5),r(6,"translate"),l()()),t&2&&(n(2),h(s(3,2,"plugins.manage.confirm_disable_platform_1")),n(3),h(s(6,4,"plugins.manage.confirm_disable_platform_2")))}var Ie=(()=>{class t{$activeModal=P($);pluginName;isConfigured=!1;isConfiguredDynamicPlatform=!1;dismissModal(){this.$activeModal.dismiss("Dismiss")}closeModal(){this.$activeModal.close()}static \u0275fac=function(o){return new(o||t)};static \u0275cmp=S({type:t,selectors:[["ng-component"]],inputs:{pluginName:"pluginName",isConfigured:"isConfigured",isConfiguredDynamicPlatform:"isConfiguredDynamicPlatform"},decls:26,vars:22,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body"],[1,"mb-3","text-center"],[1,"fas","fa-fw","fa-circle-pause","primary-text",2,"font-size","75px"],[1,"mb-3"],["type","warning",1,"mb-0",3,"dismissible"],[1,"w-100","text-center","mb-0"],[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",1,"btn","btn-danger",3,"click"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1)(2,"h5",2),c(3),l(),a(4,"button",3),r(5,"translate"),_("click",function(){return i.dismissModal()}),l()(),a(6,"div",4)(7,"div",5),d(8,"i",6),l(),m(9,He,7,6,"ul",7),m(10,Ae,7,6,"ul",7),a(11,"ngb-alert",8)(12,"p",9),c(13),r(14,"translate"),l()()(),a(15,"div",10)(16,"div",11)(17,"button",12),r(18,"translate"),_("click",function(){return i.dismissModal()}),c(19),r(20,"translate"),l()(),d(21,"div",13),a(22,"div",14)(23,"button",15),_("click",function(){return i.closeModal()}),c(24),r(25,"translate"),l()()()()),o&2&&(n(3),h(i.pluginName),n(),y("aria-label",s(5,9,"form.button_close")),n(5),g(i.isConfigured&&!i.isConfiguredDynamicPlatform?9:-1),n(),g(i.isConfigured&&i.isConfiguredDynamicPlatform?10:-1),n(),C("dismissible",!1),n(2),h(E(14,11,"plugins.manage.confirm_disable",V(20,Ne,i.pluginName))),n(4),y("aria-label",s(18,14,"form.button_close")),n(2),b(" ",s(20,16,"form.button_close")," "),n(5),b(" ",s(25,18,"plugins.manage.disable")," "))},dependencies:[_e,B],encapsulation:2})}return t})();var je=t=>({author:t});function Fe(t,p){if(t&1&&(a(0,"li",9),d(1,"i",15),a(2,"a",16),c(3),l()()),t&2){let e=p.$implicit,o=f();n(),C("ngClass",o.getIconClass(e.type)),n(),C("href",e.url,T),n(),h(e.url)}}var Te=(()=>{class t{$activeModal=P($);plugin;fundingOptions;ngOnInit(){this.plugin.funding||this.$activeModal.close(),this.plugin.name==="homebridge-config-ui-x"&&(this.plugin.author="oznu"),Array.isArray(this.plugin.funding)?this.fundingOptions=this.plugin.funding.map(e=>{if(typeof e=="string")return{type:"other",url:e};if(typeof e=="object")return{type:e.type||"other",url:e.url}}):typeof this.plugin.funding=="string"?this.fundingOptions=[{type:"other",url:this.plugin.funding}]:typeof this.plugin.funding=="object"&&(this.fundingOptions=[{type:this.plugin.funding.type||"other",url:this.plugin.funding.url}])}getIconClass(e){switch(e.toLowerCase()){case"paypal":return"fab fa-fw fa-paypal";case"github":return"fab fa-fw fa-github";case"patreon":return"fab fa-fw fa-patreon";case"kofi":case"ko-fi":return"fas fa-fw fa-coffee";default:return"fas fa-fw fa-link"}}dismissModal(){this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(o){return new(o||t)};static \u0275cmp=S({type:t,selectors:[["ng-component"]],inputs:{plugin:"plugin"},decls:28,vars:21,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body"],[1,"text-center","pink-text","mb-3"],[1,"fas","fa-fw","fa-heart",2,"font-size","75px"],[1,"mb-3"],[1,"list-group","list-group-box"],[1,"list-group-item"],[1,"modal-footer","justify-content-between"],[1,"text-start"],[1,"text-center"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-end"],[1,"me-2","primary-text","fa-fw","fa-xl",3,"ngClass"],["target","_blank","rel","noopener noreferrer",1,"text-break-all",3,"href"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1)(2,"h5",2),c(3),r(4,"translate"),l(),a(5,"button",3),r(6,"translate"),_("click",function(){return i.dismissModal()}),l()(),a(7,"div",4)(8,"div",5),d(9,"i",6),l(),a(10,"ul",7)(11,"li"),c(12),r(13,"translate"),l(),a(14,"li"),c(15),r(16,"translate"),l()(),a(17,"ul",8),F(18,Fe,4,3,"li",9,j),l()(),a(20,"div",10),d(21,"div",11),a(22,"div",12)(23,"button",13),r(24,"translate"),_("click",function(){return i.dismissModal()}),c(25),r(26,"translate"),l()(),d(27,"div",14),l()()),o&2&&(n(3),h(E(4,6,"plugins.donate.tile_donate_to",V(19,je,"@"+i.plugin.author))),n(2),y("aria-label",s(6,9,"form.button_close")),n(7),h(s(13,11,"plugins.donate.message_1")),n(3),h(s(16,13,"plugins.donate.message_2")),n(3),z(i.fundingOptions),n(5),y("aria-label",s(24,15,"form.button_close")),n(2),b(" ",s(26,17,"form.button_close")," "))},dependencies:[M,B],styles:[".text-break-all[_ngcontent-%COMP%]{word-break:break-all}"]})}return t})();var ze=(t,p)=>({"orange-text":t,"grey-text":p}),X=t=>({opacity:t}),Oe=(t,p)=>({"green-text":t,"grey-text":p}),Ue=(t,p)=>({"purple-text":t,"grey-text":p}),qe=(t,p)=>({scopedLink:t,verifiedLink:p});function Re(t,p){t&1&&(a(0,"h6",18),c(1),r(2,"translate"),l(),a(3,"p",19),c(4),r(5,"translate"),l(),a(6,"p",19),c(7),r(8,"translate"),l()),t&2&&(n(),h(s(2,3,"plugins.manage.scoped_subtitle")),n(3),h(s(5,5,"plugins.manage.scoped_message")),n(3),h(s(8,7,"plugins.manage.verified_message")))}function Le(t,p){t&1&&(a(0,"h6",18),c(1),r(2,"translate"),l(),a(3,"p",19),c(4),r(5,"translate"),l()),t&2&&(n(),h(s(2,2,"plugins.manage.verified_subtitle")),n(3),h(s(5,4,"plugins.manage.verified_message")))}function Ge(t,p){t&1&&(a(0,"h6",18),c(1),r(2,"translate"),l(),a(3,"p",19),c(4),r(5,"translate"),l()),t&2&&(n(),h(s(2,2,"plugins.manage.unverified_subtitle")),n(3),h(s(5,4,"plugins.manage.unverified_message")))}function We(t,p){if(t&1){let e=w();a(0,"button",20),_("click",function(){v(e);let i=f();return x(i.dismissModal())}),c(1),r(2,"translate"),l()}t&2&&(n(),b(" ",s(2,1,"form.button_close")," "))}function Qe(t,p){if(t&1){let e=w();a(0,"button",20),_("click",function(){v(e);let i=f();return x(i.dismissModal())}),c(1),r(2,"translate"),l()}t&2&&(n(),b(" ",s(2,1,"form.button_close")," "))}function Je(t,p){if(t&1&&(a(0,"a",17),c(1),r(2,"translate"),d(3,"i",21),l()),t&2){let e=f();C("href",e.plugin.links.homepage||e.plugin.links.npm,T),n(),b(" ",s(2,2,"plugins.button_homepage")," ")}}var Ve=(()=>{class t{$activeModal=P($);plugin;defaultIcon="assets/hb-icon.png";linkScoped='<a href="https://github.com/homebridge/plugins/wiki/Scoped-Plugins" target="_blank"><i class="fas fa-fw fa-external-link-alt primary-text"></i></a>';linkVerified='<a href="https://github.com/homebridge/plugins/wiki/Verified-Plugins" target="_blank"><i class="fas fa-fw fa-external-link-alt primary-text"></i></a>';ngOnInit(){this.plugin.icon||(this.plugin.icon=this.defaultIcon)}handleIconError(){this.plugin.icon=this.defaultIcon}dismissModal(){this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(o){return new(o||t)};static \u0275cmp=S({type:t,selectors:[["ng-component"]],inputs:{plugin:"plugin"},decls:32,vars:45,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"],["alt","Plugin Icon",1,"mb-3","plugin-icon-card",3,"error","src"],[1,"mb-1"],[1,"grey-text","mb-0","font-monospace"],[1,"grey-text","mb-1","font-monospace"],[1,"mb-3"],[1,"fas","fa-fw","fa-shield-alt","mb-3",2,"font-size","48px",3,"ngClass","ngStyle"],[1,"mb-0","grey-text",3,"innerHTML"],[1,"modal-footer","justify-content-between"],[1,"text-start"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant"],[1,"text-center"],[1,"text-end"],["target","_blank","rel","noopener noreferrer",1,"btn","btn-primary","text-decoration-none",3,"href"],[1,"mb-2"],[1,"mb-1","grey-text"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"fas","fa-fw","fa-external-link-alt"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1)(2,"h5",2),c(3),r(4,"translate"),l(),a(5,"button",3),r(6,"translate"),_("click",function(){return i.dismissModal()}),l()(),a(7,"div",4)(8,"img",5),_("error",function(){return i.handleIconError()}),l(),a(9,"h4",6),c(10),l(),a(11,"p",7),c(12),l(),a(13,"p",8),c(14),l(),a(15,"p",9),c(16),l(),d(17,"i",10)(18,"i",10)(19,"i",10),m(20,Re,9,9),m(21,Le,6,6),m(22,Ge,6,6),d(23,"p",11),r(24,"translate"),l(),a(25,"div",12)(26,"div",13),m(27,We,3,3,"button",14),l(),a(28,"div",15),m(29,Qe,3,3,"button",14),l(),a(30,"div",16),m(31,Je,4,4,"a",17),l()()()),o&2&&(n(3),h(s(4,20,"plugins.manage.information")),n(2),y("aria-label",s(6,22,"form.button_close")),n(3),C("src",i.plugin.icon,T),n(2),h(i.plugin.displayName),n(2),h(i.plugin.name),n(2),b("@",i.plugin.author),n(2),h(i.plugin.description),n(),C("ngClass",I(27,ze,!i.plugin.verifiedPlugin&&!i.plugin.verifiedPlusPlugin,i.plugin.verifiedPlugin||i.plugin.verifiedPlusPlugin))("ngStyle",V(30,X,!i.plugin.verifiedPlugin&&!i.plugin.verifiedPlusPlugin?1:.25)),n(),C("ngClass",I(32,Oe,!i.plugin.isHbScoped&&(i.plugin.verifiedPlugin||i.plugin.verifiedPlusPlugin),i.plugin.isHbScoped||!i.plugin.verifiedPlugin&&!i.plugin.verifiedPlusPlugin))("ngStyle",V(35,X,!i.plugin.isHbScoped&&(i.plugin.verifiedPlugin||i.plugin.verifiedPlusPlugin)?1:.25)),n(),C("ngClass",I(37,Ue,i.plugin.isHbScoped,!i.plugin.isHbScoped))("ngStyle",V(40,X,i.plugin.isHbScoped?1:.25)),n(),g(i.plugin.isHbScoped?20:-1),n(),g(!i.plugin.isHbScoped&&(i.plugin.verifiedPlugin||i.plugin.verifiedPlusPlugin)?21:-1),n(),g(!i.plugin.verifiedPlugin&&!i.plugin.verifiedPlusPlugin?22:-1),n(),C("innerHTML",E(24,24,"plugins.manage.more_info",I(42,qe,i.linkScoped,i.linkVerified)),N),n(4),g(i.plugin.links.homepage||i.plugin.links.npm?27:-1),n(2),g(!i.plugin.links.homepage&&!i.plugin.links.npm?29:-1),n(2),g(i.plugin.links.homepage||i.plugin.links.npm?31:-1))},dependencies:[B,M,ae],styles:[".plugin-icon[_ngcontent-%COMP%]{height:75px;width:75px;border-radius:15px;border:1px solid #222222}"]})}return t})();var Ke=(t,p,e)=>({"purple-text":t,"green-text":p,"orange-text":e}),Xe=(t,p)=>({"fa-bridge-circle-exclamation orange-text":t,"fa-bridge-circle-xmark red-text":p});function Ye(t,p){if(t&1){let e=w();a(0,"a",23),r(1,"translate"),r(2,"translate"),_("click",function(){v(e);let i=f();return x(i.checkAndUpdatePlugin())}),d(3,"i",24),l()}t&2&&(C("ngbTooltip",s(1,2,"plugins.button_update")),y("aria-label",s(2,4,"plugins.button_update")))}function Ze(t,p){if(t&1){let e=w();a(0,"a",23),r(1,"translate"),r(2,"translate"),_("click",function(){v(e);let i=f();return x(i.switchToScoped())}),d(3,"i",25),l()}t&2&&(C("ngbTooltip",s(1,2,"plugins.manage.scoped.switch")),y("aria-label",s(2,4,"plugins.manage.scoped.switch")))}function ei(t,p){if(t&1){let e=w();a(0,"a",23),r(1,"translate"),r(2,"translate"),_("click",function(){v(e);let i=f();return x(i.openSettings())}),d(3,"i",26),l()}t&2&&(C("ngbTooltip",s(1,2,"plugins.button_set_up")),y("aria-label",s(2,4,"plugins.button_set_up")))}function ii(t,p){if(t&1){let e=w();a(0,"a",23),r(1,"translate"),r(2,"translate"),_("click",function(){v(e);let i=f();return x(i.openBridgeSettings())}),d(3,"i",27),l()}t&2&&(C("ngbTooltip",s(1,2,"child_bridge.setup")),y("aria-label",s(2,4,"child_bridge.setup")))}function ti(t,p){if(t&1){let e=w();a(0,"a",23),r(1,"translate"),r(2,"translate"),_("click",function(){v(e);let i=f();return x(i.openBridgeSettings())}),d(3,"i",28),l()}t&2&&(C("ngbTooltip",s(1,2,"child_bridge.bridge_connect")),y("aria-label",s(2,4,"child_bridge.bridge_connect")))}function ni(t,p){if(t&1&&d(0,"i",12),t&2){let e=f();C("ngClass",I(1,Xe,e.childBridgeStatus==="pending",e.childBridgeStatus==="down"))}}function ai(t,p){if(t&1){let e=w();a(0,"a",14),_("click",function(){v(e);let i=f();return x(i.openFundingModal(i.plugin))}),d(1,"i",29),a(2,"span",16),c(3),l()()}if(t&2){let e=f();n(3),b("@",e.plugin.author)}}function oi(t,p){if(t&1&&(a(0,"span",16),d(1,"i",30),c(2),l()),t&2){let e=f();n(2),b("@",e.plugin.author," ")}}function li(t,p){if(t&1&&(a(0,"span"),c(1),r(2,"date"),l()),t&2){let e=f(2);n(),b("(",E(2,1,e.plugin.lastUpdated,"yyyy-MM-dd"),")")}}function ri(t,p){if(t&1&&(a(0,"span"),d(1,"i",31),a(2,"span",16),c(3),m(4,li,3,4,"span"),l()()),t&2){let e=f();n(3),b("v",e.plugin.latestVersion," "),n(),g(e.plugin.lastUpdated?4:-1)}}function si(t,p){if(t&1&&(d(0,"i",32),c(1)),t&2){let e=f();n(),b("v",e.plugin.installedVersion," ")}}function di(t,p){if(t&1){let e=w();a(0,"a",23),r(1,"translate"),_("click",function(){v(e);let i=f();return x(i.doChildBridgeAction("restart"))}),d(2,"i",33),l()}if(t&2){let e=f();C("ngbTooltip",s(1,1,e.setChildBridges.length>1?"child_bridge.restart_plural":"child_bridge.restart"))}}function pi(t,p){if(t&1){let e=w();a(0,"a",34),_("click",function(){v(e);let i=f();return x(i.enablePlugin(i.plugin))}),d(1,"i",35),r(2,"translate"),l()}t&2&&(n(),C("ngbTooltip",s(2,1,"plugins.status_disabled")))}function ci(t,p){if(t&1){let e=w();a(0,"a",36),_("click",function(){v(e);let i=f();return x(i.installAlternateVersion())}),d(1,"i",37),l()}}function ui(t,p){if(t&1){let e=w();a(0,"button",41),_("click",function(){v(e);let i=f(2);return x(i.viewPluginLog())}),d(1,"i",46),c(2),r(3,"translate"),l()}t&2&&(n(2),b(" ",s(3,1,"plugins.manage.plugin_logs")," "))}function mi(t,p){if(t&1){let e=w();a(0,"button",41),_("click",function(){v(e);let i=f(2);return x(i.installAlternateVersion())}),d(1,"i",47),c(2),r(3,"translate"),l()}t&2&&(n(2),b(" ",s(3,1,"plugins.manage.manage_version")," "))}function gi(t,p){if(t&1){let e=w();a(0,"button",41),_("click",function(){v(e);let i=f(2);return x(i.openJsonEditor())}),d(1,"i",48),c(2),r(3,"translate"),l()}t&2&&(n(2),b(" ",s(3,1,"plugins.manage.json_config")," "))}function fi(t,p){if(t&1){let e=w();a(0,"button",41),_("click",function(){v(e);let i=f(2);return x(i.disablePlugin(i.plugin))}),d(1,"i",49),c(2),r(3,"translate"),l()}t&2&&(n(2),b(" ",s(3,1,"plugins.manage.disable")," "))}function _i(t,p){if(t&1){let e=w();a(0,"button",41),_("click",function(){v(e);let i=f(2);return x(i.enablePlugin(i.plugin))}),d(1,"i",50),c(2),r(3,"translate"),l()}t&2&&(n(2),b(" ",s(3,1,"plugins.manage.enable")," "))}function Ci(t,p){if(t&1){let e=w();a(0,"button",41),_("click",function(){v(e);let i=f(2);return x(i.uninstallPlugin())}),d(1,"i",51),c(2),r(3,"translate"),l()}t&2&&(n(2),b(" ",s(3,1,"plugins.button_uninstall")," "))}function hi(t,p){t&1&&d(0,"div",44)}function bi(t,p){if(t&1){let e=w();a(0,"button",41),_("click",function(){v(e);let i=f(3);return x(i.doChildBridgeAction("restart"))}),d(1,"i",53),c(2),r(3,"translate"),l()}if(t&2){let e=f(3);n(2),b(" ",s(3,1,e.setChildBridges.length>1?"child_bridge.restart_plural":"child_bridge.restart")," ")}}function vi(t,p){if(t&1){let e=w();a(0,"button",41),_("click",function(){v(e);let i=f(3);return x(i.doChildBridgeAction("stop"))}),d(1,"i",54),c(2),r(3,"translate"),l()}if(t&2){let e=f(3);n(2),b(" ",s(3,1,e.setChildBridges.length>1?"child_bridge.stop_plural":"child_bridge.stop")," ")}}function xi(t,p){if(t&1){let e=w();a(0,"button",41),_("click",function(){v(e);let i=f(3);return x(i.doChildBridgeAction("start"))}),d(1,"i",55),c(2),r(3,"translate"),l()}if(t&2){let e=f(3);n(2),b(" ",s(3,1,e.setChildBridges.length>1?"child_bridge.start_plural":"child_bridge.start")," ")}}function wi(t,p){if(t&1){let e=w();a(0,"button",41),_("click",function(){v(e);let i=f(3);return x(i.resetChildBridges())}),d(1,"i",56),c(2),r(3,"translate"),l()}t&2&&(n(2),b(" ",s(3,1,"child_bridge.reset_accessories")," "))}function Pi(t,p){if(t&1){let e=w();a(0,"button",41),_("click",function(){v(e);let i=f(2);return x(i.openBridgeSettings())}),d(1,"i",52),c(2),r(3,"translate"),l(),m(4,bi,4,3,"button",43),m(5,vi,4,3,"button",43),m(6,xi,4,3,"button",43),m(7,wi,4,3,"button",43)}if(t&2){let e=f(2);n(2),b(" ",s(3,5,"child_bridge.bridge_settings")," "),n(2),g(e.childBridgeRestartInProgress?-1:4),n(),g(e.allChildBridgesStopped?-1:5),n(),g(e.allChildBridgesStopped?6:-1),n(),g(e.serviceMode?7:-1)}}function yi(t,p){t&1&&d(0,"div",44)}function Si(t,p){if(t&1){let e=w();a(0,"button",41),_("click",function(){v(e);let i=f(2);return x(i.openBridgeSettings())}),d(1,"i",57),c(2),r(3,"translate"),l()}t&2&&(n(2),b(" ",s(3,1,"child_bridge.setup")," "))}function Bi(t,p){t&1&&d(0,"div",44)}function ki(t,p){if(t&1){let e=w();a(0,"button",41),_("click",function(){v(e);let i=f(2);return x(i.openBridgeSettings())}),d(1,"i",57),c(2),r(3,"translate"),l()}t&2&&(n(2),b(" ",s(3,1,"child_bridge.setup")," "))}function Ii(t,p){t&1&&d(0,"div",44)}function Ti(t,p){if(t&1&&(a(0,"a",45),d(1,"i",58),c(2),r(3,"translate"),l()),t&2){let e=f(2);C("href",e.plugin.links.bugs,T),n(2),b(" ",s(3,2,"support.links.issue")," ")}}function Vi(t,p){if(t&1){let e=w();a(0,"span",22)(1,"a",38),d(2,"i",39),l(),a(3,"div",40)(4,"button",41),_("click",function(){v(e);let i=f();return x(i.openSettings())}),d(5,"i",42),c(6),r(7,"translate"),l(),m(8,ui,4,3,"button",43),m(9,mi,4,3,"button",43),m(10,gi,4,3,"button",43),m(11,fi,4,3,"button",43),m(12,_i,4,3,"button",43),m(13,Ci,4,3,"button",43),m(14,hi,1,0,"div",44),m(15,Pi,8,7),m(16,yi,1,0,"div",44),m(17,Si,4,3,"button",43),m(18,Bi,1,0,"div",44),m(19,ki,4,3,"button",43),m(20,Ii,1,0,"div",44),m(21,Ti,4,4,"a",45),l()()}if(t&2){let e=f();n(),y("aria-label","Plugin Actions Dropdown"),n(5),b(" ",s(7,16,"plugins.button_settings")," "),n(2),g(e.plugin.isConfigured&&!e.plugin.disabled?8:-1),n(),g(e.plugin.publicPackage?9:-1),n(),g(!e.isMobile&&e.plugin.name!=="homebridge-config-ui-x"?10:-1),n(),g(e.plugin.name!=="homebridge-config-ui-x"&&!e.plugin.disabled?11:-1),n(),g(e.plugin.name!=="homebridge-config-ui-x"&&e.plugin.disabled?12:-1),n(),g(e.plugin.name!=="homebridge-config-ui-x"?13:-1),n(),g(!e.plugin.disabled&&e.plugin.isConfigured&&e.plugin.hasChildBridges&&e.plugin.installedVersion&&e.plugin.name!=="homebridge-config-ui-x"?14:-1),n(),g(e.plugin.hasChildBridges&&!e.plugin.disabled?15:-1),n(),g(e.plugin.isConfigured&&!e.plugin.hasChildBridges&&!e.plugin.disabled&&!e.plugin.recommendChildBridge?16:-1),n(),g(e.plugin.isConfigured&&!e.plugin.hasChildBridges&&!e.plugin.disabled&&!e.plugin.recommendChildBridge?17:-1),n(),g(e.plugin.isConfigured&&!e.plugin.hasChildBridges&&!e.plugin.disabled&&e.plugin.recommendChildBridge&&e.plugin.updateAvailable?18:-1),n(),g(e.plugin.isConfigured&&!e.plugin.hasChildBridges&&!e.plugin.disabled&&e.plugin.recommendChildBridge&&e.plugin.updateAvailable?19:-1),n(),g(e.plugin.links!=null&&e.plugin.links.bugs?20:-1),n(),g(e.plugin.links!=null&&e.plugin.links.bugs?21:-1)}}var Ee=(()=>{class t{$api=P(L);$md=P(Be);$modal=P(O);$plugin=P(Q);$settings=P(G);$toastr=P(R);$translate=P(q);$ws=P(W);io;plugin;hasChildBridges=!1;hasUnpairedChildBridges=!1;allChildBridgesStopped=!1;childBridgeStatus="pending";childBridgeRestartInProgress=!1;defaultIcon="assets/hb-icon.png";isMobile;setChildBridges=[];hb2Status="unknown";serviceMode=this.$settings.env.serviceMode;set childBridges(e){this.hasChildBridges=e.length>0,this.hasUnpairedChildBridges=e.filter(u=>u.paired===!1).length>0,this.allChildBridgesStopped=e.filter(u=>u.manuallyStopped===!0).length===e.length,this.hasChildBridges&&(e.some(u=>u.status==="down")?this.childBridgeStatus="down":e.some(u=>u.status==="pending")?this.childBridgeStatus="pending":e.some(u=>u.status==="ok")&&(this.childBridgeStatus="ok")),this.setChildBridges=e;let o=this.$settings.env.homebridgeVersion.split(".")[0],i=this.plugin.engines?.homebridge?.split("||").map(u=>u.trim())||[];this.hb2Status=o==="2"?"hide":i.some(u=>u.startsWith("^2")||u.startsWith(">=2"))?"supported":this.hb2Status}ngOnInit(){this.isMobile=this.$md.detect.mobile(),this.io=this.$ws.getExistingNamespace("child-bridges"),this.isMobile&&this.plugin.displayName.toLowerCase().startsWith("homebridge ")&&(this.plugin.displayName=this.plugin.displayName.replace(/^homebridge /i,"")),this.plugin.icon||(this.plugin.icon=this.defaultIcon)}openFundingModal(e){let o=this.$modal.open(Te,{size:"lg",backdrop:"static"});o.componentInstance.plugin=e}pluginInfoModal(e){let o=this.$modal.open(Ve,{size:"lg",backdrop:"static"});o.componentInstance.plugin=e}disablePlugin(e){let o=this.$modal.open(Ie,{size:"lg",backdrop:"static"});o.componentInstance.pluginName=e.displayName,o.componentInstance.isConfigured=e.isConfigured,o.componentInstance.isConfiguredDynamicPlatform=e.isConfiguredDynamicPlatform,o.result.then(()=>k(this,null,function*(){try{yield D(this.$api.put(`/config-editor/plugin/${encodeURIComponent(e.name)}/disable`,{})),e.disabled=!0,this.hasChildBridges&&this.doChildBridgeAction("stop"),this.$modal.open(H,{size:"lg",backdrop:"static"})}catch(i){console.error(i),this.$toastr.error(this.$translate.instant("plugins.disable.error"),this.$translate.instant("toast.title_error"))}}))}enablePlugin(e){let o=this.$modal.open(ye,{size:"lg",backdrop:"static"});o.componentInstance.title=e.name,o.componentInstance.message=this.$translate.instant("plugins.manage.confirm_enable",{pluginName:e.displayName}),o.componentInstance.confirmButtonLabel=this.$translate.instant("plugins.manage.enable"),o.componentInstance.faIconClass="fa-circle-play primary-text",o.result.then(()=>k(this,null,function*(){try{yield D(this.$api.put(`/config-editor/plugin/${encodeURIComponent(e.name)}/enable`,{})),e.disabled=!1,this.hasChildBridges&&(yield this.doChildBridgeAction("start")),this.$modal.open(H,{size:"lg",backdrop:"static"})}catch(i){console.error(i),this.$toastr.error(this.$translate.instant("plugins.enable.error"),this.$translate.instant("toast.title_error"))}}))}viewPluginLog(){let e=this.$modal.open(ke,{size:"xl",backdrop:"static"});e.componentInstance.plugin=this.plugin}doChildBridgeAction(e){return k(this,null,function*(){this.childBridgeRestartInProgress=!0;try{for(let o of this.setChildBridges)yield D(this.io.request(`${e}-child-bridge`,o.username))}catch(o){console.error(o),this.$toastr.error(this.$translate.instant("plugins.bridge.action_error",{action:e}),this.$translate.instant("toast.title_error")),this.childBridgeRestartInProgress=!1}finally{setTimeout(()=>{this.childBridgeRestartInProgress=!1},e==="restart"?12e3:e==="stop"?6e3:1e3)}})}handleIconError(){this.plugin.icon=this.defaultIcon}checkAndUpdatePlugin(){this.$plugin.checkAndUpdatePlugin(this.plugin,this.plugin.latestVersion)}openSettings(){this.$plugin.settings(this.plugin)}openBridgeSettings(){this.$plugin.bridgeSettings(this.plugin)}switchToScoped(){this.$plugin.switchToScoped(this.plugin)}installAlternateVersion(){this.$plugin.installAlternateVersion(this.plugin)}openJsonEditor(){this.$plugin.jsonEditor(this.plugin)}uninstallPlugin(){this.$plugin.uninstallPlugin(this.plugin,this.setChildBridges)}resetChildBridges(){this.$plugin.resetChildBridges(this.setChildBridges)}static \u0275fac=function(o){return new(o||t)};static \u0275cmp=S({type:t,selectors:[["app-plugin-card"]],inputs:{plugin:"plugin",childBridges:"childBridges"},decls:35,vars:23,consts:[[1,"card","card-body","mb-3"],[1,"d-flex","flex-row","justify-content-between"],[1,"d-flex","flex-column","me-3","align-items-center","justify-content-between"],["alt","Plugin Icon",1,"plugin-icon-card","mb-3",3,"error","src"],[1,"d-flex","flex-column","justify-content-between",2,"min-width","calc(100% - 80px)"],[1,"d-flex","flex-row","align-items-end"],[1,"d-flex","flex-column","w-100"],[1,"d-flex","flex-row"],[1,"card-title","mb-2","text-truncate"],[1,"ms-auto"],["href","javascript:void(0)","container","body","openDelay","150","triggers","hover",1,"card-link",3,"ngbTooltip"],[1,"fas","fa-fw","fa-spinner","fa-pulse","fa-lg","grey-text","ms-3",3,"hidden"],[1,"fas","fa-fw","fa-lg","ms-3",3,"ngClass"],[1,"card-text","mb-2","text-truncate"],["href","javascript:void(0)",1,"card-link",3,"click"],[1,"fas","fa-fw","fa-shield-alt","fa-lg","me-1",3,"ngClass"],[1,"grey-text"],[1,"card-text","mb-2"],["href","javascript:void(0)",1,"card-link"],[1,"card-text","mb-0","grey-text"],["href","javascript:void(0)",1,"card-link","red-text"],["href","javascript:void(0)"],["ngbDropdown","","placement","left",1,"d-inline-block","ms-3","mt-auto"],["href","javascript:void(0)","container","body","openDelay","150","triggers","hover",1,"card-link",3,"click","ngbTooltip"],[1,"far","fa-fw","fa-arrow-alt-circle-up","primary-text","fa-lg","fa-fade","ms-3",2,"--fa-animation-duration","2s"],[1,"fas","fa-fw","fa-arrow-right-arrow-left","primary-text","fa-lg","fa-fade","ms-3",2,"--fa-animation-duration","2s"],[1,"fas","fa-fw","fa-sliders","primary-text","fa-lg","fa-fade","ms-3",2,"--fa-animation-duration","2s"],[1,"icon-button","fas","fa-fw","fa-bridge","primary-text","fa-lg","fa-fade","ms-3",2,"--fa-animation-duration","2s"],[1,"icon-button","fas","fa-fw","fa-qrcode","primary-text","fa-lg","fa-fade","ms-3",2,"--fa-animation-duration","2s"],[1,"fas","fa-fw","fa-heart","fa-lg","me-1","pink-text"],[1,"fas","fa-fw","fa-heart","fa-lg","me-1",2,"opacity","0.5"],[1,"far","fa-fw","fa-circle-dot","fa-lg","me-1"],[1,"far","fa-fw","fa-circle-check","fa-lg","me-1"],[1,"fas","fa-fw","fa-lg","fa-power-off","ms-3"],["href","javascript:void(0)",1,"card-link","red-text",3,"click"],["container","body","openDelay","150","triggers","hover",1,"far","fa-fw","fa-pause-circle","fa-lg",3,"ngbTooltip"],["href","javascript:void(0)",3,"click"],[1,"far","fa-fw","fa-arrow-alt-circle-down","fa-lg"],["href","javascript:void(0)","ngbDropdownToggle","",1,"card-link","text-decoration-none","mt-auto",2,"outline","none"],[1,"fa-solid","fa-fw","fa-ellipsis-v","fa-lg"],["ngbDropdownMenu","","aria-labelledby","Plugin Actions Dropdown"],["ngbDropdownItem","",3,"click"],[1,"fas","fa-fw","fa-sliders"],["ngbDropdownItem",""],[1,"dropdown-divider"],["ngbDropdownItem","","rel","noopener noreferrer","target","_blank",3,"href"],[1,"fas","fa-fw","fa-wave-square"],[1,"fas","fa-fw","fa-code-compare"],[1,"fas","fa-fw","fa-code"],[1,"far","fa-fw","fa-circle-pause"],[1,"far","fa-fw","fa-circle-play"],[1,"fas","fa-fw","fa-trash"],[1,"fas","fa-fw","fa-bridge"],[1,"fa-fw","icon-button","fas","fa-fw","fa-power-off"],[1,"fas","fa-fw","fa-stop"],[1,"fas","fa-fw","fa-play"],[1,"fas","fa-fw","fa-broom"],[1,"icon-button","fas","fa-fw","fa-bridge"],[1,"icon-button","fa","fa-fw","fa-question-circle-o"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"div",1)(2,"div",2)(3,"img",3),_("error",function(){return i.handleIconError()}),l()(),a(4,"div",4)(5,"div",5)(6,"div",6)(7,"div",7)(8,"h5",8),c(9),l(),a(10,"div",9),m(11,Ye,4,6,"a",10),m(12,Ze,4,6,"a",10),m(13,ei,4,6,"a",10),m(14,ii,4,6,"a",10),m(15,ti,4,6,"a",10),d(16,"i",11),m(17,ni,1,4,"i",12),l()(),a(18,"p",13)(19,"a",14),_("click",function(){return i.pluginInfoModal(i.plugin)}),d(20,"i",15),a(21,"span",16),c(22),l()()(),a(23,"p",17),m(24,ai,4,1,"a",18),m(25,oi,3,1,"span",16),l(),a(26,"div",7)(27,"p",19),m(28,ri,5,2,"span"),m(29,si,2,1),l(),a(30,"div",9),m(31,di,3,3,"a",10),m(32,pi,3,3,"a",20),m(33,ci,2,0,"a",21),m(34,Vi,22,18,"span",22),l()()()()()()()),o&2&&(n(3),C("src",i.plugin.icon,T),n(6),h(i.plugin.displayName),n(2),g(i.plugin.installedVersion&&i.plugin.updateAvailable&&!i.childBridgeRestartInProgress?11:-1),n(),g(i.plugin.installedVersion&&(i.plugin.newHbScope==null?null:i.plugin.newHbScope.switch)===i.plugin.installedVersion&&!i.childBridgeRestartInProgress?12:-1),n(),g(i.plugin.installedVersion&&(!i.plugin.newHbScope||i.plugin.newHbScope.switch!==i.plugin.installedVersion)&&!i.plugin.updateAvailable&&!i.plugin.isConfigured&&!i.childBridgeRestartInProgress&&!i.plugin.disabled?13:-1),n(),g(i.plugin.installedVersion&&(!i.plugin.newHbScope||i.plugin.newHbScope.switch!==i.plugin.installedVersion)&&!i.plugin.updateAvailable&&i.plugin.isConfigured&&!i.plugin.hasChildBridges&&!i.plugin.disabled&&i.plugin.recommendChildBridge&&!i.childBridgeRestartInProgress?14:-1),n(),g(i.plugin.installedVersion&&(!i.plugin.newHbScope||i.plugin.newHbScope.switch!==i.plugin.installedVersion)&&!i.plugin.updateAvailable&&i.plugin.isConfigured&&i.plugin.hasChildBridges&&!i.childBridgeRestartInProgress&&i.hasUnpairedChildBridges&&i.childBridgeStatus==="ok"&&!i.plugin.disabled?15:-1),n(),C("hidden",!i.childBridgeRestartInProgress),n(),g(i.plugin.installedVersion&&(!i.plugin.newHbScope||i.plugin.newHbScope.switch!==i.plugin.installedVersion)&&!i.plugin.updateAvailable&&i.plugin.isConfigured&&i.plugin.hasChildBridges&&!i.childBridgeRestartInProgress&&!i.hasUnpairedChildBridges&&i.childBridgeStatus!=="ok"&&!i.plugin.disabled?17:-1),n(3),C("ngClass",ne(19,Ke,i.plugin.isHbScoped,!i.plugin.isHbScoped&&(i.plugin.verifiedPlugin||i.plugin.verifiedPlusPlugin),!i.plugin.isHbScoped&&!i.plugin.verifiedPlugin&&!i.plugin.verifiedPlusPlugin)),n(2),h(i.plugin.name),n(2),g((i.plugin.verifiedPlugin||i.plugin.verifiedPlusPlugin)&&i.plugin.funding?24:-1),n(),g((i.plugin.verifiedPlugin||i.plugin.verifiedPlusPlugin)&&i.plugin.funding?-1:25),n(3),g(i.plugin.publicPackage&&!i.plugin.installedVersion?28:-1),n(),g(i.plugin.installedVersion?29:-1),n(2),g(!i.plugin.disabled&&i.plugin.hasChildBridges&&i.childBridgeStatus==="ok"?31:-1),n(),g(i.plugin.installedVersion&&i.plugin.disabled?32:-1),n(),g(i.plugin.publicPackage&&!i.plugin.installedVersion?33:-1),n(),g(i.plugin.installedVersion?34:-1))},dependencies:[U,M,xe,ve,be,he,Ce,oe,B],encapsulation:2})}return t})();var Me=(()=>{class t{$activeModal=P($);dismissModal(){this.$activeModal.dismiss("Dismiss")}static \u0275fac=function(o){return new(o||t)};static \u0275cmp=S({type:t,selectors:[["ng-component"]],decls:27,vars:21,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body"],[1,"text-center","mb-3"],[1,"fa","fa-fw","fa-question-circle-o","primary-text",2,"font-size","75px"],[1,"mb-0"],[3,"innerHTML"],[1,"modal-footer","justify-content-between"],[1,"text-start"],[1,"text-center"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-end"]],template:function(o,i){o&1&&(a(0,"div",0)(1,"form")(2,"div",1)(3,"h5",2),c(4),r(5,"translate"),l(),a(6,"button",3),r(7,"translate"),_("click",function(){return i.dismissModal()}),l()(),a(8,"div",4)(9,"div",5),d(10,"i",6),l(),a(11,"ul",7),d(12,"li",8),r(13,"translate"),d(14,"li",8),r(15,"translate"),d(16,"li",8),r(17,"translate"),d(18,"li",8),r(19,"translate"),l()(),a(20,"div",9),d(21,"div",10),a(22,"div",11)(23,"button",12),_("click",function(){return i.dismissModal()}),c(24),r(25,"translate"),l()(),d(26,"div",13),l()()()),o&2&&(n(4),h(s(5,7,"support.title")),n(2),y("aria-label",s(7,9,"form.button_close")),n(6),C("innerHTML",s(13,11,"plugins.support.list_1"),N),n(2),C("innerHTML",s(15,13,"plugins.support.list_2"),N),n(2),C("innerHTML",s(17,15,"plugins.support.list_3"),N),n(2),C("innerHTML",s(19,17,"plugins.support.list_4"),N),n(6),b(" ",s(25,19,"form.button_close")," "))},dependencies:[B],encapsulation:2})}return t})();var Ei=["searchInput"],Mi=(t,p)=>({"fa-magnifying-glass":t,"fa-exclamation-circle":p});function $i(t,p){t&1&&d(0,"app-spinner")}function Di(t,p){if(t&1){let e=w();a(0,"a",15),_("click",function(){v(e);let i=f(3);return x(i.onClearSearch())}),d(1,"i",16),l()}}function Ni(t,p){if(t&1){let e=w();a(0,"div",9)(1,"div",11)(2,"form",12),_("ngSubmit",function(){v(e);let i=f(2);return x(i.onSubmit(i.form))}),d(3,"input",13,0),r(5,"translate"),m(6,Di,2,0,"a",14),l()()()}if(t&2){let e=f(2);n(2),C("formGroup",e.form),n(),C("placeholder",s(5,3,"plugins.placeholder_search_plugin")),n(3),g(e.showExitButton?6:-1)}}function Hi(t,p){if(t&1&&(a(0,"div",17),d(1,"app-plugin-card",19),l()),t&2){let e=p.$implicit,o=f(3);n(),C("plugin",e)("childBridges",o.getPluginChildBridges(e))}}function Ai(t,p){if(t&1&&(a(0,"div",18),d(1,"i",20),a(2,"p"),c(3),r(4,"translate"),l()()),t&2){let e=f(3);n(),C("ngClass",I(4,Mi,!e.showExitButton,e.showExitButton)),n(2),h(s(4,2,e.showExitButton?"plugins.placeholder_search_none":"plugins.placeholder_search_first"))}}function ji(t,p){if(t&1&&(a(0,"div",10),F(1,Hi,2,2,"div",17,j),m(3,Ai,5,7,"div",18),l()),t&2){let e=f(2);n(),z(e.installedPlugins),n(2),g(e.installedPlugins.length===0&&!e.loading&&!e.mainError?3:-1)}}function Fi(t,p){if(t&1&&(m(0,Ni,7,5,"div",9),m(1,ji,4,1,"div",10)),t&2){let e=f();g(e.showSearchBar?0:-1),n(),g(e.loading?-1:1)}}function zi(t,p){t&1&&(a(0,"div",21)(1,"div",22)(2,"code"),c(3,"https://developers.homebridge.io/analytics "),a(4,"a",23),d(5,"i",24),l()()(),a(6,"div",25),c(7),r(8,"translate"),l()(),d(9,"iframe",26)),t&2&&(n(7),h(s(8,1,"plugins.stats_note")))}var Yt=(()=>{class t{searchInput;$api=P(L);$modal=P(O);$plugin=P(Q);$router=P(Pe);$settings=P(G);$toastr=P(R);$translate=P(q);$ws=P(W);isSearchMode=!1;io;navigationSubscription;mainError=!1;loading=!0;tab="main";installedPlugins=[];childBridges=[];showSearchBar=!1;showExitButton=!1;form=new de({query:new pe("")});ngOnInit(){return k(this,null,function*(){this.io=this.$ws.connectToNamespace("child-bridges"),this.io.connected.subscribe(()=>k(this,null,function*(){this.getChildBridgeMetadata(),this.io.socket.emit("monitor-child-bridge-status"),yield this.loadInstalledPlugins(),this.installedPlugins.length||this.showSearch();let{action:e,plugin:o}=this.$router.parseUrl(this.$router.url).queryParams;if(e){let i=this.installedPlugins.find(u=>u.name===o);switch(e){case"just-installed":{i&&(i.isConfigured?this.$modal.open(H,{size:"lg",backdrop:"static"}):this.$plugin.settings(i));break}case"open-manage-version":{i&&this.$plugin.installAlternateVersion(i);break}}this.$router.navigate([],{queryParams:{},replaceUrl:!0,queryParamsHandling:""})}})),this.io.socket.on("child-bridge-status-update",e=>{let o=this.childBridges.find(i=>i.username===e.username);o?Object.assign(o,e):this.childBridges.push(e)}),this.navigationSubscription=this.$router.events.subscribe(e=>{e instanceof we&&this.loadInstalledPlugins()})})}search(){this.installedPlugins=[],this.loading=!0,this.showExitButton=!0,this.$api.get(`/plugins/search/${encodeURIComponent(this.form.value.query)}`).subscribe({next:e=>{let o=new Set;this.installedPlugins=e.reduce((i,u)=>{if(u.name==="homebridge-config-ui-x"||o.has(u.name))return i;if(u.newHbScope){let Y=u.newHbScope.to,$e=e.some(De=>De.name===Y);(u.installedVersion||!$e)&&(o.add(Y),i.push(u))}else i.push(u);return i},[]),this.appendMetaInfo(),this.loading=!1},error:e=>{this.loading=!1,this.isSearchMode=!1,console.error(e),this.$toastr.error(e.error.message||e.message,this.$translate.instant("toast.title_error")),this.loadInstalledPlugins()}})}onClearSearch(){this.loadInstalledPlugins()}onSubmit({value:e}){e.query.length?(this.isSearchMode=!0,this.search()):this.isSearchMode&&(this.isSearchMode=!1,this.loadInstalledPlugins())}showSearch(){this.showSearchBar?(this.showSearchBar=!1,this.isSearchMode&&(this.isSearchMode=!1,this.form.setValue({query:""}),this.loadInstalledPlugins())):(window.document.querySelector("body").classList.remove("bg-black"),this.tab="main",this.showSearchBar=!0,setTimeout(()=>this.searchInput.nativeElement.focus(),0))}showStats(){this.tab==="stats"?(window.document.querySelector("body").classList.remove("bg-black"),this.tab="main"):(window.document.querySelector("body").classList.add("bg-black"),this.tab="stats",this.showSearchBar=!1)}openSupport(){this.$modal.open(Me,{size:"lg",backdrop:"static"})}ngOnDestroy(){window.document.querySelector("body").classList.remove("bg-black"),this.navigationSubscription&&this.navigationSubscription.unsubscribe(),this.io.end()}getPluginChildBridges(e){return this.childBridges.filter(o=>o.plugin===e.name)}loadInstalledPlugins(){return k(this,null,function*(){this.form.setValue({query:""}),this.showExitButton=!1,this.installedPlugins=[],this.loading=!0,this.mainError=!1;try{let e=yield D(this.$api.get("/plugins"));this.installedPlugins=e.filter(i=>i.name!=="homebridge-config-ui-x"),yield this.appendMetaInfo();let o=this.installedPlugins.sort((i,u)=>i.updateAvailable!==u.updateAvailable?i.updateAvailable?-1:1:i.newHbScope&&!u.newHbScope?-1:i.disabled!==u.disabled?i.disabled?1:-1:i.isConfigured!==u.isConfigured?i.isConfigured?1:-1:i.hasChildBridgesUnpaired!==u.hasChildBridgesUnpaired?i.hasChildBridgesUnpaired?-1:1:i.hasChildBridges!==u.hasChildBridges&&this.$settings.env.recommendChildBridges?i.hasChildBridges?1:-1:i.name.localeCompare(u.name));return this.loading=!1,o}catch(e){console.error(e),this.loading=!1,this.mainError=!0,this.$toastr.error(this.$translate.instant("plugins.toast_failed_to_load_plugins"),this.$translate.instant("toast.title_error"))}})}appendMetaInfo(){return k(this,null,function*(){yield Promise.all(this.installedPlugins.filter(e=>e.installedVersion).map(e=>k(this,null,function*(){try{let o=yield D(this.$api.get(`/config-editor/plugin/${encodeURIComponent(e.name)}`));e.isConfigured=o.length>0,e.isConfiguredDynamicPlatform=e.isConfigured&&Object.prototype.hasOwnProperty.call(o[0],"platform"),e.recommendChildBridge=e.isConfiguredDynamicPlatform&&this.$settings.env.recommendChildBridges&&this.$settings.env.serviceMode&&!["homebridge","homebridge-config-ui-x"].includes(e.name),e.hasChildBridges=e.isConfigured&&o.some(u=>u._bridge&&u._bridge.username);let i=this.getPluginChildBridges(e);e.hasChildBridgesUnpaired=i.some(u=>!u.paired),this.$settings.env.plugins?.hideUpdatesFor?.includes(e.name)&&(e.updateAvailable=!1)}catch{e.isConfigured=!0,e.hasChildBridges=!0}})))})}getChildBridgeMetadata(){this.io.request("get-homebridge-child-bridge-status").subscribe(e=>{this.childBridges=e})}static \u0275fac=function(o){return new(o||t)};static \u0275cmp=S({type:t,selectors:[["ng-component"]],viewQuery:function(o,i){if(o&1&&ee(Ei,5),o&2){let u;ie(u=te())&&(i.searchInput=u.first)}},decls:20,vars:26,consts:[["searchInput",""],[1,"row","mb-3"],[1,"col-6"],[1,"primary-text","m-0"],[1,"col-6","text-end"],["type","button","container","body","placement","bottom","openDelay","150","triggers","hover",1,"btn","btn-elegant","my-0","me-2",3,"click","ngbTooltip"],["type","button","container","body","placement","bottom","openDelay","150","triggers","hover",1,"btn","btn-elegant","my-0","me-2","d-none","d-md-inline-block",3,"click","ngbTooltip"],["type","button",1,"btn","btn-elegant","my-0","me-0",3,"click"],[1,"fa","fa-fw","fa-question-circle-o"],[1,"row"],[1,"d-flex","flex-wrap","justify-content-between"],[1,"col-md-12"],["novalidate","",3,"ngSubmit","formGroup"],["type","text","formControlName","query",1,"hb-npm-search",3,"placeholder"],["href","javascript:void(0)",1,"hb-npm-search-clear"],["href","javascript:void(0)",1,"hb-npm-search-clear",3,"click"],[1,"far","fa-fw","fa-times-circle"],[1,"hb-plugin-space-between"],[1,"alert","alert-info","mt-4","text-center","w-100"],[3,"plugin","childBridges"],[1,"fas","fa-fw","primary-text","my-3",2,"font-size","75px",3,"ngClass"],[1,"w-100","py-3","hb-stats-header","text-white","text-center"],[1,"mb-2"],["href","https://developers.homebridge.io/analytics","target","_blank"],[1,"fa","fa-fw","fa-external-link"],[1,"small","grey-text"],["src",Z`https://developers.homebridge.io/analytics/`,"sandbox","allow-scripts allow-same-origin allow-popups","referrerpolicy","no-referrer",1,"hb-stats"]],template:function(o,i){o&1&&(m(0,$i,1,0,"app-spinner"),a(1,"div",1)(2,"div",2)(3,"h3",3),c(4),r(5,"translate"),l()(),a(6,"div",4)(7,"button",5),r(8,"translate"),r(9,"translate"),_("click",function(){return i.showSearch()}),d(10,"i"),l(),a(11,"button",6),r(12,"translate"),r(13,"translate"),_("click",function(){return i.showStats()}),d(14,"i"),l(),a(15,"button",7),r(16,"translate"),_("click",function(){return i.openSupport()}),d(17,"i",8),l()()(),m(18,Fi,2,2)(19,zi,10,3)),o&2&&(g(i.loading?0:-1),n(4),h(s(5,14,"menu.label_plugins")),n(3),C("ngbTooltip",s(8,16,"plugins.search")),y("aria-label",s(9,18,"plugins.search")),n(3),J(K("fas fa-fw",i.showSearchBar?" primary-text":""," fa-search")),n(),C("ngbTooltip",s(12,20,"plugins.stats")),y("aria-label",s(13,22,"plugins.stats")),n(3),J(K("fas fa-fw",i.tab==="stats"?" primary-text":""," fa-sliders")),n(),y("aria-label",s(16,24,"support.title")),n(3),g(i.tab==="main"?18:i.tab==="stats"?19:-1))},dependencies:[Se,ge,ce,le,re,se,fe,ue,me,Ee,B,M,U],styles:[".hb-npm-search[_ngcontent-%COMP%]{outline:none;box-sizing:inherit!important;background-color:inherit;height:50px!important;width:100%;border-width:.5px;padding:10px;margin-bottom:15px}@media (hover: hover){.hb-npm-search[_ngcontent-%COMP%]:hover{border:1px solid #000000}}.hb-npm-search[_ngcontent-%COMP%]:focus{border:1px solid #000000;box-shadow:0 1px #000}.hb-npm-search-clear[_ngcontent-%COMP%]{position:absolute;right:25px;font-size:35px;color:#d0d0d0;line-height:50px;cursor:pointer}.hb-plugin-space-between[_ngcontent-%COMP%]{box-sizing:border-box;width:calc(50% - 6.6666666667px)}@media only screen and (max-width: 991px){.hb-plugin-space-between[_ngcontent-%COMP%]{width:100%}}.hb-stats-header[_ngcontent-%COMP%]{background:#242424;border-top-left-radius:.5rem;border-top-right-radius:.5rem}.hb-stats-header[_ngcontent-%COMP%] code[_ngcontent-%COMP%]{border:1px solid grey;border-radius:5px;padding:5px;font-size:.8rem;color:#d3d3d3}.hb-stats[_ngcontent-%COMP%]{height:calc(100% - 121px);width:100%;overflow:hidden;border-bottom-left-radius:.5rem;border-bottom-right-radius:.5rem}@media (max-width: 767px){.hb-stats[_ngcontent-%COMP%]{height:calc(100% - 60px)}}"]})}return t})();export{Yt as PluginsComponent};
@@ -0,0 +1 @@
1
+ import{Ca as xe,Fa as Se,H as ee,e as $,g as yt,ga as we,gb as te,ha as Me,i as Q,ka as ye,n as Z,nb as Oe,ob as ke,ub as Ie,x as Ce}from"./chunk-SKZUTSHE.js";var $e=$((Jt,De)=>{De.exports=function(r,a){return Array.prototype.slice.call(r,a)}});var Ne=$((Qt,Re)=>{var xt=typeof setImmediate=="function",re;xt?re=function(e){setImmediate(e)}:re=function(e){setTimeout(e,0)};Re.exports=re});var Ye=$((Zt,Xe)=>{"use strict";var St=Ne();Xe.exports=function(r,a,t){r&&St(function(){r.apply(t||null,a||[])})}});var Be=$((er,je)=>{"use strict";var Fe=$e(),Ot=Ye();je.exports=function(r,a){var t=a||{},n={};return r===void 0&&(r={}),r.on=function(i,u){return n[i]?n[i].push(u):n[i]=[u],r},r.once=function(i,u){return u._once=!0,r.on(i,u),r},r.off=function(i,u){var s=arguments.length;if(s===1)delete n[i];else if(s===0)n={};else{var d=n[i];if(!d)return r;d.splice(d.indexOf(u),1)}return r},r.emit=function(){var i=Fe(arguments);return r.emitterSnapshot(i.shift()).apply(this,i)},r.emitterSnapshot=function(i){var u=(n[i]||[]).slice(0);return function(){var s=Fe(arguments),d=this||r;if(i==="error"&&t.throws!==!1&&!u.length)throw s.length===1?s[0]:s;return u.forEach(function(p){t.async?Ot(p,s,d):p.apply(d,s),p._once&&r.off(i,p)}),r}},r}});var qe=$((tr,Ae)=>{var Pe=global.CustomEvent;function kt(){try{var e=new Pe("cat",{detail:{foo:"bar"}});return e.type==="cat"&&e.detail.foo==="bar"}catch{}return!1}Ae.exports=kt()?Pe:typeof document<"u"&&typeof document.createEvent=="function"?function(r,a){var t=document.createEvent("CustomEvent");return a?t.initCustomEvent(r,a.bubbles,a.cancelable,a.detail):t.initCustomEvent(r,!1,!1,void 0),t}:function(r,a){var t=document.createEventObject();return t.type=r,a?(t.bubbles=!!a.bubbles,t.cancelable=!!a.cancelable,t.detail=a.detail):(t.bubbles=!1,t.cancelable=!1,t.detail=void 0),t}});var Ge=$((rr,Ve)=>{"use strict";var Te=[],ne="",It=/^on/;for(ne in global)It.test(ne)&&Te.push(ne.slice(2));Ve.exports=Te});var Ke=$((nr,ze)=>{"use strict";var Dt=qe(),$t=Ge(),H=global.document,He=Rt,Le=Xt,q=[];global.addEventListener||(He=Nt,Le=Yt);ze.exports={add:He,remove:Le,fabricate:Ft};function Rt(e,r,a,t){return e.addEventListener(r,a,t)}function Nt(e,r,a){return e.attachEvent("on"+r,Bt(e,r,a))}function Xt(e,r,a,t){return e.removeEventListener(r,a,t)}function Yt(e,r,a){var t=_e(e,r,a);if(t)return e.detachEvent("on"+r,t)}function Ft(e,r,a){var t=$t.indexOf(r)===-1?i():n();e.dispatchEvent?e.dispatchEvent(t):e.fireEvent("on"+r,t);function n(){var u;return H.createEvent?(u=H.createEvent("Event"),u.initEvent(r,!0,!0)):H.createEventObject&&(u=H.createEventObject()),u}function i(){return new Dt(r,{detail:a})}}function jt(e,r,a){return function(n){var i=n||global.event;i.target=i.target||i.srcElement,i.preventDefault=i.preventDefault||function(){i.returnValue=!1},i.stopPropagation=i.stopPropagation||function(){i.cancelBubble=!0},i.which=i.which||i.keyCode,a.call(e,i)}}function Bt(e,r,a){var t=_e(e,r,a)||jt(e,r,a);return q.push({wrapper:t,element:e,type:r,fn:a}),t}function _e(e,r,a){var t=Pt(e,r,a);if(t){var n=q[t].wrapper;return q.splice(t,1),n}}function Pt(e,r,a){var t,n;for(t=0;t<q.length;t++)if(n=q[t],n.element===e&&n.type===r&&n.fn===a)return t}});var Qe=$((ir,Je)=>{"use strict";var Ue={},At="(?:^|\\s)",qt="(?:\\s|$)";function We(e){var r=Ue[e];return r?r.lastIndex=0:Ue[e]=r=new RegExp(At+e+qt,"g"),r}function Tt(e,r){var a=e.className;a.length?We(r).test(a)||(e.className+=" "+r):e.className=r}function Vt(e,r){e.className=e.className.replace(We(r)," ").trim()}Je.exports={add:Tt,rm:Vt}});var ut=$((or,st)=>{"use strict";var Gt=Be(),P=Ke(),X=Qe(),A=document,D=A.documentElement;function Ht(e,r){var a=arguments.length;a===1&&Array.isArray(e)===!1&&(r=e,e=[]);var t,n,i,u,s,d,b,p,w,h,C,M=null,O,c=r||{};c.moves===void 0&&(c.moves=rt),c.accepts===void 0&&(c.accepts=rt),c.invalid===void 0&&(c.invalid=ht),c.containers===void 0&&(c.containers=e||[]),c.isContainer===void 0&&(c.isContainer=_t),c.copy===void 0&&(c.copy=!1),c.copySortSource===void 0&&(c.copySortSource=!1),c.revertOnSpill===void 0&&(c.revertOnSpill=!1),c.removeOnSpill===void 0&&(c.removeOnSpill=!1),c.direction===void 0&&(c.direction="vertical"),c.ignoreInputTextSelection===void 0&&(c.ignoreInputTextSelection=!0),c.mirrorContainer===void 0&&(c.mirrorContainer=A.body);var g=Gt({containers:c.containers,start:vt,end:fe,cancel:pe,remove:me,destroy:ct,canMove:ft,dragging:!1});return c.removeOnSpill===!0&&g.on("over",mt).on("out",pt),ue(),g;function L(o){return g.containers.indexOf(o)!==-1||c.isContainer(o)}function ue(o){var l=o?"remove":"add";T(D,l,"mousedown",lt),T(D,l,"mouseup",K)}function _(o){var l=o?"remove":"add";T(D,l,"mousemove",dt)}function ce(o){var l=o?"remove":"add";P[l](D,"selectstart",le),P[l](D,"click",le)}function ct(){ue(!0),K({})}function le(o){O&&o.preventDefault()}function lt(o){d=o.clientX,b=o.clientY;var l=Ze(o)!==1||o.metaKey||o.ctrlKey;if(!l){var f=o.target,m=z(f);m&&(O=m,_(),o.type==="mousedown"&&(ot(f)?f.focus():o.preventDefault()))}}function dt(o){if(O){if(Ze(o)===0){K({});return}if(!(o.clientX!==void 0&&Math.abs(o.clientX-d)<=(c.slideFactorX||0)&&o.clientY!==void 0&&Math.abs(o.clientY-b)<=(c.slideFactorY||0))){if(c.ignoreInputTextSelection){var l=Y("clientX",o)||0,f=Y("clientY",o)||0,m=A.elementFromPoint(l,f);if(ot(m))return}var x=O;_(!0),ce(),fe(),de(x);var E=Lt(i);u=Y("pageX",o)-E.left,s=Y("pageY",o)-E.top,X.add(h||i,"gu-transit"),gt(),J(o)}}}function z(o){if(!(g.dragging&&t)&&!L(o)){for(var l=o;S(o)&&L(S(o))===!1;)if(c.invalid(o,l)||(o=S(o),!o))return;var f=S(o);if(f&&!c.invalid(o,l)){var m=c.moves(o,f,l,V(o));if(m)return{item:o,source:f}}}}function ft(o){return!!z(o)}function vt(o){var l=z(o);l&&de(l)}function de(o){Et(o.item,o.source)&&(h=o.item.cloneNode(!0),g.emit("cloned",h,o.item,"copy")),n=o.source,i=o.item,p=w=V(o.item),g.dragging=!0,g.emit("drag",i,n)}function ht(){return!1}function fe(){if(g.dragging){var o=h||i;he(o,S(o))}}function ve(){O=!1,_(!0),ce(!0)}function K(o){if(ve(),!!g.dragging){var l=h||i,f=Y("clientX",o)||0,m=Y("clientY",o)||0,x=tt(t,f,m),E=ge(x,f,m);E&&(h&&c.copySortSource||!h||E!==n)?he(l,E):c.removeOnSpill?me():pe()}}function he(o,l){var f=S(o);h&&c.copySortSource&&l===n&&f.removeChild(i),W(l)?g.emit("cancel",o,n,n):g.emit("drop",o,l,n,w),U()}function me(){if(g.dragging){var o=h||i,l=S(o);l&&l.removeChild(o),g.emit(h?"cancel":"remove",o,l,n),U()}}function pe(o){if(g.dragging){var l=arguments.length>0?o:c.revertOnSpill,f=h||i,m=S(f),x=W(m);x===!1&&l&&(h?m&&m.removeChild(h):n.insertBefore(f,p)),x||l?g.emit("cancel",f,n,n):g.emit("drop",f,m,n,w),U()}}function U(){var o=h||i;ve(),bt(),o&&X.rm(o,"gu-transit"),C&&clearTimeout(C),g.dragging=!1,M&&g.emit("out",o,M,n),g.emit("dragend",o),n=i=h=p=w=C=M=null}function W(o,l){var f;return l!==void 0?f=l:t?f=w:f=V(h||i),o===n&&f===p}function ge(o,l,f){for(var m=o;m&&!x();)m=S(m);return m;function x(){var E=L(m);if(E===!1)return!1;var B=be(m,o),y=Ee(m,B,l,f),R=W(m,y);return R?!0:c.accepts(i,m,n,y)}}function J(o){if(!t)return;o.preventDefault();var l=Y("clientX",o)||0,f=Y("clientY",o)||0,m=l-u,x=f-s;t.style.left=m+"px",t.style.top=x+"px";var E=h||i,B=tt(t,l,f),y=ge(B,l,f),R=y!==null&&y!==M;(R||y===null)&&(wt(),M=y,Ct());var k=S(E);if(y===n&&h&&!c.copySortSource){k&&k.removeChild(E);return}var I,F=be(y,B);if(F!==null)I=Ee(y,F,l,f);else if(c.revertOnSpill===!0&&!h)I=p,y=n;else{h&&k&&k.removeChild(E);return}(I===null&&R||I!==E&&I!==V(E))&&(w=I,y.insertBefore(E,I),g.emit("shadow",E,y,n));function N(Mt){g.emit(Mt,E,M,n)}function Ct(){R&&N("over")}function wt(){M&&N("out")}}function mt(o){X.rm(o,"gu-hide")}function pt(o){g.dragging&&X.add(o,"gu-hide")}function gt(){if(!t){var o=i.getBoundingClientRect();t=i.cloneNode(!0),t.style.width=nt(o)+"px",t.style.height=it(o)+"px",X.rm(t,"gu-transit"),X.add(t,"gu-mirror"),c.mirrorContainer.appendChild(t),T(D,"add","mousemove",J),X.add(c.mirrorContainer,"gu-unselectable"),g.emit("cloned",t,i,"mirror")}}function bt(){t&&(X.rm(c.mirrorContainer,"gu-unselectable"),T(D,"remove","mousemove",J),S(t).removeChild(t),t=null)}function be(o,l){for(var f=l;f!==o&&S(f)!==o;)f=S(f);return f===D?null:f}function Ee(o,l,f,m){var x=c.direction==="horizontal",E=l!==o?y():B();return E;function B(){var k=o.children.length,I,F,N;for(I=0;I<k;I++)if(F=o.children[I],N=F.getBoundingClientRect(),x&&N.left+N.width/2>f||!x&&N.top+N.height/2>m)return F;return null}function y(){var k=l.getBoundingClientRect();return R(x?f>k.left+nt(k)/2:m>k.top+it(k)/2)}function R(k){return k?V(l):l}}function Et(o,l){return typeof c.copy=="boolean"?c.copy:c.copy(o,l)}}function T(e,r,a,t){var n={mouseup:"touchend",mousedown:"touchstart",mousemove:"touchmove"},i={mouseup:"pointerup",mousedown:"pointerdown",mousemove:"pointermove"},u={mouseup:"MSPointerUp",mousedown:"MSPointerDown",mousemove:"MSPointerMove"};global.navigator.pointerEnabled?P[r](e,i[a],t):global.navigator.msPointerEnabled?P[r](e,u[a],t):(P[r](e,n[a],t),P[r](e,a,t))}function Ze(e){if(e.touches!==void 0)return e.touches.length;if(e.which!==void 0&&e.which!==0)return e.which;if(e.buttons!==void 0)return e.buttons;var r=e.button;if(r!==void 0)return r&1?1:r&2?3:r&4?2:0}function Lt(e){var r=e.getBoundingClientRect();return{left:r.left+et("scrollLeft","pageXOffset"),top:r.top+et("scrollTop","pageYOffset")}}function et(e,r){return typeof global[r]<"u"?global[r]:D.clientHeight?D[e]:A.body[e]}function tt(e,r,a){e=e||{};var t=e.className||"",n;return e.className+=" gu-hide",n=A.elementFromPoint(r,a),e.className=t,n}function _t(){return!1}function rt(){return!0}function nt(e){return e.width||e.right-e.left}function it(e){return e.height||e.bottom-e.top}function S(e){return e.parentNode===A?null:e.parentNode}function ot(e){return e.tagName==="INPUT"||e.tagName==="TEXTAREA"||e.tagName==="SELECT"||at(e)}function at(e){return!e||e.contentEditable==="false"?!1:e.contentEditable==="true"?!0:at(S(e))}function V(e){return e.nextElementSibling||r();function r(){var a=e;do a=a.nextSibling;while(a&&a.nodeType!==1);return a}}function zt(e){return e.targetTouches&&e.targetTouches.length?e.targetTouches[0]:e.changedTouches&&e.changedTouches.length?e.changedTouches[0]:e}function Y(e,r){var a=zt(r),t={pageX:"clientX",pageY:"clientY"};return e in t&&!(e in a)&&t[e]in a&&(e=t[e]),a[e]}st.exports=Ht});var se=yt(ut(),1),ie=class{constructor(r,a,t){this.name=r,this.drake=a,this.options=t,this.initEvents=!1}},v=function(e){return e.Cancel="cancel",e.Cloned="cloned",e.Drag="drag",e.DragEnd="dragend",e.Drop="drop",e.Out="out",e.Over="over",e.Remove="remove",e.Shadow="shadow",e.DropModel="dropModel",e.RemoveModel="removeModel",e}(v||{}),Kt=Object.keys(v).map(e=>v[e]),Ut=se.default||se,G=class{constructor(r=Ut){this.build=r}},j=(e,r,a)=>t=>t.pipe(ee(({event:n,name:i})=>n===e&&(r===void 0||i===r)),Ce(({name:n,args:i})=>a(n,i))),Wt=(e,[r,a,t])=>({name:e,el:r,container:a,source:t}),oe=(()=>{let r=class r{constructor(t){this.drakeFactory=t,this.groups={},this.dispatch$=new Z,this.elContainerSource=n=>i=>this.dispatch$.pipe(j(n,i,Wt)),this.cancel=this.elContainerSource(v.Cancel),this.remove=this.elContainerSource(v.Remove),this.shadow=this.elContainerSource(v.Shadow),this.over=this.elContainerSource(v.Over),this.out=this.elContainerSource(v.Out),this.drag=n=>this.dispatch$.pipe(j(v.Drag,n,(i,[u,s])=>({name:i,el:u,source:s}))),this.dragend=n=>this.dispatch$.pipe(j(v.DragEnd,n,(i,[u])=>({name:i,el:u}))),this.drop=n=>this.dispatch$.pipe(j(v.Drop,n,(i,[u,s,d,b])=>({name:i,el:u,target:s,source:d,sibling:b}))),this.cloned=n=>this.dispatch$.pipe(j(v.Cloned,n,(i,[u,s,d])=>({name:i,clone:u,original:s,cloneType:d}))),this.dropModel=n=>this.dispatch$.pipe(j(v.DropModel,n,(i,[u,s,d,b,p,w,h,C,M])=>({name:i,el:u,target:s,source:d,sibling:b,item:p,sourceModel:w,targetModel:h,sourceIndex:C,targetIndex:M}))),this.removeModel=n=>this.dispatch$.pipe(j(v.RemoveModel,n,(i,[u,s,d,b,p,w])=>({name:i,el:u,container:s,source:d,item:b,sourceModel:p,sourceIndex:w}))),(this.drakeFactory===null||this.drakeFactory===void 0)&&(this.drakeFactory=new G)}add(t){if(this.find(t.name))throw new Error('Group named: "'+t.name+'" already exists.');return this.groups[t.name]=t,this.handleModels(t),this.setupEvents(t),t}find(t){return this.groups[t]}destroy(t){let n=this.find(t);n&&(n.drake&&n.drake.destroy(),delete this.groups[t])}createGroup(t,n){return this.add(new ie(t,this.drakeFactory.build([],n),n))}handleModels({name:t,drake:n,options:i}){let u,s,d;n.on("remove",(b,p,w)=>{if(!n.models)return;let h=n.models[n.containers.indexOf(w)];h=h.slice(0);let C=h.splice(s,1)[0];this.dispatch$.next({event:v.RemoveModel,name:t,args:[b,p,w,C,h,s]})}),n.on("drag",(b,p)=>{n.models&&(u=b,s=this.domIndexOf(b,p))}),n.on("drop",(b,p,w,h)=>{if(!n.models||!p)return;d=this.domIndexOf(b,p);let C=n.models[n.containers.indexOf(w)],M=n.models[n.containers.indexOf(p)],O;if(p===w)C=C.slice(0),O=C.splice(s,1)[0],C.splice(d,0,O),M=C;else{let c=u!==b;if(O=C[s],c){if(!i.copyItem)throw new Error("If you have enabled `copy` on a group, you must provide a `copyItem` function.");O=i.copyItem(O)}if(c||(C=C.slice(0),C.splice(s,1)),M=M.slice(0),M.splice(d,0,O),c)try{p.removeChild(b)}catch{}}this.dispatch$.next({event:v.DropModel,name:t,args:[b,p,w,h,O,C,M,s,d]})})}setupEvents(t){if(t.initEvents)return;t.initEvents=!0;let n=t.name,i=this,u=s=>{switch(s){case v.Drag:t.drake.on(s,(...d)=>{this.dispatch$.next({event:s,name:n,args:d})});break;case v.Drop:t.drake.on(s,(...d)=>{this.dispatch$.next({event:s,name:n,args:d})});break;case v.DragEnd:t.drake.on(s,(...d)=>{this.dispatch$.next({event:s,name:n,args:d})});break;case v.Cancel:case v.Remove:case v.Shadow:case v.Over:case v.Out:t.drake.on(s,(...d)=>{this.dispatch$.next({event:s,name:n,args:d})});break;case v.Cloned:t.drake.on(s,(...d)=>{this.dispatch$.next({event:s,name:n,args:d})});break;case v.DropModel:t.drake.on(s,(...d)=>{this.dispatch$.next({event:s,name:n,args:d})});break;case v.RemoveModel:t.drake.on(s,(...d)=>{this.dispatch$.next({event:s,name:n,args:d})});break;default:break}};Kt.forEach(u)}domIndexOf(t,n){if(n)return Array.prototype.indexOf.call(n.children,t)}};r.\u0275fac=function(n){return new(n||r)(ye(G,8))},r.\u0275prov=we({token:r,factory:r.\u0275fac,providedIn:"root"});let e=r;return e})(),pr=(()=>{let r=class r{get container(){return this.el&&this.el.nativeElement}constructor(t,n){this.el=t,this.dragulaService=n,this.dragulaModelChange=new Ie}ngOnChanges(t){if(t&&t.dragula){let{previousValue:n,currentValue:i,firstChange:u}=t.dragula,s=!!n,d=!!i;s&&this.teardown(n),d&&this.setup()}else if(t&&t.dragulaModel){let{previousValue:n,currentValue:i,firstChange:u}=t.dragulaModel,s=this.group?.drake;if(this.dragula&&s){s.models=s.models||[];let d=s.models.indexOf(n);d!==-1?(s.models.splice(d,1),i&&s.models.splice(d,0,i)):i&&s.models.push(i)}}}setup(){let t=i=>{this.dragulaModel&&(i.drake?.models?i.drake?.models?.push(this.dragulaModel):i.drake&&(i.drake.models=[this.dragulaModel]))};if(!this.dragula)return;let n=this.dragulaService.find(this.dragula);if(!n){let i={};n=this.dragulaService.createGroup(this.dragula,i)}t(n),n.drake?.containers.push(this.container),this.subscribe(this.dragula),this.group=n}subscribe(t){this.subs=new Q,this.subs.add(this.dragulaService.dropModel(t).subscribe(({source:n,target:i,sourceModel:u,targetModel:s})=>{n===this.el.nativeElement?this.dragulaModelChange.emit(u):i===this.el.nativeElement&&this.dragulaModelChange.emit(s)})),this.subs.add(this.dragulaService.removeModel(t).subscribe(({source:n,sourceModel:i})=>{n===this.el.nativeElement&&this.dragulaModelChange.emit(i)}))}teardown(t){this.subs&&this.subs.unsubscribe();let n=this.dragulaService.find(t);if(n){let i=n.drake?.containers.indexOf(this.el.nativeElement);if(i!==-1&&n.drake?.containers.splice(i,1),this.dragulaModel&&n.drake&&n.drake.models){let u=n.drake.models.indexOf(this.dragulaModel);u!==-1&&n.drake.models.splice(u,1)}}}ngOnDestroy(){this.dragula&&this.teardown(this.dragula)}};r.\u0275fac=function(n){return new(n||r)(te(Se),te(oe))},r.\u0275dir=ke({type:r,selectors:[["","dragula",""]],inputs:{dragula:"dragula",dragulaModel:"dragulaModel"},outputs:{dragulaModelChange:"dragulaModelChange"},standalone:!1,features:[xe]});let e=r;return e})(),gr=(()=>{let r=class r{static forRoot(){return{ngModule:r,providers:[oe]}}};r.\u0275fac=function(n){return new(n||r)},r.\u0275mod=Oe({type:r}),r.\u0275inj=Me({providers:[oe]});let e=r;return e})(),br=new G((e,r)=>new ae(e,r)),ae=class{constructor(r=[],a={},t){this.containers=r,this.options=a,this.models=t,this.emitter$=new Z,this.subs=new Q,this.dragging=!1}on(r,a){this.subs.add(this.emitter$.pipe(ee(({eventType:t})=>t===r)).subscribe(({eventType:t,args:n})=>{if(t===v.Drag){let i=Array.from(n),u=i[0],s=i[1];a(u,s);return}if(t===v.Drop){let i=Array.from(n),u=i[0],s=i[1],d=i[2],b=i[3];a(u,s,d,b);return}if(t===v.Remove){let i=Array.from(n),u=i[0],s=i[1],d=i[2];a(u,s,d);return}a(n)}))}start(r){this.dragging=!0}end(){this.dragging=!1}cancel(r){this.dragging=!1}canMove(r){return this.options.accepts?this.options.accepts(r):!1}remove(){this.dragging=!1}destroy(){this.subs.unsubscribe()}emit(r,...a){this.emitter$.next({eventType:r,args:a})}};export{oe as a,pr as b,gr as c};
@@ -0,0 +1 @@
1
+ import{a as c0}from"./chunk-NHCHG3Z6.js";import{m as t0,n as H}from"./chunk-CF2ZN7LY.js";import{b as q,c as j,e as z,l as X,r as J,s as Z,t as Q,z as e0}from"./chunk-T252YJXA.js";import{a as B0}from"./chunk-OFS35DEJ.js";import{b as s0}from"./chunk-24HGAFIA.js";import{b as o0}from"./chunk-PBJK6VW5.js";import{k as a0,n as r0}from"./chunk-OCUYP77B.js";import{a as i0,b as n0}from"./chunk-LXXELGX4.js";import{Bc as l,Cc as d,Hb as v,Ib as C,Jb as S,Lb as _,Mb as h,Nb as y,Ob as V,Pb as s,Qb as r,Rb as I,Vb as F,Yb as R,Zb as m,a as G,ab as a,b as $,e as f0,g as g0,ga as Y,h as L,kc as o,la as E,lc as c,mb as K,mc as A,n as k,pb as f,ra as O,rc as b,sa as P,sc as w,tc as U,w as N}from"./chunk-SKZUTSHE.js";var l0=f0(T=>{"use strict";Object.defineProperty(T,"__esModule",{value:!0});T.Enums=T.Categories=T.Characteristics=T.Services=void 0;T.Services={"00000260-0000-1000-8000-0026BB765291":"AccessCode",AccessCode:"00000260-0000-1000-8000-0026BB765291","000000DA-0000-1000-8000-0026BB765291":"AccessControl",AccessControl:"000000DA-0000-1000-8000-0026BB765291","0000003E-0000-1000-8000-0026BB765291":"AccessoryInformation",AccessoryInformation:"0000003E-0000-1000-8000-0026BB765291","00000270-0000-1000-8000-0026BB765291":"AccessoryMetrics",AccessoryMetrics:"00000270-0000-1000-8000-0026BB765291","00000239-0000-1000-8000-0026BB765291":"AccessoryRuntimeInformation",AccessoryRuntimeInformation:"00000239-0000-1000-8000-0026BB765291","000000BB-0000-1000-8000-0026BB765291":"AirPurifier",AirPurifier:"000000BB-0000-1000-8000-0026BB765291","0000008D-0000-1000-8000-0026BB765291":"AirQualitySensor",AirQualitySensor:"0000008D-0000-1000-8000-0026BB765291","00000267-0000-1000-8000-0026BB765291":"AssetUpdate",AssetUpdate:"00000267-0000-1000-8000-0026BB765291","0000026A-0000-1000-8000-0026BB765291":"Assistant",Assistant:"0000026A-0000-1000-8000-0026BB765291","00000127-0000-1000-8000-0026BB765291":"AudioStreamManagement",AudioStreamManagement:"00000127-0000-1000-8000-0026BB765291","00000096-0000-1000-8000-0026BB765291":"Battery",Battery:"00000096-0000-1000-8000-0026BB765291","0000021A-0000-1000-8000-0026BB765291":"CameraOperatingMode",CameraOperatingMode:"0000021A-0000-1000-8000-0026BB765291","00000204-0000-1000-8000-0026BB765291":"CameraRecordingManagement",CameraRecordingManagement:"00000204-0000-1000-8000-0026BB765291","00000110-0000-1000-8000-0026BB765291":"CameraRTPStreamManagement",CameraRTPStreamManagement:"00000110-0000-1000-8000-0026BB765291","00000097-0000-1000-8000-0026BB765291":"CarbonDioxideSensor",CarbonDioxideSensor:"00000097-0000-1000-8000-0026BB765291","0000007F-0000-1000-8000-0026BB765291":"CarbonMonoxideSensor",CarbonMonoxideSensor:"0000007F-0000-1000-8000-0026BB765291","0000005A-0000-1000-8000-0026BB765291":"CloudRelay",CloudRelay:"0000005A-0000-1000-8000-0026BB765291","00000080-0000-1000-8000-0026BB765291":"ContactSensor",ContactSensor:"00000080-0000-1000-8000-0026BB765291","00000129-0000-1000-8000-0026BB765291":"DataStreamTransportManagement",DataStreamTransportManagement:"00000129-0000-1000-8000-0026BB765291","00000237-0000-1000-8000-0026BB765291":"Diagnostics",Diagnostics:"00000237-0000-1000-8000-0026BB765291","00000081-0000-1000-8000-0026BB765291":"Door",Door:"00000081-0000-1000-8000-0026BB765291","00000121-0000-1000-8000-0026BB765291":"Doorbell",Doorbell:"00000121-0000-1000-8000-0026BB765291","00000040-0000-1000-8000-0026BB765291":"Fan",Fan:"00000040-0000-1000-8000-0026BB765291","000000B7-0000-1000-8000-0026BB765291":"Fanv2",Fanv2:"000000B7-0000-1000-8000-0026BB765291","000000D7-0000-1000-8000-0026BB765291":"Faucet",Faucet:"000000D7-0000-1000-8000-0026BB765291","000000BA-0000-1000-8000-0026BB765291":"FilterMaintenance",FilterMaintenance:"000000BA-0000-1000-8000-0026BB765291","00000236-0000-1000-8000-0026BB765291":"FirmwareUpdate",FirmwareUpdate:"00000236-0000-1000-8000-0026BB765291","00000041-0000-1000-8000-0026BB765291":"GarageDoorOpener",GarageDoorOpener:"00000041-0000-1000-8000-0026BB765291","000000BC-0000-1000-8000-0026BB765291":"HeaterCooler",HeaterCooler:"000000BC-0000-1000-8000-0026BB765291","000000BD-0000-1000-8000-0026BB765291":"HumidifierDehumidifier",HumidifierDehumidifier:"000000BD-0000-1000-8000-0026BB765291","00000082-0000-1000-8000-0026BB765291":"HumiditySensor",HumiditySensor:"00000082-0000-1000-8000-0026BB765291","000000D9-0000-1000-8000-0026BB765291":"InputSource",InputSource:"000000D9-0000-1000-8000-0026BB765291","000000CF-0000-1000-8000-0026BB765291":"IrrigationSystem",IrrigationSystem:"000000CF-0000-1000-8000-0026BB765291","00000083-0000-1000-8000-0026BB765291":"LeakSensor",LeakSensor:"00000083-0000-1000-8000-0026BB765291","00000043-0000-1000-8000-0026BB765291":"Lightbulb",Lightbulb:"00000043-0000-1000-8000-0026BB765291","00000084-0000-1000-8000-0026BB765291":"LightSensor",LightSensor:"00000084-0000-1000-8000-0026BB765291","00000044-0000-1000-8000-0026BB765291":"LockManagement",LockManagement:"00000044-0000-1000-8000-0026BB765291","00000045-0000-1000-8000-0026BB765291":"LockMechanism",LockMechanism:"00000045-0000-1000-8000-0026BB765291","00000112-0000-1000-8000-0026BB765291":"Microphone",Microphone:"00000112-0000-1000-8000-0026BB765291","00000085-0000-1000-8000-0026BB765291":"MotionSensor",MotionSensor:"00000085-0000-1000-8000-0026BB765291","00000266-0000-1000-8000-0026BB765291":"NFCAccess",NFCAccess:"00000266-0000-1000-8000-0026BB765291","00000086-0000-1000-8000-0026BB765291":"OccupancySensor",OccupancySensor:"00000086-0000-1000-8000-0026BB765291","00000047-0000-1000-8000-0026BB765291":"Outlet",Outlet:"00000047-0000-1000-8000-0026BB765291","00000055-0000-1000-8000-0026BB765291":"Pairing",Pairing:"00000055-0000-1000-8000-0026BB765291","00000221-0000-1000-8000-0026BB765291":"PowerManagement",PowerManagement:"00000221-0000-1000-8000-0026BB765291","000000A2-0000-1000-8000-0026BB765291":"ProtocolInformation",ProtocolInformation:"000000A2-0000-1000-8000-0026BB765291","0000007E-0000-1000-8000-0026BB765291":"SecuritySystem",SecuritySystem:"0000007E-0000-1000-8000-0026BB765291","000000CC-0000-1000-8000-0026BB765291":"ServiceLabel",ServiceLabel:"000000CC-0000-1000-8000-0026BB765291","00000133-0000-1000-8000-0026BB765291":"Siri",Siri:"00000133-0000-1000-8000-0026BB765291","00000253-0000-1000-8000-0026BB765291":"SiriEndpoint",SiriEndpoint:"00000253-0000-1000-8000-0026BB765291","000000B9-0000-1000-8000-0026BB765291":"Slats",Slats:"000000B9-0000-1000-8000-0026BB765291","00000228-0000-1000-8000-0026BB765291":"SmartSpeaker",SmartSpeaker:"00000228-0000-1000-8000-0026BB765291","00000087-0000-1000-8000-0026BB765291":"SmokeSensor",SmokeSensor:"00000087-0000-1000-8000-0026BB765291","00000113-0000-1000-8000-0026BB765291":"Speaker",Speaker:"00000113-0000-1000-8000-0026BB765291","00000088-0000-1000-8000-0026BB765291":"StatefulProgrammableSwitch",StatefulProgrammableSwitch:"00000088-0000-1000-8000-0026BB765291","00000089-0000-1000-8000-0026BB765291":"StatelessProgrammableSwitch",StatelessProgrammableSwitch:"00000089-0000-1000-8000-0026BB765291","00000049-0000-1000-8000-0026BB765291":"Switch",Switch:"00000049-0000-1000-8000-0026BB765291","0000022E-0000-1000-8000-0026BB765291":"TapManagement",TapManagement:"0000022E-0000-1000-8000-0026BB765291","00000125-0000-1000-8000-0026BB765291":"TargetControl",TargetControl:"00000125-0000-1000-8000-0026BB765291","00000122-0000-1000-8000-0026BB765291":"TargetControlManagement",TargetControlManagement:"00000122-0000-1000-8000-0026BB765291","000000D8-0000-1000-8000-0026BB765291":"Television",Television:"000000D8-0000-1000-8000-0026BB765291",TelevisionSpeaker:"00000113-0000-1000-8000-0026BB765291","0000008A-0000-1000-8000-0026BB765291":"TemperatureSensor",TemperatureSensor:"0000008A-0000-1000-8000-0026BB765291","0000004A-0000-1000-8000-0026BB765291":"Thermostat",Thermostat:"0000004A-0000-1000-8000-0026BB765291","00000701-0000-1000-8000-0026BB765291":"ThreadTransport",ThreadTransport:"00000701-0000-1000-8000-0026BB765291","00000203-0000-1000-8000-0026BB765291":"TransferTransportManagement",TransferTransportManagement:"00000203-0000-1000-8000-0026BB765291","00000056-0000-1000-8000-0026BB765291":"Tunnel",Tunnel:"00000056-0000-1000-8000-0026BB765291","000000D0-0000-1000-8000-0026BB765291":"Valve",Valve:"000000D0-0000-1000-8000-0026BB765291","0000020A-0000-1000-8000-0026BB765291":"WiFiRouter",WiFiRouter:"0000020A-0000-1000-8000-0026BB765291","0000020F-0000-1000-8000-0026BB765291":"WiFiSatellite",WiFiSatellite:"0000020F-0000-1000-8000-0026BB765291","0000022A-0000-1000-8000-0026BB765291":"WiFiTransport",WiFiTransport:"0000022A-0000-1000-8000-0026BB765291","0000008B-0000-1000-8000-0026BB765291":"Window",Window:"0000008B-0000-1000-8000-0026BB765291","0000008C-0000-1000-8000-0026BB765291":"WindowCovering",WindowCovering:"0000008C-0000-1000-8000-0026BB765291"};T.Characteristics={"00000262-0000-1000-8000-0026BB765291":"AccessCodeControlPoint",AccessCodeControlPoint:"00000262-0000-1000-8000-0026BB765291","00000261-0000-1000-8000-0026BB765291":"AccessCodeSupportedConfiguration",AccessCodeSupportedConfiguration:"00000261-0000-1000-8000-0026BB765291","000000E5-0000-1000-8000-0026BB765291":"AccessControlLevel",AccessControlLevel:"000000E5-0000-1000-8000-0026BB765291","000000A6-0000-1000-8000-0026BB765291":"AccessoryFlags",AccessoryFlags:"000000A6-0000-1000-8000-0026BB765291","00000057-0000-1000-8000-0026BB765291":"AccessoryIdentifier",AccessoryIdentifier:"00000057-0000-1000-8000-0026BB765291","000000B0-0000-1000-8000-0026BB765291":"Active",Active:"000000B0-0000-1000-8000-0026BB765291","000000E7-0000-1000-8000-0026BB765291":"ActiveIdentifier",ActiveIdentifier:"000000E7-0000-1000-8000-0026BB765291","0000023B-0000-1000-8000-0026BB765291":"ActivityInterval",ActivityInterval:"0000023B-0000-1000-8000-0026BB765291","00000001-0000-1000-8000-0026BB765291":"AdministratorOnlyAccess",AdministratorOnlyAccess:"00000001-0000-1000-8000-0026BB765291","00000064-0000-1000-8000-0026BB765291":"AirParticulateDensity",AirParticulateDensity:"00000064-0000-1000-8000-0026BB765291","00000065-0000-1000-8000-0026BB765291":"AirParticulateSize",AirParticulateSize:"00000065-0000-1000-8000-0026BB765291","0000025B-0000-1000-8000-0026BB765291":"AirPlayEnable",AirPlayEnable:"0000025B-0000-1000-8000-0026BB765291","00000095-0000-1000-8000-0026BB765291":"AirQuality",AirQuality:"00000095-0000-1000-8000-0026BB765291","000000A4-0000-1000-8000-0026BB765291":"AppMatchingIdentifier",AppMatchingIdentifier:"000000A4-0000-1000-8000-0026BB765291","00000269-0000-1000-8000-0026BB765291":"AssetUpdateReadiness",AssetUpdateReadiness:"00000269-0000-1000-8000-0026BB765291","00000005-0000-1000-8000-0026BB765291":"AudioFeedback",AudioFeedback:"00000005-0000-1000-8000-0026BB765291","00000068-0000-1000-8000-0026BB765291":"BatteryLevel",BatteryLevel:"00000068-0000-1000-8000-0026BB765291","00000008-0000-1000-8000-0026BB765291":"Brightness",Brightness:"00000008-0000-1000-8000-0026BB765291","00000126-0000-1000-8000-0026BB765291":"ButtonEvent",ButtonEvent:"00000126-0000-1000-8000-0026BB765291","0000021D-0000-1000-8000-0026BB765291":"CameraOperatingModeIndicator",CameraOperatingModeIndicator:"0000021D-0000-1000-8000-0026BB765291","00000092-0000-1000-8000-0026BB765291":"CarbonDioxideDetected",CarbonDioxideDetected:"00000092-0000-1000-8000-0026BB765291","00000093-0000-1000-8000-0026BB765291":"CarbonDioxideLevel",CarbonDioxideLevel:"00000093-0000-1000-8000-0026BB765291","00000094-0000-1000-8000-0026BB765291":"CarbonDioxidePeakLevel",CarbonDioxidePeakLevel:"00000094-0000-1000-8000-0026BB765291","00000069-0000-1000-8000-0026BB765291":"CarbonMonoxideDetected",CarbonMonoxideDetected:"00000069-0000-1000-8000-0026BB765291","00000090-0000-1000-8000-0026BB765291":"CarbonMonoxideLevel",CarbonMonoxideLevel:"00000090-0000-1000-8000-0026BB765291","00000091-0000-1000-8000-0026BB765291":"CarbonMonoxidePeakLevel",CarbonMonoxidePeakLevel:"00000091-0000-1000-8000-0026BB765291","00000246-0000-1000-8000-0026BB765291":"CCAEnergyDetectThreshold",CCAEnergyDetectThreshold:"00000246-0000-1000-8000-0026BB765291","00000245-0000-1000-8000-0026BB765291":"CCASignalDetectThreshold",CCASignalDetectThreshold:"00000245-0000-1000-8000-0026BB765291","0000024B-0000-1000-8000-0026BB765291":"CharacteristicValueActiveTransitionCount",CharacteristicValueActiveTransitionCount:"0000024B-0000-1000-8000-0026BB765291","00000143-0000-1000-8000-0026BB765291":"CharacteristicValueTransitionControl",CharacteristicValueTransitionControl:"00000143-0000-1000-8000-0026BB765291","0000008F-0000-1000-8000-0026BB765291":"ChargingState",ChargingState:"0000008F-0000-1000-8000-0026BB765291","000000DD-0000-1000-8000-0026BB765291":"ClosedCaptions",ClosedCaptions:"000000DD-0000-1000-8000-0026BB765291","000000CE-0000-1000-8000-0026BB765291":"ColorTemperature",ColorTemperature:"000000CE-0000-1000-8000-0026BB765291","00000263-0000-1000-8000-0026BB765291":"ConfigurationState",ConfigurationState:"00000263-0000-1000-8000-0026BB765291","000000E3-0000-1000-8000-0026BB765291":"ConfiguredName",ConfiguredName:"000000E3-0000-1000-8000-0026BB765291","0000006A-0000-1000-8000-0026BB765291":"ContactSensorState",ContactSensorState:"0000006A-0000-1000-8000-0026BB765291","0000000D-0000-1000-8000-0026BB765291":"CoolingThresholdTemperature",CoolingThresholdTemperature:"0000000D-0000-1000-8000-0026BB765291","00000250-0000-1000-8000-0026BB765291":"CryptoHash",CryptoHash:"00000250-0000-1000-8000-0026BB765291","000000A9-0000-1000-8000-0026BB765291":"CurrentAirPurifierState",CurrentAirPurifierState:"000000A9-0000-1000-8000-0026BB765291","0000006B-0000-1000-8000-0026BB765291":"CurrentAmbientLightLevel",CurrentAmbientLightLevel:"0000006B-0000-1000-8000-0026BB765291","0000000E-0000-1000-8000-0026BB765291":"CurrentDoorState",CurrentDoorState:"0000000E-0000-1000-8000-0026BB765291","000000AF-0000-1000-8000-0026BB765291":"CurrentFanState",CurrentFanState:"000000AF-0000-1000-8000-0026BB765291","000000B1-0000-1000-8000-0026BB765291":"CurrentHeaterCoolerState",CurrentHeaterCoolerState:"000000B1-0000-1000-8000-0026BB765291","0000000F-0000-1000-8000-0026BB765291":"CurrentHeatingCoolingState",CurrentHeatingCoolingState:"0000000F-0000-1000-8000-0026BB765291","0000006C-0000-1000-8000-0026BB765291":"CurrentHorizontalTiltAngle",CurrentHorizontalTiltAngle:"0000006C-0000-1000-8000-0026BB765291","000000B3-0000-1000-8000-0026BB765291":"CurrentHumidifierDehumidifierState",CurrentHumidifierDehumidifierState:"000000B3-0000-1000-8000-0026BB765291","000000E0-0000-1000-8000-0026BB765291":"CurrentMediaState",CurrentMediaState:"000000E0-0000-1000-8000-0026BB765291","0000006D-0000-1000-8000-0026BB765291":"CurrentPosition",CurrentPosition:"0000006D-0000-1000-8000-0026BB765291","00000010-0000-1000-8000-0026BB765291":"CurrentRelativeHumidity",CurrentRelativeHumidity:"00000010-0000-1000-8000-0026BB765291","000000AA-0000-1000-8000-0026BB765291":"CurrentSlatState",CurrentSlatState:"000000AA-0000-1000-8000-0026BB765291","00000011-0000-1000-8000-0026BB765291":"CurrentTemperature",CurrentTemperature:"00000011-0000-1000-8000-0026BB765291","000000C1-0000-1000-8000-0026BB765291":"CurrentTiltAngle",CurrentTiltAngle:"000000C1-0000-1000-8000-0026BB765291","0000022B-0000-1000-8000-0026BB765291":"CurrentTransport",CurrentTransport:"0000022B-0000-1000-8000-0026BB765291","0000006E-0000-1000-8000-0026BB765291":"CurrentVerticalTiltAngle",CurrentVerticalTiltAngle:"0000006E-0000-1000-8000-0026BB765291","00000135-0000-1000-8000-0026BB765291":"CurrentVisibilityState",CurrentVisibilityState:"00000135-0000-1000-8000-0026BB765291","00000138-0000-1000-8000-0026BB765291":"DataStreamHAPTransport",DataStreamHAPTransport:"00000138-0000-1000-8000-0026BB765291","00000139-0000-1000-8000-0026BB765291":"DataStreamHAPTransportInterrupt",DataStreamHAPTransportInterrupt:"00000139-0000-1000-8000-0026BB765291","00000224-0000-1000-8000-0026BB765291":"DiagonalFieldOfView",DiagonalFieldOfView:"00000224-0000-1000-8000-0026BB765291","0000011D-0000-1000-8000-0026BB765291":"DigitalZoom",DigitalZoom:"0000011D-0000-1000-8000-0026BB765291","00000136-0000-1000-8000-0026BB765291":"DisplayOrder",DisplayOrder:"00000136-0000-1000-8000-0026BB765291","0000023D-0000-1000-8000-0026BB765291":"EventRetransmissionMaximum",EventRetransmissionMaximum:"0000023D-0000-1000-8000-0026BB765291","00000223-0000-1000-8000-0026BB765291":"EventSnapshotsActive",EventSnapshotsActive:"00000223-0000-1000-8000-0026BB765291","0000023E-0000-1000-8000-0026BB765291":"EventTransmissionCounters",EventTransmissionCounters:"0000023E-0000-1000-8000-0026BB765291","000000AC-0000-1000-8000-0026BB765291":"FilterChangeIndication",FilterChangeIndication:"000000AC-0000-1000-8000-0026BB765291","000000AB-0000-1000-8000-0026BB765291":"FilterLifeLevel",FilterLifeLevel:"000000AB-0000-1000-8000-0026BB765291","00000052-0000-1000-8000-0026BB765291":"FirmwareRevision",FirmwareRevision:"00000052-0000-1000-8000-0026BB765291","00000234-0000-1000-8000-0026BB765291":"FirmwareUpdateReadiness",FirmwareUpdateReadiness:"00000234-0000-1000-8000-0026BB765291","00000235-0000-1000-8000-0026BB765291":"FirmwareUpdateStatus",FirmwareUpdateStatus:"00000235-0000-1000-8000-0026BB765291","0000026C-0000-1000-8000-0026BB765291":"HardwareFinish",HardwareFinish:"0000026C-0000-1000-8000-0026BB765291","00000053-0000-1000-8000-0026BB765291":"HardwareRevision",HardwareRevision:"00000053-0000-1000-8000-0026BB765291","0000024A-0000-1000-8000-0026BB765291":"HeartBeat",HeartBeat:"0000024A-0000-1000-8000-0026BB765291","00000012-0000-1000-8000-0026BB765291":"HeatingThresholdTemperature",HeatingThresholdTemperature:"00000012-0000-1000-8000-0026BB765291","0000006F-0000-1000-8000-0026BB765291":"HoldPosition",HoldPosition:"0000006F-0000-1000-8000-0026BB765291","0000021B-0000-1000-8000-0026BB765291":"HomeKitCameraActive",HomeKitCameraActive:"0000021B-0000-1000-8000-0026BB765291","00000013-0000-1000-8000-0026BB765291":"Hue",Hue:"00000013-0000-1000-8000-0026BB765291","000000E6-0000-1000-8000-0026BB765291":"Identifier",Identifier:"000000E6-0000-1000-8000-0026BB765291","00000014-0000-1000-8000-0026BB765291":"Identify",Identify:"00000014-0000-1000-8000-0026BB765291","0000011F-0000-1000-8000-0026BB765291":"ImageMirroring",ImageMirroring:"0000011F-0000-1000-8000-0026BB765291","0000011E-0000-1000-8000-0026BB765291":"ImageRotation",ImageRotation:"0000011E-0000-1000-8000-0026BB765291","000000DC-0000-1000-8000-0026BB765291":"InputDeviceType",InputDeviceType:"000000DC-0000-1000-8000-0026BB765291","000000DB-0000-1000-8000-0026BB765291":"InputSourceType",InputSourceType:"000000DB-0000-1000-8000-0026BB765291","000000D2-0000-1000-8000-0026BB765291":"InUse",InUse:"000000D2-0000-1000-8000-0026BB765291","000000D6-0000-1000-8000-0026BB765291":"IsConfigured",IsConfigured:"000000D6-0000-1000-8000-0026BB765291","00000070-0000-1000-8000-0026BB765291":"LeakDetected",LeakDetected:"00000070-0000-1000-8000-0026BB765291","00000050-0000-1000-8000-0026BB765291":"ListPairings",ListPairings:"00000050-0000-1000-8000-0026BB765291","00000019-0000-1000-8000-0026BB765291":"LockControlPoint",LockControlPoint:"00000019-0000-1000-8000-0026BB765291","0000001D-0000-1000-8000-0026BB765291":"LockCurrentState",LockCurrentState:"0000001D-0000-1000-8000-0026BB765291","0000001C-0000-1000-8000-0026BB765291":"LockLastKnownAction",LockLastKnownAction:"0000001C-0000-1000-8000-0026BB765291","0000001A-0000-1000-8000-0026BB765291":"LockManagementAutoSecurityTimeout",LockManagementAutoSecurityTimeout:"0000001A-0000-1000-8000-0026BB765291","000000A7-0000-1000-8000-0026BB765291":"LockPhysicalControls",LockPhysicalControls:"000000A7-0000-1000-8000-0026BB765291","0000001E-0000-1000-8000-0026BB765291":"LockTargetState",LockTargetState:"0000001E-0000-1000-8000-0026BB765291","0000001F-0000-1000-8000-0026BB765291":"Logs",Logs:"0000001F-0000-1000-8000-0026BB765291","00000247-0000-1000-8000-0026BB765291":"MACRetransmissionMaximum",MACRetransmissionMaximum:"00000247-0000-1000-8000-0026BB765291","00000248-0000-1000-8000-0026BB765291":"MACTransmissionCounters",MACTransmissionCounters:"00000248-0000-1000-8000-0026BB765291","00000215-0000-1000-8000-0026BB765291":"ManagedNetworkEnable",ManagedNetworkEnable:"00000215-0000-1000-8000-0026BB765291","00000227-0000-1000-8000-0026BB765291":"ManuallyDisabled",ManuallyDisabled:"00000227-0000-1000-8000-0026BB765291","00000020-0000-1000-8000-0026BB765291":"Manufacturer",Manufacturer:"00000020-0000-1000-8000-0026BB765291","0000026D-0000-1000-8000-0026BB765291":"MatterFirmwareRevisionNumber",MatterFirmwareRevisionNumber:"0000026D-0000-1000-8000-0026BB765291","0000026E-0000-1000-8000-0026BB765291":"MatterFirmwareUpdateStatus",MatterFirmwareUpdateStatus:"0000026E-0000-1000-8000-0026BB765291","00000243-0000-1000-8000-0026BB765291":"MaximumTransmitPower",MaximumTransmitPower:"00000243-0000-1000-8000-0026BB765291","00000272-0000-1000-8000-0026BB765291":"MetricsBufferFullState",MetricsBufferFullState:"00000272-0000-1000-8000-0026BB765291","00000021-0000-1000-8000-0026BB765291":"Model",Model:"00000021-0000-1000-8000-0026BB765291","00000022-0000-1000-8000-0026BB765291":"MotionDetected",MotionDetected:"00000022-0000-1000-8000-0026BB765291","0000026B-0000-1000-8000-0026BB765291":"MultifunctionButton",MultifunctionButton:"0000026B-0000-1000-8000-0026BB765291","0000011A-0000-1000-8000-0026BB765291":"Mute",Mute:"0000011A-0000-1000-8000-0026BB765291","00000023-0000-1000-8000-0026BB765291":"Name",Name:"00000023-0000-1000-8000-0026BB765291","0000021F-0000-1000-8000-0026BB765291":"NetworkAccessViolationControl",NetworkAccessViolationControl:"0000021F-0000-1000-8000-0026BB765291","0000020C-0000-1000-8000-0026BB765291":"NetworkClientProfileControl",NetworkClientProfileControl:"0000020C-0000-1000-8000-0026BB765291","0000020D-0000-1000-8000-0026BB765291":"NetworkClientStatusControl",NetworkClientStatusControl:"0000020D-0000-1000-8000-0026BB765291","00000264-0000-1000-8000-0026BB765291":"NFCAccessControlPoint",NFCAccessControlPoint:"00000264-0000-1000-8000-0026BB765291","00000265-0000-1000-8000-0026BB765291":"NFCAccessSupportedConfiguration",NFCAccessSupportedConfiguration:"00000265-0000-1000-8000-0026BB765291","0000011B-0000-1000-8000-0026BB765291":"NightVision",NightVision:"0000011B-0000-1000-8000-0026BB765291","000000C4-0000-1000-8000-0026BB765291":"NitrogenDioxideDensity",NitrogenDioxideDensity:"000000C4-0000-1000-8000-0026BB765291","00000024-0000-1000-8000-0026BB765291":"ObstructionDetected",ObstructionDetected:"00000024-0000-1000-8000-0026BB765291","00000071-0000-1000-8000-0026BB765291":"OccupancyDetected",OccupancyDetected:"00000071-0000-1000-8000-0026BB765291","00000025-0000-1000-8000-0026BB765291":"On",On:"00000025-0000-1000-8000-0026BB765291","00000232-0000-1000-8000-0026BB765291":"OperatingStateResponse",OperatingStateResponse:"00000232-0000-1000-8000-0026BB765291","0000011C-0000-1000-8000-0026BB765291":"OpticalZoom",OpticalZoom:"0000011C-0000-1000-8000-0026BB765291","00000026-0000-1000-8000-0026BB765291":"OutletInUse",OutletInUse:"00000026-0000-1000-8000-0026BB765291","000000C3-0000-1000-8000-0026BB765291":"OzoneDensity",OzoneDensity:"000000C3-0000-1000-8000-0026BB765291","0000004F-0000-1000-8000-0026BB765291":"PairingFeatures",PairingFeatures:"0000004F-0000-1000-8000-0026BB765291","0000004C-0000-1000-8000-0026BB765291":"PairSetup",PairSetup:"0000004C-0000-1000-8000-0026BB765291","0000004E-0000-1000-8000-0026BB765291":"PairVerify",PairVerify:"0000004E-0000-1000-8000-0026BB765291","000000E4-0000-1000-8000-0026BB765291":"PasswordSetting",PasswordSetting:"000000E4-0000-1000-8000-0026BB765291","00000225-0000-1000-8000-0026BB765291":"PeriodicSnapshotsActive",PeriodicSnapshotsActive:"00000225-0000-1000-8000-0026BB765291","000000E2-0000-1000-8000-0026BB765291":"PictureMode",PictureMode:"000000E2-0000-1000-8000-0026BB765291","0000023C-0000-1000-8000-0026BB765291":"Ping",Ping:"0000023C-0000-1000-8000-0026BB765291","000000C7-0000-1000-8000-0026BB765291":"PM10Density",PM10Density:"000000C7-0000-1000-8000-0026BB765291","000000C6-0000-1000-8000-0026BB765291":"PM2_5Density",PM2_5Density:"000000C6-0000-1000-8000-0026BB765291","00000072-0000-1000-8000-0026BB765291":"PositionState",PositionState:"00000072-0000-1000-8000-0026BB765291","000000DF-0000-1000-8000-0026BB765291":"PowerModeSelection",PowerModeSelection:"000000DF-0000-1000-8000-0026BB765291","00000220-0000-1000-8000-0026BB765291":"ProductData",ProductData:"00000220-0000-1000-8000-0026BB765291","00000073-0000-1000-8000-0026BB765291":"ProgrammableSwitchEvent",ProgrammableSwitchEvent:"00000073-0000-1000-8000-0026BB765291","00000074-0000-1000-8000-0026BB765291":"ProgrammableSwitchOutputState",ProgrammableSwitchOutputState:"00000074-0000-1000-8000-0026BB765291","000000D1-0000-1000-8000-0026BB765291":"ProgramMode",ProgramMode:"000000D1-0000-1000-8000-0026BB765291","0000023F-0000-1000-8000-0026BB765291":"ReceivedSignalStrengthIndication",ReceivedSignalStrengthIndication:"0000023F-0000-1000-8000-0026BB765291","00000244-0000-1000-8000-0026BB765291":"ReceiverSensitivity",ReceiverSensitivity:"00000244-0000-1000-8000-0026BB765291","00000226-0000-1000-8000-0026BB765291":"RecordingAudioActive",RecordingAudioActive:"00000226-0000-1000-8000-0026BB765291","000000C9-0000-1000-8000-0026BB765291":"RelativeHumidityDehumidifierThreshold",RelativeHumidityDehumidifierThreshold:"000000C9-0000-1000-8000-0026BB765291","000000CA-0000-1000-8000-0026BB765291":"RelativeHumidityHumidifierThreshold",RelativeHumidityHumidifierThreshold:"000000CA-0000-1000-8000-0026BB765291","0000005E-0000-1000-8000-0026BB765291":"RelayControlPoint",RelayControlPoint:"0000005E-0000-1000-8000-0026BB765291","0000005B-0000-1000-8000-0026BB765291":"RelayEnabled",RelayEnabled:"0000005B-0000-1000-8000-0026BB765291","0000005C-0000-1000-8000-0026BB765291":"RelayState",RelayState:"0000005C-0000-1000-8000-0026BB765291","000000D4-0000-1000-8000-0026BB765291":"RemainingDuration",RemainingDuration:"000000D4-0000-1000-8000-0026BB765291","000000E1-0000-1000-8000-0026BB765291":"RemoteKey",RemoteKey:"000000E1-0000-1000-8000-0026BB765291","000000AD-0000-1000-8000-0026BB765291":"ResetFilterIndication",ResetFilterIndication:"000000AD-0000-1000-8000-0026BB765291","00000028-0000-1000-8000-0026BB765291":"RotationDirection",RotationDirection:"00000028-0000-1000-8000-0026BB765291","00000029-0000-1000-8000-0026BB765291":"RotationSpeed",RotationSpeed:"00000029-0000-1000-8000-0026BB765291","0000020E-0000-1000-8000-0026BB765291":"RouterStatus",RouterStatus:"0000020E-0000-1000-8000-0026BB765291","0000002F-0000-1000-8000-0026BB765291":"Saturation",Saturation:"0000002F-0000-1000-8000-0026BB765291","0000008E-0000-1000-8000-0026BB765291":"SecuritySystemAlarmType",SecuritySystemAlarmType:"0000008E-0000-1000-8000-0026BB765291","00000066-0000-1000-8000-0026BB765291":"SecuritySystemCurrentState",SecuritySystemCurrentState:"00000066-0000-1000-8000-0026BB765291","00000067-0000-1000-8000-0026BB765291":"SecuritySystemTargetState",SecuritySystemTargetState:"00000067-0000-1000-8000-0026BB765291","00000128-0000-1000-8000-0026BB765291":"SelectedAudioStreamConfiguration",SelectedAudioStreamConfiguration:"00000128-0000-1000-8000-0026BB765291","00000209-0000-1000-8000-0026BB765291":"SelectedCameraRecordingConfiguration",SelectedCameraRecordingConfiguration:"00000209-0000-1000-8000-0026BB765291","0000024D-0000-1000-8000-0026BB765291":"SelectedDiagnosticsModes",SelectedDiagnosticsModes:"0000024D-0000-1000-8000-0026BB765291","00000117-0000-1000-8000-0026BB765291":"SelectedRTPStreamConfiguration",SelectedRTPStreamConfiguration:"00000117-0000-1000-8000-0026BB765291","00000252-0000-1000-8000-0026BB765291":"SelectedSleepConfiguration",SelectedSleepConfiguration:"00000252-0000-1000-8000-0026BB765291","00000030-0000-1000-8000-0026BB765291":"SerialNumber",SerialNumber:"00000030-0000-1000-8000-0026BB765291","000000CB-0000-1000-8000-0026BB765291":"ServiceLabelIndex",ServiceLabelIndex:"000000CB-0000-1000-8000-0026BB765291","000000CD-0000-1000-8000-0026BB765291":"ServiceLabelNamespace",ServiceLabelNamespace:"000000CD-0000-1000-8000-0026BB765291","000000D3-0000-1000-8000-0026BB765291":"SetDuration",SetDuration:"000000D3-0000-1000-8000-0026BB765291","00000131-0000-1000-8000-0026BB765291":"SetupDataStreamTransport",SetupDataStreamTransport:"00000131-0000-1000-8000-0026BB765291","00000118-0000-1000-8000-0026BB765291":"SetupEndpoints",SetupEndpoints:"00000118-0000-1000-8000-0026BB765291","00000201-0000-1000-8000-0026BB765291":"SetupTransferTransport",SetupTransferTransport:"00000201-0000-1000-8000-0026BB765291","00000241-0000-1000-8000-0026BB765291":"SignalToNoiseRatio",SignalToNoiseRatio:"00000241-0000-1000-8000-0026BB765291","00000255-0000-1000-8000-0026BB765291":"SiriEnable",SiriEnable:"00000255-0000-1000-8000-0026BB765291","00000254-0000-1000-8000-0026BB765291":"SiriEndpointSessionStatus",SiriEndpointSessionStatus:"00000254-0000-1000-8000-0026BB765291","0000025A-0000-1000-8000-0026BB765291":"SiriEngineVersion",SiriEngineVersion:"0000025A-0000-1000-8000-0026BB765291","00000132-0000-1000-8000-0026BB765291":"SiriInputType",SiriInputType:"00000132-0000-1000-8000-0026BB765291","00000258-0000-1000-8000-0026BB765291":"SiriLightOnUse",SiriLightOnUse:"00000258-0000-1000-8000-0026BB765291","00000256-0000-1000-8000-0026BB765291":"SiriListening",SiriListening:"00000256-0000-1000-8000-0026BB765291","00000257-0000-1000-8000-0026BB765291":"SiriTouchToUse",SiriTouchToUse:"00000257-0000-1000-8000-0026BB765291","000000C0-0000-1000-8000-0026BB765291":"SlatType",SlatType:"000000C0-0000-1000-8000-0026BB765291","000000E8-0000-1000-8000-0026BB765291":"SleepDiscoveryMode",SleepDiscoveryMode:"000000E8-0000-1000-8000-0026BB765291","0000023A-0000-1000-8000-0026BB765291":"SleepInterval",SleepInterval:"0000023A-0000-1000-8000-0026BB765291","00000076-0000-1000-8000-0026BB765291":"SmokeDetected",SmokeDetected:"00000076-0000-1000-8000-0026BB765291","00000054-0000-1000-8000-0026BB765291":"SoftwareRevision",SoftwareRevision:"00000054-0000-1000-8000-0026BB765291","00000249-0000-1000-8000-0026BB765291":"StagedFirmwareVersion",StagedFirmwareVersion:"00000249-0000-1000-8000-0026BB765291","00000075-0000-1000-8000-0026BB765291":"StatusActive",StatusActive:"00000075-0000-1000-8000-0026BB765291","00000077-0000-1000-8000-0026BB765291":"StatusFault",StatusFault:"00000077-0000-1000-8000-0026BB765291","00000078-0000-1000-8000-0026BB765291":"StatusJammed",StatusJammed:"00000078-0000-1000-8000-0026BB765291","00000079-0000-1000-8000-0026BB765291":"StatusLowBattery",StatusLowBattery:"00000079-0000-1000-8000-0026BB765291","0000007A-0000-1000-8000-0026BB765291":"StatusTampered",StatusTampered:"0000007A-0000-1000-8000-0026BB765291","00000120-0000-1000-8000-0026BB765291":"StreamingStatus",StreamingStatus:"00000120-0000-1000-8000-0026BB765291","000000C5-0000-1000-8000-0026BB765291":"SulphurDioxideDensity",SulphurDioxideDensity:"000000C5-0000-1000-8000-0026BB765291","00000268-0000-1000-8000-0026BB765291":"SupportedAssetTypes",SupportedAssetTypes:"00000268-0000-1000-8000-0026BB765291","00000207-0000-1000-8000-0026BB765291":"SupportedAudioRecordingConfiguration",SupportedAudioRecordingConfiguration:"00000207-0000-1000-8000-0026BB765291","00000115-0000-1000-8000-0026BB765291":"SupportedAudioStreamConfiguration",SupportedAudioStreamConfiguration:"00000115-0000-1000-8000-0026BB765291","00000205-0000-1000-8000-0026BB765291":"SupportedCameraRecordingConfiguration",SupportedCameraRecordingConfiguration:"00000205-0000-1000-8000-0026BB765291","00000144-0000-1000-8000-0026BB765291":"SupportedCharacteristicValueTransitionConfiguration",SupportedCharacteristicValueTransitionConfiguration:"00000144-0000-1000-8000-0026BB765291","00000130-0000-1000-8000-0026BB765291":"SupportedDataStreamTransportConfiguration",SupportedDataStreamTransportConfiguration:"00000130-0000-1000-8000-0026BB765291","0000024C-0000-1000-8000-0026BB765291":"SupportedDiagnosticsModes",SupportedDiagnosticsModes:"0000024C-0000-1000-8000-0026BB765291","00000238-0000-1000-8000-0026BB765291":"SupportedDiagnosticsSnapshot",SupportedDiagnosticsSnapshot:"00000238-0000-1000-8000-0026BB765291","00000233-0000-1000-8000-0026BB765291":"SupportedFirmwareUpdateConfiguration",SupportedFirmwareUpdateConfiguration:"00000233-0000-1000-8000-0026BB765291","00000271-0000-1000-8000-0026BB765291":"SupportedMetrics",SupportedMetrics:"00000271-0000-1000-8000-0026BB765291","00000210-0000-1000-8000-0026BB765291":"SupportedRouterConfiguration",SupportedRouterConfiguration:"00000210-0000-1000-8000-0026BB765291","00000116-0000-1000-8000-0026BB765291":"SupportedRTPConfiguration",SupportedRTPConfiguration:"00000116-0000-1000-8000-0026BB765291","00000251-0000-1000-8000-0026BB765291":"SupportedSleepConfiguration",SupportedSleepConfiguration:"00000251-0000-1000-8000-0026BB765291","00000202-0000-1000-8000-0026BB765291":"SupportedTransferTransportConfiguration",SupportedTransferTransportConfiguration:"00000202-0000-1000-8000-0026BB765291","00000206-0000-1000-8000-0026BB765291":"SupportedVideoRecordingConfiguration",SupportedVideoRecordingConfiguration:"00000206-0000-1000-8000-0026BB765291","00000114-0000-1000-8000-0026BB765291":"SupportedVideoStreamConfiguration",SupportedVideoStreamConfiguration:"00000114-0000-1000-8000-0026BB765291","000000B6-0000-1000-8000-0026BB765291":"SwingMode",SwingMode:"000000B6-0000-1000-8000-0026BB765291","0000022F-0000-1000-8000-0026BB765291":"TapType",TapType:"0000022F-0000-1000-8000-0026BB765291","000000A8-0000-1000-8000-0026BB765291":"TargetAirPurifierState",TargetAirPurifierState:"000000A8-0000-1000-8000-0026BB765291","00000124-0000-1000-8000-0026BB765291":"TargetControlList",TargetControlList:"00000124-0000-1000-8000-0026BB765291","00000123-0000-1000-8000-0026BB765291":"TargetControlSupportedConfiguration",TargetControlSupportedConfiguration:"00000123-0000-1000-8000-0026BB765291","00000032-0000-1000-8000-0026BB765291":"TargetDoorState",TargetDoorState:"00000032-0000-1000-8000-0026BB765291","000000BF-0000-1000-8000-0026BB765291":"TargetFanState",TargetFanState:"000000BF-0000-1000-8000-0026BB765291","000000B2-0000-1000-8000-0026BB765291":"TargetHeaterCoolerState",TargetHeaterCoolerState:"000000B2-0000-1000-8000-0026BB765291","00000033-0000-1000-8000-0026BB765291":"TargetHeatingCoolingState",TargetHeatingCoolingState:"00000033-0000-1000-8000-0026BB765291","0000007B-0000-1000-8000-0026BB765291":"TargetHorizontalTiltAngle",TargetHorizontalTiltAngle:"0000007B-0000-1000-8000-0026BB765291","000000B4-0000-1000-8000-0026BB765291":"TargetHumidifierDehumidifierState",TargetHumidifierDehumidifierState:"000000B4-0000-1000-8000-0026BB765291","00000137-0000-1000-8000-0026BB765291":"TargetMediaState",TargetMediaState:"00000137-0000-1000-8000-0026BB765291","0000007C-0000-1000-8000-0026BB765291":"TargetPosition",TargetPosition:"0000007C-0000-1000-8000-0026BB765291","00000034-0000-1000-8000-0026BB765291":"TargetRelativeHumidity",TargetRelativeHumidity:"00000034-0000-1000-8000-0026BB765291","00000035-0000-1000-8000-0026BB765291":"TargetTemperature",TargetTemperature:"00000035-0000-1000-8000-0026BB765291","000000C2-0000-1000-8000-0026BB765291":"TargetTiltAngle",TargetTiltAngle:"000000C2-0000-1000-8000-0026BB765291","0000007D-0000-1000-8000-0026BB765291":"TargetVerticalTiltAngle",TargetVerticalTiltAngle:"0000007D-0000-1000-8000-0026BB765291","00000134-0000-1000-8000-0026BB765291":"TargetVisibilityState",TargetVisibilityState:"00000134-0000-1000-8000-0026BB765291","00000036-0000-1000-8000-0026BB765291":"TemperatureDisplayUnits",TemperatureDisplayUnits:"00000036-0000-1000-8000-0026BB765291","0000021C-0000-1000-8000-0026BB765291":"ThirdPartyCameraActive",ThirdPartyCameraActive:"0000021C-0000-1000-8000-0026BB765291","00000704-0000-1000-8000-0026BB765291":"ThreadControlPoint",ThreadControlPoint:"00000704-0000-1000-8000-0026BB765291","00000702-0000-1000-8000-0026BB765291":"ThreadNodeCapabilities",ThreadNodeCapabilities:"00000702-0000-1000-8000-0026BB765291","00000706-0000-1000-8000-0026BB765291":"ThreadOpenThreadVersion",ThreadOpenThreadVersion:"00000706-0000-1000-8000-0026BB765291","00000703-0000-1000-8000-0026BB765291":"ThreadStatus",ThreadStatus:"00000703-0000-1000-8000-0026BB765291","00000231-0000-1000-8000-0026BB765291":"Token",Token:"00000231-0000-1000-8000-0026BB765291","00000242-0000-1000-8000-0026BB765291":"TransmitPower",TransmitPower:"00000242-0000-1000-8000-0026BB765291","00000061-0000-1000-8000-0026BB765291":"TunnelConnectionTimeout",TunnelConnectionTimeout:"00000061-0000-1000-8000-0026BB765291","00000060-0000-1000-8000-0026BB765291":"TunneledAccessoryAdvertising",TunneledAccessoryAdvertising:"00000060-0000-1000-8000-0026BB765291","00000059-0000-1000-8000-0026BB765291":"TunneledAccessoryConnected",TunneledAccessoryConnected:"00000059-0000-1000-8000-0026BB765291","00000058-0000-1000-8000-0026BB765291":"TunneledAccessoryStateNumber",TunneledAccessoryStateNumber:"00000058-0000-1000-8000-0026BB765291","000000D5-0000-1000-8000-0026BB765291":"ValveType",ValveType:"000000D5-0000-1000-8000-0026BB765291","00000037-0000-1000-8000-0026BB765291":"Version",Version:"00000037-0000-1000-8000-0026BB765291","00000229-0000-1000-8000-0026BB765291":"VideoAnalysisActive",VideoAnalysisActive:"00000229-0000-1000-8000-0026BB765291","000000C8-0000-1000-8000-0026BB765291":"VOCDensity",VOCDensity:"000000C8-0000-1000-8000-0026BB765291","00000119-0000-1000-8000-0026BB765291":"Volume",Volume:"00000119-0000-1000-8000-0026BB765291","000000E9-0000-1000-8000-0026BB765291":"VolumeControlType",VolumeControlType:"000000E9-0000-1000-8000-0026BB765291","000000EA-0000-1000-8000-0026BB765291":"VolumeSelector",VolumeSelector:"000000EA-0000-1000-8000-0026BB765291","00000222-0000-1000-8000-0026BB765291":"WakeConfiguration",WakeConfiguration:"00000222-0000-1000-8000-0026BB765291","00000211-0000-1000-8000-0026BB765291":"WANConfigurationList",WANConfigurationList:"00000211-0000-1000-8000-0026BB765291","00000212-0000-1000-8000-0026BB765291":"WANStatusList",WANStatusList:"00000212-0000-1000-8000-0026BB765291","000000B5-0000-1000-8000-0026BB765291":"WaterLevel",WaterLevel:"000000B5-0000-1000-8000-0026BB765291","0000022C-0000-1000-8000-0026BB765291":"WiFiCapabilities",WiFiCapabilities:"0000022C-0000-1000-8000-0026BB765291","0000022D-0000-1000-8000-0026BB765291":"WiFiConfigurationControl",WiFiConfigurationControl:"0000022D-0000-1000-8000-0026BB765291","0000021E-0000-1000-8000-0026BB765291":"WiFiSatelliteStatus",WiFiSatelliteStatus:"0000021E-0000-1000-8000-0026BB765291"};T.Categories={OTHER:1,BRIDGE:2,FAN:3,GARAGE_DOOR_OPENER:4,LIGHTBULB:5,DOOR_LOCK:6,OUTLET:7,SWITCH:8,THERMOSTAT:9,SENSOR:10,ALARM_SYSTEM:11,SECURITY_SYSTEM:11,DOOR:12,WINDOW:13,WINDOW_COVERING:14,PROGRAMMABLE_SWITCH:15,RANGE_EXTENDER:16,CAMERA:17,IP_CAMERA:17,VIDEO_DOORBELL:18,AIR_PURIFIER:19,AIR_HEATER:20,AIR_CONDITIONER:21,AIR_HUMIDIFIER:22,AIR_DEHUMIDIFIER:23,APPLE_TV:24,HOMEPOD:25,SPEAKER:26,AIRPORT:27,SPRINKLER:28,FAUCET:29,SHOWER_HEAD:30,TELEVISION:31,TARGET_CONTROLLER:32,ROUTER:33,AUDIO_RECEIVER:34,TV_SET_TOP_BOX:35,TV_STREAMING_STICK:36};T.Enums={AccessoryFlags:{1:"REQUIRES_ADDITIONAL_SETUP_BIT_MASK"},Active:{0:"INACTIVE",1:"ACTIVE"},AirParticulateSize:{0:"_2_5_M",1:"_10_M"},AirQuality:{0:"UNKNOWN",1:"EXCELLENT",2:"GOOD",3:"FAIR",4:"INFERIOR",5:"POOR"},CameraOperatingModeIndicator:{0:"DISABLE",1:"ENABLE"},CarbonDioxideDetected:{0:"CO2_LEVELS_NORMAL",1:"CO2_LEVELS_ABNORMAL"},CarbonMonoxideDetected:{0:"CO_LEVELS_NORMAL",1:"CO_LEVELS_ABNORMAL"},ChargingState:{0:"NOT_CHARGING",1:"CHARGING",2:"NOT_CHARGEABLE"},ClosedCaptions:{0:"DISABLED",1:"ENABLED"},ContactSensorState:{0:"CONTACT_DETECTED",1:"CONTACT_NOT_DETECTED"},CurrentAirPurifierState:{0:"INACTIVE",1:"IDLE",2:"PURIFYING_AIR"},CurrentDoorState:{0:"OPEN",1:"CLOSED",2:"OPENING",3:"CLOSING",4:"STOPPED"},CurrentFanState:{0:"INACTIVE",1:"IDLE",2:"BLOWING_AIR"},CurrentHeaterCoolerState:{0:"INACTIVE",1:"IDLE",2:"HEATING",3:"COOLING"},CurrentHeatingCoolingState:{0:"OFF",1:"HEAT",2:"COOL"},CurrentHumidifierDehumidifierState:{0:"INACTIVE",1:"IDLE",2:"HUMIDIFYING",3:"DEHUMIDIFYING"},CurrentMediaState:{0:"PLAY",1:"PAUSE",2:"STOP",4:"LOADING",5:"INTERRUPTED"},CurrentSlatState:{0:"FIXED",1:"JAMMED",2:"SWINGING"},CurrentVisibilityState:{0:"SHOWN",1:"HIDDEN"},EventSnapshotsActive:{0:"DISABLE",1:"ENABLE"},FilterChangeIndication:{0:"FILTER_OK",1:"CHANGE_FILTER"},HomeKitCameraActive:{0:"OFF",1:"ON"},InputDeviceType:{0:"OTHER",1:"TV",2:"RECORDING",3:"TUNER",4:"PLAYBACK",5:"AUDIO_SYSTEM"},InputSourceType:{0:"OTHER",1:"HOME_SCREEN",2:"TUNER",3:"HDMI",4:"COMPOSITE_VIDEO",5:"S_VIDEO",6:"COMPONENT_VIDEO",7:"DVI",8:"AIRPLAY",9:"USB",10:"APPLICATION"},InUse:{0:"NOT_IN_USE",1:"IN_USE"},IsConfigured:{0:"NOT_CONFIGURED",1:"CONFIGURED"},LeakDetected:{0:"LEAK_NOT_DETECTED",1:"LEAK_DETECTED"},LockCurrentState:{0:"UNSECURED",1:"SECURED",2:"JAMMED",3:"UNKNOWN"},LockLastKnownAction:{0:"SECURED_PHYSICALLY_INTERIOR",1:"UNSECURED_PHYSICALLY_INTERIOR",2:"SECURED_PHYSICALLY_EXTERIOR",3:"UNSECURED_PHYSICALLY_EXTERIOR",4:"SECURED_BY_KEYPAD",5:"UNSECURED_BY_KEYPAD",6:"SECURED_REMOTELY",7:"UNSECURED_REMOTELY",8:"SECURED_BY_AUTO_SECURE_TIMEOUT",9:"SECURED_PHYSICALLY",10:"UNSECURED_PHYSICALLY"},LockPhysicalControls:{0:"CONTROL_LOCK_DISABLED",1:"CONTROL_LOCK_ENABLED"},LockTargetState:{0:"UNSECURED",1:"SECURED"},ManagedNetworkEnable:{0:"DISABLED",1:"ENABLED"},ManuallyDisabled:{0:"ENABLED",1:"DISABLED"},OccupancyDetected:{0:"OCCUPANCY_NOT_DETECTED",1:"OCCUPANCY_DETECTED"},PeriodicSnapshotsActive:{0:"DISABLE",1:"ENABLE"},PictureMode:{0:"OTHER",1:"STANDARD",2:"CALIBRATED",3:"CALIBRATED_DARK",4:"VIVID",5:"GAME",6:"COMPUTER",7:"CUSTOM"},PositionState:{0:"DECREASING",1:"INCREASING",2:"STOPPED"},PowerModeSelection:{0:"SHOW",1:"HIDE"},ProgrammableSwitchEvent:{0:"SINGLE_PRESS",1:"DOUBLE_PRESS",2:"LONG_PRESS"},ProgramMode:{0:"NO_PROGRAM_SCHEDULED",1:"PROGRAM_SCHEDULED",2:"PROGRAM_SCHEDULED_MANUAL_MODE"},RecordingAudioActive:{0:"DISABLE",1:"ENABLE"},RemoteKey:{0:"REWIND",1:"FAST_FORWARD",2:"NEXT_TRACK",3:"PREVIOUS_TRACK",4:"ARROW_UP",5:"ARROW_DOWN",6:"ARROW_LEFT",7:"ARROW_RIGHT",8:"SELECT",9:"BACK",10:"EXIT",11:"PLAY_PAUSE",15:"INFORMATION"},RotationDirection:{0:"CLOCKWISE",1:"COUNTER_CLOCKWISE"},RouterStatus:{0:"READY",1:"NOT_READY"},SecuritySystemAlarmType:{0:"NO_ALARM",1:"UNKNOWN"},SecuritySystemCurrentState:{0:"STAY_ARM",1:"AWAY_ARM",2:"NIGHT_ARM",3:"DISARMED",4:"ALARM_TRIGGERED"},SecuritySystemTargetState:{0:"STAY_ARM",1:"AWAY_ARM",2:"NIGHT_ARM",3:"DISARM"},ServiceLabelNamespace:{0:"DOTS",1:"ARABIC_NUMERALS"},SiriInputType:{0:"PUSH_BUTTON_TRIGGERED_APPLE_TV"},SlatType:{0:"HORIZONTAL",1:"VERTICAL"},SleepDiscoveryMode:{0:"NOT_DISCOVERABLE",1:"ALWAYS_DISCOVERABLE"},SmokeDetected:{0:"SMOKE_NOT_DETECTED",1:"SMOKE_DETECTED"},StatusFault:{0:"NO_FAULT",1:"GENERAL_FAULT"},StatusJammed:{0:"NOT_JAMMED",1:"JAMMED"},StatusLowBattery:{0:"BATTERY_LEVEL_NORMAL",1:"BATTERY_LEVEL_LOW"},StatusTampered:{0:"NOT_TAMPERED",1:"TAMPERED"},SwingMode:{0:"SWING_DISABLED",1:"SWING_ENABLED"},TargetAirPurifierState:{0:"MANUAL",1:"AUTO"},TargetDoorState:{0:"OPEN",1:"CLOSED"},TargetFanState:{0:"MANUAL",1:"AUTO"},TargetHeaterCoolerState:{0:"AUTO",1:"HEAT",2:"COOL"},TargetHeatingCoolingState:{0:"OFF",1:"HEAT",2:"COOL",3:"AUTO"},TargetHumidifierDehumidifierState:{0:"HUMIDIFIER_OR_DEHUMIDIFIER",1:"HUMIDIFIER",2:"DEHUMIDIFIER"},TargetMediaState:{0:"PLAY",1:"PAUSE",2:"STOP"},TargetVisibilityState:{0:"SHOWN",1:"HIDDEN"},TemperatureDisplayUnits:{0:"CELSIUS",1:"FAHRENHEIT"},ThirdPartyCameraActive:{0:"OFF",1:"ON"},ValveType:{0:"GENERIC_VALVE",1:"IRRIGATION",2:"SHOWER_HEAD",3:"WATER_FAUCET"},VolumeControlType:{0:"NONE",1:"RELATIVE",2:"RELATIVE_WITH_CURRENT",3:"ABSOLUTE"},VolumeSelector:{0:"INCREMENT",1:"DECREMENT"},WiFiSatelliteStatus:{0:"UNKNOWN",1:"CONNECTED",2:"NOT_CONNECTED"}}});var C0=g0(l0(),1);var d0=(()=>{class t{transform(e){if(typeof e!="number")return e;let i=1e6/e,n=Math.round(e),B=Math.round(i);return`${n}M (${B}K)`}static \u0275fac=function(i){return new(i||t)};static \u0275pipe=f({name:"convertMired",type:t,pure:!0})}return t})();var p0=(()=>{class t{$settings=E(o0);transform(e,i=this.$settings.env.temperatureUnits){return i==="f"?e*1.8+32:e}static \u0275fac=function(i){return new(i||t)};static \u0275pipe=f({name:"convertTemp",type:t,pure:!0})}return t})();var m0=(()=>{class t{transform(e){return typeof e!="string"?e:e.replace(/_/g," ").toLowerCase().replace(/\b\w/g,i=>i.toUpperCase()).replace(/([a-z])([A-Z])/g,"$1 $2")}static \u0275fac=function(i){return new(i||t)};static \u0275pipe=f({name:"prettify",type:t,pure:!0})}return t})();var u0=(()=>{class t{transform(e){return typeof e!="string"||!e?e:e.replace(/(?!^)([A-Z])/g," $1")}static \u0275fac=function(i){return new(i||t)};static \u0275pipe=f({name:"spaceBeforeCaps",type:t,pure:!0})}return t})();function _0(t,p){if(t&1&&(s(0,"option",28),o(1),l(2,"spaceBeforeCaps"),r()),t&2){let e=p.$implicit;V("value",e),a(),c(d(2,2,e))}}function h0(t,p){if(t&1){let e=F();s(0,"li",7)(1,"label",26),o(2),l(3,"translate"),r(),s(4,"div",9)(5,"select",27),U("ngModelChange",function(n){O(e);let B=m();return w(B.service.customType,n)||(B.service.customType=n),P(n)}),h(6,_0,3,4,"option",28,_),r()()()}if(t&2){let e=m();a(2),c(d(3,2,"accessories.custom_type")),a(3),b("ngModel",e.service.customType),a(),y(e.customTypeList.sort())}}function y0(t,p){if(t&1){let e=F();s(0,"li",11)(1,"span",12),o(2),l(3,"translate"),r(),s(4,"div",13)(5,"input",29),l(6,"translate"),U("ngModelChange",function(n){O(e);let B=m();return w(B.service.onDashboard,n)||(B.service.onDashboard=n),P(n)}),r(),I(7,"label",30),r()()}if(t&2){let e=m();a(2),c(d(3,3,"accessories.show_on_dashboard")),a(3),b("ngModel",e.service.onDashboard),v("aria-label",d(6,5,"accessories.show_on_dashboard"))}}function I0(t,p){if(t&1&&o(0),t&2){let e=m().$implicit;A(" ",e.value,"% ")}}function D0(t,p){if(t&1&&(o(0),l(1,"convertTemp")),t&2){let e=m().$implicit;A(" ",d(1,1,e.value),"\xB0 ")}}function v0(t,p){if(t&1&&(o(0),l(1,"convertMired")),t&2){let e=m(2).$implicit;A(" ",d(1,1,e.value)," ")}}function R0(t,p){if(t&1&&o(0),t&2){let e=m(2).$implicit;A(" ",e.value," ")}}function x0(t,p){if(t&1&&C(0,v0,2,3)(1,R0,1,1),t&2){let e,i=m().$implicit;S((e=i.type)==="ColorTemperature"?0:1)}}function M0(t,p){if(t&1&&(o(0),l(1,"prettify")),t&2){let e=m().$implicit,i=m();A(" (",d(1,1,i.enums[e.type][e.value]),") ")}}function L0(t,p){if(t&1&&(o(0),l(1,"translate")),t&2){let e=m().$implicit;A(" (",d(1,1,e.value?"status.widget.info.yes":"status.widget.info.no"),") ")}}function N0(t,p){if(t&1&&(s(0,"li",18)(1,"span",12),o(2),r(),s(3,"span",19),C(4,I0,1,1)(5,D0,2,3)(6,x0,2,1),C(7,M0,2,3)(8,L0,2,3),r()()),t&2){let e,i=p.$implicit,n=m();a(2),c(i.description),a(2),S((e=i.unit)==="percentage"?4:e==="celsius"?5:6),a(3),S(n.enums[i.type]!=null&&n.enums[i.type][i.value]?7:i.format==="bool"?8:-1)}}function O0(t,p){if(t&1&&o(0),t&2){let e=m().$implicit;A(" ",e.value,"% ")}}function P0(t,p){if(t&1&&(o(0),l(1,"convertTemp")),t&2){let e=m().$implicit;A(" ",d(1,1,e.value),"\xB0 ")}}function F0(t,p){if(t&1&&(o(0),l(1,"convertMired")),t&2){let e=m(2).$implicit;A(" ",d(1,1,e.value)," ")}}function b0(t,p){if(t&1&&o(0),t&2){let e=m(2).$implicit;A(" ",e.value," ")}}function w0(t,p){if(t&1&&C(0,F0,2,3)(1,b0,1,1),t&2){let e,i=m().$implicit;S((e=i.type)==="ColorTemperature"?0:1)}}function U0(t,p){if(t&1&&(o(0),l(1,"prettify")),t&2){let e=m().$implicit,i=m(2);A(" (",d(1,1,i.enums[e.type][e.value]),") ")}}function H0(t,p){if(t&1&&(o(0),l(1,"translate")),t&2){let e=m().$implicit;A(" (",d(1,1,e.value?"status.widget.info.yes":"status.widget.info.no"),") ")}}function k0(t,p){if(t&1&&(s(0,"li",18)(1,"span",12),o(2),r(),s(3,"span",19),C(4,O0,1,1)(5,P0,2,3)(6,w0,2,1),C(7,U0,2,3)(8,H0,2,3),r()()),t&2){let e,i=p.$implicit,n=m(2);a(2),c(i.description),a(2),S((e=i.unit)==="percentage"?4:e==="celsius"?5:6),a(3),S(n.enums[i.type]!=null&&n.enums[i.type][i.value]?7:i.format==="bool"?8:-1)}}function V0(t,p){if(t&1&&(s(0,"ul",5)(1,"li",16)(2,"h6",17),o(3),l(4,"translate"),r()(),s(5,"li",18)(6,"span",12),o(7),l(8,"translate"),r(),s(9,"span",19),o(10),r()(),s(11,"li",18)(12,"span",12),o(13),l(14,"translate"),r(),s(15,"span",19),o(16),r()(),h(17,k0,9,3,"li",18,_),r()),t&2){let e=p.$implicit;a(3),c(d(4,5,"accessories.service_info")),a(4),c(d(8,7,"accessories.service")),a(3),c(e.humanType),a(3),c(d(14,9,"accessories.name")),a(3),c(e.serviceName),a(),y(e.serviceCharacteristics)}}function W0(t,p){if(t&1&&(s(0,"li",18)(1,"span",12),o(2),l(3,"translate"),r(),s(4,"span",19),o(5),r()()),t&2){let e=m(2);a(2),c(d(3,2,"child_bridge.config.platform")),a(3),c(e.matchedCachedAccessory.platform)}}function G0(t,p){if(t&1&&(s(0,"li",18)(1,"span",12),o(2),l(3,"translate"),r(),s(4,"span",19),o(5),r()()),t&2){let e=m(2);a(2),c(d(3,2,"child_bridge.config.accessory")),a(3),c(e.matchedCachedAccessory.accessory)}}function $0(t,p){if(t&1&&(s(0,"li",18)(1,"span",12),o(2),l(3,"translate"),r(),s(4,"span",19),o(5),r()(),C(6,W0,6,4,"li",18),C(7,G0,6,4,"li",18)),t&2){let e=m();a(2),c(d(3,4,"accessories.plugin")),a(3),c(e.matchedCachedAccessory.plugin),a(),S(e.matchedCachedAccessory.platform?6:-1),a(),S(e.matchedCachedAccessory.accessory?7:-1)}}function Y0(t,p){if(t&1&&(s(0,"li",18)(1,"span",12),o(2),r(),s(3,"span",19),o(4),r()()),t&2){let e=p.$implicit;a(2),c(e.key),a(2),c(e.value)}}function K0(t,p){if(t&1&&(s(0,"li",18)(1,"span",12),o(2),l(3,"translate"),r(),s(4,"span",19),o(5),r()()),t&2){let e=m();a(2),c(d(3,2,"accessories.bridge_name")),a(3),c(e.matchedCachedAccessory.bridge)}}function q0(t,p){if(t&1){let e=F();s(0,"li",18)(1,"span",21),o(2,"UUID"),r(),s(3,"span",19),o(4),r()(),s(5,"li",31)(6,"span",12),o(7),l(8,"translate"),r(),s(9,"button",32),R("click",function(){O(e);let n=m();return P(n.removeSingleCachedAccessories())}),I(10,"i",33),r()()}if(t&2){let e=m();a(4),c(e.matchedCachedAccessory.UUID),a(3),c(d(8,2,"accessories.button_remove"))}}var S0=(()=>{class t{$activeModal=E(t0);$modal=E(H);allCustomTypeList=[["Switch","Outlet","Fan","Lightbulb"],["Door","Window","WindowCovering"]];accessoryCache;pairingCache;service;accessoryInformation;extraServices=[];matchedCachedAccessory=null;enums=C0.Enums;customTypeList=[];ngOnInit(){this.accessoryInformation=Object.entries(this.service.accessoryInformation).map(([e,i])=>({key:e,value:i})),this.matchedCachedAccessory=this.matchToCachedAccessory(),this.service.type==="LockMechanism"&&Object.values(this.service.linkedServices).filter(e=>e.type==="LockManagement").forEach(e=>this.extraServices.push(e)),this.customTypeList=this.allCustomTypeList.find(e=>e.includes(this.service.type))||[],this.service.customType||(this.service.customType=this.service.type)}removeSingleCachedAccessories(){this.$activeModal.close();let e=this.$modal.open(c0,{size:"lg",backdrop:"static"});e.componentInstance.selectedBridge=this.service.instance.username.replaceAll(":","")}dismissModal(){this.$activeModal.dismiss("Dismiss")}matchToCachedAccessory(){let e=this.service.instance.username,i=this.pairingCache.find(n=>n._username===e);if(i){let n=i._main?"cachedAccessories":`cachedAccessories.${i._id}`,B=this.accessoryCache.filter(u=>u.$cacheFile===n);if(B.length){let u=this.service.accessoryInformation.Name,M=this.service.accessoryInformation["Serial Number"],g=B.filter(A0=>{let W=A0.services.find(D=>D.constructorName==="AccessoryInformation"),E0=W.characteristics.find(D=>D.displayName==="Name"),T0=W.characteristics.find(D=>D.displayName==="Serial Number");return E0.value===u&&T0.value===M});if(g.length===1)return $(G({},g[0]),{bridge:i.name})}}}static \u0275fac=function(i){return new(i||t)};static \u0275cmp=K({type:t,selectors:[["ng-component"]],inputs:{accessoryCache:"accessoryCache",pairingCache:"pairingCache",service:"service"},decls:94,vars:57,consts:[[1,"modal-content"],[1,"modal-header"],[1,"modal-title"],["type","button","data-bs-dismiss","modal",1,"btn-close",3,"click"],[1,"modal-body"],[1,"list-group","list-group-box","mb-3"],[1,"list-group-item","text-center","grey-text","small"],[1,"list-group-item","d-flex","flex-column","flex-md-row","align-items-center"],["for","form-name",1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"text-start","text-md-end","w-100","w-md-50"],["type","text","id","form-name","autocomplete","off",1,"form-control","custom-input",3,"ngModelChange","ngModel"],[1,"list-group-item","d-flex","justify-content-between","align-items-center","flex-row","pb-2"],[1,"text-start"],[1,"text-end","grey-text","d-flex","align-items-center"],["type","checkbox","id","hide-accessory",1,"rendux-input",3,"ngModelChange","ngModel"],["for","hide-accessory",1,"rendux-label","ms-3"],[1,"list-group-item"],[1,"mb-0","text-center"],[1,"list-group-item","d-flex","justify-content-between","align-items-left","flex-column","flex-md-row"],[1,"text-start","text-md-end","grey-text","font-monospace"],[1,"list-group","list-group-box","mb-0"],[1,"text-start","font-monospace"],[1,"modal-footer","justify-content-between"],[1,"text-center"],["type","button","data-bs-dismiss","modal",1,"btn","btn-elegant",3,"click"],[1,"text-end"],[1,"mb-2","mb-md-0","w-100","w-md-50"],[1,"custom-select",3,"ngModelChange","ngModel"],[3,"value"],["type","checkbox","id","show-on-dashboard",1,"rendux-input","mb-0",3,"ngModelChange","ngModel"],["for","show-on-dashboard",1,"rendux-label","ms-3"],[1,"list-group-item","d-flex","justify-content-between","align-items-center"],[1,"btn","btn-primary","m-0","ms-3",3,"click"],[1,"fas","fa-fw","fa-arrow-right"]],template:function(i,n){i&1&&(s(0,"div",0)(1,"div",1)(2,"h5",2),o(3),r(),s(4,"button",3),l(5,"translate"),R("click",function(){return n.dismissModal()}),r()(),s(6,"div",4)(7,"ul",5)(8,"li",6),o(9),l(10,"translate"),r(),s(11,"li",7)(12,"label",8),o(13),l(14,"translate"),r(),s(15,"div",9)(16,"input",10),R("ngModelChange",function(u){return n.service.customName=u}),r()()(),C(17,h0,8,4,"li",7),s(18,"li",11)(19,"span",12),o(20),l(21,"translate"),r(),s(22,"div",13)(23,"input",14),l(24,"translate"),U("ngModelChange",function(u){return w(n.service.hidden,u)||(n.service.hidden=u),u}),r(),I(25,"label",15),r()(),C(26,y0,8,7,"li",11),r(),s(27,"ul",5)(28,"li",16)(29,"h6",17),o(30),l(31,"translate"),r()(),s(32,"li",18)(33,"span",12),o(34),l(35,"translate"),r(),s(36,"span",19),o(37),r()(),s(38,"li",18)(39,"span",12),o(40),l(41,"translate"),r(),s(42,"span",19),o(43),r()(),h(44,N0,9,3,"li",18,_),r(),h(46,V0,19,11,"ul",5,_),s(48,"ul",20)(49,"li",16)(50,"h6",17),o(51),l(52,"translate"),r()(),C(53,$0,8,6),h(54,Y0,5,2,"li",18,_),s(56,"li",18)(57,"span",12),o(58),l(59,"translate"),r(),s(60,"span",19),o(61),r()(),C(62,K0,6,4,"li",18),s(63,"li",18)(64,"span",12),o(65),l(66,"translate"),r(),s(67,"span",19),o(68),r()(),s(69,"li",18)(70,"span",12),o(71),l(72,"translate"),r(),s(73,"span",19),o(74),r()(),s(75,"li",18)(76,"span",21),o(77,"aid"),r(),s(78,"span",19),o(79),r()(),s(80,"li",18)(81,"span",21),o(82,"iid"),r(),s(83,"span",19),o(84),r()(),C(85,q0,11,4),r()(),s(86,"div",22),I(87,"div",12),s(88,"div",23)(89,"button",24),l(90,"translate"),R("click",function(){return n.dismissModal()}),o(91),l(92,"translate"),r()(),I(93,"div",25),r()()),i&2&&(a(3),c(n.service.customName||n.service.serviceName),a(),v("aria-label",d(5,29,"form.button_close")),a(5),c(d(10,31,"accessories.only_ui")),a(4),c(d(14,33,"accessories.custom_name")),a(3),V("ngModel",n.service.customName||n.service.serviceName),a(),S(n.customTypeList.length?17:-1),a(3),c(d(21,35,"accessories.hide_this_accessory")),a(3),b("ngModel",n.service.hidden),v("aria-label",d(24,37,"accessories.hide_this_accessory")),a(3),S(n.service.hidden?-1:26),a(4),c(d(31,39,"accessories.service_info")),a(4),c(d(35,41,"accessories.service")),a(3),c(n.service.humanType),a(3),c(d(41,43,"accessories.name")),a(3),c(n.service.serviceName),a(),y(n.service.serviceCharacteristics),a(2),y(n.extraServices),a(5),c(d(52,45,"accessories.accessory_info")),a(2),S(n.matchedCachedAccessory?53:-1),a(),y(n.accessoryInformation),a(4),c(d(59,47,"accessories.bridge_username")),a(3),c(n.service.instance.username),a(),S(n.matchedCachedAccessory?62:-1),a(3),c(d(66,49,"accessories.bridge_ip")),a(3),c(n.service.instance.ipAddress),a(3),c(d(72,51,"accessories.bridge_port")),a(3),c(n.service.instance.port),a(5),c(n.service.aid),a(5),c(n.service.iid),a(),S(n.matchedCachedAccessory?85:-1),a(4),v("aria-label",d(90,53,"form.button_close")),a(2),A(" ",d(92,55,"form.button_close")," "))},dependencies:[e0,Z,Q,j,q,J,z,X,n0,p0,m0,d0,u0],encapsulation:2})}return t})();var De=(()=>{class t{$api=E(r0);$auth=E(s0);$modal=E(H);$toastr=E(a0);$translate=E(i0);$ws=E(B0);accessoryCache=[];pairingCache=[];io;roomsOrdered=!1;hiddenTypes=["InputSource","LockManagement","CameraRTPStreamManagement","ProtocolInformation"];layoutSaved=new k;accessoryData=new k;readyForControl=!1;accessories={services:[]};rooms=[];accessoryLayout;constructor(){N(this.$api.get("/server/cached-accessories")).then(e=>{this.accessoryCache=e}).catch(e=>console.error(e)),N(this.$api.get("/server/pairings")).then(e=>{this.pairingCache=e}).catch(e=>console.error(e))}showAccessoryInformation(e){let i=this.$modal.open(S0,{size:"lg",backdrop:"static"});return i.componentInstance.service=e,i.componentInstance.accessoryCache=this.accessoryCache,i.componentInstance.pairingCache=this.pairingCache,i.result.then(()=>this.saveLayout()).catch(()=>this.saveLayout()),!1}stop(){this.io.end(),this.rooms=[],this.accessories={services:[]},this.roomsOrdered=!1,delete this.accessoryLayout}start(){return L(this,null,function*(){this.readyForControl=!1,this.io=this.$ws.connectToNamespace("accessories"),yield this.loadLayout(),this.io.connected?(this.io.socket.emit("get-accessories"),setTimeout(()=>{this.io.connected.subscribe(()=>{this.io.socket.emit("get-accessories")})},1e3)):this.io.connected.subscribe(()=>{this.io.socket.emit("get-accessories")}),this.io.socket.on("accessories-data",e=>{this.parseServices(e),this.generateHelpers(),this.sortIntoRooms(),this.roomsOrdered||(this.orderRooms(),this.applyCustomAttributes(),this.roomsOrdered=!0),this.accessoryData.next(e)}),this.io.socket.on("accessories-reload-required",()=>L(this,null,function*(){this.stop(),yield this.start()})),this.io.socket.on("accessory-control-failure",e=>{console.error(e),this.$toastr.error(e,this.$translate.instant("toast.title_error"))}),this.io.socket.on("accessories-ready-for-control",()=>{this.readyForControl=!0})})}saveLayout(){this.accessoryLayout=this.rooms.map(e=>({name:e.name,services:e.services.map(i=>({uniqueId:i.uniqueId,aid:i.aid,iid:i.iid,uuid:i.uuid,customName:i.customName||void 0,customType:i.customType||void 0,hidden:i.hidden||void 0,onDashboard:i.onDashboard||void 0}))})).filter(e=>e.services.length),this.io.request("save-layout",{user:this.$auth.user.username,layout:this.accessoryLayout}).subscribe({next:()=>this.layoutSaved.next(void 0),error:e=>{console.error(e),this.$toastr.error(e.message,this.$translate.instant("toast.title_error"))}})}loadLayout(){return L(this,null,function*(){this.accessoryLayout=yield N(this.io.request("get-layout",{user:this.$auth.user.username})),this.rooms=this.accessoryLayout.map(e=>({name:e.name,services:[]}))})}parseServices(e){if(!this.accessories.services.length){this.accessories.services=e;return}e.forEach(i=>{let n=this.accessories.services.find(B=>B.uniqueId===i.uniqueId);i.type==="LockMechanism"&&this.attachLockManagementToMechanism(i),n?Object.assign(n,i):this.accessories.services.push(i)})}sortIntoRooms(){this.accessories.services.forEach(e=>{if(this.hiddenTypes.includes(e.type))return;if(e.linked&&(e.linkedServices={},e.linked.forEach(n=>{e.linkedServices[n]=this.accessories.services.find(B=>B.aid===e.aid&&B.iid===n&&B.instance.username===e.instance.username)})),!this.rooms.find(n=>n.services.find(B=>B.uniqueId===e.uniqueId))){let n=this.accessoryLayout.find(B=>B.services.find(u=>u.uniqueId===e.uniqueId));if(n)this.rooms.find(B=>B.name===n.name).services.push(e);else{let B=this.rooms.find(u=>u.name==="Default Room");B?B.services.push(e):this.rooms.push({name:"Default Room",services:[e]})}}})}orderRooms(){this.rooms.forEach(e=>{let i=this.accessoryLayout.find(n=>n.name===e.name);e.services.sort((n,B)=>{let u=i.services.findIndex(g=>g.uniqueId===n.uniqueId),M=i.services.findIndex(g=>g.uniqueId===B.uniqueId);return u<M?-1:u>M?1:0})})}applyCustomAttributes(){this.rooms.forEach(e=>{let i=this.accessoryLayout.find(n=>n.name===e.name);e.services.forEach(n=>{let B=i.services.find(u=>u.uniqueId===n.uniqueId);Object.assign(n,B)})})}generateHelpers(){this.accessories.services.forEach(e=>{e.getCharacteristic||(e.getCharacteristic=i=>{let n=e.serviceCharacteristics.find(B=>B.type===i);return n?(n.setValue=B=>new Promise(u=>(this.readyForControl||u(void 0),this.io.socket.emit("accessory-control",{set:{uniqueId:e.uniqueId,aid:e.aid,siid:e.iid,iid:n.iid,value:B}}),u(void 0))),n):null})})}attachLockManagementToMechanism(e){let i=[],n=[];for(let B of this.accessories.services)B.type==="LockMechanism"&&B.accessoryInformation.Name===e.accessoryInformation.Name&&B.accessoryInformation["Serial Number"]===e.accessoryInformation["Serial Number"]?i.push(B):B.type==="LockManagement"&&B.accessoryInformation.Name===e.accessoryInformation.Name&&B.accessoryInformation["Serial Number"]===e.accessoryInformation["Serial Number"]&&n.push(B);if(i.length===1&&n.length===1){let B=n[0];e.linkedServices||(e.linkedServices={}),e.linkedServices[B.iid]=B}}static \u0275fac=function(i){return new(i||t)};static \u0275prov=Y({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();export{d0 as a,p0 as b,De as c};
@@ -0,0 +1 @@
1
+ import{a as H,b as X}from"./chunk-NJPGGFP6.js";import{a as Z}from"./chunk-EGCUYKRH.js";import{a as R}from"./chunk-TQNKRJOX.js";import{n as E}from"./chunk-CF2ZN7LY.js";import"./chunk-T252YJXA.js";import{a as j}from"./chunk-OFS35DEJ.js";import{b as A}from"./chunk-24HGAFIA.js";import{a as W,c as q,d as V,e as N,f as D}from"./chunk-X7PVYZAE.js";import{b as $}from"./chunk-PBJK6VW5.js";import{m as T}from"./chunk-OCUYP77B.js";import{a as L,b as U}from"./chunk-LXXELGX4.js";import"./chunk-SRP6QX5M.js";import{Bc as d,Cc as l,Hb as m,Ib as x,Jb as y,Ob as c,Pb as n,Qb as a,Rb as p,Vb as S,Yb as _,Zb as w,ab as o,cd as O,fb as F,g as Y,h as I,kc as f,la as u,lc as g,mb as P,ra as h,sa as b,td as K,w as z,wc as v,xc as M}from"./chunk-SKZUTSHE.js";var Q=Y(Z(),1);function G(){var i;return typeof window<"u"&&(window?.matchMedia("(display-mode: standalone)").matches||((i=window.navigator)===null||i===void 0?void 0:i.standalone)||document.referrer.startsWith("android-app://")||window?.Windows||/trident.+(msapphost|webview)\//i.test(navigator.userAgent)||document.referrer.startsWith("app-info://platform/microsoft-store"))}var B=()=>["/"],te=i=>({"hamburger-icon-cross":i}),ne=i=>({expanded:i}),ie=()=>({exact:!0}),oe=()=>["/accessories"],re=()=>["/support"],ae=()=>["/power-options"],se=()=>["/plugins"],de=()=>["/logs"],le=()=>["/platform-tools/terminal"],pe=()=>["/config"],ce=()=>["/settings"];function me(i,k){if(i&1){let e=S();n(0,"div",10)(1,"div",19),d(2,"translate"),d(3,"translate"),_("click",function(){h(e);let t=w();return b(t.openUnderVoltageModal())})("keydown",function(t){h(e);let r=w();return b(r.handleKeydown(t))}),n(4,"div",12),p(5,"i",20),a(),n(6,"div",14),f(7),d(8,"translate"),a()()()}i&2&&(o(),m("aria-label",l(2,2,"rpi.throttled.undervoltage_title")+" - "+l(3,4,"rpi.throttled.undervoltage_description")),o(6),g(l(8,6,"rpi.throttled.undervoltage_title")))}function ue(i,k){if(i&1){let e=S();n(0,"div",10)(1,"div",15),d(2,"translate"),_("keydown",function(t){h(e);let r=w();return b(r.handleKeydown(t))}),n(3,"div",12),p(4,"i",21),a(),n(5,"div",14),f(6),d(7,"translate"),a()()()}i&2&&(o(),c("routerLink",v(8,se))("routerLinkActive","active"),m("aria-label",l(2,4,"menu.label_plugins")),o(5),g(l(7,6,"menu.label_plugins")))}function _e(i,k){if(i&1){let e=S();n(0,"div",10)(1,"div",15),d(2,"translate"),_("keydown",function(t){h(e);let r=w();return b(r.handleKeydown(t))}),n(3,"div",12),p(4,"i",22),a(),n(5,"div",14),f(6),d(7,"translate"),a()()()}i&2&&(o(),c("routerLink",v(8,de))("routerLinkActive","active"),m("aria-label",l(2,4,"menu.linux.label_logs")),o(5),g(l(7,6,"menu.linux.label_logs")))}function fe(i,k){if(i&1){let e=S();n(0,"div",10)(1,"div",15),d(2,"translate"),_("keydown",function(t){h(e);let r=w();return b(r.handleKeydown(t))}),n(3,"div",12),p(4,"i",23),a(),n(5,"div",14),f(6),d(7,"translate"),a()()()}i&2&&(o(),c("routerLink",v(8,le))("routerLinkActive","active"),m("aria-label",l(2,4,"menu.linux.label_terminal")),o(5),g(l(7,6,"menu.linux.label_terminal")))}function ge(i,k){if(i&1){let e=S();n(0,"div",10)(1,"div",15),d(2,"translate"),_("keydown",function(t){h(e);let r=w();return b(r.handleKeydown(t))}),n(3,"div",12),p(4,"i",24),a(),n(5,"div",14),f(6),d(7,"translate"),a()()()}i&2&&(o(),c("routerLink",v(8,pe))("routerLinkActive","active"),m("aria-label",l(2,4,"menu.config_json_editor")),o(5),g(l(7,6,"menu.config_json_editor")))}function ve(i,k){if(i&1){let e=S();n(0,"div",10)(1,"div",15),d(2,"translate"),_("keydown",function(t){h(e);let r=w();return b(r.handleKeydown(t))}),n(3,"div",12),p(4,"i",25),a(),n(5,"div",14),f(6),d(7,"translate"),a()()()}i&2&&(o(),c("routerLink",v(8,ce))("routerLinkActive","active"),m("aria-label",l(2,4,"menu.label_settings")),o(5),g(l(7,6,"menu.label_settings")))}function he(i,k){if(i&1){let e=S();n(0,"div",10)(1,"div",19),d(2,"translate"),_("click",function(){h(e);let t=w();return b(t.reloadPage())})("keydown",function(t){h(e);let r=w();return b(r.handleKeydown(t))}),n(3,"div",12),p(4,"i",26),a(),n(5,"div",14),f(6),d(7,"translate"),a()()()}i&2&&(o(),m("aria-label",l(2,2,"menu.reload")),o(5),g(l(7,4,"menu.reload")))}function be(i,k){if(i&1){let e=S();n(0,"div",10)(1,"div",19),d(2,"translate"),_("click",function(){h(e);let t=w();return b(t.logout())})("keydown",function(t){h(e);let r=w();return b(r.handleKeydown(t))}),n(3,"div",12),p(4,"i",27),a(),n(5,"div",14),f(6),d(7,"translate"),a()()()}i&2&&(o(),m("aria-label",l(2,2,"menu.tooltip_logout")),o(5),g(l(7,4,"menu.tooltip_logout")))}var J=(()=>{class i{$auth=u(A);$settings=u($);$modal=u(E);$notification=u(X);$renderer=u(F);$router=u(V);$translate=u(L);isExpanded=!1;formAuth=this.$settings.formAuth;isAdmin=this.$auth.user.admin;enableTerminalAccess=this.$settings.env.enableTerminalAccess;rPiCurrentlyUnderVoltage=!1;rPiWasUnderVoltage=!1;isMobile=!1;freezeMenu=!1;isPwa=G();constructor(){this.isMobile=window.innerWidth<768;let e;window.addEventListener("resize",()=>{clearTimeout(e),e=setTimeout(()=>{this.updateListeners()},500)}),this.$router.events.subscribe(s=>{s instanceof W&&(this.closeSidebar(),this.freezeMenu=!0,setTimeout(()=>{this.freezeMenu=!1},750))})}ngOnInit(){this.$notification.raspberryPiThrottled.subscribe(r=>{r["Under Voltage"]&&(this.rPiCurrentlyUnderVoltage=!0),r["Under-voltage has occurred"]&&(this.rPiWasUnderVoltage=!0)});let e=document.querySelector(".sidebar"),s=document.querySelector(".m-header"),t=document.querySelector(".content");this.isMobile?document.addEventListener("touchstart",r=>{if(t.contains(r.target)&&this.isExpanded){r.preventDefault(),this.toggleSidebar();return}!e.contains(r.target)&&!s.contains(r.target)&&this.isExpanded&&(r.preventDefault(),this.closeSidebar())},{passive:!1}):(this.updateListeners(),s.addEventListener("mouseenter",()=>this.openSidebar(),{passive:!1}),s.addEventListener("mouseleave",()=>this.closeSidebar(),{passive:!1}),document.addEventListener("click",r=>{e.contains(r.target)&&r.clientX>60&&this.closeSidebar()},{passive:!1})),this.updateContentStyles()}toggleSidebar(){this.freezeMenu||(this.isExpanded=!this.isExpanded,this.updateContentStyles())}openUnderVoltageModal(){let e=this.$modal.open(H,{size:"lg",backdrop:"static"});e.componentInstance.title=this.$translate.instant("rpi.throttled.undervoltage_title"),e.componentInstance.message=this.$translate.instant(this.rPiCurrentlyUnderVoltage?"rpi.throttled.currently_message":"rpi.throttled.previously_message"),e.componentInstance.ctaButtonLabel=this.$translate.instant("form.button_more_info"),e.componentInstance.faIconClass="fas fa-fw fa-bolt yellow-text",e.componentInstance.ctaButtonLink="https://pimylifeup.com/raspberry-pi-low-voltage-warning"}handleKeydown(e){if(e.key==="Enter"){let s=e.target;["menuitem","button"].includes(s.getAttribute("role"))&&s.click()}}reloadPage(){window.location.reload()}ngOnDestroy(){document.removeEventListener("touchstart",()=>{}),document.removeEventListener("click",()=>{})}logout(){this.$auth.logout()}openSidebar(){this.freezeMenu||(this.isExpanded=!0,this.updateContentStyles())}closeSidebar(){this.freezeMenu||(this.isExpanded=!1,this.updateContentStyles())}updateContentStyles(){let e=document.querySelector(".content");this.isExpanded?(this.$renderer.setStyle(e,"opacity","20%"),this.$renderer.setStyle(e,"pointer-events","none"),this.$renderer.setStyle(e,"overflow","hidden")):(this.$renderer.removeStyle(e,"opacity"),this.$renderer.removeStyle(e,"pointer-events"),this.$renderer.removeStyle(e,"overflow"))}updateListeners(){this.isMobile=window.innerWidth<768;let e=document.querySelector(".sidebar");e.removeAllListeners(),(this.isMobile||!this.isMobile&&this.$settings.menuMode!=="freeze")&&(e.addEventListener("mouseenter",()=>this.openSidebar(),{passive:!1}),e.addEventListener("mouseleave",()=>this.closeSidebar(),{passive:!1}))}static \u0275fac=function(s){return new(s||i)};static \u0275cmp=P({type:i,selectors:[["app-sidebar"]],inputs:{isExpanded:"isExpanded"},decls:61,vars:67,consts:[["tabindex","0","role","button",1,"m-header","text-end",3,"click","keydown"],[1,"me-2","d-block","d-lg-none",2,"font-size","0.9rem","color","#dddddd"],[3,"routerLink"],["ngSrc","../../../../assets/homebridge-logo.svg","alt","HB Logo","height","35","width","35",2,"height","35px","width","35px"],[1,"hb-logo-text-mobile"],[1,"hamburger-icon",3,"ngClass"],["role","navigation","id","sidebar",1,"sidebar",3,"ngClass"],["tabindex","0","role","button",1,"header",3,"click","keydown"],[1,"hb-logo-text"],[1,"link-wrapper"],[1,"link"],["role","menuitem","tabindex","0",1,"link-row",3,"keydown","routerLink","routerLinkActive","routerLinkActiveOptions"],[1,"icon"],[1,"fa","fa-fw","fa-house"],[1,"title"],["role","menuitem","tabindex","0",1,"link-row",3,"keydown","routerLink","routerLinkActive"],[1,"fa","fa-fw","fa-lightbulb"],[1,"fa","fa-fw","fa-question-circle-o"],[1,"fa","fa-fw","fa-power-off"],["role","menuitem","tabindex","0",1,"link-row",3,"click","keydown"],[1,"fas","fa-fw","fa-bolt","fa-beat","yellow-text",2,"--fa-beat-scale","1.5"],[1,"fa","fa-fw","fa-plug"],[1,"fa","fa-fw","fa-wave-square"],[1,"fa","fa-fw","fa-terminal"],[1,"fa","fa-fw","fa-code"],[1,"fa","fa-fw","fa-cog"],[1,"fa","fa-fw","fa-refresh"],[1,"fa","fa-fw","fa-right-from-bracket"]],template:function(s,t){s&1&&(n(0,"div",0),d(1,"translate"),_("click",function(){return t.toggleSidebar()})("keydown",function(C){return t.handleKeydown(C)}),p(2,"span",1),n(3,"a",2),d(4,"translate"),p(5,"img",3),n(6,"div",4),f(7,"Homebridge"),a()(),n(8,"div",5),p(9,"span")(10,"span")(11,"span")(12,"span"),a()(),n(13,"div",6)(14,"div",7),_("click",function(){return t.toggleSidebar()})("keydown",function(C){return t.handleKeydown(C)}),n(15,"a",2),d(16,"translate"),p(17,"img",3),n(18,"div",8),f(19,"Homebridge"),a()()(),n(20,"div",9)(21,"div",10)(22,"div",11),d(23,"translate"),_("keydown",function(C){return t.handleKeydown(C)}),n(24,"div",12),p(25,"i",13),a(),n(26,"div",14),f(27),d(28,"translate"),a()()(),x(29,me,9,8,"div",10),x(30,ue,8,9,"div",10),n(31,"div",10)(32,"div",15),d(33,"translate"),_("keydown",function(C){return t.handleKeydown(C)}),n(34,"div",12),p(35,"i",16),a(),n(36,"div",14),f(37),d(38,"translate"),a()()(),x(39,_e,8,9,"div",10),x(40,fe,8,9,"div",10),x(41,ge,8,9,"div",10),x(42,ve,8,9,"div",10),n(43,"div",10)(44,"div",15),d(45,"translate"),_("keydown",function(C){return t.handleKeydown(C)}),n(46,"div",12),p(47,"i",17),a(),n(48,"div",14),f(49),d(50,"translate"),a()()(),n(51,"div",10)(52,"div",15),d(53,"translate"),_("keydown",function(C){return t.handleKeydown(C)}),n(54,"div",12),p(55,"i",18),a(),n(56,"div",14),f(57),d(58,"translate"),a()()(),x(59,he,8,6,"div",10),x(60,be,8,6,"div",10),a()()),s&2&&(m("aria-expanded",t.isExpanded?"true":"false")("aria-controls","sidebar")("aria-label",l(1,34,"menu.sidebar.aria_menu")),o(3),c("routerLink",v(56,B)),m("aria-label",l(4,36,"menu.label_status")),o(5),c("ngClass",M(57,te,t.isExpanded)),o(5),c("ngClass",M(59,ne,t.isExpanded)),o(2),c("routerLink",v(61,B)),m("aria-label",l(16,38,"menu.label_status")),o(7),c("routerLink",v(62,B))("routerLinkActive","active")("routerLinkActiveOptions",v(63,ie)),m("aria-label",l(23,40,"menu.label_status")),o(5),g(l(28,42,"menu.label_status")),o(2),y(t.rPiWasUnderVoltage||t.rPiCurrentlyUnderVoltage?29:-1),o(),y(t.isAdmin?30:-1),o(2),c("routerLink",v(64,oe))("routerLinkActive","active"),m("aria-label",l(33,44,"menu.label_accessories")),o(5),g(l(38,46,"menu.label_accessories")),o(2),y(t.isAdmin?39:-1),o(),y(t.enableTerminalAccess&&t.isAdmin?40:-1),o(),y(t.isAdmin?41:-1),o(),y(t.isAdmin?42:-1),o(2),c("routerLink",v(65,re))("routerLinkActive","active"),m("aria-label",l(45,48,"support.title")),o(5),g(l(50,50,"support.title")),o(3),c("routerLink",v(66,ae))("routerLinkActive","active"),m("aria-label",l(53,52,"menu.restart.title")),o(5),g(l(58,54,"menu.restart.title")),o(2),y(t.isPwa?59:-1),o(),y(t.formAuth?60:-1))},dependencies:[N,K,O,D,U],styles:[".m-header[_ngcontent-%COMP%]{position:fixed;top:0;left:0;width:100%;height:65px;z-index:510;display:flex;align-items:center;padding-left:3px;padding-right:3px}.m-header[_ngcontent-%COMP%]:hover{cursor:pointer}@media (min-width: 768px){.m-header[_ngcontent-%COMP%]{display:none}}.sidebar[_ngcontent-%COMP%]{position:fixed;left:0;top:0;height:100vh;transition:.3s;width:60px;z-index:500}.sidebar[_ngcontent-%COMP%] .header[_ngcontent-%COMP%]{display:flex;flex-direction:column;justify-content:center;padding:15px 10px 15px 11px;font-size:.85rem}.sidebar[_ngcontent-%COMP%] .header[_ngcontent-%COMP%]:hover{cursor:pointer}.sidebar[_ngcontent-%COMP%] .link-wrapper[_ngcontent-%COMP%]{overflow-y:auto;max-height:calc(100vh - 80px)!important}.sidebar[_ngcontent-%COMP%] .link-wrapper[_ngcontent-%COMP%] .link[_ngcontent-%COMP%] .link-row[_ngcontent-%COMP%]{display:flex;align-items:center;padding:15px 10px;cursor:pointer;transition:.2s;font-size:17px}.sidebar[_ngcontent-%COMP%] .link-wrapper[_ngcontent-%COMP%] .link[_ngcontent-%COMP%] .link-row[_ngcontent-%COMP%] .icon[_ngcontent-%COMP%]{flex:0 0 38px;display:flex;align-items:center;justify-content:center}.sidebar[_ngcontent-%COMP%] .link-wrapper[_ngcontent-%COMP%] .link[_ngcontent-%COMP%] .link-row[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{flex:1;transition:.3s;max-width:0;overflow:hidden;white-space:nowrap}@media (max-width: 767px){.sidebar[_ngcontent-%COMP%]{width:0}.sidebar[_ngcontent-%COMP%] .link-wrapper[_ngcontent-%COMP%]{display:none}}.sidebar.expanded[_ngcontent-%COMP%]{width:210px}@media (max-width: 767px){.sidebar.expanded[_ngcontent-%COMP%]{width:210px}.sidebar.expanded[_ngcontent-%COMP%] .link-wrapper[_ngcontent-%COMP%]{display:block}}.sidebar.expanded[_ngcontent-%COMP%] .link-wrapper[_ngcontent-%COMP%] .link[_ngcontent-%COMP%] .link-row[_ngcontent-%COMP%] .title[_ngcontent-%COMP%]{max-width:150px;padding-left:10px}.hamburger-icon[_ngcontent-%COMP%]{margin:-7px 0 0 25px}@media (min-width: 768px){.hb-logo-text[_ngcontent-%COMP%]{color:#fff;position:absolute;top:17px;font-size:22px;padding-left:3px}.sidebar.expanded[_ngcontent-%COMP%] .hb-logo-text[_ngcontent-%COMP%]{opacity:1;left:55px;transition:.3s}.sidebar[_ngcontent-%COMP%]:not(.expanded) .hb-logo-text[_ngcontent-%COMP%]{opacity:0;left:40px;transition:.3s}.hb-logo-text-mobile[_ngcontent-%COMP%], .hamburger-icon[_ngcontent-%COMP%]{display:none!important}}@media (max-width: 767px){.hb-logo-text[_ngcontent-%COMP%]{display:none!important}.hb-logo-text-mobile[_ngcontent-%COMP%]{color:#fff;position:absolute;top:17px;font-size:22px;padding-left:3px;opacity:1;left:55px}.hamburger-icon[_ngcontent-%COMP%]{position:absolute;right:10px;top:28px;width:30px;-webkit-transform:rotate(0deg);-moz-transform:rotate(0deg);-o-transform:rotate(0deg);transform:rotate(0);-webkit-transition:.5s ease-in-out;-moz-transition:.5s ease-in-out;-o-transition:.5s ease-in-out;transition:.5s ease-in-out;cursor:pointer}.hamburger-icon[_ngcontent-%COMP%] span[_ngcontent-%COMP%]{display:block;position:absolute;height:2px;width:100%;background-color:#fff;border-radius:9px;opacity:1;left:0;-webkit-transform:rotate(0deg);-moz-transform:rotate(0deg);-o-transform:rotate(0deg);transform:rotate(0);-webkit-transition:.25s ease-in-out;-moz-transition:.25s ease-in-out;-o-transition:.25s ease-in-out;transition:.25s ease-in-out}.hamburger-icon[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(1){top:0}.hamburger-icon[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(2), .hamburger-icon[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(3){top:10px}.hamburger-icon[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(4){top:20px}.hamburger-icon-cross[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(1){top:10px;width:0;left:50%}.hamburger-icon-cross[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(2){-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg)}.hamburger-icon-cross[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(3){-webkit-transform:rotate(-45deg);-moz-transform:rotate(-45deg);-o-transform:rotate(-45deg);transform:rotate(-45deg)}.hamburger-icon-cross[_ngcontent-%COMP%] span[_ngcontent-%COMP%]:nth-child(4){top:10px;width:0;left:50%}}"]})}return i})();var we=i=>({sidebarExpanded:i}),Xe=(()=>{class i{$auth=u(A);$modal=u(E);$router=u(V);$settings=u($);$translate=u(L);$ws=u(j);io;sidebarExpanded=!1;ngOnInit(){this.io=this.$ws.connectToNamespace("app"),this.io.socket.on("reconnect",()=>{this.$auth.checkToken()}),this.compareServerUiVersion()}compareServerUiVersion(){return I(this,null,function*(){if(this.$settings.settingsLoaded||(yield z(this.$settings.onSettingsLoaded)),this.$router.url!=="/restart"&&(0,Q.lt)(this.$settings.uiVersion,T.serverTarget)){console.log(`Server restart required. UI Version: ${T.serverTarget} - Server Version: ${this.$settings.uiVersion} `);let e=this.$modal.open(R,{size:"lg",backdrop:"static"});e.componentInstance.title=this.$translate.instant("platform.version.service_restart_required"),e.componentInstance.message=this.$translate.instant("platform.version.restart_required",{serverVersion:this.$settings.uiVersion,uiVersion:T.serverTarget}),e.componentInstance.confirmButtonLabel=this.$translate.instant("menu.tooltip_restart"),e.componentInstance.faIconClass="fas fa-power-off orange-text",e.result.then(()=>this.$router.navigate(["/restart"])).catch(()=>{})}})}static \u0275fac=function(s){return new(s||i)};static \u0275cmp=P({type:i,selectors:[["app-layout"]],decls:3,vars:4,consts:[[3,"isExpanded"],[1,"content","px-3","p-md-4",3,"ngClass"]],template:function(s,t){s&1&&(p(0,"app-sidebar",0),n(1,"div",1),p(2,"router-outlet"),a()),s&2&&(c("isExpanded",t.sidebarExpanded),o(),c("ngClass",M(2,we,t.sidebarExpanded)))},dependencies:[J,O,q],styles:[".content[_ngcontent-%COMP%]{margin-left:60px;transition:.3s;height:100%}@media (max-width: 767px){.content[_ngcontent-%COMP%]{margin-left:0;padding-top:85px!important}}@media (min-width: 768px){.content[_ngcontent-%COMP%]{height:100%}}a[_ngcontent-%COMP%]:hover{text-decoration:none!important}"]})}return i})();export{Xe as LayoutComponent};
@@ -0,0 +1 @@
1
+ import{b as s}from"./chunk-24HGAFIA.js";import{d as i}from"./chunk-X7PVYZAE.js";import{k as o}from"./chunk-OCUYP77B.js";import{a}from"./chunk-LXXELGX4.js";import{ga as e,la as r}from"./chunk-SKZUTSHE.js";var v=(()=>{class t{$auth=r(s);$router=r(i);$translate=r(a);$toastr=r(o);canActivate(){return this.$auth.user&&this.$auth.user.admin?!0:(this.$toastr.error(this.$translate.instant("toast.no_auth"),this.$translate.instant("toast.title_error")),this.$router.navigate(["/"]),!1)}static \u0275fac=function(n){return new(n||t)};static \u0275prov=e({token:t,factory:t.\u0275fac,providedIn:"root"})}return t})();export{v as a};
@@ -0,0 +1 @@
1
+ import{t as k}from"./chunk-CF2ZN7LY.js";import"./chunk-T252YJXA.js";import{d as P}from"./chunk-X7PVYZAE.js";import{b as I}from"./chunk-PBJK6VW5.js";import{k as $,n as O}from"./chunk-OCUYP77B.js";import{a as y,b as T}from"./chunk-LXXELGX4.js";import"./chunk-SRP6QX5M.js";import{Bc as a,Cc as s,Ib as f,Jb as v,Ob as h,Pb as o,Qb as r,Rb as C,Vb as w,Yb as m,Zb as b,ab as i,kc as l,la as c,lc as S,mb as g,mc as d,ra as u,sa as _}from"./chunk-SKZUTSHE.js";function E(t,x){if(t&1){let n=w();o(0,"p",5)(1,"button",6),m("click",function(){u(n);let e=b();return _(e.restartServer())}),l(2),a(3,"translate"),r()()}t&2&&(i(2),d(" ",s(3,1,"menu.linux.label_restart_server")," "))}function H(t,x){if(t&1){let n=w();o(0,"p",5)(1,"button",6),m("click",function(){u(n);let e=b();return _(e.shutdownServer())}),l(2),a(3,"translate"),r()()}t&2&&(i(2),d(" ",s(3,1,"menu.linux.label_shutdown_server")," "))}function B(t,x){if(t&1){let n=w();o(0,"p",5)(1,"button",6),m("click",function(){u(n);let e=b();return _(e.dockerRestartContainer())}),l(2),a(3,"translate"),r()()}t&2&&(i(2),d(" ",s(3,1,"menu.docker.restart_container")," "))}var G=(()=>{class t{$api=c(O);$router=c(P);$settings=c(I);$toastr=c($);$translate=c(y);canShutdownRestartHost=this.$settings.env.canShutdownRestartHost;runningInDocker=this.$settings.env.runningInDocker;restartHomebridge(){this.$router.navigate(["/restart"])}restartHomebridgeService(){this.$api.put("/platform-tools/hb-service/set-full-service-restart-flag",{}).subscribe({next:()=>{this.$router.navigate(["/restart"])},error:n=>{console.error(n),this.$toastr.error(n.message,this.$translate.instant("toast.title_error"))}})}restartServer(){this.$router.navigate(["/platform-tools/linux/restart-server"])}shutdownServer(){this.$router.navigate(["/platform-tools/linux/shutdown-server"])}dockerRestartContainer(){this.$router.navigate(["/platform-tools/docker/restart-container"])}static \u0275fac=function(p){return new(p||t)};static \u0275cmp=g({type:t,selectors:[["ng-component"]],decls:19,vars:15,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-fw","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","openDelay","150","triggers","hover",1,"btn","btn-primary","p-3","my-0",2,"width","85%",3,"click","ngbTooltip"]],template:function(p,e){p&1&&(o(0,"div",0)(1,"h3",1),l(2),a(3,"translate"),r()(),o(4,"div",2)(5,"div",3),C(6,"i",4),r(),o(7,"p",5)(8,"button",6),m("click",function(){return e.restartHomebridge()}),l(9),a(10,"translate"),r()(),o(11,"p",5)(12,"button",7),a(13,"translate"),m("click",function(){return e.restartHomebridgeService()}),l(14),a(15,"translate"),r()(),f(16,E,4,3,"p",5),f(17,H,4,3,"p",5),f(18,B,4,3,"p",5),r()),p&2&&(i(2),S(s(3,7,"menu.restart.title")),i(7),d(" ",s(10,9,"menu.hbrestart.confirm_hb")," "),i(3),h("ngbTooltip",s(13,11,"reset.force_restart_hb_help_text")),i(2),d(" ",s(15,13,"menu.hbrestart.confirm_ui")," "),i(2),v(e.canShutdownRestartHost?16:-1),i(),v(e.canShutdownRestartHost?17:-1),i(),v(e.runningInDocker?18:-1))},dependencies:[k,T],encapsulation:2})}return t})();export{G as PowerOptionsComponent};