iobroker.govee-smart 2.37.0 → 2.37.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -13
- package/admin/custom/assets/{Components-DWq4U-Jh.js → Components-D2JDvhVv.js} +1 -1
- package/admin/custom/assets/{ExpertPanel-DoLtERNi.js → ExpertPanel-8SGMG-w3.js} +1 -1
- package/admin/custom/assets/{index-Bnpfk677.js → index-BorXudiF.js} +1 -1
- package/admin/custom/assets/{mf-entry-bootstrap-0-1362c6f5.js → mf-entry-bootstrap-0-f91b9e14.js} +1 -1
- package/admin/custom/assets/virtualExposes-xZDfNTio.js +1 -0
- package/admin/custom/assets/{virtual_mf-REMOTE_ENTRY_ID___mfe_internal__ConfigCustomGoveeSegmentSet__customComponents_js-8hDFWCL-.js → virtual_mf-REMOTE_ENTRY_ID___mfe_internal__ConfigCustomGoveeSegmentSet__customComponents_js-_JizGQ-w.js} +1 -1
- package/admin/custom/assets/virtual_mf-exposes-ssr___mfe_internal__ConfigCustomGoveeSegmentSet__customComponents_js-jGp278bo.js +2 -0
- package/admin/custom/assets/{virtual_mf-exposes___mfe_internal__ConfigCustomGoveeSegmentSet__customComponents_js-BjyhzC0c.js → virtual_mf-exposes___mfe_internal__ConfigCustomGoveeSegmentSet__customComponents_js-BTQjAeum.js} +2 -2
- package/admin/custom/customComponents.js +1 -1
- package/admin/custom/mf-manifest.json +1 -1
- package/admin/jsonConfig.json +1 -1
- package/io-package.json +14 -14
- package/package.json +1 -1
- package/admin/custom/assets/virtualExposes-ChPmNKIy.js +0 -1
- package/admin/custom/assets/virtual_mf-exposes-ssr___mfe_internal__ConfigCustomGoveeSegmentSet__customComponents_js-DdZDMvDY.js +0 -2
package/README.md
CHANGED
|
@@ -103,6 +103,10 @@ This adapter's MQTT authentication and BLE-over-LAN (ptReal) protocol implementa
|
|
|
103
103
|
### **WORK IN PROGRESS**
|
|
104
104
|
-->
|
|
105
105
|
|
|
106
|
+
### 2.37.1 (2026-09-15)
|
|
107
|
+
|
|
108
|
+
- Fixed: The instance settings open on the Configuration tab again also when the admin keeps its settings on the server — 2.37.0 handled the browser storage only, so every open still landed on Expert
|
|
109
|
+
|
|
106
110
|
### 2.37.0 (2026-09-15)
|
|
107
111
|
|
|
108
112
|
- Changed: The two folders "snapshots" and "diagnostics" at the top of the object tree are gone — a saved local snapshot is kept with its device, and no diagnostics report is stored any more
|
|
@@ -133,19 +137,6 @@ This adapter's MQTT authentication and BLE-over-LAN (ptReal) protocol implementa
|
|
|
133
137
|
|
|
134
138
|
- Fixed: The values Govee reports for a device at start no longer wait behind the loading of the scene libraries — on an installation with a dozen lights they arrived seven minutes after the start
|
|
135
139
|
|
|
136
|
-
### 2.35.0 (2026-09-11)
|
|
137
|
-
|
|
138
|
-
- New: An air purifier's mode, level and filter life follow the device's own status report — a change made in the Govee app shows in ioBroker within a second, no cloud call (H7127, #47)
|
|
139
|
-
- Fixed: Filter life, air quality, mode and level of an appliance are read from Govee's device-state query at start — the adapter read that answer from the wrong field since its first version (#47)
|
|
140
|
-
- Fixed: A light without a local connection gets its power, brightness and colour from the same query at start; Govee's empty answers no longer turn into false or blank values
|
|
141
|
-
- Fixed: A light without a local connection on an installation with only an API key stays reachable — the 20-minute check meant to renew it never received an answer before
|
|
142
|
-
- Fixed: An installation using only an API key lost its appliance commands by mid-morning — a reachability poll that never got an answer used up the device's daily budget
|
|
143
|
-
- Changed: An appliance's reachability is no longer polled every 20 minutes; its own status push, a command and the start-up query count instead — polling would cost 72 of its 90 daily calls
|
|
144
|
-
- Fixed: The diagnostics report now records mode, level, temperature and music commands with their outcome — it only listed power, brightness and colour before
|
|
145
|
-
- Fixed: A datapoint Govee newly reports for a device is there from the first start on — it used to disappear again and only show up after the next restart
|
|
146
|
-
- Fixed: The filter life of an air purifier now carries its unit (%) — Govee declares none, and the datapoint had no unit since its first version
|
|
147
|
-
- Changed: The DreamView switch, the music auto-colour switch and the DIY-scene selector now carry an explanation in the object tree
|
|
148
|
-
|
|
149
140
|
[Older changelogs can be found there](CHANGELOG_OLD.md)
|
|
150
141
|
|
|
151
142
|
## Support
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__loadShare___mf_0_iobroker_mf_1_json_mf_2_config__loadShare__.js-Bh78u5iG.js";import{ho as t,za as n}from"./_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-BqaV2gc_.js";import{n as r,t as i}from"./ExpertPanel-
|
|
1
|
+
import{t as e}from"./_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__loadShare___mf_0_iobroker_mf_1_json_mf_2_config__loadShare__.js-Bh78u5iG.js";import{ho as t,za as n}from"./_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-BqaV2gc_.js";import{n as r,t as i}from"./ExpertPanel-8SGMG-w3.js";t();var a=class extends e{renderItem(t,i){let a=this.props.oContext,o=`${a.adapterName}.${a.instance}`,s=t=>{let n=e.getValue(this.props.data,t);return typeof n==`string`?n:``};return n(r,{socket:a.socket,namespace:o,values:{apiKey:s(`apiKey`),email:s(`goveeEmail`),password:s(`goveePassword`),code:s(`mqttVerificationCode`)},onChange:(e,t)=>void this.onChange(e,t)})}};t();var o={ConnectionConfig:a,ExpertConfig:class extends e{renderItem(e,t){let r=this.props.oContext,a=`${r.adapterName}.${r.instance}`;return n(i,{socket:r.socket,namespace:a})}}};export{o as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{Ba as e,Bi as t,Di as n,Kr as r,Mi as i,Qr as a,Ra as o,Ri as s,Ti as c,Xr as l,Ya as u,an as d,ei as f,fi as p,gi as m,ho as h,ii as g,oi as _,xi as v,za as y}from"./_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-BqaV2gc_.js";h();function b(e,t){let n=(n,r)=>e.sendTo(t,`mqttAuth`,{action:n,email:r.email,password:r.password,code:r.code});return{testLogin:e=>n(`test`,e),requestCode:e=>n(`requestCode`,e)}}function x(e,t){let[n,r]=u.useState({cloud:!1,mqtt:!1,verifyPending:!1});return u.useEffect(()=>{if(!e)return;let n=`${t}.info.cloudConnected`,i=`${t}.info.mqttConnected`,a=`${t}.info.verificationPending`,o=!0,s=(e,t)=>{o&&r(e=>({...e,cloud:!!(t!=null&&t.val)}))},c=(e,t)=>{o&&r(e=>({...e,mqtt:!!(t!=null&&t.val)}))},l=(e,t)=>{o&&r(e=>({...e,verifyPending:!!(t!=null&&t.val)}))};return Promise.resolve(e.getState(n)).then(e=>s(n,e)).catch(()=>void 0),Promise.resolve(e.getState(i)).then(e=>c(i,e)).catch(()=>void 0),Promise.resolve(e.getState(a)).then(e=>l(a,e)).catch(()=>void 0),Promise.resolve(e.subscribeState(n,s)).catch(()=>void 0),Promise.resolve(e.subscribeState(i,c)).catch(()=>void 0),Promise.resolve(e.subscribeState(a,l)).catch(()=>void 0),()=>{o=!1,e.unsubscribeState(n,s),e.unsubscribeState(i,c),e.unsubscribeState(a,l)}},[e,t]),n}function S(e){switch(e){case`ok`:return`success`;case`verifyRequired`:case`codeSent`:return`info`;case`codeInvalid`:case`codeRejected`:case`needCredentials`:case`throttled`:return`warning`;default:return`error`}}function C(e){return e===`verifyRequired`||e===`codeSent`||e===`codeInvalid`||e===`codeRejected`}function w({on:e,testId:t}){return y(a,{component:`span`,"data-testid":t,"data-on":e?`true`:`false`,sx:{display:`inline-block`,width:12,height:12,borderRadius:`50%`,flexShrink:0,bgcolor:e?`success.main`:`action.disabled`}})}function T(n){let{socket:i,namespace:o,values:s,onChange:c}=n,{apiKey:m,email:h,password:T,code:E}=s,D=u.useMemo(()=>b(i,o),[i,o]),O=x(i,o),[k,A]=u.useState(``),[j,M]=u.useState(null),[N,P]=u.useState(!1),[F,I]=u.useState({apiKey:m,email:h,password:T,code:E});u.useEffect(()=>{I(e=>{let t={...e},n=!1;return e.apiKey!==m&&(t.apiKey=m,n=!0),e.email!==h&&(t.email=h,n=!0),e.password!==T&&(t.password=T,n=!0),e.code!==E&&(t.code=E,n=!0),n?t:e})},[m,h,T,E]);let L=(e,t,n)=>{I(e=>({...e,[t]:n})),c(e,n)};u.useEffect(()=>{O.verifyPending&&P(!0)},[O.verifyPending]);let R=(e,...t)=>d.t(e,...t),z=e=>{M({status:e,text:R(`gsw_conn_st_${e}`)}),C(e)&&P(!0)},B=async()=>{A(`login`);try{let e=await D.testLogin({email:F.email,password:F.password,code:F.code});z(e.status)}catch{z(`loginFailed`)}finally{A(``)}},V=async()=>{A(`code`);try{let e=await D.requestCode({email:F.email,password:F.password});z(e.status)}catch{z(`loginFailed`)}finally{A(``)}},H=F.email.trim()!==``&&F.password.trim()!==``;return e(a,{sx:{maxWidth:640},children:[e(t,{direction:`row`,spacing:1.5,sx:{py:1,alignItems:`center`},children:[y(w,{on:!0,testId:`dot-lan`}),e(a,{children:[y(l,{variant:`subtitle2`,children:R(`gsw_conn_lan_title`)}),y(l,{variant:`body2`,color:`text.secondary`,children:R(`gsw_conn_lan_desc`)})]})]}),y(p,{}),e(t,{direction:`row`,spacing:1.5,sx:{py:1.5,alignItems:`flex-start`},children:[y(a,{sx:{pt:1},children:y(w,{on:O.cloud,testId:`dot-cloud`})}),e(a,{sx:{flexGrow:1},children:[y(l,{variant:`subtitle2`,children:R(`gsw_conn_cloud_title`)}),y(l,{variant:`body2`,color:`text.secondary`,sx:{mb:1},children:R(`gsw_conn_cloud_desc`)}),y(r,{fullWidth:!0,size:`small`,type:`password`,label:R(`gsw_conn_apikey_label`),value:F.apiKey,onChange:e=>L(`apiKey`,`apiKey`,e.target.value),slotProps:{htmlInput:{"data-testid":`conn-apikey`}},autoComplete:`off`})]})]}),y(p,{}),e(t,{direction:`row`,spacing:1.5,sx:{py:1.5,alignItems:`flex-start`},children:[y(a,{sx:{pt:1},children:y(w,{on:O.mqtt,testId:`dot-mqtt`})}),e(a,{sx:{flexGrow:1},children:[y(l,{variant:`subtitle2`,children:R(`gsw_conn_rt_title`)}),y(l,{variant:`body2`,color:`text.secondary`,sx:{mb:1},children:R(`gsw_conn_rt_desc`)}),e(t,{spacing:1,children:[y(r,{fullWidth:!0,size:`small`,label:R(`gsw_conn_email_label`),value:F.email,onChange:e=>L(`goveeEmail`,`email`,e.target.value),slotProps:{htmlInput:{"data-testid":`conn-email`}},autoComplete:`off`}),y(r,{fullWidth:!0,size:`small`,type:`password`,label:R(`gsw_conn_password_label`),value:F.password,onChange:e=>L(`goveePassword`,`password`,e.target.value),slotProps:{htmlInput:{"data-testid":`conn-password`}},autoComplete:`off`}),y(a,{children:y(f,{variant:`contained`,size:`small`,"data-testid":`conn-connect`,disabled:!H||k!==``,onClick:()=>void B(),startIcon:k===`login`?y(g,{size:16,color:`inherit`}):void 0,children:R(`gsw_conn_connect_btn`)})}),y(_,{in:N,unmountOnExit:!0,children:e(t,{spacing:1,sx:{mt:1,pl:1,borderLeft:`2px solid`,borderColor:`divider`},children:[y(l,{variant:`body2`,color:`text.secondary`,children:R(`gsw_conn_2fa_hint`)}),y(r,{fullWidth:!0,size:`small`,label:R(`gsw_conn_code_label`),value:F.code,onChange:e=>L(`mqttVerificationCode`,`code`,e.target.value),slotProps:{htmlInput:{maxLength:8}},autoComplete:`off`}),e(t,{direction:`row`,spacing:1,children:[y(f,{variant:`outlined`,size:`small`,disabled:!H||k!==``,onClick:()=>void V(),startIcon:k===`code`?y(g,{size:16,color:`inherit`}):void 0,children:R(`gsw_conn_request_btn`)}),y(f,{variant:`contained`,size:`small`,disabled:!H||F.code.trim()===``||k!==``,onClick:()=>void B(),startIcon:k===`login`?y(g,{size:16,color:`inherit`}):void 0,children:R(`gsw_conn_verify_btn`)})]})]})})]})]})]}),j&&y(v,{severity:S(j.status),sx:{mt:1},onClose:()=>M(null),children:j.text})]})}var E=class extends Error{};function D(e,t){return{async listDevices(){let n;try{n=await e.sendTo(t,`diagnostics`,{action:`list`})}catch(e){throw new E(e instanceof Error?e.message:String(e))}let r=n==null?void 0:n.devices;if(!Array.isArray(r))throw new E(`The adapter did not answer with a device list`);return r}}}function O(e){return e.filter(e=>e.online&&e.segments>0)}h();var k=4e3;function A(e,t){let n=u.useMemo(()=>D(e,t),[e,t]),[r,i]=u.useState({status:`loading`,slow:!1});return u.useEffect(()=>{let e=!0;i({status:`loading`,slow:!1});let t=setTimeout(()=>{i(e=>e.status===`loading`?{status:`loading`,slow:!0}:e)},k);return n.listDevices().then(t=>{e&&i({status:`ready`,devices:t})}).catch(t=>{e&&i({status:`failed`,message:t instanceof E&&t.message?t.message:d.t(`gsw_listFailed`)})}),()=>{e=!1,clearTimeout(t)}},[n]),r}function j({state:n}){return n.status===`loading`?y(a,{sx:{p:2},children:e(t,{direction:`row`,spacing:2,sx:{alignItems:`center`},children:[y(g,{size:24}),e(a,{children:[y(l,{variant:`body2`,children:d.t(`gsw_loadingDevices`)}),n.slow?y(l,{variant:`caption`,color:`text.secondary`,"data-testid":`list-slow-hint`,children:d.t(`gsw_loadingDevicesSlow`)}):null]})]})}):n.status===`failed`?y(a,{sx:{p:2},children:y(v,{severity:`error`,"data-testid":`list-failed`,children:n.message})}):null}function M(e){return typeof e.fileName==`string`}function N(e,t){return{exportReport(n){return e.sendTo(t,`diagnostics`,{action:`export`,device:n})}}}h();function P(e,t){let n=URL.createObjectURL(new Blob([t],{type:`application/json`})),r=document.createElement(`a`);r.href=n,r.download=e,document.body.appendChild(r),r.click(),r.remove(),setTimeout(()=>URL.revokeObjectURL(n),1e3)}function F({socket:r,namespace:p}){let h=u.useMemo(()=>N(r,p),[r,p]),_=A(r,p),[b,x]=u.useState(``),[S,C]=u.useState(!1),[w,T]=u.useState(``),[E,D]=u.useState(``),O=_.status===`ready`?_.devices:[];u.useEffect(()=>{O.length===1&&x(O[0].value)},[O]);let k=u.useCallback(()=>{C(!0),T(``),D(``),h.exportReport(b).then(e=>{M(e)?(P(e.fileName,e.content),D(e.fileName)):T(e.error)}).catch(()=>T(d.t(`gsw_diagExportFailed`))).finally(()=>C(!1))},[h,b]);return _.status===`ready`?y(a,{sx:{p:2,maxWidth:720},children:e(t,{spacing:2,children:[y(l,{variant:`body2`,children:d.t(`gsw_diagIntro`)}),O.length===0?y(v,{severity:`info`,"data-testid":`diag-no-devices`,children:d.t(`gsw_diagNoDevices`)}):e(o,{children:[e(m,{fullWidth:!0,children:[y(c,{id:`gsw-diag-device`,children:d.t(`gsw_diagDevice`)}),y(s,{"data-testid":`diag-device-select`,labelId:`gsw-diag-device`,label:d.t(`gsw_diagDevice`),value:b,onChange:e=>x(String(e.target.value)),children:O.map(e=>y(i,{value:e.value,children:e.label},e.value))})]}),y(a,{children:y(f,{"data-testid":`diag-export`,variant:`contained`,disabled:!b||S,onClick:k,startIcon:S?y(g,{size:16}):void 0,children:d.t(`gsw_diagExport`)})})]}),E?e(v,{severity:`success`,children:[d.t(`gsw_diagDone`,E),` `,y(n,{href:`https://github.com/krobipd/ioBroker.govee-smart/issues/new/choose`,target:`_blank`,rel:`noreferrer`,children:d.t(`gsw_diagOpenIssue`)})]}):null,w?y(v,{severity:`error`,children:w}):null,y(l,{variant:`caption`,color:`text.secondary`,children:d.t(`gsw_diagPrivacy`)})]})}):y(j,{state:_})}h();var I={confirmed:{bgcolor:`success.main`,color:`success.contrastText`},flashing:{bgcolor:`warning.light`,color:`#000`,boxShadow:3},gap:{bgcolor:`error.main`,color:`error.contrastText`},open:{bgcolor:`action.disabledBackground`,color:`text.secondary`}};function L(e,t,n,r){return n===e?`flashing`:t.has(e)?`confirmed`:r.has(e)?`gap`:`open`}function R(e){let{total:t,confirmed:n,flashing:r,gaps:i,editable:o,onToggle:s}=e,c=new Set(n),l=new Set(i);return y(a,{sx:{display:`flex`,flexWrap:`wrap`,gap:.5},children:Array.from({length:Math.max(0,t)},(e,t)=>{let n=L(t,c,r,l);return y(a,{"data-testid":`seg-cell-${t}`,className:`seg-cell ${n}`,onClick:o?()=>s==null?void 0:s(t):void 0,sx:{width:34,height:34,display:`flex`,alignItems:`center`,justifyContent:`center`,borderRadius:1,fontSize:12,userSelect:`none`,cursor:o?`pointer`:`default`,...I[n]},children:t},t)})})}function z(e,t){let n=``,r=(n,r,i)=>{let a={action:n,device:r};return i&&(a.indices=i),e.sendTo(t,`segmentWizard`,a)};return{start(e){return n=e,r(`start`,e)},yes:()=>r(`yes`,n),no:()=>r(`no`,n),abort:()=>r(`abort`,n),apply:(e,t)=>r(`apply`,e,t)}}h();function B(e,t){let n=new Set(t),r=[];for(let t=0;t<e;t++)n.has(t)||r.push(t);return r}function V(n){let r=u.useMemo(()=>z(n.socket,n.namespace),[n.socket,n.namespace]),o=A(n.socket,n.namespace),p=u.useMemo(()=>o.status===`ready`?O(o.devices):[],[o]),[h,g]=u.useState(`select`),[_,b]=u.useState(``),[x,S]=u.useState(null),[C,w]=u.useState(0),[T,E]=u.useState([]),[D,k]=u.useState(0),[M,N]=u.useState(``);u.useEffect(()=>{b(p.length?p[0].value:``)},[p]);let P=()=>{S(null),g(`select`)},F=e=>e.error?(N(e.error),P(),!0):e.aborted?(N(``),P(),!0):e.applied||e.done?(k(e.segmentCount??0),S(null),g(`success`),!0):(N(``),e.snapshot&&S(e.snapshot),!1),I=async()=>{if(!_)return;N(``);let e=await r.start(_);F(e)||g(`measure`)},L=async e=>{F(await(e?r.yes():r.no()))},V=()=>{let e=x;if(!e||e.currentIndex<1)return;let t=e.currentIndex;w(t),E(e.confirmed.filter(e=>e<t).sort((e,t)=>e-t)),g(`review`)},H=e=>{E(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e].sort((e,t)=>e-t))},U=async()=>{T.length&&F(await r.apply(_,T))},W=async()=>{await r.abort();let e=await r.start(_);F(e)||g(`measure`)},G=async()=>{await r.abort(),P()},K=()=>{N(``),g(`select`)},q=M?y(v,{severity:`error`,"data-testid":`wiz-error`,sx:{mb:2},children:d.t(`gsw_error`,M)}):null;if(o.status!==`ready`)return y(j,{state:o});if(h===`select`)return e(a,{sx:{maxWidth:520},children:[q,p.length===0?y(v,{severity:`info`,"data-testid":`wiz-no-devices`,children:d.t(`gsw_noDevices`)}):e(t,{spacing:2,children:[e(m,{fullWidth:!0,children:[y(c,{children:d.t(`gsw_deviceLabel`)}),y(s,{"data-testid":`wiz-device-select`,value:_,label:d.t(`gsw_deviceLabel`),onChange:e=>b(e.target.value),children:p.map(e=>y(i,{value:e.value,children:d.t(`gsw_deviceOption`,e.label,String(e.segments))},e.value))})]}),y(a,{children:y(f,{variant:`contained`,"data-testid":`wiz-start`,disabled:!_,onClick:()=>void I(),children:d.t(`gsw_start`)})})]})]});if(h===`measure`&&x){let n=x.currentIndex;return e(a,{sx:{maxWidth:520},children:[y(l,{variant:`h6`,sx:{mb:1},children:d.t(`gsw_measureHint`)}),y(R,{total:n+1,confirmed:x.confirmed,flashing:n,gaps:B(n,x.confirmed),editable:!1}),y(l,{sx:{my:2},children:d.t(`gsw_question`,n)}),e(t,{direction:`row`,spacing:1,sx:{flexWrap:`wrap`},useFlexGap:!0,children:[y(f,{variant:`contained`,color:`success`,"data-testid":`wiz-lit`,onClick:()=>void L(!0),children:d.t(`gsw_lit`)}),y(f,{variant:`outlined`,"data-testid":`wiz-dark`,onClick:()=>void L(!1),children:d.t(`gsw_dark`)}),y(f,{variant:`contained`,"data-testid":`wiz-finish`,disabled:n<1,onClick:V,children:d.t(`gsw_finish`)}),y(f,{variant:`text`,color:`secondary`,"data-testid":`wiz-cancel`,onClick:()=>void G(),children:d.t(`gsw_cancel`)})]})]})}if(h===`review`){let n=T.length?Math.max(...T)+1:0,r=n-T.length,i=r>0?d.t(`gsw_resultGaps`,n,r):d.t(`gsw_resultNoGaps`,n);return e(a,{sx:{maxWidth:520},children:[y(l,{variant:`h6`,sx:{mb:1},children:i}),y(l,{variant:`body2`,sx:{mb:1,opacity:.8},children:d.t(`gsw_reviewHint`)}),y(R,{total:C,confirmed:T,flashing:null,gaps:B(C,T),editable:!0,onToggle:H}),e(t,{direction:`row`,spacing:1,sx:{mt:2,flexWrap:`wrap`},useFlexGap:!0,children:[y(f,{variant:`contained`,"data-testid":`wiz-apply`,disabled:!T.length,onClick:()=>void U(),children:d.t(`gsw_apply`)}),y(f,{variant:`outlined`,"data-testid":`wiz-remeasure`,onClick:()=>void W(),children:d.t(`gsw_remeasure`)}),y(f,{variant:`text`,color:`secondary`,"data-testid":`wiz-cancel`,onClick:()=>void G(),children:d.t(`gsw_cancel`)})]})]})}return e(a,{sx:{maxWidth:520},"data-testid":`wiz-success`,children:[y(v,{severity:`success`,sx:{mb:2},children:d.t(`gsw_applied`,D)}),y(f,{variant:`contained`,"data-testid":`wiz-close`,onClick:K,children:d.t(`gsw_close`)})]})}h();var H=new Set([`_main`,`_expert`]);function U(e){let t=e.split(`.`)[0];try{let e=window._localStorage??window.localStorage,n=[];for(let r=0;r<e.length;r++){let i=e.key(r);i!=null&&i.endsWith(`.${t}`)&&H.has(e.getItem(i)??``)&&n.push(i)}for(let t of n)e.removeItem(t)}catch{}}function W({socket:n,namespace:r}){let[i,o]=u.useState(`wizard`);return u.useEffect(()=>U(r),[r]),y(a,{sx:{p:2},children:e(t,{spacing:2,children:[y(l,{variant:`body2`,children:d.t(`gsw_expertIntro`)}),e(t,{direction:`row`,spacing:1,sx:{flexWrap:`wrap`},children:[y(f,{"data-testid":`expert-tool-wizard`,variant:i===`wizard`?`contained`:`outlined`,onClick:()=>o(`wizard`),children:d.t(`gsw_expertWizard`)}),y(f,{"data-testid":`expert-tool-diagnostics`,variant:i===`diagnostics`?`contained`:`outlined`,onClick:()=>o(`diagnostics`),children:d.t(`gsw_expertDiagnostics`)})]}),y(i===`wizard`?V:F,{socket:n,namespace:r})]})})}export{T as n,W as t};
|
|
1
|
+
import{Ba as e,Bi as t,Di as n,Kr as r,Mi as i,Qr as a,Ra as o,Ri as s,Ti as c,Xr as l,Ya as u,an as d,ei as f,fi as p,gi as m,ho as h,ii as g,oi as _,xi as v,za as y}from"./_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-BqaV2gc_.js";h();function b(e,t){let n=(n,r)=>e.sendTo(t,`mqttAuth`,{action:n,email:r.email,password:r.password,code:r.code});return{testLogin:e=>n(`test`,e),requestCode:e=>n(`requestCode`,e)}}function x(e,t){let[n,r]=u.useState({cloud:!1,mqtt:!1,verifyPending:!1});return u.useEffect(()=>{if(!e)return;let n=`${t}.info.cloudConnected`,i=`${t}.info.mqttConnected`,a=`${t}.info.verificationPending`,o=!0,s=(e,t)=>{o&&r(e=>({...e,cloud:!!(t!=null&&t.val)}))},c=(e,t)=>{o&&r(e=>({...e,mqtt:!!(t!=null&&t.val)}))},l=(e,t)=>{o&&r(e=>({...e,verifyPending:!!(t!=null&&t.val)}))};return Promise.resolve(e.getState(n)).then(e=>s(n,e)).catch(()=>void 0),Promise.resolve(e.getState(i)).then(e=>c(i,e)).catch(()=>void 0),Promise.resolve(e.getState(a)).then(e=>l(a,e)).catch(()=>void 0),Promise.resolve(e.subscribeState(n,s)).catch(()=>void 0),Promise.resolve(e.subscribeState(i,c)).catch(()=>void 0),Promise.resolve(e.subscribeState(a,l)).catch(()=>void 0),()=>{o=!1,e.unsubscribeState(n,s),e.unsubscribeState(i,c),e.unsubscribeState(a,l)}},[e,t]),n}function S(e){switch(e){case`ok`:return`success`;case`verifyRequired`:case`codeSent`:return`info`;case`codeInvalid`:case`codeRejected`:case`needCredentials`:case`throttled`:return`warning`;default:return`error`}}function C(e){return e===`verifyRequired`||e===`codeSent`||e===`codeInvalid`||e===`codeRejected`}function w({on:e,testId:t}){return y(a,{component:`span`,"data-testid":t,"data-on":e?`true`:`false`,sx:{display:`inline-block`,width:12,height:12,borderRadius:`50%`,flexShrink:0,bgcolor:e?`success.main`:`action.disabled`}})}function T(n){let{socket:i,namespace:o,values:s,onChange:c}=n,{apiKey:m,email:h,password:T,code:E}=s,D=u.useMemo(()=>b(i,o),[i,o]),O=x(i,o),[k,A]=u.useState(``),[j,M]=u.useState(null),[N,P]=u.useState(!1),[F,I]=u.useState({apiKey:m,email:h,password:T,code:E});u.useEffect(()=>{I(e=>{let t={...e},n=!1;return e.apiKey!==m&&(t.apiKey=m,n=!0),e.email!==h&&(t.email=h,n=!0),e.password!==T&&(t.password=T,n=!0),e.code!==E&&(t.code=E,n=!0),n?t:e})},[m,h,T,E]);let L=(e,t,n)=>{I(e=>({...e,[t]:n})),c(e,n)};u.useEffect(()=>{O.verifyPending&&P(!0)},[O.verifyPending]);let R=(e,...t)=>d.t(e,...t),z=e=>{M({status:e,text:R(`gsw_conn_st_${e}`)}),C(e)&&P(!0)},B=async()=>{A(`login`);try{let e=await D.testLogin({email:F.email,password:F.password,code:F.code});z(e.status)}catch{z(`loginFailed`)}finally{A(``)}},V=async()=>{A(`code`);try{let e=await D.requestCode({email:F.email,password:F.password});z(e.status)}catch{z(`loginFailed`)}finally{A(``)}},H=F.email.trim()!==``&&F.password.trim()!==``;return e(a,{sx:{maxWidth:640},children:[e(t,{direction:`row`,spacing:1.5,sx:{py:1,alignItems:`center`},children:[y(w,{on:!0,testId:`dot-lan`}),e(a,{children:[y(l,{variant:`subtitle2`,children:R(`gsw_conn_lan_title`)}),y(l,{variant:`body2`,color:`text.secondary`,children:R(`gsw_conn_lan_desc`)})]})]}),y(p,{}),e(t,{direction:`row`,spacing:1.5,sx:{py:1.5,alignItems:`flex-start`},children:[y(a,{sx:{pt:1},children:y(w,{on:O.cloud,testId:`dot-cloud`})}),e(a,{sx:{flexGrow:1},children:[y(l,{variant:`subtitle2`,children:R(`gsw_conn_cloud_title`)}),y(l,{variant:`body2`,color:`text.secondary`,sx:{mb:1},children:R(`gsw_conn_cloud_desc`)}),y(r,{fullWidth:!0,size:`small`,type:`password`,label:R(`gsw_conn_apikey_label`),value:F.apiKey,onChange:e=>L(`apiKey`,`apiKey`,e.target.value),slotProps:{htmlInput:{"data-testid":`conn-apikey`}},autoComplete:`off`})]})]}),y(p,{}),e(t,{direction:`row`,spacing:1.5,sx:{py:1.5,alignItems:`flex-start`},children:[y(a,{sx:{pt:1},children:y(w,{on:O.mqtt,testId:`dot-mqtt`})}),e(a,{sx:{flexGrow:1},children:[y(l,{variant:`subtitle2`,children:R(`gsw_conn_rt_title`)}),y(l,{variant:`body2`,color:`text.secondary`,sx:{mb:1},children:R(`gsw_conn_rt_desc`)}),e(t,{spacing:1,children:[y(r,{fullWidth:!0,size:`small`,label:R(`gsw_conn_email_label`),value:F.email,onChange:e=>L(`goveeEmail`,`email`,e.target.value),slotProps:{htmlInput:{"data-testid":`conn-email`}},autoComplete:`off`}),y(r,{fullWidth:!0,size:`small`,type:`password`,label:R(`gsw_conn_password_label`),value:F.password,onChange:e=>L(`goveePassword`,`password`,e.target.value),slotProps:{htmlInput:{"data-testid":`conn-password`}},autoComplete:`off`}),y(a,{children:y(f,{variant:`contained`,size:`small`,"data-testid":`conn-connect`,disabled:!H||k!==``,onClick:()=>void B(),startIcon:k===`login`?y(g,{size:16,color:`inherit`}):void 0,children:R(`gsw_conn_connect_btn`)})}),y(_,{in:N,unmountOnExit:!0,children:e(t,{spacing:1,sx:{mt:1,pl:1,borderLeft:`2px solid`,borderColor:`divider`},children:[y(l,{variant:`body2`,color:`text.secondary`,children:R(`gsw_conn_2fa_hint`)}),y(r,{fullWidth:!0,size:`small`,label:R(`gsw_conn_code_label`),value:F.code,onChange:e=>L(`mqttVerificationCode`,`code`,e.target.value),slotProps:{htmlInput:{maxLength:8}},autoComplete:`off`}),e(t,{direction:`row`,spacing:1,children:[y(f,{variant:`outlined`,size:`small`,disabled:!H||k!==``,onClick:()=>void V(),startIcon:k===`code`?y(g,{size:16,color:`inherit`}):void 0,children:R(`gsw_conn_request_btn`)}),y(f,{variant:`contained`,size:`small`,disabled:!H||F.code.trim()===``||k!==``,onClick:()=>void B(),startIcon:k===`login`?y(g,{size:16,color:`inherit`}):void 0,children:R(`gsw_conn_verify_btn`)})]})]})})]})]})]}),j&&y(v,{severity:S(j.status),sx:{mt:1},onClose:()=>M(null),children:j.text})]})}var E=class extends Error{};function D(e,t){return{async listDevices(){let n;try{n=await e.sendTo(t,`diagnostics`,{action:`list`})}catch(e){throw new E(e instanceof Error?e.message:String(e))}let r=n==null?void 0:n.devices;if(!Array.isArray(r))throw new E(`The adapter did not answer with a device list`);return r}}}function O(e){return e.filter(e=>e.online&&e.segments>0)}h();var k=4e3;function A(e,t){let n=u.useMemo(()=>D(e,t),[e,t]),[r,i]=u.useState({status:`loading`,slow:!1});return u.useEffect(()=>{let e=!0;i({status:`loading`,slow:!1});let t=setTimeout(()=>{i(e=>e.status===`loading`?{status:`loading`,slow:!0}:e)},k);return n.listDevices().then(t=>{e&&i({status:`ready`,devices:t})}).catch(t=>{e&&i({status:`failed`,message:t instanceof E&&t.message?t.message:d.t(`gsw_listFailed`)})}),()=>{e=!1,clearTimeout(t)}},[n]),r}function j({state:n}){return n.status===`loading`?y(a,{sx:{p:2},children:e(t,{direction:`row`,spacing:2,sx:{alignItems:`center`},children:[y(g,{size:24}),e(a,{children:[y(l,{variant:`body2`,children:d.t(`gsw_loadingDevices`)}),n.slow?y(l,{variant:`caption`,color:`text.secondary`,"data-testid":`list-slow-hint`,children:d.t(`gsw_loadingDevicesSlow`)}):null]})]})}):n.status===`failed`?y(a,{sx:{p:2},children:y(v,{severity:`error`,"data-testid":`list-failed`,children:n.message})}):null}function M(e){return typeof e.fileName==`string`}function N(e,t){return{exportReport(n){return e.sendTo(t,`diagnostics`,{action:`export`,device:n})}}}h();function P(e,t){let n=URL.createObjectURL(new Blob([t],{type:`application/json`})),r=document.createElement(`a`);r.href=n,r.download=e,document.body.appendChild(r),r.click(),r.remove(),setTimeout(()=>URL.revokeObjectURL(n),1e3)}function F({socket:r,namespace:p}){let h=u.useMemo(()=>N(r,p),[r,p]),_=A(r,p),[b,x]=u.useState(``),[S,C]=u.useState(!1),[w,T]=u.useState(``),[E,D]=u.useState(``),O=_.status===`ready`?_.devices:[];u.useEffect(()=>{O.length===1&&x(O[0].value)},[O]);let k=u.useCallback(()=>{C(!0),T(``),D(``),h.exportReport(b).then(e=>{M(e)?(P(e.fileName,e.content),D(e.fileName)):T(e.error)}).catch(()=>T(d.t(`gsw_diagExportFailed`))).finally(()=>C(!1))},[h,b]);return _.status===`ready`?y(a,{sx:{p:2,maxWidth:720},children:e(t,{spacing:2,children:[y(l,{variant:`body2`,children:d.t(`gsw_diagIntro`)}),O.length===0?y(v,{severity:`info`,"data-testid":`diag-no-devices`,children:d.t(`gsw_diagNoDevices`)}):e(o,{children:[e(m,{fullWidth:!0,children:[y(c,{id:`gsw-diag-device`,children:d.t(`gsw_diagDevice`)}),y(s,{"data-testid":`diag-device-select`,labelId:`gsw-diag-device`,label:d.t(`gsw_diagDevice`),value:b,onChange:e=>x(String(e.target.value)),children:O.map(e=>y(i,{value:e.value,children:e.label},e.value))})]}),y(a,{children:y(f,{"data-testid":`diag-export`,variant:`contained`,disabled:!b||S,onClick:k,startIcon:S?y(g,{size:16}):void 0,children:d.t(`gsw_diagExport`)})})]}),E?e(v,{severity:`success`,children:[d.t(`gsw_diagDone`,E),` `,y(n,{href:`https://github.com/krobipd/ioBroker.govee-smart/issues/new/choose`,target:`_blank`,rel:`noreferrer`,children:d.t(`gsw_diagOpenIssue`)})]}):null,w?y(v,{severity:`error`,children:w}):null,y(l,{variant:`caption`,color:`text.secondary`,children:d.t(`gsw_diagPrivacy`)})]})}):y(j,{state:_})}h();var I={confirmed:{bgcolor:`success.main`,color:`success.contrastText`},flashing:{bgcolor:`warning.light`,color:`#000`,boxShadow:3},gap:{bgcolor:`error.main`,color:`error.contrastText`},open:{bgcolor:`action.disabledBackground`,color:`text.secondary`}};function L(e,t,n,r){return n===e?`flashing`:t.has(e)?`confirmed`:r.has(e)?`gap`:`open`}function R(e){let{total:t,confirmed:n,flashing:r,gaps:i,editable:o,onToggle:s}=e,c=new Set(n),l=new Set(i);return y(a,{sx:{display:`flex`,flexWrap:`wrap`,gap:.5},children:Array.from({length:Math.max(0,t)},(e,t)=>{let n=L(t,c,r,l);return y(a,{"data-testid":`seg-cell-${t}`,className:`seg-cell ${n}`,onClick:o?()=>s==null?void 0:s(t):void 0,sx:{width:34,height:34,display:`flex`,alignItems:`center`,justifyContent:`center`,borderRadius:1,fontSize:12,userSelect:`none`,cursor:o?`pointer`:`default`,...I[n]},children:t},t)})})}function z(e,t){let n=``,r=(n,r,i)=>{let a={action:n,device:r};return i&&(a.indices=i),e.sendTo(t,`segmentWizard`,a)};return{start(e){return n=e,r(`start`,e)},yes:()=>r(`yes`,n),no:()=>r(`no`,n),abort:()=>r(`abort`,n),apply:(e,t)=>r(`apply`,e,t)}}h();function B(e,t){let n=new Set(t),r=[];for(let t=0;t<e;t++)n.has(t)||r.push(t);return r}function V(n){let r=u.useMemo(()=>z(n.socket,n.namespace),[n.socket,n.namespace]),o=A(n.socket,n.namespace),p=u.useMemo(()=>o.status===`ready`?O(o.devices):[],[o]),[h,g]=u.useState(`select`),[_,b]=u.useState(``),[x,S]=u.useState(null),[C,w]=u.useState(0),[T,E]=u.useState([]),[D,k]=u.useState(0),[M,N]=u.useState(``);u.useEffect(()=>{b(p.length?p[0].value:``)},[p]);let P=()=>{S(null),g(`select`)},F=e=>e.error?(N(e.error),P(),!0):e.aborted?(N(``),P(),!0):e.applied||e.done?(k(e.segmentCount??0),S(null),g(`success`),!0):(N(``),e.snapshot&&S(e.snapshot),!1),I=async()=>{if(!_)return;N(``);let e=await r.start(_);F(e)||g(`measure`)},L=async e=>{F(await(e?r.yes():r.no()))},V=()=>{let e=x;if(!e||e.currentIndex<1)return;let t=e.currentIndex;w(t),E(e.confirmed.filter(e=>e<t).sort((e,t)=>e-t)),g(`review`)},H=e=>{E(t=>t.includes(e)?t.filter(t=>t!==e):[...t,e].sort((e,t)=>e-t))},U=async()=>{T.length&&F(await r.apply(_,T))},W=async()=>{await r.abort();let e=await r.start(_);F(e)||g(`measure`)},G=async()=>{await r.abort(),P()},K=()=>{N(``),g(`select`)},q=M?y(v,{severity:`error`,"data-testid":`wiz-error`,sx:{mb:2},children:d.t(`gsw_error`,M)}):null;if(o.status!==`ready`)return y(j,{state:o});if(h===`select`)return e(a,{sx:{maxWidth:520},children:[q,p.length===0?y(v,{severity:`info`,"data-testid":`wiz-no-devices`,children:d.t(`gsw_noDevices`)}):e(t,{spacing:2,children:[e(m,{fullWidth:!0,children:[y(c,{children:d.t(`gsw_deviceLabel`)}),y(s,{"data-testid":`wiz-device-select`,value:_,label:d.t(`gsw_deviceLabel`),onChange:e=>b(e.target.value),children:p.map(e=>y(i,{value:e.value,children:d.t(`gsw_deviceOption`,e.label,String(e.segments))},e.value))})]}),y(a,{children:y(f,{variant:`contained`,"data-testid":`wiz-start`,disabled:!_,onClick:()=>void I(),children:d.t(`gsw_start`)})})]})]});if(h===`measure`&&x){let n=x.currentIndex;return e(a,{sx:{maxWidth:520},children:[y(l,{variant:`h6`,sx:{mb:1},children:d.t(`gsw_measureHint`)}),y(R,{total:n+1,confirmed:x.confirmed,flashing:n,gaps:B(n,x.confirmed),editable:!1}),y(l,{sx:{my:2},children:d.t(`gsw_question`,n)}),e(t,{direction:`row`,spacing:1,sx:{flexWrap:`wrap`},useFlexGap:!0,children:[y(f,{variant:`contained`,color:`success`,"data-testid":`wiz-lit`,onClick:()=>void L(!0),children:d.t(`gsw_lit`)}),y(f,{variant:`outlined`,"data-testid":`wiz-dark`,onClick:()=>void L(!1),children:d.t(`gsw_dark`)}),y(f,{variant:`contained`,"data-testid":`wiz-finish`,disabled:n<1,onClick:V,children:d.t(`gsw_finish`)}),y(f,{variant:`text`,color:`secondary`,"data-testid":`wiz-cancel`,onClick:()=>void G(),children:d.t(`gsw_cancel`)})]})]})}if(h===`review`){let n=T.length?Math.max(...T)+1:0,r=n-T.length,i=r>0?d.t(`gsw_resultGaps`,n,r):d.t(`gsw_resultNoGaps`,n);return e(a,{sx:{maxWidth:520},children:[y(l,{variant:`h6`,sx:{mb:1},children:i}),y(l,{variant:`body2`,sx:{mb:1,opacity:.8},children:d.t(`gsw_reviewHint`)}),y(R,{total:C,confirmed:T,flashing:null,gaps:B(C,T),editable:!0,onToggle:H}),e(t,{direction:`row`,spacing:1,sx:{mt:2,flexWrap:`wrap`},useFlexGap:!0,children:[y(f,{variant:`contained`,"data-testid":`wiz-apply`,disabled:!T.length,onClick:()=>void U(),children:d.t(`gsw_apply`)}),y(f,{variant:`outlined`,"data-testid":`wiz-remeasure`,onClick:()=>void W(),children:d.t(`gsw_remeasure`)}),y(f,{variant:`text`,color:`secondary`,"data-testid":`wiz-cancel`,onClick:()=>void G(),children:d.t(`gsw_cancel`)})]})]})}return e(a,{sx:{maxWidth:520},"data-testid":`wiz-success`,children:[y(v,{severity:`success`,sx:{mb:2},children:d.t(`gsw_applied`,D)}),y(f,{variant:`contained`,"data-testid":`wiz-close`,onClick:K,children:d.t(`gsw_close`)})]})}h();var H=new Set([`_main`,`_expert`]);function U(e){let t=e.split(`.`)[0];try{let e=window._localStorage??window.localStorage,n=new Set,r=`App.${t}`;if(H.has(e.getItem(r)??``)&&n.add(r),typeof e.length==`number`&&typeof e.key==`function`)for(let r=0;r<e.length;r++){let i=e.key(r);i!=null&&i.endsWith(`.${t}`)&&H.has(e.getItem(i)??``)&&n.add(i)}for(let t of n)e.removeItem(t)}catch{}}function W({socket:n,namespace:r}){let[i,o]=u.useState(`wizard`);return u.useEffect(()=>(U(r),()=>U(r)),[r]),y(a,{sx:{p:2},children:e(t,{spacing:2,children:[y(l,{variant:`body2`,children:d.t(`gsw_expertIntro`)}),e(t,{direction:`row`,spacing:1,sx:{flexWrap:`wrap`},children:[y(f,{"data-testid":`expert-tool-wizard`,variant:i===`wizard`?`contained`:`outlined`,onClick:()=>o(`wizard`),children:d.t(`gsw_expertWizard`)}),y(f,{"data-testid":`expert-tool-diagnostics`,variant:i===`diagnostics`?`contained`:`outlined`,onClick:()=>o(`diagnostics`),children:d.t(`gsw_expertDiagnostics`)})]}),y(i===`wizard`?V:F,{socket:n,namespace:r})]})})}export{T as n,W as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import"./virtual_mf-exposes___mfe_internal__ConfigCustomGoveeSegmentSet__customComponents_js-BjyhzC0c.js";import"./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__ConfigCustomGoveeSegmentSet__customComponents_js-8hDFWCL-.js";import{$t as e,Ba as t,La as n,Qr as r,Ya as i,an as a,cn as o,ho as s,ya as c,za as l}from"./_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-BqaV2gc_.js";import{t as u}from"./_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__loadShare__react_mf_2_dom_mf_1_client__loadShare__.js-ld5_knuQ.js";import{n as d,t as f}from"./ExpertPanel-DoLtERNi.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),t.credentials=e.crossOrigin===`use-credentials`?`include`:e.crossOrigin===`anonymous`?`omit`:`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})(),s();var p={gsw_deviceLabel:`Device`,gsw_noDevices:`No segment-capable devices found. Enter a Cloud API key in the adapter settings so device capabilities are known.`,gsw_start:`Start measuring`,gsw_measureHint:`Watch the strip — which segment lights up bright white?`,gsw_question:`Segment %s — is it lit?`,gsw_lit:`Lit`,gsw_dark:`Dark (gap)`,gsw_finish:`Finished — end of strip`,gsw_cancel:`Cancel`,gsw_reviewHint:`Click a cell to flip lit / gap, then apply.`,gsw_resultNoGaps:`%s segments, no gaps`,gsw_resultGaps:`%s segments, %s gap(s)`,gsw_apply:`Apply`,gsw_remeasure:`Measure again`,gsw_applied:`Applied: %s segments.`,gsw_error:`Wizard error: %s`,gsw_close:`Close`,gsw_conn_lan_title:`LAN — always on`,gsw_conn_lan_desc:`Local control for lights. No credentials needed.`,gsw_conn_cloud_title:`Cloud API key`,gsw_conn_cloud_desc:`Optional. Adds device names, scenes, snapshots and segments.`,gsw_conn_apikey_label:`Govee API key`,gsw_conn_rt_title:`Real-time status (Govee account)`,gsw_conn_rt_desc:`Optional. Enables live status push over the Govee cloud (AWS IoT).`,gsw_conn_email_label:`Account email`,gsw_conn_password_label:`Account password`,gsw_conn_connect_btn:`Connect`,gsw_conn_2fa_hint:`Govee sent a verification code by email. Enter it here to finish sign-in.`,gsw_conn_code_label:`Verification code`,gsw_conn_request_btn:`Request new code`,gsw_conn_verify_btn:`Confirm code`,gsw_conn_st_ok:`Connected. Save the settings to keep real-time status enabled.`,gsw_conn_st_verifyRequired:`Govee needs a verification code for this device. Check your email and enter the code.`,gsw_conn_st_codeInvalid:`The verification code is invalid. Request a new one and try again.`,gsw_conn_st_passwordRejected:`Email or password was rejected. Please check your credentials.`,gsw_conn_st_emailNotRegistered:`This email is not registered with Govee.`,gsw_conn_st_rateLimited:`Too many attempts. Wait a while before trying again.`,gsw_conn_st_accountLocked:`The account is temporarily locked by Govee. Try again later.`,gsw_conn_st_loginFailed:`Login failed. Please try again.`,gsw_conn_st_mqttNotUp:`Real-time service is not ready yet. Try again in a moment.`,gsw_conn_st_codeSent:`A new verification code was sent to your email.`,gsw_conn_st_codeRejected:`Govee rejected the verification code. Request a new one.`,gsw_conn_st_needCredentials:`Enter email and password first.`,gsw_conn_st_throttled:`Please wait a moment before requesting another code.`,gsw_conn_st_unknownAction:`Unknown action.`,gsw_diagIntro:`Pick a device and press the button: the adapter builds a diagnostics report and your browser saves it as a file. Attach that file to a GitHub issue — the issue forms ask for exactly it.`,gsw_diagDevice:`Device`,gsw_diagExport:`Create report and download`,gsw_diagDone:`Saved as %s.`,gsw_diagOpenIssue:`Open an issue`,gsw_diagNoDevices:`No devices yet. The report is per device — once the adapter has found one, it appears here.`,gsw_diagExportFailed:`The report could not be created. The adapter log says why.`,gsw_diagPrivacy:`The report is pseudonymised: addresses, mail addresses and device names are replaced by stable markers, device ids are shortened, and credentials never appear.`,gsw_loadingDevices:`Loading devices …`,gsw_loadingDevicesSlow:`Still loading — this needs the adapter instance to be running.`,gsw_listFailed:`Could not load the device list. Is the instance running?`,gsw_deviceOption:`%s — currently %s segments`,gsw_expertIntro:`Two tools for when something needs a closer look. Pick one — the device list loads when you do.`,gsw_expertWizard:`Segment detection`,gsw_expertDiagnostics:`Diagnostics`},m={gsw_deviceLabel:`Gerät`,gsw_noDevices:`Keine Geräte mit Segmenten gefunden. Trage einen Cloud-API-Key in den Adaptereinstellungen ein, damit die Gerätefähigkeiten bekannt sind.`,gsw_start:`Messung starten`,gsw_measureHint:`Beobachte den Strip — welches Segment leuchtet hell weiß auf?`,gsw_question:`Segment %s — leuchtet es?`,gsw_lit:`Leuchtet`,gsw_dark:`Dunkel (Lücke)`,gsw_finish:`Fertig — Strip zu Ende`,gsw_cancel:`Abbrechen`,gsw_reviewHint:`Zelle anklicken, um zwischen Leuchtet/Lücke zu wechseln, dann übernehmen.`,gsw_resultNoGaps:`%s Segmente, keine Lücke`,gsw_resultGaps:`%s Segmente, %s Lücke(n)`,gsw_apply:`Übernehmen`,gsw_remeasure:`Nochmal messen`,gsw_applied:`Übernommen: %s Segmente.`,gsw_error:`Wizard-Fehler: %s`,gsw_close:`Schließen`,gsw_conn_lan_title:`LAN — immer aktiv`,gsw_conn_lan_desc:`Lokale Steuerung für Lampen. Keine Zugangsdaten nötig.`,gsw_conn_cloud_title:`Cloud-API-Key`,gsw_conn_cloud_desc:`Optional. Ergänzt Gerätenamen, Szenen, Snapshots und Segmente.`,gsw_conn_apikey_label:`Govee-API-Key`,gsw_conn_rt_title:`Echtzeit-Status (Govee-Konto)`,gsw_conn_rt_desc:`Optional. Aktiviert Live-Status-Push über die Govee-Cloud (AWS IoT).`,gsw_conn_email_label:`Konto-E-Mail`,gsw_conn_password_label:`Konto-Passwort`,gsw_conn_connect_btn:`Verbinden`,gsw_conn_2fa_hint:`Govee hat einen Bestätigungscode per E-Mail geschickt. Zum Abschließen hier eingeben.`,gsw_conn_code_label:`Bestätigungscode`,gsw_conn_request_btn:`Neuen Code anfordern`,gsw_conn_verify_btn:`Code bestätigen`,gsw_conn_st_ok:`Verbunden. Zum dauerhaften Aktivieren die Einstellungen speichern.`,gsw_conn_st_verifyRequired:`Govee benötigt für dieses Gerät einen Bestätigungscode. E-Mail prüfen und Code eingeben.`,gsw_conn_st_codeInvalid:`Der Bestätigungscode ist ungültig. Neuen anfordern und erneut versuchen.`,gsw_conn_st_passwordRejected:`E-Mail oder Passwort wurde abgelehnt. Bitte Zugangsdaten prüfen.`,gsw_conn_st_emailNotRegistered:`Diese E-Mail ist bei Govee nicht registriert.`,gsw_conn_st_rateLimited:`Zu viele Versuche. Bitte etwas warten, bevor du es erneut versuchst.`,gsw_conn_st_accountLocked:`Das Konto ist vorübergehend von Govee gesperrt. Später erneut versuchen.`,gsw_conn_st_loginFailed:`Anmeldung fehlgeschlagen. Bitte erneut versuchen.`,gsw_conn_st_mqttNotUp:`Der Echtzeit-Dienst ist noch nicht bereit. Gleich erneut versuchen.`,gsw_conn_st_codeSent:`Ein neuer Bestätigungscode wurde an deine E-Mail geschickt.`,gsw_conn_st_codeRejected:`Govee hat den Bestätigungscode abgelehnt. Neuen anfordern.`,gsw_conn_st_needCredentials:`Zuerst E-Mail und Passwort eingeben.`,gsw_conn_st_throttled:`Bitte kurz warten, bevor du einen weiteren Code anforderst.`,gsw_conn_st_unknownAction:`Unbekannte Aktion.`,gsw_diagIntro:`Gerät wählen und auf den Knopf drücken: Der Adapter erstellt einen Diagnosebericht, und der Browser legt ihn als Datei ab. Diese Datei an ein GitHub-Issue anhängen — die Formulare fragen genau danach.`,gsw_diagDevice:`Gerät`,gsw_diagExport:`Bericht erstellen und herunterladen`,gsw_diagDone:`Gespeichert als %s.`,gsw_diagOpenIssue:`Issue eröffnen`,gsw_diagNoDevices:`Noch keine Geräte. Der Bericht gilt je Gerät — sobald der Adapter eines gefunden hat, erscheint es hier.`,gsw_diagExportFailed:`Der Bericht konnte nicht erstellt werden. Warum, steht im Adapter-Log.`,gsw_diagPrivacy:`Der Bericht ist anonymisiert: Adressen, E-Mail-Adressen und Gerätenamen werden durch gleichbleibende Marken ersetzt, Gerätekennungen gekürzt, Zugangsdaten tauchen gar nicht auf.`,gsw_loadingDevices:`Geräte werden geladen …`,gsw_loadingDevicesSlow:`Lädt noch — dafür muss die Adapter-Instanz laufen.`,gsw_listFailed:`Die Geräteliste konnte nicht geladen werden. Läuft die Instanz?`,gsw_deviceOption:`%s — bisher %s Segmente`,gsw_expertIntro:`Zwei Werkzeuge für den genaueren Blick. Eines auswählen — die Geräteliste wird dann geladen.`,gsw_expertWizard:`Segment-Erkennung`,gsw_expertDiagnostics:`Diagnose`},h={app:e=>({backgroundColor:e.palette.background.default,color:e.palette.text.primary,height:`100%`}),item:{padding:50,width:600}},g=class extends e{constructor(e){let t={...e};super(e,t),this.state={...this.state,data:{},originalData:{},theme:this.createTheme()},a.extendTranslations(p,`en`),a.extendTranslations(m,`de`);let n=(navigator.language||navigator.userLanguage||`en`).toLowerCase();a.setLanguage(n.substring(0,2))}render(){return this.state.loaded?l(n,{injectFirst:!0,children:l(c,{theme:this.state.theme,children:t(r,{sx:h.app,children:[l(`div`,{style:h.item,children:l(d,{socket:this.socket,namespace:`${this.adapterName}.${this.instance}`,values:{apiKey:String(this.state.data.apiKey??``),email:String(this.state.data.goveeEmail??``),password:String(this.state.data.goveePassword??``),code:String(this.state.data.mqttVerificationCode??``)},onChange:(e,t)=>this.setState({data:{...this.state.data,[e]:t}})})}),l(`div`,{style:h.item,children:l(f,{socket:this.socket,namespace:`${this.adapterName}.${this.instance}`})})]})})}):l(n,{injectFirst:!0,children:l(c,{theme:this.state.theme,children:l(o,{themeType:this.state.themeType})})})}};s(),window.adapterName=`govee-smart`;var _=document.getElementById(`root`);_&&u(_).render(l(i.StrictMode,{children:l(g,{socket:{port:8081}})}));
|
|
1
|
+
import"./virtual_mf-exposes___mfe_internal__ConfigCustomGoveeSegmentSet__customComponents_js-BTQjAeum.js";import"./virtual_mf-REMOTE_ENTRY_ID___mfe_internal__ConfigCustomGoveeSegmentSet__customComponents_js-_JizGQ-w.js";import{$t as e,Ba as t,La as n,Qr as r,Ya as i,an as a,cn as o,ho as s,ya as c,za as l}from"./_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-BqaV2gc_.js";import{t as u}from"./_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__loadShare__react_mf_2_dom_mf_1_client__loadShare__.js-ld5_knuQ.js";import{n as d,t as f}from"./ExpertPanel-8SGMG-w3.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),t.credentials=e.crossOrigin===`use-credentials`?`include`:e.crossOrigin===`anonymous`?`omit`:`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})(),s();var p={gsw_deviceLabel:`Device`,gsw_noDevices:`No segment-capable devices found. Enter a Cloud API key in the adapter settings so device capabilities are known.`,gsw_start:`Start measuring`,gsw_measureHint:`Watch the strip — which segment lights up bright white?`,gsw_question:`Segment %s — is it lit?`,gsw_lit:`Lit`,gsw_dark:`Dark (gap)`,gsw_finish:`Finished — end of strip`,gsw_cancel:`Cancel`,gsw_reviewHint:`Click a cell to flip lit / gap, then apply.`,gsw_resultNoGaps:`%s segments, no gaps`,gsw_resultGaps:`%s segments, %s gap(s)`,gsw_apply:`Apply`,gsw_remeasure:`Measure again`,gsw_applied:`Applied: %s segments.`,gsw_error:`Wizard error: %s`,gsw_close:`Close`,gsw_conn_lan_title:`LAN — always on`,gsw_conn_lan_desc:`Local control for lights. No credentials needed.`,gsw_conn_cloud_title:`Cloud API key`,gsw_conn_cloud_desc:`Optional. Adds device names, scenes, snapshots and segments.`,gsw_conn_apikey_label:`Govee API key`,gsw_conn_rt_title:`Real-time status (Govee account)`,gsw_conn_rt_desc:`Optional. Enables live status push over the Govee cloud (AWS IoT).`,gsw_conn_email_label:`Account email`,gsw_conn_password_label:`Account password`,gsw_conn_connect_btn:`Connect`,gsw_conn_2fa_hint:`Govee sent a verification code by email. Enter it here to finish sign-in.`,gsw_conn_code_label:`Verification code`,gsw_conn_request_btn:`Request new code`,gsw_conn_verify_btn:`Confirm code`,gsw_conn_st_ok:`Connected. Save the settings to keep real-time status enabled.`,gsw_conn_st_verifyRequired:`Govee needs a verification code for this device. Check your email and enter the code.`,gsw_conn_st_codeInvalid:`The verification code is invalid. Request a new one and try again.`,gsw_conn_st_passwordRejected:`Email or password was rejected. Please check your credentials.`,gsw_conn_st_emailNotRegistered:`This email is not registered with Govee.`,gsw_conn_st_rateLimited:`Too many attempts. Wait a while before trying again.`,gsw_conn_st_accountLocked:`The account is temporarily locked by Govee. Try again later.`,gsw_conn_st_loginFailed:`Login failed. Please try again.`,gsw_conn_st_mqttNotUp:`Real-time service is not ready yet. Try again in a moment.`,gsw_conn_st_codeSent:`A new verification code was sent to your email.`,gsw_conn_st_codeRejected:`Govee rejected the verification code. Request a new one.`,gsw_conn_st_needCredentials:`Enter email and password first.`,gsw_conn_st_throttled:`Please wait a moment before requesting another code.`,gsw_conn_st_unknownAction:`Unknown action.`,gsw_diagIntro:`Pick a device and press the button: the adapter builds a diagnostics report and your browser saves it as a file. Attach that file to a GitHub issue — the issue forms ask for exactly it.`,gsw_diagDevice:`Device`,gsw_diagExport:`Create report and download`,gsw_diagDone:`Saved as %s.`,gsw_diagOpenIssue:`Open an issue`,gsw_diagNoDevices:`No devices yet. The report is per device — once the adapter has found one, it appears here.`,gsw_diagExportFailed:`The report could not be created. The adapter log says why.`,gsw_diagPrivacy:`The report is pseudonymised: addresses, mail addresses and device names are replaced by stable markers, device ids are shortened, and credentials never appear.`,gsw_loadingDevices:`Loading devices …`,gsw_loadingDevicesSlow:`Still loading — this needs the adapter instance to be running.`,gsw_listFailed:`Could not load the device list. Is the instance running?`,gsw_deviceOption:`%s — currently %s segments`,gsw_expertIntro:`Two tools for when something needs a closer look. Pick one — the device list loads when you do.`,gsw_expertWizard:`Segment detection`,gsw_expertDiagnostics:`Diagnostics`},m={gsw_deviceLabel:`Gerät`,gsw_noDevices:`Keine Geräte mit Segmenten gefunden. Trage einen Cloud-API-Key in den Adaptereinstellungen ein, damit die Gerätefähigkeiten bekannt sind.`,gsw_start:`Messung starten`,gsw_measureHint:`Beobachte den Strip — welches Segment leuchtet hell weiß auf?`,gsw_question:`Segment %s — leuchtet es?`,gsw_lit:`Leuchtet`,gsw_dark:`Dunkel (Lücke)`,gsw_finish:`Fertig — Strip zu Ende`,gsw_cancel:`Abbrechen`,gsw_reviewHint:`Zelle anklicken, um zwischen Leuchtet/Lücke zu wechseln, dann übernehmen.`,gsw_resultNoGaps:`%s Segmente, keine Lücke`,gsw_resultGaps:`%s Segmente, %s Lücke(n)`,gsw_apply:`Übernehmen`,gsw_remeasure:`Nochmal messen`,gsw_applied:`Übernommen: %s Segmente.`,gsw_error:`Wizard-Fehler: %s`,gsw_close:`Schließen`,gsw_conn_lan_title:`LAN — immer aktiv`,gsw_conn_lan_desc:`Lokale Steuerung für Lampen. Keine Zugangsdaten nötig.`,gsw_conn_cloud_title:`Cloud-API-Key`,gsw_conn_cloud_desc:`Optional. Ergänzt Gerätenamen, Szenen, Snapshots und Segmente.`,gsw_conn_apikey_label:`Govee-API-Key`,gsw_conn_rt_title:`Echtzeit-Status (Govee-Konto)`,gsw_conn_rt_desc:`Optional. Aktiviert Live-Status-Push über die Govee-Cloud (AWS IoT).`,gsw_conn_email_label:`Konto-E-Mail`,gsw_conn_password_label:`Konto-Passwort`,gsw_conn_connect_btn:`Verbinden`,gsw_conn_2fa_hint:`Govee hat einen Bestätigungscode per E-Mail geschickt. Zum Abschließen hier eingeben.`,gsw_conn_code_label:`Bestätigungscode`,gsw_conn_request_btn:`Neuen Code anfordern`,gsw_conn_verify_btn:`Code bestätigen`,gsw_conn_st_ok:`Verbunden. Zum dauerhaften Aktivieren die Einstellungen speichern.`,gsw_conn_st_verifyRequired:`Govee benötigt für dieses Gerät einen Bestätigungscode. E-Mail prüfen und Code eingeben.`,gsw_conn_st_codeInvalid:`Der Bestätigungscode ist ungültig. Neuen anfordern und erneut versuchen.`,gsw_conn_st_passwordRejected:`E-Mail oder Passwort wurde abgelehnt. Bitte Zugangsdaten prüfen.`,gsw_conn_st_emailNotRegistered:`Diese E-Mail ist bei Govee nicht registriert.`,gsw_conn_st_rateLimited:`Zu viele Versuche. Bitte etwas warten, bevor du es erneut versuchst.`,gsw_conn_st_accountLocked:`Das Konto ist vorübergehend von Govee gesperrt. Später erneut versuchen.`,gsw_conn_st_loginFailed:`Anmeldung fehlgeschlagen. Bitte erneut versuchen.`,gsw_conn_st_mqttNotUp:`Der Echtzeit-Dienst ist noch nicht bereit. Gleich erneut versuchen.`,gsw_conn_st_codeSent:`Ein neuer Bestätigungscode wurde an deine E-Mail geschickt.`,gsw_conn_st_codeRejected:`Govee hat den Bestätigungscode abgelehnt. Neuen anfordern.`,gsw_conn_st_needCredentials:`Zuerst E-Mail und Passwort eingeben.`,gsw_conn_st_throttled:`Bitte kurz warten, bevor du einen weiteren Code anforderst.`,gsw_conn_st_unknownAction:`Unbekannte Aktion.`,gsw_diagIntro:`Gerät wählen und auf den Knopf drücken: Der Adapter erstellt einen Diagnosebericht, und der Browser legt ihn als Datei ab. Diese Datei an ein GitHub-Issue anhängen — die Formulare fragen genau danach.`,gsw_diagDevice:`Gerät`,gsw_diagExport:`Bericht erstellen und herunterladen`,gsw_diagDone:`Gespeichert als %s.`,gsw_diagOpenIssue:`Issue eröffnen`,gsw_diagNoDevices:`Noch keine Geräte. Der Bericht gilt je Gerät — sobald der Adapter eines gefunden hat, erscheint es hier.`,gsw_diagExportFailed:`Der Bericht konnte nicht erstellt werden. Warum, steht im Adapter-Log.`,gsw_diagPrivacy:`Der Bericht ist anonymisiert: Adressen, E-Mail-Adressen und Gerätenamen werden durch gleichbleibende Marken ersetzt, Gerätekennungen gekürzt, Zugangsdaten tauchen gar nicht auf.`,gsw_loadingDevices:`Geräte werden geladen …`,gsw_loadingDevicesSlow:`Lädt noch — dafür muss die Adapter-Instanz laufen.`,gsw_listFailed:`Die Geräteliste konnte nicht geladen werden. Läuft die Instanz?`,gsw_deviceOption:`%s — bisher %s Segmente`,gsw_expertIntro:`Zwei Werkzeuge für den genaueren Blick. Eines auswählen — die Geräteliste wird dann geladen.`,gsw_expertWizard:`Segment-Erkennung`,gsw_expertDiagnostics:`Diagnose`},h={app:e=>({backgroundColor:e.palette.background.default,color:e.palette.text.primary,height:`100%`}),item:{padding:50,width:600}},g=class extends e{constructor(e){let t={...e};super(e,t),this.state={...this.state,data:{},originalData:{},theme:this.createTheme()},a.extendTranslations(p,`en`),a.extendTranslations(m,`de`);let n=(navigator.language||navigator.userLanguage||`en`).toLowerCase();a.setLanguage(n.substring(0,2))}render(){return this.state.loaded?l(n,{injectFirst:!0,children:l(c,{theme:this.state.theme,children:t(r,{sx:h.app,children:[l(`div`,{style:h.item,children:l(d,{socket:this.socket,namespace:`${this.adapterName}.${this.instance}`,values:{apiKey:String(this.state.data.apiKey??``),email:String(this.state.data.goveeEmail??``),password:String(this.state.data.goveePassword??``),code:String(this.state.data.mqttVerificationCode??``)},onChange:(e,t)=>this.setState({data:{...this.state.data,[e]:t}})})}),l(`div`,{style:h.item,children:l(f,{socket:this.socket,namespace:`${this.adapterName}.${this.instance}`})})]})})}):l(n,{injectFirst:!0,children:l(c,{theme:this.state.theme,children:l(o,{themeType:this.state.themeType})})})}};s(),window.adapterName=`govee-smart`;var _=document.getElementById(`root`);_&&u(_).render(l(i.StrictMode,{children:l(g,{socket:{port:8081}})}));
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import{t as e}from"./virtual_mf-exposes___mfe_internal__ConfigCustomGoveeSegmentSet__customComponents_js-BTQjAeum.js";export{e as default};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{t as e}from"./vite-preload-helper-B7qeedMF.js";import{a as t,r as n}from"./_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__loadShare___mf_0_iobroker_mf_1_json_mf_2_config__loadShare__.js-Bh78u5iG.js";({...t.global});var r=t.share;t.utils,typeof __VUE_HMR_RUNTIME__>`u`&&(globalThis.__VUE_HMR_RUNTIME__={createRecord(){},rerender(){},reload(){}});var i=`__mf_init__virtual:mf:__mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__mf_v__runtimeInit__mf_v__.js__`,a=globalThis[i];if(!a){let e,t,n=new Promise((n,r)=>{e=n,t=r});a=globalThis[i]={initPromise:n,initResolve:e,initReject:t}}var o=a.initResolve,s=`__mf_module_cache__`;globalThis[s]||={share:{},remote:{}},globalThis[s].share||={},globalThis[s].remote||={};var c=globalThis[s];for(let e of Object.keys(c.share))if(e.startsWith(`default:`)){let t=e.slice(8);c.share[t]===void 0&&(c.share[t]=c.share[e])}else if(!e.includes(`:`)){let t=`default:`+e;c.share[t]===void 0&&(c.share[t]=c.share[e])}var l={},u=Array.isArray(`default`)?`default`:[`default`],d=`default`,f=`ConfigCustomGoveeSegmentSet`,p,m;async function h(e){for(let t=0;;t++)try{return await e()}catch(e){throw e}}var g=Symbol(`mf.originalSharedProvider`),_={emit:e=>e},v=(e,t)=>{if(t!==`version-first`)return e;let n={};for(let[t,r]of Object.entries(e))n[t]=Object.assign({},r,{[g]:r});return n},y=(e,t)=>{if(!t)return;let n=Object.entries(e||{}),r=n.find(([,e])=>e===t);if(r)return{version:r[0],provider:t,registered:!0};if(typeof t.version==`string`&&t.version)return{version:t.version,provider:t,registered:!1};let i=n.filter(([,e])=>e===t||!!(t.from&&(e==null?void 0:e.from)===t.from));if(i.length===1)return{version:i[0][0],provider:t,registered:!1}},b=(e,t,n,i)=>{var a;if(!e||!n)return;let o=Array.isArray(n.scope)?n.scope:[n.scope||`default`],s=v(e,i),c={};for(let e of o)c[e||`default`]={[t]:s};let l=(a=r.getRegisteredShare(c,t,{...n,scope:o,strategy:i},_))==null?void 0:a.shared;return(l==null?void 0:l[g])||l},x=(e,t,n,r)=>{var i;let a=e=>S(e,n),o=Object.fromEntries(Object.entries(e||{}).filter(([,e])=>!a(e)));n!=null&&n.version&&((i=n.shareConfig)==null?void 0:i.import)!==!1&&(o[n.version]||(o[n.version]=n));let s=b(o,t,n,r);return a(s)?void 0:s},S=(e,t)=>e===t||!!(t!=null&&t.from&&(e==null?void 0:e.from)===t.from),C=(e,t,n,r,i,a,o,s,c)=>{var l,u;if(c!==`version-first`||!s)return;let d=t==null||(l=t.options)==null||(l=l.shared)==null?void 0:l[i],f=Array.isArray(d)?d.find(e=>(e==null?void 0:e.version)===a):void 0,p=((s==null?void 0:s.from)===(t==null||(u=t.options)==null?void 0:u.name)?s:void 0)||(S(f,s)?f:t?void 0:s);if(p)return e.some(e=>{var i,a;return e!==t&&(e==null||(i=e.options)==null?void 0:i.name)===(o==null?void 0:o.from)&&(e==null||(a=e.shareScopeMap)==null?void 0:a[r])===n})?p:void 0},w=(e,t,n,r,i,a,o,s,c)=>{let l=a.registered?C(e,t,n,r,i,a.version,a.provider,s,c):void 0,u=l||o;if(u&&!(a.registered&&!S(u,s)))return{provider:u,scopeRootProvider:l}};async function T(){return p||=h(()=>e(()=>import(`./_virtual_mf-localSharedImportMap___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1-CdZFIn7L.js`),[],import.meta.url)).catch(e=>{throw p=void 0,e}),p}async function E(){return m||=h(()=>e(()=>import(`./virtualExposes-ChPmNKIy.js`),[],import.meta.url)).then(e=>e.default??e).catch(e=>{throw m=void 0,e}),m}async function D(e={},t=[]){var r,i;let a=(e,t,n,r)=>{let i=(Array.isArray(r)?r[0]:r)||`default`,a=t||!n?e:e+`@`+n,o={canonical:i+`:`+a};return i==="default"&&(o.aliases=[a]),o},s=(e,t)=>{let n=e[t.canonical];if(n!==void 0)return n;let r=t.aliases||[];for(let n of r){if(!Object.prototype.hasOwnProperty.call(e,n))continue;let r=e[n];if(r!==void 0)return e[t.canonical]=r,r}},p=Symbol.for(`module-federation.shared-cache-listeners`),m=Symbol.for(`module-federation.shared-cache-owners`),g=e=>{let t=e[m];return t===void 0&&(t=Object.create(null),Object.defineProperty(e,m,{value:t,enumerable:!1,configurable:!1,writable:!1})),t},_=(e,t)=>{var n;return(n=e[m])==null?void 0:n[t.canonical]},v=(e,t,n,r)=>{var i;e[t.canonical]=n;let a=t.aliases||[];for(let t of a)Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0});let o=e[m];r===void 0?o&&delete o[t.canonical]:g(e)[t.canonical]=r;let s=(i=e[p])==null?void 0:i[t.canonical];if(s)for(let e of s)e(n);return n},C=Symbol.for(`module-federation.tree-shaking-shared-cache`),E=e=>{let t=e[C];return t===void 0&&(t=Object.create(null),Object.defineProperty(e,C,{value:t,enumerable:!1,configurable:!1,writable:!1})),t},D=(e,t,n,r)=>{if(!Array.isArray(n))return r;let i=[...new Set(n)].sort(),a=E(e),o=a[t.canonical]||=[],s=o.find(e=>e.providedExports.length===i.length&&e.providedExports.every((e,t)=>e===i[t]));return s?s.value=r:o.push({providedExports:i,value:r}),r},O=Symbol.for(`module-federation.tree-shaking-shared-selection-cache`),k=e=>{let t=e[O];return t===void 0&&(t=Object.create(null),Object.defineProperty(e,O,{value:t,enumerable:!1,configurable:!1,writable:!1})),t},A=(e,t,n)=>{var r;let i=s(e,t);return i===void 0?(r=e[O])==null||(r=r[t.canonical])==null?void 0:r[n]:i},j=(e,t,n,r)=>{let i=k(e),a=i[t.canonical]||=Object.create(null);return a[n]=r,r},M=((r=globalThis.__FEDERATION__)==null?void 0:r.__INSTANCES__)||[],N=(i=t.find(e=>e==null?void 0:e.from))==null?void 0:i.from,ee=M.find(t=>{var n,r;return(t==null||(n=t.options)==null?void 0:n.name)===N&&(t==null||(r=t.shareScopeMap)==null?void 0:r.default)===e})||M.find(t=>{var n,r;return(t==null||(n=t.options)==null?void 0:n.name)!==f&&(t==null||(r=t.shareScopeMap)==null?void 0:r.default)===e}),P=Object.create(null);for(let[t,n]of Object.entries(e)){let e=P[t]=Object.create(null);for(let[t,r]of Object.entries(n))e[t]=Object.assign({},r)}let{usedShared:F,usedRemotes:I}=await T();var L=l[d];if(L||=l[d]={from:f},t.indexOf(L)>=0)return;t.push(L);let R=e=>{let t=e;for(let e=0;e<5;e++){let e=t==null?void 0:t.default;if(!e||typeof e!=`object`||Object.keys(e).length===0)break;let n=Object.keys(t).filter(e=>e!=="default").map(e=>t[e]);if(n.length>0&&n.some(e=>e!==void 0))break;t=e}return t},z=[],B=globalThis.window===void 0?await Promise.all([]):[],V=`__mf_vite_runtime_share_load_id__`,te=0,H=new Map,U=new Map,W=n({name:f,remotes:I,shared:F,plugins:[ne(),...z,...B],shareStrategy:`version-first`});W.initShareScopeMap(`default`,e);function ne(){return{name:`vite-share-pin-lifecycle-plugin`,resolveShare(e){var t;let n=(t=e.shareInfo)==null?void 0:t[V],r=n===void 0?void 0:U.get(n);if(!r)return e;let i=e.resolver;return e.resolver=(...e)=>(r.pinned.reapply(),i(...e)),r.pinned.reveal(),e}}}let re=W.sharedHandler.hooks.lifecycle.resolveShare,G=new WeakMap;re.on(e=>{var t;let n=(t=e.shareInfo)==null?void 0:t[V],r=e.resolver;return typeof r==`function`&&(e.resolver=(...e)=>{let t=r(...e),i=t==null?void 0:t.shared;return i&&(typeof i==`object`||typeof i==`function`)&&!G.has(i)&&G.set(i,{from:i.from}),n!==void 0&&i&&H.set(n,i),t}),e});let ie=(e,t,n,r)=>{if(!e||e[t]!==n)return;let i=Object.assign({},r,{version:r.version??t,scope:r.scope??(n==null?void 0:n.scope)??[`default`],strategy:`loaded-first`}),a=r.from;e[t]=i;let o=()=>n===void 0?e[t]===void 0:e[t]===n;return{provider:i,reveal(){return e[t]===i&&(n===void 0?delete e[t]:e[t]=n,!0)},reapply(){return o()?(e[t]=i,!0):!1},release(s,c=!0){return r.from=a,e[t]===i?c?s?(i.from=a,s&&i.lib&&(i.loaded=!0),r.strategy===void 0?delete i.strategy:i.strategy=r.strategy,!0):(n===void 0?delete e[t]:e[t]=n,!1):(n===void 0?delete e[t]:e[t]=n,!0):!c&&o()}}},ae=e=>Object.entries(e||{}).map(([e,t])=>({provider:t,version:e,from:t.from,registered:!0})),oe=(e,t)=>{if(t===void 0)return;let n;for(let r of e){let e=r.provider,i=e.treeShaking||e;if(r.loadedFactory===t||e.lib===t||i.lib===t){if(n)return;n=r}}return n},se=async(e,t,n)=>{let r=++te;U.set(r,{pinned:n});try{let n=await W.loadShare(e,{customShareInfo:{shareConfig:t,[V]:r}});return{factory:n===!1?void 0:n,selectedProvider:H.get(r)}}finally{H.delete(r),U.delete(r)}},K=async(e,t,n,r,i,a,o=!0)=>{let s=a.from,c=ie(n,r,i,a);if(!c)return;let l;try{l=await se(e,t,c)}catch(e){throw c.release(!1),e}let u=l==null?void 0:l.factory;if(u===void 0){c.release(!1);return}let d=ae(n),f=c.provider.treeShaking||c.provider,p=c.provider.lib===u||f.lib===u;if(!o&&p){let e=d.findIndex(e=>e.provider===c.provider);e!==-1&&d.splice(e,1)}!o&&!d.some(e=>e.provider===a)&&d.push({provider:a,version:r,from:s,registered:!1,loadedFactory:p?u:void 0});let m=!o&&l.selectedProvider===c.provider&&p?a:l.selectedProvider;if(m&&!d.some(e=>e.provider===m)){let e=G.get(m),t=typeof m.version==`string`&&m.version?m.version:r;d.push({provider:m,version:t,from:e?e.from:m.from,registered:(n==null?void 0:n[t])===m,loadedFactory:u})}let h=d.find(e=>e.provider===m)??oe(d,u);if(!c.release(!0,(h==null?void 0:h.provider)===c.provider)||!h)return;let g=G.get(h.provider);h.from=h.provider===a?s:g?g.from:h.provider.from,g&&(h.provider.from=g.from);let _=typeof u==`function`?u():u,v=await Promise.resolve(_);if(!(h.registered&&(n==null?void 0:n[h.version])!==h.provider))return{provider:h.provider,selection:h,resolved:v}},q=new Set,J=new Map,ce=async(t,n,r)=>{var i;let o=!!((i=n.shareConfig)!=null&&i.singleton);if(!o&&n.canLiveRebind!==!1)try{let i=x(r,t,n,`version-first`),l=y(r,i);if(!l)return;let{version:u}=l;if(!o&&u!==n.version||!i.lib&&!i.loading&&!(i.loaded&&typeof i.get==`function`))return;let d=a(t,o,n.version,n.scope);if(s(c.share,d)!==void 0)return;let f=e[t],p=f==null?void 0:f[u];if(l.registered&&!S(p,i))return;let m,h=i.lib;if(!h&&i.loading&&(h=await i.loading),!h&&i.loaded&&typeof i.get==`function`&&(h=await i.get()),!h)return;let g=typeof h==`function`?h():h,_=await Promise.resolve(g),b=l.registered?p:i;m={provider:b,selection:{provider:b,version:u,from:i.from,registered:l.registered},resolved:_};let C=m==null?void 0:m.provider,w=m==null?void 0:m.selection;if(!w)return;let T=m==null?void 0:m.resolved;if(T===void 0||s(c.share,d)!==void 0||w.registered&&(f==null?void 0:f[w.version])!==C)return;v(c.share,d,R(T),w.from),q.add(C)}catch(e){console.error(`[Module Federation] Failed to bridge materialized shared module "`+t+`"`,e)}},Y=async(t,n,r,i,o)=>{try{var l,u;let d=a(t,(l=n.shareConfig)==null?void 0:l.singleton,n.version,n.scope),p=s(c.share,d),m=_(c.share,d),h=x(r,t,n,`version-first`),g=h||b(r,t,n,`version-first`)||n,C=y(r,g);if(!C)return;let T=S(g,n),{version:E}=C,D=i==null?void 0:i[E],O=w(M,ee,e,`default`,t,C,h,D,`version-first`);if(!O&&!T)return;let{provider:k,scopeRootProvider:A}=O||{provider:g,scopeRootProvider:void 0};if(!((u=n.shareConfig)!=null&&u.singleton)||n.canLiveRebind===!1||p!==void 0&&m!==f)return;let j=e[t],N=j==null?void 0:j[E];if(C.registered&&!A&&!S(N,k))return;let P=await K(t,n.shareConfig,j,E,N,k,C.registered&&!T),F=P==null?void 0:P.provider,I=P==null?void 0:P.selection;if(!I||S(F,n)||o&&(o.version!==I.version||!S({from:I.from},o.provider))||q.has(F))return;let L=P==null?void 0:P.resolved;if(L===void 0)return;let z=s(c.share,d),B=_(c.share,d);if(z!==void 0&&B!==f||I.registered&&(j==null?void 0:j[I.version])!==F)return;o||J.set(t,{version:I.version,provider:{from:I.from}}),q.add(F);let V=R(L);v(c.share,d,V,I.from)}catch(e){console.error(`[Module Federation] Failed to bridge external shared module "`+t+`"`,e)}};for(let[e,t]of Object.entries(F))t.treeShaking||await ce(e,t,P[e]);for(let[e,t]of Object.entries(F)){var X;if(t.treeShaking)continue;let n=a(e,(X=t.shareConfig)==null?void 0:X.singleton,t.version,t.scope);if(s(c.share,n)!==void 0)continue;let r=a(e,!0,t.version,t.scope),i=s(c.share,r);i!==void 0&&v(c.share,n,i,_(c.share,r))}let Z=[`react`,`react/jsx-runtime`,`react-dom`,`react-dom/client`,`@mui/material`,`@mui/icons-material`,`@iobroker/gui-components`,`@iobroker/json-config`].filter(e=>F[e]!==void 0),Q=e=>e.startsWith(`@`)?e.split(`/`).slice(0,2).join(`/`):e.split(`/`)[0];for(let e of Object.keys(F)){if(Z.includes(e))continue;let t=Q(e),n=Z.indexOf(t);if(n===-1){Z.push(e);continue}let r=n;for(;r>0&&Q(Z[r-1])===t&&Z[r-1]!==t;)r--;Z.splice(r,0,e)}var le=async e=>{for(let r of e){var t,n;let e=F[r],i=a(r,(t=e.shareConfig)==null?void 0:t.singleton,e.version,e.scope);if(((n=e.shareConfig)==null?void 0:n.import)===!1||e.treeShaking||s(c.share,i)!==void 0)continue;let o=a(r,!0,e.version,e.scope),l=s(c.share,o);if(l!==void 0){v(c.share,i,l,_(c.share,o));continue}let u=await e.get(),d=typeof u==`function`?u():u,p=await Promise.resolve(d),m=(e=>{let t=e;for(let e=0;e<5;e++){let e=t==null?void 0:t.default;if(!e||typeof e!=`object`||Object.keys(e).length===0)break;let n=Object.keys(t).filter(e=>e!=="default").map(e=>t[e]);if(n.length>0&&n.some(e=>e!==void 0))break;t=e}return t})(p),h=m===p?{...p}:m;h.__esModule!==!0&&Object.defineProperty(h,"__esModule",{value:!0,enumerable:!1}),v(c.share,i,h,f)}};let ue=e=>{var t,n;let r=F[e];if(!r.treeShaking&&((t=r.shareConfig)==null?void 0:t.import)!==!1)return!1;let i=a(e,(n=r.shareConfig)==null?void 0:n.singleton,r.version,r.scope);return r.treeShaking?A(c.share,i,f)===void 0&&s(c.share,i)===void 0:s(c.share,i)===void 0},$=Z.findIndex(e=>{var t,n,r;let i=F[e],o=a(e,(t=i.shareConfig)==null?void 0:t.singleton,i.version,i.scope);return(i.treeShaking?A(c.share,o,f)??s(c.share,o):s(c.share,o))===void 0?i.treeShaking||((n=i.shareConfig)==null?void 0:n.import)===!1?!0:!((r=i.shareConfig)!=null&&r.singleton)||typeof x!=`function`?!1:!!x(P[e],e,i,`version-first`):!1}),de=$===-1?Z:Z.slice(0,$);var fe=$===-1?[]:Z.slice($);await le(de);try{await h(async()=>{await Promise.all(await W.initializeSharing(`default`,{strategy:`version-first`,from:`build`,initScope:t}))})}catch(e){console.error(`[Module Federation]`,e)}for(let[t,n]of Object.entries(F))n.treeShaking||await Y(t,n,e[t],P[t],void 0);try{var pe;let e=(pe=globalThis.__FEDERATION__)==null?void 0:pe.__SHARE__,t=Object.create(null);if(e)for(let[,n]of Object.entries(e))for(let e of u){let r=n==null?void 0:n[e];if(r)for(let[e,n]of Object.entries(r)){let r=F==null?void 0:F[e],i=P[e],a=J.get(e);if(!r||!i||!a||r.treeShaking)continue;let o=t[e]||(t[e]=Object.create(null));for(let[e,t]of Object.entries(n)){if(!t.lib||a.version!==e||!S(t,a.provider))continue;let n=i[e];(t===n||n!=null&&n.from&&t.from===n.from)&&(t===r||r.from&&t.from===r.from||o[e]===void 0&&(o[e]=t))}}}for(let[e,n]of Object.entries(t))await Y(e,F[e],n,P[e],J.get(e))}catch(e){console.error(`[Module Federation] Failed to bridge external shared modules`,e)}let me=async()=>{},he=async(t,n)=>{var r,i;let o=a(t,(r=n.shareConfig)==null?void 0:r.singleton,n.version,n.scope),l=n.treeShaking?A(c.share,o,f):s(c.share,o);if(((i=n.shareConfig)==null?void 0:i.import)!==!1||l!==void 0)return;let u=e=>{let t=e;for(let e=0;e<5;e++){let e=t==null?void 0:t.default;if(!e||typeof e!=`object`||Object.keys(e).length===0)break;let n=Object.keys(t).filter(e=>e!=="default").map(e=>t[e]);if(n.length>0&&n.some(e=>e!==void 0))break;t=e}return t},d=e==null?void 0:e[t],p=b(d,t,n,`version-first`)||n,m=y(d,p);if(!m)return;let{version:h}=m,g=d==null?void 0:d[h],_=await K(t,n.shareConfig,d,h,g,p,m.registered&&!S(p,n)),x=_==null?void 0:_.selection,C=_==null?void 0:_.provider,w=_==null?void 0:_.resolved;if(!x||S(C,n)||w===void 0||(n.treeShaking?A(c.share,o,f):s(c.share,o))!==void 0||x.registered&&(d==null?void 0:d[x.version])!==C)return;let T=u(w);if(n.treeShaking){let e=n.treeShaking.providedExports??n.treeShaking.usedExports??[];D(c.share,o,e,T),j(c.share,o,f,T)}else v(c.share,o,T,x.from)};for(let e of fe){let t=F[e];if(ue(e)){var ge;t.treeShaking?await me(e,t):((ge=t.shareConfig)==null?void 0:ge.import)===!1&&await he(e,t)}if(ue(e))break;await le([e])}return o(W),W}async function O(e){let t=await E();if(!(e in t))throw Error(`[Module Federation] Module ${e} does not exist in container.`);return c.pendingShareLoads&&await Promise.all(c.pendingShareLoads),t[e]().then(e=>()=>e)}export{D as n,O as t};
|
|
1
|
+
import{t as e}from"./vite-preload-helper-B7qeedMF.js";import{a as t,r as n}from"./_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__loadShare___mf_0_iobroker_mf_1_json_mf_2_config__loadShare__.js-Bh78u5iG.js";({...t.global});var r=t.share;t.utils,typeof __VUE_HMR_RUNTIME__>`u`&&(globalThis.__VUE_HMR_RUNTIME__={createRecord(){},rerender(){},reload(){}});var i=`__mf_init__virtual:mf:__mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__mf_v__runtimeInit__mf_v__.js__`,a=globalThis[i];if(!a){let e,t,n=new Promise((n,r)=>{e=n,t=r});a=globalThis[i]={initPromise:n,initResolve:e,initReject:t}}var o=a.initResolve,s=`__mf_module_cache__`;globalThis[s]||={share:{},remote:{}},globalThis[s].share||={},globalThis[s].remote||={};var c=globalThis[s];for(let e of Object.keys(c.share))if(e.startsWith(`default:`)){let t=e.slice(8);c.share[t]===void 0&&(c.share[t]=c.share[e])}else if(!e.includes(`:`)){let t=`default:`+e;c.share[t]===void 0&&(c.share[t]=c.share[e])}var l={},u=Array.isArray(`default`)?`default`:[`default`],d=`default`,f=`ConfigCustomGoveeSegmentSet`,p,m;async function h(e){for(let t=0;;t++)try{return await e()}catch(e){throw e}}var g=Symbol(`mf.originalSharedProvider`),_={emit:e=>e},v=(e,t)=>{if(t!==`version-first`)return e;let n={};for(let[t,r]of Object.entries(e))n[t]=Object.assign({},r,{[g]:r});return n},y=(e,t)=>{if(!t)return;let n=Object.entries(e||{}),r=n.find(([,e])=>e===t);if(r)return{version:r[0],provider:t,registered:!0};if(typeof t.version==`string`&&t.version)return{version:t.version,provider:t,registered:!1};let i=n.filter(([,e])=>e===t||!!(t.from&&(e==null?void 0:e.from)===t.from));if(i.length===1)return{version:i[0][0],provider:t,registered:!1}},b=(e,t,n,i)=>{var a;if(!e||!n)return;let o=Array.isArray(n.scope)?n.scope:[n.scope||`default`],s=v(e,i),c={};for(let e of o)c[e||`default`]={[t]:s};let l=(a=r.getRegisteredShare(c,t,{...n,scope:o,strategy:i},_))==null?void 0:a.shared;return(l==null?void 0:l[g])||l},x=(e,t,n,r)=>{var i;let a=e=>S(e,n),o=Object.fromEntries(Object.entries(e||{}).filter(([,e])=>!a(e)));n!=null&&n.version&&((i=n.shareConfig)==null?void 0:i.import)!==!1&&(o[n.version]||(o[n.version]=n));let s=b(o,t,n,r);return a(s)?void 0:s},S=(e,t)=>e===t||!!(t!=null&&t.from&&(e==null?void 0:e.from)===t.from),C=(e,t,n,r,i,a,o,s,c)=>{var l,u;if(c!==`version-first`||!s)return;let d=t==null||(l=t.options)==null||(l=l.shared)==null?void 0:l[i],f=Array.isArray(d)?d.find(e=>(e==null?void 0:e.version)===a):void 0,p=((s==null?void 0:s.from)===(t==null||(u=t.options)==null?void 0:u.name)?s:void 0)||(S(f,s)?f:t?void 0:s);if(p)return e.some(e=>{var i,a;return e!==t&&(e==null||(i=e.options)==null?void 0:i.name)===(o==null?void 0:o.from)&&(e==null||(a=e.shareScopeMap)==null?void 0:a[r])===n})?p:void 0},w=(e,t,n,r,i,a,o,s,c)=>{let l=a.registered?C(e,t,n,r,i,a.version,a.provider,s,c):void 0,u=l||o;if(u&&!(a.registered&&!S(u,s)))return{provider:u,scopeRootProvider:l}};async function T(){return p||=h(()=>e(()=>import(`./_virtual_mf-localSharedImportMap___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1-CdZFIn7L.js`),[],import.meta.url)).catch(e=>{throw p=void 0,e}),p}async function E(){return m||=h(()=>e(()=>import(`./virtualExposes-xZDfNTio.js`),[],import.meta.url)).then(e=>e.default??e).catch(e=>{throw m=void 0,e}),m}async function D(e={},t=[]){var r,i;let a=(e,t,n,r)=>{let i=(Array.isArray(r)?r[0]:r)||`default`,a=t||!n?e:e+`@`+n,o={canonical:i+`:`+a};return i==="default"&&(o.aliases=[a]),o},s=(e,t)=>{let n=e[t.canonical];if(n!==void 0)return n;let r=t.aliases||[];for(let n of r){if(!Object.prototype.hasOwnProperty.call(e,n))continue;let r=e[n];if(r!==void 0)return e[t.canonical]=r,r}},p=Symbol.for(`module-federation.shared-cache-listeners`),m=Symbol.for(`module-federation.shared-cache-owners`),g=e=>{let t=e[m];return t===void 0&&(t=Object.create(null),Object.defineProperty(e,m,{value:t,enumerable:!1,configurable:!1,writable:!1})),t},_=(e,t)=>{var n;return(n=e[m])==null?void 0:n[t.canonical]},v=(e,t,n,r)=>{var i;e[t.canonical]=n;let a=t.aliases||[];for(let t of a)Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0});let o=e[m];r===void 0?o&&delete o[t.canonical]:g(e)[t.canonical]=r;let s=(i=e[p])==null?void 0:i[t.canonical];if(s)for(let e of s)e(n);return n},C=Symbol.for(`module-federation.tree-shaking-shared-cache`),E=e=>{let t=e[C];return t===void 0&&(t=Object.create(null),Object.defineProperty(e,C,{value:t,enumerable:!1,configurable:!1,writable:!1})),t},D=(e,t,n,r)=>{if(!Array.isArray(n))return r;let i=[...new Set(n)].sort(),a=E(e),o=a[t.canonical]||=[],s=o.find(e=>e.providedExports.length===i.length&&e.providedExports.every((e,t)=>e===i[t]));return s?s.value=r:o.push({providedExports:i,value:r}),r},O=Symbol.for(`module-federation.tree-shaking-shared-selection-cache`),k=e=>{let t=e[O];return t===void 0&&(t=Object.create(null),Object.defineProperty(e,O,{value:t,enumerable:!1,configurable:!1,writable:!1})),t},A=(e,t,n)=>{var r;let i=s(e,t);return i===void 0?(r=e[O])==null||(r=r[t.canonical])==null?void 0:r[n]:i},j=(e,t,n,r)=>{let i=k(e),a=i[t.canonical]||=Object.create(null);return a[n]=r,r},M=((r=globalThis.__FEDERATION__)==null?void 0:r.__INSTANCES__)||[],N=(i=t.find(e=>e==null?void 0:e.from))==null?void 0:i.from,ee=M.find(t=>{var n,r;return(t==null||(n=t.options)==null?void 0:n.name)===N&&(t==null||(r=t.shareScopeMap)==null?void 0:r.default)===e})||M.find(t=>{var n,r;return(t==null||(n=t.options)==null?void 0:n.name)!==f&&(t==null||(r=t.shareScopeMap)==null?void 0:r.default)===e}),P=Object.create(null);for(let[t,n]of Object.entries(e)){let e=P[t]=Object.create(null);for(let[t,r]of Object.entries(n))e[t]=Object.assign({},r)}let{usedShared:F,usedRemotes:I}=await T();var L=l[d];if(L||=l[d]={from:f},t.indexOf(L)>=0)return;t.push(L);let R=e=>{let t=e;for(let e=0;e<5;e++){let e=t==null?void 0:t.default;if(!e||typeof e!=`object`||Object.keys(e).length===0)break;let n=Object.keys(t).filter(e=>e!=="default").map(e=>t[e]);if(n.length>0&&n.some(e=>e!==void 0))break;t=e}return t},z=[],B=globalThis.window===void 0?await Promise.all([]):[],V=`__mf_vite_runtime_share_load_id__`,te=0,H=new Map,U=new Map,W=n({name:f,remotes:I,shared:F,plugins:[ne(),...z,...B],shareStrategy:`version-first`});W.initShareScopeMap(`default`,e);function ne(){return{name:`vite-share-pin-lifecycle-plugin`,resolveShare(e){var t;let n=(t=e.shareInfo)==null?void 0:t[V],r=n===void 0?void 0:U.get(n);if(!r)return e;let i=e.resolver;return e.resolver=(...e)=>(r.pinned.reapply(),i(...e)),r.pinned.reveal(),e}}}let re=W.sharedHandler.hooks.lifecycle.resolveShare,G=new WeakMap;re.on(e=>{var t;let n=(t=e.shareInfo)==null?void 0:t[V],r=e.resolver;return typeof r==`function`&&(e.resolver=(...e)=>{let t=r(...e),i=t==null?void 0:t.shared;return i&&(typeof i==`object`||typeof i==`function`)&&!G.has(i)&&G.set(i,{from:i.from}),n!==void 0&&i&&H.set(n,i),t}),e});let ie=(e,t,n,r)=>{if(!e||e[t]!==n)return;let i=Object.assign({},r,{version:r.version??t,scope:r.scope??(n==null?void 0:n.scope)??[`default`],strategy:`loaded-first`}),a=r.from;e[t]=i;let o=()=>n===void 0?e[t]===void 0:e[t]===n;return{provider:i,reveal(){return e[t]===i&&(n===void 0?delete e[t]:e[t]=n,!0)},reapply(){return o()?(e[t]=i,!0):!1},release(s,c=!0){return r.from=a,e[t]===i?c?s?(i.from=a,s&&i.lib&&(i.loaded=!0),r.strategy===void 0?delete i.strategy:i.strategy=r.strategy,!0):(n===void 0?delete e[t]:e[t]=n,!1):(n===void 0?delete e[t]:e[t]=n,!0):!c&&o()}}},ae=e=>Object.entries(e||{}).map(([e,t])=>({provider:t,version:e,from:t.from,registered:!0})),oe=(e,t)=>{if(t===void 0)return;let n;for(let r of e){let e=r.provider,i=e.treeShaking||e;if(r.loadedFactory===t||e.lib===t||i.lib===t){if(n)return;n=r}}return n},se=async(e,t,n)=>{let r=++te;U.set(r,{pinned:n});try{let n=await W.loadShare(e,{customShareInfo:{shareConfig:t,[V]:r}});return{factory:n===!1?void 0:n,selectedProvider:H.get(r)}}finally{H.delete(r),U.delete(r)}},K=async(e,t,n,r,i,a,o=!0)=>{let s=a.from,c=ie(n,r,i,a);if(!c)return;let l;try{l=await se(e,t,c)}catch(e){throw c.release(!1),e}let u=l==null?void 0:l.factory;if(u===void 0){c.release(!1);return}let d=ae(n),f=c.provider.treeShaking||c.provider,p=c.provider.lib===u||f.lib===u;if(!o&&p){let e=d.findIndex(e=>e.provider===c.provider);e!==-1&&d.splice(e,1)}!o&&!d.some(e=>e.provider===a)&&d.push({provider:a,version:r,from:s,registered:!1,loadedFactory:p?u:void 0});let m=!o&&l.selectedProvider===c.provider&&p?a:l.selectedProvider;if(m&&!d.some(e=>e.provider===m)){let e=G.get(m),t=typeof m.version==`string`&&m.version?m.version:r;d.push({provider:m,version:t,from:e?e.from:m.from,registered:(n==null?void 0:n[t])===m,loadedFactory:u})}let h=d.find(e=>e.provider===m)??oe(d,u);if(!c.release(!0,(h==null?void 0:h.provider)===c.provider)||!h)return;let g=G.get(h.provider);h.from=h.provider===a?s:g?g.from:h.provider.from,g&&(h.provider.from=g.from);let _=typeof u==`function`?u():u,v=await Promise.resolve(_);if(!(h.registered&&(n==null?void 0:n[h.version])!==h.provider))return{provider:h.provider,selection:h,resolved:v}},q=new Set,J=new Map,ce=async(t,n,r)=>{var i;let o=!!((i=n.shareConfig)!=null&&i.singleton);if(!o&&n.canLiveRebind!==!1)try{let i=x(r,t,n,`version-first`),l=y(r,i);if(!l)return;let{version:u}=l;if(!o&&u!==n.version||!i.lib&&!i.loading&&!(i.loaded&&typeof i.get==`function`))return;let d=a(t,o,n.version,n.scope);if(s(c.share,d)!==void 0)return;let f=e[t],p=f==null?void 0:f[u];if(l.registered&&!S(p,i))return;let m,h=i.lib;if(!h&&i.loading&&(h=await i.loading),!h&&i.loaded&&typeof i.get==`function`&&(h=await i.get()),!h)return;let g=typeof h==`function`?h():h,_=await Promise.resolve(g),b=l.registered?p:i;m={provider:b,selection:{provider:b,version:u,from:i.from,registered:l.registered},resolved:_};let C=m==null?void 0:m.provider,w=m==null?void 0:m.selection;if(!w)return;let T=m==null?void 0:m.resolved;if(T===void 0||s(c.share,d)!==void 0||w.registered&&(f==null?void 0:f[w.version])!==C)return;v(c.share,d,R(T),w.from),q.add(C)}catch(e){console.error(`[Module Federation] Failed to bridge materialized shared module "`+t+`"`,e)}},Y=async(t,n,r,i,o)=>{try{var l,u;let d=a(t,(l=n.shareConfig)==null?void 0:l.singleton,n.version,n.scope),p=s(c.share,d),m=_(c.share,d),h=x(r,t,n,`version-first`),g=h||b(r,t,n,`version-first`)||n,C=y(r,g);if(!C)return;let T=S(g,n),{version:E}=C,D=i==null?void 0:i[E],O=w(M,ee,e,`default`,t,C,h,D,`version-first`);if(!O&&!T)return;let{provider:k,scopeRootProvider:A}=O||{provider:g,scopeRootProvider:void 0};if(!((u=n.shareConfig)!=null&&u.singleton)||n.canLiveRebind===!1||p!==void 0&&m!==f)return;let j=e[t],N=j==null?void 0:j[E];if(C.registered&&!A&&!S(N,k))return;let P=await K(t,n.shareConfig,j,E,N,k,C.registered&&!T),F=P==null?void 0:P.provider,I=P==null?void 0:P.selection;if(!I||S(F,n)||o&&(o.version!==I.version||!S({from:I.from},o.provider))||q.has(F))return;let L=P==null?void 0:P.resolved;if(L===void 0)return;let z=s(c.share,d),B=_(c.share,d);if(z!==void 0&&B!==f||I.registered&&(j==null?void 0:j[I.version])!==F)return;o||J.set(t,{version:I.version,provider:{from:I.from}}),q.add(F);let V=R(L);v(c.share,d,V,I.from)}catch(e){console.error(`[Module Federation] Failed to bridge external shared module "`+t+`"`,e)}};for(let[e,t]of Object.entries(F))t.treeShaking||await ce(e,t,P[e]);for(let[e,t]of Object.entries(F)){var X;if(t.treeShaking)continue;let n=a(e,(X=t.shareConfig)==null?void 0:X.singleton,t.version,t.scope);if(s(c.share,n)!==void 0)continue;let r=a(e,!0,t.version,t.scope),i=s(c.share,r);i!==void 0&&v(c.share,n,i,_(c.share,r))}let Z=[`react`,`react/jsx-runtime`,`react-dom`,`react-dom/client`,`@mui/material`,`@mui/icons-material`,`@iobroker/gui-components`,`@iobroker/json-config`].filter(e=>F[e]!==void 0),Q=e=>e.startsWith(`@`)?e.split(`/`).slice(0,2).join(`/`):e.split(`/`)[0];for(let e of Object.keys(F)){if(Z.includes(e))continue;let t=Q(e),n=Z.indexOf(t);if(n===-1){Z.push(e);continue}let r=n;for(;r>0&&Q(Z[r-1])===t&&Z[r-1]!==t;)r--;Z.splice(r,0,e)}var le=async e=>{for(let r of e){var t,n;let e=F[r],i=a(r,(t=e.shareConfig)==null?void 0:t.singleton,e.version,e.scope);if(((n=e.shareConfig)==null?void 0:n.import)===!1||e.treeShaking||s(c.share,i)!==void 0)continue;let o=a(r,!0,e.version,e.scope),l=s(c.share,o);if(l!==void 0){v(c.share,i,l,_(c.share,o));continue}let u=await e.get(),d=typeof u==`function`?u():u,p=await Promise.resolve(d),m=(e=>{let t=e;for(let e=0;e<5;e++){let e=t==null?void 0:t.default;if(!e||typeof e!=`object`||Object.keys(e).length===0)break;let n=Object.keys(t).filter(e=>e!=="default").map(e=>t[e]);if(n.length>0&&n.some(e=>e!==void 0))break;t=e}return t})(p),h=m===p?{...p}:m;h.__esModule!==!0&&Object.defineProperty(h,"__esModule",{value:!0,enumerable:!1}),v(c.share,i,h,f)}};let ue=e=>{var t,n;let r=F[e];if(!r.treeShaking&&((t=r.shareConfig)==null?void 0:t.import)!==!1)return!1;let i=a(e,(n=r.shareConfig)==null?void 0:n.singleton,r.version,r.scope);return r.treeShaking?A(c.share,i,f)===void 0&&s(c.share,i)===void 0:s(c.share,i)===void 0},$=Z.findIndex(e=>{var t,n,r;let i=F[e],o=a(e,(t=i.shareConfig)==null?void 0:t.singleton,i.version,i.scope);return(i.treeShaking?A(c.share,o,f)??s(c.share,o):s(c.share,o))===void 0?i.treeShaking||((n=i.shareConfig)==null?void 0:n.import)===!1?!0:!((r=i.shareConfig)!=null&&r.singleton)||typeof x!=`function`?!1:!!x(P[e],e,i,`version-first`):!1}),de=$===-1?Z:Z.slice(0,$);var fe=$===-1?[]:Z.slice($);await le(de);try{await h(async()=>{await Promise.all(await W.initializeSharing(`default`,{strategy:`version-first`,from:`build`,initScope:t}))})}catch(e){console.error(`[Module Federation]`,e)}for(let[t,n]of Object.entries(F))n.treeShaking||await Y(t,n,e[t],P[t],void 0);try{var pe;let e=(pe=globalThis.__FEDERATION__)==null?void 0:pe.__SHARE__,t=Object.create(null);if(e)for(let[,n]of Object.entries(e))for(let e of u){let r=n==null?void 0:n[e];if(r)for(let[e,n]of Object.entries(r)){let r=F==null?void 0:F[e],i=P[e],a=J.get(e);if(!r||!i||!a||r.treeShaking)continue;let o=t[e]||(t[e]=Object.create(null));for(let[e,t]of Object.entries(n)){if(!t.lib||a.version!==e||!S(t,a.provider))continue;let n=i[e];(t===n||n!=null&&n.from&&t.from===n.from)&&(t===r||r.from&&t.from===r.from||o[e]===void 0&&(o[e]=t))}}}for(let[e,n]of Object.entries(t))await Y(e,F[e],n,P[e],J.get(e))}catch(e){console.error(`[Module Federation] Failed to bridge external shared modules`,e)}let me=async()=>{},he=async(t,n)=>{var r,i;let o=a(t,(r=n.shareConfig)==null?void 0:r.singleton,n.version,n.scope),l=n.treeShaking?A(c.share,o,f):s(c.share,o);if(((i=n.shareConfig)==null?void 0:i.import)!==!1||l!==void 0)return;let u=e=>{let t=e;for(let e=0;e<5;e++){let e=t==null?void 0:t.default;if(!e||typeof e!=`object`||Object.keys(e).length===0)break;let n=Object.keys(t).filter(e=>e!=="default").map(e=>t[e]);if(n.length>0&&n.some(e=>e!==void 0))break;t=e}return t},d=e==null?void 0:e[t],p=b(d,t,n,`version-first`)||n,m=y(d,p);if(!m)return;let{version:h}=m,g=d==null?void 0:d[h],_=await K(t,n.shareConfig,d,h,g,p,m.registered&&!S(p,n)),x=_==null?void 0:_.selection,C=_==null?void 0:_.provider,w=_==null?void 0:_.resolved;if(!x||S(C,n)||w===void 0||(n.treeShaking?A(c.share,o,f):s(c.share,o))!==void 0||x.registered&&(d==null?void 0:d[x.version])!==C)return;let T=u(w);if(n.treeShaking){let e=n.treeShaking.providedExports??n.treeShaking.usedExports??[];D(c.share,o,e,T),j(c.share,o,f,T)}else v(c.share,o,T,x.from)};for(let e of fe){let t=F[e];if(ue(e)){var ge;t.treeShaking?await me(e,t):((ge=t.shareConfig)==null?void 0:ge.import)===!1&&await he(e,t)}if(ue(e))break;await le([e])}return o(W),W}async function O(e){let t=await E();if(!(e in t))throw Error(`[Module Federation] Module ${e} does not exist in container.`);return c.pendingShareLoads&&await Promise.all(c.pendingShareLoads),t[e]().then(e=>()=>e)}export{D as n,O as t};
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./Components-D2JDvhVv.js","./ExpertPanel-8SGMG-w3.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{t as e}from"./vite-preload-helper-B7qeedMF.js";var t={"./Components":async()=>{let t=await e(()=>import(`./Components-D2JDvhVv.js`),__vite__mapDeps([0,1]),import.meta.url),n={};return Object.assign(n,t),Object.defineProperty(n,"__esModule",{value:!0,enumerable:!1}),n}};export{t as default};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./Components-
|
|
2
|
-
import{t as e}from"./vite-preload-helper-B7qeedMF.js";var t={},n=new Set,r=Promise.resolve();async function i(e){let t=r.then(e,e);return r=t.then(()=>void 0,()=>void 0),t}async function a(e){if(typeof document>`u`)return;let r=t[e]||[];await Promise.all(r.map(e=>{let t=new URL(e,import.meta.url).href;return n.has(t)||(n.add(t),document.querySelector(`link[rel="stylesheet"][href="${t}"]`))?Promise.resolve():new Promise((e,n)=>{let r=document.createElement(`link`);r.rel=`stylesheet`,r.href=t,r.onload=()=>e(),r.onerror=()=>n(Error(`[Module Federation] Failed to load CSS asset: ${t}`)),document.head.appendChild(r)})}))}var o={"./Components":async()=>{await a(`./Components`),await Promise.all([]);let t=await i(()=>e(()=>import(`./Components-
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./Components-D2JDvhVv.js","./ExpertPanel-8SGMG-w3.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{t as e}from"./vite-preload-helper-B7qeedMF.js";var t={},n=new Set,r=Promise.resolve();async function i(e){let t=r.then(e,e);return r=t.then(()=>void 0,()=>void 0),t}async function a(e){if(typeof document>`u`)return;let r=t[e]||[];await Promise.all(r.map(e=>{let t=new URL(e,import.meta.url).href;return n.has(t)||(n.add(t),document.querySelector(`link[rel="stylesheet"][href="${t}"]`))?Promise.resolve():new Promise((e,n)=>{let r=document.createElement(`link`);r.rel=`stylesheet`,r.href=t,r.onload=()=>e(),r.onerror=()=>n(Error(`[Module Federation] Failed to load CSS asset: ${t}`)),document.head.appendChild(r)})}))}var o={"./Components":async()=>{await a(`./Components`),await Promise.all([]);let t=await i(()=>e(()=>import(`./Components-D2JDvhVv.js`),__vite__mapDeps([0,1]),import.meta.url)),n=t&&t.__mf_remote_dependency_pending;n&&typeof n.then==`function`&&await n;let r={};return Object.assign(r,t),Object.defineProperty(r,"__esModule",{value:!0,enumerable:!1}),r}};export{o as t};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{n as e,t}from"./assets/virtual_mf-REMOTE_ENTRY_ID___mfe_internal__ConfigCustomGoveeSegmentSet__customComponents_js-
|
|
1
|
+
import{n as e,t}from"./assets/virtual_mf-REMOTE_ENTRY_ID___mfe_internal__ConfigCustomGoveeSegmentSet__customComponents_js-_JizGQ-w.js";export{t as get,e as init};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"id":"ConfigCustomGoveeSegmentSet","name":"ConfigCustomGoveeSegmentSet","metaData":{"name":"ConfigCustomGoveeSegmentSet","type":"app","buildInfo":{"buildVersion":"1.0.0","buildName":"ConfigCustomGoveeSegmentSet"},"remoteEntry":{"name":"customComponents.js","path":"","type":"module"},"ssrRemoteEntry":{"name":"customComponents.ssr.js","path":"","type":"module"},"types":{"path":"","name":"","zip":"@mf-types.zip","api":"@mf-types.d.ts"},"globalName":"ConfigCustomGoveeSegmentSet","pluginVersion":"0.2.5","publicPath":"auto"},"shared":[{"id":"ConfigCustomGoveeSegmentSet:@iobroker/gui-components","name":"@iobroker/gui-components","version":"10.0.12","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__prebuild___mf_0_iobroker_mf_1_gui_mf_2_components__prebuild__-DXxYvebj.js"]},"css":{"async":[],"sync":[]}}},{"id":"ConfigCustomGoveeSegmentSet:@iobroker/json-config","name":"@iobroker/json-config","version":"9.0.16","singleton":true,"requiredVersion":"*","assets":{"js":{"async":["assets/lib-D_TOKWDo.js"],"sync":["assets/_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__loadShare___mf_0_iobroker_mf_1_json_mf_2_config__loadShare__.js-Bh78u5iG.js"]},"css":{"async":[],"sync":[]}}},{"id":"ConfigCustomGoveeSegmentSet:@mui/icons-material","name":"@mui/icons-material","version":"9.2.0","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-BqaV2gc_.js"]},"css":{"async":[],"sync":[]}}},{"id":"ConfigCustomGoveeSegmentSet:@mui/material","name":"@mui/material","version":"9.2.0","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-BqaV2gc_.js"]},"css":{"async":[],"sync":[]}}},{"id":"ConfigCustomGoveeSegmentSet:react","name":"react","version":"19.2.8","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-BqaV2gc_.js"]},"css":{"async":[],"sync":[]}}},{"id":"ConfigCustomGoveeSegmentSet:react-dom","name":"react-dom","version":"19.2.8","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-BqaV2gc_.js"]},"css":{"async":[],"sync":[]}}},{"id":"ConfigCustomGoveeSegmentSet:react/jsx-runtime","name":"react/jsx-runtime","version":"19.2.8","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-BqaV2gc_.js"]},"css":{"async":[],"sync":[]}}},{"id":"ConfigCustomGoveeSegmentSet:react-dom/client","name":"react-dom/client","version":"19.2.8","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__loadShare__react_mf_2_dom_mf_1_client__loadShare__.js-ld5_knuQ.js"]},"css":{"async":[],"sync":[]}}}],"remotes":[],"exposes":[{"id":"ConfigCustomGoveeSegmentSet:Components","name":"Components","assets":{"js":{"async":["assets/lib-D_TOKWDo.js"],"sync":["assets/Components-
|
|
1
|
+
{"id":"ConfigCustomGoveeSegmentSet","name":"ConfigCustomGoveeSegmentSet","metaData":{"name":"ConfigCustomGoveeSegmentSet","type":"app","buildInfo":{"buildVersion":"1.0.0","buildName":"ConfigCustomGoveeSegmentSet"},"remoteEntry":{"name":"customComponents.js","path":"","type":"module"},"ssrRemoteEntry":{"name":"customComponents.ssr.js","path":"","type":"module"},"types":{"path":"","name":"","zip":"@mf-types.zip","api":"@mf-types.d.ts"},"globalName":"ConfigCustomGoveeSegmentSet","pluginVersion":"0.2.5","publicPath":"auto"},"shared":[{"id":"ConfigCustomGoveeSegmentSet:@iobroker/gui-components","name":"@iobroker/gui-components","version":"10.0.12","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__prebuild___mf_0_iobroker_mf_1_gui_mf_2_components__prebuild__-DXxYvebj.js"]},"css":{"async":[],"sync":[]}}},{"id":"ConfigCustomGoveeSegmentSet:@iobroker/json-config","name":"@iobroker/json-config","version":"9.0.16","singleton":true,"requiredVersion":"*","assets":{"js":{"async":["assets/lib-D_TOKWDo.js"],"sync":["assets/_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__loadShare___mf_0_iobroker_mf_1_json_mf_2_config__loadShare__.js-Bh78u5iG.js"]},"css":{"async":[],"sync":[]}}},{"id":"ConfigCustomGoveeSegmentSet:@mui/icons-material","name":"@mui/icons-material","version":"9.2.0","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-BqaV2gc_.js"]},"css":{"async":[],"sync":[]}}},{"id":"ConfigCustomGoveeSegmentSet:@mui/material","name":"@mui/material","version":"9.2.0","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-BqaV2gc_.js"]},"css":{"async":[],"sync":[]}}},{"id":"ConfigCustomGoveeSegmentSet:react","name":"react","version":"19.2.8","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-BqaV2gc_.js"]},"css":{"async":[],"sync":[]}}},{"id":"ConfigCustomGoveeSegmentSet:react-dom","name":"react-dom","version":"19.2.8","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-BqaV2gc_.js"]},"css":{"async":[],"sync":[]}}},{"id":"ConfigCustomGoveeSegmentSet:react/jsx-runtime","name":"react/jsx-runtime","version":"19.2.8","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__loadShare___mf_0_iobroker_mf_1_gui_mf_2_components__loadShare__.js-BqaV2gc_.js"]},"css":{"async":[],"sync":[]}}},{"id":"ConfigCustomGoveeSegmentSet:react-dom/client","name":"react-dom/client","version":"19.2.8","singleton":true,"requiredVersion":"*","assets":{"js":{"async":[],"sync":["assets/_virtual_mf___mfe_internal__ConfigCustomGoveeSegmentSet__mf_owner__1__loadShare__react_mf_2_dom_mf_1_client__loadShare__.js-ld5_knuQ.js"]},"css":{"async":[],"sync":[]}}}],"remotes":[],"exposes":[{"id":"ConfigCustomGoveeSegmentSet:Components","name":"Components","assets":{"js":{"async":["assets/lib-D_TOKWDo.js"],"sync":["assets/Components-D2JDvhVv.js"]},"css":{"async":[],"sync":[]}},"path":"./Components"}]}
|
package/admin/jsonConfig.json
CHANGED
package/io-package.json
CHANGED
|
@@ -1,8 +1,21 @@
|
|
|
1
1
|
{
|
|
2
2
|
"common": {
|
|
3
3
|
"name": "govee-smart",
|
|
4
|
-
"version": "2.37.
|
|
4
|
+
"version": "2.37.1",
|
|
5
5
|
"news": {
|
|
6
|
+
"2.37.1": {
|
|
7
|
+
"en": "The instance settings open on the Configuration tab again also when the admin keeps its settings on the server — 2.37.0 covered the browser storage only, so every open still landed on Expert.",
|
|
8
|
+
"de": "Die Instanz-Einstellungen öffnen auch dann wieder auf Konfiguration, wenn die Admin ihre Einstellungen am Server ablegt — 2.37.0 deckte nur den Browser-Speicher ab, jedes Öffnen landete auf Experte.",
|
|
9
|
+
"ru": "Настройки экземпляра снова открываются на «Конфигурации», даже если админ хранит свои настройки на сервере — 2.37.0 учитывала только хранилище браузера, и открытие всё ещё вело на «Эксперт».",
|
|
10
|
+
"pt": "As definições da instância abrem de novo em Configuração também quando o admin guarda as suas definições no servidor — a 2.37.0 só cobria o armazenamento do browser e cada abertura ia parar a Perito.",
|
|
11
|
+
"nl": "De instantie-instellingen openen weer op Configuratie, ook als de admin zijn instellingen op de server bewaart — 2.37.0 dekte alleen de browseropslag, elke keer openen kwam nog op Expert uit.",
|
|
12
|
+
"fr": "Les réglages de l'instance s'ouvrent sur Configuration même si l'admin garde ses réglages sur le serveur — 2.37.0 ne couvrait que le stockage du navigateur, chaque ouverture retombait sur Expert.",
|
|
13
|
+
"it": "Le impostazioni dell'istanza si aprono di nuovo su Configurazione anche se l'admin conserva le impostazioni sul server — 2.37.0 copriva solo la memoria del browser, ogni apertura finiva su Esperto.",
|
|
14
|
+
"es": "Los ajustes de la instancia vuelven a abrirse en Configuración cuando el admin guarda sus ajustes en el servidor — 2.37.0 solo cubría el almacenamiento del navegador y cada apertura caía en Experto.",
|
|
15
|
+
"pl": "Ustawienia instancji znów otwierają się na Konfiguracji także wtedy, gdy admin przechowuje ustawienia na serwerze — 2.37.0 obejmowała tylko pamięć przeglądarki, każde otwarcie lądowało na Ekspercie.",
|
|
16
|
+
"uk": "Налаштування екземпляра знову відкриваються на «Конфігурації», навіть якщо адмін зберігає налаштування на сервері — 2.37.0 охоплювала лише сховище браузера, кожне відкриття потрапляло на «Експерт».",
|
|
17
|
+
"zh-cn": "即使管理界面将其设置保存在服务器上,实例设置也会再次在“配置”页打开——2.37.0 只处理了浏览器存储,因此每次打开仍停在“专家”页。"
|
|
18
|
+
},
|
|
6
19
|
"2.37.0": {
|
|
7
20
|
"en": "The root folders snapshots and diagnostics are gone, the settings open on Configuration again, icons show on dark themes, and the admin warns when another adapter takes LAN port 4002.",
|
|
8
21
|
"de": "Root-Ordner snapshots und diagnostics sind weg, Einstellungen öffnen wieder auf Konfiguration, Symbole sichtbar auf dunklen Themen, die Admin warnt, wenn ein anderer Adapter LAN-Port 4002 belegt.",
|
|
@@ -80,19 +93,6 @@
|
|
|
80
93
|
"pl": "Oczyszczacze, grzejniki, nawilżacze i wentylatory znów przyjmują tryb i bieg oraz pokazują prawdziwe stopnie, temperatura grzejnika wychodzi poprawnie, a konto bez lamp odczytuje swoje stany.",
|
|
81
94
|
"uk": "Очищувачі, обігрівачі, зволожувачі та вентилятори знову приймають режим і швидкість та показують справжні ступені, температура обігрівача йде правильно, обліковий запис без ламп читає свої стани.",
|
|
82
95
|
"zh-cn": "空气净化器、取暖器、加湿器和风扇重新接受模式与档位设置,并显示设备真实的档位列表;取暖器目标温度以正确格式和单位发送;账户中没有灯具时也会读取设备状态。"
|
|
83
|
-
},
|
|
84
|
-
"2.33.0": {
|
|
85
|
-
"en": "Lights without a local API stay reachable while they report their own state (H600D). 486 more Govee models start as experimental, and the wiki device list folds per device type.",
|
|
86
|
-
"de": "Lampen ohne lokale Schnittstelle bleiben erreichbar, solange sie ihren Zustand selbst melden (H600D). 486 weitere Govee-Modelle starten experimentell, die Wiki-Geräteliste klappt je Typ.",
|
|
87
|
-
"ru": "Светильники без локального API остаются доступными, пока сами сообщают своё состояние (H600D). Ещё 486 моделей Govee добавлены как экспериментальные, список в wiki свёрнут по типам.",
|
|
88
|
-
"pt": "Luzes sem API local continuam acessíveis enquanto informam o próprio estado (H600D). Mais 486 modelos Govee começam como experimentais e a lista de dispositivos da wiki é dobrada por tipo.",
|
|
89
|
-
"nl": "Lampen zonder lokale API blijven bereikbaar zolang ze hun eigen status melden (H600D). 486 extra Govee-modellen starten als experimenteel, de wiki-apparatenlijst klapt per type in.",
|
|
90
|
-
"fr": "Les lampes sans API locale restent joignables tant qu'elles signalent elles-mêmes leur état (H600D). 486 modèles Govee de plus démarrent en expérimental, la liste wiki se replie par type.",
|
|
91
|
-
"it": "Le luci senza API locale restano raggiungibili finché comunicano da sole il proprio stato (H600D). Altri 486 modelli Govee partono come sperimentali, l'elenco wiki si ripiega per tipo.",
|
|
92
|
-
"es": "Las luces sin API local siguen accesibles mientras informan su propio estado (H600D). 486 modelos Govee más empiezan como experimentales y la lista de dispositivos de la wiki se pliega por tipo.",
|
|
93
|
-
"pl": "Lampy bez lokalnego API pozostają osiągalne, dopóki same zgłaszają swój stan (H600D). 486 kolejnych modeli Govee startuje jako eksperymentalne, lista urządzeń w wiki zwija się według typu.",
|
|
94
|
-
"uk": "Світильники без локального API залишаються доступними, поки самі повідомляють свій стан (H600D). Ще 486 моделей Govee додано як експериментальні, список у wiki згорнуто за типами.",
|
|
95
|
-
"zh-cn": "没有本地 API 的灯具在自行上报状态时保持可达(H600D)。新增 486 个 Govee 型号作为实验性支持,wiki 设备列表按设备类型折叠。"
|
|
96
96
|
}
|
|
97
97
|
},
|
|
98
98
|
"plugins": {
|
package/package.json
CHANGED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{t as e}from"./virtual_mf-exposes___mfe_internal__ConfigCustomGoveeSegmentSet__customComponents_js-BjyhzC0c.js";export{e as default};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./Components-DWq4U-Jh.js","./ExpertPanel-DoLtERNi.js"])))=>i.map(i=>d[i]);
|
|
2
|
-
import{t as e}from"./vite-preload-helper-B7qeedMF.js";var t={"./Components":async()=>{let t=await e(()=>import(`./Components-DWq4U-Jh.js`),__vite__mapDeps([0,1]),import.meta.url),n={};return Object.assign(n,t),Object.defineProperty(n,"__esModule",{value:!0,enumerable:!1}),n}};export{t as default};
|