zigbee2mqtt-frontend 0.6.161 → 0.6.163

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. package/CHANGELOG.md +28 -0
  2. package/dist/assets/Availability-4c5e5432.js +1 -0
  3. package/dist/assets/Availability-4c5e5432.js.br +0 -0
  4. package/dist/assets/CodeEditor-922a5ec4.js +25 -0
  5. package/dist/assets/CodeEditor-922a5ec4.js.br +0 -0
  6. package/dist/assets/ConnectedDevicePage-897536c8.js +1 -0
  7. package/dist/assets/ConnectedDevicePage-897536c8.js.br +0 -0
  8. package/dist/assets/{ConnectedMap-761cfd93.js → ConnectedMap-2a46c40b.js} +1 -1
  9. package/dist/assets/ConnectedMap-2a46c40b.js.br +0 -0
  10. package/dist/assets/Dashboard-387863f5.js +1 -0
  11. package/dist/assets/Dashboard-387863f5.js.br +0 -0
  12. package/dist/assets/{DashboardDevice-c60201bb.js → DashboardDevice-37c0f906.js} +1 -1
  13. package/dist/assets/DashboardDevice-37c0f906.js.br +0 -0
  14. package/dist/assets/DashboardFeatureWrapper-47fcdb5f.js +1 -0
  15. package/dist/assets/DashboardFeatureWrapper-47fcdb5f.js.br +0 -0
  16. package/dist/assets/DeviceImage-6e6d911a.js +1 -0
  17. package/dist/assets/DeviceImage-6e6d911a.js.br +0 -0
  18. package/dist/assets/GroupPage-f8da7ba2.js +1 -0
  19. package/dist/assets/GroupPage-f8da7ba2.js.br +0 -0
  20. package/dist/assets/{ReactTableCom-5f5db069.js → ReactTableCom-bcf39d05.js} +1 -1
  21. package/dist/assets/ReactTableCom-bcf39d05.js.br +0 -0
  22. package/dist/assets/RecallRemove-e2144638.js +1 -0
  23. package/dist/assets/RecallRemove-e2144638.js.br +0 -0
  24. package/dist/assets/_baseSet-31cacf43.js +1 -0
  25. package/dist/assets/_getAllKeysIn-2d1d4901.js +1 -0
  26. package/dist/assets/bootstrap-5.esm-c77eceb2.js +11 -0
  27. package/dist/assets/bootstrap-5.esm-c77eceb2.js.br +0 -0
  28. package/dist/assets/{index-bbc0fbd3.js → index-12d6c71c.js} +1 -1
  29. package/dist/assets/index-12d6c71c.js.br +0 -0
  30. package/dist/assets/index-16a2345a.js +1 -0
  31. package/dist/assets/index-16a2345a.js.br +0 -0
  32. package/dist/assets/{index-fb4a4614.js → index-25b6dbca.js} +68 -66
  33. package/dist/assets/index-25b6dbca.js.br +0 -0
  34. package/dist/assets/{index-ef73b565.js → index-3ece1a04.js} +2 -2
  35. package/dist/assets/index-3ece1a04.js.br +0 -0
  36. package/dist/assets/{index-d5688308.js → index-4a412413.js} +1 -1
  37. package/dist/assets/index-4a412413.js.br +0 -0
  38. package/dist/assets/{index-e886b299.js → index-762f77d5.js} +1 -1
  39. package/dist/assets/index-762f77d5.js.br +0 -0
  40. package/dist/assets/{index-dd5bd773.js → index-a8eb9e40.js} +1 -1
  41. package/dist/assets/index-a8eb9e40.js.br +0 -0
  42. package/dist/assets/{index-662e592d.js → index-c335efea.js} +1 -1
  43. package/dist/assets/index-c335efea.js.br +0 -0
  44. package/dist/assets/{index-317fed81.js → index-e58dafd9.js} +1 -1
  45. package/dist/assets/index-e58dafd9.js.br +0 -0
  46. package/dist/assets/{index-361b7a42.js → index-fd169243.js} +1 -1
  47. package/dist/assets/intersection-69fb9f9d.js +1 -0
  48. package/dist/assets/intersection-69fb9f9d.js.br +0 -0
  49. package/dist/assets/{isEqual-ddfc316d.js → isEqual-a3afd42d.js} +1 -1
  50. package/dist/assets/{persist-47ba9205.js → persist-890abb2e.js} +1 -1
  51. package/dist/assets/persist-890abb2e.js.br +0 -0
  52. package/dist/assets/{rjsf-translation-fields-3aef875c.js → rjsf-translation-fields-811af37d.js} +1 -1
  53. package/dist/assets/spinner-affc6db3.js +1 -0
  54. package/dist/assets/{vendor-links-5c024fe8.js → vendor-links-66ce3b64.js} +1 -1
  55. package/dist/assets/vendor-links-66ce3b64.js.br +0 -0
  56. package/dist/index.html +1 -1
  57. package/dist/index.html.br +0 -0
  58. package/package.json +7 -7
  59. package/dist/assets/Availability-e91d3536.js +0 -1
  60. package/dist/assets/Availability-e91d3536.js.br +0 -0
  61. package/dist/assets/CodeEditor-ee543824.js +0 -23
  62. package/dist/assets/CodeEditor-ee543824.js.br +0 -0
  63. package/dist/assets/ConnectedDevicePage-59cf87e7.js +0 -1
  64. package/dist/assets/ConnectedDevicePage-59cf87e7.js.br +0 -0
  65. package/dist/assets/ConnectedMap-761cfd93.js.br +0 -0
  66. package/dist/assets/Dashboard-cc086107.js +0 -1
  67. package/dist/assets/Dashboard-cc086107.js.br +0 -0
  68. package/dist/assets/DashboardDevice-c60201bb.js.br +0 -0
  69. package/dist/assets/DashboardFeatureWrapper-ef543cb2.js +0 -1
  70. package/dist/assets/DashboardFeatureWrapper-ef543cb2.js.br +0 -0
  71. package/dist/assets/DeviceImage-a3fb91b8.js +0 -1
  72. package/dist/assets/DeviceImage-a3fb91b8.js.br +0 -0
  73. package/dist/assets/DeviceImage-da893e86.css +0 -1
  74. package/dist/assets/GroupPage-c4462a0b.js +0 -1
  75. package/dist/assets/GroupPage-c4462a0b.js.br +0 -0
  76. package/dist/assets/ReactTableCom-5f5db069.js.br +0 -0
  77. package/dist/assets/RecallRemove-a3a43a56.js +0 -1
  78. package/dist/assets/RecallRemove-a3a43a56.js.br +0 -0
  79. package/dist/assets/_baseSet-411f0b9b.js +0 -1
  80. package/dist/assets/_getAllKeysIn-d7fdca48.js +0 -1
  81. package/dist/assets/bootstrap-5.esm-54b60f6b.js +0 -11
  82. package/dist/assets/bootstrap-5.esm-54b60f6b.js.br +0 -0
  83. package/dist/assets/index-317fed81.js.br +0 -0
  84. package/dist/assets/index-662e592d.js.br +0 -0
  85. package/dist/assets/index-bbc0fbd3.js.br +0 -0
  86. package/dist/assets/index-d5688308.js.br +0 -0
  87. package/dist/assets/index-dd5bd773.js.br +0 -0
  88. package/dist/assets/index-e886b299.js.br +0 -0
  89. package/dist/assets/index-ef73b565.js.br +0 -0
  90. package/dist/assets/index-fb4a4614.js.br +0 -0
  91. package/dist/assets/index-ff79f9f4.js +0 -1
  92. package/dist/assets/index-ff79f9f4.js.br +0 -0
  93. package/dist/assets/intersection-fb9aff53.js +0 -1
  94. package/dist/assets/intersection-fb9aff53.js.br +0 -0
  95. package/dist/assets/persist-47ba9205.js.br +0 -0
  96. package/dist/assets/spinner-73379dc1.js +0 -1
  97. package/dist/assets/vendor-links-5c024fe8.js.br +0 -0
@@ -1 +0,0 @@
1
- import{x as P,ap as Ne,P as $e,j as c,B as v,r as x,b as y,aq as Fe,u as Q,w as B,R as q,O as U}from"./index-fb4a4614.js";import{D as V}from"./index-662e592d.js";import{i as Ae}from"./isEqual-ddfc316d.js";function Te(e){return e.type==="binary"}function ee(e){return e.type==="list"}function Oe(e){return e.type==="numeric"}function Me(e){return e.type==="text"}function Le(e){return e.type==="enum"}function We(e){return e.type==="light"}function Ue(e){return e.type==="switch"}function Ie(e){return e.type==="cover"}function ze(e){return e.type==="lock"}function De(e){return e.type==="fan"}function O(e){return e.type==="composite"&&e.name!=="color_xy"&&e.name!=="color_hs"}function te(e){return e.type==="composite"&&(e.name==="color_xy"||e.name==="color_hs")}function Pe(e){return e.type==="climate"}function Be(e){return ee(e)&&e.name==="gradient"&&e.length_min!==void 0&&e.length_max!==void 0}var qe=$e,Ve=Ne,Ge=Object.prototype,Je=Ge.hasOwnProperty,Ze=Ve(function(e,t,n){Je.call(e,n)?e[n].push(t):qe(e,n,[t])}),He=Ze;const Ke=P(He);var b=(e=>(e[e.NONE=0]="NONE",e[e.ACCESS_STATE=1]="ACCESS_STATE",e[e.ACCESS_WRITE=2]="ACCESS_WRITE",e[e.ACCESS_READ=4]="ACCESS_READ",e))(b||{});const G=e=>{const{value:t,onClick:n,name:r}=e;return c.jsx(v,{className:"btn btn-link",item:t,onClick:n,children:c.jsx(V,{value:t,name:r})})},Ye=e=>{const{onChange:t,value:n,valueOn:r,valueOff:s,minimal:a,name:o}=e,i=f=>t(f.target.checked?r:s),l=n!=null,u=!a||a&&!l;return c.jsxs("div",{children:[u&&c.jsx(G,{value:s,name:o,onClick:t}),l?c.jsx("div",{className:"form-check form-switch form-check-inline align-middle me-0",children:c.jsx("input",{className:"form-check-input",type:"checkbox",checked:n===r,onChange:i})}):c.jsx("i",{className:"fa fa-question",title:"Current value unknown"}),u&&c.jsx(G,{value:r,name:o,onClick:t})]})},Xe=Ye,A=e=>{const{feature:{property:t,unit:n,name:r},deviceState:s}=e;return c.jsxs("div",{children:[t&&c.jsx("strong",{children:c.jsx(V,{value:s[t],name:r})}),n?c.jsx("small",{className:"text-muted ms-1",children:n}):null]})},T=({feature:{access:e}})=>c.jsxs("div",{className:"alert alert-warning p-0",role:"alert",children:["Unknown access ",JSON.stringify(e,null,4)]}),Qe=e=>{const{feature:{access:t=b.ACCESS_WRITE,endpoint:n,name:r,property:s,value_off:a,value_on:o},deviceState:i,onChange:l,minimal:u}=e;return t&b.ACCESS_WRITE?c.jsx(Xe,{onChange:f=>l(n,{[s]:f}),value:i[s],valueOn:o,valueOff:a,minimal:u,name:r}):t&b.ACCESS_STATE?c.jsx(A,{...e}):c.jsx(T,{...e})},et=Qe,tt=e=>c.jsx(R,{type:"climate",...e}),nt=tt,rt={position:[0,25,50,75,100].map(e=>({value:e,name:e+""})),tilt:[0,25,50,75,100].map(e=>({value:e,name:e+""}))},st=e=>c.jsx(R,{type:"cover",...e,stepsConfiguration:rt}),at=st;var ot={aliceblue:[240,248,255],antiquewhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blanchedalmond:[255,235,205],blue:[0,0,255],blueviolet:[138,43,226],brown:[165,42,42],burlywood:[222,184,135],cadetblue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornflowerblue:[100,149,237],cornsilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkcyan:[0,139,139],darkgoldenrod:[184,134,11],darkgray:[169,169,169],darkgreen:[0,100,0],darkgrey:[169,169,169],darkkhaki:[189,183,107],darkmagenta:[139,0,139],darkolivegreen:[85,107,47],darkorange:[255,140,0],darkorchid:[153,50,204],darkred:[139,0,0],darksalmon:[233,150,122],darkseagreen:[143,188,143],darkslateblue:[72,61,139],darkslategray:[47,79,79],darkslategrey:[47,79,79],darkturquoise:[0,206,209],darkviolet:[148,0,211],deeppink:[255,20,147],deepskyblue:[0,191,255],dimgray:[105,105,105],dimgrey:[105,105,105],dodgerblue:[30,144,255],firebrick:[178,34,34],floralwhite:[255,250,240],forestgreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostwhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenyellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotpink:[255,105,180],indianred:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderblush:[255,240,245],lawngreen:[124,252,0],lemonchiffon:[255,250,205],lightblue:[173,216,230],lightcoral:[240,128,128],lightcyan:[224,255,255],lightgoldenrodyellow:[250,250,210],lightgray:[211,211,211],lightgreen:[144,238,144],lightgrey:[211,211,211],lightpink:[255,182,193],lightsalmon:[255,160,122],lightseagreen:[32,178,170],lightskyblue:[135,206,250],lightslategray:[119,136,153],lightslategrey:[119,136,153],lightsteelblue:[176,196,222],lightyellow:[255,255,224],lime:[0,255,0],limegreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumaquamarine:[102,205,170],mediumblue:[0,0,205],mediumorchid:[186,85,211],mediumpurple:[147,112,219],mediumseagreen:[60,179,113],mediumslateblue:[123,104,238],mediumspringgreen:[0,250,154],mediumturquoise:[72,209,204],mediumvioletred:[199,21,133],midnightblue:[25,25,112],mintcream:[245,255,250],mistyrose:[255,228,225],moccasin:[255,228,181],navajowhite:[255,222,173],navy:[0,0,128],oldlace:[253,245,230],olive:[128,128,0],olivedrab:[107,142,35],orange:[255,165,0],orangered:[255,69,0],orchid:[218,112,214],palegoldenrod:[238,232,170],palegreen:[152,251,152],paleturquoise:[175,238,238],palevioletred:[219,112,147],papayawhip:[255,239,213],peachpuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,221],powderblue:[176,224,230],purple:[128,0,128],rebeccapurple:[102,51,153],red:[255,0,0],rosybrown:[188,143,143],royalblue:[65,105,225],saddlebrown:[139,69,19],salmon:[250,128,114],sandybrown:[244,164,96],seagreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyblue:[135,206,235],slateblue:[106,90,205],slategray:[112,128,144],slategrey:[112,128,144],snow:[255,250,250],springgreen:[0,255,127],steelblue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whitesmoke:[245,245,245],yellow:[255,255,0],yellowgreen:[154,205,50]};const F=ot,ne={};for(const e of Object.keys(F))ne[F[e]]=e;const d={rgb:{channels:3,labels:"rgb"},hsl:{channels:3,labels:"hsl"},hsv:{channels:3,labels:"hsv"},hwb:{channels:3,labels:"hwb"},cmyk:{channels:4,labels:"cmyk"},xyz:{channels:3,labels:"xyz"},lab:{channels:3,labels:"lab"},lch:{channels:3,labels:"lch"},hex:{channels:1,labels:["hex"]},keyword:{channels:1,labels:["keyword"]},ansi16:{channels:1,labels:["ansi16"]},ansi256:{channels:1,labels:["ansi256"]},hcg:{channels:3,labels:["h","c","g"]},apple:{channels:3,labels:["r16","g16","b16"]},gray:{channels:1,labels:["gray"]}};var re=d;for(const e of Object.keys(d)){if(!("channels"in d[e]))throw new Error("missing channels property: "+e);if(!("labels"in d[e]))throw new Error("missing channel labels property: "+e);if(d[e].labels.length!==d[e].channels)throw new Error("channel and label counts mismatch: "+e);const{channels:t,labels:n}=d[e];delete d[e].channels,delete d[e].labels,Object.defineProperty(d[e],"channels",{value:t}),Object.defineProperty(d[e],"labels",{value:n})}d.rgb.hsl=function(e){const t=e[0]/255,n=e[1]/255,r=e[2]/255,s=Math.min(t,n,r),a=Math.max(t,n,r),o=a-s;let i,l;a===s?i=0:t===a?i=(n-r)/o:n===a?i=2+(r-t)/o:r===a&&(i=4+(t-n)/o),i=Math.min(i*60,360),i<0&&(i+=360);const u=(s+a)/2;return a===s?l=0:u<=.5?l=o/(a+s):l=o/(2-a-s),[i,l*100,u*100]};d.rgb.hsv=function(e){let t,n,r,s,a;const o=e[0]/255,i=e[1]/255,l=e[2]/255,u=Math.max(o,i,l),f=u-Math.min(o,i,l),h=function(m){return(u-m)/6/f+1/2};return f===0?(s=0,a=0):(a=f/u,t=h(o),n=h(i),r=h(l),o===u?s=r-n:i===u?s=1/3+t-r:l===u&&(s=2/3+n-t),s<0?s+=1:s>1&&(s-=1)),[s*360,a*100,u*100]};d.rgb.hwb=function(e){const t=e[0],n=e[1];let r=e[2];const s=d.rgb.hsl(e)[0],a=1/255*Math.min(t,Math.min(n,r));return r=1-1/255*Math.max(t,Math.max(n,r)),[s,a*100,r*100]};d.rgb.cmyk=function(e){const t=e[0]/255,n=e[1]/255,r=e[2]/255,s=Math.min(1-t,1-n,1-r),a=(1-t-s)/(1-s)||0,o=(1-n-s)/(1-s)||0,i=(1-r-s)/(1-s)||0;return[a*100,o*100,i*100,s*100]};function ct(e,t){return(e[0]-t[0])**2+(e[1]-t[1])**2+(e[2]-t[2])**2}d.rgb.keyword=function(e){const t=ne[e];if(t)return t;let n=1/0,r;for(const s of Object.keys(F)){const a=F[s],o=ct(e,a);o<n&&(n=o,r=s)}return r};d.keyword.rgb=function(e){return F[e]};d.rgb.xyz=function(e){let t=e[0]/255,n=e[1]/255,r=e[2]/255;t=t>.04045?((t+.055)/1.055)**2.4:t/12.92,n=n>.04045?((n+.055)/1.055)**2.4:n/12.92,r=r>.04045?((r+.055)/1.055)**2.4:r/12.92;const s=t*.4124+n*.3576+r*.1805,a=t*.2126+n*.7152+r*.0722,o=t*.0193+n*.1192+r*.9505;return[s*100,a*100,o*100]};d.rgb.lab=function(e){const t=d.rgb.xyz(e);let n=t[0],r=t[1],s=t[2];n/=95.047,r/=100,s/=108.883,n=n>.008856?n**(1/3):7.787*n+16/116,r=r>.008856?r**(1/3):7.787*r+16/116,s=s>.008856?s**(1/3):7.787*s+16/116;const a=116*r-16,o=500*(n-r),i=200*(r-s);return[a,o,i]};d.hsl.rgb=function(e){const t=e[0]/360,n=e[1]/100,r=e[2]/100;let s,a,o;if(n===0)return o=r*255,[o,o,o];r<.5?s=r*(1+n):s=r+n-r*n;const i=2*r-s,l=[0,0,0];for(let u=0;u<3;u++)a=t+1/3*-(u-1),a<0&&a++,a>1&&a--,6*a<1?o=i+(s-i)*6*a:2*a<1?o=s:3*a<2?o=i+(s-i)*(2/3-a)*6:o=i,l[u]=o*255;return l};d.hsl.hsv=function(e){const t=e[0];let n=e[1]/100,r=e[2]/100,s=n;const a=Math.max(r,.01);r*=2,n*=r<=1?r:2-r,s*=a<=1?a:2-a;const o=(r+n)/2,i=r===0?2*s/(a+s):2*n/(r+n);return[t,i*100,o*100]};d.hsv.rgb=function(e){const t=e[0]/60,n=e[1]/100;let r=e[2]/100;const s=Math.floor(t)%6,a=t-Math.floor(t),o=255*r*(1-n),i=255*r*(1-n*a),l=255*r*(1-n*(1-a));switch(r*=255,s){case 0:return[r,l,o];case 1:return[i,r,o];case 2:return[o,r,l];case 3:return[o,i,r];case 4:return[l,o,r];case 5:return[r,o,i]}};d.hsv.hsl=function(e){const t=e[0],n=e[1]/100,r=e[2]/100,s=Math.max(r,.01);let a,o;o=(2-n)*r;const i=(2-n)*s;return a=n*s,a/=i<=1?i:2-i,a=a||0,o/=2,[t,a*100,o*100]};d.hwb.rgb=function(e){const t=e[0]/360;let n=e[1]/100,r=e[2]/100;const s=n+r;let a;s>1&&(n/=s,r/=s);const o=Math.floor(6*t),i=1-r;a=6*t-o,o&1&&(a=1-a);const l=n+a*(i-n);let u,f,h;switch(o){default:case 6:case 0:u=i,f=l,h=n;break;case 1:u=l,f=i,h=n;break;case 2:u=n,f=i,h=l;break;case 3:u=n,f=l,h=i;break;case 4:u=l,f=n,h=i;break;case 5:u=i,f=n,h=l;break}return[u*255,f*255,h*255]};d.cmyk.rgb=function(e){const t=e[0]/100,n=e[1]/100,r=e[2]/100,s=e[3]/100,a=1-Math.min(1,t*(1-s)+s),o=1-Math.min(1,n*(1-s)+s),i=1-Math.min(1,r*(1-s)+s);return[a*255,o*255,i*255]};d.xyz.rgb=function(e){const t=e[0]/100,n=e[1]/100,r=e[2]/100;let s,a,o;return s=t*3.2406+n*-1.5372+r*-.4986,a=t*-.9689+n*1.8758+r*.0415,o=t*.0557+n*-.204+r*1.057,s=s>.0031308?1.055*s**(1/2.4)-.055:s*12.92,a=a>.0031308?1.055*a**(1/2.4)-.055:a*12.92,o=o>.0031308?1.055*o**(1/2.4)-.055:o*12.92,s=Math.min(Math.max(0,s),1),a=Math.min(Math.max(0,a),1),o=Math.min(Math.max(0,o),1),[s*255,a*255,o*255]};d.xyz.lab=function(e){let t=e[0],n=e[1],r=e[2];t/=95.047,n/=100,r/=108.883,t=t>.008856?t**(1/3):7.787*t+16/116,n=n>.008856?n**(1/3):7.787*n+16/116,r=r>.008856?r**(1/3):7.787*r+16/116;const s=116*n-16,a=500*(t-n),o=200*(n-r);return[s,a,o]};d.lab.xyz=function(e){const t=e[0],n=e[1],r=e[2];let s,a,o;a=(t+16)/116,s=n/500+a,o=a-r/200;const i=a**3,l=s**3,u=o**3;return a=i>.008856?i:(a-16/116)/7.787,s=l>.008856?l:(s-16/116)/7.787,o=u>.008856?u:(o-16/116)/7.787,s*=95.047,a*=100,o*=108.883,[s,a,o]};d.lab.lch=function(e){const t=e[0],n=e[1],r=e[2];let s;s=Math.atan2(r,n)*360/2/Math.PI,s<0&&(s+=360);const o=Math.sqrt(n*n+r*r);return[t,o,s]};d.lch.lab=function(e){const t=e[0],n=e[1],s=e[2]/360*2*Math.PI,a=n*Math.cos(s),o=n*Math.sin(s);return[t,a,o]};d.rgb.ansi16=function(e,t=null){const[n,r,s]=e;let a=t===null?d.rgb.hsv(e)[2]:t;if(a=Math.round(a/50),a===0)return 30;let o=30+(Math.round(s/255)<<2|Math.round(r/255)<<1|Math.round(n/255));return a===2&&(o+=60),o};d.hsv.ansi16=function(e){return d.rgb.ansi16(d.hsv.rgb(e),e[2])};d.rgb.ansi256=function(e){const t=e[0],n=e[1],r=e[2];return t===n&&n===r?t<8?16:t>248?231:Math.round((t-8)/247*24)+232:16+36*Math.round(t/255*5)+6*Math.round(n/255*5)+Math.round(r/255*5)};d.ansi16.rgb=function(e){let t=e%10;if(t===0||t===7)return e>50&&(t+=3.5),t=t/10.5*255,[t,t,t];const n=(~~(e>50)+1)*.5,r=(t&1)*n*255,s=(t>>1&1)*n*255,a=(t>>2&1)*n*255;return[r,s,a]};d.ansi256.rgb=function(e){if(e>=232){const a=(e-232)*10+8;return[a,a,a]}e-=16;let t;const n=Math.floor(e/36)/5*255,r=Math.floor((t=e%36)/6)/5*255,s=t%6/5*255;return[n,r,s]};d.rgb.hex=function(e){const n=(((Math.round(e[0])&255)<<16)+((Math.round(e[1])&255)<<8)+(Math.round(e[2])&255)).toString(16).toUpperCase();return"000000".substring(n.length)+n};d.hex.rgb=function(e){const t=e.toString(16).match(/[a-f0-9]{6}|[a-f0-9]{3}/i);if(!t)return[0,0,0];let n=t[0];t[0].length===3&&(n=n.split("").map(i=>i+i).join(""));const r=parseInt(n,16),s=r>>16&255,a=r>>8&255,o=r&255;return[s,a,o]};d.rgb.hcg=function(e){const t=e[0]/255,n=e[1]/255,r=e[2]/255,s=Math.max(Math.max(t,n),r),a=Math.min(Math.min(t,n),r),o=s-a;let i,l;return o<1?i=a/(1-o):i=0,o<=0?l=0:s===t?l=(n-r)/o%6:s===n?l=2+(r-t)/o:l=4+(t-n)/o,l/=6,l%=1,[l*360,o*100,i*100]};d.hsl.hcg=function(e){const t=e[1]/100,n=e[2]/100,r=n<.5?2*t*n:2*t*(1-n);let s=0;return r<1&&(s=(n-.5*r)/(1-r)),[e[0],r*100,s*100]};d.hsv.hcg=function(e){const t=e[1]/100,n=e[2]/100,r=t*n;let s=0;return r<1&&(s=(n-r)/(1-r)),[e[0],r*100,s*100]};d.hcg.rgb=function(e){const t=e[0]/360,n=e[1]/100,r=e[2]/100;if(n===0)return[r*255,r*255,r*255];const s=[0,0,0],a=t%1*6,o=a%1,i=1-o;let l=0;switch(Math.floor(a)){case 0:s[0]=1,s[1]=o,s[2]=0;break;case 1:s[0]=i,s[1]=1,s[2]=0;break;case 2:s[0]=0,s[1]=1,s[2]=o;break;case 3:s[0]=0,s[1]=i,s[2]=1;break;case 4:s[0]=o,s[1]=0,s[2]=1;break;default:s[0]=1,s[1]=0,s[2]=i}return l=(1-n)*r,[(n*s[0]+l)*255,(n*s[1]+l)*255,(n*s[2]+l)*255]};d.hcg.hsv=function(e){const t=e[1]/100,n=e[2]/100,r=t+n*(1-t);let s=0;return r>0&&(s=t/r),[e[0],s*100,r*100]};d.hcg.hsl=function(e){const t=e[1]/100,r=e[2]/100*(1-t)+.5*t;let s=0;return r>0&&r<.5?s=t/(2*r):r>=.5&&r<1&&(s=t/(2*(1-r))),[e[0],s*100,r*100]};d.hcg.hwb=function(e){const t=e[1]/100,n=e[2]/100,r=t+n*(1-t);return[e[0],(r-t)*100,(1-r)*100]};d.hwb.hcg=function(e){const t=e[1]/100,r=1-e[2]/100,s=r-t;let a=0;return s<1&&(a=(r-s)/(1-s)),[e[0],s*100,a*100]};d.apple.rgb=function(e){return[e[0]/65535*255,e[1]/65535*255,e[2]/65535*255]};d.rgb.apple=function(e){return[e[0]/255*65535,e[1]/255*65535,e[2]/255*65535]};d.gray.rgb=function(e){return[e[0]/100*255,e[0]/100*255,e[0]/100*255]};d.gray.hsl=function(e){return[0,0,e[0]]};d.gray.hsv=d.gray.hsl;d.gray.hwb=function(e){return[0,100,e[0]]};d.gray.cmyk=function(e){return[0,0,0,e[0]]};d.gray.lab=function(e){return[e[0],0,0]};d.gray.hex=function(e){const t=Math.round(e[0]/100*255)&255,r=((t<<16)+(t<<8)+t).toString(16).toUpperCase();return"000000".substring(r.length)+r};d.rgb.gray=function(e){return[(e[0]+e[1]+e[2])/3/255*100]};const W=re;function it(){const e={},t=Object.keys(W);for(let n=t.length,r=0;r<n;r++)e[t[r]]={distance:-1,parent:null};return e}function lt(e){const t=it(),n=[e];for(t[e].distance=0;n.length;){const r=n.pop(),s=Object.keys(W[r]);for(let a=s.length,o=0;o<a;o++){const i=s[o],l=t[i];l.distance===-1&&(l.distance=t[r].distance+1,l.parent=r,n.unshift(i))}}return t}function ut(e,t){return function(n){return t(e(n))}}function ft(e,t){const n=[t[e].parent,e];let r=W[t[e].parent][e],s=t[e].parent;for(;t[s].parent;)n.unshift(t[s].parent),r=ut(W[t[s].parent][s],r),s=t[s].parent;return r.conversion=n,r}var dt=function(e){const t=lt(e),n={},r=Object.keys(t);for(let s=r.length,a=0;a<s;a++){const o=r[a];t[o].parent!==null&&(n[o]=ft(o,t))}return n};const I=re,ht=dt,N={},mt=Object.keys(I);function pt(e){const t=function(...n){const r=n[0];return r==null?r:(r.length>1&&(n=r),e(n))};return"conversion"in e&&(t.conversion=e.conversion),t}function gt(e){const t=function(...n){const r=n[0];if(r==null)return r;r.length>1&&(n=r);const s=e(n);if(typeof s=="object")for(let a=s.length,o=0;o<a;o++)s[o]=Math.round(s[o]);return s};return"conversion"in e&&(t.conversion=e.conversion),t}mt.forEach(e=>{N[e]={},Object.defineProperty(N[e],"channels",{value:I[e].channels}),Object.defineProperty(N[e],"labels",{value:I[e].labels});const t=ht(e);Object.keys(t).forEach(r=>{const s=t[r];N[e][r]=gt(s),N[e][r].raw=pt(s)})});var M=N;const J=(e,t)=>{switch(t){case"color_xy":{const{x:a=0,y:o=0}=e,i=1-a-o,l=1,u=l/o*a,f=l/o*i;return"#"+M.xyz.hex([u*100,l*100,f*100])}case"color_hs":{const{hue:a=0,saturation:o=0}=e;return"#"+M.hsv.hex([a,o,100])}case"color_rgb":const{r:n,g:r,b:s}=e;return"#"+M.rgb.hex([n,r,s]);default:return"#FFFFFF"}},xt=["#FFFFFF","#FDF4DC","#F4FDFF"],bt=["#FF0018","#FFA52C","#FFFF41","#008018","#0000F9","#86007D"];function se(e){const{onChange:t,value:n={},format:r,steps:s=[bt,xt],minimal:a,...o}=e,[i,l]=x.useState(J(n,r));return x.useEffect(()=>{l(J(n,r))},[n,r]),c.jsxs(c.Fragment,{children:[!a&&s.map(u=>c.jsx("div",{className:"btn-group me-2 float-start border",children:u.map(f=>c.jsx(v,{className:"btn",style:{backgroundColor:f},item:f,title:f,onClick:h=>t({hex:h}),children:"   "},f))},JSON.stringify(u))),c.jsx("input",{type:"color",className:"form-control form-control-color",value:i,style:{minWidth:40},onChange:u=>{u.target.value.toLowerCase()!==i.toLowerCase()&&t({hex:u.target.value})},...o})]})}const vt=e=>{var o;const{deviceState:t,feature:n,onChange:r,minimal:s}=e,a={};for(const i of n.features)a[i.name]=((o=t[n.property])==null?void 0:o[i.property])??0;return c.jsx(se,{onChange:i=>r(n.endpoint,{color:i}),value:a,format:n.name,minimal:s})},yt=vt;function C(e){return e===null||["number","string","undefined"].includes(typeof e)}const Ct=e=>{const{onChange:t,values:n,value:r,minimal:s}=e;if(s){const a=o=>{const i=n.find(l=>C(l)?l==o.target.value:l.value==o.target.value);t(i)};return c.jsxs("select",{className:"form-control",onChange:a,value:C(r)?r:r.value,children:[c.jsx("option",{hidden:!0,children:"----"},"hided"),n.map(o=>c.jsx("option",{value:C(o)?o:o.value,children:C(o)?o:o.name},C(o)?o:o.name))]})}return c.jsx("div",{className:"btn-group me-2",children:n.map(a=>c.jsx(v,{className:y("btn btn-outline-secondary",{active:C(a)?a===r:a.value===(C(r)?r:r.value)}),onClick:o=>t(o),item:C(a)?a:a.value,title:C(a)?a:a.description,children:C(a)?c.jsx(V,{value:a,name:""}):a.name},C(a)?a:a.name))})},ae=Ct,jt=4,kt=e=>{const{onChange:t,feature:{access:n=b.ACCESS_WRITE,values:r,endpoint:s,property:a},deviceState:o,minimal:i}=e,l=r.length>jt;return n&b.ACCESS_WRITE?c.jsx(ae,{onChange:u=>t(s,{[a]:u}),values:r,value:o[a],minimal:i||l}):n&b.ACCESS_STATE?c.jsx(A,{...e}):c.jsx(T,{...e})},St=kt,wt={brightness:[0,25,50,75,100].map(e=>({value:Fe(e,[0,100],[0,255]),name:e+"%"})),color_temp:[1e3,2e3,3e3,4e3,5e3,6500].map(e=>({value:1e6/e,name:e+"K"}))},Et=e=>c.jsx(R,{type:"light",...e,stepsConfiguration:wt}),_t=Et,Rt=e=>c.jsx(R,{type:"lock",...e}),Nt=Rt,$t=e=>{const{onChange:t,value:n,valueStep:r,min:s,max:a,unit:o,steps:i,minimal:l,...u}=e,[f,h]=x.useState(n);x.useEffect(()=>{h(n)},[n]);const m=s!==void 0&&a!==void 0;return c.jsxs("div",{className:"input-group align-items-center",children:[!l&&i?c.jsx(ae,{values:i,onChange:t,value:f}):null,m?c.jsx("input",{min:s,max:a,step:r,type:"range",className:"form-range form-control border-0",value:f,onChange:p=>h(p.target.valueAsNumber),onTouchEnd:()=>t(f),onMouseUp:()=>t(f),...u}):null,(!l||!m)&&c.jsx("input",{type:"number",className:y("form-control",{"ms-1":m}),value:f,step:r,onChange:p=>h(p.target.valueAsNumber),onBlur:()=>t(f),onMouseUp:()=>t(f),min:s,max:a,...u,style:m?{maxWidth:"100px"}:{}}),!l&&o?c.jsx("span",{className:"input-group-text",style:{minWidth:"66px"},children:o}):null]})},oe=$t,Ft=e=>{const{feature:{presets:t,access:n=b.ACCESS_WRITE,endpoint:r,property:s,unit:a,value_max:o,value_min:i,value_step:l},deviceState:u,steps:f,onChange:h,minimal:m}=e;return n&b.ACCESS_WRITE?c.jsx(oe,{onChange:p=>h(r,{[s]:p}),value:u[s]??"",min:i,max:o,step:l,steps:t&&t.length?t:f,unit:a,minimal:m}):n&b.ACCESS_STATE?c.jsx(A,{...e}):c.jsx(T,{...e})},At=Ft,Tt=e=>{const{onChange:t,value:n,unit:r,...s}=e,[a,o]=x.useState(n);return x.useEffect(()=>{o(n)},[n]),c.jsxs(x.Fragment,{children:[c.jsx("input",{type:"text",className:"form-control",value:a,onChange:i=>o(i.target.value),onBlur:()=>t(a),...s}),r?c.jsx("span",{className:"input-group-text",style:{minWidth:"66px"},children:r}):null]})},Ot=Tt,Mt=e=>{const{feature:{access:t=b.ACCESS_WRITE,endpoint:n,property:r},deviceState:s,onChange:a}=e;return t&b.ACCESS_WRITE?c.jsx(Ot,{onChange:o=>a(n,{[r]:o}),value:s[r]??""}):t&b.ACCESS_STATE?c.jsx(A,{...e}):c.jsx(T,{...e})},Lt=Mt,Wt=e=>c.jsx(R,{type:"switch",...e}),Ut=Wt,It=e=>c.jsx(R,{type:"fan",...e}),zt=It,Dt=e=>{const{onChange:t,value:n,minimal:r,...s}=e,[a,o]=x.useState(n);x.useEffect(()=>{o(n)},[n]);const i=h=>{o(h),t(h)},l=(h,m)=>{const p=[...a];p[m]=h,i(p)},u=h=>()=>{const m=[...a];m.splice(h,1),i(m)},f=()=>i([...a,0]);return a.length===0?c.jsx("div",{className:"mt-3 mb-3 row",children:c.jsx(v,{className:"btn btn-success col-1 me-2",onClick:f,children:"+"})}):c.jsx("div",{children:a.map((h,m)=>{const p=a.length-1===m;return c.jsxs("div",{className:"mt-3 mb-3 row",children:[c.jsx("div",{className:"col-10",children:c.jsx(oe,{onChange:j=>l(j,m),value:h,minimal:r,...s})}),c.jsxs("div",{className:"btn-group col-2",role:"group",children:[c.jsx(v,{className:"btn btn-danger me-2",onClick:u(m),children:"-"}),c.jsx(v,{className:`btn btn-success ${p?"":"invisible"}`,onClick:f,children:"+"})]})]},m)})})},Pt=Dt,Bt=e=>{var f;const{t}=Q(["featureDescriptions"]),{children:n,feature:r,onRead:s}=e,a=te(r),o=r.property&&r.access&b.ACCESS_READ||a,i=(f=e.parentFeatures)==null?void 0:f[e.parentFeatures.length-1];let l=r.label;i!=null&&i.label&&r.name==="state"&&!["light","switch"].includes(i.type)&&(l=`${i.label} ${r.label.charAt(0).toLowerCase()}${r.label.slice(1)}`);const u=c.jsx("div",{className:"col-12 col-md-3",children:c.jsxs("label",{className:"col-form-label w-100",children:[c.jsxs("div",{className:"d-flex justify-content-between",children:[c.jsx("strong",{title:JSON.stringify(r),children:l}),o?c.jsx(v,{item:r,onClick:h=>{s(r.endpoint,{[h.property]:""})},className:"btn btn-primary btn-sm",children:c.jsx("i",{className:"fa fa-sync"})}):null]}),r.description?c.jsx("small",{className:"d-block text-muted",children:t(r.description)}):null]})});return c.jsxs("div",{className:"row border-bottom py-1 w-100 align-items-center",children:[(o||r.label)&&u,c.jsx("div",{className:"col-12 col-md-9",children:n})]})},qt=e=>{const{onChange:t,value:n,feature:r,parentFeatures:s,...a}=e,[o,i]=x.useState(n);x.useEffect(()=>{i(n)},[n]);const l=m=>{i(m),t(m)},u=(m,p)=>{const j=[...o];typeof m=="object"&&(m={...o[p],...m}),j[p]=m,l(j)},f=m=>()=>{const p=[...o];p.splice(m,1),l(p)},h=()=>i([...o,{}]);return o.length===0?c.jsx("div",{className:"mt-3 mb-3 row",children:c.jsx(v,{className:"btn btn-success col-1 me-2",onClick:h,children:"+"})}):c.jsx("div",{children:o.map((m,p)=>{const j=o.length-1===p;return c.jsxs("div",{className:"mt-3 mb-3 row",children:[c.jsx("div",{className:"col-10",children:c.jsx(L,{feature:r,device:{},deviceState:m,onChange:(k,E)=>{u(E,p)},onRead:(k,E)=>{},featureWrapperClass:Bt,parentFeatures:s})}),c.jsx("div",{className:"col-2",children:c.jsxs("div",{className:"btn-group",role:"group",children:[c.jsx(v,{className:"btn btn-danger me-2",onClick:f(p),children:"-"}),c.jsx(v,{className:`btn btn-success ${j?"":"invisible"}`,onClick:h,children:"+"})]})})]},p)})})},Vt=qt;class Gt extends x.Component{constructor(t){super(t),this.onChange=o=>{const{endpoint:i,property:l}=this.props.feature;this.setState({value:o}),this.isListRoot()||this.props.onChange(i,l?{[l]:o}:o)},this.onApply=()=>{const{value:o}=this.state,{endpoint:i,property:l}=this.props.feature;this.props.onChange(i,l?{[l]:o}:o)},this.isListRoot=()=>{const{parentFeatures:o}=this.props;return o!==void 0&&(o.length===1||o.length===2&&![void 0,"composite","list"].includes(o[1].type))};const{deviceState:n,feature:r}=this.props,{property:s}=r,a=s?n[s]??[]:[];this.state={value:a}}render(){const{feature:t,minimal:n,parentFeatures:r,t:s}=this.props,{access:a=b.ACCESS_WRITE,item_type:o}=t;if(a&b.ACCESS_WRITE){if(o=="number")return c.jsx(Pt,{onChange:this.onChange,value:this.state.value,minimal:n});{const i=[c.jsx(Vt,{feature:o,parentFeatures:[...r,t],onChange:this.onChange,value:this.state.value},"1")];return this.isListRoot()&&i.push(c.jsx("div",{children:c.jsx(v,{className:y("btn btn-primary float-end",{"btn-sm":n}),onClick:this.onApply,children:s("common:apply")})},"2")),i}}else return a&b.ACCESS_STATE?c.jsx(A,{...this.props}):c.jsx(T,{...this.props})}}const Jt=B(["list","common"])(q.memo(Gt)),Z=e=>{e=e.replace("#","");const t=parseInt(e,16),n=t>>16&255,r=t>>8&255,s=t&255;return{r:n,g:r,b:s}},Zt=e=>{const{r:t,g:n,b:r}=e;return"#"+M.rgb.hex([t,n,r])};function Ht(e){const{t:n,minimal:r,onChange:s,feature:{endpoint:a,length_min:o,length_max:i},deviceState:l}=e,[u,f]=x.useState(Array(5).fill({x:0,y:0})),h=(g,S)=>{const _=[...u];_[g]=Z(S),f(_)},m=()=>{const g=[...u];g.push({r:255,g:255,b:255}),f(g)},p=g=>{const S=[...u];S.splice(g,1),f(S)};x.useEffect(()=>{const{gradient:g}=l;g&&g.length>0&&f(g.map(Z))},[l]);const[j,k]=x.useState(!1),[E,w]=x.useState(!1);return x.useEffect(()=>{k(u.length<i),w(u.length>o)},[u,o,i]),c.jsxs("div",{className:"d-flex flex-column gap-1",children:[u.map((g,S)=>c.jsxs("div",{className:"d-flex gap-2",children:[c.jsx(se,{onChange:_=>{h(S,_.hex)},value:g,format:"color_rgb"}),E&&c.jsx(v,{className:"btn btn-danger me-2",onClick:()=>p(S),children:"-"})]},S)),j&&c.jsx(v,{className:"btn btn-success me-2",onClick:m,children:"+"}),c.jsx("div",{children:c.jsx(v,{className:y("btn btn-primary float-end",{"btn-sm":r}),onClick:()=>s(a,{gradient:u.map(Zt)}),children:n("common:apply")})}),","]})}const Kt=B(["gradient","common"])(q.memo(Ht)),L=e=>{const{feature:t,device:n,deviceState:r,stepsConfiguration:s,onRead:a,onChange:o,featureWrapperClass:i,minimal:l,parentFeatures:u}=e,f={key:JSON.stringify(t),device:n,deviceState:r,onChange:o,onRead:a,featureWrapperClass:i,minimal:l,parentFeatures:u},h={key:JSON.stringify(t),feature:t,onRead:a,deviceState:r,parentFeatures:u};if(Te(t))return c.jsx(i,{...h,children:c.jsx(et,{feature:t,...f})});if(Oe(t))return c.jsx(i,{...h,children:c.jsx(At,{feature:t,...f,steps:s==null?void 0:s[t.name]})});if(Be(t))return c.jsx(i,{...h,children:c.jsx(Kt,{feature:t,...f})});if(ee(t))return c.jsx(i,{...h,children:c.jsx(Jt,{feature:t,...f})});if(Me(t))return c.jsx(i,{...h,children:c.jsx(Lt,{feature:t,...f})});if(Le(t))return c.jsx(i,{...h,children:c.jsx(St,{feature:t,...f})});if(We(t))return c.jsx(_t,{feature:t,...f});if(Ue(t))return c.jsx(Ut,{feature:t,...f});if(Ie(t))return c.jsx(at,{feature:t,...f});if(ze(t))return c.jsx(Nt,{feature:t,...f});if(te(t))return c.jsx(i,{...h,children:c.jsx(yt,{feature:t,...f})});if(Pe(t))return c.jsx(nt,{feature:t,...f});if(De(t))return c.jsx(zt,{feature:t,...f});if(O(t)){const m=u&&t.property?r[t.property]:r;return c.jsx(i,{...h,children:c.jsx(R,{type:"composite",feature:t,...f,deviceState:m})})}return c.jsx(i,{...h,children:c.jsx("pre",{children:JSON.stringify(t,null,4)})})};class Yt extends x.Component{constructor(){super(...arguments),this.state={},this.onChange=(t,n)=>{const{onChange:r,feature:s}=this.props;this.setState({...this.state,...n}),this.isCompositeRoot()||(O(s)?r(t,s.property?{[s.property]:{...this.state,...n}}:n):r(t,n))},this.isCompositeRoot=()=>{const{parentFeatures:t}=this.props;return O(this.props.feature)&&t!==void 0&&(t.length===1||t.length===2&&![void 0,"composite","list"].includes(t[1].type))},this.onCompositeFeatureApply=()=>{const{deviceState:t,onChange:n,feature:{endpoint:r,property:s}}=this.props,{state:a}=this,o={...t,...a};n(r,s?{[s]:o}:o)},this.onRead=(t,n)=>{const{onRead:r,feature:s}=this.props;O(s)?r&&r(t,s.property?{[s.property]:n}:n):r&&r(t,n)}}render(){const t="MAGIC_NO_ENDPOINT",{t:n,showEndpointLabels:r=!1,feature:s,device:a,deviceState:o,onRead:i,onChange:l,featureWrapperClass:u,minimal:f}=this.props,{features:h=[]}=s,m=this.props.parentFeatures??[],{state:p}=this,j=!f;let k=[];const E={...o,...p};if(j){const w=Ke(h,g=>g.endpoint??t);w[t]&&(k.push(...w[t].map(g=>c.jsx(L,{feature:g,parentFeatures:[...m,s],device:a,deviceState:E,onChange:this.onChange,onRead:this.onRead,featureWrapperClass:u,minimal:f},JSON.stringify(g)))),delete w[t]);for(const g in w){const S=w[g];k.push(c.jsxs("div",{children:[r?`Endpoint: ${g}`:null,c.jsx("div",{className:"ps-4",children:S.map(_=>c.jsx(L,{feature:_,parentFeatures:m,device:a,deviceState:E,onChange:this.onChange,onRead:this.onRead,featureWrapperClass:u,minimal:f},_.name+_.endpoint))})]},g))}}else{const w=h.map(g=>c.jsx(L,{feature:g,parentFeatures:m,device:a,deviceState:E,onChange:this.onChange,onRead:this.onRead,featureWrapperClass:u,minimal:f},JSON.stringify(g)));k=k.concat(w)}return this.isCompositeRoot()&&k.push(c.jsx("div",{children:c.jsx(v,{className:y("btn btn-primary float-end",{"btn-sm":f}),onClick:this.onCompositeFeatureApply,children:n("common:apply")})},s.name+"apply")),k}}function Xt(e,t){return["deviceState","device","feature"].every(r=>Ae(e[r],t[r]))}const R=B(["composite","common"])(q.memo(Yt,Xt));function Qt(e,t,n){var r=-1,s=e.length;t<0&&(t=-t>s?0:s+t),n=n>s?s:n,n<0&&(n+=s),s=t>n?0:n-t>>>0,t>>>=0;for(var a=Array(s);++r<s;)a[r]=e[r+t];return a}var en=Qt,tn=en;function nn(e,t,n){var r=e.length;return n=n===void 0?r:n,!t&&n>=r?e:tn(e,t,n)}var rn=nn,sn="\\ud800-\\udfff",an="\\u0300-\\u036f",on="\\ufe20-\\ufe2f",cn="\\u20d0-\\u20ff",ln=an+on+cn,un="\\ufe0e\\ufe0f",fn="\\u200d",dn=RegExp("["+fn+sn+ln+un+"]");function hn(e){return dn.test(e)}var ce=hn;function mn(e){return e.split("")}var pn=mn,ie="\\ud800-\\udfff",gn="\\u0300-\\u036f",xn="\\ufe20-\\ufe2f",bn="\\u20d0-\\u20ff",vn=gn+xn+bn,yn="\\ufe0e\\ufe0f",Cn="["+ie+"]",z="["+vn+"]",D="\\ud83c[\\udffb-\\udfff]",jn="(?:"+z+"|"+D+")",le="[^"+ie+"]",ue="(?:\\ud83c[\\udde6-\\uddff]){2}",fe="[\\ud800-\\udbff][\\udc00-\\udfff]",kn="\\u200d",de=jn+"?",he="["+yn+"]?",Sn="(?:"+kn+"(?:"+[le,ue,fe].join("|")+")"+he+de+")*",wn=he+de+Sn,En="(?:"+[le+z+"?",z,ue,fe,Cn].join("|")+")",_n=RegExp(D+"(?="+D+")|"+En+wn,"g");function Rn(e){return e.match(_n)||[]}var Nn=Rn,$n=pn,Fn=ce,An=Nn;function Tn(e){return Fn(e)?An(e):$n(e)}var On=Tn,Mn=rn,Ln=ce,Wn=On,Un=U;function In(e){return function(t){t=Un(t);var n=Ln(t)?Wn(t):void 0,r=n?n[0]:t.charAt(0),s=n?Mn(n,1).join(""):t.slice(1);return r[e]()+s}}var zn=In,Dn=zn,Pn=Dn("toUpperCase"),me=Pn,Bn=U,qn=me;function Vn(e){return qn(Bn(e).toLowerCase())}var Gn=Vn;function Jn(e,t,n,r){var s=-1,a=e==null?0:e.length;for(r&&a&&(n=e[++s]);++s<a;)n=t(n,e[s],s,e);return n}var Zn=Jn;function Hn(e){return function(t){return e==null?void 0:e[t]}}var Kn=Hn,Yn=Kn,Xn={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"},Qn=Yn(Xn),er=Qn,tr=er,nr=U,rr=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,sr="\\u0300-\\u036f",ar="\\ufe20-\\ufe2f",or="\\u20d0-\\u20ff",cr=sr+ar+or,ir="["+cr+"]",lr=RegExp(ir,"g");function ur(e){return e=nr(e),e&&e.replace(rr,tr).replace(lr,"")}var fr=ur,dr=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;function hr(e){return e.match(dr)||[]}var mr=hr,pr=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;function gr(e){return pr.test(e)}var xr=gr,pe="\\ud800-\\udfff",br="\\u0300-\\u036f",vr="\\ufe20-\\ufe2f",yr="\\u20d0-\\u20ff",Cr=br+vr+yr,ge="\\u2700-\\u27bf",xe="a-z\\xdf-\\xf6\\xf8-\\xff",jr="\\xac\\xb1\\xd7\\xf7",kr="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",Sr="\\u2000-\\u206f",wr=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",be="A-Z\\xc0-\\xd6\\xd8-\\xde",Er="\\ufe0e\\ufe0f",ve=jr+kr+Sr+wr,ye="['’]",H="["+ve+"]",_r="["+Cr+"]",Ce="\\d+",Rr="["+ge+"]",je="["+xe+"]",ke="[^"+pe+ve+Ce+ge+xe+be+"]",Nr="\\ud83c[\\udffb-\\udfff]",$r="(?:"+_r+"|"+Nr+")",Fr="[^"+pe+"]",Se="(?:\\ud83c[\\udde6-\\uddff]){2}",we="[\\ud800-\\udbff][\\udc00-\\udfff]",$="["+be+"]",Ar="\\u200d",K="(?:"+je+"|"+ke+")",Tr="(?:"+$+"|"+ke+")",Y="(?:"+ye+"(?:d|ll|m|re|s|t|ve))?",X="(?:"+ye+"(?:D|LL|M|RE|S|T|VE))?",Ee=$r+"?",_e="["+Er+"]?",Or="(?:"+Ar+"(?:"+[Fr,Se,we].join("|")+")"+_e+Ee+")*",Mr="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Lr="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",Wr=_e+Ee+Or,Ur="(?:"+[Rr,Se,we].join("|")+")"+Wr,Ir=RegExp([$+"?"+je+"+"+Y+"(?="+[H,$,"$"].join("|")+")",Tr+"+"+X+"(?="+[H,$+K,"$"].join("|")+")",$+"?"+K+"+"+Y,$+"+"+X,Lr,Mr,Ce,Ur].join("|"),"g");function zr(e){return e.match(Ir)||[]}var Dr=zr,Pr=mr,Br=xr,qr=U,Vr=Dr;function Gr(e,t,n){return e=qr(e),t=n?void 0:t,t===void 0?Br(e)?Vr(e):Pr(e):e.match(t)||[]}var Jr=Gr,Zr=Zn,Hr=fr,Kr=Jr,Yr="['’]",Xr=RegExp(Yr,"g");function Qr(e){return function(t){return Zr(Kr(Hr(t).replace(Xr,"")),e,"")}}var Re=Qr,es=Gn,ts=Re,ns=ts(function(e,t,n){return t=t.toLowerCase(),e+(n?es(t):t)}),rs=ns;const ss=P(rs);var as=Re,os=me,cs=as(function(e,t,n){return e+(n?" ":"")+os(t)}),is=cs;const ls=P(is),us=e=>{let t="fa-thermometer-empty";return e>=30?t="fa-thermometer-full":e>=25?t="fa-thermometer-three-quarters":e>=20?t="fa-thermometer-half":e>=15&&(t="fa-thermometer-quarter"),t},fs={humidity:["text-info","fa-tint"],illuminance:["fa-sun"],pressure:["fa-cloud-download-alt"],co2:["fa-atom","text-warning"],voltage:["fa-bolt","text-success"],state:["fa-star-half-alt"],brightness:["fa-sun"],occupancy:["fa-walking"],presence:["fa-person-rays"],current:["fa-copyright","text-warning"],power:["fa-power-off","text-success"],energy:["fa-plug","text-info"],frequency:["fa-wave-square"],tamper:["fa-exclamation-circle","text-danger"],smoke:["fa-smoking","text-danger"],radiation_dose_per_hour:["fa-radiation","text-danger"],radioactive_events_per_minute:["fa-radiation-alt","text-warning"],power_factor:["fa-industry","text-danger"],mode:["fa-user-cog","text-warning"],sound:["fa-volume-up","text-info"],position:["fa-percent","text-info"],alarm:["fa-exclamation-triangle","text-danger"],color_xy:["fa-palette"],color_hs:["fa-palette"],color_temp:["fa-sliders-h"],illuminance_lux:["fa-sun"],soil_moisture:["fa-fill-drip"],water_leak:["fa-water"],week:["fa-calendar-week"],workdays_schedule:["fa-calendar-day","text-info"],holidays_schedule:["fa-calendar-day","text-danger"],away_mode:["fa-plane","text-info"],vibration:["fa-water fa-rotate-270"],power_outage_count:["fa-plug-circle-xmark"],action:["fa-a"],angle_x:["fa-x"],angle_y:["fa-y"],angle_z:["fa-z"],side:["fa-cube"],humidity_alarm:["fa-triangle-exclamation"],temperature_alarm:["fa-triangle-exclamation"]},ds=(e,t)=>{let n=[];switch(e){case"device_temperature":case"temperature":case"local_temperature":n.push(y("text-danger",us(t)));break;case"contact":n.push(y({"fa-door-closed text-muted":t,"fa-door-open text-primary":!t}));break;case"occupancy":n.push(y({"text-warning":t}));break;case"presence":n.push(y({"text-warning":t}));break;case"tamper":n.push(y({"fa-beat-fade":t}));break;case"water_leak":n.push(y({"fa-beat-fade text-primary":t}));break;case"vibration":n.push(y({"fa-shake fa-rotate-270 text-primary":t}));break}return n=[...n,...fs[e]??[]],n.length||n.push("invisible"),y(n)},gs=e=>{const{children:t,feature:n,deviceState:r={}}=e,s=ds(n.name,r[n.property]),{t:a}=Q(["featureNames"]),o=n.name==="state"?n.property:n.name,i=ls(ss(o));return c.jsxs("div",{className:"d-flex align-items-center",children:[s&&c.jsx("div",{className:"me-1",children:c.jsx("i",{className:`fa fa-fw ${s}`})}),c.jsxs("div",{className:"flex-shrink-1 flex-grow-1",children:[a(o,{defaultValue:i}),n.endpoint?` (${n.endpoint})`:null]}),c.jsx("div",{className:"flex-shrink-1",children:t})]})};export{gs as D,L as F,R as T,Bt as a,Pe as b,b as c,Ke as g,We as i};
@@ -1 +0,0 @@
1
- import{r as g,j as s,R as S,u as w,b as P}from"./index-fb4a4614.js";import{A as E,b as v}from"./index-361b7a42.js";const _="_img_1qsqd_1",j={img:_};function p(r){"@babel/helpers - typeof";return p=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(e){return typeof e}:function(e){return e&&typeof Symbol=="function"&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},p(r)}function N(r,e){if(p(r)!="object"||!r)return r;var t=r[Symbol.toPrimitive];if(t!==void 0){var n=t.call(r,e||"default");if(p(n)!="object")return n;throw new TypeError("@@toPrimitive must return a primitive value.")}return(e==="string"?String:Number)(r)}function A(r){var e=N(r,"string");return p(e)=="symbol"?e:String(e)}function L(r,e,t){return e=A(e),e in r?Object.defineProperty(r,e,{value:t,enumerable:!0,configurable:!0,writable:!0}):r[e]=t,r}var D=function(r){var e=r.decode,t=e===void 0?!0:e,n=r.crossOrigin,o=n===void 0?"":n;return function(u){return new Promise(function(l,f){var a=new Image;o&&(a.crossOrigin=o),a.onload=function(){t&&a.decode?a.decode().then(l).catch(f):l()},a.onerror=f,a.src=u})}};function y(r,e){var t=Object.keys(r);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(r);e&&(n=n.filter(function(o){return Object.getOwnPropertyDescriptor(r,o).enumerable})),t.push.apply(t,n)}return t}function d(r){for(var e=1;e<arguments.length;e++){var t=arguments[e]!=null?arguments[e]:{};e%2?y(Object(t),!0).forEach(function(n){L(r,n,t[n])}):Object.getOwnPropertyDescriptors?Object.defineProperties(r,Object.getOwnPropertyDescriptors(t)):y(Object(t)).forEach(function(n){Object.defineProperty(r,n,Object.getOwnPropertyDescriptor(t,n))})}return r}var I=function(e){return e.filter(function(t){return t})},R=function(e){return Array.isArray(e)?e:[e]},c={},B=function(e,t){var n=!1;return new Promise(function(o,u){var l=function(a){return t(a).then(function(){n=!0,o(a)})};e.reduce(function(f,a){return f.catch(function(){if(!n)return l(a)})},l(e.shift())).catch(u)})};function T(r){var e=r.srcList,t=r.imgPromise,n=t===void 0?D({decode:!0}):t,o=r.useSuspense,u=o===void 0?!0:o,l=g.useState(!1),f=l[1],a=I(R(e)),i=a.join("");if(c[i]||(c[i]={promise:B(a,n),cache:"pending",error:null}),c[i].cache==="resolved")return{src:c[i].src,isLoading:!1,error:null};if(c[i].cache==="rejected"){if(u)throw c[i].error;return{isLoading:!1,error:c[i].error,src:void 0}}if(c[i].promise.then(function(m){c[i]=d(d({},c[i]),{},{cache:"resolved",src:m}),u||f(i)}).catch(function(m){c[i]=d(d({},c[i]),{},{cache:"rejected",error:m}),u||f(i)}),u)throw c[i].promise;return{isLoading:!0,src:void 0,error:null}}function h(r){const{device:e,type:t,...n}=r,{src:o}=T({srcList:E.map(u=>u(e)).filter(Boolean)});return t==="svg"?s.jsx("image",{crossOrigin:"anonymous",...n,href:o}):s.jsx("img",{alt:"",crossOrigin:"anonymous",src:o,className:j.img})}class b extends S.Component{constructor(e){super(e),this.state={hasError:!1}}componentDidCatch(){this.setState({hasError:!0})}render(){return this.state.hasError?s.jsx(s.Fragment,{children:"ERROR"}):this.props.children}}function $(r){const{t:e}=w("zigbee"),{device:t={},disabled:n,deviceStatus:o,type:u="img",className:l,...f}=r;if(u==="svg")return s.jsx(g.Suspense,{fallback:s.jsx("image",{crossOrigin:"anonymous",...f,href:v}),children:s.jsx(b,{children:s.jsx(h,{type:"svg",device:t,...f})})});const i=((o==null?void 0:o.update)??{}).state==="updating"?s.jsx("i",{title:e("updating_firmware"),className:"fa fa-sync fa-spin position-absolute bottom-0 right-0"}):null,m=t.interviewing?s.jsx("i",{title:e("interviewing"),className:"fa fa-spinner fa-spin position-absolute bottom-0 right-0"}):null,O=!t.interviewing&&!t.interview_completed,x=n?s.jsx("i",{title:e("device_disabled"),className:"fa fa-ban position-absolute bottom-0 right-0"}):null;return s.jsxs("div",{className:P(l,"position-relative"),...f,children:[s.jsx(g.Suspense,{fallback:s.jsx("img",{alt:"",src:v,className:j.img}),children:s.jsx(b,{children:s.jsx(h,{device:t})})}),m,i,x,O&&s.jsx("i",{title:e("interview_failed"),className:"fa fa-exclamation-triangle position-absolute top-0 right-0 text-danger"})]})}export{$ as D};
@@ -1 +0,0 @@
1
- ._img_1qsqd_1{border-radius:50%;position:relative;transition:transform .5s ease}._img_1qsqd_1:hover{transform:scale(4) translate(5px);z-index:10;border-radius:0}
@@ -1 +0,0 @@
1
- import{r as D,m as S,u as j,j as e,B as b,n as y,c as G,a as R}from"./index-fb4a4614.js";import{D as E,E as F,o as w,R as C,A as P}from"./RecallRemove-a3a43a56.js";import{D as A}from"./DashboardDevice-c60201bb.js";import{D as k}from"./DashboardFeatureWrapper-ef543cb2.js";import"./index-662e592d.js";import"./powerSourceTypeToTranslationKey-452dac81.js";import"./DeviceImage-a3fb91b8.js";import"./index-361b7a42.js";import"./isEqual-ddfc316d.js";function I(t){const[c,r]=D.useState(""),[i,m]=D.useState(""),{addDeviceToGroup:v,group:d,devices:n}=t,l=n[i],o=S(l),{t:s}=j(["groups","zigbee"]),x=()=>{v(c?`${i}/${c}`:i,d.friendly_name)},g=a=>{const p=S(a);m(a.ieee_address),r(p[0])},u=a=>{r(a)};return e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"mb-3",children:[e.jsx(E,{label:s("zigbee:device"),value:i,devices:n,onChange:g}),e.jsx(F,{label:s("zigbee:endpoint"),values:o,value:c,onChange:u})]}),e.jsx("div",{className:"d-flex",children:e.jsx("div",{className:"ms-auto",children:e.jsx(b,{type:"button",onClick:x,className:"btn btn-primary",children:s("add_to_group")})})})]})}function T(t){const{t:c}=j("devicePage"),{removeDeviceFromGroup:r,groupAddress:i,devices:m,deviceStates:v,bridgeInfo:d}=t,{endpoint:n,ieee_address:l}=i,o=m[l]??{ieee_address:l,friendly_name:c("unknown_device")},s=v[o.friendly_name]??{},{setDeviceState:x,getDeviceState:g}=t;let u=[];return o.definition&&(u=(o.definition.exposes??[]).map(a=>w(a,s)).filter(a=>a)),e.jsx(A,{feature:{features:u},device:o,endpoint:n,deviceState:s,onChange:(a,p)=>x(o.friendly_name,p),onRead:(a,p)=>g(o.friendly_name,p),featureWrapperClass:k,lastSeenType:d.config.advanced.last_seen,controls:e.jsx(b,{prompt:!0,item:o.friendly_name,onClick:r,className:"btn btn-danger btn-sm float-right",children:e.jsx("i",{className:"fa fa-trash"})})})}function $(t){const{group:c,removeDeviceFromGroup:r,devices:i,deviceStates:m,bridgeInfo:v}=t,{setStateValue:d,setDeviceState:n,getDeviceState:l}=t,o=s=>{r(c.friendly_name,s)};return e.jsx("div",{className:"row",children:c.members.map(s=>e.jsx(T,{removeDeviceFromGroup:o,devices:i,groupAddress:s,deviceStates:m,bridgeInfo:v,setStateValue:d,setDeviceState:n,getDeviceState:l},`${s.ieee_address}-${s.endpoint}`))})}function z(t){const{devices:c,deviceStates:r,bridgeInfo:i,groups:m}=t,{match:v}=t,d=parseInt(v.params.groupId,10),n=m.find(f=>f.id===d)||{id:d,friendly_name:"Unknown group",members:[],scenes:[]},{setStateValue:l,setDeviceState:o,getDeviceState:s}=t,{addDeviceToGroup:x,removeDeviceFromGroup:g}=t,{sceneStore:u,sceneRemoveAll:a,sceneRecall:p,sceneRemove:N}=t,{t:_}=j(["groups"]);return e.jsxs("div",{children:[e.jsxs("h5",{children:[_("group_name"),": ",n.friendly_name," (#",n.id,")"]}),e.jsxs("div",{className:"row",children:[e.jsx("div",{className:"col-12 col-sm-4 col-xxl-4 d-flex",children:e.jsx("div",{className:"card w-100",children:e.jsx("div",{className:"card-body",children:e.jsx("div",{className:"form-group",children:e.jsx(I,{addDeviceToGroup:x,devices:c,group:n})})})})}),e.jsx("div",{className:"col-12 col-sm-4 col-xxl-4 d-flex",children:e.jsx("div",{className:"card w-100",children:e.jsx("div",{className:"card-body",children:e.jsx("div",{className:"form-group",children:e.jsx(C,{target:n,sceneStore:u,sceneRecall:p,sceneRemove:N,sceneRemoveAll:a,deviceState:{}})})})})}),e.jsx("div",{className:"col-12 col-sm-4 col-xxl-4 d-flex",children:e.jsx("div",{className:"card w-100",children:e.jsx("div",{className:"card-body",children:e.jsx("div",{className:"form-group",children:e.jsx(P,{sceneStore:u,target:n,deviceState:{},setDeviceState:(f,h)=>Promise.resolve()})})})})})]}),e.jsx($,{group:n,devices:c,deviceStates:r,bridgeInfo:i,removeDeviceFromGroup:(f,h)=>{g(h,f)},setStateValue:l,setDeviceState:o,getDeviceState:s})]})}const V=y(z),W=["groups","devices","deviceStates","bridgeInfo"],X=G(W,R)(V);export{X as ConnectedGroupPage};
@@ -1 +0,0 @@
1
- import{u as f,j as e,K as y,r as b,B as j}from"./index-fb4a4614.js";import{i as S,g as _,T as C,D as F}from"./DashboardFeatureWrapper-ef543cb2.js";function R(s){const{value:n,values:a,disabled:m,onChange:t,label:l,...c}=s,{t:p}=f("common"),o=r=>{t(r.target.value)},i=a.length==1,u=a.map(r=>e.jsx("option",{value:r,children:r},r));return u.unshift(e.jsx("option",{hidden:!0,children:p("select_endpoint")},"hided")),e.jsxs("div",{className:"form-group",children:[l&&e.jsx("label",{className:"form-label",children:l}),e.jsx("select",{disabled:n&&i||m,value:n,className:"form-control",title:i?p("the_only_endpoint"):"",onChange:o,...c,children:u})]})}function I(s){const{t:n}=f("common"),{devices:a,value:m,label:t,onChange:l,groups:c=[],...p}=s,o=r=>{const{value:d}=r.target;if(a[d])l(a[d],"device");else{const x=c.find(h=>parseInt(d,10)===h.id);l(x,"group")}};let i=[e.jsx("option",{hidden:!0,children:n("select_device")},"hidden")];const u=[];if(Object.values(a).sort((r,d)=>r.friendly_name.localeCompare(d.friendly_name)).forEach(r=>{var d;u.push(e.jsx("option",{title:(d=r.definition)==null?void 0:d.description,value:r.ieee_address,children:y(r)},r.ieee_address))}),c&&c.length){const r=c.map(d=>e.jsx("option",{value:d.id,children:d.friendly_name},d.friendly_name));i.push(e.jsx("optgroup",{label:n("groups"),children:r},"Groups")),i.push(e.jsx("optgroup",{label:n("devices"),children:u},"Devices"))}else i=i.concat(u);return e.jsxs("div",{className:"form-group",children:[t&&e.jsx("label",{className:"form-label",children:t}),e.jsx("select",{value:m,onChange:o,className:"form-control",...p,children:i})]})}const k=["state","color_temp","color","transition","brightness"];function v(s,n={}){let{property:a,name:m,features:t}=s;if(S(s)&&(t=t.map(l=>v(l,a?n[a]:n)).filter(l=>l),t=Object.values(_(t,"property")).map(l=>l[0])),k.includes(m)||Array.isArray(t)&&t.length>0)return{...s,features:t}}function g(s){if(s.endpoints){const n=[];return Object.entries(s.endpoints).forEach(([a,m])=>{var t;(t=m.scenes)==null||t.forEach(l=>n.push({...l,endpoint:a}))}),n}else if(s.scenes)return s.scenes;return[]}const D=(s,n=[])=>s>=0&&s<=255&&!n.find(a=>a.id==s);function P(s){var x;const{target:n,deviceState:a,sceneStore:m,setDeviceState:t}=s,l=g(n),{t:c}=f("scene"),[p,o]=b.useState(0),[i,u]=b.useState(""),r=`Scene ${p}`;let d=[];return n.definition&&(d=(((x=n.definition)==null?void 0:x.exposes)??[]).map(h=>v(h,a)).filter(h=>h)),e.jsxs(e.Fragment,{children:[e.jsxs("div",{className:"mb-3",children:[e.jsx("label",{htmlFor:"add-scene",className:"form-label",children:c("scene_id")}),e.jsx("input",{id:"add-scene",className:"form-control",min:0,max:255,value:p,type:"number",onChange:h=>o(h.target.valueAsNumber)}),e.jsx("label",{htmlFor:"add-scene-name",className:"form-label",children:c("scene_name")}),e.jsx("input",{id:"add-scene-name",className:"form-control",value:i,type:"string",onChange:h=>u(h.target.value),placeholder:r}),e.jsx(C,{feature:{features:d},className:"row",type:"composite",device:n,deviceState:a,onChange:(h,N)=>{t(n.friendly_name,N)},featureWrapperClass:F,minimal:!0})]}),e.jsx("div",{className:"d-flex",children:e.jsx("button",{disabled:!D(p,l),type:"submit",onClick:()=>m(n.friendly_name,{id:p,name:i||r}),className:"btn btn-primary ms-auto",children:c("store")})})]})}function E(s){const{t:n}=f("scene"),{onSceneSelected:a,scenes:m=[],value:t}=s,l=o=>{const[i,u]=o.target.value.split("-");a({id:parseInt(i,10),endpoint:u})},c=e.jsxs(e.Fragment,{children:[e.jsx("label",{htmlFor:"rr-scene",className:"form-label",children:n("scene_name")}),e.jsxs("select",{onChange:l,id:"rr-scene",className:"form-select",children:[e.jsx("option",{hidden:!0,children:n("select_scene")},"hidden"),m.map(o=>e.jsx("option",{value:`${o.id}-${o.endpoint}`,children:o.name},`${o.id}-${o.endpoint}`))]})]}),p=e.jsxs(e.Fragment,{children:[e.jsx("label",{htmlFor:"rr-scene",className:"form-label",children:n("scene_id")}),e.jsx("input",{min:0,value:t.id,type:"number",className:"form-control",id:"rr-scene",onChange:o=>a({id:o.target.valueAsNumber,endpoint:void 0})})]});return e.jsx(e.Fragment,{children:m.length>0?c:p})}function $(s){const{sceneRecall:n,sceneRemove:a,sceneRemoveAll:m,target:t}=s,{t:l}=f("scene"),[c,p]=b.useState({id:0,endpoint:void 0}),o=c.id===void 0,i=g(t),{friendly_name:u}=t;return e.jsxs(e.Fragment,{children:[e.jsx("div",{className:"mb-3",children:e.jsx(E,{onSceneSelected:p,value:c,scenes:i})}),e.jsxs("div",{className:"d-flex",children:[e.jsxs("div",{className:"btn-group ms-auto pe-1",children:[e.jsx("button",{disabled:o,onClick:()=>n(u,c.id,c.endpoint),type:"submit",className:"btn btn-success",children:l("recall")}),e.jsx(j,{disabled:o,prompt:!0,onClick:()=>a(u,c.id,c.endpoint),type:"submit",className:"btn btn-danger",children:l("remove")})]}),e.jsx(j,{prompt:!0,onClick:()=>m(u,""),type:"submit",className:"btn btn-danger",children:l("remove_all")})]})]})}export{P as A,I as D,R as E,$ as R,v as o};
@@ -1 +0,0 @@
1
- import{_ as x}from"./_getAllKeysIn-d7fdca48.js";import{an as g,ad as u,W as l,as as m}from"./index-fb4a4614.js";var I=x,p=g,K=u,e=l,O=m;function P(r,a,o,d){if(!e(r))return r;a=p(a,r);for(var i=-1,f=a.length,v=f-1,n=r;n!=null&&++i<f;){var s=O(a[i]),t=o;if(s==="__proto__"||s==="constructor"||s==="prototype")return r;if(i!=v){var _=n[s];t=d?d(_,s,n):void 0,t===void 0&&(t=e(_)?_:K(a[i+1])?[]:{})}I(n,s,t),n=n[s]}return r}var h=P;export{h as _};
@@ -1 +0,0 @@
1
- import{P as t,ac as n,W as o,X as y,at as i,a6 as v,au as u,a4 as l,T as p,av as _,aw as g}from"./index-fb4a4614.js";var P=t,b=n,f=Object.prototype,I=f.hasOwnProperty;function O(r,a,s){var e=r[a];(!(I.call(r,a)&&b(e,s))||s===void 0&&!(a in r))&&P(r,a,s)}var R=O;function A(r){var a=[];if(r!=null)for(var s in Object(r))a.push(s);return a}var K=A,c=o,h=y,m=K,w=Object.prototype,S=w.hasOwnProperty;function $(r){if(!c(r))return m(r);var a=h(r),s=[];for(var e in r)e=="constructor"&&(a||!S.call(r,e))||s.push(e);return s}var V=$,L=i,k=V,G=v;function d(r){return G(r)?L(r,!0):k(r)}var q=d,x=u,T=x(Object.getPrototypeOf,Object),W=T,X=l,z=W,B=p,C=_,D=Object.getOwnPropertySymbols,E=D?function(r){for(var a=[];r;)X(a,B(r)),r=z(r);return a}:C,F=E,H=g,J=F,M=q;function N(r){return H(r,M,J)}var U=N;export{R as _,F as a,W as b,U as c,q as k};