zigbee2mqtt-frontend 0.7.4 → 0.7.5

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 (95) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/README.md +5 -2
  3. package/dist/assets/{Availability-83a15f1c.js → Availability-ea995265.js} +1 -1
  4. package/dist/assets/Availability-ea995265.js.br +0 -0
  5. package/dist/assets/CodeEditor-b2b42cbe.js +28 -0
  6. package/dist/assets/CodeEditor-b2b42cbe.js.br +0 -0
  7. package/dist/assets/ConnectedDevicePage-4eb4fbd7.js +1 -0
  8. package/dist/assets/ConnectedDevicePage-4eb4fbd7.js.br +0 -0
  9. package/dist/assets/ConnectedMap-8e9df41d.js +1 -0
  10. package/dist/assets/ConnectedMap-8e9df41d.js.br +0 -0
  11. package/dist/assets/Dashboard-da847986.js +1 -0
  12. package/dist/assets/Dashboard-da847986.js.br +0 -0
  13. package/dist/assets/{DashboardDevice-e545a4b6.js → DashboardDevice-729bd8ca.js} +1 -1
  14. package/dist/assets/DashboardDevice-729bd8ca.js.br +0 -0
  15. package/dist/assets/DashboardFeatureWrapper-9ec37019.js +1 -0
  16. package/dist/assets/DashboardFeatureWrapper-9ec37019.js.br +0 -0
  17. package/dist/assets/DeviceImage-66f70063.js +1 -0
  18. package/dist/assets/DeviceImage-66f70063.js.br +0 -0
  19. package/dist/assets/{GroupPage-188b4717.js → GroupPage-c80cd21b.js} +1 -1
  20. package/dist/assets/GroupPage-c80cd21b.js.br +0 -0
  21. package/dist/assets/{ReactTableCom-eddba77e.js → ReactTableCom-1c36e1db.js} +1 -1
  22. package/dist/assets/ReactTableCom-1c36e1db.js.br +0 -0
  23. package/dist/assets/{RecallRemove-720e6aa0.js → RecallRemove-ea02e389.js} +1 -1
  24. package/dist/assets/RecallRemove-ea02e389.js.br +0 -0
  25. package/dist/assets/_baseSet-f94f15e8.js +1 -0
  26. package/dist/assets/_getAllKeysIn-a7208d0f.js +1 -0
  27. package/dist/assets/{bootstrap-5.esm-672cb437.js → bootstrap-5.esm-ff1b56af.js} +1 -1
  28. package/dist/assets/bootstrap-5.esm-ff1b56af.js.br +0 -0
  29. package/dist/assets/extends-98964cd2.js +1 -0
  30. package/dist/assets/{index-50bf6a26.js → index-1b114912.js} +1 -1
  31. package/dist/assets/{index-74e84a13.js → index-6f55efcd.js} +66 -70
  32. package/dist/assets/index-6f55efcd.js.br +0 -0
  33. package/dist/assets/index-72a1e3cc.js +1 -0
  34. package/dist/assets/index-72a1e3cc.js.br +0 -0
  35. package/dist/assets/{index-10a7b6c0.js → index-a73334eb.js} +1 -1
  36. package/dist/assets/index-a73334eb.js.br +0 -0
  37. package/dist/assets/{index-66c36aa3.js → index-afca9ace.js} +1 -1
  38. package/dist/assets/index-afca9ace.js.br +0 -0
  39. package/dist/assets/{index-538efde1.js → index-b2de2657.js} +1 -1
  40. package/dist/assets/index-b2de2657.js.br +0 -0
  41. package/dist/assets/{index-92365285.js → index-caf43355.js} +2 -2
  42. package/dist/assets/index-caf43355.js.br +0 -0
  43. package/dist/assets/{index-3a8e477d.js → index-e9af120b.js} +1 -1
  44. package/dist/assets/index-e9af120b.js.br +0 -0
  45. package/dist/assets/{index-a7d7205c.js → index-ed7c8a41.js} +1 -1
  46. package/dist/assets/index-ed7c8a41.js.br +0 -0
  47. package/dist/assets/{index-9b935b93.js → index-f121818a.js} +1 -1
  48. package/dist/assets/index-f121818a.js.br +0 -0
  49. package/dist/assets/{intersection-d034f8dc.js → intersection-62601d15.js} +1 -1
  50. package/dist/assets/intersection-62601d15.js.br +0 -0
  51. package/dist/assets/{isEqual-0d569b85.js → isEqual-0689f192.js} +1 -1
  52. package/dist/assets/jszip.min-3e1aa67f.js +12 -0
  53. package/dist/assets/jszip.min-3e1aa67f.js.br +0 -0
  54. package/dist/assets/{persist-31c6944f.js → persist-86b6ee4d.js} +1 -1
  55. package/dist/assets/persist-86b6ee4d.js.br +0 -0
  56. package/dist/assets/{rjsf-translation-fields-e31e8ac9.js → rjsf-translation-fields-6c5e3fa7.js} +1 -1
  57. package/dist/assets/{spinner-7012eee3.js → spinner-6dd6f61f.js} +1 -1
  58. package/dist/assets/{vendor-links-98886cc7.js → vendor-links-5e39df0f.js} +1 -1
  59. package/dist/assets/vendor-links-5e39df0f.js.br +0 -0
  60. package/dist/index.html +1 -1
  61. package/dist/index.html.br +0 -0
  62. package/package.json +2 -2
  63. package/dist/assets/Availability-83a15f1c.js.br +0 -0
  64. package/dist/assets/CodeEditor-b52a9395.js +0 -25
  65. package/dist/assets/CodeEditor-b52a9395.js.br +0 -0
  66. package/dist/assets/ConnectedDevicePage-792280da.js +0 -1
  67. package/dist/assets/ConnectedDevicePage-792280da.js.br +0 -0
  68. package/dist/assets/ConnectedMap-fc5a7764.js +0 -1
  69. package/dist/assets/ConnectedMap-fc5a7764.js.br +0 -0
  70. package/dist/assets/Dashboard-ba2b8e3b.js +0 -1
  71. package/dist/assets/Dashboard-ba2b8e3b.js.br +0 -0
  72. package/dist/assets/DashboardDevice-e545a4b6.js.br +0 -0
  73. package/dist/assets/DashboardFeatureWrapper-30f9acc7.js +0 -1
  74. package/dist/assets/DashboardFeatureWrapper-30f9acc7.js.br +0 -0
  75. package/dist/assets/DeviceImage-3b9ace8e.js +0 -1
  76. package/dist/assets/DeviceImage-3b9ace8e.js.br +0 -0
  77. package/dist/assets/GroupPage-188b4717.js.br +0 -0
  78. package/dist/assets/ReactTableCom-eddba77e.js.br +0 -0
  79. package/dist/assets/RecallRemove-720e6aa0.js.br +0 -0
  80. package/dist/assets/_baseSet-09a572ba.js +0 -1
  81. package/dist/assets/_getAllKeysIn-6dcbbf30.js +0 -1
  82. package/dist/assets/bootstrap-5.esm-672cb437.js.br +0 -0
  83. package/dist/assets/index-10a7b6c0.js.br +0 -0
  84. package/dist/assets/index-3a8e477d.js.br +0 -0
  85. package/dist/assets/index-4b06423c.js +0 -1
  86. package/dist/assets/index-4b06423c.js.br +0 -0
  87. package/dist/assets/index-538efde1.js.br +0 -0
  88. package/dist/assets/index-66c36aa3.js.br +0 -0
  89. package/dist/assets/index-74e84a13.js.br +0 -0
  90. package/dist/assets/index-92365285.js.br +0 -0
  91. package/dist/assets/index-9b935b93.js.br +0 -0
  92. package/dist/assets/index-a7d7205c.js.br +0 -0
  93. package/dist/assets/intersection-d034f8dc.js.br +0 -0
  94. package/dist/assets/persist-31c6944f.js.br +0 -0
  95. package/dist/assets/vendor-links-98886cc7.js.br +0 -0
package/CHANGELOG.md CHANGED
@@ -1,3 +1,26 @@
1
+ ## [0.7.5](https://github.com/nurikk/zigbee2mqtt-frontend/compare/0.7.4...0.7.5) (2024-11-04)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * **en:** update en.json ([#2087](https://github.com/nurikk/zigbee2mqtt-frontend/issues/2087)) ([b69bbaf](https://github.com/nurikk/zigbee2mqtt-frontend/commit/b69bbaf7bdaa1fbb219b47185294843ce9ef1178))
7
+ * **errorReporting:** fix initial state download button ([2440a1e](https://github.com/nurikk/zigbee2mqtt-frontend/commit/2440a1ebe081e31d777e2ab428fad40abb18af19))
8
+ * **groups:** do not indent groups with one element inside ([#1958](https://github.com/nurikk/zigbee2mqtt-frontend/issues/1958)) ([999c42e](https://github.com/nurikk/zigbee2mqtt-frontend/commit/999c42e241ff2e497b57f370968caa3201f140da))
9
+ * match 2.0.0 permit join API ([#2158](https://github.com/nurikk/zigbee2mqtt-frontend/issues/2158)) ([6e31bc2](https://github.com/nurikk/zigbee2mqtt-frontend/commit/6e31bc2eaadb3b0ad67c88dfd0e0933c57fb947e))
10
+ * **vendor:** update vendor-links.tsx ([#2169](https://github.com/nurikk/zigbee2mqtt-frontend/issues/2169)) ([113e1ef](https://github.com/nurikk/zigbee2mqtt-frontend/commit/113e1ef65c2a13d9088fb1a0cdb1f160884d1c82))
11
+
12
+
13
+ ### Features
14
+
15
+ * **ui:** display exact timestamp in the last seen device list field ([#2153](https://github.com/nurikk/zigbee2mqtt-frontend/issues/2153)) ([772428c](https://github.com/nurikk/zigbee2mqtt-frontend/commit/772428cd035cbd021dc553e06e2c8ac6743d0edb))
16
+
17
+
18
+ ### Reverts
19
+
20
+ * Revert "fix: match 2.0.0 permit join API (#2158)" (#2159) ([0a1c912](https://github.com/nurikk/zigbee2mqtt-frontend/commit/0a1c912b1ce66ef075c4829a218db20f4a06a41d)), closes [#2158](https://github.com/nurikk/zigbee2mqtt-frontend/issues/2158) [#2159](https://github.com/nurikk/zigbee2mqtt-frontend/issues/2159)
21
+
22
+
23
+
1
24
  ## [0.7.4](https://github.com/nurikk/zigbee2mqtt-frontend/compare/0.7.3...0.7.4) (2024-07-26)
2
25
 
3
26
 
package/README.md CHANGED
@@ -2,10 +2,13 @@
2
2
  [![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=nurikk_zigbee2mqtt-frontend&metric=alert_status)](https://sonarcloud.io/summary/new_code?id=nurikk_zigbee2mqtt-frontend)
3
3
  [![codebeat badge](https://codebeat.co/badges/5ca1254f-569b-4ec0-99fa-fe6f0fa2896b)](https://codebeat.co/projects/github-com-nurikk-zigbee2mqtt-frontend-dev)
4
4
 
5
+ # Zigbee2MQTT Frontend
6
+ A frontend UI for [Zigbee2MQTT](https://github.com/Koenkk/zigbee2mqtt)
7
+
5
8
  # Screenshots
6
9
 
7
- ![](images/screenshot_home.png)
8
- ![](images/screenshot_map.png)
10
+ ![Homepage Screenshot](images/screenshot_home.png)
11
+ ![Map Screenshot](images/screenshot_map.png)
9
12
 
10
13
  # Translation
11
14
 
@@ -1 +1 @@
1
- import{N as v,e as j,u as d,r as u,j as e,M as y,f as g,h as p,k,B as x,b as h,v as _,K as C,x as D,O as w}from"./index-74e84a13.js";const S=v.create(s=>{const a=j(),{t:n}=d(["zigbee","common"]),{device:i,removeDevice:l}=s,[t,c]=u.useState({block:!1,force:!1}),b=[{label:n("force_remove"),name:"force",value:t.force},{label:n("block_join"),name:"block",value:t.block}],f=r=>{const{checked:o,name:N}=r.target;c({...t,[N]:o})},m=()=>{l(i.friendly_name,t.force,t.block),a.remove()};return e.jsxs(y,{isOpen:a.visible,children:[e.jsxs(g,{children:[e.jsx("h3",{children:n("remove_device")}),e.jsx("small",{children:i.friendly_name})]}),e.jsx(p,{children:b.map(r=>{const o=`${r.name}${i.ieee_address}`;return e.jsxs("div",{className:"form-check form-switch",children:[e.jsx("input",{className:"form-check-input",name:r.name,checked:r.value,type:"checkbox",id:o,onChange:f}),e.jsx("label",{className:"form-check-label",htmlFor:o,children:r.label})]},r.name)})}),e.jsxs(k,{children:[e.jsx("button",{type:"button",className:"btn btn-secondary",onClick:a.remove,children:n("common:close")}),e.jsx("button",{type:"button",className:"btn btn-danger",onClick:m,children:n("common:delete")})]})]})}),E=v.create(s=>{const a=j(),{homeassistantEnabled:n,device:i,renameDevice:l}=s,[t,c]=u.useState(!1),[b,f]=u.useState(i.friendly_name),{t:m}=d(["zigbee","common"]),r=async()=>{await l(i.friendly_name,b,t),a.remove()};return e.jsxs(y,{isOpen:a.visible,children:[e.jsxs(g,{children:[e.jsx("h3",{children:m("rename_device")}),e.jsx("small",{children:i.friendly_name})]}),e.jsx(p,{children:e.jsx("div",{className:"card",children:e.jsxs("div",{className:"card-body",children:[e.jsxs("div",{className:"mb-3",children:[e.jsx("label",{className:"form-label",children:m("friendly_name")}),e.jsx("input",{onChange:o=>f(o.target.value),type:"text",className:"form-control",value:b})]}),n?e.jsxs("div",{className:"form-check form-switch",children:[e.jsx("input",{className:"form-check-input",checked:t,type:"checkbox",id:`hass${i.ieee_address}`,onChange:o=>c(o.target.checked)}),e.jsx("label",{className:"form-check-label",htmlFor:`hass${i.ieee_address}`,children:m("update_Home_assistant_entity_id")})]}):null]})})}),e.jsxs(k,{children:[e.jsx("button",{type:"button",className:"btn btn-secondary",onClick:a.remove,children:m("common:close")}),e.jsx("button",{type:"button",className:"btn btn-primary",onClick:r,children:m("zigbee:rename_device")})]})]})}),M=s=>{const{homeassistantEnabled:a,device:n,renameDevice:i,style:l}=s,{t}=d(["zigbee","common"]);return e.jsx(x,{className:`btn btn-${l} btn-sm d-md-inline-block mx-1`,onClick:()=>v.show(E,{device:n,renameDevice:i,homeassistantEnabled:a}),title:t("rename_device"),children:e.jsx("i",{className:"fa fa-edit"})})};function B(s){const{device:a,configureDevice:n,removeDevice:i,interviewDevice:l}=s,{t}=d(["zigbee","common"]);return e.jsxs("div",{className:"btn-group btn-group-sm",role:"group",children:[e.jsx(M,{device:a,renameDevice:s.renameDevice,homeassistantEnabled:s.homeassistantEnabled,style:"primary"}),e.jsx(x,{className:"btn btn-warning",onClick:n,item:a.friendly_name,title:t("reconfigure"),prompt:!0,children:e.jsx("i",{className:h("fa","fa-retweet")})}),e.jsx(x,{className:"btn btn-info",onClick:l,item:a.friendly_name,title:t("interview"),prompt:!0,children:e.jsx("i",{className:h("fa","fa-info")})}),e.jsx("button",{onClick:()=>v.show(S,{device:a,removeDevice:i}),className:"btn btn-danger",title:t("remove_device"),children:e.jsx("i",{className:h("fa","fa-trash")})})]})}var R=C,F=D,z=w,A="[object String]";function $(s){return typeof s=="string"||!F(s)&&z(s)&&R(s)==A}var O=$;const H=_(O);function G(s){const{t:a}=d(["avaliability"]),{availability:n,availabilityFeatureEnabled:i=!0,availabilityEnabledForDevice:l=!0,disabled:t}=s;let c;return H(n)?c=n:c=n.state,c=c.toLowerCase(),t?e.jsx("span",{children:a("disabled")}):i&&l?e.jsx("span",{className:h({"text-danger animation-blinking":c==="offline","text-success":n==="online"}),children:a(c)}):e.jsx("a",{target:"_blank",rel:"noopener noreferrer",href:"https://www.zigbee2mqtt.io/guide/configuration/device-availability.html#availability-advanced-configuration",children:a("disabled")})}export{G as A,B as D,M as a,H as i};
1
+ import{N as v,e as j,u as d,r as u,j as e,M as y,f as g,h as p,k,B as x,b as h,p as _,I as C,q as D,J as w}from"./index-6f55efcd.js";const S=v.create(s=>{const a=j(),{t:n}=d(["zigbee","common"]),{device:i,removeDevice:l}=s,[t,c]=u.useState({block:!1,force:!1}),b=[{label:n("force_remove"),name:"force",value:t.force},{label:n("block_join"),name:"block",value:t.block}],f=r=>{const{checked:o,name:N}=r.target;c({...t,[N]:o})},m=()=>{l(i.friendly_name,t.force,t.block),a.remove()};return e.jsxs(y,{isOpen:a.visible,children:[e.jsxs(g,{children:[e.jsx("h3",{children:n("remove_device")}),e.jsx("small",{children:i.friendly_name})]}),e.jsx(p,{children:b.map(r=>{const o=`${r.name}${i.ieee_address}`;return e.jsxs("div",{className:"form-check form-switch",children:[e.jsx("input",{className:"form-check-input",name:r.name,checked:r.value,type:"checkbox",id:o,onChange:f}),e.jsx("label",{className:"form-check-label",htmlFor:o,children:r.label})]},r.name)})}),e.jsxs(k,{children:[e.jsx("button",{type:"button",className:"btn btn-secondary",onClick:a.remove,children:n("common:close")}),e.jsx("button",{type:"button",className:"btn btn-danger",onClick:m,children:n("common:delete")})]})]})}),E=v.create(s=>{const a=j(),{homeassistantEnabled:n,device:i,renameDevice:l}=s,[t,c]=u.useState(!1),[b,f]=u.useState(i.friendly_name),{t:m}=d(["zigbee","common"]),r=async()=>{await l(i.friendly_name,b,t),a.remove()};return e.jsxs(y,{isOpen:a.visible,children:[e.jsxs(g,{children:[e.jsx("h3",{children:m("rename_device")}),e.jsx("small",{children:i.friendly_name})]}),e.jsx(p,{children:e.jsx("div",{className:"card",children:e.jsxs("div",{className:"card-body",children:[e.jsxs("div",{className:"mb-3",children:[e.jsx("label",{className:"form-label",children:m("friendly_name")}),e.jsx("input",{onChange:o=>f(o.target.value),type:"text",className:"form-control",value:b})]}),n?e.jsxs("div",{className:"form-check form-switch",children:[e.jsx("input",{className:"form-check-input",checked:t,type:"checkbox",id:`hass${i.ieee_address}`,onChange:o=>c(o.target.checked)}),e.jsx("label",{className:"form-check-label",htmlFor:`hass${i.ieee_address}`,children:m("update_Home_assistant_entity_id")})]}):null]})})}),e.jsxs(k,{children:[e.jsx("button",{type:"button",className:"btn btn-secondary",onClick:a.remove,children:m("common:close")}),e.jsx("button",{type:"button",className:"btn btn-primary",onClick:r,children:m("zigbee:rename_device")})]})]})}),M=s=>{const{homeassistantEnabled:a,device:n,renameDevice:i,style:l}=s,{t}=d(["zigbee","common"]);return e.jsx(x,{className:`btn btn-${l} btn-sm d-md-inline-block mx-1`,onClick:()=>v.show(E,{device:n,renameDevice:i,homeassistantEnabled:a}),title:t("rename_device"),children:e.jsx("i",{className:"fa fa-edit"})})};function B(s){const{device:a,configureDevice:n,removeDevice:i,interviewDevice:l}=s,{t}=d(["zigbee","common"]);return e.jsxs("div",{className:"btn-group btn-group-sm",role:"group",children:[e.jsx(M,{device:a,renameDevice:s.renameDevice,homeassistantEnabled:s.homeassistantEnabled,style:"primary"}),e.jsx(x,{className:"btn btn-warning",onClick:n,item:a.friendly_name,title:t("reconfigure"),prompt:!0,children:e.jsx("i",{className:h("fa","fa-retweet")})}),e.jsx(x,{className:"btn btn-info",onClick:l,item:a.friendly_name,title:t("interview"),prompt:!0,children:e.jsx("i",{className:h("fa","fa-info")})}),e.jsx("button",{onClick:()=>v.show(S,{device:a,removeDevice:i}),className:"btn btn-danger",title:t("remove_device"),children:e.jsx("i",{className:h("fa","fa-trash")})})]})}var R=C,F=D,z=w,A="[object String]";function $(s){return typeof s=="string"||!F(s)&&z(s)&&R(s)==A}var H=$;const O=_(H);function G(s){const{t:a}=d(["avaliability"]),{availability:n,availabilityFeatureEnabled:i=!0,availabilityEnabledForDevice:l=!0,disabled:t}=s;let c;return O(n)?c=n:c=n.state,c=c.toLowerCase(),t?e.jsx("span",{children:a("disabled")}):i&&l?e.jsx("span",{className:h({"text-danger animation-blinking":c==="offline","text-success":n==="online"}),children:a(c)}):e.jsx("a",{target:"_blank",rel:"noopener noreferrer",href:"https://www.zigbee2mqtt.io/guide/configuration/device-availability.html#availability-advanced-configuration",children:a("disabled")})}export{G as A,B as D,M as a,O as i};