@riddix/hamh 2.1.0-alpha.673 → 2.1.0-alpha.674

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.
@@ -146128,6 +146128,7 @@ var init_clusters2 = __esm({
146128
146128
  ClusterId3["pm10ConcentrationMeasurement"] = "pm10ConcentrationMeasurement";
146129
146129
  ClusterId3["pm25ConcentrationMeasurement"] = "pm25ConcentrationMeasurement";
146130
146130
  ClusterId3["powerSource"] = "powerSource";
146131
+ ClusterId3["powerTopology"] = "powerTopology";
146131
146132
  ClusterId3["pressureMeasurement"] = "pressureMeasurement";
146132
146133
  ClusterId3["relativeHumidityMeasurement"] = "relativeHumidityMeasurement";
146133
146134
  ClusterId3["smokeCoAlarm"] = "smokeCoAlarm";
@@ -168646,6 +168647,10 @@ var ElectricalEnergyMeasurementServerBase = class extends FeaturedBase {
168646
168647
  ElectricalEnergyMeasurementServerBase2.State = State;
168647
168648
  })(ElectricalEnergyMeasurementServerBase || (ElectricalEnergyMeasurementServerBase = {}));
168648
168649
  var HaElectricalEnergyMeasurementServer = ElectricalEnergyMeasurementServerBase.set({
168650
+ // Match the activePower=0 default in HaElectricalPowerMeasurementServer
168651
+ // so SmartThings doesn't show "- kWh" before the first state update or
168652
+ // when an entity only carries power (not energy) data.
168653
+ cumulativeEnergyImported: { energy: 0 },
168649
168654
  accuracy: {
168650
168655
  measurementType: ElectricalPowerMeasurement3.MeasurementType.ElectricalEnergy,
168651
168656
  measured: true,
@@ -168876,6 +168881,11 @@ var defaultBatteryConfig = {
168876
168881
  };
168877
168882
  var DefaultPowerSourceServer = PowerSourceServer2(defaultBatteryConfig);
168878
168883
 
168884
+ // src/matter/behaviors/power-topology-server.ts
168885
+ var HaPowerTopologyServer = PowerTopologyServer.with(
168886
+ PowerTopology3.Feature.NodeTopology
168887
+ );
168888
+
168879
168889
  // src/matter/behaviors/temperature-measurement-server.ts
168880
168890
  init_home_assistant_entity_behavior();
168881
168891
  var TemperatureMeasurementServerBase = class extends TemperatureMeasurementServer {
@@ -169979,6 +169989,9 @@ var ComposedAirPurifierEndpoint = class _ComposedAirPurifierEndpoint extends End
169979
169989
  if (config10.batteryEntityId) {
169980
169990
  parentType = parentType.with(PowerSourceServer2(batteryConfig));
169981
169991
  }
169992
+ if (config10.powerEntityId || config10.energyEntityId) {
169993
+ parentType = parentType.with(HaPowerTopologyServer);
169994
+ }
169982
169995
  if (config10.powerEntityId) {
169983
169996
  parentType = parentType.with(HaElectricalPowerMeasurementServer);
169984
169997
  }
@@ -170314,6 +170327,9 @@ var ComposedSensorEndpoint = class _ComposedSensorEndpoint extends Endpoint {
170314
170327
  if (config10.batteryEntityId) {
170315
170328
  parentType = parentType.with(PowerSourceServer2(batteryConfig2));
170316
170329
  }
170330
+ if (config10.powerEntityId || config10.energyEntityId) {
170331
+ parentType = parentType.with(HaPowerTopologyServer);
170332
+ }
170317
170333
  if (config10.powerEntityId) {
170318
170334
  parentType = parentType.with(HaElectricalPowerMeasurementServer);
170319
170335
  }
@@ -174008,6 +174024,9 @@ function LightDevice(homeAssistantEntity) {
174008
174024
  const hasPowerEntity = !!homeAssistantEntity.mapping?.powerEntity;
174009
174025
  const hasEnergyEntity = !!homeAssistantEntity.mapping?.energyEntity;
174010
174026
  let device = deviceType;
174027
+ if (hasPowerEntity || hasEnergyEntity) {
174028
+ device = device.with(HaPowerTopologyServer);
174029
+ }
174011
174030
  if (hasPowerEntity) {
174012
174031
  device = device.with(HaElectricalPowerMeasurementServer);
174013
174032
  }
@@ -175589,6 +175608,9 @@ var StandaloneEnergyServer = class extends EnergyFeaturedBase {
175589
175608
  StandaloneEnergyServer2.State = State;
175590
175609
  })(StandaloneEnergyServer || (StandaloneEnergyServer = {}));
175591
175610
  var EnergyServer = StandaloneEnergyServer.set({
175611
+ // Match the activePower=0 default so SmartThings doesn't show "- kWh"
175612
+ // on a SolarPower endpoint whose mapped entity only carries power data.
175613
+ cumulativeEnergyImported: { energy: 0 },
175592
175614
  accuracy: {
175593
175615
  measurementType: ElectricalPowerMeasurement3.MeasurementType.ElectricalEnergy,
175594
175616
  measured: true,
@@ -175607,6 +175629,7 @@ var ElectricalSensorType = SolarPowerDevice.with(
175607
175629
  BasicInformationServer2,
175608
175630
  IdentifyServer2,
175609
175631
  HomeAssistantEntityBehavior,
175632
+ HaPowerTopologyServer,
175610
175633
  PowerServer,
175611
175634
  EnergyServer
175612
175635
  );
@@ -177049,6 +177072,9 @@ function SwitchDevice(homeAssistantEntity) {
177049
177072
  const hasPowerEntity = !!homeAssistantEntity.mapping?.powerEntity;
177050
177073
  const hasEnergyEntity = !!homeAssistantEntity.mapping?.energyEntity;
177051
177074
  let device = hasBatteryAttr || hasBatteryEntity ? SwitchWithBatteryEndpointType : SwitchEndpointType;
177075
+ if (hasPowerEntity || hasEnergyEntity) {
177076
+ device = device.with(HaPowerTopologyServer);
177077
+ }
177052
177078
  if (hasPowerEntity) {
177053
177079
  device = device.with(HaElectricalPowerMeasurementServer);
177054
177080
  }
@@ -145,7 +145,7 @@ To suppress this warning, you need to explicitly provide the \`palette.${t}Chann
145
145
  animation: ${Rh} 1.4s linear infinite;
146
146
  `,Ote=typeof zh==`string`?null:$u`
147
147
  animation: ${zh} 1.4s ease-in-out infinite;
148
- `,kte=e=>{let{classes:t,variant:n,color:r,disableShrink:i}=e;return dp({root:[`root`,n,`color${Y(r)}`],svg:[`svg`],track:[`track`],circle:[`circle`,`circle${Y(n)}`,i&&`circleDisableShrink`]},Ete,t)},Ate=J(`span`,{name:`MuiCircularProgress`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[n.variant],t[`color${Y(n.color)}`]]}})(Im(({theme:e})=>({display:`inline-block`,variants:[{props:{variant:`determinate`},style:{transition:e.transitions.create(`transform`)}},{props:{variant:`indeterminate`},style:Dte||{animation:`${Rh} 1.4s linear infinite`}},...Object.entries(e.palette).filter(Gm()).map(([t])=>({props:{color:t},style:{color:(e.vars||e).palette[t].main}}))]}))),jte=J(`svg`,{name:`MuiCircularProgress`,slot:`Svg`})({display:`block`}),Mte=J(`circle`,{name:`MuiCircularProgress`,slot:`Circle`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.circle,t[`circle${Y(n.variant)}`],n.disableShrink&&t.circleDisableShrink]}})(Im(({theme:e})=>({stroke:`currentColor`,variants:[{props:{variant:`determinate`},style:{transition:e.transitions.create(`stroke-dashoffset`)}},{props:{variant:`indeterminate`},style:{strokeDasharray:`80px, 200px`,strokeDashoffset:0}},{props:({ownerState:e})=>e.variant===`indeterminate`&&!e.disableShrink,style:Ote||{animation:`${zh} 1.4s ease-in-out infinite`}}]}))),Nte=J(`circle`,{name:`MuiCircularProgress`,slot:`Track`})(Im(({theme:e})=>({stroke:`currentColor`,opacity:(e.vars||e).palette.action.activatedOpacity}))),Bh=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiCircularProgress`}),{className:r,color:i=`primary`,disableShrink:a=!1,enableTrackSlot:o=!1,size:s=40,style:c,thickness:l=3.6,value:u=0,variant:d=`indeterminate`,...f}=n,p={...n,color:i,disableShrink:a,size:s,thickness:l,value:u,variant:d,enableTrackSlot:o},m=kte(p),h={},g={},_={};if(d===`determinate`){let e=2*Math.PI*((Lh-l)/2);h.strokeDasharray=e.toFixed(3),_[`aria-valuenow`]=Math.round(u),h.strokeDashoffset=`${((100-u)/100*e).toFixed(3)}px`,g.transform=`rotate(-90deg)`}return(0,G.jsx)(Ate,{className:K(m.root,r),style:{width:s,height:s,...g,...c},ownerState:p,ref:t,role:`progressbar`,..._,...f,children:(0,G.jsxs)(jte,{className:m.svg,ownerState:p,viewBox:`${Lh/2} ${Lh/2} ${Lh} ${Lh}`,children:[o?(0,G.jsx)(Nte,{className:m.track,ownerState:p,cx:Lh,cy:Lh,r:(Lh-l)/2,fill:`none`,strokeWidth:l,"aria-hidden":`true`}):null,(0,G.jsx)(Mte,{className:m.circle,style:h,ownerState:p,cx:Lh,cy:Lh,r:(Lh-l)/2,fill:`none`,strokeWidth:l})]})})});function Pte(e){return Id(`MuiIconButton`,e)}var Vh=Ld(`MuiIconButton`,[`root`,`disabled`,`colorInherit`,`colorPrimary`,`colorSecondary`,`colorError`,`colorInfo`,`colorSuccess`,`colorWarning`,`edgeStart`,`edgeEnd`,`sizeSmall`,`sizeMedium`,`sizeLarge`,`loading`,`loadingIndicator`,`loadingWrapper`]),Fte=e=>{let{classes:t,disabled:n,color:r,edge:i,size:a,loading:o}=e;return dp({root:[`root`,o&&`loading`,n&&`disabled`,r!==`default`&&`color${Y(r)}`,i&&`edge${Y(i)}`,`size${Y(a)}`],loadingIndicator:[`loadingIndicator`],loadingWrapper:[`loadingWrapper`]},Pte,t)},Ite=J(Fh,{name:`MuiIconButton`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.loading&&t.loading,n.color!==`default`&&t[`color${Y(n.color)}`],n.edge&&t[`edge${Y(n.edge)}`],t[`size${Y(n.size)}`]]}})(Im(({theme:e})=>({textAlign:`center`,flex:`0 0 auto`,fontSize:e.typography.pxToRem(24),padding:8,borderRadius:`50%`,color:(e.vars||e).palette.action.active,transition:e.transitions.create(`background-color`,{duration:e.transitions.duration.shortest}),variants:[{props:e=>!e.disableRipple,style:{"--IconButton-hoverBg":e.alpha((e.vars||e).palette.action.active,(e.vars||e).palette.action.hoverOpacity),"&:hover":{backgroundColor:`var(--IconButton-hoverBg)`,"@media (hover: none)":{backgroundColor:`transparent`}}}},{props:{edge:`start`},style:{marginLeft:-12}},{props:{edge:`start`,size:`small`},style:{marginLeft:-3}},{props:{edge:`end`},style:{marginRight:-12}},{props:{edge:`end`,size:`small`},style:{marginRight:-3}}]})),Im(({theme:e})=>({variants:[{props:{color:`inherit`},style:{color:`inherit`}},...Object.entries(e.palette).filter(Gm()).map(([t])=>({props:{color:t},style:{color:(e.vars||e).palette[t].main}})),...Object.entries(e.palette).filter(Gm()).map(([t])=>({props:{color:t},style:{"--IconButton-hoverBg":e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.hoverOpacity)}})),{props:{size:`small`},style:{padding:5,fontSize:e.typography.pxToRem(18)}},{props:{size:`large`},style:{padding:12,fontSize:e.typography.pxToRem(28)}}],[`&.${Vh.disabled}`]:{backgroundColor:`transparent`,color:(e.vars||e).palette.action.disabled},[`&.${Vh.loading}`]:{color:`transparent`}}))),Lte=J(`span`,{name:`MuiIconButton`,slot:`LoadingIndicator`})(({theme:e})=>({display:`none`,position:`absolute`,visibility:`visible`,top:`50%`,left:`50%`,transform:`translate(-50%, -50%)`,color:(e.vars||e).palette.action.disabled,variants:[{props:{loading:!0},style:{display:`flex`}}]})),Hh=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiIconButton`}),{edge:r=!1,children:i,className:a,color:o=`default`,disabled:s=!1,disableFocusRipple:c=!1,size:l=`medium`,id:u,loading:d=null,loadingIndicator:f,...p}=n,m=ah(u),h=f??(0,G.jsx)(Bh,{"aria-labelledby":m,color:`inherit`,size:16}),g={...n,edge:r,color:o,disabled:s,disableFocusRipple:c,loading:d,loadingIndicator:h,size:l},_=Fte(g);return(0,G.jsxs)(Ite,{id:d?m:u,className:K(_.root,a),centerRipple:!0,focusRipple:!c,disabled:s||d,ref:t,...p,ownerState:g,children:[typeof d==`boolean`&&(0,G.jsx)(`span`,{className:_.loadingWrapper,style:{display:`contents`},children:(0,G.jsx)(Lte,{className:_.loadingIndicator,ownerState:g,children:d&&h})}),i]})}),Rte=X((0,G.jsx)(`path`,{d:`M20,12A8,8 0 0,1 12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4C12.76,4 13.5,4.11 14.2, 4.31L15.77,2.74C14.61,2.26 13.34,2 12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0, 0 22,12M7.91,10.08L6.5,11.5L11,16L21,6L19.59,4.58L11,13.17L7.91,10.08Z`}),`SuccessOutlined`),zte=X((0,G.jsx)(`path`,{d:`M12 5.99L19.53 19H4.47L12 5.99M12 2L1 21h22L12 2zm1 14h-2v2h2v-2zm0-6h-2v4h2v-4z`}),`ReportProblemOutlined`),Bte=X((0,G.jsx)(`path`,{d:`M11 15h2v2h-2zm0-8h2v6h-2zm.99-5C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z`}),`ErrorOutline`),Vte=X((0,G.jsx)(`path`,{d:`M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20, 12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10, 10 0 0,0 12,2M11,17H13V11H11V17Z`}),`InfoOutlined`),Uh=X((0,G.jsx)(`path`,{d:`M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z`}),`Close`),Hte=e=>{let{variant:t,color:n,severity:r,classes:i}=e;return dp({root:[`root`,`color${Y(n||r)}`,`${t}${Y(n||r)}`,`${t}`],icon:[`icon`],message:[`message`],action:[`action`]},Zee,i)},Ute=J(Km,{name:`MuiAlert`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[n.variant],t[`${n.variant}${Y(n.color||n.severity)}`]]}})(Im(({theme:e})=>{let t=e.palette.mode===`light`?e.darken:e.lighten,n=e.palette.mode===`light`?e.lighten:e.darken;return{...e.typography.body2,backgroundColor:`transparent`,display:`flex`,padding:`6px 16px`,variants:[...Object.entries(e.palette).filter(Gm([`light`])).map(([r])=>({props:{colorSeverity:r,variant:`standard`},style:{color:e.vars?e.vars.palette.Alert[`${r}Color`]:t(e.palette[r].light,.6),backgroundColor:e.vars?e.vars.palette.Alert[`${r}StandardBg`]:n(e.palette[r].light,.9),[`& .${qm.icon}`]:e.vars?{color:e.vars.palette.Alert[`${r}IconColor`]}:{color:e.palette[r].main}}})),...Object.entries(e.palette).filter(Gm([`light`])).map(([n])=>({props:{colorSeverity:n,variant:`outlined`},style:{color:e.vars?e.vars.palette.Alert[`${n}Color`]:t(e.palette[n].light,.6),border:`1px solid ${(e.vars||e).palette[n].light}`,[`& .${qm.icon}`]:e.vars?{color:e.vars.palette.Alert[`${n}IconColor`]}:{color:e.palette[n].main}}})),...Object.entries(e.palette).filter(Gm([`dark`])).map(([t])=>({props:{colorSeverity:t,variant:`filled`},style:{fontWeight:e.typography.fontWeightMedium,...e.vars?{color:e.vars.palette.Alert[`${t}FilledColor`],backgroundColor:e.vars.palette.Alert[`${t}FilledBg`]}:{backgroundColor:e.palette.mode===`dark`?e.palette[t].dark:e.palette[t].main,color:e.palette.getContrastText(e.palette[t].main)}}}))]}})),Wte=J(`div`,{name:`MuiAlert`,slot:`Icon`})({marginRight:12,padding:`7px 0`,display:`flex`,fontSize:22,opacity:.9}),Gte=J(`div`,{name:`MuiAlert`,slot:`Message`})({padding:`8px 0`,minWidth:0,overflow:`auto`}),Kte=J(`div`,{name:`MuiAlert`,slot:`Action`})({display:`flex`,alignItems:`flex-start`,padding:`4px 0 0 16px`,marginLeft:`auto`,marginRight:-8}),Wh={success:(0,G.jsx)(Rte,{fontSize:`inherit`}),warning:(0,G.jsx)(zte,{fontSize:`inherit`}),error:(0,G.jsx)(Bte,{fontSize:`inherit`}),info:(0,G.jsx)(Vte,{fontSize:`inherit`})},Gh=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiAlert`}),{action:r,children:i,className:a,closeText:o=`Close`,color:s,components:c={},componentsProps:l={},icon:u,iconMapping:d=Wh,onClose:f,role:p=`alert`,severity:m=`success`,slotProps:h={},slots:g={},variant:_=`standard`,...v}=n,y={...n,color:s,severity:m,variant:_,colorSeverity:s||m},b=Hte(y),x={slots:{closeButton:c.CloseButton,closeIcon:c.CloseIcon,...g},slotProps:{...l,...h}},[S,C]=Wm(`root`,{ref:t,shouldForwardComponentProp:!0,className:K(b.root,a),elementType:Ute,externalForwardedProps:{...x,...v},ownerState:y,additionalProps:{role:p,elevation:0}}),[w,T]=Wm(`icon`,{className:b.icon,elementType:Wte,externalForwardedProps:x,ownerState:y}),[E,D]=Wm(`message`,{className:b.message,elementType:Gte,externalForwardedProps:x,ownerState:y}),[O,k]=Wm(`action`,{className:b.action,elementType:Kte,externalForwardedProps:x,ownerState:y}),[A,j]=Wm(`closeButton`,{elementType:Hh,externalForwardedProps:x,ownerState:y}),[M,N]=Wm(`closeIcon`,{elementType:Uh,externalForwardedProps:x,ownerState:y});return(0,G.jsxs)(S,{...C,children:[u===!1?null:(0,G.jsx)(w,{...T,children:u||d[m]||Wh[m]}),(0,G.jsx)(E,{...D,children:i}),r==null?null:(0,G.jsx)(O,{...k,children:r}),r==null&&f?(0,G.jsx)(O,{...k,children:(0,G.jsx)(A,{size:`small`,"aria-label":o,title:o,color:`inherit`,onClick:f,...j,children:(0,G.jsx)(M,{fontSize:`small`,...N})})}):null]})});function qte(e={}){let{autoHideDuration:t=null,disableWindowBlurListener:n=!1,onClose:r,open:i,resumeHideDuration:a}=e,o=Mh();C.useEffect(()=>{if(!i)return;function e(e){e.defaultPrevented||e.key===`Escape`&&r?.(e,`escapeKeyDown`)}return document.addEventListener(`keydown`,e),()=>{document.removeEventListener(`keydown`,e)}},[i,r]);let s=ch((e,t)=>{r?.(e,t)}),c=ch(e=>{!r||e==null||o.start(e,()=>{s(null,`timeout`)})});C.useEffect(()=>(i&&c(t),o.clear),[i,t,c,o]);let l=e=>{r?.(e,`clickaway`)},u=o.clear,d=C.useCallback(()=>{t!=null&&c(a??t*.5)},[t,a,c]),f=e=>t=>{let n=e.onBlur;n?.(t),d()},p=e=>t=>{let n=e.onFocus;n?.(t),u()},m=e=>t=>{let n=e.onMouseEnter;n?.(t),u()},h=e=>t=>{let n=e.onMouseLeave;n?.(t),d()};return C.useEffect(()=>{if(!n&&i)return window.addEventListener(`focus`,d),window.addEventListener(`blur`,u),()=>{window.removeEventListener(`focus`,d),window.removeEventListener(`blur`,u)}},[n,i,d,u]),{getRootProps:(t={})=>{let n={...Vm(e),...Vm(t)};return{role:`presentation`,...t,...n,onBlur:f(n),onFocus:p(n),onMouseEnter:m(n),onMouseLeave:h(n)}},onClickAway:l}}function Kh(e){return e?.props?.ref||null}function qh(e){return e.substring(2).toLowerCase()}function Jte(e,t){return t.documentElement.clientWidth<e.clientX||t.documentElement.clientHeight<e.clientY}function Jh(e){let{children:t,disableReactTree:n=!1,mouseEvent:r=`onClick`,onClickAway:i,touchEvent:a=`onTouchEnd`}=e,o=C.useRef(!1),s=C.useRef(null),c=C.useRef(!1),l=C.useRef(!1);C.useEffect(()=>(setTimeout(()=>{c.current=!0},0),()=>{c.current=!1}),[]);let u=Lm(Kh(t),s),d=ch(e=>{let t=l.current;l.current=!1;let r=$m(s.current);if(!c.current||!s.current||`clientX`in e&&Jte(e,r))return;if(o.current){o.current=!1;return}let a;a=e.composedPath?e.composedPath().includes(s.current):!r.documentElement.contains(e.target)||s.current.contains(e.target),!a&&(n||!t)&&i(e)}),f=e=>n=>{l.current=!0;let r=t.props[e];r&&r(n)},p={ref:u};return a!==!1&&(p[a]=f(a)),C.useEffect(()=>{if(a!==!1){let e=qh(a),t=$m(s.current),n=()=>{o.current=!0};return t.addEventListener(e,d),t.addEventListener(`touchmove`,n),()=>{t.removeEventListener(e,d),t.removeEventListener(`touchmove`,n)}}},[d,a]),r!==!1&&(p[r]=f(r)),C.useEffect(()=>{if(r!==!1){let e=qh(r),t=$m(s.current);return t.addEventListener(e,d),()=>{t.removeEventListener(e,d)}}},[d,r]),C.cloneElement(t,p)}var Yh=e=>e.scrollTop;function Xh(e,t){return n=>{if(t){let r=e.current;n===void 0?t(r):t(r,n)}}}function Zh(e,t,n,r,i,a){let o=e===`exited`&&!t?r:n[e]||n.exited;return i||a?{...o,...i,...a}:o}function Qh(e,t){let{timeout:n,easing:r,style:i={}}=e;return{duration:i.transitionDuration??(typeof n==`number`?n:n[t.mode]||0),easing:i.transitionTimingFunction??(typeof r==`object`?r[t.mode]:r),delay:i.transitionDelay}}function $h(e){return`scale(${e}, ${e**2})`}var Yte={entering:{opacity:1,transform:$h(1)},entered:{opacity:1,transform:`none`},exiting:{opacity:0,transform:$h(.75)},exited:{opacity:0,transform:$h(.75)}},Xte={opacity:0,transform:$h(.75),visibility:`hidden`},eg=C.forwardRef(function(e,t){let{addEndListener:n,appear:r=!0,children:i,easing:a,in:o,onEnter:s,onEntered:c,onEntering:l,onExit:u,onExited:d,onExiting:f,style:p,timeout:m=`auto`,...h}=e,g=Mh(),_=C.useRef(),v=Tm(),y=C.useRef(null),b=uh(y,Kh(i),t),x=Xh(y,l),S=Xh(y,(e,t)=>{Yh(e);let{duration:n,delay:r,easing:i}=Qh({style:p,timeout:m,easing:a},{mode:`enter`}),o;m===`auto`?(o=v.transitions.getAutoHeightDuration(e.clientHeight),_.current=o):o=n,e.style.transition=[v.transitions.create(`opacity`,{duration:o,delay:r}),v.transitions.create(`transform`,{duration:o*.666,delay:r,easing:i})].join(`,`),s&&s(e,t)}),w=Xh(y,c),T=Xh(y,f),E=Xh(y,e=>{let{duration:t,delay:n,easing:r}=Qh({style:p,timeout:m,easing:a},{mode:`exit`}),i;m===`auto`?(i=v.transitions.getAutoHeightDuration(e.clientHeight),_.current=i):i=t,e.style.transition=[v.transitions.create(`opacity`,{duration:i,delay:n}),v.transitions.create(`transform`,{duration:i*.666,delay:n||i*.333,easing:r})].join(`,`),e.style.opacity=0,e.style.transform=$h(.75),u&&u(e)}),D=Xh(y,e=>{e.style.transition=``,d&&d(e)});return(0,G.jsx)(Eh,{appear:r,in:o,nodeRef:y,onEnter:S,onEntered:w,onEntering:x,onExit:E,onExited:D,onExiting:T,addEndListener:e=>{m===`auto`&&g.start(_.current||0,e),n&&n(y.current,e)},timeout:m===`auto`?null:m,...h,children:(e,{ownerState:t,...n})=>{let r=Zh(e,o,Yte,Xte,p,i.props.style);return C.cloneElement(i,{style:r,ref:b,...n})}})});eg&&(eg.muiSupportAuto=!0);function Zte(e){return Id(`MuiSnackbarContent`,e)}Ld(`MuiSnackbarContent`,[`root`,`message`,`action`]);var Qte=e=>{let{classes:t}=e;return dp({root:[`root`],action:[`action`],message:[`message`]},Zte,t)},$te=J(Km,{name:`MuiSnackbarContent`,slot:`Root`})(Im(({theme:e})=>{let t=e.palette.mode===`light`?.8:.98;return{...e.typography.body2,color:e.vars?e.vars.palette.SnackbarContent.color:e.palette.getContrastText(Sf(e.palette.background.default,t)),backgroundColor:e.vars?e.vars.palette.SnackbarContent.bg:Sf(e.palette.background.default,t),display:`flex`,alignItems:`center`,flexWrap:`wrap`,padding:`6px 16px`,flexGrow:1,[e.breakpoints.up(`sm`)]:{flexGrow:`initial`,minWidth:288}}})),ene=J(`div`,{name:`MuiSnackbarContent`,slot:`Message`})({padding:`8px 0`}),tne=J(`div`,{name:`MuiSnackbarContent`,slot:`Action`})({display:`flex`,alignItems:`center`,marginLeft:`auto`,paddingLeft:16,marginRight:-8}),nne=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiSnackbarContent`}),{action:r,className:i,message:a,role:o=`alert`,...s}=n,c=n,l=Qte(c);return(0,G.jsxs)($te,{role:o,elevation:6,className:K(l.root,i),ownerState:c,ref:t,...s,children:[(0,G.jsx)(ene,{className:l.message,ownerState:c,children:a}),r?(0,G.jsx)(tne,{className:l.action,ownerState:c,children:r}):null]})});function rne(e){return Id(`MuiSnackbar`,e)}Ld(`MuiSnackbar`,[`root`,`anchorOriginTopCenter`,`anchorOriginBottomCenter`,`anchorOriginTopRight`,`anchorOriginBottomRight`,`anchorOriginTopLeft`,`anchorOriginBottomLeft`]);var ine=e=>{let{classes:t,anchorOrigin:n}=e;return dp({root:[`root`,`anchorOrigin${Y(n.vertical)}${Y(n.horizontal)}`]},rne,t)},ane=J(`div`,{name:`MuiSnackbar`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[`anchorOrigin${Y(n.anchorOrigin.vertical)}${Y(n.anchorOrigin.horizontal)}`]]}})(Im(({theme:e})=>({zIndex:(e.vars||e).zIndex.snackbar,position:`fixed`,display:`flex`,left:8,right:8,justifyContent:`center`,alignItems:`center`,variants:[{props:({ownerState:e})=>e.anchorOrigin.vertical===`top`,style:{top:8,[e.breakpoints.up(`sm`)]:{top:24}}},{props:({ownerState:e})=>e.anchorOrigin.vertical!==`top`,style:{bottom:8,[e.breakpoints.up(`sm`)]:{bottom:24}}},{props:({ownerState:e})=>e.anchorOrigin.horizontal===`left`,style:{justifyContent:`flex-start`,[e.breakpoints.up(`sm`)]:{left:24,right:`auto`}}},{props:({ownerState:e})=>e.anchorOrigin.horizontal===`right`,style:{justifyContent:`flex-end`,[e.breakpoints.up(`sm`)]:{right:24,left:`auto`}}},{props:({ownerState:e})=>e.anchorOrigin.horizontal===`center`,style:{[e.breakpoints.up(`sm`)]:{left:`50%`,right:`auto`,transform:`translateX(-50%)`}}}]}))),tg=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiSnackbar`}),r=Tm(),i={enter:r.transitions.duration.enteringScreen,exit:r.transitions.duration.leavingScreen},{action:a,anchorOrigin:{vertical:o,horizontal:s}={vertical:`bottom`,horizontal:`left`},autoHideDuration:c=null,children:l,className:u,ClickAwayListenerProps:d,ContentProps:f,disableWindowBlurListener:p=!1,message:m,onBlur:h,onClose:g,onFocus:_,onMouseEnter:v,onMouseLeave:y,open:b,resumeHideDuration:x,slots:S={},slotProps:w={},TransitionComponent:T,transitionDuration:E=i,TransitionProps:{onEnter:D,onExited:O,...k}={},...A}=n,j={...n,anchorOrigin:{vertical:o,horizontal:s},autoHideDuration:c,disableWindowBlurListener:p,TransitionComponent:T,transitionDuration:E},M=ine(j),{getRootProps:N,onClickAway:P}=qte(j),[F,I]=C.useState(!0),L=e=>{I(!0),O&&O(e)},R=(e,t)=>{I(!1),D&&D(e,t)},ee={slots:{transition:T,...S},slotProps:{content:f,clickAwayListener:d,transition:k,...w}},[z,te]=Wm(`root`,{ref:t,className:[M.root,u],elementType:ane,getSlotProps:N,externalForwardedProps:{...ee,...A},ownerState:j}),[B,{ownerState:V,...ne}]=Wm(`clickAwayListener`,{elementType:Jh,externalForwardedProps:ee,getSlotProps:e=>({onClickAway:(...t)=>{let n=t[0];e.onClickAway?.(...t),!n?.defaultMuiPrevented&&P(...t)}}),ownerState:j}),[re,ie]=Wm(`content`,{elementType:nne,shouldForwardComponentProp:!0,externalForwardedProps:ee,additionalProps:{message:m,action:a},ownerState:j}),[ae,oe]=Wm(`transition`,{elementType:eg,externalForwardedProps:ee,getSlotProps:e=>({onEnter:(...t)=>{e.onEnter?.(...t),R(...t)},onExited:(...t)=>{e.onExited?.(...t),L(...t)}}),additionalProps:{appear:!0,in:b,timeout:E,direction:o===`top`?`down`:`up`},ownerState:j});return!b&&F?null:(0,G.jsx)(B,{...ne,...S.clickAwayListener&&{ownerState:V},children:(0,G.jsx)(z,{...te,children:(0,G.jsx)(ae,{...oe,children:l||(0,G.jsx)(re,{...ie})})})})}),ng=(0,C.createContext)({show:()=>{}}),one=0,sne=e=>{let[t,n]=(0,C.useState)([]),r=(0,C.useCallback)(e=>{n(t=>[...t,{...e,autoHideDuration:e.autoHideDuration??6e3,notificationId:one++}])},[]),i=e=>{n(t=>t.filter(t=>t.notificationId!==e))};return(0,G.jsxs)(ng.Provider,{value:{show:r},children:[e.children,t.map(e=>(0,G.jsx)(tg,{open:!0,autoHideDuration:e.autoHideDuration,onClose:()=>i(e.notificationId),children:(0,G.jsx)(Gh,{severity:e.severity,variant:`filled`,sx:{minWidth:`300px`},children:e.message})},e.notificationId))]})};function rg(e){return`Minified Redux error #${e}; visit https://redux.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var ig=typeof Symbol==`function`&&Symbol.observable||`@@observable`,ag=()=>Math.random().toString(36).substring(7).split(``).join(`.`),og={INIT:`@@redux/INIT${ag()}`,REPLACE:`@@redux/REPLACE${ag()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${ag()}`};function sg(e){if(typeof e!=`object`||!e)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||Object.getPrototypeOf(e)===null}function cg(e,t,n){if(typeof e!=`function`)throw Error(rg(2));if(typeof t==`function`&&typeof n==`function`||typeof n==`function`&&typeof arguments[3]==`function`)throw Error(rg(0));if(typeof t==`function`&&n===void 0&&(n=t,t=void 0),n!==void 0){if(typeof n!=`function`)throw Error(rg(1));return n(cg)(e,t)}let r=e,i=t,a=new Map,o=a,s=0,c=!1;function l(){o===a&&(o=new Map,a.forEach((e,t)=>{o.set(t,e)}))}function u(){if(c)throw Error(rg(3));return i}function d(e){if(typeof e!=`function`)throw Error(rg(4));if(c)throw Error(rg(5));let t=!0;l();let n=s++;return o.set(n,e),function(){if(t){if(c)throw Error(rg(6));t=!1,l(),o.delete(n),a=null}}}function f(e){if(!sg(e))throw Error(rg(7));if(e.type===void 0)throw Error(rg(8));if(typeof e.type!=`string`)throw Error(rg(17));if(c)throw Error(rg(9));try{c=!0,i=r(i,e)}finally{c=!1}return(a=o).forEach(e=>{e()}),e}function p(e){if(typeof e!=`function`)throw Error(rg(10));r=e,f({type:og.REPLACE})}function m(){let e=d;return{subscribe(t){if(typeof t!=`object`||!t)throw Error(rg(11));function n(){let e=t;e.next&&e.next(u())}return n(),{unsubscribe:e(n)}},[ig](){return this}}}return f({type:og.INIT}),{dispatch:f,subscribe:d,getState:u,replaceReducer:p,[ig]:m}}function cne(e){Object.keys(e).forEach(t=>{let n=e[t];if(n(void 0,{type:og.INIT})===void 0)throw Error(rg(12));if(n(void 0,{type:og.PROBE_UNKNOWN_ACTION()})===void 0)throw Error(rg(13))})}function lne(e){let t=Object.keys(e),n={};for(let r=0;r<t.length;r++){let i=t[r];typeof e[i]==`function`&&(n[i]=e[i])}let r=Object.keys(n),i;try{cne(n)}catch(e){i=e}return function(e={},t){if(i)throw i;let a=!1,o={};for(let i=0;i<r.length;i++){let s=r[i],c=n[s],l=e[s],u=c(l,t);if(u===void 0)throw t&&t.type,Error(rg(14));o[s]=u,a||=u!==l}return a||=r.length!==Object.keys(e).length,a?o:e}}function lg(...e){return e.length===0?e=>e:e.length===1?e[0]:e.reduce((e,t)=>(...n)=>e(t(...n)))}function une(...e){return t=>(n,r)=>{let i=t(n,r),a=()=>{throw Error(rg(15))},o={getState:i.getState,dispatch:(e,...t)=>a(e,...t)};return a=lg(...e.map(e=>e(o)))(i.dispatch),{...i,dispatch:a}}}function dne(e){return sg(e)&&`type`in e&&typeof e.type==`string`}var ug=Symbol.for(`immer-nothing`),dg=Symbol.for(`immer-draftable`),fg=Symbol.for(`immer-state`);function pg(e,...t){throw Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var mg=Object,hg=mg.getPrototypeOf,gg=`constructor`,_g=`prototype`,vg=`configurable`,yg=`enumerable`,bg=`writable`,xg=`value`,Sg=e=>!!e&&!!e[fg];function Cg(e){return e?Tg(e)||jg(e)||!!e[dg]||!!e[gg]?.[dg]||Mg(e)||Ng(e):!1}var fne=mg[_g][gg].toString(),wg=new WeakMap;function Tg(e){if(!e||!Pg(e))return!1;let t=hg(e);if(t===null||t===mg[_g])return!0;let n=mg.hasOwnProperty.call(t,gg)&&t[gg];if(n===Object)return!0;if(!Fg(n))return!1;let r=wg.get(n);return r===void 0&&(r=Function.toString.call(n),wg.set(n,r)),r===fne}function Eg(e,t,n=!0){Dg(e)===0?(n?Reflect.ownKeys(e):mg.keys(e)).forEach(n=>{t(n,e[n],e)}):e.forEach((n,r)=>t(r,n,e))}function Dg(e){let t=e[fg];return t?t.type_:jg(e)?1:Mg(e)?2:Ng(e)?3:0}var Og=(e,t,n=Dg(e))=>n===2?e.has(t):mg[_g].hasOwnProperty.call(e,t),kg=(e,t,n=Dg(e))=>n===2?e.get(t):e[t],Ag=(e,t,n,r=Dg(e))=>{r===2?e.set(t,n):r===3?e.add(n):e[t]=n};function pne(e,t){return e===t?e!==0||1/e==1/t:e!==e&&t!==t}var jg=Array.isArray,Mg=e=>e instanceof Map,Ng=e=>e instanceof Set,Pg=e=>typeof e==`object`,Fg=e=>typeof e==`function`,Ig=e=>typeof e==`boolean`;function mne(e){let t=+e;return Number.isInteger(t)&&String(t)===e}var Lg=e=>e.copy_||e.base_,Rg=e=>e.modified_?e.copy_:e.base_;function zg(e,t){if(Mg(e))return new Map(e);if(Ng(e))return new Set(e);if(jg(e))return Array[_g].slice.call(e);let n=Tg(e);if(t===!0||t===`class_only`&&!n){let t=mg.getOwnPropertyDescriptors(e);delete t[fg];let n=Reflect.ownKeys(t);for(let r=0;r<n.length;r++){let i=n[r],a=t[i];a[bg]===!1&&(a[bg]=!0,a[vg]=!0),(a.get||a.set)&&(t[i]={[vg]:!0,[bg]:!0,[yg]:a[yg],[xg]:e[i]})}return mg.create(hg(e),t)}else{let t=hg(e);if(t!==null&&n)return{...e};let r=mg.create(t);return mg.assign(r,e)}}function Bg(e,t=!1){return Hg(e)||Sg(e)||!Cg(e)?e:(Dg(e)>1&&mg.defineProperties(e,{set:Vg,add:Vg,clear:Vg,delete:Vg}),mg.freeze(e),t&&Eg(e,(e,t)=>{Bg(t,!0)},!1),e)}function hne(){pg(2)}var Vg={[xg]:hne};function Hg(e){return e===null||!Pg(e)?!0:mg.isFrozen(e)}var Ug=`MapSet`,Wg=`Patches`,Gg=`ArrayMethods`,Kg={};function qg(e){let t=Kg[e];return t||pg(0,e),t}var Jg=e=>!!Kg[e],Yg,Xg=()=>Yg,gne=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:Jg(Ug)?qg(Ug):void 0,arrayMethodsPlugin_:Jg(Gg)?qg(Gg):void 0});function Zg(e,t){t&&(e.patchPlugin_=qg(Wg),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function Qg(e){$g(e),e.drafts_.forEach(_ne),e.drafts_=null}function $g(e){e===Yg&&(Yg=e.parent_)}var e_=e=>Yg=gne(Yg,e);function _ne(e){let t=e[fg];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function t_(e,t){t.unfinalizedDrafts_=t.drafts_.length;let n=t.drafts_[0];if(e!==void 0&&e!==n){n[fg].modified_&&(Qg(t),pg(4)),Cg(e)&&(e=n_(t,e));let{patchPlugin_:r}=t;r&&r.generateReplacementPatches_(n[fg].base_,e,t)}else e=n_(t,n);return vne(t,e,!0),Qg(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e===ug?void 0:e}function n_(e,t){if(Hg(t))return t;let n=t[fg];if(!n)return s_(t,e.handledSet_,e);if(!i_(n,e))return t;if(!n.modified_)return n.base_;if(!n.finalized_){let{callbacks_:t}=n;if(t)for(;t.length>0;)t.pop()(e);o_(n,e)}return n.copy_}function vne(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&Bg(t,n)}function r_(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var i_=(e,t)=>e.scope_===t,yne=[];function a_(e,t,n,r){let i=Lg(e),a=e.type_;if(r!==void 0&&kg(i,r,a)===t){Ag(i,r,n,a);return}if(!e.draftLocations_){let t=e.draftLocations_=new Map;Eg(i,(e,n)=>{if(Sg(n)){let r=t.get(n)||[];r.push(e),t.set(n,r)}})}let o=e.draftLocations_.get(t)??yne;for(let e of o)Ag(i,e,n,a)}function bne(e,t,n){e.callbacks_.push(function(r){let i=t;if(!i||!i_(i,r))return;r.mapSetPlugin_?.fixSetContents(i);let a=Rg(i);a_(e,i.draft_??i,a,n),o_(i,r)})}function o_(e,t){if(e.modified_&&!e.finalized_&&(e.type_===3||e.type_===1&&e.allIndicesReassigned_||(e.assigned_?.size??0)>0)){let{patchPlugin_:n}=t;if(n){let r=n.getPath(e);r&&n.generatePatches_(e,r,t)}r_(e)}}function xne(e,t,n){let{scope_:r}=e;if(Sg(n)){let i=n[fg];i_(i,r)&&i.callbacks_.push(function(){p_(e),a_(e,n,Rg(i),t)})}else Cg(n)&&e.callbacks_.push(function(){let i=Lg(e);e.type_===3?i.has(n)&&s_(n,r.handledSet_,r):kg(i,t,e.type_)===n&&r.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&s_(kg(e.copy_,t,e.type_),r.handledSet_,r)})}function s_(e,t,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||Sg(e)||t.has(e)||!Cg(e)||Hg(e)?e:(t.add(e),Eg(e,(r,i)=>{if(Sg(i)){let t=i[fg];i_(t,n)&&(Ag(e,r,Rg(t),e.type_),r_(t))}else Cg(i)&&s_(i,t,n)}),e)}function Sne(e,t){let n=jg(e),r={type_:+!!n,scope_:t?t.scope_:Xg(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0},i=r,a=c_;n&&(i=[r],a=l_);let{revoke:o,proxy:s}=Proxy.revocable(i,a);return r.draft_=s,r.revoke_=o,[s,r]}var c_={get(e,t){if(t===fg)return e;let n=e.scope_.arrayMethodsPlugin_,r=e.type_===1&&typeof t==`string`;if(r&&n?.isArrayOperationMethod(t))return n.createMethodInterceptor(e,t);let i=Lg(e);if(!Og(i,t,e.type_))return Cne(e,i,t);let a=i[t];if(e.finalized_||!Cg(a)||r&&e.operationMethod&&n?.isMutatingArrayMethod(e.operationMethod)&&mne(t))return a;if(a===u_(e.base_,t)){p_(e);let n=e.type_===1?+t:t,r=m_(e.scope_,a,e,n);return e.copy_[n]=r}return a},has(e,t){return t in Lg(e)},ownKeys(e){return Reflect.ownKeys(Lg(e))},set(e,t,n){let r=d_(Lg(e),t);if(r?.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){let r=u_(Lg(e),t),i=r?.[fg];if(i&&i.base_===n)return e.copy_[t]=n,e.assigned_.set(t,!1),!0;if(pne(n,r)&&(n!==void 0||Og(e.base_,t,e.type_)))return!0;p_(e),f_(e)}return e.copy_[t]===n&&(n!==void 0||t in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[t])?!0:(e.copy_[t]=n,e.assigned_.set(t,!0),xne(e,t,n),!0)},deleteProperty(e,t){return p_(e),u_(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),f_(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){let n=Lg(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{[bg]:!0,[vg]:e.type_!==1||t!==`length`,[yg]:r[yg],[xg]:n[t]}},defineProperty(){pg(11)},getPrototypeOf(e){return hg(e.base_)},setPrototypeOf(){pg(12)}},l_={};for(let e in c_){let t=c_[e];l_[e]=function(){let e=arguments;return e[0]=e[0][0],t.apply(this,e)}}l_.deleteProperty=function(e,t){return l_.set.call(this,e,t,void 0)},l_.set=function(e,t,n){return c_.set.call(this,e[0],t,n,e[0])};function u_(e,t){let n=e[fg];return(n?Lg(n):e)[t]}function Cne(e,t,n){let r=d_(t,n);return r?xg in r?r[xg]:r.get?.call(e.draft_):void 0}function d_(e,t){if(!(t in e))return;let n=hg(e);for(;n;){let e=Object.getOwnPropertyDescriptor(n,t);if(e)return e;n=hg(n)}}function f_(e){e.modified_||(e.modified_=!0,e.parent_&&f_(e.parent_))}function p_(e){e.copy_||=(e.assigned_=new Map,zg(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var wne=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(e,t,n)=>{if(Fg(e)&&!Fg(t)){let n=t;t=e;let r=this;return function(e=n,...i){return r.produce(e,e=>t.call(this,e,...i))}}Fg(t)||pg(6),n!==void 0&&!Fg(n)&&pg(7);let r;if(Cg(e)){let i=e_(this),a=m_(i,e,void 0),o=!0;try{r=t(a),o=!1}finally{o?Qg(i):$g(i)}return Zg(i,n),t_(r,i)}else if(!e||!Pg(e)){if(r=t(e),r===void 0&&(r=e),r===ug&&(r=void 0),this.autoFreeze_&&Bg(r,!0),n){let t=[],i=[];qg(Wg).generateReplacementPatches_(e,r,{patches_:t,inversePatches_:i}),n(t,i)}return r}else pg(1,e)},this.produceWithPatches=(e,t)=>{if(Fg(e))return(t,...n)=>this.produceWithPatches(t,t=>e(t,...n));let n,r;return[this.produce(e,t,(e,t)=>{n=e,r=t}),n,r]},Ig(e?.autoFreeze)&&this.setAutoFreeze(e.autoFreeze),Ig(e?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),Ig(e?.useStrictIteration)&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){Cg(e)||pg(8),Sg(e)&&(e=Tne(e));let t=e_(this),n=m_(t,e,void 0);return n[fg].isManual_=!0,$g(t),n}finishDraft(e,t){let n=e&&e[fg];(!n||!n.isManual_)&&pg(9);let{scope_:r}=n;return Zg(r,t),t_(void 0,r)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}setUseStrictIteration(e){this.useStrictIteration_=e}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(e,t){let n;for(n=t.length-1;n>=0;n--){let r=t[n];if(r.path.length===0&&r.op===`replace`){e=r.value;break}}n>-1&&(t=t.slice(n+1));let r=qg(Wg).applyPatches_;return Sg(e)?r(e,t):this.produce(e,e=>r(e,t))}};function m_(e,t,n,r){let[i,a]=Mg(t)?qg(Ug).proxyMap_(t,n):Ng(t)?qg(Ug).proxySet_(t,n):Sne(t,n);return(n?.scope_??Xg()).drafts_.push(i),a.callbacks_=n?.callbacks_??[],a.key_=r,n&&r!==void 0?bne(n,a,r):a.callbacks_.push(function(e){e.mapSetPlugin_?.fixSetContents(a);let{patchPlugin_:t}=e;a.modified_&&t&&t.generatePatches_(a,[],e)}),i}function Tne(e){return Sg(e)||pg(10,e),h_(e)}function h_(e){if(!Cg(e)||Hg(e))return e;let t=e[fg],n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=zg(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=zg(e,!0);return Eg(n,(e,t)=>{Ag(n,e,h_(t))},r),t&&(t.finalized_=!1),n}var g_=new wne().produce,__=Symbol(`NOT_FOUND`);function Ene(e,t=`expected a function, instead received ${typeof e}`){if(typeof e!=`function`)throw TypeError(t)}function Dne(e,t=`expected an object, instead received ${typeof e}`){if(typeof e!=`object`)throw TypeError(t)}function One(e,t=`expected all items to be functions, instead received the following types: `){if(!e.every(e=>typeof e==`function`)){let n=e.map(e=>typeof e==`function`?`function ${e.name||`unnamed`}()`:typeof e).join(`, `);throw TypeError(`${t}[${n}]`)}}var v_=e=>Array.isArray(e)?e:[e];function kne(e){let t=Array.isArray(e[0])?e[0]:e;return One(t,`createSelector expects all input-selectors to be functions, but received the following types: `),t}function Ane(e,t){let n=[],{length:r}=e;for(let i=0;i<r;i++)n.push(e[i].apply(null,t));return n}function jne(e){let t;return{get(n){return t&&e(t.key,n)?t.value:__},put(e,n){t={key:e,value:n}},getEntries(){return t?[t]:[]},clear(){t=void 0}}}function Mne(e,t){let n=[];function r(e){let r=n.findIndex(n=>t(e,n.key));if(r>-1){let e=n[r];return r>0&&(n.splice(r,1),n.unshift(e)),e.value}return __}function i(t,i){r(t)===__&&(n.unshift({key:t,value:i}),n.length>e&&n.pop())}function a(){return n}function o(){n=[]}return{get:r,put:i,getEntries:a,clear:o}}var Nne=(e,t)=>e===t;function Pne(e){return function(t,n){if(t===null||n===null||t.length!==n.length)return!1;let{length:r}=t;for(let i=0;i<r;i++)if(!e(t[i],n[i]))return!1;return!0}}function Fne(e,t){let{equalityCheck:n=Nne,maxSize:r=1,resultEqualityCheck:i}=typeof t==`object`?t:{equalityCheck:t},a=Pne(n),o=0,s=r<=1?jne(a):Mne(r,a);function c(){let t=s.get(arguments);if(t===__){if(t=e.apply(null,arguments),o++,i){let e=s.getEntries().find(e=>i(e.value,t));e&&(t=e.value,o!==0&&o--)}s.put(arguments,t)}return t}return c.clearCache=()=>{s.clear(),c.resetResultsCount()},c.resultsCount=()=>o,c.resetResultsCount=()=>{o=0},c}var Ine=class{constructor(e){this.value=e}deref(){return this.value}},Lne=typeof WeakRef<`u`?WeakRef:Ine,Rne=0,y_=1;function b_(){return{s:Rne,v:void 0,o:null,p:null}}function x_(e,t={}){let n=b_(),{resultEqualityCheck:r}=t,i,a=0;function o(){let t=n,{length:o}=arguments;for(let e=0,n=o;e<n;e++){let n=arguments[e];if(typeof n==`function`||typeof n==`object`&&n){let e=t.o;e===null&&(t.o=e=new WeakMap);let r=e.get(n);r===void 0?(t=b_(),e.set(n,t)):t=r}else{let e=t.p;e===null&&(t.p=e=new Map);let r=e.get(n);r===void 0?(t=b_(),e.set(n,t)):t=r}}let s=t,c;if(t.s===y_)c=t.v;else if(c=e.apply(null,arguments),a++,r){let e=i?.deref?.()??i;e!=null&&r(e,c)&&(c=e,a!==0&&a--),i=typeof c==`object`&&c||typeof c==`function`?new Lne(c):c}return s.s=y_,s.v=c,c}return o.clearCache=()=>{n=b_(),o.resetResultsCount()},o.resultsCount=()=>a,o.resetResultsCount=()=>{a=0},o}function S_(e,...t){let n=typeof e==`function`?{memoize:e,memoizeOptions:t}:e,r=(...e)=>{let t=0,r=0,i,a={},o=e.pop();typeof o==`object`&&(a=o,o=e.pop()),Ene(o,`createSelector expects an output function after the inputs, but received: [${typeof o}]`);let{memoize:s,memoizeOptions:c=[],argsMemoize:l=x_,argsMemoizeOptions:u=[],devModeChecks:d={}}={...n,...a},f=v_(c),p=v_(u),m=kne(e),h=s(function(){return t++,o.apply(null,arguments)},...f),g=l(function(){r++;let e=Ane(m,arguments);return i=h.apply(null,e),i},...p);return Object.assign(g,{resultFunc:o,memoizedResultFunc:h,dependencies:m,dependencyRecomputations:()=>r,resetDependencyRecomputations:()=>{r=0},lastResult:()=>i,recomputations:()=>t,resetRecomputations:()=>{t=0},memoize:s,argsMemoize:l})};return Object.assign(r,{withTypes:()=>r}),r}var C_=S_(x_),zne=Object.assign((e,t=C_)=>{Dne(e,`createStructuredSelector expects first argument to be an object where each property is a selector, instead received a ${typeof e}`);let n=Object.keys(e);return t(n.map(t=>e[t]),(...e)=>e.reduce((e,t,r)=>(e[n[r]]=t,e),{}))},{withTypes:()=>zne});function w_(e){return({dispatch:t,getState:n})=>r=>i=>typeof i==`function`?i(t,n,e):r(i)}var Bne=w_(),Vne=w_,Hne=typeof window<`u`&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(arguments.length!==0)return typeof arguments[0]==`object`?lg:lg.apply(null,arguments)};typeof window<`u`&&window.__REDUX_DEVTOOLS_EXTENSION__&&window.__REDUX_DEVTOOLS_EXTENSION__;var Une=e=>e&&typeof e.match==`function`;function T_(e,t){function n(...n){if(t){let r=t(...n);if(!r)throw Error(M_(0));return{type:e,payload:r.payload,...`meta`in r&&{meta:r.meta},...`error`in r&&{error:r.error}}}return{type:e,payload:n[0]}}return n.toString=()=>`${e}`,n.type=e,n.match=t=>dne(t)&&t.type===e,n}var E_=class e extends Array{constructor(...t){super(...t),Object.setPrototypeOf(this,e.prototype)}static get[Symbol.species](){return e}concat(...e){return super.concat.apply(this,e)}prepend(...t){return t.length===1&&Array.isArray(t[0])?new e(...t[0].concat(this)):new e(...t.concat(this))}};function D_(e){return Cg(e)?g_(e,()=>{}):e}function Wne(e){return typeof e==`boolean`}var Gne=()=>function(e){let{thunk:t=!0,immutableCheck:n=!0,serializableCheck:r=!0,actionCreatorCheck:i=!0}=e??{},a=new E_;return t&&(Wne(t)?a.push(Bne):a.push(Vne(t.extraArgument))),a},Kne=`RTK_autoBatch`,O_=e=>t=>{setTimeout(t,e)},qne=(e={type:`raf`})=>t=>(...n)=>{let r=t(...n),i=!0,a=!1,o=!1,s=new Set,c=e.type===`tick`?queueMicrotask:e.type===`raf`?typeof window<`u`&&window.requestAnimationFrame?window.requestAnimationFrame:O_(10):e.type===`callback`?e.queueNotification:O_(e.timeout),l=()=>{o=!1,a&&(a=!1,s.forEach(e=>e()))};return Object.assign({},r,{subscribe(e){let t=r.subscribe(()=>i&&e());return s.add(e),()=>{t(),s.delete(e)}},dispatch(e){try{return i=!e?.meta?.[Kne],a=!i,a&&(o||(o=!0,c(l))),r.dispatch(e)}finally{i=!0}}})},Jne=e=>function(t){let{autoBatch:n=!0}=t??{},r=new E_(e);return n&&r.push(qne(typeof n==`object`?n:void 0)),r};function Yne(e){let t=Gne(),{reducer:n=void 0,middleware:r,devTools:i=!0,duplicateMiddlewareCheck:a=!0,preloadedState:o=void 0,enhancers:s=void 0}=e||{},c;if(typeof n==`function`)c=n;else if(sg(n))c=lne(n);else throw Error(M_(1));let l;l=typeof r==`function`?r(t):t();let u=lg;i&&(u=Hne({trace:!1,...typeof i==`object`&&i}));let d=Jne(une(...l)),f=typeof s==`function`?s(d):d(),p=u(...f);return cg(c,o,p)}function Xne(e){let t={},n=[],r,i={addCase(e,n){let r=typeof e==`string`?e:e.type;if(!r)throw Error(M_(28));if(r in t)throw Error(M_(29));return t[r]=n,i},addAsyncThunk(e,r){return r.pending&&(t[e.pending.type]=r.pending),r.rejected&&(t[e.rejected.type]=r.rejected),r.fulfilled&&(t[e.fulfilled.type]=r.fulfilled),r.settled&&n.push({matcher:e.settled,reducer:r.settled}),i},addMatcher(e,t){return n.push({matcher:e,reducer:t}),i},addDefaultCase(e){return r=e,i}};return e(i),[t,n,r]}function Zne(e){return typeof e==`function`}function k_(e,t){let[n,r,i]=Xne(t),a;if(Zne(e))a=()=>D_(e());else{let t=D_(e);a=()=>t}function o(e=a(),t){let o=[n[t.type],...r.filter(({matcher:e})=>e(t)).map(({reducer:e})=>e)];return o.filter(e=>!!e).length===0&&(o=[i]),o.reduce((e,n)=>{if(n)if(Sg(e)){let r=n(e,t);return r===void 0?e:r}else if(Cg(e))return g_(e,e=>n(e,t));else{let r=n(e,t);if(r===void 0){if(e===null)return e;throw Error(`A case reducer on a non-draftable value must not return undefined`)}return r}return e},e)}return o.getInitialState=a,o}var Qne=(e,t)=>Une(e)?e.match(t):e(t);function $ne(...e){return t=>e.some(e=>Qne(e,t))}var ere=`ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW`,tre=(e=21)=>{let t=``,n=e;for(;n--;)t+=ere[Math.random()*64|0];return t},nre=[`name`,`message`,`stack`,`code`],A_=class{constructor(e,t){this.payload=e,this.meta=t}_type},rre=class{constructor(e,t){this.payload=e,this.meta=t}_type},ire=e=>{if(typeof e==`object`&&e){let t={};for(let n of nre)typeof e[n]==`string`&&(t[n]=e[n]);return t}return{message:String(e)}},are=`External signal was aborted`,ore=(()=>{function e(e,t,n){let r=T_(e+`/fulfilled`,(e,t,n,r)=>({payload:e,meta:{...r||{},arg:n,requestId:t,requestStatus:`fulfilled`}})),i=T_(e+`/pending`,(e,t,n)=>({payload:void 0,meta:{...n||{},arg:t,requestId:e,requestStatus:`pending`}})),a=T_(e+`/rejected`,(e,t,r,i,a)=>({payload:i,error:(n&&n.serializeError||ire)(e||`Rejected`),meta:{...a||{},arg:r,requestId:t,rejectedWithValue:!!i,requestStatus:`rejected`,aborted:e?.name===`AbortError`,condition:e?.name===`ConditionError`}}));function o(e,{signal:o}={}){return(s,c,l)=>{let u=n?.idGenerator?n.idGenerator(e):tre(),d=new AbortController,f,p;function m(e){p=e,d.abort()}o&&(o.aborted?m(are):o.addEventListener(`abort`,()=>m(are),{once:!0}));let h=async function(){let o;try{let a=n?.condition?.(e,{getState:c,extra:l});if(cre(a)&&(a=await a),a===!1||d.signal.aborted)throw{name:`ConditionError`,message:`Aborted due to condition callback returning false.`};let h=new Promise((e,t)=>{f=()=>{t({name:`AbortError`,message:p||`Aborted`})},d.signal.addEventListener(`abort`,f,{once:!0})});s(i(u,e,n?.getPendingMeta?.({requestId:u,arg:e},{getState:c,extra:l}))),o=await Promise.race([h,Promise.resolve(t(e,{dispatch:s,getState:c,extra:l,requestId:u,signal:d.signal,abort:m,rejectWithValue:(e,t)=>new A_(e,t),fulfillWithValue:(e,t)=>new rre(e,t)})).then(t=>{if(t instanceof A_)throw t;return t instanceof rre?r(t.payload,u,e,t.meta):r(t,u,e)})])}catch(t){o=t instanceof A_?a(null,u,e,t.payload,t.meta):a(t,u,e)}finally{f&&d.signal.removeEventListener(`abort`,f)}return n&&!n.dispatchConditionRejection&&a.match(o)&&o.meta.condition||s(o),o}();return Object.assign(h,{abort:m,requestId:u,arg:e,unwrap(){return h.then(sre)}})}}return Object.assign(o,{pending:i,rejected:a,fulfilled:r,settled:$ne(a,r),typePrefix:e})}return e.withTypes=()=>e,e})();function sre(e){if(e.meta&&e.meta.rejectedWithValue)throw e.payload;if(e.error)throw e.error;return e.payload}function cre(e){return typeof e==`object`&&!!e&&typeof e.then==`function`}var lre=`listener`,ure=`completed`,dre=`cancelled`;`${dre}`,`${ure}`,`${lre}${dre}`,`${lre}${ure}`;var{assign:fre}=Object,j_=`listenerMiddleware`,pre=fre(T_(`${j_}/add`),{withTypes:()=>pre});`${j_}`;var mre=fre(T_(`${j_}/remove`),{withTypes:()=>mre});function M_(e){return`Minified Redux Toolkit error #${e}; visit https://redux-toolkit.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var hre=class extends Error{constructor(e,t,n){super(e),this.status=t,this.body=n,this.name=`ApiError`}};async function N_(e){let t=await e.text();try{return JSON.parse(t)}catch{throw new hre(`Invalid JSON response (HTTP ${e.status}): ${t.slice(0,120)}`,e.status,t)}}async function P_(e,t){if(!e.ok){let n=await e.text().catch(()=>``),r=t;try{let e=JSON.parse(n);e?.error&&(r=e.error)}catch{r=n?`${t} (HTTP ${e.status}: ${n.slice(0,120)})`:`${t} (HTTP ${e.status})`}throw Error(r)}}async function gre(){let e=await fetch(`api/matter/bridges?_s=${Date.now()}`);return await P_(e,`Failed to fetch bridges`),N_(e)}async function F_(e){let t=await fetch(`api/matter/bridges`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e)});return await P_(t,`Failed to create bridge`),N_(t)}async function I_(e){let t=await fetch(`api/matter/bridges/${e.id}`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e)});return await P_(t,`Failed to update bridge`),N_(t)}async function _re(e){await fetch(`api/matter/bridges/${e}`,{method:`DELETE`})}async function vre(e){let t=await fetch(`api/matter/bridges/${e}/actions/factory-reset`,{method:`POST`});return await P_(t,`Factory reset failed`),N_(t)}async function L_(e){let t=await fetch(`api/matter/bridges/${e}/actions/force-sync`,{method:`POST`});return await P_(t,`Force sync failed`),N_(t)}async function yre(e){let t=await fetch(`api/matter/bridges/${e}/actions/open-commissioning-window`,{method:`POST`});return await P_(t,`Failed to open commissioning window`),N_(t)}async function bre(e){if(!(await fetch(`api/matter/bridges/priorities`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({updates:e})})).ok)throw Error(`Failed to update priorities`)}async function R_(){let e=await fetch(`api/matter/bridges/actions/start-all`,{method:`POST`});return await P_(e,`Failed to start all bridges`),N_(e)}async function z_(){let e=await fetch(`api/matter/bridges/actions/stop-all`,{method:`POST`});return await P_(e,`Failed to stop all bridges`),N_(e)}async function B_(){let e=await fetch(`api/matter/bridges/actions/restart-all`,{method:`POST`});return await P_(e,`Failed to restart all bridges`),N_(e)}var V_=ore.withTypes(),H_=C_.withTypes(),U_=V_(`bridges/load`,gre),W_=V_(`bridges/create`,F_),G_=V_(`bridges/delete`,_re),K_=V_(`bridges/update`,I_),q_=V_(`bridges/reset`,vre),J_=T_(`bridges/setFromWebSocket`),Y_=T_(`bridges/updateFromWebSocket`),X_=V.withTypes(),Z_=ie.withTypes(),Q_=(0,C.createContext)({isConnected:!1,error:null});function $_(){return(0,C.useContext)(Q_)}function xre({children:e}){let t=X_(),[n,r]=(0,C.useState)(!1),[i,a]=(0,C.useState)(null),o=(0,C.useRef)(null),s=(0,C.useRef)(void 0),c=(0,C.useCallback)(e=>{switch(e.type){case`bridges_update`:t(J_(e.data));break;case`bridge_update`:t(Y_(e.data));break;case`ping`:o.current?.send(JSON.stringify({type:`pong`}));break}},[t]),l=(0,C.useCallback)(()=>{if(o.current?.readyState===WebSocket.OPEN)return;let e=window.location.protocol===`https:`?`wss:`:`ws:`,t=document.querySelector(`base`)?.href||window.location.origin,n=new URL(t),i=`${e}//${n.host}${n.pathname}api/ws`.replace(/\/+/g,`/`).replace(`:/`,`://`);try{let e=new WebSocket(i);o.current=e,e.onopen=()=>{r(!0),a(null)},e.onmessage=e=>{try{c(JSON.parse(e.data))}catch{console.warn(`Invalid WebSocket message`)}},e.onclose=()=>{r(!1),o.current=null,s.current=setTimeout(l,3e3)},e.onerror=()=>{a(Error(`WebSocket connection error`)),e.close()}}catch(e){a(e instanceof Error?e:Error(`Failed to connect`))}},[c]);return(0,C.useEffect)(()=>(l(),()=>{s.current&&clearTimeout(s.current),o.current?.close()}),[l]),(0,G.jsx)(Q_.Provider,{value:{isConnected:n,error:i},children:e})}var Sre=()=>{let e=X_();return(0,C.useEffect)(()=>{e(U_())},[e]),(0,G.jsx)(oi,{})},ev;(function(e){e.Starting=`starting`,e.Running=`running`,e.Stopped=`stopped`,e.Failed=`failed`})(ev||={});var tv;(function(e){e.Pattern=`pattern`,e.Regex=`regex`,e.Domain=`domain`,e.Platform=`platform`,e.Label=`label`,e.EntityLabel=`entity_label`,e.DeviceLabel=`device_label`,e.EntityLabelRegex=`entity_label_regex`,e.DeviceLabelRegex=`device_label_regex`,e.AnyFieldRegex=`any_field_regex`,e.Area=`area`,e.EntityCategory=`entity_category`,e.DeviceName=`device_name`,e.ProductName=`product_name`,e.DeviceClass=`device_class`})(tv||={});var nv=[{id:`all_lights`,name:`All Lights`,description:`Expose all light entities. Ideal for controlling lights via Apple Home, Google Home, or Alexa.`,icon:`light`,filter:{include:[{type:tv.Domain,value:`light`}],exclude:[]},featureFlags:{autoBatteryMapping:!0},tags:[`lights`,`popular`]},{id:`all_switches`,name:`All Switches & Plugs`,description:`Expose all switch entities including smart plugs. Includes power and energy monitoring.`,icon:`switch`,filter:{include:[{type:tv.Domain,value:`switch`}],exclude:[]},featureFlags:{},tags:[`switches`,`plugs`]},{id:`sensors_only`,name:`All Sensors`,description:`Expose temperature, humidity, pressure, and other sensors. Auto-combines related sensors from the same device.`,icon:`sensor`,filter:{include:[{type:tv.Domain,value:`sensor`},{type:tv.Domain,value:`binary_sensor`}],exclude:[]},featureFlags:{autoBatteryMapping:!0,autoHumidityMapping:!0,autoPressureMapping:!0},tags:[`sensors`,`temperature`,`humidity`]},{id:`climate_control`,name:`Climate & Covers`,description:`Expose thermostats, fans, covers, and humidifiers for climate control.`,icon:`climate`,filter:{include:[{type:tv.Domain,value:`climate`},{type:tv.Domain,value:`fan`},{type:tv.Domain,value:`cover`},{type:tv.Domain,value:`humidifier`}],exclude:[]},featureFlags:{autoBatteryMapping:!0},tags:[`climate`,`thermostat`,`covers`]},{id:`security`,name:`Security & Locks`,description:`Expose locks, alarm panels, and security-related binary sensors (motion, door, window).`,icon:`lock`,filter:{include:[{type:tv.Domain,value:`lock`},{type:tv.Domain,value:`alarm_control_panel`},{type:tv.DeviceClass,value:`motion`},{type:tv.DeviceClass,value:`door`},{type:tv.DeviceClass,value:`window`}],exclude:[],includeMode:`any`},featureFlags:{autoBatteryMapping:!0},tags:[`security`,`locks`,`alarm`]},{id:`robot_vacuum`,name:`Robot Vacuum (Server Mode)`,description:`Single vacuum bridge with Server Mode enabled. Required for Apple Home Siri commands and proper Alexa discovery. Add only ONE vacuum to this bridge.`,icon:`vacuum`,filter:{include:[{type:tv.Domain,value:`vacuum`}],exclude:[]},featureFlags:{serverMode:!0},tags:[`vacuum`,`server-mode`,`apple-home`]},{id:`media_players`,name:`Media Players & Speakers`,description:`Expose media players, speakers, and TVs for volume and playback control.`,icon:`media_player`,filter:{include:[{type:tv.Domain,value:`media_player`}],exclude:[]},featureFlags:{},tags:[`media`,`speakers`,`tv`]},{id:`google_home_optimized`,name:`Google Home Optimized`,description:`All devices with Auto Force Sync enabled. Prevents Google Home from showing devices as offline after a few hours.`,icon:`default`,filter:{include:[{type:tv.Pattern,value:`*`}],exclude:[]},featureFlags:{autoForceSync:!0,autoBatteryMapping:!0,autoHumidityMapping:!0,autoPressureMapping:!0},tags:[`google-home`,`all-devices`]},{id:`alexa_covers`,name:`Alexa-Optimized Covers`,description:`Covers with Alexa-friendly percentage display. Displayed percentage matches Home Assistant values.`,icon:`cover`,filter:{include:[{type:tv.Domain,value:`cover`}],exclude:[]},featureFlags:{coverUseHomeAssistantPercentage:!0,autoBatteryMapping:!0},tags:[`alexa`,`covers`]},{id:`automations_scripts`,name:`Automations & Scripts`,description:`Expose Home Assistant automations, scripts, and scenes as Matter switches.`,icon:`remote`,filter:{include:[{type:tv.Domain,value:`automation`},{type:tv.Domain,value:`script`},{type:tv.Domain,value:`scene`}],exclude:[]},featureFlags:{},tags:[`automations`,`scripts`,`scenes`]}],Cre;(function(e){e[e.locked=1]=`locked`,e[e.unlocked=2]=`unlocked`})(Cre||={});var wre;(function(e){e[e.Off=0]=`Off`,e[e.Low=1]=`Low`,e[e.Medium=2]=`Medium`,e[e.High=3]=`High`,e[e.On=4]=`On`,e[e.Auto=5]=`Auto`,e[e.Smart=6]=`Smart`})(wre||={});var Tre;(function(e){e[e.Forward=0]=`Forward`,e[e.Reverse=1]=`Reverse`})(Tre||={});var Ere;(function(e){e[e.OffLowMedHigh=0]=`OffLowMedHigh`,e[e.OffLowHigh=1]=`OffLowHigh`,e[e.OffLowMedHighAuto=2]=`OffLowMedHighAuto`,e[e.OffLowHighAuto=3]=`OffLowHighAuto`,e[e.OffHighAuto=4]=`OffHighAuto`,e[e.OffHigh=5]=`OffHigh`})(Ere||={});var Dre;(function(e){e[e.Stopped=0]=`Stopped`,e[e.Running=1]=`Running`,e[e.Paused=2]=`Paused`,e[e.Error=3]=`Error`,e[e.SeekingCharger=64]=`SeekingCharger`,e[e.Charging=65]=`Charging`,e[e.Docked=66]=`Docked`})(Dre||={});var Ore;(function(e){e[e.Off=0]=`Off`,e[e.Auto=1]=`Auto`,e[e.Cool=3]=`Cool`,e[e.Heat=4]=`Heat`,e[e.EmergencyHeat=5]=`EmergencyHeat`,e[e.Precooling=6]=`Precooling`,e[e.FanOnly=7]=`FanOnly`,e[e.Dry=8]=`Dry`,e[e.Sleep=9]=`Sleep`})(Ore||={});var rv;(function(e){e.homeAssistantEntity=`homeAssistantEntity`,e.identify=`identify`,e.groups=`groups`,e.scenesManagement=`scenesManagement`,e.bridgedDeviceBasicInformation=`bridgedDeviceBasicInformation`,e.airQuality=`airQuality`,e.booleanState=`booleanState`,e.booleanStateConfiguration=`booleanStateConfiguration`,e.carbonDioxideConcentrationMeasurement=`carbonDioxideConcentrationMeasurement`,e.carbonMonoxideConcentrationMeasurement=`carbonMonoxideConcentrationMeasurement`,e.colorControl=`colorControl`,e.doorLock=`doorLock`,e.electricalEnergyMeasurement=`electricalEnergyMeasurement`,e.electricalPowerMeasurement=`electricalPowerMeasurement`,e.flowMeasurement=`flowMeasurement`,e.levelControl=`levelControl`,e.fanControl=`fanControl`,e.illuminanceMeasurement=`illuminanceMeasurement`,e.nitrogenDioxideConcentrationMeasurement=`nitrogenDioxideConcentrationMeasurement`,e.occupancySensing=`occupancySensing`,e.onOff=`onOff`,e.ozoneConcentrationMeasurement=`ozoneConcentrationMeasurement`,e.pm1ConcentrationMeasurement=`pm1ConcentrationMeasurement`,e.pm10ConcentrationMeasurement=`pm10ConcentrationMeasurement`,e.pm25ConcentrationMeasurement=`pm25ConcentrationMeasurement`,e.powerSource=`powerSource`,e.pressureMeasurement=`pressureMeasurement`,e.relativeHumidityMeasurement=`relativeHumidityMeasurement`,e.smokeCoAlarm=`smokeCoAlarm`,e.temperatureMeasurement=`temperatureMeasurement`,e.thermostat=`thermostat`,e.thermostatUserInterfaceConfiguration=`thermostatUserInterfaceConfiguration`,e.totalVolatileOrganicCompoundsConcentrationMeasurement=`totalVolatileOrganicCompoundsConcentrationMeasurement`,e.valveConfigurationAndControl=`valveConfigurationAndControl`,e.windowCovering=`windowCovering`,e.mediaInput=`mediaInput`,e.rvcCleanMode=`rvcCleanMode`,e.rvcRunMode=`rvcRunMode`,e.rvcOperationalState=`rvcOperationalState`,e.serviceArea=`serviceArea`,e.switch=`switch`,e.modeSelect=`modeSelect`})(rv||={});var iv=[{id:`apple_home`,name:`Apple Home`,description:`Optimized for Apple Home and Siri. Enables composed devices for clean sensor grouping. Covers use standard Matter percentage (inverted from HA).`,icon:`default`,featureFlags:{autoComposedDevices:!0,autoBatteryMapping:!0,autoHumidityMapping:!0,autoPressureMapping:!0}},{id:`google_home`,name:`Google Home`,description:`Optimized for Google Home. Enables Auto Force Sync to prevent devices from going offline. Composed devices enabled for proper sensor grouping.`,icon:`default`,featureFlags:{autoForceSync:!0,autoComposedDevices:!0,autoBatteryMapping:!0,autoHumidityMapping:!0,autoPressureMapping:!0}},{id:`alexa`,name:`Amazon Alexa`,description:`Optimized for Alexa. Enables Auto Force Sync and Alexa-friendly cover percentages. Battery mapping included for sensor devices.`,icon:`default`,featureFlags:{autoForceSync:!0,autoBatteryMapping:!0,autoHumidityMapping:!0,autoPressureMapping:!0,coverUseHomeAssistantPercentage:!0}},{id:`multi_controller`,name:`Multi-Controller`,description:`Balanced settings for use with multiple controllers at once (e.g. Apple Home + Alexa). Force Sync enabled. Standard cover behavior.`,icon:`default`,featureFlags:{autoForceSync:!0,autoComposedDevices:!0,autoBatteryMapping:!0,autoHumidityMapping:!0,autoPressureMapping:!0}}],kre;(function(e){e.Battery=`battery`,e.BatteryCharging=`battery_charging`,e.CarbonMonoxide=`carbon_monoxide`,e.Cold=`cold`,e.Connectivity=`connectivity`,e.Door=`door`,e.GarageDoor=`garage_door`,e.Gas=`gas`,e.Heat=`heat`,e.Light=`light`,e.Lock=`lock`,e.Moisture=`moisture`,e.Motion=`motion`,e.Moving=`moving`,e.Occupancy=`occupancy`,e.Opening=`opening`,e.Plug=`plug`,e.Power=`power`,e.Presence=`presence`,e.Problem=`problem`,e.Rain=`rain`,e.Running=`running`,e.Safety=`safety`,e.Smoke=`smoke`,e.Sound=`sound`,e.Tamper=`tamper`,e.Update=`update`,e.Vibration=`vibration`,e.Window=`window`})(kre||={});var Are;(function(e){e.off=`off`,e.heat=`heat`,e.cool=`cool`,e.heat_cool=`heat_cool`,e.auto=`auto`,e.dry=`dry`,e.fan_only=`fan_only`})(Are||={});var jre;(function(e){e.off=`off`,e.preheating=`preheating`,e.heating=`heating`,e.cooling=`cooling`,e.drying=`drying`,e.fan=`fan`,e.idle=`idle`,e.defrosting=`defrosting`})(jre||={});var Mre;(function(e){e[e.TARGET_TEMPERATURE=1]=`TARGET_TEMPERATURE`,e[e.TARGET_TEMPERATURE_RANGE=2]=`TARGET_TEMPERATURE_RANGE`,e[e.TARGET_HUMIDITY=4]=`TARGET_HUMIDITY`,e[e.FAN_MODE=8]=`FAN_MODE`,e[e.PRESET_MODE=16]=`PRESET_MODE`,e[e.SWING_MODE=32]=`SWING_MODE`,e[e.AUX_HEAT=64]=`AUX_HEAT`,e[e.TURN_OFF=128]=`TURN_OFF`,e[e.TURN_ON=256]=`TURN_ON`,e[e.SWING_HORIZONTAL_MODE=512]=`SWING_HORIZONTAL_MODE`})(Mre||={});var Nre;(function(e){e.closed=`closed`,e.open=`open`,e.closing=`closing`,e.opening=`opening`})(Nre||={});var Pre;(function(e){e.button=`button`,e.doorbell=`doorbell`,e.motion=`motion`})(Pre||={});var Fre;(function(e){e.FORWARD=`forward`,e.REVERSE=`reverse`})(Fre||={});var Ire;(function(e){e[e.SET_SPEED=1]=`SET_SPEED`,e[e.OSCILLATE=2]=`OSCILLATE`,e[e.DIRECTION=4]=`DIRECTION`,e[e.PRESET_MODE=8]=`PRESET_MODE`,e[e.TURN_ON=16]=`TURN_ON`,e[e.TURN_OFF=32]=`TURN_OFF`})(Ire||={});var Lre;(function(e){e.UNKNOWN=`unknown`,e.ONOFF=`onoff`,e.BRIGHTNESS=`brightness`,e.COLOR_TEMP=`color_temp`,e.HS=`hs`,e.XY=`xy`,e.RGB=`rgb`,e.RGBW=`rgbw`,e.RGBWW=`rgbww`,e.WHITE=`white`})(Lre||={});var Rre;(function(e){e.Tv=`tv`,e.Speaker=`speaker`,e.Receiver=`receiver`})(Rre||={});var zre;(function(e){e[e.PAUSE=1]=`PAUSE`,e[e.SEEK=2]=`SEEK`,e[e.VOLUME_SET=4]=`VOLUME_SET`,e[e.VOLUME_MUTE=8]=`VOLUME_MUTE`,e[e.PREVIOUS_TRACK=16]=`PREVIOUS_TRACK`,e[e.NEXT_TRACK=32]=`NEXT_TRACK`,e[e.TURN_ON=128]=`TURN_ON`,e[e.TURN_OFF=256]=`TURN_OFF`,e[e.PLAY_MEDIA=512]=`PLAY_MEDIA`,e[e.VOLUME_STEP=1024]=`VOLUME_STEP`,e[e.SELECT_SOURCE=2048]=`SELECT_SOURCE`,e[e.STOP=4096]=`STOP`,e[e.CLEAR_PLAYLIST=8192]=`CLEAR_PLAYLIST`,e[e.PLAY=16384]=`PLAY`,e[e.SHUFFLE_SET=32768]=`SHUFFLE_SET`,e[e.SELECT_SOUND_MODE=65536]=`SELECT_SOUND_MODE`,e[e.BROWSE_MEDIA=131072]=`BROWSE_MEDIA`,e[e.REPEAT_SET=262144]=`REPEAT_SET`,e[e.GROUPING=524288]=`GROUPING`,e[e.MEDIA_ANNOUNCE=1048576]=`MEDIA_ANNOUNCE`,e[e.MEDIA_ENQUEUE=2097152]=`MEDIA_ENQUEUE`})(zre||={});var Bre;(function(e){e.None=`None`,e.apparent_power=`apparent_power`,e.aqi=`aqi`,e.atmospheric_pressure=`atmospheric_pressure`,e.battery=`battery`,e.carbon_dioxide=`carbon_dioxide`,e.carbon_monoxide=`carbon_monoxide`,e.current=`current`,e.data_rate=`data_rate`,e.data_size=`data_size`,e.date=`date`,e.distance=`distance`,e.duration=`duration`,e.energy=`energy`,e.energy_storage=`energy_storage`,e.enum=`enum`,e.frequency=`frequency`,e.gas=`gas`,e.humidity=`humidity`,e.illuminance=`illuminance`,e.irradiance=`irradiance`,e.moisture=`moisture`,e.monetary=`monetary`,e.nitrogen_dioxide=`nitrogen_dioxide`,e.nitrogen_monoxide=`nitrogen_monoxide`,e.nitrous_oxide=`nitrous_oxide`,e.ozone=`ozone`,e.ph=`ph`,e.pm1=`pm1`,e.pm25=`pm25`,e.pm10=`pm10`,e.power_factor=`power_factor`,e.power=`power`,e.precipitation=`precipitation`,e.precipitation_intensity=`precipitation_intensity`,e.pressure=`pressure`,e.radon=`radon`,e.reactive_power=`reactive_power`,e.signal_strength=`signal_strength`,e.sound_pressure=`sound_pressure`,e.speed=`speed`,e.sulphur_dioxide=`sulphur_dioxide`,e.temperature=`temperature`,e.timestamp=`timestamp`,e.volatile_organic_compounds=`volatile_organic_compounds`,e.volatile_organic_compounds_parts=`volatile_organic_compounds_parts`,e.voltage=`voltage`,e.volume=`volume`,e.volume_flow_rate=`volume_flow_rate`,e.volume_storage=`volume_storage`,e.water=`water`,e.weight=`weight`,e.wind_speed=`wind_speed`})(Bre||={});var Vre;(function(e){e.cleaning=`cleaning`,e.docked=`docked`,e.returning=`returning`,e.error=`error`,e.idle=`idle`,e.paused=`paused`,e.segment_cleaning=`segment_cleaning`,e.zone_cleaning=`zone_cleaning`,e.spot_cleaning=`spot_cleaning`,e.mop_cleaning=`mop_cleaning`})(Vre||={});var Hre;(function(e){e[e.TURN_ON=1]=`TURN_ON`,e[e.TURN_OFF=2]=`TURN_OFF`,e[e.PAUSE=4]=`PAUSE`,e[e.STOP=8]=`STOP`,e[e.RETURN_HOME=16]=`RETURN_HOME`,e[e.FAN_SPEED=32]=`FAN_SPEED`,e[e.BATTERY=64]=`BATTERY`,e[e.STATUS=128]=`STATUS`,e[e.SEND_COMMAND=256]=`SEND_COMMAND`,e[e.LOCATE=512]=`LOCATE`,e[e.CLEAN_SPOT=1024]=`CLEAN_SPOT`,e[e.MAP=2048]=`MAP`,e[e.STATE=4096]=`STATE`,e[e.START=8192]=`START`,e[e.CLEAN_AREA=16384]=`CLEAN_AREA`})(Hre||={});var Ure;(function(e){e.off=`off`,e.low=`low`,e.medium=`medium`,e.high=`high`,e.turbo=`turbo`,e.auto=`auto`,e.max=`max`})(Ure||={});var Wre;(function(e){e.off=`off`,e.eco=`eco`,e.electric=`electric`,e.gas=`gas`,e.heat_pump=`heat_pump`,e.high_demand=`high_demand`,e.performance=`performance`})(Wre||={});var Gre;(function(e){e[e.TARGET_TEMPERATURE=1]=`TARGET_TEMPERATURE`,e[e.OPERATION_MODE=2]=`OPERATION_MODE`,e[e.AWAY_MODE=4]=`AWAY_MODE`,e[e.ON_OFF=8]=`ON_OFF`})(Gre||={});var av={air_purifier:`Air Purifier`,air_quality_sensor:`Air Quality Sensor`,basic_video_player:`Basic Video Player (TV)`,battery_storage:`Battery Sensor`,carbon_monoxide_sensor:`Carbon Monoxide (CO) Sensor`,color_temperature_light:`Color Temperature Light`,contact_sensor:`Contact Sensor`,dishwasher:`Dishwasher`,dimmable_light:`Dimmable Light`,dimmable_plugin_unit:`Dimmable Plug-in Unit`,door_lock:`Door Lock`,electrical_sensor:`Electrical Sensor (Power/Energy/Voltage/Current)`,extended_color_light:`Extended Color Light`,fan:`Fan`,flow_sensor:`Flow Sensor`,formaldehyde_sensor:`Formaldehyde (HCHO) Sensor`,generic_switch:`Generic Switch (Button)`,humidifier_dehumidifier:`Humidifier/Dehumidifier`,humidity_sensor:`Humidity Sensor`,light_sensor:`Light Sensor`,mode_select:`Mode Select`,motion_sensor:`Motion Sensor (PIR)`,nitrogen_dioxide_sensor:`Nitrogen Dioxide (NO₂) Sensor`,occupancy_sensor:`Occupancy Sensor`,on_off_light:`On/Off Light`,on_off_plugin_unit:`On/Off Plug-in Unit`,on_off_switch:`On/Off Switch`,ozone_sensor:`Ozone (O₃) Sensor`,pm1_sensor:`PM1 Sensor`,pressure_sensor:`Pressure Sensor`,pump:`Pump`,rain_sensor:`Rain Sensor`,radon_sensor:`Radon Sensor`,robot_vacuum_cleaner:`Robot Vacuum Cleaner`,smoke_co_alarm:`Smoke/CO Alarm`,speaker:`Speaker`,temperature_sensor:`Temperature Sensor`,thermostat:`Thermostat`,tvoc_sensor:`TVOC / VOC Index Sensor`,water_heater:`Water Heater`,water_freeze_detector:`Water Freeze Detector`,water_leak_detector:`Water Leak Detector`,water_valve:`Water Valve`,window_covering:`Window Covering`},ov={Auto:0,Quick:1,Quiet:2,LowNoise:3,LowEnergy:4,Vacation:5,Min:6,Max:7,Night:8,Day:9,DeepClean:16384,Vacuum:16385,Mop:16386,VacuumThenMop:16387},Kre={alarm_control_panel:[`mode_select`,`on_off_plugin_unit`],automation:[`on_off_switch`],binary_sensor:[`contact_sensor`,`motion_sensor`,`occupancy_sensor`,`rain_sensor`,`smoke_co_alarm`,`water_freeze_detector`,`water_leak_detector`],button:[`generic_switch`],climate:[`thermostat`],cover:[`window_covering`],event:[`generic_switch`],fan:[`air_purifier`,`fan`],humidifier:[`humidifier_dehumidifier`],input_boolean:[`on_off_plugin_unit`,`on_off_switch`],input_select:[`mode_select`],input_button:[`generic_switch`],light:[`color_temperature_light`,`dimmable_light`,`extended_color_light`,`on_off_light`],lock:[`door_lock`],media_player:[`basic_video_player`,`on_off_switch`,`speaker`],scene:[`on_off_switch`],script:[`on_off_switch`],sensor:[`air_quality_sensor`,`battery_storage`,`carbon_monoxide_sensor`,`electrical_sensor`,`formaldehyde_sensor`,`humidity_sensor`,`light_sensor`,`nitrogen_dioxide_sensor`,`ozone_sensor`,`pm1_sensor`,`pressure_sensor`,`radon_sensor`,`temperature_sensor`,`tvoc_sensor`],select:[`mode_select`],siren:[`on_off_plugin_unit`],switch:[`dishwasher`,`on_off_plugin_unit`,`on_off_switch`,`pump`,`water_valve`],vacuum:[`robot_vacuum_cleaner`],valve:[`water_valve`,`on_off_plugin_unit`],water_heater:[`water_heater`,`thermostat`]},qre;(function(e){e.alarm_control_panel=`alarm_control_panel`,e.automation=`automation`,e.button=`button`,e.binary_sensor=`binary_sensor`,e.climate=`climate`,e.cover=`cover`,e.event=`event`,e.fan=`fan`,e.humidifier=`humidifier`,e.input_boolean=`input_boolean`,e.input_button=`input_button`,e.input_select=`input_select`,e.light=`light`,e.lock=`lock`,e.media_player=`media_player`,e.remote=`remote`,e.scene=`scene`,e.select=`select`,e.script=`script`,e.sensor=`sensor`,e.siren=`siren`,e.switch=`switch`,e.vacuum=`vacuum`,e.valve=`valve`,e.water_heater=`water_heater`})(qre||={});var sv={type:`object`,default:{type:``,value:``},properties:{type:{title:`Type`,type:`string`,oneOf:[{const:`pattern`,title:`pattern`,description:`Wildcard pattern matching entity IDs. Use * as wildcard. Example: 'light.living_room_*' matches all lights in the living room.`},{const:`regex`,title:`regex`,description:`Regex tested against the entity_id only (e.g. 'light.kitchen_lamp'). For labels use entity_label_regex or device_label_regex. Example: '^(light|switch)\\.kitchen_.*'.`},{const:`domain`,title:`domain`,description:`Match entities by their domain (the part before the dot). Example: 'light', 'switch', 'sensor'.`},{const:`platform`,title:`platform`,description:`Match entities by their integration/platform. Example: 'hue', 'zwave', 'mqtt'.`},{const:`label`,title:`label (deprecated)`,description:`Deprecated: use entity_label or device_label instead. Behaves like entity_label.`},{const:`entity_label`,title:`entity_label`,description:`Matches only entities that have this label assigned directly. Other entities of the same device are NOT included.`},{const:`device_label`,title:`device_label`,description:`Matches ALL entities of a device if the device has this label. Use this to include a complete device with all its entities.`},{const:`entity_label_regex`,title:`entity_label_regex`,description:`Regex tested against entity-label slugs and display names. Matches if any label assigned to the entity matches. Example: '^(matter|voice).*'.`},{const:`device_label_regex`,title:`device_label_regex`,description:`Regex tested against device-label slugs and display names. Matches ALL entities of a device whose label matches. Example: '^(matter|voice).*'.`},{const:`any_field_regex`,title:`any_field_regex`,description:`Regex tested against a single-line key=value haystack covering entity_id, domain, platform, area, entity_category, device_class, entity_labels, entity_label_names, device_labels, device_label_names, device_name, product_name. Use lookaheads for AND, alternation for OR. Example: '(?=.*domain=light)(?=.*area=living_room)|(?=.*domain=switch)(?=.*entity_labels=.*\\bvoice\\b)'.`},{const:`area`,title:`area`,description:`Match entities by their area slug. Example: 'living_room', 'bedroom'.`},{const:`entity_category`,title:`entity_category`,description:`Match entities by their category. Example: 'config', 'diagnostic' to exclude configuration entities.`},{const:`device_name`,title:`device_name`,description:`Match entities by their device name. Supports wildcards. Example: '*Philips*' matches all Philips devices.`},{const:`product_name`,title:`product_name`,description:`Match entities by their product/model name. Supports wildcards. Example: 'Hue*Bulb'.`},{const:`device_class`,title:`device_class`,description:`Match entities by their device class attribute. Example: 'temperature', 'motion', 'door', 'window'.`}]},value:{title:`Value`,description:`For labels, use the display name or the label_id (slug). You can look up both on the Labels page in the sidebar.`,type:`string`,minLength:1}},required:[`type`,`value`],additionalProperties:!1},cv={type:`object`,title:`Bridge Config`,properties:{name:{title:`Name`,type:`string`,minLength:1,maxLength:32},port:{title:`Port`,type:`number`,minimum:1},icon:{title:`Icon`,type:`string`,description:`Icon to display for this bridge in the UI`,enum:[`light`,`switch`,`climate`,`cover`,`fan`,`lock`,`sensor`,`media_player`,`vacuum`,`remote`,`humidifier`,`speaker`,`garage`,`door`,`window`,`motion`,`battery`,`power`,`camera`,`default`]},countryCode:{title:`Country Code`,type:`string`,description:`An ISO 3166-1 alpha-2 code to represent the country in which the Node is located. Only needed if the commissioning fails due to missing country code.`,minLength:2,maxLength:3},priority:{title:`Startup Priority`,type:`number`,description:`Startup order priority. Lower values start first. Default is 100.`,default:100,minimum:1,maximum:999},serialNumberSuffix:{title:`Serial Number Suffix`,type:`string`,description:`Append a suffix to every entity serial number on this bridge. Useful for forcing controllers like Aqara to treat devices as new and bypass cached device data. Leave empty for default behavior.`,maxLength:16},filter:{title:`Include or exclude entities`,type:`object`,properties:{include:{title:`Include`,type:`array`,items:sv},exclude:{title:`Exclude`,type:`array`,items:sv},includeMode:{title:`Include Mode`,type:`string`,description:`How to combine include rules: 'any' matches if ANY rule matches (OR), 'all' matches only if ALL rules match (AND). Default: 'any'`,enum:[`any`,`all`],default:`any`}},required:[`include`,`exclude`],additionalProperties:!1},featureFlags:{title:`Feature Flags`,type:`object`,properties:{coverDoNotInvertPercentage:{title:`Do not invert Percentages for Covers`,description:`Do not invert the percentage of covers to match Home Assistant (not Matter compliant)`,type:`boolean`,default:!1},coverUseHomeAssistantPercentage:{title:`Use Home Assistant Percentage for Covers (Alexa-friendly)`,description:`Display cover percentages matching Home Assistant values in Matter controllers like Alexa. This makes the displayed percentage match what you see in Home Assistant, but the semantic meaning differs: in HA, higher percentage = more open; in Alexa, higher percentage is typically interpreted as more closed. Open/Close commands will still work correctly.`,type:`boolean`,default:!1},coverSwapOpenClose:{title:`Swap Open/Close for Covers`,description:`Swap open/close commands and invert position reporting for covers. Enable this if Alexa voice commands are reversed (saying 'close' opens the blinds and vice versa).`,type:`boolean`,default:!1},includeHiddenEntities:{title:`Include Hidden Entities`,description:`Include entities that are marked as hidden in Home Assistant`,type:`boolean`,default:!1},serverMode:{title:`Server Mode (for Robot Vacuums)`,description:`Expose the device as a standalone Matter device instead of a bridged device. This is required for Apple Home to properly support Siri voice commands for Robot Vacuums. IMPORTANT: Only ONE device should be in this bridge when server mode is enabled.`,type:`boolean`,default:!1},autoBatteryMapping:{title:`Auto Battery Mapping`,description:`Automatically assign battery sensors from the same Home Assistant device to the main entity. When enabled, battery sensors will be merged into their parent devices instead of appearing as separate devices.`,type:`boolean`,default:!1},autoHumidityMapping:{title:`Auto Humidity Mapping`,description:`Automatically combine humidity sensors with temperature sensors from the same Home Assistant device. When enabled, humidity sensors will be merged into temperature sensors to create combined TemperatureHumiditySensor devices.`,type:`boolean`,default:!0},autoPressureMapping:{title:`Auto Pressure Mapping`,description:`Automatically combine pressure sensors with temperature sensors from the same Home Assistant device. When enabled, pressure sensors will be merged into temperature sensors to create combined sensor devices.`,type:`boolean`,default:!0},autoComposedDevices:{title:`Auto Composed Devices`,description:`Master toggle: combine related entities from the same Home Assistant device into a single Matter endpoint. Turns on battery, humidity, pressure, power, and energy auto-mapping at once, a Shelly Plug shows up as one device with power monitoring instead of several siblings.`,type:`boolean`,default:!1},autoForceSync:{title:`Auto Force Sync`,description:`Periodically compare and push all device states to connected controllers every 90 seconds. Enable this if devices get out of sync after extended periods. Health checks for dead sessions always run regardless of this setting.`,type:`boolean`,default:!1},productNameFromNodeLabel:{title:`Product Name from Node Label`,description:`Report the entity's node label (custom name / friendly name / entity id) as the Matter productName. Useful for controllers like Aqara that display productName as the device name instead of nodeLabel. A per-entity customProductName still takes precedence.`,type:`boolean`,default:!1},preferEntityRegistryName:{title:`Prefer Entity Registry Name (HA 2026.4 workaround)`,description:`Use the entity registry name (or original_name) as nodeLabel instead of the composed friendly_name. Since Home Assistant 2026.4, friendly_name is prefixed with the device name, which breaks voice commands that relied on the short entity name. Resolution order: customName → registry name → registry original_name → friendly_name → entity_id. Matter has no alias concept, this only changes which single name is reported.`,type:`boolean`,default:!1},vacuumOnOff:{title:`Vacuum: Include OnOff Cluster (Alexa)`,description:`Add an OnOff cluster to robot vacuum endpoints. Alexa REQUIRES this (PowerController) to show robotic vacuums in the app. Without it, Alexa commissions the device but never displays it. In Server Mode this is enabled automatically, only check this for bridge mode. WARNING: OnOff is NOT part of the Matter RVC device type specification. Enabling this may break Apple Home (shows 'Updating') and Google Home.`,type:`boolean`},alexaPreserveBrightnessOnTurnOn:{title:`Alexa: Preserve Brightness on Turn-On`,description:`Workaround for Alexa resetting light brightness to 100% after subscription renewal. When enabled, the bridge ignores brightness commands that set lights to 100% within 200ms of a turn-on command for the same light. WARNING: breaks Apple Home's 'set room to 100%' Siri commands, which use the same on() + moveToLevel(254) pattern. Only enable on Alexa-only bridges.`,type:`boolean`,default:!1},useHaRegistrySerial:{title:`Use HA Registry Serial Number`,description:`Fall back to the Home Assistant device registry serial_number when no per-entity customSerialNumber is configured. Default off because changing serialNumber after commissioning can confuse controllers. A per-entity customSerialNumber still takes precedence.`,type:`boolean`,default:!1},coverSliderDebounceMs:{title:`Cover Slider Debounce (ms)`,description:`Override the cover position-update debounce window for this bridge. Some controllers (Apple Home) stream slider updates while the user is still dragging, causing covers to start moving toward an intermediate target. Set to the time the bridge should wait after the last update before sending the final value to Home Assistant. 0 keeps the built-in two-phase debounce (400 ms initial / 150 ms subsequent), which fits most controllers. Try 800–1500 ms for slow blinds. A per-entity override on a single cover wins over this flag.`,type:`number`,minimum:0,maximum:5e3,default:0}}}},required:[`name`,`port`,`filter`],additionalProperties:!1};({...cv}),{...cv.properties},[...cv?.required??[]];var lv=X((0,G.jsx)(`path`,{d:`M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20z`}),`ArrowBack`),uv=X((0,G.jsx)(`path`,{d:`M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m-2 15-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8z`}),`CheckCircle`),dv=X((0,G.jsx)(`path`,{d:`M9.19 6.35c-2.04 2.29-3.44 5.58-3.57 5.89L2 10.69l4.05-4.05c.47-.47 1.15-.68 1.81-.55zM11.17 17s3.74-1.55 5.89-3.7c5.4-5.4 4.5-9.62 4.21-10.57-.95-.3-5.17-1.19-10.57 4.21C8.55 9.09 7 12.83 7 12.83zm6.48-2.19c-2.29 2.04-5.58 3.44-5.89 3.57L13.31 22l4.05-4.05c.47-.47.68-1.15.55-1.81zM9 18c0 .83-.34 1.58-.88 2.12C6.94 21.3 2 22 2 22s.7-4.94 1.88-6.12C4.42 15.34 5.17 15 6 15c1.66 0 3 1.34 3 3m4-9c0-1.1.9-2 2-2s2 .9 2 2-.9 2-2 2-2-.9-2-2`}),`RocketLaunch`),Jre=Ld(`MuiBox`,[`root`]),Z=Pd({themeId:wm,defaultTheme:Sm(),defaultClassName:Jre.root,generateClassName:Md.generate});function Yre(e){return Id(`MuiButton`,e)}var fv=Ld(`MuiButton`,`root.text.textInherit.textPrimary.textSecondary.textSuccess.textError.textInfo.textWarning.outlined.outlinedInherit.outlinedPrimary.outlinedSecondary.outlinedSuccess.outlinedError.outlinedInfo.outlinedWarning.contained.containedInherit.containedPrimary.containedSecondary.containedSuccess.containedError.containedInfo.containedWarning.disableElevation.focusVisible.disabled.colorInherit.colorPrimary.colorSecondary.colorSuccess.colorError.colorInfo.colorWarning.textSizeSmall.textSizeMedium.textSizeLarge.outlinedSizeSmall.outlinedSizeMedium.outlinedSizeLarge.containedSizeSmall.containedSizeMedium.containedSizeLarge.sizeMedium.sizeSmall.sizeLarge.fullWidth.startIcon.endIcon.icon.iconSizeSmall.iconSizeMedium.iconSizeLarge.loading.loadingWrapper.loadingIconPlaceholder.loadingIndicator.loadingPositionCenter.loadingPositionStart.loadingPositionEnd`.split(`.`)),Xre=C.createContext({}),Zre=C.createContext(void 0),Qre=e=>{let{color:t,disableElevation:n,fullWidth:r,size:i,variant:a,loading:o,loadingPosition:s,classes:c}=e,l=dp({root:[`root`,o&&`loading`,a,`${a}${Y(t)}`,`size${Y(i)}`,`${a}Size${Y(i)}`,`color${Y(t)}`,n&&`disableElevation`,r&&`fullWidth`,o&&`loadingPosition${Y(s)}`],startIcon:[`icon`,`startIcon`,`iconSize${Y(i)}`],endIcon:[`icon`,`endIcon`,`iconSize${Y(i)}`],loadingIndicator:[`loadingIndicator`],loadingWrapper:[`loadingWrapper`]},Yre,c);return{...c,...l}},pv=[{props:{size:`small`},style:{"& > *:nth-of-type(1)":{fontSize:18}}},{props:{size:`medium`},style:{"& > *:nth-of-type(1)":{fontSize:20}}},{props:{size:`large`},style:{"& > *:nth-of-type(1)":{fontSize:22}}}],$re=J(Fh,{shouldForwardProp:e=>Om(e)||e===`classes`,name:`MuiButton`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[n.variant],t[`${n.variant}${Y(n.color)}`],t[`size${Y(n.size)}`],t[`${n.variant}Size${Y(n.size)}`],n.color===`inherit`&&t.colorInherit,n.disableElevation&&t.disableElevation,n.fullWidth&&t.fullWidth,n.loading&&t.loading]}})(Im(({theme:e})=>{let t=e.palette.mode===`light`?e.palette.grey[300]:e.palette.grey[800],n=e.palette.mode===`light`?e.palette.grey.A100:e.palette.grey[700];return{...e.typography.button,minWidth:64,padding:`6px 16px`,border:0,borderRadius:(e.vars||e).shape.borderRadius,transition:e.transitions.create([`background-color`,`box-shadow`,`border-color`,`color`],{duration:e.transitions.duration.short}),"&:hover":{textDecoration:`none`},[`&.${fv.disabled}`]:{color:(e.vars||e).palette.action.disabled},variants:[{props:{variant:`contained`},style:{color:`var(--variant-containedColor)`,backgroundColor:`var(--variant-containedBg)`,boxShadow:(e.vars||e).shadows[2],"&:hover":{boxShadow:(e.vars||e).shadows[4],"@media (hover: none)":{boxShadow:(e.vars||e).shadows[2]}},"&:active":{boxShadow:(e.vars||e).shadows[8]},[`&.${fv.focusVisible}`]:{boxShadow:(e.vars||e).shadows[6]},[`&.${fv.disabled}`]:{color:(e.vars||e).palette.action.disabled,boxShadow:(e.vars||e).shadows[0],backgroundColor:(e.vars||e).palette.action.disabledBackground}}},{props:{variant:`outlined`},style:{padding:`5px 15px`,border:`1px solid currentColor`,borderColor:`var(--variant-outlinedBorder, currentColor)`,backgroundColor:`var(--variant-outlinedBg)`,color:`var(--variant-outlinedColor)`,[`&.${fv.disabled}`]:{border:`1px solid ${(e.vars||e).palette.action.disabledBackground}`}}},{props:{variant:`text`},style:{padding:`6px 8px`,color:`var(--variant-textColor)`,backgroundColor:`var(--variant-textBg)`}},...Object.entries(e.palette).filter(Gm()).map(([t])=>({props:{color:t},style:{"--variant-textColor":(e.vars||e).palette[t].main,"--variant-outlinedColor":(e.vars||e).palette[t].main,"--variant-outlinedBorder":e.alpha((e.vars||e).palette[t].main,.5),"--variant-containedColor":(e.vars||e).palette[t].contrastText,"--variant-containedBg":(e.vars||e).palette[t].main,"@media (hover: hover)":{"&:hover":{"--variant-containedBg":(e.vars||e).palette[t].dark,"--variant-textBg":e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.hoverOpacity),"--variant-outlinedBorder":(e.vars||e).palette[t].main,"--variant-outlinedBg":e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.hoverOpacity)}}}})),{props:{color:`inherit`},style:{color:`inherit`,borderColor:`currentColor`,"--variant-containedBg":e.vars?e.vars.palette.Button.inheritContainedBg:t,"@media (hover: hover)":{"&:hover":{"--variant-containedBg":e.vars?e.vars.palette.Button.inheritContainedHoverBg:n,"--variant-textBg":e.alpha((e.vars||e).palette.text.primary,(e.vars||e).palette.action.hoverOpacity),"--variant-outlinedBg":e.alpha((e.vars||e).palette.text.primary,(e.vars||e).palette.action.hoverOpacity)}}}},{props:{size:`small`,variant:`text`},style:{padding:`4px 5px`,fontSize:e.typography.pxToRem(13)}},{props:{size:`large`,variant:`text`},style:{padding:`8px 11px`,fontSize:e.typography.pxToRem(15)}},{props:{size:`small`,variant:`outlined`},style:{padding:`3px 9px`,fontSize:e.typography.pxToRem(13)}},{props:{size:`large`,variant:`outlined`},style:{padding:`7px 21px`,fontSize:e.typography.pxToRem(15)}},{props:{size:`small`,variant:`contained`},style:{padding:`4px 10px`,fontSize:e.typography.pxToRem(13)}},{props:{size:`large`,variant:`contained`},style:{padding:`8px 22px`,fontSize:e.typography.pxToRem(15)}},{props:{disableElevation:!0},style:{boxShadow:`none`,"&:hover":{boxShadow:`none`},[`&.${fv.focusVisible}`]:{boxShadow:`none`},"&:active":{boxShadow:`none`},[`&.${fv.disabled}`]:{boxShadow:`none`}}},{props:{fullWidth:!0},style:{width:`100%`}},{props:{loadingPosition:`center`},style:{transition:e.transitions.create([`background-color`,`box-shadow`,`border-color`],{duration:e.transitions.duration.short}),[`&.${fv.loading}`]:{color:`transparent`}}}]}})),eie=J(`span`,{name:`MuiButton`,slot:`StartIcon`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.startIcon,n.loading&&t.startIconLoadingStart,t[`iconSize${Y(n.size)}`]]}})(({theme:e})=>({display:`inherit`,marginRight:8,marginLeft:-4,variants:[{props:{size:`small`},style:{marginLeft:-2}},{props:{loadingPosition:`start`,loading:!0},style:{transition:e.transitions.create([`opacity`],{duration:e.transitions.duration.short}),opacity:0}},{props:{loadingPosition:`start`,loading:!0,fullWidth:!0},style:{marginRight:-8}},...pv]})),tie=J(`span`,{name:`MuiButton`,slot:`EndIcon`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.endIcon,n.loading&&t.endIconLoadingEnd,t[`iconSize${Y(n.size)}`]]}})(({theme:e})=>({display:`inherit`,marginRight:-4,marginLeft:8,variants:[{props:{size:`small`},style:{marginRight:-2}},{props:{loadingPosition:`end`,loading:!0},style:{transition:e.transitions.create([`opacity`],{duration:e.transitions.duration.short}),opacity:0}},{props:{loadingPosition:`end`,loading:!0,fullWidth:!0},style:{marginLeft:-8}},...pv]})),nie=J(`span`,{name:`MuiButton`,slot:`LoadingIndicator`})(({theme:e})=>({display:`none`,position:`absolute`,visibility:`visible`,variants:[{props:{loading:!0},style:{display:`flex`}},{props:{loadingPosition:`start`},style:{left:14}},{props:{loadingPosition:`start`,size:`small`},style:{left:10}},{props:{variant:`text`,loadingPosition:`start`},style:{left:6}},{props:{loadingPosition:`center`},style:{left:`50%`,transform:`translate(-50%)`,color:(e.vars||e).palette.action.disabled}},{props:{loadingPosition:`end`},style:{right:14}},{props:{loadingPosition:`end`,size:`small`},style:{right:10}},{props:{variant:`text`,loadingPosition:`end`},style:{right:6}},{props:{loadingPosition:`start`,fullWidth:!0},style:{position:`relative`,left:-10}},{props:{loadingPosition:`end`,fullWidth:!0},style:{position:`relative`,right:-10}}]})),mv=J(`span`,{name:`MuiButton`,slot:`LoadingIconPlaceholder`})({display:`inline-block`,width:`1em`,height:`1em`}),hv=C.forwardRef(function(e,t){let n=C.useContext(Xre),r=C.useContext(Zre),i=Am({props:Zd(n,e),name:`MuiButton`}),{children:a,color:o=`primary`,component:s=`button`,className:c,disabled:l=!1,disableElevation:u=!1,disableFocusRipple:d=!1,endIcon:f,focusVisibleClassName:p,fullWidth:m=!1,id:h,loading:g=null,loadingIndicator:_,loadingPosition:v=`center`,size:y=`medium`,startIcon:b,type:x,variant:S=`text`,...w}=i,T=ah(h),E=_??(0,G.jsx)(Bh,{"aria-labelledby":T,color:`inherit`,size:16}),D={...i,color:o,component:s,disabled:l,disableElevation:u,disableFocusRipple:d,fullWidth:m,loading:g,loadingIndicator:E,loadingPosition:v,size:y,type:x,variant:S},O=Qre(D),k=(b||g&&v===`start`)&&(0,G.jsx)(eie,{className:O.startIcon,ownerState:D,children:b||(0,G.jsx)(mv,{className:O.loadingIconPlaceholder,ownerState:D})}),A=(f||g&&v===`end`)&&(0,G.jsx)(tie,{className:O.endIcon,ownerState:D,children:f||(0,G.jsx)(mv,{className:O.loadingIconPlaceholder,ownerState:D})}),j=r||``,M=typeof g==`boolean`?(0,G.jsx)(`span`,{className:O.loadingWrapper,style:{display:`contents`},children:g&&(0,G.jsx)(nie,{className:O.loadingIndicator,ownerState:D,children:E})}):null;return(0,G.jsxs)($re,{ownerState:D,className:K(n.className,O.root,c,j),component:s,disabled:l||g,focusRipple:!d,focusVisibleClassName:K(O.focusVisible,p),ref:t,type:x,id:g?T:h,...w,classes:O,children:[k,v!==`end`&&M,a,v===`end`&&M,A]})});function rie(e){return Id(`MuiCard`,e)}Ld(`MuiCard`,[`root`]);var iie=e=>{let{classes:t}=e;return dp({root:[`root`]},rie,t)},aie=J(Km,{name:`MuiCard`,slot:`Root`})({overflow:`hidden`}),gv=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiCard`}),{className:r,raised:i=!1,...a}=n,o={...n,raised:i};return(0,G.jsx)(aie,{className:K(iie(o).root,r),elevation:i?8:void 0,ref:t,ownerState:o,...a})});function oie(e){return Id(`MuiCardActionArea`,e)}var _v=Ld(`MuiCardActionArea`,[`root`,`focusVisible`,`focusHighlight`]),sie=e=>{let{classes:t}=e;return dp({root:[`root`],focusHighlight:[`focusHighlight`]},oie,t)},cie=J(Fh,{name:`MuiCardActionArea`,slot:`Root`})(Im(({theme:e})=>({display:`block`,textAlign:`inherit`,borderRadius:`inherit`,width:`100%`,[`&:hover .${_v.focusHighlight}`]:{opacity:(e.vars||e).palette.action.hoverOpacity,"@media (hover: none)":{opacity:0}},[`&.${_v.focusVisible} .${_v.focusHighlight}`]:{opacity:(e.vars||e).palette.action.focusOpacity}}))),lie=J(`span`,{name:`MuiCardActionArea`,slot:`FocusHighlight`})(Im(({theme:e})=>({overflow:`hidden`,pointerEvents:`none`,position:`absolute`,top:0,right:0,bottom:0,left:0,borderRadius:`inherit`,opacity:0,backgroundColor:`currentcolor`,transition:e.transitions.create(`opacity`,{duration:e.transitions.duration.short})}))),vv=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiCardActionArea`}),{children:r,className:i,focusVisibleClassName:a,slots:o={},slotProps:s={},...c}=n,l=n,u=sie(l),d={slots:o,slotProps:s},[f,p]=Wm(`root`,{elementType:cie,externalForwardedProps:{...d,...c},shouldForwardComponentProp:!0,ownerState:l,ref:t,className:K(u.root,i),additionalProps:{focusVisibleClassName:K(a,u.focusVisible)}}),[m,h]=Wm(`focusHighlight`,{elementType:lie,externalForwardedProps:d,ownerState:l,className:u.focusHighlight});return(0,G.jsxs)(f,{...p,children:[r,(0,G.jsx)(m,{...h})]})});function uie(e){return Id(`MuiCardContent`,e)}Ld(`MuiCardContent`,[`root`]);var die=e=>{let{classes:t}=e;return dp({root:[`root`]},uie,t)},fie=J(`div`,{name:`MuiCardContent`,slot:`Root`})({padding:16,"&:last-child":{paddingBottom:24}}),yv=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiCardContent`}),{className:r,component:i=`div`,...a}=n,o={...n,component:i};return(0,G.jsx)(fie,{as:i,className:K(die(o).root,r),ownerState:o,ref:t,...a})}),bv=C.createContext(void 0);function xv(){return C.useContext(bv)}function pie(e){return Id(`PrivateSwitchBase`,e)}Ld(`PrivateSwitchBase`,[`root`,`checked`,`disabled`,`input`,`edgeStart`,`edgeEnd`]);var mie=e=>{let{classes:t,checked:n,disabled:r,edge:i}=e;return dp({root:[`root`,n&&`checked`,r&&`disabled`,i&&`edge${Y(i)}`],input:[`input`]},pie,t)},hie=J(Fh,{name:`MuiSwitchBase`})({padding:9,borderRadius:`50%`,variants:[{props:{edge:`start`,size:`small`},style:{marginLeft:-3}},{props:({edge:e,ownerState:t})=>e===`start`&&t.size!==`small`,style:{marginLeft:-12}},{props:{edge:`end`,size:`small`},style:{marginRight:-3}},{props:({edge:e,ownerState:t})=>e===`end`&&t.size!==`small`,style:{marginRight:-12}}]}),gie=J(`input`,{name:`MuiSwitchBase`,shouldForwardProp:Om})({cursor:`inherit`,position:`absolute`,opacity:0,width:`100%`,height:`100%`,top:0,left:0,margin:0,padding:0,zIndex:1}),Sv=C.forwardRef(function(e,t){let{autoFocus:n,checked:r,checkedIcon:i,defaultChecked:a,disabled:o,disableFocusRipple:s=!1,edge:c=!1,icon:l,id:u,inputProps:d,inputRef:f,name:p,onBlur:m,onChange:h,onFocus:g,readOnly:_,required:v=!1,tabIndex:y,type:b,value:x,slots:S={},slotProps:C={},...w}=e,[T,E]=sh({controlled:r,default:!!a,name:`SwitchBase`,state:`checked`}),D=xv(),O=e=>{g&&g(e),D&&D.onFocus&&D.onFocus(e)},k=e=>{m&&m(e),D&&D.onBlur&&D.onBlur(e)},A=e=>{if(e.nativeEvent.defaultPrevented||_)return;let t=e.target.checked;E(t),h&&h(e,t)},j=o;D&&j===void 0&&(j=D.disabled);let M=b===`checkbox`||b===`radio`,N={...e,checked:T,disabled:j,disableFocusRipple:s,edge:c},P=mie(N),F={slots:S,slotProps:{input:d,...C}},[I,L]=Wm(`root`,{ref:t,elementType:hie,className:P.root,shouldForwardComponentProp:!0,externalForwardedProps:{...F,component:`span`,...w},getSlotProps:e=>({...e,onFocus:t=>{e.onFocus?.(t),O(t)},onBlur:t=>{e.onBlur?.(t),k(t)}}),ownerState:N,additionalProps:{centerRipple:!0,focusRipple:!s,role:void 0,tabIndex:null}}),[R,ee]=Wm(`input`,{ref:f,elementType:gie,className:P.input,externalForwardedProps:F,getSlotProps:e=>({...e,onChange:t=>{e.onChange?.(t),A(t)}}),ownerState:N,additionalProps:{autoFocus:n,checked:r,defaultChecked:a,disabled:j,id:M?u:void 0,name:p,readOnly:_,required:v,tabIndex:y,type:b,...b===`checkbox`&&x===void 0?{}:{value:x}}});return(0,G.jsxs)(I,{...L,children:[(0,G.jsx)(R,{...ee}),T?i:l]})}),_ie=X((0,G.jsx)(`path`,{d:`M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z`}),`CheckBoxOutlineBlank`),vie=X((0,G.jsx)(`path`,{d:`M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z`}),`CheckBox`),yie=X((0,G.jsx)(`path`,{d:`M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-2 10H7v-2h10v2z`}),`IndeterminateCheckBox`);function bie(e){return Id(`MuiCheckbox`,e)}var Cv=Ld(`MuiCheckbox`,[`root`,`checked`,`disabled`,`indeterminate`,`colorPrimary`,`colorSecondary`,`sizeSmall`,`sizeMedium`]),xie=e=>{let{classes:t,indeterminate:n,color:r,size:i}=e,a=dp({root:[`root`,n&&`indeterminate`,`color${Y(r)}`,`size${Y(i)}`]},bie,t);return{...t,...a}},Sie=J(Sv,{shouldForwardProp:e=>Om(e)||e===`classes`,name:`MuiCheckbox`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.indeterminate&&t.indeterminate,t[`size${Y(n.size)}`],n.color!==`default`&&t[`color${Y(n.color)}`]]}})(Im(({theme:e})=>({color:(e.vars||e).palette.text.secondary,variants:[{props:{color:`default`,disableRipple:!1},style:{"&:hover":{backgroundColor:e.alpha((e.vars||e).palette.action.active,(e.vars||e).palette.action.hoverOpacity)}}},...Object.entries(e.palette).filter(Gm()).map(([t])=>({props:{color:t,disableRipple:!1},style:{"&:hover":{backgroundColor:e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.hoverOpacity)}}})),...Object.entries(e.palette).filter(Gm()).map(([t])=>({props:{color:t},style:{[`&.${Cv.checked}, &.${Cv.indeterminate}`]:{color:(e.vars||e).palette[t].main},[`&.${Cv.disabled}`]:{color:(e.vars||e).palette.action.disabled}}})),{props:{disableRipple:!1},style:{"&:hover":{"@media (hover: none)":{backgroundColor:`transparent`}}}}]}))),Cie=(0,G.jsx)(vie,{}),wie=(0,G.jsx)(_ie,{}),Tie=(0,G.jsx)(yie,{}),wv=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiCheckbox`}),{checkedIcon:r=Cie,color:i=`primary`,icon:a=wie,indeterminate:o=!1,indeterminateIcon:s=Tie,inputProps:c,size:l=`medium`,disableRipple:u=!1,className:d,slots:f={},slotProps:p={},...m}=n,h=o?s:a,g=o?s:r,_={...n,disableRipple:u,color:i,indeterminate:o,size:l},v=xie(_),y=p.input??c,[b,x]=Wm(`root`,{ref:t,elementType:Sie,className:K(v.root,d),shouldForwardComponentProp:!0,externalForwardedProps:{slots:f,slotProps:p,...m},ownerState:_,additionalProps:{type:`checkbox`,icon:C.cloneElement(h,{fontSize:h.props.fontSize??l}),checkedIcon:C.cloneElement(g,{fontSize:g.props.fontSize??l}),disableRipple:u,slots:f,slotProps:{input:dh(typeof y==`function`?y(_):y,{"data-indeterminate":o})}}});return(0,G.jsx)(b,{...x,classes:v})}),Eie=X((0,G.jsx)(`path`,{d:`M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12 17 15.59z`}),`Cancel`);function Die(e){return Id(`MuiChip`,e)}var Tv=Ld(`MuiChip`,`root.sizeSmall.sizeMedium.colorDefault.colorError.colorInfo.colorPrimary.colorSecondary.colorSuccess.colorWarning.disabled.clickable.clickableColorPrimary.clickableColorSecondary.deletable.deletableColorPrimary.deletableColorSecondary.outlined.filled.outlinedPrimary.outlinedSecondary.filledPrimary.filledSecondary.avatar.avatarSmall.avatarMedium.avatarColorPrimary.avatarColorSecondary.icon.iconSmall.iconMedium.iconColorPrimary.iconColorSecondary.label.labelSmall.labelMedium.deleteIcon.deleteIconSmall.deleteIconMedium.deleteIconColorPrimary.deleteIconColorSecondary.deleteIconOutlinedColorPrimary.deleteIconOutlinedColorSecondary.deleteIconFilledColorPrimary.deleteIconFilledColorSecondary.focusVisible`.split(`.`)),Oie=e=>{let{classes:t,disabled:n,size:r,color:i,iconColor:a,onDelete:o,clickable:s,variant:c}=e;return dp({root:[`root`,c,n&&`disabled`,`size${Y(r)}`,`color${Y(i)}`,s&&`clickable`,s&&`clickableColor${Y(i)}`,o&&`deletable`,o&&`deletableColor${Y(i)}`,`${c}${Y(i)}`],label:[`label`,`label${Y(r)}`],avatar:[`avatar`,`avatar${Y(r)}`,`avatarColor${Y(i)}`],icon:[`icon`,`icon${Y(r)}`,`iconColor${Y(a)}`],deleteIcon:[`deleteIcon`,`deleteIcon${Y(r)}`,`deleteIconColor${Y(i)}`,`deleteIcon${Y(c)}Color${Y(i)}`]},Die,t)},kie=J(`div`,{name:`MuiChip`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e,{color:r,iconColor:i,clickable:a,onDelete:o,size:s,variant:c}=n;return[{[`& .${Tv.avatar}`]:t.avatar},{[`& .${Tv.avatar}`]:t[`avatar${Y(s)}`]},{[`& .${Tv.avatar}`]:t[`avatarColor${Y(r)}`]},{[`& .${Tv.icon}`]:t.icon},{[`& .${Tv.icon}`]:t[`icon${Y(s)}`]},{[`& .${Tv.icon}`]:t[`iconColor${Y(i)}`]},{[`& .${Tv.deleteIcon}`]:t.deleteIcon},{[`& .${Tv.deleteIcon}`]:t[`deleteIcon${Y(s)}`]},{[`& .${Tv.deleteIcon}`]:t[`deleteIconColor${Y(r)}`]},{[`& .${Tv.deleteIcon}`]:t[`deleteIcon${Y(c)}Color${Y(r)}`]},t.root,t[`size${Y(s)}`],t[`color${Y(r)}`],a&&t.clickable,a&&r!==`default`&&t[`clickableColor${Y(r)}`],o&&t.deletable,o&&r!==`default`&&t[`deletableColor${Y(r)}`],t[c],t[`${c}${Y(r)}`]]}})(Im(({theme:e})=>{let t=e.palette.mode===`light`?e.palette.grey[700]:e.palette.grey[300];return{maxWidth:`100%`,fontFamily:e.typography.fontFamily,fontSize:e.typography.pxToRem(13),display:`inline-flex`,alignItems:`center`,justifyContent:`center`,height:32,lineHeight:1.5,color:(e.vars||e).palette.text.primary,backgroundColor:(e.vars||e).palette.action.selected,borderRadius:32/2,whiteSpace:`nowrap`,transition:e.transitions.create([`background-color`,`box-shadow`]),cursor:`unset`,outline:0,textDecoration:`none`,border:0,padding:0,verticalAlign:`middle`,boxSizing:`border-box`,[`&.${Tv.disabled}`]:{opacity:(e.vars||e).palette.action.disabledOpacity,pointerEvents:`none`},[`& .${Tv.avatar}`]:{marginLeft:5,marginRight:-6,width:24,height:24,color:e.vars?e.vars.palette.Chip.defaultAvatarColor:t,fontSize:e.typography.pxToRem(12)},[`& .${Tv.avatarColorPrimary}`]:{color:(e.vars||e).palette.primary.contrastText,backgroundColor:(e.vars||e).palette.primary.dark},[`& .${Tv.avatarColorSecondary}`]:{color:(e.vars||e).palette.secondary.contrastText,backgroundColor:(e.vars||e).palette.secondary.dark},[`& .${Tv.avatarSmall}`]:{marginLeft:4,marginRight:-4,width:18,height:18,fontSize:e.typography.pxToRem(10)},[`& .${Tv.icon}`]:{marginLeft:5,marginRight:-6},[`& .${Tv.deleteIcon}`]:{WebkitTapHighlightColor:`transparent`,color:e.alpha((e.vars||e).palette.text.primary,.26),fontSize:22,cursor:`pointer`,margin:`0 5px 0 -6px`,"&:hover":{color:e.alpha((e.vars||e).palette.text.primary,.4)}},variants:[{props:{size:`small`},style:{height:24,[`& .${Tv.icon}`]:{fontSize:18,marginLeft:4,marginRight:-4},[`& .${Tv.deleteIcon}`]:{fontSize:16,marginRight:4,marginLeft:-4}}},...Object.entries(e.palette).filter(Gm([`contrastText`])).map(([t])=>({props:{color:t},style:{backgroundColor:(e.vars||e).palette[t].main,color:(e.vars||e).palette[t].contrastText,[`& .${Tv.deleteIcon}`]:{color:e.alpha((e.vars||e).palette[t].contrastText,.7),"&:hover, &:active":{color:(e.vars||e).palette[t].contrastText}}}})),{props:e=>e.iconColor===e.color,style:{[`& .${Tv.icon}`]:{color:e.vars?e.vars.palette.Chip.defaultIconColor:t}}},{props:e=>e.iconColor===e.color&&e.color!==`default`,style:{[`& .${Tv.icon}`]:{color:`inherit`}}},{props:{onDelete:!0},style:{[`&.${Tv.focusVisible}`]:{backgroundColor:e.alpha((e.vars||e).palette.action.selected,`${(e.vars||e).palette.action.selectedOpacity} + ${(e.vars||e).palette.action.focusOpacity}`)}}},...Object.entries(e.palette).filter(Gm([`dark`])).map(([t])=>({props:{color:t,onDelete:!0},style:{[`&.${Tv.focusVisible}`]:{background:(e.vars||e).palette[t].dark}}})),{props:{clickable:!0},style:{userSelect:`none`,WebkitTapHighlightColor:`transparent`,cursor:`pointer`,"&:hover":{backgroundColor:e.alpha((e.vars||e).palette.action.selected,`${(e.vars||e).palette.action.selectedOpacity} + ${(e.vars||e).palette.action.hoverOpacity}`)},[`&.${Tv.focusVisible}`]:{backgroundColor:e.alpha((e.vars||e).palette.action.selected,`${(e.vars||e).palette.action.selectedOpacity} + ${(e.vars||e).palette.action.focusOpacity}`)},"&:active":{boxShadow:(e.vars||e).shadows[1]}}},...Object.entries(e.palette).filter(Gm([`dark`])).map(([t])=>({props:{color:t,clickable:!0},style:{[`&:hover, &.${Tv.focusVisible}`]:{backgroundColor:(e.vars||e).palette[t].dark}}})),{props:{variant:`outlined`},style:{backgroundColor:`transparent`,border:e.vars?`1px solid ${e.vars.palette.Chip.defaultBorder}`:`1px solid ${e.palette.mode===`light`?e.palette.grey[400]:e.palette.grey[700]}`,[`&.${Tv.clickable}:hover`]:{backgroundColor:(e.vars||e).palette.action.hover},[`&.${Tv.focusVisible}`]:{backgroundColor:(e.vars||e).palette.action.focus},[`& .${Tv.avatar}`]:{marginLeft:4},[`& .${Tv.avatarSmall}`]:{marginLeft:2},[`& .${Tv.icon}`]:{marginLeft:4},[`& .${Tv.iconSmall}`]:{marginLeft:2},[`& .${Tv.deleteIcon}`]:{marginRight:5},[`& .${Tv.deleteIconSmall}`]:{marginRight:3}}},...Object.entries(e.palette).filter(Gm()).map(([t])=>({props:{variant:`outlined`,color:t},style:{color:(e.vars||e).palette[t].main,border:`1px solid ${e.alpha((e.vars||e).palette[t].main,.7)}`,[`&.${Tv.clickable}:hover`]:{backgroundColor:e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.hoverOpacity)},[`&.${Tv.focusVisible}`]:{backgroundColor:e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.focusOpacity)},[`& .${Tv.deleteIcon}`]:{color:e.alpha((e.vars||e).palette[t].main,.7),"&:hover, &:active":{color:(e.vars||e).palette[t].main}}}}))]}})),Aie=J(`span`,{name:`MuiChip`,slot:`Label`,overridesResolver:(e,t)=>{let{ownerState:n}=e,{size:r}=n;return[t.label,t[`label${Y(r)}`]]}})({overflow:`hidden`,textOverflow:`ellipsis`,paddingLeft:12,paddingRight:12,whiteSpace:`nowrap`,variants:[{props:{variant:`outlined`},style:{paddingLeft:11,paddingRight:11}},{props:{size:`small`},style:{paddingLeft:8,paddingRight:8}},{props:{size:`small`,variant:`outlined`},style:{paddingLeft:7,paddingRight:7}}]});function Ev(e){return e.key===`Backspace`||e.key===`Delete`}var Dv=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiChip`}),{avatar:r,className:i,clickable:a,color:o=`default`,component:s,deleteIcon:c,disabled:l=!1,icon:u,label:d,onClick:f,onDelete:p,onKeyDown:m,onKeyUp:h,size:g=`medium`,variant:_=`filled`,tabIndex:v,skipFocusWhenDisabled:y=!1,slots:b={},slotProps:x={},...S}=n,w=uh(C.useRef(null),t),T=e=>{e.stopPropagation(),p(e)},E=e=>{e.currentTarget===e.target&&Ev(e)&&e.preventDefault(),m&&m(e)},D=e=>{e.currentTarget===e.target&&p&&Ev(e)&&p(e),h&&h(e)},O=a!==!1&&f?!0:a,k=O||p?Fh:s||`div`,A={...n,component:k,disabled:l,size:g,color:o,iconColor:C.isValidElement(u)&&u.props.color||o,onDelete:!!p,clickable:O,variant:_},j=Oie(A),M=k===Fh?{component:s||`div`,focusVisibleClassName:j.focusVisible,...p&&{disableRipple:!0}}:{},N=null;p&&(N=c&&C.isValidElement(c)?C.cloneElement(c,{className:K(c.props.className,j.deleteIcon),onClick:T}):(0,G.jsx)(Eie,{className:j.deleteIcon,onClick:T}));let P=null;r&&C.isValidElement(r)&&(P=C.cloneElement(r,{className:K(j.avatar,r.props.className)}));let F=null;u&&C.isValidElement(u)&&(F=C.cloneElement(u,{className:K(j.icon,u.props.className)}));let I={slots:b,slotProps:x},[L,R]=Wm(`root`,{elementType:kie,externalForwardedProps:{...I,...S},ownerState:A,shouldForwardComponentProp:!0,ref:w,className:K(j.root,i),additionalProps:{disabled:O&&l?!0:void 0,tabIndex:y&&l?-1:v,...M},getSlotProps:e=>({...e,onClick:t=>{e.onClick?.(t),f?.(t)},onKeyDown:t=>{e.onKeyDown?.(t),E(t)},onKeyUp:t=>{e.onKeyUp?.(t),D(t)}})}),[ee,z]=Wm(`label`,{elementType:Aie,externalForwardedProps:I,ownerState:A,className:j.label});return(0,G.jsxs)(L,{as:k,...R,children:[P||F,(0,G.jsx)(ee,{...z,children:d}),N]})});function Ov(e){return e!=null&&!(Array.isArray(e)&&e.length===0)}function kv(e,t=!1){return e&&(Ov(e.value)&&e.value!==``||t&&Ov(e.defaultValue)&&e.defaultValue!==``)}function jie(e){return e.startAdornment}function Mie(e){return Id(`MuiFormControl`,e)}Ld(`MuiFormControl`,[`root`,`marginNone`,`marginNormal`,`marginDense`,`fullWidth`,`disabled`]);var Nie=e=>{let{classes:t,margin:n,fullWidth:r}=e;return dp({root:[`root`,n!==`none`&&`margin${Y(n)}`,r&&`fullWidth`]},Mie,t)},Pie=J(`div`,{name:`MuiFormControl`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[`margin${Y(n.margin)}`],n.fullWidth&&t.fullWidth]}})({display:`inline-flex`,flexDirection:`column`,position:`relative`,minWidth:0,padding:0,margin:0,border:0,verticalAlign:`top`,variants:[{props:{margin:`normal`},style:{marginTop:16,marginBottom:8}},{props:{margin:`dense`},style:{marginTop:8,marginBottom:4}},{props:{fullWidth:!0},style:{width:`100%`}}]}),Av=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiFormControl`}),{children:r,className:i,color:a=`primary`,component:o=`div`,disabled:s=!1,error:c=!1,focused:l,fullWidth:u=!1,hiddenLabel:d=!1,margin:f=`none`,required:p=!1,size:m=`medium`,variant:h=`outlined`,...g}=n,_={...n,color:a,component:o,disabled:s,error:c,fullWidth:u,hiddenLabel:d,margin:f,required:p,size:m,variant:h},v=Nie(_),[y,b]=C.useState(()=>{let e=!1;return r&&C.Children.forEach(r,t=>{if(!Qm(t,[`Input`,`Select`]))return;let n=Qm(t,[`Select`])?t.props.input:t;n&&jie(n.props)&&(e=!0)}),e}),[x,S]=C.useState(()=>{let e=!1;return r&&C.Children.forEach(r,t=>{Qm(t,[`Input`,`Select`])&&(kv(t.props,!0)||kv(t.props.inputProps,!0))&&(e=!0)}),e}),[w,T]=C.useState(!1);s&&w&&T(!1);let E=l!==void 0&&!s?l:w;C.useRef(!1);let D=C.useCallback(()=>{S(!0)},[]),O=C.useCallback(()=>{S(!1)},[]),k=C.useMemo(()=>({adornedStart:y,setAdornedStart:b,color:a,disabled:s,error:c,filled:x,focused:E,fullWidth:u,hiddenLabel:d,size:m,onBlur:()=>{T(!1)},onFocus:()=>{T(!0)},onEmpty:O,onFilled:D,registerEffect:void 0,required:p,variant:h}),[y,a,s,c,x,E,u,d,void 0,O,D,p,m,h]);return(0,G.jsx)(bv.Provider,{value:k,children:(0,G.jsx)(Pie,{as:o,ownerState:_,className:K(v.root,i),ref:t,...g,children:r})})});function Fie(e){return Id(`MuiTypography`,e)}var jv=Ld(`MuiTypography`,[`root`,`h1`,`h2`,`h3`,`h4`,`h5`,`h6`,`subtitle1`,`subtitle2`,`body1`,`body2`,`inherit`,`button`,`caption`,`overline`,`alignLeft`,`alignRight`,`alignCenter`,`alignJustify`,`noWrap`,`gutterBottom`,`paragraph`]),Iie={primary:!0,secondary:!0,error:!0,info:!0,success:!0,warning:!0,textPrimary:!0,textSecondary:!0,textDisabled:!0},Lie=Pee(),Rie=e=>{let{align:t,gutterBottom:n,noWrap:r,paragraph:i,variant:a,classes:o}=e;return dp({root:[`root`,a,e.align!==`inherit`&&`align${Y(t)}`,n&&`gutterBottom`,r&&`noWrap`,i&&`paragraph`]},Fie,o)},zie=J(`span`,{name:`MuiTypography`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.variant&&t[n.variant],n.align!==`inherit`&&t[`align${Y(n.align)}`],n.noWrap&&t.noWrap,n.gutterBottom&&t.gutterBottom,n.paragraph&&t.paragraph]}})(Im(({theme:e})=>({margin:0,variants:[{props:{variant:`inherit`},style:{font:`inherit`,lineHeight:`inherit`,letterSpacing:`inherit`}},...Object.entries(e.typography).filter(([e,t])=>e!==`inherit`&&t&&typeof t==`object`).map(([e,t])=>({props:{variant:e},style:t})),...Object.entries(e.palette).filter(Gm()).map(([t])=>({props:{color:t},style:{color:(e.vars||e).palette[t].main}})),...Object.entries(e.palette?.text||{}).filter(([,e])=>typeof e==`string`).map(([t])=>({props:{color:`text${Y(t)}`},style:{color:(e.vars||e).palette.text[t]}})),{props:({ownerState:e})=>e.align!==`inherit`,style:{textAlign:`var(--Typography-textAlign)`}},{props:({ownerState:e})=>e.noWrap,style:{overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`}},{props:({ownerState:e})=>e.gutterBottom,style:{marginBottom:`0.35em`}},{props:({ownerState:e})=>e.paragraph,style:{marginBottom:16}}]}))),Mv={h1:`h1`,h2:`h2`,h3:`h3`,h4:`h4`,h5:`h5`,h6:`h6`,subtitle1:`h6`,subtitle2:`h6`,body1:`p`,body2:`p`,inherit:`p`},Q=C.forwardRef(function(e,t){let{color:n,...r}=Am({props:e,name:`MuiTypography`}),i=!Iie[n],a=Lie({...r,...i&&{color:n}}),{align:o=`inherit`,className:s,component:c,gutterBottom:l=!1,noWrap:u=!1,paragraph:d=!1,variant:f=`body1`,variantMapping:p=Mv,...m}=a,h={...a,align:o,color:n,className:s,component:c,gutterBottom:l,noWrap:u,paragraph:d,variant:f,variantMapping:p};return(0,G.jsx)(zie,{as:c||(d?`p`:p[f]||Mv[f])||`span`,ref:t,className:K(Rie(h).root,s),...m,ownerState:h,style:{...o!==`inherit`&&{"--Typography-textAlign":o},...m.style}})});function Bie(e){return Id(`MuiFormControlLabel`,e)}var Nv=Ld(`MuiFormControlLabel`,[`root`,`labelPlacementStart`,`labelPlacementTop`,`labelPlacementBottom`,`disabled`,`label`,`error`,`required`,`asterisk`]);function Pv({props:e,states:t,muiFormControl:n}){return t.reduce((t,r)=>(t[r]=e[r],n&&e[r]===void 0&&(t[r]=n[r]),t),{})}var Vie=e=>{let{classes:t,disabled:n,labelPlacement:r,error:i,required:a}=e;return dp({root:[`root`,n&&`disabled`,`labelPlacement${Y(r)}`,i&&`error`,a&&`required`],label:[`label`,n&&`disabled`],asterisk:[`asterisk`,i&&`error`]},Bie,t)},Hie=J(`label`,{name:`MuiFormControlLabel`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[{[`& .${Nv.label}`]:t.label},t.root,t[`labelPlacement${Y(n.labelPlacement)}`]]}})(Im(({theme:e})=>({display:`inline-flex`,alignItems:`center`,cursor:`pointer`,verticalAlign:`middle`,WebkitTapHighlightColor:`transparent`,marginLeft:-11,marginRight:16,[`&.${Nv.disabled}`]:{cursor:`default`},[`& .${Nv.label}`]:{[`&.${Nv.disabled}`]:{color:(e.vars||e).palette.text.disabled}},variants:[{props:{labelPlacement:`start`},style:{flexDirection:`row-reverse`,marginRight:-11}},{props:{labelPlacement:`top`},style:{flexDirection:`column-reverse`}},{props:{labelPlacement:`bottom`},style:{flexDirection:`column`}},{props:({labelPlacement:e})=>e===`start`||e===`top`||e===`bottom`,style:{marginLeft:16}}]}))),Uie=J(`span`,{name:`MuiFormControlLabel`,slot:`Asterisk`})(Im(({theme:e})=>({[`&.${Nv.error}`]:{color:(e.vars||e).palette.error.main}}))),Fv=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiFormControlLabel`}),{checked:r,className:i,componentsProps:a={},control:o,disabled:s,disableTypography:c,inputRef:l,label:u,labelPlacement:d=`end`,name:f,onChange:p,required:m,slots:h={},slotProps:g={},value:_,...v}=n,y=xv(),b=s??o.props.disabled??y?.disabled,x=m??o.props.required,S={disabled:b,required:x};[`checked`,`name`,`onChange`,`value`,`inputRef`].forEach(e=>{o.props[e]===void 0&&n[e]!==void 0&&(S[e]=n[e])});let w=Pv({props:n,muiFormControl:y,states:[`error`]}),T={...n,disabled:b,labelPlacement:d,required:x,error:w.error},E=Vie(T),[D,O]=Wm(`typography`,{elementType:Q,externalForwardedProps:{slots:h,slotProps:{...a,...g}},ownerState:T}),k=u;return k!=null&&k.type!==Q&&!c&&(k=(0,G.jsx)(D,{component:`span`,...O,className:K(E.label,O?.className),children:k})),(0,G.jsxs)(Hie,{className:K(E.root,i),ownerState:T,ref:t,...v,children:[C.cloneElement(o,S),x?(0,G.jsxs)(`div`,{children:[k,(0,G.jsxs)(Uie,{ownerState:T,"aria-hidden":!0,className:E.asterisk,children:[` `,`*`]})]}):k]})}),Iv=Rp({createStyledComponent:J(`div`,{name:`MuiGrid`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.container&&t.container]}}),componentName:`MuiGrid`,useThemeProps:e=>Am({props:e,name:`MuiGrid`}),useTheme:Tm});function Wie(e){return Id(`MuiLinearProgress`,e)}Ld(`MuiLinearProgress`,[`root`,`colorPrimary`,`colorSecondary`,`determinate`,`indeterminate`,`buffer`,`query`,`dashed`,`dashedColorPrimary`,`dashedColorSecondary`,`bar`,`bar1`,`bar2`,`barColorPrimary`,`barColorSecondary`,`bar1Indeterminate`,`bar1Determinate`,`bar1Buffer`,`bar2Indeterminate`,`bar2Buffer`]);var Lv=4,Rv=ed`
148
+ `,kte=e=>{let{classes:t,variant:n,color:r,disableShrink:i}=e;return dp({root:[`root`,n,`color${Y(r)}`],svg:[`svg`],track:[`track`],circle:[`circle`,`circle${Y(n)}`,i&&`circleDisableShrink`]},Ete,t)},Ate=J(`span`,{name:`MuiCircularProgress`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[n.variant],t[`color${Y(n.color)}`]]}})(Im(({theme:e})=>({display:`inline-block`,variants:[{props:{variant:`determinate`},style:{transition:e.transitions.create(`transform`)}},{props:{variant:`indeterminate`},style:Dte||{animation:`${Rh} 1.4s linear infinite`}},...Object.entries(e.palette).filter(Gm()).map(([t])=>({props:{color:t},style:{color:(e.vars||e).palette[t].main}}))]}))),jte=J(`svg`,{name:`MuiCircularProgress`,slot:`Svg`})({display:`block`}),Mte=J(`circle`,{name:`MuiCircularProgress`,slot:`Circle`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.circle,t[`circle${Y(n.variant)}`],n.disableShrink&&t.circleDisableShrink]}})(Im(({theme:e})=>({stroke:`currentColor`,variants:[{props:{variant:`determinate`},style:{transition:e.transitions.create(`stroke-dashoffset`)}},{props:{variant:`indeterminate`},style:{strokeDasharray:`80px, 200px`,strokeDashoffset:0}},{props:({ownerState:e})=>e.variant===`indeterminate`&&!e.disableShrink,style:Ote||{animation:`${zh} 1.4s ease-in-out infinite`}}]}))),Nte=J(`circle`,{name:`MuiCircularProgress`,slot:`Track`})(Im(({theme:e})=>({stroke:`currentColor`,opacity:(e.vars||e).palette.action.activatedOpacity}))),Bh=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiCircularProgress`}),{className:r,color:i=`primary`,disableShrink:a=!1,enableTrackSlot:o=!1,size:s=40,style:c,thickness:l=3.6,value:u=0,variant:d=`indeterminate`,...f}=n,p={...n,color:i,disableShrink:a,size:s,thickness:l,value:u,variant:d,enableTrackSlot:o},m=kte(p),h={},g={},_={};if(d===`determinate`){let e=2*Math.PI*((Lh-l)/2);h.strokeDasharray=e.toFixed(3),_[`aria-valuenow`]=Math.round(u),h.strokeDashoffset=`${((100-u)/100*e).toFixed(3)}px`,g.transform=`rotate(-90deg)`}return(0,G.jsx)(Ate,{className:K(m.root,r),style:{width:s,height:s,...g,...c},ownerState:p,ref:t,role:`progressbar`,..._,...f,children:(0,G.jsxs)(jte,{className:m.svg,ownerState:p,viewBox:`${Lh/2} ${Lh/2} ${Lh} ${Lh}`,children:[o?(0,G.jsx)(Nte,{className:m.track,ownerState:p,cx:Lh,cy:Lh,r:(Lh-l)/2,fill:`none`,strokeWidth:l,"aria-hidden":`true`}):null,(0,G.jsx)(Mte,{className:m.circle,style:h,ownerState:p,cx:Lh,cy:Lh,r:(Lh-l)/2,fill:`none`,strokeWidth:l})]})})});function Pte(e){return Id(`MuiIconButton`,e)}var Vh=Ld(`MuiIconButton`,[`root`,`disabled`,`colorInherit`,`colorPrimary`,`colorSecondary`,`colorError`,`colorInfo`,`colorSuccess`,`colorWarning`,`edgeStart`,`edgeEnd`,`sizeSmall`,`sizeMedium`,`sizeLarge`,`loading`,`loadingIndicator`,`loadingWrapper`]),Fte=e=>{let{classes:t,disabled:n,color:r,edge:i,size:a,loading:o}=e;return dp({root:[`root`,o&&`loading`,n&&`disabled`,r!==`default`&&`color${Y(r)}`,i&&`edge${Y(i)}`,`size${Y(a)}`],loadingIndicator:[`loadingIndicator`],loadingWrapper:[`loadingWrapper`]},Pte,t)},Ite=J(Fh,{name:`MuiIconButton`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.loading&&t.loading,n.color!==`default`&&t[`color${Y(n.color)}`],n.edge&&t[`edge${Y(n.edge)}`],t[`size${Y(n.size)}`]]}})(Im(({theme:e})=>({textAlign:`center`,flex:`0 0 auto`,fontSize:e.typography.pxToRem(24),padding:8,borderRadius:`50%`,color:(e.vars||e).palette.action.active,transition:e.transitions.create(`background-color`,{duration:e.transitions.duration.shortest}),variants:[{props:e=>!e.disableRipple,style:{"--IconButton-hoverBg":e.alpha((e.vars||e).palette.action.active,(e.vars||e).palette.action.hoverOpacity),"&:hover":{backgroundColor:`var(--IconButton-hoverBg)`,"@media (hover: none)":{backgroundColor:`transparent`}}}},{props:{edge:`start`},style:{marginLeft:-12}},{props:{edge:`start`,size:`small`},style:{marginLeft:-3}},{props:{edge:`end`},style:{marginRight:-12}},{props:{edge:`end`,size:`small`},style:{marginRight:-3}}]})),Im(({theme:e})=>({variants:[{props:{color:`inherit`},style:{color:`inherit`}},...Object.entries(e.palette).filter(Gm()).map(([t])=>({props:{color:t},style:{color:(e.vars||e).palette[t].main}})),...Object.entries(e.palette).filter(Gm()).map(([t])=>({props:{color:t},style:{"--IconButton-hoverBg":e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.hoverOpacity)}})),{props:{size:`small`},style:{padding:5,fontSize:e.typography.pxToRem(18)}},{props:{size:`large`},style:{padding:12,fontSize:e.typography.pxToRem(28)}}],[`&.${Vh.disabled}`]:{backgroundColor:`transparent`,color:(e.vars||e).palette.action.disabled},[`&.${Vh.loading}`]:{color:`transparent`}}))),Lte=J(`span`,{name:`MuiIconButton`,slot:`LoadingIndicator`})(({theme:e})=>({display:`none`,position:`absolute`,visibility:`visible`,top:`50%`,left:`50%`,transform:`translate(-50%, -50%)`,color:(e.vars||e).palette.action.disabled,variants:[{props:{loading:!0},style:{display:`flex`}}]})),Hh=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiIconButton`}),{edge:r=!1,children:i,className:a,color:o=`default`,disabled:s=!1,disableFocusRipple:c=!1,size:l=`medium`,id:u,loading:d=null,loadingIndicator:f,...p}=n,m=ah(u),h=f??(0,G.jsx)(Bh,{"aria-labelledby":m,color:`inherit`,size:16}),g={...n,edge:r,color:o,disabled:s,disableFocusRipple:c,loading:d,loadingIndicator:h,size:l},_=Fte(g);return(0,G.jsxs)(Ite,{id:d?m:u,className:K(_.root,a),centerRipple:!0,focusRipple:!c,disabled:s||d,ref:t,...p,ownerState:g,children:[typeof d==`boolean`&&(0,G.jsx)(`span`,{className:_.loadingWrapper,style:{display:`contents`},children:(0,G.jsx)(Lte,{className:_.loadingIndicator,ownerState:g,children:d&&h})}),i]})}),Rte=X((0,G.jsx)(`path`,{d:`M20,12A8,8 0 0,1 12,20A8,8 0 0,1 4,12A8,8 0 0,1 12,4C12.76,4 13.5,4.11 14.2, 4.31L15.77,2.74C14.61,2.26 13.34,2 12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0, 0 22,12M7.91,10.08L6.5,11.5L11,16L21,6L19.59,4.58L11,13.17L7.91,10.08Z`}),`SuccessOutlined`),zte=X((0,G.jsx)(`path`,{d:`M12 5.99L19.53 19H4.47L12 5.99M12 2L1 21h22L12 2zm1 14h-2v2h2v-2zm0-6h-2v4h2v-4z`}),`ReportProblemOutlined`),Bte=X((0,G.jsx)(`path`,{d:`M11 15h2v2h-2zm0-8h2v6h-2zm.99-5C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z`}),`ErrorOutline`),Vte=X((0,G.jsx)(`path`,{d:`M11,9H13V7H11M12,20C7.59,20 4,16.41 4,12C4,7.59 7.59,4 12,4C16.41,4 20,7.59 20, 12C20,16.41 16.41,20 12,20M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10, 10 0 0,0 12,2M11,17H13V11H11V17Z`}),`InfoOutlined`),Uh=X((0,G.jsx)(`path`,{d:`M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z`}),`Close`),Hte=e=>{let{variant:t,color:n,severity:r,classes:i}=e;return dp({root:[`root`,`color${Y(n||r)}`,`${t}${Y(n||r)}`,`${t}`],icon:[`icon`],message:[`message`],action:[`action`]},Zee,i)},Ute=J(Km,{name:`MuiAlert`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[n.variant],t[`${n.variant}${Y(n.color||n.severity)}`]]}})(Im(({theme:e})=>{let t=e.palette.mode===`light`?e.darken:e.lighten,n=e.palette.mode===`light`?e.lighten:e.darken;return{...e.typography.body2,backgroundColor:`transparent`,display:`flex`,padding:`6px 16px`,variants:[...Object.entries(e.palette).filter(Gm([`light`])).map(([r])=>({props:{colorSeverity:r,variant:`standard`},style:{color:e.vars?e.vars.palette.Alert[`${r}Color`]:t(e.palette[r].light,.6),backgroundColor:e.vars?e.vars.palette.Alert[`${r}StandardBg`]:n(e.palette[r].light,.9),[`& .${qm.icon}`]:e.vars?{color:e.vars.palette.Alert[`${r}IconColor`]}:{color:e.palette[r].main}}})),...Object.entries(e.palette).filter(Gm([`light`])).map(([n])=>({props:{colorSeverity:n,variant:`outlined`},style:{color:e.vars?e.vars.palette.Alert[`${n}Color`]:t(e.palette[n].light,.6),border:`1px solid ${(e.vars||e).palette[n].light}`,[`& .${qm.icon}`]:e.vars?{color:e.vars.palette.Alert[`${n}IconColor`]}:{color:e.palette[n].main}}})),...Object.entries(e.palette).filter(Gm([`dark`])).map(([t])=>({props:{colorSeverity:t,variant:`filled`},style:{fontWeight:e.typography.fontWeightMedium,...e.vars?{color:e.vars.palette.Alert[`${t}FilledColor`],backgroundColor:e.vars.palette.Alert[`${t}FilledBg`]}:{backgroundColor:e.palette.mode===`dark`?e.palette[t].dark:e.palette[t].main,color:e.palette.getContrastText(e.palette[t].main)}}}))]}})),Wte=J(`div`,{name:`MuiAlert`,slot:`Icon`})({marginRight:12,padding:`7px 0`,display:`flex`,fontSize:22,opacity:.9}),Gte=J(`div`,{name:`MuiAlert`,slot:`Message`})({padding:`8px 0`,minWidth:0,overflow:`auto`}),Kte=J(`div`,{name:`MuiAlert`,slot:`Action`})({display:`flex`,alignItems:`flex-start`,padding:`4px 0 0 16px`,marginLeft:`auto`,marginRight:-8}),Wh={success:(0,G.jsx)(Rte,{fontSize:`inherit`}),warning:(0,G.jsx)(zte,{fontSize:`inherit`}),error:(0,G.jsx)(Bte,{fontSize:`inherit`}),info:(0,G.jsx)(Vte,{fontSize:`inherit`})},Gh=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiAlert`}),{action:r,children:i,className:a,closeText:o=`Close`,color:s,components:c={},componentsProps:l={},icon:u,iconMapping:d=Wh,onClose:f,role:p=`alert`,severity:m=`success`,slotProps:h={},slots:g={},variant:_=`standard`,...v}=n,y={...n,color:s,severity:m,variant:_,colorSeverity:s||m},b=Hte(y),x={slots:{closeButton:c.CloseButton,closeIcon:c.CloseIcon,...g},slotProps:{...l,...h}},[S,C]=Wm(`root`,{ref:t,shouldForwardComponentProp:!0,className:K(b.root,a),elementType:Ute,externalForwardedProps:{...x,...v},ownerState:y,additionalProps:{role:p,elevation:0}}),[w,T]=Wm(`icon`,{className:b.icon,elementType:Wte,externalForwardedProps:x,ownerState:y}),[E,D]=Wm(`message`,{className:b.message,elementType:Gte,externalForwardedProps:x,ownerState:y}),[O,k]=Wm(`action`,{className:b.action,elementType:Kte,externalForwardedProps:x,ownerState:y}),[A,j]=Wm(`closeButton`,{elementType:Hh,externalForwardedProps:x,ownerState:y}),[M,N]=Wm(`closeIcon`,{elementType:Uh,externalForwardedProps:x,ownerState:y});return(0,G.jsxs)(S,{...C,children:[u===!1?null:(0,G.jsx)(w,{...T,children:u||d[m]||Wh[m]}),(0,G.jsx)(E,{...D,children:i}),r==null?null:(0,G.jsx)(O,{...k,children:r}),r==null&&f?(0,G.jsx)(O,{...k,children:(0,G.jsx)(A,{size:`small`,"aria-label":o,title:o,color:`inherit`,onClick:f,...j,children:(0,G.jsx)(M,{fontSize:`small`,...N})})}):null]})});function qte(e={}){let{autoHideDuration:t=null,disableWindowBlurListener:n=!1,onClose:r,open:i,resumeHideDuration:a}=e,o=Mh();C.useEffect(()=>{if(!i)return;function e(e){e.defaultPrevented||e.key===`Escape`&&r?.(e,`escapeKeyDown`)}return document.addEventListener(`keydown`,e),()=>{document.removeEventListener(`keydown`,e)}},[i,r]);let s=ch((e,t)=>{r?.(e,t)}),c=ch(e=>{!r||e==null||o.start(e,()=>{s(null,`timeout`)})});C.useEffect(()=>(i&&c(t),o.clear),[i,t,c,o]);let l=e=>{r?.(e,`clickaway`)},u=o.clear,d=C.useCallback(()=>{t!=null&&c(a??t*.5)},[t,a,c]),f=e=>t=>{let n=e.onBlur;n?.(t),d()},p=e=>t=>{let n=e.onFocus;n?.(t),u()},m=e=>t=>{let n=e.onMouseEnter;n?.(t),u()},h=e=>t=>{let n=e.onMouseLeave;n?.(t),d()};return C.useEffect(()=>{if(!n&&i)return window.addEventListener(`focus`,d),window.addEventListener(`blur`,u),()=>{window.removeEventListener(`focus`,d),window.removeEventListener(`blur`,u)}},[n,i,d,u]),{getRootProps:(t={})=>{let n={...Vm(e),...Vm(t)};return{role:`presentation`,...t,...n,onBlur:f(n),onFocus:p(n),onMouseEnter:m(n),onMouseLeave:h(n)}},onClickAway:l}}function Kh(e){return e?.props?.ref||null}function qh(e){return e.substring(2).toLowerCase()}function Jte(e,t){return t.documentElement.clientWidth<e.clientX||t.documentElement.clientHeight<e.clientY}function Jh(e){let{children:t,disableReactTree:n=!1,mouseEvent:r=`onClick`,onClickAway:i,touchEvent:a=`onTouchEnd`}=e,o=C.useRef(!1),s=C.useRef(null),c=C.useRef(!1),l=C.useRef(!1);C.useEffect(()=>(setTimeout(()=>{c.current=!0},0),()=>{c.current=!1}),[]);let u=Lm(Kh(t),s),d=ch(e=>{let t=l.current;l.current=!1;let r=$m(s.current);if(!c.current||!s.current||`clientX`in e&&Jte(e,r))return;if(o.current){o.current=!1;return}let a;a=e.composedPath?e.composedPath().includes(s.current):!r.documentElement.contains(e.target)||s.current.contains(e.target),!a&&(n||!t)&&i(e)}),f=e=>n=>{l.current=!0;let r=t.props[e];r&&r(n)},p={ref:u};return a!==!1&&(p[a]=f(a)),C.useEffect(()=>{if(a!==!1){let e=qh(a),t=$m(s.current),n=()=>{o.current=!0};return t.addEventListener(e,d),t.addEventListener(`touchmove`,n),()=>{t.removeEventListener(e,d),t.removeEventListener(`touchmove`,n)}}},[d,a]),r!==!1&&(p[r]=f(r)),C.useEffect(()=>{if(r!==!1){let e=qh(r),t=$m(s.current);return t.addEventListener(e,d),()=>{t.removeEventListener(e,d)}}},[d,r]),C.cloneElement(t,p)}var Yh=e=>e.scrollTop;function Xh(e,t){return n=>{if(t){let r=e.current;n===void 0?t(r):t(r,n)}}}function Zh(e,t,n,r,i,a){let o=e===`exited`&&!t?r:n[e]||n.exited;return i||a?{...o,...i,...a}:o}function Qh(e,t){let{timeout:n,easing:r,style:i={}}=e;return{duration:i.transitionDuration??(typeof n==`number`?n:n[t.mode]||0),easing:i.transitionTimingFunction??(typeof r==`object`?r[t.mode]:r),delay:i.transitionDelay}}function $h(e){return`scale(${e}, ${e**2})`}var Yte={entering:{opacity:1,transform:$h(1)},entered:{opacity:1,transform:`none`},exiting:{opacity:0,transform:$h(.75)},exited:{opacity:0,transform:$h(.75)}},Xte={opacity:0,transform:$h(.75),visibility:`hidden`},eg=C.forwardRef(function(e,t){let{addEndListener:n,appear:r=!0,children:i,easing:a,in:o,onEnter:s,onEntered:c,onEntering:l,onExit:u,onExited:d,onExiting:f,style:p,timeout:m=`auto`,...h}=e,g=Mh(),_=C.useRef(),v=Tm(),y=C.useRef(null),b=uh(y,Kh(i),t),x=Xh(y,l),S=Xh(y,(e,t)=>{Yh(e);let{duration:n,delay:r,easing:i}=Qh({style:p,timeout:m,easing:a},{mode:`enter`}),o;m===`auto`?(o=v.transitions.getAutoHeightDuration(e.clientHeight),_.current=o):o=n,e.style.transition=[v.transitions.create(`opacity`,{duration:o,delay:r}),v.transitions.create(`transform`,{duration:o*.666,delay:r,easing:i})].join(`,`),s&&s(e,t)}),w=Xh(y,c),T=Xh(y,f),E=Xh(y,e=>{let{duration:t,delay:n,easing:r}=Qh({style:p,timeout:m,easing:a},{mode:`exit`}),i;m===`auto`?(i=v.transitions.getAutoHeightDuration(e.clientHeight),_.current=i):i=t,e.style.transition=[v.transitions.create(`opacity`,{duration:i,delay:n}),v.transitions.create(`transform`,{duration:i*.666,delay:n||i*.333,easing:r})].join(`,`),e.style.opacity=0,e.style.transform=$h(.75),u&&u(e)}),D=Xh(y,e=>{e.style.transition=``,d&&d(e)});return(0,G.jsx)(Eh,{appear:r,in:o,nodeRef:y,onEnter:S,onEntered:w,onEntering:x,onExit:E,onExited:D,onExiting:T,addEndListener:e=>{m===`auto`&&g.start(_.current||0,e),n&&n(y.current,e)},timeout:m===`auto`?null:m,...h,children:(e,{ownerState:t,...n})=>{let r=Zh(e,o,Yte,Xte,p,i.props.style);return C.cloneElement(i,{style:r,ref:b,...n})}})});eg&&(eg.muiSupportAuto=!0);function Zte(e){return Id(`MuiSnackbarContent`,e)}Ld(`MuiSnackbarContent`,[`root`,`message`,`action`]);var Qte=e=>{let{classes:t}=e;return dp({root:[`root`],action:[`action`],message:[`message`]},Zte,t)},$te=J(Km,{name:`MuiSnackbarContent`,slot:`Root`})(Im(({theme:e})=>{let t=e.palette.mode===`light`?.8:.98;return{...e.typography.body2,color:e.vars?e.vars.palette.SnackbarContent.color:e.palette.getContrastText(Sf(e.palette.background.default,t)),backgroundColor:e.vars?e.vars.palette.SnackbarContent.bg:Sf(e.palette.background.default,t),display:`flex`,alignItems:`center`,flexWrap:`wrap`,padding:`6px 16px`,flexGrow:1,[e.breakpoints.up(`sm`)]:{flexGrow:`initial`,minWidth:288}}})),ene=J(`div`,{name:`MuiSnackbarContent`,slot:`Message`})({padding:`8px 0`}),tne=J(`div`,{name:`MuiSnackbarContent`,slot:`Action`})({display:`flex`,alignItems:`center`,marginLeft:`auto`,paddingLeft:16,marginRight:-8}),nne=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiSnackbarContent`}),{action:r,className:i,message:a,role:o=`alert`,...s}=n,c=n,l=Qte(c);return(0,G.jsxs)($te,{role:o,elevation:6,className:K(l.root,i),ownerState:c,ref:t,...s,children:[(0,G.jsx)(ene,{className:l.message,ownerState:c,children:a}),r?(0,G.jsx)(tne,{className:l.action,ownerState:c,children:r}):null]})});function rne(e){return Id(`MuiSnackbar`,e)}Ld(`MuiSnackbar`,[`root`,`anchorOriginTopCenter`,`anchorOriginBottomCenter`,`anchorOriginTopRight`,`anchorOriginBottomRight`,`anchorOriginTopLeft`,`anchorOriginBottomLeft`]);var ine=e=>{let{classes:t,anchorOrigin:n}=e;return dp({root:[`root`,`anchorOrigin${Y(n.vertical)}${Y(n.horizontal)}`]},rne,t)},ane=J(`div`,{name:`MuiSnackbar`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[`anchorOrigin${Y(n.anchorOrigin.vertical)}${Y(n.anchorOrigin.horizontal)}`]]}})(Im(({theme:e})=>({zIndex:(e.vars||e).zIndex.snackbar,position:`fixed`,display:`flex`,left:8,right:8,justifyContent:`center`,alignItems:`center`,variants:[{props:({ownerState:e})=>e.anchorOrigin.vertical===`top`,style:{top:8,[e.breakpoints.up(`sm`)]:{top:24}}},{props:({ownerState:e})=>e.anchorOrigin.vertical!==`top`,style:{bottom:8,[e.breakpoints.up(`sm`)]:{bottom:24}}},{props:({ownerState:e})=>e.anchorOrigin.horizontal===`left`,style:{justifyContent:`flex-start`,[e.breakpoints.up(`sm`)]:{left:24,right:`auto`}}},{props:({ownerState:e})=>e.anchorOrigin.horizontal===`right`,style:{justifyContent:`flex-end`,[e.breakpoints.up(`sm`)]:{right:24,left:`auto`}}},{props:({ownerState:e})=>e.anchorOrigin.horizontal===`center`,style:{[e.breakpoints.up(`sm`)]:{left:`50%`,right:`auto`,transform:`translateX(-50%)`}}}]}))),tg=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiSnackbar`}),r=Tm(),i={enter:r.transitions.duration.enteringScreen,exit:r.transitions.duration.leavingScreen},{action:a,anchorOrigin:{vertical:o,horizontal:s}={vertical:`bottom`,horizontal:`left`},autoHideDuration:c=null,children:l,className:u,ClickAwayListenerProps:d,ContentProps:f,disableWindowBlurListener:p=!1,message:m,onBlur:h,onClose:g,onFocus:_,onMouseEnter:v,onMouseLeave:y,open:b,resumeHideDuration:x,slots:S={},slotProps:w={},TransitionComponent:T,transitionDuration:E=i,TransitionProps:{onEnter:D,onExited:O,...k}={},...A}=n,j={...n,anchorOrigin:{vertical:o,horizontal:s},autoHideDuration:c,disableWindowBlurListener:p,TransitionComponent:T,transitionDuration:E},M=ine(j),{getRootProps:N,onClickAway:P}=qte(j),[F,I]=C.useState(!0),L=e=>{I(!0),O&&O(e)},R=(e,t)=>{I(!1),D&&D(e,t)},ee={slots:{transition:T,...S},slotProps:{content:f,clickAwayListener:d,transition:k,...w}},[z,te]=Wm(`root`,{ref:t,className:[M.root,u],elementType:ane,getSlotProps:N,externalForwardedProps:{...ee,...A},ownerState:j}),[B,{ownerState:V,...ne}]=Wm(`clickAwayListener`,{elementType:Jh,externalForwardedProps:ee,getSlotProps:e=>({onClickAway:(...t)=>{let n=t[0];e.onClickAway?.(...t),!n?.defaultMuiPrevented&&P(...t)}}),ownerState:j}),[re,ie]=Wm(`content`,{elementType:nne,shouldForwardComponentProp:!0,externalForwardedProps:ee,additionalProps:{message:m,action:a},ownerState:j}),[ae,oe]=Wm(`transition`,{elementType:eg,externalForwardedProps:ee,getSlotProps:e=>({onEnter:(...t)=>{e.onEnter?.(...t),R(...t)},onExited:(...t)=>{e.onExited?.(...t),L(...t)}}),additionalProps:{appear:!0,in:b,timeout:E,direction:o===`top`?`down`:`up`},ownerState:j});return!b&&F?null:(0,G.jsx)(B,{...ne,...S.clickAwayListener&&{ownerState:V},children:(0,G.jsx)(z,{...te,children:(0,G.jsx)(ae,{...oe,children:l||(0,G.jsx)(re,{...ie})})})})}),ng=(0,C.createContext)({show:()=>{}}),one=0,sne=e=>{let[t,n]=(0,C.useState)([]),r=(0,C.useCallback)(e=>{n(t=>[...t,{...e,autoHideDuration:e.autoHideDuration??6e3,notificationId:one++}])},[]),i=e=>{n(t=>t.filter(t=>t.notificationId!==e))};return(0,G.jsxs)(ng.Provider,{value:{show:r},children:[e.children,t.map(e=>(0,G.jsx)(tg,{open:!0,autoHideDuration:e.autoHideDuration,onClose:()=>i(e.notificationId),children:(0,G.jsx)(Gh,{severity:e.severity,variant:`filled`,sx:{minWidth:`300px`},children:e.message})},e.notificationId))]})};function rg(e){return`Minified Redux error #${e}; visit https://redux.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var ig=typeof Symbol==`function`&&Symbol.observable||`@@observable`,ag=()=>Math.random().toString(36).substring(7).split(``).join(`.`),og={INIT:`@@redux/INIT${ag()}`,REPLACE:`@@redux/REPLACE${ag()}`,PROBE_UNKNOWN_ACTION:()=>`@@redux/PROBE_UNKNOWN_ACTION${ag()}`};function sg(e){if(typeof e!=`object`||!e)return!1;let t=e;for(;Object.getPrototypeOf(t)!==null;)t=Object.getPrototypeOf(t);return Object.getPrototypeOf(e)===t||Object.getPrototypeOf(e)===null}function cg(e,t,n){if(typeof e!=`function`)throw Error(rg(2));if(typeof t==`function`&&typeof n==`function`||typeof n==`function`&&typeof arguments[3]==`function`)throw Error(rg(0));if(typeof t==`function`&&n===void 0&&(n=t,t=void 0),n!==void 0){if(typeof n!=`function`)throw Error(rg(1));return n(cg)(e,t)}let r=e,i=t,a=new Map,o=a,s=0,c=!1;function l(){o===a&&(o=new Map,a.forEach((e,t)=>{o.set(t,e)}))}function u(){if(c)throw Error(rg(3));return i}function d(e){if(typeof e!=`function`)throw Error(rg(4));if(c)throw Error(rg(5));let t=!0;l();let n=s++;return o.set(n,e),function(){if(t){if(c)throw Error(rg(6));t=!1,l(),o.delete(n),a=null}}}function f(e){if(!sg(e))throw Error(rg(7));if(e.type===void 0)throw Error(rg(8));if(typeof e.type!=`string`)throw Error(rg(17));if(c)throw Error(rg(9));try{c=!0,i=r(i,e)}finally{c=!1}return(a=o).forEach(e=>{e()}),e}function p(e){if(typeof e!=`function`)throw Error(rg(10));r=e,f({type:og.REPLACE})}function m(){let e=d;return{subscribe(t){if(typeof t!=`object`||!t)throw Error(rg(11));function n(){let e=t;e.next&&e.next(u())}return n(),{unsubscribe:e(n)}},[ig](){return this}}}return f({type:og.INIT}),{dispatch:f,subscribe:d,getState:u,replaceReducer:p,[ig]:m}}function cne(e){Object.keys(e).forEach(t=>{let n=e[t];if(n(void 0,{type:og.INIT})===void 0)throw Error(rg(12));if(n(void 0,{type:og.PROBE_UNKNOWN_ACTION()})===void 0)throw Error(rg(13))})}function lne(e){let t=Object.keys(e),n={};for(let r=0;r<t.length;r++){let i=t[r];typeof e[i]==`function`&&(n[i]=e[i])}let r=Object.keys(n),i;try{cne(n)}catch(e){i=e}return function(e={},t){if(i)throw i;let a=!1,o={};for(let i=0;i<r.length;i++){let s=r[i],c=n[s],l=e[s],u=c(l,t);if(u===void 0)throw t&&t.type,Error(rg(14));o[s]=u,a||=u!==l}return a||=r.length!==Object.keys(e).length,a?o:e}}function lg(...e){return e.length===0?e=>e:e.length===1?e[0]:e.reduce((e,t)=>(...n)=>e(t(...n)))}function une(...e){return t=>(n,r)=>{let i=t(n,r),a=()=>{throw Error(rg(15))},o={getState:i.getState,dispatch:(e,...t)=>a(e,...t)};return a=lg(...e.map(e=>e(o)))(i.dispatch),{...i,dispatch:a}}}function dne(e){return sg(e)&&`type`in e&&typeof e.type==`string`}var ug=Symbol.for(`immer-nothing`),dg=Symbol.for(`immer-draftable`),fg=Symbol.for(`immer-state`);function pg(e,...t){throw Error(`[Immer] minified error nr: ${e}. Full error at: https://bit.ly/3cXEKWf`)}var mg=Object,hg=mg.getPrototypeOf,gg=`constructor`,_g=`prototype`,vg=`configurable`,yg=`enumerable`,bg=`writable`,xg=`value`,Sg=e=>!!e&&!!e[fg];function Cg(e){return e?Tg(e)||jg(e)||!!e[dg]||!!e[gg]?.[dg]||Mg(e)||Ng(e):!1}var fne=mg[_g][gg].toString(),wg=new WeakMap;function Tg(e){if(!e||!Pg(e))return!1;let t=hg(e);if(t===null||t===mg[_g])return!0;let n=mg.hasOwnProperty.call(t,gg)&&t[gg];if(n===Object)return!0;if(!Fg(n))return!1;let r=wg.get(n);return r===void 0&&(r=Function.toString.call(n),wg.set(n,r)),r===fne}function Eg(e,t,n=!0){Dg(e)===0?(n?Reflect.ownKeys(e):mg.keys(e)).forEach(n=>{t(n,e[n],e)}):e.forEach((n,r)=>t(r,n,e))}function Dg(e){let t=e[fg];return t?t.type_:jg(e)?1:Mg(e)?2:Ng(e)?3:0}var Og=(e,t,n=Dg(e))=>n===2?e.has(t):mg[_g].hasOwnProperty.call(e,t),kg=(e,t,n=Dg(e))=>n===2?e.get(t):e[t],Ag=(e,t,n,r=Dg(e))=>{r===2?e.set(t,n):r===3?e.add(n):e[t]=n};function pne(e,t){return e===t?e!==0||1/e==1/t:e!==e&&t!==t}var jg=Array.isArray,Mg=e=>e instanceof Map,Ng=e=>e instanceof Set,Pg=e=>typeof e==`object`,Fg=e=>typeof e==`function`,Ig=e=>typeof e==`boolean`;function mne(e){let t=+e;return Number.isInteger(t)&&String(t)===e}var Lg=e=>e.copy_||e.base_,Rg=e=>e.modified_?e.copy_:e.base_;function zg(e,t){if(Mg(e))return new Map(e);if(Ng(e))return new Set(e);if(jg(e))return Array[_g].slice.call(e);let n=Tg(e);if(t===!0||t===`class_only`&&!n){let t=mg.getOwnPropertyDescriptors(e);delete t[fg];let n=Reflect.ownKeys(t);for(let r=0;r<n.length;r++){let i=n[r],a=t[i];a[bg]===!1&&(a[bg]=!0,a[vg]=!0),(a.get||a.set)&&(t[i]={[vg]:!0,[bg]:!0,[yg]:a[yg],[xg]:e[i]})}return mg.create(hg(e),t)}else{let t=hg(e);if(t!==null&&n)return{...e};let r=mg.create(t);return mg.assign(r,e)}}function Bg(e,t=!1){return Hg(e)||Sg(e)||!Cg(e)?e:(Dg(e)>1&&mg.defineProperties(e,{set:Vg,add:Vg,clear:Vg,delete:Vg}),mg.freeze(e),t&&Eg(e,(e,t)=>{Bg(t,!0)},!1),e)}function hne(){pg(2)}var Vg={[xg]:hne};function Hg(e){return e===null||!Pg(e)?!0:mg.isFrozen(e)}var Ug=`MapSet`,Wg=`Patches`,Gg=`ArrayMethods`,Kg={};function qg(e){let t=Kg[e];return t||pg(0,e),t}var Jg=e=>!!Kg[e],Yg,Xg=()=>Yg,gne=(e,t)=>({drafts_:[],parent_:e,immer_:t,canAutoFreeze_:!0,unfinalizedDrafts_:0,handledSet_:new Set,processedForPatches_:new Set,mapSetPlugin_:Jg(Ug)?qg(Ug):void 0,arrayMethodsPlugin_:Jg(Gg)?qg(Gg):void 0});function Zg(e,t){t&&(e.patchPlugin_=qg(Wg),e.patches_=[],e.inversePatches_=[],e.patchListener_=t)}function Qg(e){$g(e),e.drafts_.forEach(_ne),e.drafts_=null}function $g(e){e===Yg&&(Yg=e.parent_)}var e_=e=>Yg=gne(Yg,e);function _ne(e){let t=e[fg];t.type_===0||t.type_===1?t.revoke_():t.revoked_=!0}function t_(e,t){t.unfinalizedDrafts_=t.drafts_.length;let n=t.drafts_[0];if(e!==void 0&&e!==n){n[fg].modified_&&(Qg(t),pg(4)),Cg(e)&&(e=n_(t,e));let{patchPlugin_:r}=t;r&&r.generateReplacementPatches_(n[fg].base_,e,t)}else e=n_(t,n);return vne(t,e,!0),Qg(t),t.patches_&&t.patchListener_(t.patches_,t.inversePatches_),e===ug?void 0:e}function n_(e,t){if(Hg(t))return t;let n=t[fg];if(!n)return s_(t,e.handledSet_,e);if(!i_(n,e))return t;if(!n.modified_)return n.base_;if(!n.finalized_){let{callbacks_:t}=n;if(t)for(;t.length>0;)t.pop()(e);o_(n,e)}return n.copy_}function vne(e,t,n=!1){!e.parent_&&e.immer_.autoFreeze_&&e.canAutoFreeze_&&Bg(t,n)}function r_(e){e.finalized_=!0,e.scope_.unfinalizedDrafts_--}var i_=(e,t)=>e.scope_===t,yne=[];function a_(e,t,n,r){let i=Lg(e),a=e.type_;if(r!==void 0&&kg(i,r,a)===t){Ag(i,r,n,a);return}if(!e.draftLocations_){let t=e.draftLocations_=new Map;Eg(i,(e,n)=>{if(Sg(n)){let r=t.get(n)||[];r.push(e),t.set(n,r)}})}let o=e.draftLocations_.get(t)??yne;for(let e of o)Ag(i,e,n,a)}function bne(e,t,n){e.callbacks_.push(function(r){let i=t;if(!i||!i_(i,r))return;r.mapSetPlugin_?.fixSetContents(i);let a=Rg(i);a_(e,i.draft_??i,a,n),o_(i,r)})}function o_(e,t){if(e.modified_&&!e.finalized_&&(e.type_===3||e.type_===1&&e.allIndicesReassigned_||(e.assigned_?.size??0)>0)){let{patchPlugin_:n}=t;if(n){let r=n.getPath(e);r&&n.generatePatches_(e,r,t)}r_(e)}}function xne(e,t,n){let{scope_:r}=e;if(Sg(n)){let i=n[fg];i_(i,r)&&i.callbacks_.push(function(){p_(e),a_(e,n,Rg(i),t)})}else Cg(n)&&e.callbacks_.push(function(){let i=Lg(e);e.type_===3?i.has(n)&&s_(n,r.handledSet_,r):kg(i,t,e.type_)===n&&r.drafts_.length>1&&(e.assigned_.get(t)??!1)===!0&&e.copy_&&s_(kg(e.copy_,t,e.type_),r.handledSet_,r)})}function s_(e,t,n){return!n.immer_.autoFreeze_&&n.unfinalizedDrafts_<1||Sg(e)||t.has(e)||!Cg(e)||Hg(e)?e:(t.add(e),Eg(e,(r,i)=>{if(Sg(i)){let t=i[fg];i_(t,n)&&(Ag(e,r,Rg(t),e.type_),r_(t))}else Cg(i)&&s_(i,t,n)}),e)}function Sne(e,t){let n=jg(e),r={type_:+!!n,scope_:t?t.scope_:Xg(),modified_:!1,finalized_:!1,assigned_:void 0,parent_:t,base_:e,draft_:null,copy_:null,revoke_:null,isManual_:!1,callbacks_:void 0},i=r,a=c_;n&&(i=[r],a=l_);let{revoke:o,proxy:s}=Proxy.revocable(i,a);return r.draft_=s,r.revoke_=o,[s,r]}var c_={get(e,t){if(t===fg)return e;let n=e.scope_.arrayMethodsPlugin_,r=e.type_===1&&typeof t==`string`;if(r&&n?.isArrayOperationMethod(t))return n.createMethodInterceptor(e,t);let i=Lg(e);if(!Og(i,t,e.type_))return Cne(e,i,t);let a=i[t];if(e.finalized_||!Cg(a)||r&&e.operationMethod&&n?.isMutatingArrayMethod(e.operationMethod)&&mne(t))return a;if(a===u_(e.base_,t)){p_(e);let n=e.type_===1?+t:t,r=m_(e.scope_,a,e,n);return e.copy_[n]=r}return a},has(e,t){return t in Lg(e)},ownKeys(e){return Reflect.ownKeys(Lg(e))},set(e,t,n){let r=d_(Lg(e),t);if(r?.set)return r.set.call(e.draft_,n),!0;if(!e.modified_){let r=u_(Lg(e),t),i=r?.[fg];if(i&&i.base_===n)return e.copy_[t]=n,e.assigned_.set(t,!1),!0;if(pne(n,r)&&(n!==void 0||Og(e.base_,t,e.type_)))return!0;p_(e),f_(e)}return e.copy_[t]===n&&(n!==void 0||t in e.copy_)||Number.isNaN(n)&&Number.isNaN(e.copy_[t])?!0:(e.copy_[t]=n,e.assigned_.set(t,!0),xne(e,t,n),!0)},deleteProperty(e,t){return p_(e),u_(e.base_,t)!==void 0||t in e.base_?(e.assigned_.set(t,!1),f_(e)):e.assigned_.delete(t),e.copy_&&delete e.copy_[t],!0},getOwnPropertyDescriptor(e,t){let n=Lg(e),r=Reflect.getOwnPropertyDescriptor(n,t);return r&&{[bg]:!0,[vg]:e.type_!==1||t!==`length`,[yg]:r[yg],[xg]:n[t]}},defineProperty(){pg(11)},getPrototypeOf(e){return hg(e.base_)},setPrototypeOf(){pg(12)}},l_={};for(let e in c_){let t=c_[e];l_[e]=function(){let e=arguments;return e[0]=e[0][0],t.apply(this,e)}}l_.deleteProperty=function(e,t){return l_.set.call(this,e,t,void 0)},l_.set=function(e,t,n){return c_.set.call(this,e[0],t,n,e[0])};function u_(e,t){let n=e[fg];return(n?Lg(n):e)[t]}function Cne(e,t,n){let r=d_(t,n);return r?xg in r?r[xg]:r.get?.call(e.draft_):void 0}function d_(e,t){if(!(t in e))return;let n=hg(e);for(;n;){let e=Object.getOwnPropertyDescriptor(n,t);if(e)return e;n=hg(n)}}function f_(e){e.modified_||(e.modified_=!0,e.parent_&&f_(e.parent_))}function p_(e){e.copy_||=(e.assigned_=new Map,zg(e.base_,e.scope_.immer_.useStrictShallowCopy_))}var wne=class{constructor(e){this.autoFreeze_=!0,this.useStrictShallowCopy_=!1,this.useStrictIteration_=!1,this.produce=(e,t,n)=>{if(Fg(e)&&!Fg(t)){let n=t;t=e;let r=this;return function(e=n,...i){return r.produce(e,e=>t.call(this,e,...i))}}Fg(t)||pg(6),n!==void 0&&!Fg(n)&&pg(7);let r;if(Cg(e)){let i=e_(this),a=m_(i,e,void 0),o=!0;try{r=t(a),o=!1}finally{o?Qg(i):$g(i)}return Zg(i,n),t_(r,i)}else if(!e||!Pg(e)){if(r=t(e),r===void 0&&(r=e),r===ug&&(r=void 0),this.autoFreeze_&&Bg(r,!0),n){let t=[],i=[];qg(Wg).generateReplacementPatches_(e,r,{patches_:t,inversePatches_:i}),n(t,i)}return r}else pg(1,e)},this.produceWithPatches=(e,t)=>{if(Fg(e))return(t,...n)=>this.produceWithPatches(t,t=>e(t,...n));let n,r;return[this.produce(e,t,(e,t)=>{n=e,r=t}),n,r]},Ig(e?.autoFreeze)&&this.setAutoFreeze(e.autoFreeze),Ig(e?.useStrictShallowCopy)&&this.setUseStrictShallowCopy(e.useStrictShallowCopy),Ig(e?.useStrictIteration)&&this.setUseStrictIteration(e.useStrictIteration)}createDraft(e){Cg(e)||pg(8),Sg(e)&&(e=Tne(e));let t=e_(this),n=m_(t,e,void 0);return n[fg].isManual_=!0,$g(t),n}finishDraft(e,t){let n=e&&e[fg];(!n||!n.isManual_)&&pg(9);let{scope_:r}=n;return Zg(r,t),t_(void 0,r)}setAutoFreeze(e){this.autoFreeze_=e}setUseStrictShallowCopy(e){this.useStrictShallowCopy_=e}setUseStrictIteration(e){this.useStrictIteration_=e}shouldUseStrictIteration(){return this.useStrictIteration_}applyPatches(e,t){let n;for(n=t.length-1;n>=0;n--){let r=t[n];if(r.path.length===0&&r.op===`replace`){e=r.value;break}}n>-1&&(t=t.slice(n+1));let r=qg(Wg).applyPatches_;return Sg(e)?r(e,t):this.produce(e,e=>r(e,t))}};function m_(e,t,n,r){let[i,a]=Mg(t)?qg(Ug).proxyMap_(t,n):Ng(t)?qg(Ug).proxySet_(t,n):Sne(t,n);return(n?.scope_??Xg()).drafts_.push(i),a.callbacks_=n?.callbacks_??[],a.key_=r,n&&r!==void 0?bne(n,a,r):a.callbacks_.push(function(e){e.mapSetPlugin_?.fixSetContents(a);let{patchPlugin_:t}=e;a.modified_&&t&&t.generatePatches_(a,[],e)}),i}function Tne(e){return Sg(e)||pg(10,e),h_(e)}function h_(e){if(!Cg(e)||Hg(e))return e;let t=e[fg],n,r=!0;if(t){if(!t.modified_)return t.base_;t.finalized_=!0,n=zg(e,t.scope_.immer_.useStrictShallowCopy_),r=t.scope_.immer_.shouldUseStrictIteration()}else n=zg(e,!0);return Eg(n,(e,t)=>{Ag(n,e,h_(t))},r),t&&(t.finalized_=!1),n}var g_=new wne().produce,__=Symbol(`NOT_FOUND`);function Ene(e,t=`expected a function, instead received ${typeof e}`){if(typeof e!=`function`)throw TypeError(t)}function Dne(e,t=`expected an object, instead received ${typeof e}`){if(typeof e!=`object`)throw TypeError(t)}function One(e,t=`expected all items to be functions, instead received the following types: `){if(!e.every(e=>typeof e==`function`)){let n=e.map(e=>typeof e==`function`?`function ${e.name||`unnamed`}()`:typeof e).join(`, `);throw TypeError(`${t}[${n}]`)}}var v_=e=>Array.isArray(e)?e:[e];function kne(e){let t=Array.isArray(e[0])?e[0]:e;return One(t,`createSelector expects all input-selectors to be functions, but received the following types: `),t}function Ane(e,t){let n=[],{length:r}=e;for(let i=0;i<r;i++)n.push(e[i].apply(null,t));return n}function jne(e){let t;return{get(n){return t&&e(t.key,n)?t.value:__},put(e,n){t={key:e,value:n}},getEntries(){return t?[t]:[]},clear(){t=void 0}}}function Mne(e,t){let n=[];function r(e){let r=n.findIndex(n=>t(e,n.key));if(r>-1){let e=n[r];return r>0&&(n.splice(r,1),n.unshift(e)),e.value}return __}function i(t,i){r(t)===__&&(n.unshift({key:t,value:i}),n.length>e&&n.pop())}function a(){return n}function o(){n=[]}return{get:r,put:i,getEntries:a,clear:o}}var Nne=(e,t)=>e===t;function Pne(e){return function(t,n){if(t===null||n===null||t.length!==n.length)return!1;let{length:r}=t;for(let i=0;i<r;i++)if(!e(t[i],n[i]))return!1;return!0}}function Fne(e,t){let{equalityCheck:n=Nne,maxSize:r=1,resultEqualityCheck:i}=typeof t==`object`?t:{equalityCheck:t},a=Pne(n),o=0,s=r<=1?jne(a):Mne(r,a);function c(){let t=s.get(arguments);if(t===__){if(t=e.apply(null,arguments),o++,i){let e=s.getEntries().find(e=>i(e.value,t));e&&(t=e.value,o!==0&&o--)}s.put(arguments,t)}return t}return c.clearCache=()=>{s.clear(),c.resetResultsCount()},c.resultsCount=()=>o,c.resetResultsCount=()=>{o=0},c}var Ine=class{constructor(e){this.value=e}deref(){return this.value}},Lne=typeof WeakRef<`u`?WeakRef:Ine,Rne=0,y_=1;function b_(){return{s:Rne,v:void 0,o:null,p:null}}function x_(e,t={}){let n=b_(),{resultEqualityCheck:r}=t,i,a=0;function o(){let t=n,{length:o}=arguments;for(let e=0,n=o;e<n;e++){let n=arguments[e];if(typeof n==`function`||typeof n==`object`&&n){let e=t.o;e===null&&(t.o=e=new WeakMap);let r=e.get(n);r===void 0?(t=b_(),e.set(n,t)):t=r}else{let e=t.p;e===null&&(t.p=e=new Map);let r=e.get(n);r===void 0?(t=b_(),e.set(n,t)):t=r}}let s=t,c;if(t.s===y_)c=t.v;else if(c=e.apply(null,arguments),a++,r){let e=i?.deref?.()??i;e!=null&&r(e,c)&&(c=e,a!==0&&a--),i=typeof c==`object`&&c||typeof c==`function`?new Lne(c):c}return s.s=y_,s.v=c,c}return o.clearCache=()=>{n=b_(),o.resetResultsCount()},o.resultsCount=()=>a,o.resetResultsCount=()=>{a=0},o}function S_(e,...t){let n=typeof e==`function`?{memoize:e,memoizeOptions:t}:e,r=(...e)=>{let t=0,r=0,i,a={},o=e.pop();typeof o==`object`&&(a=o,o=e.pop()),Ene(o,`createSelector expects an output function after the inputs, but received: [${typeof o}]`);let{memoize:s,memoizeOptions:c=[],argsMemoize:l=x_,argsMemoizeOptions:u=[],devModeChecks:d={}}={...n,...a},f=v_(c),p=v_(u),m=kne(e),h=s(function(){return t++,o.apply(null,arguments)},...f),g=l(function(){r++;let e=Ane(m,arguments);return i=h.apply(null,e),i},...p);return Object.assign(g,{resultFunc:o,memoizedResultFunc:h,dependencies:m,dependencyRecomputations:()=>r,resetDependencyRecomputations:()=>{r=0},lastResult:()=>i,recomputations:()=>t,resetRecomputations:()=>{t=0},memoize:s,argsMemoize:l})};return Object.assign(r,{withTypes:()=>r}),r}var C_=S_(x_),zne=Object.assign((e,t=C_)=>{Dne(e,`createStructuredSelector expects first argument to be an object where each property is a selector, instead received a ${typeof e}`);let n=Object.keys(e);return t(n.map(t=>e[t]),(...e)=>e.reduce((e,t,r)=>(e[n[r]]=t,e),{}))},{withTypes:()=>zne});function w_(e){return({dispatch:t,getState:n})=>r=>i=>typeof i==`function`?i(t,n,e):r(i)}var Bne=w_(),Vne=w_,Hne=typeof window<`u`&&window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__?window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__:function(){if(arguments.length!==0)return typeof arguments[0]==`object`?lg:lg.apply(null,arguments)};typeof window<`u`&&window.__REDUX_DEVTOOLS_EXTENSION__&&window.__REDUX_DEVTOOLS_EXTENSION__;var Une=e=>e&&typeof e.match==`function`;function T_(e,t){function n(...n){if(t){let r=t(...n);if(!r)throw Error(M_(0));return{type:e,payload:r.payload,...`meta`in r&&{meta:r.meta},...`error`in r&&{error:r.error}}}return{type:e,payload:n[0]}}return n.toString=()=>`${e}`,n.type=e,n.match=t=>dne(t)&&t.type===e,n}var E_=class e extends Array{constructor(...t){super(...t),Object.setPrototypeOf(this,e.prototype)}static get[Symbol.species](){return e}concat(...e){return super.concat.apply(this,e)}prepend(...t){return t.length===1&&Array.isArray(t[0])?new e(...t[0].concat(this)):new e(...t.concat(this))}};function D_(e){return Cg(e)?g_(e,()=>{}):e}function Wne(e){return typeof e==`boolean`}var Gne=()=>function(e){let{thunk:t=!0,immutableCheck:n=!0,serializableCheck:r=!0,actionCreatorCheck:i=!0}=e??{},a=new E_;return t&&(Wne(t)?a.push(Bne):a.push(Vne(t.extraArgument))),a},Kne=`RTK_autoBatch`,O_=e=>t=>{setTimeout(t,e)},qne=(e={type:`raf`})=>t=>(...n)=>{let r=t(...n),i=!0,a=!1,o=!1,s=new Set,c=e.type===`tick`?queueMicrotask:e.type===`raf`?typeof window<`u`&&window.requestAnimationFrame?window.requestAnimationFrame:O_(10):e.type===`callback`?e.queueNotification:O_(e.timeout),l=()=>{o=!1,a&&(a=!1,s.forEach(e=>e()))};return Object.assign({},r,{subscribe(e){let t=r.subscribe(()=>i&&e());return s.add(e),()=>{t(),s.delete(e)}},dispatch(e){try{return i=!e?.meta?.[Kne],a=!i,a&&(o||(o=!0,c(l))),r.dispatch(e)}finally{i=!0}}})},Jne=e=>function(t){let{autoBatch:n=!0}=t??{},r=new E_(e);return n&&r.push(qne(typeof n==`object`?n:void 0)),r};function Yne(e){let t=Gne(),{reducer:n=void 0,middleware:r,devTools:i=!0,duplicateMiddlewareCheck:a=!0,preloadedState:o=void 0,enhancers:s=void 0}=e||{},c;if(typeof n==`function`)c=n;else if(sg(n))c=lne(n);else throw Error(M_(1));let l;l=typeof r==`function`?r(t):t();let u=lg;i&&(u=Hne({trace:!1,...typeof i==`object`&&i}));let d=Jne(une(...l)),f=typeof s==`function`?s(d):d(),p=u(...f);return cg(c,o,p)}function Xne(e){let t={},n=[],r,i={addCase(e,n){let r=typeof e==`string`?e:e.type;if(!r)throw Error(M_(28));if(r in t)throw Error(M_(29));return t[r]=n,i},addAsyncThunk(e,r){return r.pending&&(t[e.pending.type]=r.pending),r.rejected&&(t[e.rejected.type]=r.rejected),r.fulfilled&&(t[e.fulfilled.type]=r.fulfilled),r.settled&&n.push({matcher:e.settled,reducer:r.settled}),i},addMatcher(e,t){return n.push({matcher:e,reducer:t}),i},addDefaultCase(e){return r=e,i}};return e(i),[t,n,r]}function Zne(e){return typeof e==`function`}function k_(e,t){let[n,r,i]=Xne(t),a;if(Zne(e))a=()=>D_(e());else{let t=D_(e);a=()=>t}function o(e=a(),t){let o=[n[t.type],...r.filter(({matcher:e})=>e(t)).map(({reducer:e})=>e)];return o.filter(e=>!!e).length===0&&(o=[i]),o.reduce((e,n)=>{if(n)if(Sg(e)){let r=n(e,t);return r===void 0?e:r}else if(Cg(e))return g_(e,e=>n(e,t));else{let r=n(e,t);if(r===void 0){if(e===null)return e;throw Error(`A case reducer on a non-draftable value must not return undefined`)}return r}return e},e)}return o.getInitialState=a,o}var Qne=(e,t)=>Une(e)?e.match(t):e(t);function $ne(...e){return t=>e.some(e=>Qne(e,t))}var ere=`ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW`,tre=(e=21)=>{let t=``,n=e;for(;n--;)t+=ere[Math.random()*64|0];return t},nre=[`name`,`message`,`stack`,`code`],A_=class{constructor(e,t){this.payload=e,this.meta=t}_type},rre=class{constructor(e,t){this.payload=e,this.meta=t}_type},ire=e=>{if(typeof e==`object`&&e){let t={};for(let n of nre)typeof e[n]==`string`&&(t[n]=e[n]);return t}return{message:String(e)}},are=`External signal was aborted`,ore=(()=>{function e(e,t,n){let r=T_(e+`/fulfilled`,(e,t,n,r)=>({payload:e,meta:{...r||{},arg:n,requestId:t,requestStatus:`fulfilled`}})),i=T_(e+`/pending`,(e,t,n)=>({payload:void 0,meta:{...n||{},arg:t,requestId:e,requestStatus:`pending`}})),a=T_(e+`/rejected`,(e,t,r,i,a)=>({payload:i,error:(n&&n.serializeError||ire)(e||`Rejected`),meta:{...a||{},arg:r,requestId:t,rejectedWithValue:!!i,requestStatus:`rejected`,aborted:e?.name===`AbortError`,condition:e?.name===`ConditionError`}}));function o(e,{signal:o}={}){return(s,c,l)=>{let u=n?.idGenerator?n.idGenerator(e):tre(),d=new AbortController,f,p;function m(e){p=e,d.abort()}o&&(o.aborted?m(are):o.addEventListener(`abort`,()=>m(are),{once:!0}));let h=async function(){let o;try{let a=n?.condition?.(e,{getState:c,extra:l});if(cre(a)&&(a=await a),a===!1||d.signal.aborted)throw{name:`ConditionError`,message:`Aborted due to condition callback returning false.`};let h=new Promise((e,t)=>{f=()=>{t({name:`AbortError`,message:p||`Aborted`})},d.signal.addEventListener(`abort`,f,{once:!0})});s(i(u,e,n?.getPendingMeta?.({requestId:u,arg:e},{getState:c,extra:l}))),o=await Promise.race([h,Promise.resolve(t(e,{dispatch:s,getState:c,extra:l,requestId:u,signal:d.signal,abort:m,rejectWithValue:(e,t)=>new A_(e,t),fulfillWithValue:(e,t)=>new rre(e,t)})).then(t=>{if(t instanceof A_)throw t;return t instanceof rre?r(t.payload,u,e,t.meta):r(t,u,e)})])}catch(t){o=t instanceof A_?a(null,u,e,t.payload,t.meta):a(t,u,e)}finally{f&&d.signal.removeEventListener(`abort`,f)}return n&&!n.dispatchConditionRejection&&a.match(o)&&o.meta.condition||s(o),o}();return Object.assign(h,{abort:m,requestId:u,arg:e,unwrap(){return h.then(sre)}})}}return Object.assign(o,{pending:i,rejected:a,fulfilled:r,settled:$ne(a,r),typePrefix:e})}return e.withTypes=()=>e,e})();function sre(e){if(e.meta&&e.meta.rejectedWithValue)throw e.payload;if(e.error)throw e.error;return e.payload}function cre(e){return typeof e==`object`&&!!e&&typeof e.then==`function`}var lre=`listener`,ure=`completed`,dre=`cancelled`;`${dre}`,`${ure}`,`${lre}${dre}`,`${lre}${ure}`;var{assign:fre}=Object,j_=`listenerMiddleware`,pre=fre(T_(`${j_}/add`),{withTypes:()=>pre});`${j_}`;var mre=fre(T_(`${j_}/remove`),{withTypes:()=>mre});function M_(e){return`Minified Redux Toolkit error #${e}; visit https://redux-toolkit.js.org/Errors?code=${e} for the full message or use the non-minified dev environment for full errors. `}var hre=class extends Error{constructor(e,t,n){super(e),this.status=t,this.body=n,this.name=`ApiError`}};async function N_(e){let t=await e.text();try{return JSON.parse(t)}catch{throw new hre(`Invalid JSON response (HTTP ${e.status}): ${t.slice(0,120)}`,e.status,t)}}async function P_(e,t){if(!e.ok){let n=await e.text().catch(()=>``),r=t;try{let e=JSON.parse(n);e?.error&&(r=e.error)}catch{r=n?`${t} (HTTP ${e.status}: ${n.slice(0,120)})`:`${t} (HTTP ${e.status})`}throw Error(r)}}async function gre(){let e=await fetch(`api/matter/bridges?_s=${Date.now()}`);return await P_(e,`Failed to fetch bridges`),N_(e)}async function F_(e){let t=await fetch(`api/matter/bridges`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e)});return await P_(t,`Failed to create bridge`),N_(t)}async function I_(e){let t=await fetch(`api/matter/bridges/${e.id}`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify(e)});return await P_(t,`Failed to update bridge`),N_(t)}async function _re(e){await fetch(`api/matter/bridges/${e}`,{method:`DELETE`})}async function vre(e){let t=await fetch(`api/matter/bridges/${e}/actions/factory-reset`,{method:`POST`});return await P_(t,`Factory reset failed`),N_(t)}async function L_(e){let t=await fetch(`api/matter/bridges/${e}/actions/force-sync`,{method:`POST`});return await P_(t,`Force sync failed`),N_(t)}async function yre(e){let t=await fetch(`api/matter/bridges/${e}/actions/open-commissioning-window`,{method:`POST`});return await P_(t,`Failed to open commissioning window`),N_(t)}async function bre(e){if(!(await fetch(`api/matter/bridges/priorities`,{method:`PUT`,headers:{"Content-Type":`application/json`},body:JSON.stringify({updates:e})})).ok)throw Error(`Failed to update priorities`)}async function R_(){let e=await fetch(`api/matter/bridges/actions/start-all`,{method:`POST`});return await P_(e,`Failed to start all bridges`),N_(e)}async function z_(){let e=await fetch(`api/matter/bridges/actions/stop-all`,{method:`POST`});return await P_(e,`Failed to stop all bridges`),N_(e)}async function B_(){let e=await fetch(`api/matter/bridges/actions/restart-all`,{method:`POST`});return await P_(e,`Failed to restart all bridges`),N_(e)}var V_=ore.withTypes(),H_=C_.withTypes(),U_=V_(`bridges/load`,gre),W_=V_(`bridges/create`,F_),G_=V_(`bridges/delete`,_re),K_=V_(`bridges/update`,I_),q_=V_(`bridges/reset`,vre),J_=T_(`bridges/setFromWebSocket`),Y_=T_(`bridges/updateFromWebSocket`),X_=V.withTypes(),Z_=ie.withTypes(),Q_=(0,C.createContext)({isConnected:!1,error:null});function $_(){return(0,C.useContext)(Q_)}function xre({children:e}){let t=X_(),[n,r]=(0,C.useState)(!1),[i,a]=(0,C.useState)(null),o=(0,C.useRef)(null),s=(0,C.useRef)(void 0),c=(0,C.useCallback)(e=>{switch(e.type){case`bridges_update`:t(J_(e.data));break;case`bridge_update`:t(Y_(e.data));break;case`ping`:o.current?.send(JSON.stringify({type:`pong`}));break}},[t]),l=(0,C.useCallback)(()=>{if(o.current?.readyState===WebSocket.OPEN)return;let e=window.location.protocol===`https:`?`wss:`:`ws:`,t=document.querySelector(`base`)?.href||window.location.origin,n=new URL(t),i=`${e}//${n.host}${n.pathname}api/ws`.replace(/\/+/g,`/`).replace(`:/`,`://`);try{let e=new WebSocket(i);o.current=e,e.onopen=()=>{r(!0),a(null)},e.onmessage=e=>{try{c(JSON.parse(e.data))}catch{console.warn(`Invalid WebSocket message`)}},e.onclose=()=>{r(!1),o.current=null,s.current=setTimeout(l,3e3)},e.onerror=()=>{a(Error(`WebSocket connection error`)),e.close()}}catch(e){a(e instanceof Error?e:Error(`Failed to connect`))}},[c]);return(0,C.useEffect)(()=>(l(),()=>{s.current&&clearTimeout(s.current),o.current?.close()}),[l]),(0,G.jsx)(Q_.Provider,{value:{isConnected:n,error:i},children:e})}var Sre=()=>{let e=X_();return(0,C.useEffect)(()=>{e(U_())},[e]),(0,G.jsx)(oi,{})},ev;(function(e){e.Starting=`starting`,e.Running=`running`,e.Stopped=`stopped`,e.Failed=`failed`})(ev||={});var tv;(function(e){e.Pattern=`pattern`,e.Regex=`regex`,e.Domain=`domain`,e.Platform=`platform`,e.Label=`label`,e.EntityLabel=`entity_label`,e.DeviceLabel=`device_label`,e.EntityLabelRegex=`entity_label_regex`,e.DeviceLabelRegex=`device_label_regex`,e.AnyFieldRegex=`any_field_regex`,e.Area=`area`,e.EntityCategory=`entity_category`,e.DeviceName=`device_name`,e.ProductName=`product_name`,e.DeviceClass=`device_class`})(tv||={});var nv=[{id:`all_lights`,name:`All Lights`,description:`Expose all light entities. Ideal for controlling lights via Apple Home, Google Home, or Alexa.`,icon:`light`,filter:{include:[{type:tv.Domain,value:`light`}],exclude:[]},featureFlags:{autoBatteryMapping:!0},tags:[`lights`,`popular`]},{id:`all_switches`,name:`All Switches & Plugs`,description:`Expose all switch entities including smart plugs. Includes power and energy monitoring.`,icon:`switch`,filter:{include:[{type:tv.Domain,value:`switch`}],exclude:[]},featureFlags:{},tags:[`switches`,`plugs`]},{id:`sensors_only`,name:`All Sensors`,description:`Expose temperature, humidity, pressure, and other sensors. Auto-combines related sensors from the same device.`,icon:`sensor`,filter:{include:[{type:tv.Domain,value:`sensor`},{type:tv.Domain,value:`binary_sensor`}],exclude:[]},featureFlags:{autoBatteryMapping:!0,autoHumidityMapping:!0,autoPressureMapping:!0},tags:[`sensors`,`temperature`,`humidity`]},{id:`climate_control`,name:`Climate & Covers`,description:`Expose thermostats, fans, covers, and humidifiers for climate control.`,icon:`climate`,filter:{include:[{type:tv.Domain,value:`climate`},{type:tv.Domain,value:`fan`},{type:tv.Domain,value:`cover`},{type:tv.Domain,value:`humidifier`}],exclude:[]},featureFlags:{autoBatteryMapping:!0},tags:[`climate`,`thermostat`,`covers`]},{id:`security`,name:`Security & Locks`,description:`Expose locks, alarm panels, and security-related binary sensors (motion, door, window).`,icon:`lock`,filter:{include:[{type:tv.Domain,value:`lock`},{type:tv.Domain,value:`alarm_control_panel`},{type:tv.DeviceClass,value:`motion`},{type:tv.DeviceClass,value:`door`},{type:tv.DeviceClass,value:`window`}],exclude:[],includeMode:`any`},featureFlags:{autoBatteryMapping:!0},tags:[`security`,`locks`,`alarm`]},{id:`robot_vacuum`,name:`Robot Vacuum (Server Mode)`,description:`Single vacuum bridge with Server Mode enabled. Required for Apple Home Siri commands and proper Alexa discovery. Add only ONE vacuum to this bridge.`,icon:`vacuum`,filter:{include:[{type:tv.Domain,value:`vacuum`}],exclude:[]},featureFlags:{serverMode:!0},tags:[`vacuum`,`server-mode`,`apple-home`]},{id:`media_players`,name:`Media Players & Speakers`,description:`Expose media players, speakers, and TVs for volume and playback control.`,icon:`media_player`,filter:{include:[{type:tv.Domain,value:`media_player`}],exclude:[]},featureFlags:{},tags:[`media`,`speakers`,`tv`]},{id:`google_home_optimized`,name:`Google Home Optimized`,description:`All devices with Auto Force Sync enabled. Prevents Google Home from showing devices as offline after a few hours.`,icon:`default`,filter:{include:[{type:tv.Pattern,value:`*`}],exclude:[]},featureFlags:{autoForceSync:!0,autoBatteryMapping:!0,autoHumidityMapping:!0,autoPressureMapping:!0},tags:[`google-home`,`all-devices`]},{id:`alexa_covers`,name:`Alexa-Optimized Covers`,description:`Covers with Alexa-friendly percentage display. Displayed percentage matches Home Assistant values.`,icon:`cover`,filter:{include:[{type:tv.Domain,value:`cover`}],exclude:[]},featureFlags:{coverUseHomeAssistantPercentage:!0,autoBatteryMapping:!0},tags:[`alexa`,`covers`]},{id:`automations_scripts`,name:`Automations & Scripts`,description:`Expose Home Assistant automations, scripts, and scenes as Matter switches.`,icon:`remote`,filter:{include:[{type:tv.Domain,value:`automation`},{type:tv.Domain,value:`script`},{type:tv.Domain,value:`scene`}],exclude:[]},featureFlags:{},tags:[`automations`,`scripts`,`scenes`]}],Cre;(function(e){e[e.locked=1]=`locked`,e[e.unlocked=2]=`unlocked`})(Cre||={});var wre;(function(e){e[e.Off=0]=`Off`,e[e.Low=1]=`Low`,e[e.Medium=2]=`Medium`,e[e.High=3]=`High`,e[e.On=4]=`On`,e[e.Auto=5]=`Auto`,e[e.Smart=6]=`Smart`})(wre||={});var Tre;(function(e){e[e.Forward=0]=`Forward`,e[e.Reverse=1]=`Reverse`})(Tre||={});var Ere;(function(e){e[e.OffLowMedHigh=0]=`OffLowMedHigh`,e[e.OffLowHigh=1]=`OffLowHigh`,e[e.OffLowMedHighAuto=2]=`OffLowMedHighAuto`,e[e.OffLowHighAuto=3]=`OffLowHighAuto`,e[e.OffHighAuto=4]=`OffHighAuto`,e[e.OffHigh=5]=`OffHigh`})(Ere||={});var Dre;(function(e){e[e.Stopped=0]=`Stopped`,e[e.Running=1]=`Running`,e[e.Paused=2]=`Paused`,e[e.Error=3]=`Error`,e[e.SeekingCharger=64]=`SeekingCharger`,e[e.Charging=65]=`Charging`,e[e.Docked=66]=`Docked`})(Dre||={});var Ore;(function(e){e[e.Off=0]=`Off`,e[e.Auto=1]=`Auto`,e[e.Cool=3]=`Cool`,e[e.Heat=4]=`Heat`,e[e.EmergencyHeat=5]=`EmergencyHeat`,e[e.Precooling=6]=`Precooling`,e[e.FanOnly=7]=`FanOnly`,e[e.Dry=8]=`Dry`,e[e.Sleep=9]=`Sleep`})(Ore||={});var rv;(function(e){e.homeAssistantEntity=`homeAssistantEntity`,e.identify=`identify`,e.groups=`groups`,e.scenesManagement=`scenesManagement`,e.bridgedDeviceBasicInformation=`bridgedDeviceBasicInformation`,e.airQuality=`airQuality`,e.booleanState=`booleanState`,e.booleanStateConfiguration=`booleanStateConfiguration`,e.carbonDioxideConcentrationMeasurement=`carbonDioxideConcentrationMeasurement`,e.carbonMonoxideConcentrationMeasurement=`carbonMonoxideConcentrationMeasurement`,e.colorControl=`colorControl`,e.doorLock=`doorLock`,e.electricalEnergyMeasurement=`electricalEnergyMeasurement`,e.electricalPowerMeasurement=`electricalPowerMeasurement`,e.flowMeasurement=`flowMeasurement`,e.levelControl=`levelControl`,e.fanControl=`fanControl`,e.illuminanceMeasurement=`illuminanceMeasurement`,e.nitrogenDioxideConcentrationMeasurement=`nitrogenDioxideConcentrationMeasurement`,e.occupancySensing=`occupancySensing`,e.onOff=`onOff`,e.ozoneConcentrationMeasurement=`ozoneConcentrationMeasurement`,e.pm1ConcentrationMeasurement=`pm1ConcentrationMeasurement`,e.pm10ConcentrationMeasurement=`pm10ConcentrationMeasurement`,e.pm25ConcentrationMeasurement=`pm25ConcentrationMeasurement`,e.powerSource=`powerSource`,e.powerTopology=`powerTopology`,e.pressureMeasurement=`pressureMeasurement`,e.relativeHumidityMeasurement=`relativeHumidityMeasurement`,e.smokeCoAlarm=`smokeCoAlarm`,e.temperatureMeasurement=`temperatureMeasurement`,e.thermostat=`thermostat`,e.thermostatUserInterfaceConfiguration=`thermostatUserInterfaceConfiguration`,e.totalVolatileOrganicCompoundsConcentrationMeasurement=`totalVolatileOrganicCompoundsConcentrationMeasurement`,e.valveConfigurationAndControl=`valveConfigurationAndControl`,e.windowCovering=`windowCovering`,e.mediaInput=`mediaInput`,e.rvcCleanMode=`rvcCleanMode`,e.rvcRunMode=`rvcRunMode`,e.rvcOperationalState=`rvcOperationalState`,e.serviceArea=`serviceArea`,e.switch=`switch`,e.modeSelect=`modeSelect`})(rv||={});var iv=[{id:`apple_home`,name:`Apple Home`,description:`Optimized for Apple Home and Siri. Enables composed devices for clean sensor grouping. Covers use standard Matter percentage (inverted from HA).`,icon:`default`,featureFlags:{autoComposedDevices:!0,autoBatteryMapping:!0,autoHumidityMapping:!0,autoPressureMapping:!0}},{id:`google_home`,name:`Google Home`,description:`Optimized for Google Home. Enables Auto Force Sync to prevent devices from going offline. Composed devices enabled for proper sensor grouping.`,icon:`default`,featureFlags:{autoForceSync:!0,autoComposedDevices:!0,autoBatteryMapping:!0,autoHumidityMapping:!0,autoPressureMapping:!0}},{id:`alexa`,name:`Amazon Alexa`,description:`Optimized for Alexa. Enables Auto Force Sync and Alexa-friendly cover percentages. Battery mapping included for sensor devices.`,icon:`default`,featureFlags:{autoForceSync:!0,autoBatteryMapping:!0,autoHumidityMapping:!0,autoPressureMapping:!0,coverUseHomeAssistantPercentage:!0}},{id:`multi_controller`,name:`Multi-Controller`,description:`Balanced settings for use with multiple controllers at once (e.g. Apple Home + Alexa). Force Sync enabled. Standard cover behavior.`,icon:`default`,featureFlags:{autoForceSync:!0,autoComposedDevices:!0,autoBatteryMapping:!0,autoHumidityMapping:!0,autoPressureMapping:!0}}],kre;(function(e){e.Battery=`battery`,e.BatteryCharging=`battery_charging`,e.CarbonMonoxide=`carbon_monoxide`,e.Cold=`cold`,e.Connectivity=`connectivity`,e.Door=`door`,e.GarageDoor=`garage_door`,e.Gas=`gas`,e.Heat=`heat`,e.Light=`light`,e.Lock=`lock`,e.Moisture=`moisture`,e.Motion=`motion`,e.Moving=`moving`,e.Occupancy=`occupancy`,e.Opening=`opening`,e.Plug=`plug`,e.Power=`power`,e.Presence=`presence`,e.Problem=`problem`,e.Rain=`rain`,e.Running=`running`,e.Safety=`safety`,e.Smoke=`smoke`,e.Sound=`sound`,e.Tamper=`tamper`,e.Update=`update`,e.Vibration=`vibration`,e.Window=`window`})(kre||={});var Are;(function(e){e.off=`off`,e.heat=`heat`,e.cool=`cool`,e.heat_cool=`heat_cool`,e.auto=`auto`,e.dry=`dry`,e.fan_only=`fan_only`})(Are||={});var jre;(function(e){e.off=`off`,e.preheating=`preheating`,e.heating=`heating`,e.cooling=`cooling`,e.drying=`drying`,e.fan=`fan`,e.idle=`idle`,e.defrosting=`defrosting`})(jre||={});var Mre;(function(e){e[e.TARGET_TEMPERATURE=1]=`TARGET_TEMPERATURE`,e[e.TARGET_TEMPERATURE_RANGE=2]=`TARGET_TEMPERATURE_RANGE`,e[e.TARGET_HUMIDITY=4]=`TARGET_HUMIDITY`,e[e.FAN_MODE=8]=`FAN_MODE`,e[e.PRESET_MODE=16]=`PRESET_MODE`,e[e.SWING_MODE=32]=`SWING_MODE`,e[e.AUX_HEAT=64]=`AUX_HEAT`,e[e.TURN_OFF=128]=`TURN_OFF`,e[e.TURN_ON=256]=`TURN_ON`,e[e.SWING_HORIZONTAL_MODE=512]=`SWING_HORIZONTAL_MODE`})(Mre||={});var Nre;(function(e){e.closed=`closed`,e.open=`open`,e.closing=`closing`,e.opening=`opening`})(Nre||={});var Pre;(function(e){e.button=`button`,e.doorbell=`doorbell`,e.motion=`motion`})(Pre||={});var Fre;(function(e){e.FORWARD=`forward`,e.REVERSE=`reverse`})(Fre||={});var Ire;(function(e){e[e.SET_SPEED=1]=`SET_SPEED`,e[e.OSCILLATE=2]=`OSCILLATE`,e[e.DIRECTION=4]=`DIRECTION`,e[e.PRESET_MODE=8]=`PRESET_MODE`,e[e.TURN_ON=16]=`TURN_ON`,e[e.TURN_OFF=32]=`TURN_OFF`})(Ire||={});var Lre;(function(e){e.UNKNOWN=`unknown`,e.ONOFF=`onoff`,e.BRIGHTNESS=`brightness`,e.COLOR_TEMP=`color_temp`,e.HS=`hs`,e.XY=`xy`,e.RGB=`rgb`,e.RGBW=`rgbw`,e.RGBWW=`rgbww`,e.WHITE=`white`})(Lre||={});var Rre;(function(e){e.Tv=`tv`,e.Speaker=`speaker`,e.Receiver=`receiver`})(Rre||={});var zre;(function(e){e[e.PAUSE=1]=`PAUSE`,e[e.SEEK=2]=`SEEK`,e[e.VOLUME_SET=4]=`VOLUME_SET`,e[e.VOLUME_MUTE=8]=`VOLUME_MUTE`,e[e.PREVIOUS_TRACK=16]=`PREVIOUS_TRACK`,e[e.NEXT_TRACK=32]=`NEXT_TRACK`,e[e.TURN_ON=128]=`TURN_ON`,e[e.TURN_OFF=256]=`TURN_OFF`,e[e.PLAY_MEDIA=512]=`PLAY_MEDIA`,e[e.VOLUME_STEP=1024]=`VOLUME_STEP`,e[e.SELECT_SOURCE=2048]=`SELECT_SOURCE`,e[e.STOP=4096]=`STOP`,e[e.CLEAR_PLAYLIST=8192]=`CLEAR_PLAYLIST`,e[e.PLAY=16384]=`PLAY`,e[e.SHUFFLE_SET=32768]=`SHUFFLE_SET`,e[e.SELECT_SOUND_MODE=65536]=`SELECT_SOUND_MODE`,e[e.BROWSE_MEDIA=131072]=`BROWSE_MEDIA`,e[e.REPEAT_SET=262144]=`REPEAT_SET`,e[e.GROUPING=524288]=`GROUPING`,e[e.MEDIA_ANNOUNCE=1048576]=`MEDIA_ANNOUNCE`,e[e.MEDIA_ENQUEUE=2097152]=`MEDIA_ENQUEUE`})(zre||={});var Bre;(function(e){e.None=`None`,e.apparent_power=`apparent_power`,e.aqi=`aqi`,e.atmospheric_pressure=`atmospheric_pressure`,e.battery=`battery`,e.carbon_dioxide=`carbon_dioxide`,e.carbon_monoxide=`carbon_monoxide`,e.current=`current`,e.data_rate=`data_rate`,e.data_size=`data_size`,e.date=`date`,e.distance=`distance`,e.duration=`duration`,e.energy=`energy`,e.energy_storage=`energy_storage`,e.enum=`enum`,e.frequency=`frequency`,e.gas=`gas`,e.humidity=`humidity`,e.illuminance=`illuminance`,e.irradiance=`irradiance`,e.moisture=`moisture`,e.monetary=`monetary`,e.nitrogen_dioxide=`nitrogen_dioxide`,e.nitrogen_monoxide=`nitrogen_monoxide`,e.nitrous_oxide=`nitrous_oxide`,e.ozone=`ozone`,e.ph=`ph`,e.pm1=`pm1`,e.pm25=`pm25`,e.pm10=`pm10`,e.power_factor=`power_factor`,e.power=`power`,e.precipitation=`precipitation`,e.precipitation_intensity=`precipitation_intensity`,e.pressure=`pressure`,e.radon=`radon`,e.reactive_power=`reactive_power`,e.signal_strength=`signal_strength`,e.sound_pressure=`sound_pressure`,e.speed=`speed`,e.sulphur_dioxide=`sulphur_dioxide`,e.temperature=`temperature`,e.timestamp=`timestamp`,e.volatile_organic_compounds=`volatile_organic_compounds`,e.volatile_organic_compounds_parts=`volatile_organic_compounds_parts`,e.voltage=`voltage`,e.volume=`volume`,e.volume_flow_rate=`volume_flow_rate`,e.volume_storage=`volume_storage`,e.water=`water`,e.weight=`weight`,e.wind_speed=`wind_speed`})(Bre||={});var Vre;(function(e){e.cleaning=`cleaning`,e.docked=`docked`,e.returning=`returning`,e.error=`error`,e.idle=`idle`,e.paused=`paused`,e.segment_cleaning=`segment_cleaning`,e.zone_cleaning=`zone_cleaning`,e.spot_cleaning=`spot_cleaning`,e.mop_cleaning=`mop_cleaning`})(Vre||={});var Hre;(function(e){e[e.TURN_ON=1]=`TURN_ON`,e[e.TURN_OFF=2]=`TURN_OFF`,e[e.PAUSE=4]=`PAUSE`,e[e.STOP=8]=`STOP`,e[e.RETURN_HOME=16]=`RETURN_HOME`,e[e.FAN_SPEED=32]=`FAN_SPEED`,e[e.BATTERY=64]=`BATTERY`,e[e.STATUS=128]=`STATUS`,e[e.SEND_COMMAND=256]=`SEND_COMMAND`,e[e.LOCATE=512]=`LOCATE`,e[e.CLEAN_SPOT=1024]=`CLEAN_SPOT`,e[e.MAP=2048]=`MAP`,e[e.STATE=4096]=`STATE`,e[e.START=8192]=`START`,e[e.CLEAN_AREA=16384]=`CLEAN_AREA`})(Hre||={});var Ure;(function(e){e.off=`off`,e.low=`low`,e.medium=`medium`,e.high=`high`,e.turbo=`turbo`,e.auto=`auto`,e.max=`max`})(Ure||={});var Wre;(function(e){e.off=`off`,e.eco=`eco`,e.electric=`electric`,e.gas=`gas`,e.heat_pump=`heat_pump`,e.high_demand=`high_demand`,e.performance=`performance`})(Wre||={});var Gre;(function(e){e[e.TARGET_TEMPERATURE=1]=`TARGET_TEMPERATURE`,e[e.OPERATION_MODE=2]=`OPERATION_MODE`,e[e.AWAY_MODE=4]=`AWAY_MODE`,e[e.ON_OFF=8]=`ON_OFF`})(Gre||={});var av={air_purifier:`Air Purifier`,air_quality_sensor:`Air Quality Sensor`,basic_video_player:`Basic Video Player (TV)`,battery_storage:`Battery Sensor`,carbon_monoxide_sensor:`Carbon Monoxide (CO) Sensor`,color_temperature_light:`Color Temperature Light`,contact_sensor:`Contact Sensor`,dishwasher:`Dishwasher`,dimmable_light:`Dimmable Light`,dimmable_plugin_unit:`Dimmable Plug-in Unit`,door_lock:`Door Lock`,electrical_sensor:`Electrical Sensor (Power/Energy/Voltage/Current)`,extended_color_light:`Extended Color Light`,fan:`Fan`,flow_sensor:`Flow Sensor`,formaldehyde_sensor:`Formaldehyde (HCHO) Sensor`,generic_switch:`Generic Switch (Button)`,humidifier_dehumidifier:`Humidifier/Dehumidifier`,humidity_sensor:`Humidity Sensor`,light_sensor:`Light Sensor`,mode_select:`Mode Select`,motion_sensor:`Motion Sensor (PIR)`,nitrogen_dioxide_sensor:`Nitrogen Dioxide (NO₂) Sensor`,occupancy_sensor:`Occupancy Sensor`,on_off_light:`On/Off Light`,on_off_plugin_unit:`On/Off Plug-in Unit`,on_off_switch:`On/Off Switch`,ozone_sensor:`Ozone (O₃) Sensor`,pm1_sensor:`PM1 Sensor`,pressure_sensor:`Pressure Sensor`,pump:`Pump`,rain_sensor:`Rain Sensor`,radon_sensor:`Radon Sensor`,robot_vacuum_cleaner:`Robot Vacuum Cleaner`,smoke_co_alarm:`Smoke/CO Alarm`,speaker:`Speaker`,temperature_sensor:`Temperature Sensor`,thermostat:`Thermostat`,tvoc_sensor:`TVOC / VOC Index Sensor`,water_heater:`Water Heater`,water_freeze_detector:`Water Freeze Detector`,water_leak_detector:`Water Leak Detector`,water_valve:`Water Valve`,window_covering:`Window Covering`},ov={Auto:0,Quick:1,Quiet:2,LowNoise:3,LowEnergy:4,Vacation:5,Min:6,Max:7,Night:8,Day:9,DeepClean:16384,Vacuum:16385,Mop:16386,VacuumThenMop:16387},Kre={alarm_control_panel:[`mode_select`,`on_off_plugin_unit`],automation:[`on_off_switch`],binary_sensor:[`contact_sensor`,`motion_sensor`,`occupancy_sensor`,`rain_sensor`,`smoke_co_alarm`,`water_freeze_detector`,`water_leak_detector`],button:[`generic_switch`],climate:[`thermostat`],cover:[`window_covering`],event:[`generic_switch`],fan:[`air_purifier`,`fan`],humidifier:[`humidifier_dehumidifier`],input_boolean:[`on_off_plugin_unit`,`on_off_switch`],input_select:[`mode_select`],input_button:[`generic_switch`],light:[`color_temperature_light`,`dimmable_light`,`extended_color_light`,`on_off_light`],lock:[`door_lock`],media_player:[`basic_video_player`,`on_off_switch`,`speaker`],scene:[`on_off_switch`],script:[`on_off_switch`],sensor:[`air_quality_sensor`,`battery_storage`,`carbon_monoxide_sensor`,`electrical_sensor`,`formaldehyde_sensor`,`humidity_sensor`,`light_sensor`,`nitrogen_dioxide_sensor`,`ozone_sensor`,`pm1_sensor`,`pressure_sensor`,`radon_sensor`,`temperature_sensor`,`tvoc_sensor`],select:[`mode_select`],siren:[`on_off_plugin_unit`],switch:[`dishwasher`,`on_off_plugin_unit`,`on_off_switch`,`pump`,`water_valve`],vacuum:[`robot_vacuum_cleaner`],valve:[`water_valve`,`on_off_plugin_unit`],water_heater:[`water_heater`,`thermostat`]},qre;(function(e){e.alarm_control_panel=`alarm_control_panel`,e.automation=`automation`,e.button=`button`,e.binary_sensor=`binary_sensor`,e.climate=`climate`,e.cover=`cover`,e.event=`event`,e.fan=`fan`,e.humidifier=`humidifier`,e.input_boolean=`input_boolean`,e.input_button=`input_button`,e.input_select=`input_select`,e.light=`light`,e.lock=`lock`,e.media_player=`media_player`,e.remote=`remote`,e.scene=`scene`,e.select=`select`,e.script=`script`,e.sensor=`sensor`,e.siren=`siren`,e.switch=`switch`,e.vacuum=`vacuum`,e.valve=`valve`,e.water_heater=`water_heater`})(qre||={});var sv={type:`object`,default:{type:``,value:``},properties:{type:{title:`Type`,type:`string`,oneOf:[{const:`pattern`,title:`pattern`,description:`Wildcard pattern matching entity IDs. Use * as wildcard. Example: 'light.living_room_*' matches all lights in the living room.`},{const:`regex`,title:`regex`,description:`Regex tested against the entity_id only (e.g. 'light.kitchen_lamp'). For labels use entity_label_regex or device_label_regex. Example: '^(light|switch)\\.kitchen_.*'.`},{const:`domain`,title:`domain`,description:`Match entities by their domain (the part before the dot). Example: 'light', 'switch', 'sensor'.`},{const:`platform`,title:`platform`,description:`Match entities by their integration/platform. Example: 'hue', 'zwave', 'mqtt'.`},{const:`label`,title:`label (deprecated)`,description:`Deprecated: use entity_label or device_label instead. Behaves like entity_label.`},{const:`entity_label`,title:`entity_label`,description:`Matches only entities that have this label assigned directly. Other entities of the same device are NOT included.`},{const:`device_label`,title:`device_label`,description:`Matches ALL entities of a device if the device has this label. Use this to include a complete device with all its entities.`},{const:`entity_label_regex`,title:`entity_label_regex`,description:`Regex tested against entity-label slugs and display names. Matches if any label assigned to the entity matches. Example: '^(matter|voice).*'.`},{const:`device_label_regex`,title:`device_label_regex`,description:`Regex tested against device-label slugs and display names. Matches ALL entities of a device whose label matches. Example: '^(matter|voice).*'.`},{const:`any_field_regex`,title:`any_field_regex`,description:`Regex tested against a single-line key=value haystack covering entity_id, domain, platform, area, entity_category, device_class, entity_labels, entity_label_names, device_labels, device_label_names, device_name, product_name. Use lookaheads for AND, alternation for OR. Example: '(?=.*domain=light)(?=.*area=living_room)|(?=.*domain=switch)(?=.*entity_labels=.*\\bvoice\\b)'.`},{const:`area`,title:`area`,description:`Match entities by their area slug. Example: 'living_room', 'bedroom'.`},{const:`entity_category`,title:`entity_category`,description:`Match entities by their category. Example: 'config', 'diagnostic' to exclude configuration entities.`},{const:`device_name`,title:`device_name`,description:`Match entities by their device name. Supports wildcards. Example: '*Philips*' matches all Philips devices.`},{const:`product_name`,title:`product_name`,description:`Match entities by their product/model name. Supports wildcards. Example: 'Hue*Bulb'.`},{const:`device_class`,title:`device_class`,description:`Match entities by their device class attribute. Example: 'temperature', 'motion', 'door', 'window'.`}]},value:{title:`Value`,description:`For labels, use the display name or the label_id (slug). You can look up both on the Labels page in the sidebar.`,type:`string`,minLength:1}},required:[`type`,`value`],additionalProperties:!1},cv={type:`object`,title:`Bridge Config`,properties:{name:{title:`Name`,type:`string`,minLength:1,maxLength:32},port:{title:`Port`,type:`number`,minimum:1},icon:{title:`Icon`,type:`string`,description:`Icon to display for this bridge in the UI`,enum:[`light`,`switch`,`climate`,`cover`,`fan`,`lock`,`sensor`,`media_player`,`vacuum`,`remote`,`humidifier`,`speaker`,`garage`,`door`,`window`,`motion`,`battery`,`power`,`camera`,`default`]},countryCode:{title:`Country Code`,type:`string`,description:`An ISO 3166-1 alpha-2 code to represent the country in which the Node is located. Only needed if the commissioning fails due to missing country code.`,minLength:2,maxLength:3},priority:{title:`Startup Priority`,type:`number`,description:`Startup order priority. Lower values start first. Default is 100.`,default:100,minimum:1,maximum:999},serialNumberSuffix:{title:`Serial Number Suffix`,type:`string`,description:`Append a suffix to every entity serial number on this bridge. Useful for forcing controllers like Aqara to treat devices as new and bypass cached device data. Leave empty for default behavior.`,maxLength:16},filter:{title:`Include or exclude entities`,type:`object`,properties:{include:{title:`Include`,type:`array`,items:sv},exclude:{title:`Exclude`,type:`array`,items:sv},includeMode:{title:`Include Mode`,type:`string`,description:`How to combine include rules: 'any' matches if ANY rule matches (OR), 'all' matches only if ALL rules match (AND). Default: 'any'`,enum:[`any`,`all`],default:`any`}},required:[`include`,`exclude`],additionalProperties:!1},featureFlags:{title:`Feature Flags`,type:`object`,properties:{coverDoNotInvertPercentage:{title:`Do not invert Percentages for Covers`,description:`Do not invert the percentage of covers to match Home Assistant (not Matter compliant)`,type:`boolean`,default:!1},coverUseHomeAssistantPercentage:{title:`Use Home Assistant Percentage for Covers (Alexa-friendly)`,description:`Display cover percentages matching Home Assistant values in Matter controllers like Alexa. This makes the displayed percentage match what you see in Home Assistant, but the semantic meaning differs: in HA, higher percentage = more open; in Alexa, higher percentage is typically interpreted as more closed. Open/Close commands will still work correctly.`,type:`boolean`,default:!1},coverSwapOpenClose:{title:`Swap Open/Close for Covers`,description:`Swap open/close commands and invert position reporting for covers. Enable this if Alexa voice commands are reversed (saying 'close' opens the blinds and vice versa).`,type:`boolean`,default:!1},includeHiddenEntities:{title:`Include Hidden Entities`,description:`Include entities that are marked as hidden in Home Assistant`,type:`boolean`,default:!1},serverMode:{title:`Server Mode (for Robot Vacuums)`,description:`Expose the device as a standalone Matter device instead of a bridged device. This is required for Apple Home to properly support Siri voice commands for Robot Vacuums. IMPORTANT: Only ONE device should be in this bridge when server mode is enabled.`,type:`boolean`,default:!1},autoBatteryMapping:{title:`Auto Battery Mapping`,description:`Automatically assign battery sensors from the same Home Assistant device to the main entity. When enabled, battery sensors will be merged into their parent devices instead of appearing as separate devices.`,type:`boolean`,default:!1},autoHumidityMapping:{title:`Auto Humidity Mapping`,description:`Automatically combine humidity sensors with temperature sensors from the same Home Assistant device. When enabled, humidity sensors will be merged into temperature sensors to create combined TemperatureHumiditySensor devices.`,type:`boolean`,default:!0},autoPressureMapping:{title:`Auto Pressure Mapping`,description:`Automatically combine pressure sensors with temperature sensors from the same Home Assistant device. When enabled, pressure sensors will be merged into temperature sensors to create combined sensor devices.`,type:`boolean`,default:!0},autoComposedDevices:{title:`Auto Composed Devices`,description:`Master toggle: combine related entities from the same Home Assistant device into a single Matter endpoint. Turns on battery, humidity, pressure, power, and energy auto-mapping at once, a Shelly Plug shows up as one device with power monitoring instead of several siblings.`,type:`boolean`,default:!1},autoForceSync:{title:`Auto Force Sync`,description:`Periodically compare and push all device states to connected controllers every 90 seconds. Enable this if devices get out of sync after extended periods. Health checks for dead sessions always run regardless of this setting.`,type:`boolean`,default:!1},productNameFromNodeLabel:{title:`Product Name from Node Label`,description:`Report the entity's node label (custom name / friendly name / entity id) as the Matter productName. Useful for controllers like Aqara that display productName as the device name instead of nodeLabel. A per-entity customProductName still takes precedence.`,type:`boolean`,default:!1},preferEntityRegistryName:{title:`Prefer Entity Registry Name (HA 2026.4 workaround)`,description:`Use the entity registry name (or original_name) as nodeLabel instead of the composed friendly_name. Since Home Assistant 2026.4, friendly_name is prefixed with the device name, which breaks voice commands that relied on the short entity name. Resolution order: customName → registry name → registry original_name → friendly_name → entity_id. Matter has no alias concept, this only changes which single name is reported.`,type:`boolean`,default:!1},vacuumOnOff:{title:`Vacuum: Include OnOff Cluster (Alexa)`,description:`Add an OnOff cluster to robot vacuum endpoints. Alexa REQUIRES this (PowerController) to show robotic vacuums in the app. Without it, Alexa commissions the device but never displays it. In Server Mode this is enabled automatically, only check this for bridge mode. WARNING: OnOff is NOT part of the Matter RVC device type specification. Enabling this may break Apple Home (shows 'Updating') and Google Home.`,type:`boolean`},alexaPreserveBrightnessOnTurnOn:{title:`Alexa: Preserve Brightness on Turn-On`,description:`Workaround for Alexa resetting light brightness to 100% after subscription renewal. When enabled, the bridge ignores brightness commands that set lights to 100% within 200ms of a turn-on command for the same light. WARNING: breaks Apple Home's 'set room to 100%' Siri commands, which use the same on() + moveToLevel(254) pattern. Only enable on Alexa-only bridges.`,type:`boolean`,default:!1},useHaRegistrySerial:{title:`Use HA Registry Serial Number`,description:`Fall back to the Home Assistant device registry serial_number when no per-entity customSerialNumber is configured. Default off because changing serialNumber after commissioning can confuse controllers. A per-entity customSerialNumber still takes precedence.`,type:`boolean`,default:!1},coverSliderDebounceMs:{title:`Cover Slider Debounce (ms)`,description:`Override the cover position-update debounce window for this bridge. Some controllers (Apple Home) stream slider updates while the user is still dragging, causing covers to start moving toward an intermediate target. Set to the time the bridge should wait after the last update before sending the final value to Home Assistant. 0 keeps the built-in two-phase debounce (400 ms initial / 150 ms subsequent), which fits most controllers. Try 800–1500 ms for slow blinds. A per-entity override on a single cover wins over this flag.`,type:`number`,minimum:0,maximum:5e3,default:0}}}},required:[`name`,`port`,`filter`],additionalProperties:!1};({...cv}),{...cv.properties},[...cv?.required??[]];var lv=X((0,G.jsx)(`path`,{d:`M20 11H7.83l5.59-5.59L12 4l-8 8 8 8 1.41-1.41L7.83 13H20z`}),`ArrowBack`),uv=X((0,G.jsx)(`path`,{d:`M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m-2 15-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8z`}),`CheckCircle`),dv=X((0,G.jsx)(`path`,{d:`M9.19 6.35c-2.04 2.29-3.44 5.58-3.57 5.89L2 10.69l4.05-4.05c.47-.47 1.15-.68 1.81-.55zM11.17 17s3.74-1.55 5.89-3.7c5.4-5.4 4.5-9.62 4.21-10.57-.95-.3-5.17-1.19-10.57 4.21C8.55 9.09 7 12.83 7 12.83zm6.48-2.19c-2.29 2.04-5.58 3.44-5.89 3.57L13.31 22l4.05-4.05c.47-.47.68-1.15.55-1.81zM9 18c0 .83-.34 1.58-.88 2.12C6.94 21.3 2 22 2 22s.7-4.94 1.88-6.12C4.42 15.34 5.17 15 6 15c1.66 0 3 1.34 3 3m4-9c0-1.1.9-2 2-2s2 .9 2 2-.9 2-2 2-2-.9-2-2`}),`RocketLaunch`),Jre=Ld(`MuiBox`,[`root`]),Z=Pd({themeId:wm,defaultTheme:Sm(),defaultClassName:Jre.root,generateClassName:Md.generate});function Yre(e){return Id(`MuiButton`,e)}var fv=Ld(`MuiButton`,`root.text.textInherit.textPrimary.textSecondary.textSuccess.textError.textInfo.textWarning.outlined.outlinedInherit.outlinedPrimary.outlinedSecondary.outlinedSuccess.outlinedError.outlinedInfo.outlinedWarning.contained.containedInherit.containedPrimary.containedSecondary.containedSuccess.containedError.containedInfo.containedWarning.disableElevation.focusVisible.disabled.colorInherit.colorPrimary.colorSecondary.colorSuccess.colorError.colorInfo.colorWarning.textSizeSmall.textSizeMedium.textSizeLarge.outlinedSizeSmall.outlinedSizeMedium.outlinedSizeLarge.containedSizeSmall.containedSizeMedium.containedSizeLarge.sizeMedium.sizeSmall.sizeLarge.fullWidth.startIcon.endIcon.icon.iconSizeSmall.iconSizeMedium.iconSizeLarge.loading.loadingWrapper.loadingIconPlaceholder.loadingIndicator.loadingPositionCenter.loadingPositionStart.loadingPositionEnd`.split(`.`)),Xre=C.createContext({}),Zre=C.createContext(void 0),Qre=e=>{let{color:t,disableElevation:n,fullWidth:r,size:i,variant:a,loading:o,loadingPosition:s,classes:c}=e,l=dp({root:[`root`,o&&`loading`,a,`${a}${Y(t)}`,`size${Y(i)}`,`${a}Size${Y(i)}`,`color${Y(t)}`,n&&`disableElevation`,r&&`fullWidth`,o&&`loadingPosition${Y(s)}`],startIcon:[`icon`,`startIcon`,`iconSize${Y(i)}`],endIcon:[`icon`,`endIcon`,`iconSize${Y(i)}`],loadingIndicator:[`loadingIndicator`],loadingWrapper:[`loadingWrapper`]},Yre,c);return{...c,...l}},pv=[{props:{size:`small`},style:{"& > *:nth-of-type(1)":{fontSize:18}}},{props:{size:`medium`},style:{"& > *:nth-of-type(1)":{fontSize:20}}},{props:{size:`large`},style:{"& > *:nth-of-type(1)":{fontSize:22}}}],$re=J(Fh,{shouldForwardProp:e=>Om(e)||e===`classes`,name:`MuiButton`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[n.variant],t[`${n.variant}${Y(n.color)}`],t[`size${Y(n.size)}`],t[`${n.variant}Size${Y(n.size)}`],n.color===`inherit`&&t.colorInherit,n.disableElevation&&t.disableElevation,n.fullWidth&&t.fullWidth,n.loading&&t.loading]}})(Im(({theme:e})=>{let t=e.palette.mode===`light`?e.palette.grey[300]:e.palette.grey[800],n=e.palette.mode===`light`?e.palette.grey.A100:e.palette.grey[700];return{...e.typography.button,minWidth:64,padding:`6px 16px`,border:0,borderRadius:(e.vars||e).shape.borderRadius,transition:e.transitions.create([`background-color`,`box-shadow`,`border-color`,`color`],{duration:e.transitions.duration.short}),"&:hover":{textDecoration:`none`},[`&.${fv.disabled}`]:{color:(e.vars||e).palette.action.disabled},variants:[{props:{variant:`contained`},style:{color:`var(--variant-containedColor)`,backgroundColor:`var(--variant-containedBg)`,boxShadow:(e.vars||e).shadows[2],"&:hover":{boxShadow:(e.vars||e).shadows[4],"@media (hover: none)":{boxShadow:(e.vars||e).shadows[2]}},"&:active":{boxShadow:(e.vars||e).shadows[8]},[`&.${fv.focusVisible}`]:{boxShadow:(e.vars||e).shadows[6]},[`&.${fv.disabled}`]:{color:(e.vars||e).palette.action.disabled,boxShadow:(e.vars||e).shadows[0],backgroundColor:(e.vars||e).palette.action.disabledBackground}}},{props:{variant:`outlined`},style:{padding:`5px 15px`,border:`1px solid currentColor`,borderColor:`var(--variant-outlinedBorder, currentColor)`,backgroundColor:`var(--variant-outlinedBg)`,color:`var(--variant-outlinedColor)`,[`&.${fv.disabled}`]:{border:`1px solid ${(e.vars||e).palette.action.disabledBackground}`}}},{props:{variant:`text`},style:{padding:`6px 8px`,color:`var(--variant-textColor)`,backgroundColor:`var(--variant-textBg)`}},...Object.entries(e.palette).filter(Gm()).map(([t])=>({props:{color:t},style:{"--variant-textColor":(e.vars||e).palette[t].main,"--variant-outlinedColor":(e.vars||e).palette[t].main,"--variant-outlinedBorder":e.alpha((e.vars||e).palette[t].main,.5),"--variant-containedColor":(e.vars||e).palette[t].contrastText,"--variant-containedBg":(e.vars||e).palette[t].main,"@media (hover: hover)":{"&:hover":{"--variant-containedBg":(e.vars||e).palette[t].dark,"--variant-textBg":e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.hoverOpacity),"--variant-outlinedBorder":(e.vars||e).palette[t].main,"--variant-outlinedBg":e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.hoverOpacity)}}}})),{props:{color:`inherit`},style:{color:`inherit`,borderColor:`currentColor`,"--variant-containedBg":e.vars?e.vars.palette.Button.inheritContainedBg:t,"@media (hover: hover)":{"&:hover":{"--variant-containedBg":e.vars?e.vars.palette.Button.inheritContainedHoverBg:n,"--variant-textBg":e.alpha((e.vars||e).palette.text.primary,(e.vars||e).palette.action.hoverOpacity),"--variant-outlinedBg":e.alpha((e.vars||e).palette.text.primary,(e.vars||e).palette.action.hoverOpacity)}}}},{props:{size:`small`,variant:`text`},style:{padding:`4px 5px`,fontSize:e.typography.pxToRem(13)}},{props:{size:`large`,variant:`text`},style:{padding:`8px 11px`,fontSize:e.typography.pxToRem(15)}},{props:{size:`small`,variant:`outlined`},style:{padding:`3px 9px`,fontSize:e.typography.pxToRem(13)}},{props:{size:`large`,variant:`outlined`},style:{padding:`7px 21px`,fontSize:e.typography.pxToRem(15)}},{props:{size:`small`,variant:`contained`},style:{padding:`4px 10px`,fontSize:e.typography.pxToRem(13)}},{props:{size:`large`,variant:`contained`},style:{padding:`8px 22px`,fontSize:e.typography.pxToRem(15)}},{props:{disableElevation:!0},style:{boxShadow:`none`,"&:hover":{boxShadow:`none`},[`&.${fv.focusVisible}`]:{boxShadow:`none`},"&:active":{boxShadow:`none`},[`&.${fv.disabled}`]:{boxShadow:`none`}}},{props:{fullWidth:!0},style:{width:`100%`}},{props:{loadingPosition:`center`},style:{transition:e.transitions.create([`background-color`,`box-shadow`,`border-color`],{duration:e.transitions.duration.short}),[`&.${fv.loading}`]:{color:`transparent`}}}]}})),eie=J(`span`,{name:`MuiButton`,slot:`StartIcon`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.startIcon,n.loading&&t.startIconLoadingStart,t[`iconSize${Y(n.size)}`]]}})(({theme:e})=>({display:`inherit`,marginRight:8,marginLeft:-4,variants:[{props:{size:`small`},style:{marginLeft:-2}},{props:{loadingPosition:`start`,loading:!0},style:{transition:e.transitions.create([`opacity`],{duration:e.transitions.duration.short}),opacity:0}},{props:{loadingPosition:`start`,loading:!0,fullWidth:!0},style:{marginRight:-8}},...pv]})),tie=J(`span`,{name:`MuiButton`,slot:`EndIcon`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.endIcon,n.loading&&t.endIconLoadingEnd,t[`iconSize${Y(n.size)}`]]}})(({theme:e})=>({display:`inherit`,marginRight:-4,marginLeft:8,variants:[{props:{size:`small`},style:{marginRight:-2}},{props:{loadingPosition:`end`,loading:!0},style:{transition:e.transitions.create([`opacity`],{duration:e.transitions.duration.short}),opacity:0}},{props:{loadingPosition:`end`,loading:!0,fullWidth:!0},style:{marginLeft:-8}},...pv]})),nie=J(`span`,{name:`MuiButton`,slot:`LoadingIndicator`})(({theme:e})=>({display:`none`,position:`absolute`,visibility:`visible`,variants:[{props:{loading:!0},style:{display:`flex`}},{props:{loadingPosition:`start`},style:{left:14}},{props:{loadingPosition:`start`,size:`small`},style:{left:10}},{props:{variant:`text`,loadingPosition:`start`},style:{left:6}},{props:{loadingPosition:`center`},style:{left:`50%`,transform:`translate(-50%)`,color:(e.vars||e).palette.action.disabled}},{props:{loadingPosition:`end`},style:{right:14}},{props:{loadingPosition:`end`,size:`small`},style:{right:10}},{props:{variant:`text`,loadingPosition:`end`},style:{right:6}},{props:{loadingPosition:`start`,fullWidth:!0},style:{position:`relative`,left:-10}},{props:{loadingPosition:`end`,fullWidth:!0},style:{position:`relative`,right:-10}}]})),mv=J(`span`,{name:`MuiButton`,slot:`LoadingIconPlaceholder`})({display:`inline-block`,width:`1em`,height:`1em`}),hv=C.forwardRef(function(e,t){let n=C.useContext(Xre),r=C.useContext(Zre),i=Am({props:Zd(n,e),name:`MuiButton`}),{children:a,color:o=`primary`,component:s=`button`,className:c,disabled:l=!1,disableElevation:u=!1,disableFocusRipple:d=!1,endIcon:f,focusVisibleClassName:p,fullWidth:m=!1,id:h,loading:g=null,loadingIndicator:_,loadingPosition:v=`center`,size:y=`medium`,startIcon:b,type:x,variant:S=`text`,...w}=i,T=ah(h),E=_??(0,G.jsx)(Bh,{"aria-labelledby":T,color:`inherit`,size:16}),D={...i,color:o,component:s,disabled:l,disableElevation:u,disableFocusRipple:d,fullWidth:m,loading:g,loadingIndicator:E,loadingPosition:v,size:y,type:x,variant:S},O=Qre(D),k=(b||g&&v===`start`)&&(0,G.jsx)(eie,{className:O.startIcon,ownerState:D,children:b||(0,G.jsx)(mv,{className:O.loadingIconPlaceholder,ownerState:D})}),A=(f||g&&v===`end`)&&(0,G.jsx)(tie,{className:O.endIcon,ownerState:D,children:f||(0,G.jsx)(mv,{className:O.loadingIconPlaceholder,ownerState:D})}),j=r||``,M=typeof g==`boolean`?(0,G.jsx)(`span`,{className:O.loadingWrapper,style:{display:`contents`},children:g&&(0,G.jsx)(nie,{className:O.loadingIndicator,ownerState:D,children:E})}):null;return(0,G.jsxs)($re,{ownerState:D,className:K(n.className,O.root,c,j),component:s,disabled:l||g,focusRipple:!d,focusVisibleClassName:K(O.focusVisible,p),ref:t,type:x,id:g?T:h,...w,classes:O,children:[k,v!==`end`&&M,a,v===`end`&&M,A]})});function rie(e){return Id(`MuiCard`,e)}Ld(`MuiCard`,[`root`]);var iie=e=>{let{classes:t}=e;return dp({root:[`root`]},rie,t)},aie=J(Km,{name:`MuiCard`,slot:`Root`})({overflow:`hidden`}),gv=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiCard`}),{className:r,raised:i=!1,...a}=n,o={...n,raised:i};return(0,G.jsx)(aie,{className:K(iie(o).root,r),elevation:i?8:void 0,ref:t,ownerState:o,...a})});function oie(e){return Id(`MuiCardActionArea`,e)}var _v=Ld(`MuiCardActionArea`,[`root`,`focusVisible`,`focusHighlight`]),sie=e=>{let{classes:t}=e;return dp({root:[`root`],focusHighlight:[`focusHighlight`]},oie,t)},cie=J(Fh,{name:`MuiCardActionArea`,slot:`Root`})(Im(({theme:e})=>({display:`block`,textAlign:`inherit`,borderRadius:`inherit`,width:`100%`,[`&:hover .${_v.focusHighlight}`]:{opacity:(e.vars||e).palette.action.hoverOpacity,"@media (hover: none)":{opacity:0}},[`&.${_v.focusVisible} .${_v.focusHighlight}`]:{opacity:(e.vars||e).palette.action.focusOpacity}}))),lie=J(`span`,{name:`MuiCardActionArea`,slot:`FocusHighlight`})(Im(({theme:e})=>({overflow:`hidden`,pointerEvents:`none`,position:`absolute`,top:0,right:0,bottom:0,left:0,borderRadius:`inherit`,opacity:0,backgroundColor:`currentcolor`,transition:e.transitions.create(`opacity`,{duration:e.transitions.duration.short})}))),vv=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiCardActionArea`}),{children:r,className:i,focusVisibleClassName:a,slots:o={},slotProps:s={},...c}=n,l=n,u=sie(l),d={slots:o,slotProps:s},[f,p]=Wm(`root`,{elementType:cie,externalForwardedProps:{...d,...c},shouldForwardComponentProp:!0,ownerState:l,ref:t,className:K(u.root,i),additionalProps:{focusVisibleClassName:K(a,u.focusVisible)}}),[m,h]=Wm(`focusHighlight`,{elementType:lie,externalForwardedProps:d,ownerState:l,className:u.focusHighlight});return(0,G.jsxs)(f,{...p,children:[r,(0,G.jsx)(m,{...h})]})});function uie(e){return Id(`MuiCardContent`,e)}Ld(`MuiCardContent`,[`root`]);var die=e=>{let{classes:t}=e;return dp({root:[`root`]},uie,t)},fie=J(`div`,{name:`MuiCardContent`,slot:`Root`})({padding:16,"&:last-child":{paddingBottom:24}}),yv=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiCardContent`}),{className:r,component:i=`div`,...a}=n,o={...n,component:i};return(0,G.jsx)(fie,{as:i,className:K(die(o).root,r),ownerState:o,ref:t,...a})}),bv=C.createContext(void 0);function xv(){return C.useContext(bv)}function pie(e){return Id(`PrivateSwitchBase`,e)}Ld(`PrivateSwitchBase`,[`root`,`checked`,`disabled`,`input`,`edgeStart`,`edgeEnd`]);var mie=e=>{let{classes:t,checked:n,disabled:r,edge:i}=e;return dp({root:[`root`,n&&`checked`,r&&`disabled`,i&&`edge${Y(i)}`],input:[`input`]},pie,t)},hie=J(Fh,{name:`MuiSwitchBase`})({padding:9,borderRadius:`50%`,variants:[{props:{edge:`start`,size:`small`},style:{marginLeft:-3}},{props:({edge:e,ownerState:t})=>e===`start`&&t.size!==`small`,style:{marginLeft:-12}},{props:{edge:`end`,size:`small`},style:{marginRight:-3}},{props:({edge:e,ownerState:t})=>e===`end`&&t.size!==`small`,style:{marginRight:-12}}]}),gie=J(`input`,{name:`MuiSwitchBase`,shouldForwardProp:Om})({cursor:`inherit`,position:`absolute`,opacity:0,width:`100%`,height:`100%`,top:0,left:0,margin:0,padding:0,zIndex:1}),Sv=C.forwardRef(function(e,t){let{autoFocus:n,checked:r,checkedIcon:i,defaultChecked:a,disabled:o,disableFocusRipple:s=!1,edge:c=!1,icon:l,id:u,inputProps:d,inputRef:f,name:p,onBlur:m,onChange:h,onFocus:g,readOnly:_,required:v=!1,tabIndex:y,type:b,value:x,slots:S={},slotProps:C={},...w}=e,[T,E]=sh({controlled:r,default:!!a,name:`SwitchBase`,state:`checked`}),D=xv(),O=e=>{g&&g(e),D&&D.onFocus&&D.onFocus(e)},k=e=>{m&&m(e),D&&D.onBlur&&D.onBlur(e)},A=e=>{if(e.nativeEvent.defaultPrevented||_)return;let t=e.target.checked;E(t),h&&h(e,t)},j=o;D&&j===void 0&&(j=D.disabled);let M=b===`checkbox`||b===`radio`,N={...e,checked:T,disabled:j,disableFocusRipple:s,edge:c},P=mie(N),F={slots:S,slotProps:{input:d,...C}},[I,L]=Wm(`root`,{ref:t,elementType:hie,className:P.root,shouldForwardComponentProp:!0,externalForwardedProps:{...F,component:`span`,...w},getSlotProps:e=>({...e,onFocus:t=>{e.onFocus?.(t),O(t)},onBlur:t=>{e.onBlur?.(t),k(t)}}),ownerState:N,additionalProps:{centerRipple:!0,focusRipple:!s,role:void 0,tabIndex:null}}),[R,ee]=Wm(`input`,{ref:f,elementType:gie,className:P.input,externalForwardedProps:F,getSlotProps:e=>({...e,onChange:t=>{e.onChange?.(t),A(t)}}),ownerState:N,additionalProps:{autoFocus:n,checked:r,defaultChecked:a,disabled:j,id:M?u:void 0,name:p,readOnly:_,required:v,tabIndex:y,type:b,...b===`checkbox`&&x===void 0?{}:{value:x}}});return(0,G.jsxs)(I,{...L,children:[(0,G.jsx)(R,{...ee}),T?i:l]})}),_ie=X((0,G.jsx)(`path`,{d:`M19 5v14H5V5h14m0-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2z`}),`CheckBoxOutlineBlank`),vie=X((0,G.jsx)(`path`,{d:`M19 3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.11 0 2-.9 2-2V5c0-1.1-.89-2-2-2zm-9 14l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z`}),`CheckBox`),yie=X((0,G.jsx)(`path`,{d:`M19 3H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm-2 10H7v-2h10v2z`}),`IndeterminateCheckBox`);function bie(e){return Id(`MuiCheckbox`,e)}var Cv=Ld(`MuiCheckbox`,[`root`,`checked`,`disabled`,`indeterminate`,`colorPrimary`,`colorSecondary`,`sizeSmall`,`sizeMedium`]),xie=e=>{let{classes:t,indeterminate:n,color:r,size:i}=e,a=dp({root:[`root`,n&&`indeterminate`,`color${Y(r)}`,`size${Y(i)}`]},bie,t);return{...t,...a}},Sie=J(Sv,{shouldForwardProp:e=>Om(e)||e===`classes`,name:`MuiCheckbox`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.indeterminate&&t.indeterminate,t[`size${Y(n.size)}`],n.color!==`default`&&t[`color${Y(n.color)}`]]}})(Im(({theme:e})=>({color:(e.vars||e).palette.text.secondary,variants:[{props:{color:`default`,disableRipple:!1},style:{"&:hover":{backgroundColor:e.alpha((e.vars||e).palette.action.active,(e.vars||e).palette.action.hoverOpacity)}}},...Object.entries(e.palette).filter(Gm()).map(([t])=>({props:{color:t,disableRipple:!1},style:{"&:hover":{backgroundColor:e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.hoverOpacity)}}})),...Object.entries(e.palette).filter(Gm()).map(([t])=>({props:{color:t},style:{[`&.${Cv.checked}, &.${Cv.indeterminate}`]:{color:(e.vars||e).palette[t].main},[`&.${Cv.disabled}`]:{color:(e.vars||e).palette.action.disabled}}})),{props:{disableRipple:!1},style:{"&:hover":{"@media (hover: none)":{backgroundColor:`transparent`}}}}]}))),Cie=(0,G.jsx)(vie,{}),wie=(0,G.jsx)(_ie,{}),Tie=(0,G.jsx)(yie,{}),wv=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiCheckbox`}),{checkedIcon:r=Cie,color:i=`primary`,icon:a=wie,indeterminate:o=!1,indeterminateIcon:s=Tie,inputProps:c,size:l=`medium`,disableRipple:u=!1,className:d,slots:f={},slotProps:p={},...m}=n,h=o?s:a,g=o?s:r,_={...n,disableRipple:u,color:i,indeterminate:o,size:l},v=xie(_),y=p.input??c,[b,x]=Wm(`root`,{ref:t,elementType:Sie,className:K(v.root,d),shouldForwardComponentProp:!0,externalForwardedProps:{slots:f,slotProps:p,...m},ownerState:_,additionalProps:{type:`checkbox`,icon:C.cloneElement(h,{fontSize:h.props.fontSize??l}),checkedIcon:C.cloneElement(g,{fontSize:g.props.fontSize??l}),disableRipple:u,slots:f,slotProps:{input:dh(typeof y==`function`?y(_):y,{"data-indeterminate":o})}}});return(0,G.jsx)(b,{...x,classes:v})}),Eie=X((0,G.jsx)(`path`,{d:`M12 2C6.47 2 2 6.47 2 12s4.47 10 10 10 10-4.47 10-10S17.53 2 12 2zm5 13.59L15.59 17 12 13.41 8.41 17 7 15.59 10.59 12 7 8.41 8.41 7 12 10.59 15.59 7 17 8.41 13.41 12 17 15.59z`}),`Cancel`);function Die(e){return Id(`MuiChip`,e)}var Tv=Ld(`MuiChip`,`root.sizeSmall.sizeMedium.colorDefault.colorError.colorInfo.colorPrimary.colorSecondary.colorSuccess.colorWarning.disabled.clickable.clickableColorPrimary.clickableColorSecondary.deletable.deletableColorPrimary.deletableColorSecondary.outlined.filled.outlinedPrimary.outlinedSecondary.filledPrimary.filledSecondary.avatar.avatarSmall.avatarMedium.avatarColorPrimary.avatarColorSecondary.icon.iconSmall.iconMedium.iconColorPrimary.iconColorSecondary.label.labelSmall.labelMedium.deleteIcon.deleteIconSmall.deleteIconMedium.deleteIconColorPrimary.deleteIconColorSecondary.deleteIconOutlinedColorPrimary.deleteIconOutlinedColorSecondary.deleteIconFilledColorPrimary.deleteIconFilledColorSecondary.focusVisible`.split(`.`)),Oie=e=>{let{classes:t,disabled:n,size:r,color:i,iconColor:a,onDelete:o,clickable:s,variant:c}=e;return dp({root:[`root`,c,n&&`disabled`,`size${Y(r)}`,`color${Y(i)}`,s&&`clickable`,s&&`clickableColor${Y(i)}`,o&&`deletable`,o&&`deletableColor${Y(i)}`,`${c}${Y(i)}`],label:[`label`,`label${Y(r)}`],avatar:[`avatar`,`avatar${Y(r)}`,`avatarColor${Y(i)}`],icon:[`icon`,`icon${Y(r)}`,`iconColor${Y(a)}`],deleteIcon:[`deleteIcon`,`deleteIcon${Y(r)}`,`deleteIconColor${Y(i)}`,`deleteIcon${Y(c)}Color${Y(i)}`]},Die,t)},kie=J(`div`,{name:`MuiChip`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e,{color:r,iconColor:i,clickable:a,onDelete:o,size:s,variant:c}=n;return[{[`& .${Tv.avatar}`]:t.avatar},{[`& .${Tv.avatar}`]:t[`avatar${Y(s)}`]},{[`& .${Tv.avatar}`]:t[`avatarColor${Y(r)}`]},{[`& .${Tv.icon}`]:t.icon},{[`& .${Tv.icon}`]:t[`icon${Y(s)}`]},{[`& .${Tv.icon}`]:t[`iconColor${Y(i)}`]},{[`& .${Tv.deleteIcon}`]:t.deleteIcon},{[`& .${Tv.deleteIcon}`]:t[`deleteIcon${Y(s)}`]},{[`& .${Tv.deleteIcon}`]:t[`deleteIconColor${Y(r)}`]},{[`& .${Tv.deleteIcon}`]:t[`deleteIcon${Y(c)}Color${Y(r)}`]},t.root,t[`size${Y(s)}`],t[`color${Y(r)}`],a&&t.clickable,a&&r!==`default`&&t[`clickableColor${Y(r)}`],o&&t.deletable,o&&r!==`default`&&t[`deletableColor${Y(r)}`],t[c],t[`${c}${Y(r)}`]]}})(Im(({theme:e})=>{let t=e.palette.mode===`light`?e.palette.grey[700]:e.palette.grey[300];return{maxWidth:`100%`,fontFamily:e.typography.fontFamily,fontSize:e.typography.pxToRem(13),display:`inline-flex`,alignItems:`center`,justifyContent:`center`,height:32,lineHeight:1.5,color:(e.vars||e).palette.text.primary,backgroundColor:(e.vars||e).palette.action.selected,borderRadius:32/2,whiteSpace:`nowrap`,transition:e.transitions.create([`background-color`,`box-shadow`]),cursor:`unset`,outline:0,textDecoration:`none`,border:0,padding:0,verticalAlign:`middle`,boxSizing:`border-box`,[`&.${Tv.disabled}`]:{opacity:(e.vars||e).palette.action.disabledOpacity,pointerEvents:`none`},[`& .${Tv.avatar}`]:{marginLeft:5,marginRight:-6,width:24,height:24,color:e.vars?e.vars.palette.Chip.defaultAvatarColor:t,fontSize:e.typography.pxToRem(12)},[`& .${Tv.avatarColorPrimary}`]:{color:(e.vars||e).palette.primary.contrastText,backgroundColor:(e.vars||e).palette.primary.dark},[`& .${Tv.avatarColorSecondary}`]:{color:(e.vars||e).palette.secondary.contrastText,backgroundColor:(e.vars||e).palette.secondary.dark},[`& .${Tv.avatarSmall}`]:{marginLeft:4,marginRight:-4,width:18,height:18,fontSize:e.typography.pxToRem(10)},[`& .${Tv.icon}`]:{marginLeft:5,marginRight:-6},[`& .${Tv.deleteIcon}`]:{WebkitTapHighlightColor:`transparent`,color:e.alpha((e.vars||e).palette.text.primary,.26),fontSize:22,cursor:`pointer`,margin:`0 5px 0 -6px`,"&:hover":{color:e.alpha((e.vars||e).palette.text.primary,.4)}},variants:[{props:{size:`small`},style:{height:24,[`& .${Tv.icon}`]:{fontSize:18,marginLeft:4,marginRight:-4},[`& .${Tv.deleteIcon}`]:{fontSize:16,marginRight:4,marginLeft:-4}}},...Object.entries(e.palette).filter(Gm([`contrastText`])).map(([t])=>({props:{color:t},style:{backgroundColor:(e.vars||e).palette[t].main,color:(e.vars||e).palette[t].contrastText,[`& .${Tv.deleteIcon}`]:{color:e.alpha((e.vars||e).palette[t].contrastText,.7),"&:hover, &:active":{color:(e.vars||e).palette[t].contrastText}}}})),{props:e=>e.iconColor===e.color,style:{[`& .${Tv.icon}`]:{color:e.vars?e.vars.palette.Chip.defaultIconColor:t}}},{props:e=>e.iconColor===e.color&&e.color!==`default`,style:{[`& .${Tv.icon}`]:{color:`inherit`}}},{props:{onDelete:!0},style:{[`&.${Tv.focusVisible}`]:{backgroundColor:e.alpha((e.vars||e).palette.action.selected,`${(e.vars||e).palette.action.selectedOpacity} + ${(e.vars||e).palette.action.focusOpacity}`)}}},...Object.entries(e.palette).filter(Gm([`dark`])).map(([t])=>({props:{color:t,onDelete:!0},style:{[`&.${Tv.focusVisible}`]:{background:(e.vars||e).palette[t].dark}}})),{props:{clickable:!0},style:{userSelect:`none`,WebkitTapHighlightColor:`transparent`,cursor:`pointer`,"&:hover":{backgroundColor:e.alpha((e.vars||e).palette.action.selected,`${(e.vars||e).palette.action.selectedOpacity} + ${(e.vars||e).palette.action.hoverOpacity}`)},[`&.${Tv.focusVisible}`]:{backgroundColor:e.alpha((e.vars||e).palette.action.selected,`${(e.vars||e).palette.action.selectedOpacity} + ${(e.vars||e).palette.action.focusOpacity}`)},"&:active":{boxShadow:(e.vars||e).shadows[1]}}},...Object.entries(e.palette).filter(Gm([`dark`])).map(([t])=>({props:{color:t,clickable:!0},style:{[`&:hover, &.${Tv.focusVisible}`]:{backgroundColor:(e.vars||e).palette[t].dark}}})),{props:{variant:`outlined`},style:{backgroundColor:`transparent`,border:e.vars?`1px solid ${e.vars.palette.Chip.defaultBorder}`:`1px solid ${e.palette.mode===`light`?e.palette.grey[400]:e.palette.grey[700]}`,[`&.${Tv.clickable}:hover`]:{backgroundColor:(e.vars||e).palette.action.hover},[`&.${Tv.focusVisible}`]:{backgroundColor:(e.vars||e).palette.action.focus},[`& .${Tv.avatar}`]:{marginLeft:4},[`& .${Tv.avatarSmall}`]:{marginLeft:2},[`& .${Tv.icon}`]:{marginLeft:4},[`& .${Tv.iconSmall}`]:{marginLeft:2},[`& .${Tv.deleteIcon}`]:{marginRight:5},[`& .${Tv.deleteIconSmall}`]:{marginRight:3}}},...Object.entries(e.palette).filter(Gm()).map(([t])=>({props:{variant:`outlined`,color:t},style:{color:(e.vars||e).palette[t].main,border:`1px solid ${e.alpha((e.vars||e).palette[t].main,.7)}`,[`&.${Tv.clickable}:hover`]:{backgroundColor:e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.hoverOpacity)},[`&.${Tv.focusVisible}`]:{backgroundColor:e.alpha((e.vars||e).palette[t].main,(e.vars||e).palette.action.focusOpacity)},[`& .${Tv.deleteIcon}`]:{color:e.alpha((e.vars||e).palette[t].main,.7),"&:hover, &:active":{color:(e.vars||e).palette[t].main}}}}))]}})),Aie=J(`span`,{name:`MuiChip`,slot:`Label`,overridesResolver:(e,t)=>{let{ownerState:n}=e,{size:r}=n;return[t.label,t[`label${Y(r)}`]]}})({overflow:`hidden`,textOverflow:`ellipsis`,paddingLeft:12,paddingRight:12,whiteSpace:`nowrap`,variants:[{props:{variant:`outlined`},style:{paddingLeft:11,paddingRight:11}},{props:{size:`small`},style:{paddingLeft:8,paddingRight:8}},{props:{size:`small`,variant:`outlined`},style:{paddingLeft:7,paddingRight:7}}]});function Ev(e){return e.key===`Backspace`||e.key===`Delete`}var Dv=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiChip`}),{avatar:r,className:i,clickable:a,color:o=`default`,component:s,deleteIcon:c,disabled:l=!1,icon:u,label:d,onClick:f,onDelete:p,onKeyDown:m,onKeyUp:h,size:g=`medium`,variant:_=`filled`,tabIndex:v,skipFocusWhenDisabled:y=!1,slots:b={},slotProps:x={},...S}=n,w=uh(C.useRef(null),t),T=e=>{e.stopPropagation(),p(e)},E=e=>{e.currentTarget===e.target&&Ev(e)&&e.preventDefault(),m&&m(e)},D=e=>{e.currentTarget===e.target&&p&&Ev(e)&&p(e),h&&h(e)},O=a!==!1&&f?!0:a,k=O||p?Fh:s||`div`,A={...n,component:k,disabled:l,size:g,color:o,iconColor:C.isValidElement(u)&&u.props.color||o,onDelete:!!p,clickable:O,variant:_},j=Oie(A),M=k===Fh?{component:s||`div`,focusVisibleClassName:j.focusVisible,...p&&{disableRipple:!0}}:{},N=null;p&&(N=c&&C.isValidElement(c)?C.cloneElement(c,{className:K(c.props.className,j.deleteIcon),onClick:T}):(0,G.jsx)(Eie,{className:j.deleteIcon,onClick:T}));let P=null;r&&C.isValidElement(r)&&(P=C.cloneElement(r,{className:K(j.avatar,r.props.className)}));let F=null;u&&C.isValidElement(u)&&(F=C.cloneElement(u,{className:K(j.icon,u.props.className)}));let I={slots:b,slotProps:x},[L,R]=Wm(`root`,{elementType:kie,externalForwardedProps:{...I,...S},ownerState:A,shouldForwardComponentProp:!0,ref:w,className:K(j.root,i),additionalProps:{disabled:O&&l?!0:void 0,tabIndex:y&&l?-1:v,...M},getSlotProps:e=>({...e,onClick:t=>{e.onClick?.(t),f?.(t)},onKeyDown:t=>{e.onKeyDown?.(t),E(t)},onKeyUp:t=>{e.onKeyUp?.(t),D(t)}})}),[ee,z]=Wm(`label`,{elementType:Aie,externalForwardedProps:I,ownerState:A,className:j.label});return(0,G.jsxs)(L,{as:k,...R,children:[P||F,(0,G.jsx)(ee,{...z,children:d}),N]})});function Ov(e){return e!=null&&!(Array.isArray(e)&&e.length===0)}function kv(e,t=!1){return e&&(Ov(e.value)&&e.value!==``||t&&Ov(e.defaultValue)&&e.defaultValue!==``)}function jie(e){return e.startAdornment}function Mie(e){return Id(`MuiFormControl`,e)}Ld(`MuiFormControl`,[`root`,`marginNone`,`marginNormal`,`marginDense`,`fullWidth`,`disabled`]);var Nie=e=>{let{classes:t,margin:n,fullWidth:r}=e;return dp({root:[`root`,n!==`none`&&`margin${Y(n)}`,r&&`fullWidth`]},Mie,t)},Pie=J(`div`,{name:`MuiFormControl`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[`margin${Y(n.margin)}`],n.fullWidth&&t.fullWidth]}})({display:`inline-flex`,flexDirection:`column`,position:`relative`,minWidth:0,padding:0,margin:0,border:0,verticalAlign:`top`,variants:[{props:{margin:`normal`},style:{marginTop:16,marginBottom:8}},{props:{margin:`dense`},style:{marginTop:8,marginBottom:4}},{props:{fullWidth:!0},style:{width:`100%`}}]}),Av=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiFormControl`}),{children:r,className:i,color:a=`primary`,component:o=`div`,disabled:s=!1,error:c=!1,focused:l,fullWidth:u=!1,hiddenLabel:d=!1,margin:f=`none`,required:p=!1,size:m=`medium`,variant:h=`outlined`,...g}=n,_={...n,color:a,component:o,disabled:s,error:c,fullWidth:u,hiddenLabel:d,margin:f,required:p,size:m,variant:h},v=Nie(_),[y,b]=C.useState(()=>{let e=!1;return r&&C.Children.forEach(r,t=>{if(!Qm(t,[`Input`,`Select`]))return;let n=Qm(t,[`Select`])?t.props.input:t;n&&jie(n.props)&&(e=!0)}),e}),[x,S]=C.useState(()=>{let e=!1;return r&&C.Children.forEach(r,t=>{Qm(t,[`Input`,`Select`])&&(kv(t.props,!0)||kv(t.props.inputProps,!0))&&(e=!0)}),e}),[w,T]=C.useState(!1);s&&w&&T(!1);let E=l!==void 0&&!s?l:w;C.useRef(!1);let D=C.useCallback(()=>{S(!0)},[]),O=C.useCallback(()=>{S(!1)},[]),k=C.useMemo(()=>({adornedStart:y,setAdornedStart:b,color:a,disabled:s,error:c,filled:x,focused:E,fullWidth:u,hiddenLabel:d,size:m,onBlur:()=>{T(!1)},onFocus:()=>{T(!0)},onEmpty:O,onFilled:D,registerEffect:void 0,required:p,variant:h}),[y,a,s,c,x,E,u,d,void 0,O,D,p,m,h]);return(0,G.jsx)(bv.Provider,{value:k,children:(0,G.jsx)(Pie,{as:o,ownerState:_,className:K(v.root,i),ref:t,...g,children:r})})});function Fie(e){return Id(`MuiTypography`,e)}var jv=Ld(`MuiTypography`,[`root`,`h1`,`h2`,`h3`,`h4`,`h5`,`h6`,`subtitle1`,`subtitle2`,`body1`,`body2`,`inherit`,`button`,`caption`,`overline`,`alignLeft`,`alignRight`,`alignCenter`,`alignJustify`,`noWrap`,`gutterBottom`,`paragraph`]),Iie={primary:!0,secondary:!0,error:!0,info:!0,success:!0,warning:!0,textPrimary:!0,textSecondary:!0,textDisabled:!0},Lie=Pee(),Rie=e=>{let{align:t,gutterBottom:n,noWrap:r,paragraph:i,variant:a,classes:o}=e;return dp({root:[`root`,a,e.align!==`inherit`&&`align${Y(t)}`,n&&`gutterBottom`,r&&`noWrap`,i&&`paragraph`]},Fie,o)},zie=J(`span`,{name:`MuiTypography`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.variant&&t[n.variant],n.align!==`inherit`&&t[`align${Y(n.align)}`],n.noWrap&&t.noWrap,n.gutterBottom&&t.gutterBottom,n.paragraph&&t.paragraph]}})(Im(({theme:e})=>({margin:0,variants:[{props:{variant:`inherit`},style:{font:`inherit`,lineHeight:`inherit`,letterSpacing:`inherit`}},...Object.entries(e.typography).filter(([e,t])=>e!==`inherit`&&t&&typeof t==`object`).map(([e,t])=>({props:{variant:e},style:t})),...Object.entries(e.palette).filter(Gm()).map(([t])=>({props:{color:t},style:{color:(e.vars||e).palette[t].main}})),...Object.entries(e.palette?.text||{}).filter(([,e])=>typeof e==`string`).map(([t])=>({props:{color:`text${Y(t)}`},style:{color:(e.vars||e).palette.text[t]}})),{props:({ownerState:e})=>e.align!==`inherit`,style:{textAlign:`var(--Typography-textAlign)`}},{props:({ownerState:e})=>e.noWrap,style:{overflow:`hidden`,textOverflow:`ellipsis`,whiteSpace:`nowrap`}},{props:({ownerState:e})=>e.gutterBottom,style:{marginBottom:`0.35em`}},{props:({ownerState:e})=>e.paragraph,style:{marginBottom:16}}]}))),Mv={h1:`h1`,h2:`h2`,h3:`h3`,h4:`h4`,h5:`h5`,h6:`h6`,subtitle1:`h6`,subtitle2:`h6`,body1:`p`,body2:`p`,inherit:`p`},Q=C.forwardRef(function(e,t){let{color:n,...r}=Am({props:e,name:`MuiTypography`}),i=!Iie[n],a=Lie({...r,...i&&{color:n}}),{align:o=`inherit`,className:s,component:c,gutterBottom:l=!1,noWrap:u=!1,paragraph:d=!1,variant:f=`body1`,variantMapping:p=Mv,...m}=a,h={...a,align:o,color:n,className:s,component:c,gutterBottom:l,noWrap:u,paragraph:d,variant:f,variantMapping:p};return(0,G.jsx)(zie,{as:c||(d?`p`:p[f]||Mv[f])||`span`,ref:t,className:K(Rie(h).root,s),...m,ownerState:h,style:{...o!==`inherit`&&{"--Typography-textAlign":o},...m.style}})});function Bie(e){return Id(`MuiFormControlLabel`,e)}var Nv=Ld(`MuiFormControlLabel`,[`root`,`labelPlacementStart`,`labelPlacementTop`,`labelPlacementBottom`,`disabled`,`label`,`error`,`required`,`asterisk`]);function Pv({props:e,states:t,muiFormControl:n}){return t.reduce((t,r)=>(t[r]=e[r],n&&e[r]===void 0&&(t[r]=n[r]),t),{})}var Vie=e=>{let{classes:t,disabled:n,labelPlacement:r,error:i,required:a}=e;return dp({root:[`root`,n&&`disabled`,`labelPlacement${Y(r)}`,i&&`error`,a&&`required`],label:[`label`,n&&`disabled`],asterisk:[`asterisk`,i&&`error`]},Bie,t)},Hie=J(`label`,{name:`MuiFormControlLabel`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[{[`& .${Nv.label}`]:t.label},t.root,t[`labelPlacement${Y(n.labelPlacement)}`]]}})(Im(({theme:e})=>({display:`inline-flex`,alignItems:`center`,cursor:`pointer`,verticalAlign:`middle`,WebkitTapHighlightColor:`transparent`,marginLeft:-11,marginRight:16,[`&.${Nv.disabled}`]:{cursor:`default`},[`& .${Nv.label}`]:{[`&.${Nv.disabled}`]:{color:(e.vars||e).palette.text.disabled}},variants:[{props:{labelPlacement:`start`},style:{flexDirection:`row-reverse`,marginRight:-11}},{props:{labelPlacement:`top`},style:{flexDirection:`column-reverse`}},{props:{labelPlacement:`bottom`},style:{flexDirection:`column`}},{props:({labelPlacement:e})=>e===`start`||e===`top`||e===`bottom`,style:{marginLeft:16}}]}))),Uie=J(`span`,{name:`MuiFormControlLabel`,slot:`Asterisk`})(Im(({theme:e})=>({[`&.${Nv.error}`]:{color:(e.vars||e).palette.error.main}}))),Fv=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiFormControlLabel`}),{checked:r,className:i,componentsProps:a={},control:o,disabled:s,disableTypography:c,inputRef:l,label:u,labelPlacement:d=`end`,name:f,onChange:p,required:m,slots:h={},slotProps:g={},value:_,...v}=n,y=xv(),b=s??o.props.disabled??y?.disabled,x=m??o.props.required,S={disabled:b,required:x};[`checked`,`name`,`onChange`,`value`,`inputRef`].forEach(e=>{o.props[e]===void 0&&n[e]!==void 0&&(S[e]=n[e])});let w=Pv({props:n,muiFormControl:y,states:[`error`]}),T={...n,disabled:b,labelPlacement:d,required:x,error:w.error},E=Vie(T),[D,O]=Wm(`typography`,{elementType:Q,externalForwardedProps:{slots:h,slotProps:{...a,...g}},ownerState:T}),k=u;return k!=null&&k.type!==Q&&!c&&(k=(0,G.jsx)(D,{component:`span`,...O,className:K(E.label,O?.className),children:k})),(0,G.jsxs)(Hie,{className:K(E.root,i),ownerState:T,ref:t,...v,children:[C.cloneElement(o,S),x?(0,G.jsxs)(`div`,{children:[k,(0,G.jsxs)(Uie,{ownerState:T,"aria-hidden":!0,className:E.asterisk,children:[` `,`*`]})]}):k]})}),Iv=Rp({createStyledComponent:J(`div`,{name:`MuiGrid`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,n.container&&t.container]}}),componentName:`MuiGrid`,useThemeProps:e=>Am({props:e,name:`MuiGrid`}),useTheme:Tm});function Wie(e){return Id(`MuiLinearProgress`,e)}Ld(`MuiLinearProgress`,[`root`,`colorPrimary`,`colorSecondary`,`determinate`,`indeterminate`,`buffer`,`query`,`dashed`,`dashedColorPrimary`,`dashedColorSecondary`,`bar`,`bar1`,`bar2`,`barColorPrimary`,`barColorSecondary`,`bar1Indeterminate`,`bar1Determinate`,`bar1Buffer`,`bar2Indeterminate`,`bar2Buffer`]);var Lv=4,Rv=ed`
149
149
  0% {
150
150
  left: -35%;
151
151
  right: 100%;
@@ -466,4 +466,4 @@ $&`).replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g,`$1$2`).replace(/\
466
466
  To pick up a draggable item, press the space bar.
467
467
  While dragging, use the arrow keys to move the item.
468
468
  Press space again to drop the item in its new position, or press escape to cancel.
469
- `},Q0e={onDragStart(e){let{active:t}=e;return`Picked up draggable item `+t.id+`.`},onDragOver(e){let{active:t,over:n}=e;return n?`Draggable item `+t.id+` was moved over droppable area `+n.id+`.`:`Draggable item `+t.id+` is no longer over a droppable area.`},onDragEnd(e){let{active:t,over:n}=e;return n?`Draggable item `+t.id+` was dropped over droppable area `+n.id:`Draggable item `+t.id+` was dropped.`},onDragCancel(e){let{active:t}=e;return`Dragging was cancelled. Draggable item `+t.id+` was dropped.`}};function $0e(e){let{announcements:t=Q0e,container:n,hiddenTextDescribedById:r,screenReaderInstructions:i=Z0e}=e,{announce:a,announcement:o}=q0e(),s=f9(`DndLiveRegion`),[c,l]=(0,C.useState)(!1);if((0,C.useEffect)(()=>{l(!0)},[]),Y0e((0,C.useMemo)(()=>({onDragStart(e){let{active:n}=e;a(t.onDragStart({active:n}))},onDragMove(e){let{active:n,over:r}=e;t.onDragMove&&a(t.onDragMove({active:n,over:r}))},onDragOver(e){let{active:n,over:r}=e;a(t.onDragOver({active:n,over:r}))},onDragEnd(e){let{active:n,over:r}=e;a(t.onDragEnd({active:n,over:r}))},onDragCancel(e){let{active:n,over:r}=e;a(t.onDragCancel({active:n,over:r}))}}),[a,t])),!c)return null;let u=C.createElement(C.Fragment,null,C.createElement(G0e,{id:r,value:i.draggable}),C.createElement(K0e,{id:s,announcement:o}));return n?(0,ya.createPortal)(u,n):u}var v9;(function(e){e.DragStart=`dragStart`,e.DragMove=`dragMove`,e.DragEnd=`dragEnd`,e.DragCancel=`dragCancel`,e.DragOver=`dragOver`,e.RegisterDroppable=`registerDroppable`,e.SetDroppableDisabled=`setDroppableDisabled`,e.UnregisterDroppable=`unregisterDroppable`})(v9||={});function y9(){}function e2e(e,t){return(0,C.useMemo)(()=>({sensor:e,options:t??{}}),[e,t])}function t2e(){var e=[...arguments];return(0,C.useMemo)(()=>[...e].filter(e=>e!=null),[...e])}var b9=Object.freeze({x:0,y:0});function n2e(e,t){return Math.sqrt((e.x-t.x)**2+(e.y-t.y)**2)}function r2e(e,t){let{data:{value:n}}=e,{data:{value:r}}=t;return n-r}function i2e(e,t){let{data:{value:n}}=e,{data:{value:r}}=t;return r-n}function a2e(e){let{left:t,top:n,height:r,width:i}=e;return[{x:t,y:n},{x:t+i,y:n},{x:t,y:n+r},{x:t+i,y:n+r}]}function o2e(e,t){if(!e||e.length===0)return null;let[n]=e;return t?n[t]:n}function s2e(e,t,n){return t===void 0&&(t=e.left),n===void 0&&(n=e.top),{x:t+e.width*.5,y:n+e.height*.5}}var c2e=e=>{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e,i=s2e(t,t.left,t.top),a=[];for(let e of r){let{id:t}=e,r=n.get(t);if(r){let n=n2e(s2e(r),i);a.push({id:t,data:{droppableContainer:e,value:n}})}}return a.sort(r2e)},l2e=e=>{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e,i=a2e(t),a=[];for(let e of r){let{id:t}=e,r=n.get(t);if(r){let n=a2e(r),o=i.reduce((e,t,r)=>e+n2e(n[r],t),0),s=Number((o/4).toFixed(4));a.push({id:t,data:{droppableContainer:e,value:s}})}}return a.sort(r2e)};function u2e(e,t){let n=Math.max(t.top,e.top),r=Math.max(t.left,e.left),i=Math.min(t.left+t.width,e.left+e.width),a=Math.min(t.top+t.height,e.top+e.height),o=i-r,s=a-n;if(r<i&&n<a){let n=t.width*t.height,r=e.width*e.height,i=o*s,a=i/(n+r-i);return Number(a.toFixed(4))}return 0}var d2e=e=>{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e,i=[];for(let e of r){let{id:r}=e,a=n.get(r);if(a){let n=u2e(a,t);n>0&&i.push({id:r,data:{droppableContainer:e,value:n}})}}return i.sort(i2e)};function f2e(e,t,n){return{...e,scaleX:t&&n?t.width/n.width:1,scaleY:t&&n?t.height/n.height:1}}function p2e(e,t){return e&&t?{x:e.left-t.left,y:e.top-t.top}:b9}function m2e(e){return function(t){return[...arguments].slice(1).reduce((t,n)=>({...t,top:t.top+e*n.y,bottom:t.bottom+e*n.y,left:t.left+e*n.x,right:t.right+e*n.x}),{...t})}}var h2e=m2e(1);function g2e(e){if(e.startsWith(`matrix3d(`)){let t=e.slice(9,-1).split(/, /);return{x:+t[12],y:+t[13],scaleX:+t[0],scaleY:+t[5]}}else if(e.startsWith(`matrix(`)){let t=e.slice(7,-1).split(/, /);return{x:+t[4],y:+t[5],scaleX:+t[0],scaleY:+t[3]}}return null}function _2e(e,t,n){let r=g2e(t);if(!r)return e;let{scaleX:i,scaleY:a,x:o,y:s}=r,c=e.left-o-(1-i)*parseFloat(n),l=e.top-s-(1-a)*parseFloat(n.slice(n.indexOf(` `)+1)),u=i?e.width/i:e.width,d=a?e.height/a:e.height;return{width:u,height:d,top:l,right:c+u,bottom:l+d,left:c}}var v2e={ignoreTransform:!1};function x9(e,t){t===void 0&&(t=v2e);let n=e.getBoundingClientRect();if(t.ignoreTransform){let{transform:t,transformOrigin:r}=t9(e).getComputedStyle(e);t&&(n=_2e(n,t,r))}let{top:r,left:i,width:a,height:o,bottom:s,right:c}=n;return{top:r,left:i,width:a,height:o,bottom:s,right:c}}function y2e(e){return x9(e,{ignoreTransform:!0})}function b2e(e){let t=e.innerWidth,n=e.innerHeight;return{top:0,left:0,right:t,bottom:n,width:t,height:n}}function x2e(e,t){return t===void 0&&(t=t9(e).getComputedStyle(e)),t.position===`fixed`}function S2e(e,t){t===void 0&&(t=t9(e).getComputedStyle(e));let n=/(auto|scroll|overlay)/;return[`overflow`,`overflowX`,`overflowY`].some(e=>{let r=t[e];return typeof r==`string`?n.test(r):!1})}function S9(e,t){let n=[];function r(i){if(t!=null&&n.length>=t||!i)return n;if(n9(i)&&i.scrollingElement!=null&&!n.includes(i.scrollingElement))return n.push(i.scrollingElement),n;if(!r9(i)||L0e(i)||n.includes(i))return n;let a=t9(e).getComputedStyle(i);return i!==e&&S2e(i,a)&&n.push(i),x2e(i,a)?n:r(i.parentNode)}return e?r(e):n}function C2e(e){let[t]=S9(e,1);return t??null}function C9(e){return!Q7||!e?null:$7(e)?e:e9(e)?n9(e)||e===i9(e).scrollingElement?window:r9(e)?e:null:null}function w2e(e){return $7(e)?e.scrollX:e.scrollLeft}function T2e(e){return $7(e)?e.scrollY:e.scrollTop}function w9(e){return{x:w2e(e),y:T2e(e)}}var T9;(function(e){e[e.Forward=1]=`Forward`,e[e.Backward=-1]=`Backward`})(T9||={});function E2e(e){return!Q7||!e?!1:e===document.scrollingElement}function D2e(e){let t={x:0,y:0},n=E2e(e)?{height:window.innerHeight,width:window.innerWidth}:{height:e.clientHeight,width:e.clientWidth},r={x:e.scrollWidth-n.width,y:e.scrollHeight-n.height};return{isTop:e.scrollTop<=t.y,isLeft:e.scrollLeft<=t.x,isBottom:e.scrollTop>=r.y,isRight:e.scrollLeft>=r.x,maxScroll:r,minScroll:t}}var O2e={x:.2,y:.2};function k2e(e,t,n,r,i){let{top:a,left:o,right:s,bottom:c}=n;r===void 0&&(r=10),i===void 0&&(i=O2e);let{isTop:l,isBottom:u,isLeft:d,isRight:f}=D2e(e),p={x:0,y:0},m={x:0,y:0},h={height:t.height*i.y,width:t.width*i.x};return!l&&a<=t.top+h.height?(p.y=T9.Backward,m.y=r*Math.abs((t.top+h.height-a)/h.height)):!u&&c>=t.bottom-h.height&&(p.y=T9.Forward,m.y=r*Math.abs((t.bottom-h.height-c)/h.height)),!f&&s>=t.right-h.width?(p.x=T9.Forward,m.x=r*Math.abs((t.right-h.width-s)/h.width)):!d&&o<=t.left+h.width&&(p.x=T9.Backward,m.x=r*Math.abs((t.left+h.width-o)/h.width)),{direction:p,speed:m}}function A2e(e){if(e===document.scrollingElement){let{innerWidth:e,innerHeight:t}=window;return{top:0,left:0,right:e,bottom:t,width:e,height:t}}let{top:t,left:n,right:r,bottom:i}=e.getBoundingClientRect();return{top:t,left:n,right:r,bottom:i,width:e.clientWidth,height:e.clientHeight}}function j2e(e){return e.reduce((e,t)=>p9(e,w9(t)),b9)}function M2e(e){return e.reduce((e,t)=>e+w2e(t),0)}function N2e(e){return e.reduce((e,t)=>e+T2e(t),0)}function P2e(e,t){if(t===void 0&&(t=x9),!e)return;let{top:n,left:r,bottom:i,right:a}=t(e);C2e(e)&&(i<=0||a<=0||n>=window.innerHeight||r>=window.innerWidth)&&e.scrollIntoView({block:`center`,inline:`center`})}var F2e=[[`x`,[`left`,`right`],M2e],[`y`,[`top`,`bottom`],N2e]],E9=class{constructor(e,t){this.rect=void 0,this.width=void 0,this.height=void 0,this.top=void 0,this.bottom=void 0,this.right=void 0,this.left=void 0;let n=S9(t),r=j2e(n);this.rect={...e},this.width=e.width,this.height=e.height;for(let[e,t,i]of F2e)for(let a of t)Object.defineProperty(this,a,{get:()=>{let t=i(n),o=r[e]-t;return this.rect[a]+o},enumerable:!0});Object.defineProperty(this,`rect`,{enumerable:!1})}},D9=class{constructor(e){this.target=void 0,this.listeners=[],this.removeAll=()=>{this.listeners.forEach(e=>this.target?.removeEventListener(...e))},this.target=e}add(e,t,n){var r;(r=this.target)==null||r.addEventListener(e,t,n),this.listeners.push([e,t,n])}};function I2e(e){let{EventTarget:t}=t9(e);return e instanceof t?e:i9(e)}function O9(e,t){let n=Math.abs(e.x),r=Math.abs(e.y);return typeof t==`number`?Math.sqrt(n**2+r**2)>t:`x`in t&&`y`in t?n>t.x&&r>t.y:`x`in t?n>t.x:`y`in t?r>t.y:!1}var k9;(function(e){e.Click=`click`,e.DragStart=`dragstart`,e.Keydown=`keydown`,e.ContextMenu=`contextmenu`,e.Resize=`resize`,e.SelectionChange=`selectionchange`,e.VisibilityChange=`visibilitychange`})(k9||={});function L2e(e){e.preventDefault()}function R2e(e){e.stopPropagation()}var A9;(function(e){e.Space=`Space`,e.Down=`ArrowDown`,e.Right=`ArrowRight`,e.Left=`ArrowLeft`,e.Up=`ArrowUp`,e.Esc=`Escape`,e.Enter=`Enter`,e.Tab=`Tab`})(A9||={});var z2e={start:[A9.Space,A9.Enter],cancel:[A9.Esc],end:[A9.Space,A9.Enter,A9.Tab]},B2e=(e,t)=>{let{currentCoordinates:n}=t;switch(e.code){case A9.Right:return{...n,x:n.x+25};case A9.Left:return{...n,x:n.x-25};case A9.Down:return{...n,y:n.y+25};case A9.Up:return{...n,y:n.y-25}}},j9=class{constructor(e){this.props=void 0,this.autoScrollEnabled=!1,this.referenceCoordinates=void 0,this.listeners=void 0,this.windowListeners=void 0,this.props=e;let{event:{target:t}}=e;this.props=e,this.listeners=new D9(i9(t)),this.windowListeners=new D9(t9(t)),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancel=this.handleCancel.bind(this),this.attach()}attach(){this.handleStart(),this.windowListeners.add(k9.Resize,this.handleCancel),this.windowListeners.add(k9.VisibilityChange,this.handleCancel),setTimeout(()=>this.listeners.add(k9.Keydown,this.handleKeyDown))}handleStart(){let{activeNode:e,onStart:t}=this.props,n=e.node.current;n&&P2e(n),t(b9)}handleKeyDown(e){if(h9(e)){let{active:t,context:n,options:r}=this.props,{keyboardCodes:i=z2e,coordinateGetter:a=B2e,scrollBehavior:o=`smooth`}=r,{code:s}=e;if(i.end.includes(s)){this.handleEnd(e);return}if(i.cancel.includes(s)){this.handleCancel(e);return}let{collisionRect:c}=n.current,l=c?{x:c.left,y:c.top}:b9;this.referenceCoordinates||=l;let u=a(e,{active:t,context:n.current,currentCoordinates:l});if(u){let t=m9(u,l),r={x:0,y:0},{scrollableAncestors:i}=n.current;for(let n of i){let i=e.code,{isTop:a,isRight:s,isLeft:c,isBottom:l,maxScroll:d,minScroll:f}=D2e(n),p=A2e(n),m={x:Math.min(i===A9.Right?p.right-p.width/2:p.right,Math.max(i===A9.Right?p.left:p.left+p.width/2,u.x)),y:Math.min(i===A9.Down?p.bottom-p.height/2:p.bottom,Math.max(i===A9.Down?p.top:p.top+p.height/2,u.y))},h=i===A9.Right&&!s||i===A9.Left&&!c,g=i===A9.Down&&!l||i===A9.Up&&!a;if(h&&m.x!==u.x){let e=n.scrollLeft+t.x,a=i===A9.Right&&e<=d.x||i===A9.Left&&e>=f.x;if(a&&!t.y){n.scrollTo({left:e,behavior:o});return}a?r.x=n.scrollLeft-e:r.x=i===A9.Right?n.scrollLeft-d.x:n.scrollLeft-f.x,r.x&&n.scrollBy({left:-r.x,behavior:o});break}else if(g&&m.y!==u.y){let e=n.scrollTop+t.y,a=i===A9.Down&&e<=d.y||i===A9.Up&&e>=f.y;if(a&&!t.x){n.scrollTo({top:e,behavior:o});return}a?r.y=n.scrollTop-e:r.y=i===A9.Down?n.scrollTop-d.y:n.scrollTop-f.y,r.y&&n.scrollBy({top:-r.y,behavior:o});break}}this.handleMove(e,p9(m9(u,this.referenceCoordinates),r))}}}handleMove(e,t){let{onMove:n}=this.props;e.preventDefault(),n(t)}handleEnd(e){let{onEnd:t}=this.props;e.preventDefault(),this.detach(),t()}handleCancel(e){let{onCancel:t}=this.props;e.preventDefault(),this.detach(),t()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll()}};j9.activators=[{eventName:`onKeyDown`,handler:(e,t,n)=>{let{keyboardCodes:r=z2e,onActivation:i}=t,{active:a}=n,{code:o}=e.nativeEvent;if(r.start.includes(o)){let t=a.activatorNode.current;return t&&e.target!==t?!1:(e.preventDefault(),i?.({event:e.nativeEvent}),!0)}return!1}}];function V2e(e){return!!(e&&`distance`in e)}function H2e(e){return!!(e&&`delay`in e)}var M9=class{constructor(e,t,n){n===void 0&&(n=I2e(e.event.target)),this.props=void 0,this.events=void 0,this.autoScrollEnabled=!0,this.document=void 0,this.activated=!1,this.initialCoordinates=void 0,this.timeoutId=null,this.listeners=void 0,this.documentListeners=void 0,this.windowListeners=void 0,this.props=e,this.events=t;let{event:r}=e,{target:i}=r;this.props=e,this.events=t,this.document=i9(i),this.documentListeners=new D9(this.document),this.listeners=new D9(n),this.windowListeners=new D9(t9(i)),this.initialCoordinates=g9(r)??b9,this.handleStart=this.handleStart.bind(this),this.handleMove=this.handleMove.bind(this),this.handleEnd=this.handleEnd.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleKeydown=this.handleKeydown.bind(this),this.removeTextSelection=this.removeTextSelection.bind(this),this.attach()}attach(){let{events:e,props:{options:{activationConstraint:t,bypassActivationConstraint:n}}}=this;if(this.listeners.add(e.move.name,this.handleMove,{passive:!1}),this.listeners.add(e.end.name,this.handleEnd),e.cancel&&this.listeners.add(e.cancel.name,this.handleCancel),this.windowListeners.add(k9.Resize,this.handleCancel),this.windowListeners.add(k9.DragStart,L2e),this.windowListeners.add(k9.VisibilityChange,this.handleCancel),this.windowListeners.add(k9.ContextMenu,L2e),this.documentListeners.add(k9.Keydown,this.handleKeydown),t){if(n!=null&&n({event:this.props.event,activeNode:this.props.activeNode,options:this.props.options}))return this.handleStart();if(H2e(t)){this.timeoutId=setTimeout(this.handleStart,t.delay),this.handlePending(t);return}if(V2e(t)){this.handlePending(t);return}}this.handleStart()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll(),setTimeout(this.documentListeners.removeAll,50),this.timeoutId!==null&&(clearTimeout(this.timeoutId),this.timeoutId=null)}handlePending(e,t){let{active:n,onPending:r}=this.props;r(n,e,this.initialCoordinates,t)}handleStart(){let{initialCoordinates:e}=this,{onStart:t}=this.props;e&&(this.activated=!0,this.documentListeners.add(k9.Click,R2e,{capture:!0}),this.removeTextSelection(),this.documentListeners.add(k9.SelectionChange,this.removeTextSelection),t(e))}handleMove(e){let{activated:t,initialCoordinates:n,props:r}=this,{onMove:i,options:{activationConstraint:a}}=r;if(!n)return;let o=g9(e)??b9,s=m9(n,o);if(!t&&a){if(V2e(a)){if(a.tolerance!=null&&O9(s,a.tolerance))return this.handleCancel();if(O9(s,a.distance))return this.handleStart()}if(H2e(a)&&O9(s,a.tolerance))return this.handleCancel();this.handlePending(a,s);return}e.cancelable&&e.preventDefault(),i(o)}handleEnd(){let{onAbort:e,onEnd:t}=this.props;this.detach(),this.activated||e(this.props.active),t()}handleCancel(){let{onAbort:e,onCancel:t}=this.props;this.detach(),this.activated||e(this.props.active),t()}handleKeydown(e){e.code===A9.Esc&&this.handleCancel()}removeTextSelection(){var e;(e=this.document.getSelection())==null||e.removeAllRanges()}},U2e={cancel:{name:`pointercancel`},move:{name:`pointermove`},end:{name:`pointerup`}},N9=class extends M9{constructor(e){let{event:t}=e,n=i9(t.target);super(e,U2e,n)}};N9.activators=[{eventName:`onPointerDown`,handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;return!n.isPrimary||n.button!==0?!1:(r?.({event:n}),!0)}}];var W2e={move:{name:`mousemove`},end:{name:`mouseup`}},G2e;(function(e){e[e.RightClick=2]=`RightClick`})(G2e||={});var K2e=class extends M9{constructor(e){super(e,W2e,i9(e.event.target))}};K2e.activators=[{eventName:`onMouseDown`,handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;return n.button===G2e.RightClick?!1:(r?.({event:n}),!0)}}];var P9={cancel:{name:`touchcancel`},move:{name:`touchmove`},end:{name:`touchend`}},q2e=class extends M9{constructor(e){super(e,P9)}static setup(){return window.addEventListener(P9.move.name,e,{capture:!1,passive:!1}),function(){window.removeEventListener(P9.move.name,e)};function e(){}}};q2e.activators=[{eventName:`onTouchStart`,handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t,{touches:i}=n;return i.length>1?!1:(r?.({event:n}),!0)}}];var F9;(function(e){e[e.Pointer=0]=`Pointer`,e[e.DraggableRect=1]=`DraggableRect`})(F9||={});var I9;(function(e){e[e.TreeOrder=0]=`TreeOrder`,e[e.ReversedTreeOrder=1]=`ReversedTreeOrder`})(I9||={});function J2e(e){let{acceleration:t,activator:n=F9.Pointer,canScroll:r,draggingRect:i,enabled:a,interval:o=5,order:s=I9.TreeOrder,pointerCoordinates:c,scrollableAncestors:l,scrollableAncestorRects:u,delta:d,threshold:f}=e,p=X2e({delta:d,disabled:!a}),[m,h]=R0e(),g=(0,C.useRef)({x:0,y:0}),_=(0,C.useRef)({x:0,y:0}),v=(0,C.useMemo)(()=>{switch(n){case F9.Pointer:return c?{top:c.y,bottom:c.y,left:c.x,right:c.x}:null;case F9.DraggableRect:return i}},[n,i,c]),y=(0,C.useRef)(null),b=(0,C.useCallback)(()=>{let e=y.current;if(!e)return;let t=g.current.x*_.current.x,n=g.current.y*_.current.y;e.scrollBy(t,n)},[]),x=(0,C.useMemo)(()=>s===I9.TreeOrder?[...l].reverse():l,[s,l]);(0,C.useEffect)(()=>{if(!a||!l.length||!v){h();return}for(let e of x){if(r?.(e)===!1)continue;let n=u[l.indexOf(e)];if(!n)continue;let{direction:i,speed:a}=k2e(e,n,v,t,f);for(let e of[`x`,`y`])p[e][i[e]]||(a[e]=0,i[e]=0);if(a.x>0||a.y>0){h(),y.current=e,m(b,o),g.current=a,_.current=i;return}}g.current={x:0,y:0},_.current={x:0,y:0},h()},[t,b,r,h,a,o,JSON.stringify(v),JSON.stringify(p),m,l,x,u,JSON.stringify(f)])}var Y2e={x:{[T9.Backward]:!1,[T9.Forward]:!1},y:{[T9.Backward]:!1,[T9.Forward]:!1}};function X2e(e){let{delta:t,disabled:n}=e,r=u9(t);return c9(e=>{if(n||!r||!e)return Y2e;let i={x:Math.sign(t.x-r.x),y:Math.sign(t.y-r.y)};return{x:{[T9.Backward]:e.x[T9.Backward]||i.x===-1,[T9.Forward]:e.x[T9.Forward]||i.x===1},y:{[T9.Backward]:e.y[T9.Backward]||i.y===-1,[T9.Forward]:e.y[T9.Forward]||i.y===1}}},[n,t,r])}function Z2e(e,t){let n=t==null?void 0:e.get(t),r=n?n.node.current:null;return c9(e=>t==null?null:r??e??null,[r,t])}function Q2e(e,t){return(0,C.useMemo)(()=>e.reduce((e,n)=>{let{sensor:r}=n,i=r.activators.map(e=>({eventName:e.eventName,handler:t(e.handler,n)}));return[...e,...i]},[]),[e,t])}var L9;(function(e){e[e.Always=0]=`Always`,e[e.BeforeDragging=1]=`BeforeDragging`,e[e.WhileDragging=2]=`WhileDragging`})(L9||={});var $2e;(function(e){e.Optimized=`optimized`})($2e||={});var e4e=new Map;function t4e(e,t){let{dragging:n,dependencies:r,config:i}=t,[a,o]=(0,C.useState)(null),{frequency:s,measure:c,strategy:l}=i,u=(0,C.useRef)(e),d=g(),f=s9(d),p=(0,C.useCallback)(function(e){e===void 0&&(e=[]),!f.current&&o(t=>t===null?e:t.concat(e.filter(e=>!t.includes(e))))},[f]),m=(0,C.useRef)(null),h=c9(t=>{if(d&&!n)return e4e;if(!t||t===e4e||u.current!==e||a!=null){let t=new Map;for(let n of e){if(!n)continue;if(a&&a.length>0&&!a.includes(n.id)&&n.rect.current){t.set(n.id,n.rect.current);continue}let e=n.node.current,r=e?new E9(c(e),e):null;n.rect.current=r,r&&t.set(n.id,r)}return t}return t},[e,a,n,d,c]);return(0,C.useEffect)(()=>{u.current=e},[e]),(0,C.useEffect)(()=>{d||p()},[n,d]),(0,C.useEffect)(()=>{a&&a.length>0&&o(null)},[JSON.stringify(a)]),(0,C.useEffect)(()=>{d||typeof s!=`number`||m.current!==null||(m.current=setTimeout(()=>{p(),m.current=null},s))},[s,d,p,...r]),{droppableRects:h,measureDroppableContainers:p,measuringScheduled:a!=null};function g(){switch(l){case L9.Always:return!1;case L9.BeforeDragging:return n;default:return!n}}}function n4e(e,t){return c9(n=>e?n||(typeof t==`function`?t(e):e):null,[t,e])}function r4e(e,t){return n4e(e,t)}function i4e(e){let{callback:t,disabled:n}=e,r=o9(t),i=(0,C.useMemo)(()=>{if(n||typeof window>`u`||window.MutationObserver===void 0)return;let{MutationObserver:e}=window;return new e(r)},[r,n]);return(0,C.useEffect)(()=>()=>i?.disconnect(),[i]),i}function R9(e){let{callback:t,disabled:n}=e,r=o9(t),i=(0,C.useMemo)(()=>{if(n||typeof window>`u`||window.ResizeObserver===void 0)return;let{ResizeObserver:e}=window;return new e(r)},[n]);return(0,C.useEffect)(()=>()=>i?.disconnect(),[i]),i}function a4e(e){return new E9(x9(e),e)}function o4e(e,t,n){t===void 0&&(t=a4e);let[r,i]=(0,C.useState)(null);function a(){i(r=>{if(!e)return null;if(e.isConnected===!1)return r??n??null;let i=t(e);return JSON.stringify(r)===JSON.stringify(i)?r:i})}let o=i4e({callback(t){if(e)for(let n of t){let{type:t,target:r}=n;if(t===`childList`&&r instanceof HTMLElement&&r.contains(e)){a();break}}}}),s=R9({callback:a});return a9(()=>{a(),e?(s?.observe(e),o?.observe(document.body,{childList:!0,subtree:!0})):(s?.disconnect(),o?.disconnect())},[e]),r}function s4e(e){return p2e(e,n4e(e))}var c4e=[];function l4e(e){let t=(0,C.useRef)(e),n=c9(n=>e?n&&n!==c4e&&e&&t.current&&e.parentNode===t.current.parentNode?n:S9(e):c4e,[e]);return(0,C.useEffect)(()=>{t.current=e},[e]),n}function u4e(e){let[t,n]=(0,C.useState)(null),r=(0,C.useRef)(e),i=(0,C.useCallback)(e=>{let t=C9(e.target);t&&n(e=>e?(e.set(t,w9(t)),new Map(e)):null)},[]);return(0,C.useEffect)(()=>{let t=r.current;if(e!==t){a(t);let o=e.map(e=>{let t=C9(e);return t?(t.addEventListener(`scroll`,i,{passive:!0}),[t,w9(t)]):null}).filter(e=>e!=null);n(o.length?new Map(o):null),r.current=e}return()=>{a(e),a(t)};function a(e){e.forEach(e=>{C9(e)?.removeEventListener(`scroll`,i)})}},[i,e]),(0,C.useMemo)(()=>e.length?t?Array.from(t.values()).reduce((e,t)=>p9(e,t),b9):j2e(e):b9,[e,t])}function d4e(e,t){t===void 0&&(t=[]);let n=(0,C.useRef)(null);return(0,C.useEffect)(()=>{n.current=null},t),(0,C.useEffect)(()=>{let t=e!==b9;t&&!n.current&&(n.current=e),!t&&n.current&&(n.current=null)},[e]),n.current?m9(e,n.current):b9}function f4e(e){(0,C.useEffect)(()=>{if(!Q7)return;let t=e.map(e=>{let{sensor:t}=e;return t.setup==null?void 0:t.setup()});return()=>{for(let e of t)e?.()}},e.map(e=>{let{sensor:t}=e;return t}))}function p4e(e,t){return(0,C.useMemo)(()=>e.reduce((e,n)=>{let{eventName:r,handler:i}=n;return e[r]=e=>{i(e,t)},e},{}),[e,t])}function m4e(e){return(0,C.useMemo)(()=>e?b2e(e):null,[e])}var h4e=[];function g4e(e,t){t===void 0&&(t=x9);let[n]=e,r=m4e(n?t9(n):null),[i,a]=(0,C.useState)(h4e);function o(){a(()=>e.length?e.map(e=>E2e(e)?r:new E9(t(e),e)):h4e)}let s=R9({callback:o});return a9(()=>{s?.disconnect(),o(),e.forEach(e=>s?.observe(e))},[e]),i}function _4e(e){if(!e)return null;if(e.children.length>1)return e;let t=e.children[0];return r9(t)?t:e}function v4e(e){let{measure:t}=e,[n,r]=(0,C.useState)(null),i=R9({callback:(0,C.useCallback)(e=>{for(let{target:n}of e)if(r9(n)){r(e=>{let r=t(n);return e?{...e,width:r.width,height:r.height}:r});break}},[t])}),[a,o]=l9((0,C.useCallback)(e=>{let n=_4e(e);i?.disconnect(),n&&i?.observe(n),r(n?t(n):null)},[t,i]));return(0,C.useMemo)(()=>({nodeRef:a,rect:n,setRef:o}),[n,a,o])}var y4e=[{sensor:N9,options:{}},{sensor:j9,options:{}}],b4e={current:{}},z9={draggable:{measure:y2e},droppable:{measure:y2e,strategy:L9.WhileDragging,frequency:$2e.Optimized},dragOverlay:{measure:x9}},B9=class extends Map{get(e){return e==null?void 0:super.get(e)??void 0}toArray(){return Array.from(this.values())}getEnabled(){return this.toArray().filter(e=>{let{disabled:t}=e;return!t})}getNodeFor(e){return this.get(e)?.node.current??void 0}},x4e={activatorEvent:null,active:null,activeNode:null,activeNodeRect:null,collisions:null,containerNodeRect:null,draggableNodes:new Map,droppableRects:new Map,droppableContainers:new B9,over:null,dragOverlay:{nodeRef:{current:null},rect:null,setRef:y9},scrollableAncestors:[],scrollableAncestorRects:[],measuringConfiguration:z9,measureDroppableContainers:y9,windowRect:null,measuringScheduled:!1},S4e={activatorEvent:null,activators:[],active:null,activeNodeRect:null,ariaDescribedById:{draggable:``},dispatch:y9,draggableNodes:new Map,over:null,measureDroppableContainers:y9},V9=(0,C.createContext)(S4e),C4e=(0,C.createContext)(x4e);function w4e(){return{draggable:{active:null,initialCoordinates:{x:0,y:0},nodes:new Map,translate:{x:0,y:0}},droppable:{containers:new B9}}}function T4e(e,t){switch(t.type){case v9.DragStart:return{...e,draggable:{...e.draggable,initialCoordinates:t.initialCoordinates,active:t.active}};case v9.DragMove:return e.draggable.active==null?e:{...e,draggable:{...e.draggable,translate:{x:t.coordinates.x-e.draggable.initialCoordinates.x,y:t.coordinates.y-e.draggable.initialCoordinates.y}}};case v9.DragEnd:case v9.DragCancel:return{...e,draggable:{...e.draggable,active:null,initialCoordinates:{x:0,y:0},translate:{x:0,y:0}}};case v9.RegisterDroppable:{let{element:n}=t,{id:r}=n,i=new B9(e.droppable.containers);return i.set(r,n),{...e,droppable:{...e.droppable,containers:i}}}case v9.SetDroppableDisabled:{let{id:n,key:r,disabled:i}=t,a=e.droppable.containers.get(n);if(!a||r!==a.key)return e;let o=new B9(e.droppable.containers);return o.set(n,{...a,disabled:i}),{...e,droppable:{...e.droppable,containers:o}}}case v9.UnregisterDroppable:{let{id:n,key:r}=t,i=e.droppable.containers.get(n);if(!i||r!==i.key)return e;let a=new B9(e.droppable.containers);return a.delete(n),{...e,droppable:{...e.droppable,containers:a}}}default:return e}}function E4e(e){let{disabled:t}=e,{active:n,activatorEvent:r,draggableNodes:i}=(0,C.useContext)(V9),a=u9(r),o=u9(n?.id);return(0,C.useEffect)(()=>{if(!t&&!r&&a&&o!=null){if(!h9(a)||document.activeElement===a.target)return;let e=i.get(o);if(!e)return;let{activatorNode:t,node:n}=e;if(!t.current&&!n.current)return;requestAnimationFrame(()=>{for(let e of[t.current,n.current]){if(!e)continue;let t=U0e(e);if(t){t.focus();break}}})}},[r,t,i,o,a]),null}function D4e(e,t){let{transform:n,...r}=t;return e!=null&&e.length?e.reduce((e,t)=>t({transform:e,...r}),n):n}function O4e(e){return(0,C.useMemo)(()=>({draggable:{...z9.draggable,...e?.draggable},droppable:{...z9.droppable,...e?.droppable},dragOverlay:{...z9.dragOverlay,...e?.dragOverlay}}),[e?.draggable,e?.droppable,e?.dragOverlay])}function k4e(e){let{activeNode:t,measure:n,initialRect:r,config:i=!0}=e,a=(0,C.useRef)(!1),{x:o,y:s}=typeof i==`boolean`?{x:i,y:i}:i;a9(()=>{if(!o&&!s||!t){a.current=!1;return}if(a.current||!r)return;let e=t?.node.current;if(!e||e.isConnected===!1)return;let i=p2e(n(e),r);if(o||(i.x=0),s||(i.y=0),a.current=!0,Math.abs(i.x)>0||Math.abs(i.y)>0){let t=C2e(e);t&&t.scrollBy({top:i.y,left:i.x})}},[t,o,s,r,n])}var A4e=(0,C.createContext)({...b9,scaleX:1,scaleY:1}),H9;(function(e){e[e.Uninitialized=0]=`Uninitialized`,e[e.Initializing=1]=`Initializing`,e[e.Initialized=2]=`Initialized`})(H9||={});var j4e=(0,C.memo)(function(e){let{id:t,accessibility:n,autoScroll:r=!0,children:i,sensors:a=y4e,collisionDetection:o=d2e,measuring:s,modifiers:c,...l}=e,[u,d]=(0,C.useReducer)(T4e,void 0,w4e),[f,p]=X0e(),[m,h]=(0,C.useState)(H9.Uninitialized),g=m===H9.Initialized,{draggable:{active:_,nodes:v,translate:y},droppable:{containers:b}}=u,x=_==null?null:v.get(_),S=(0,C.useRef)({initial:null,translated:null}),w=(0,C.useMemo)(()=>_==null?null:{id:_,data:x?.data??b4e,rect:S},[_,x]),T=(0,C.useRef)(null),[E,D]=(0,C.useState)(null),[O,k]=(0,C.useState)(null),A=s9(l,Object.values(l)),j=f9(`DndDescribedBy`,t),M=(0,C.useMemo)(()=>b.getEnabled(),[b]),N=O4e(s),{droppableRects:P,measureDroppableContainers:F,measuringScheduled:I}=t4e(M,{dragging:g,dependencies:[y.x,y.y],config:N.droppable}),L=Z2e(v,_),R=(0,C.useMemo)(()=>O?g9(O):null,[O]),ee=Te(),z=r4e(L,N.draggable.measure);k4e({activeNode:_==null?null:v.get(_),config:ee.layoutShiftCompensation,initialRect:z,measure:N.draggable.measure});let te=o4e(L,N.draggable.measure,z),B=o4e(L?L.parentElement:null),V=(0,C.useRef)({activatorEvent:null,active:null,activeNode:L,collisionRect:null,collisions:null,droppableRects:P,draggableNodes:v,draggingNode:null,draggingNodeRect:null,droppableContainers:b,over:null,scrollableAncestors:[],scrollAdjustedTranslate:null}),ne=b.getNodeFor(V.current.over?.id),re=v4e({measure:N.dragOverlay.measure}),ie=re.nodeRef.current??L,ae=g?re.rect??te:null,oe=!!(re.nodeRef.current&&re.rect),se=s4e(oe?null:te),ce=m4e(ie?t9(ie):null),le=l4e(g?ne??L:null),ue=g4e(le),H=D4e(c,{transform:{x:y.x-se.x,y:y.y-se.y,scaleX:1,scaleY:1},activatorEvent:O,active:w,activeNodeRect:te,containerNodeRect:B,draggingNodeRect:ae,over:V.current.over,overlayNodeRect:re.rect,scrollableAncestors:le,scrollableAncestorRects:ue,windowRect:ce}),de=R?p9(R,y):null,fe=u4e(le),U=d4e(fe),pe=d4e(fe,[te]),me=p9(H,U),W=ae?h2e(ae,H):null,he=w&&W?o({active:w,collisionRect:W,droppableRects:P,droppableContainers:M,pointerCoordinates:de}):null,ge=o2e(he,`id`),[_e,ve]=(0,C.useState)(null),ye=f2e(oe?H:p9(H,pe),_e?.rect??null,te),be=(0,C.useRef)(null),xe=(0,C.useCallback)((e,t)=>{let{sensor:n,options:r}=t;if(T.current==null)return;let i=v.get(T.current);if(!i)return;let a=e.nativeEvent;be.current=new n({active:T.current,activeNode:i,event:a,options:r,context:V,onAbort(e){if(!v.get(e))return;let{onDragAbort:t}=A.current,n={id:e};t?.(n),f({type:`onDragAbort`,event:n})},onPending(e,t,n,r){if(!v.get(e))return;let{onDragPending:i}=A.current,a={id:e,constraint:t,initialCoordinates:n,offset:r};i?.(a),f({type:`onDragPending`,event:a})},onStart(e){let t=T.current;if(t==null)return;let n=v.get(t);if(!n)return;let{onDragStart:r}=A.current,i={activatorEvent:a,active:{id:t,data:n.data,rect:S}};(0,ya.unstable_batchedUpdates)(()=>{r?.(i),h(H9.Initializing),d({type:v9.DragStart,initialCoordinates:e,active:t}),f({type:`onDragStart`,event:i}),D(be.current),k(a)})},onMove(e){d({type:v9.DragMove,coordinates:e})},onEnd:o(v9.DragEnd),onCancel:o(v9.DragCancel)});function o(e){return async function(){let{active:t,collisions:n,over:r,scrollAdjustedTranslate:i}=V.current,o=null;if(t&&i){let{cancelDrop:s}=A.current;o={activatorEvent:a,active:t,collisions:n,delta:i,over:r},e===v9.DragEnd&&typeof s==`function`&&await Promise.resolve(s(o))&&(e=v9.DragCancel)}T.current=null,(0,ya.unstable_batchedUpdates)(()=>{d({type:e}),h(H9.Uninitialized),ve(null),D(null),k(null),be.current=null;let t=e===v9.DragEnd?`onDragEnd`:`onDragCancel`;if(o){let e=A.current[t];e?.(o),f({type:t,event:o})}})}}},[v]),Se=Q2e(a,(0,C.useCallback)((e,t)=>(n,r)=>{let i=n.nativeEvent,a=v.get(r);if(T.current!==null||!a||i.dndKit||i.defaultPrevented)return;let o={active:a};e(n,t.options,o)===!0&&(i.dndKit={capturedBy:t.sensor},T.current=r,xe(n,t))},[v,xe]));f4e(a),a9(()=>{te&&m===H9.Initializing&&h(H9.Initialized)},[te,m]),(0,C.useEffect)(()=>{let{onDragMove:e}=A.current,{active:t,activatorEvent:n,collisions:r,over:i}=V.current;if(!t||!n)return;let a={active:t,activatorEvent:n,collisions:r,delta:{x:me.x,y:me.y},over:i};(0,ya.unstable_batchedUpdates)(()=>{e?.(a),f({type:`onDragMove`,event:a})})},[me.x,me.y]),(0,C.useEffect)(()=>{let{active:e,activatorEvent:t,collisions:n,droppableContainers:r,scrollAdjustedTranslate:i}=V.current;if(!e||T.current==null||!t||!i)return;let{onDragOver:a}=A.current,o=r.get(ge),s=o&&o.rect.current?{id:o.id,rect:o.rect.current,data:o.data,disabled:o.disabled}:null,c={active:e,activatorEvent:t,collisions:n,delta:{x:i.x,y:i.y},over:s};(0,ya.unstable_batchedUpdates)(()=>{ve(s),a?.(c),f({type:`onDragOver`,event:c})})},[ge]),a9(()=>{V.current={activatorEvent:O,active:w,activeNode:L,collisionRect:W,collisions:he,droppableRects:P,draggableNodes:v,draggingNode:ie,draggingNodeRect:ae,droppableContainers:b,over:_e,scrollableAncestors:le,scrollAdjustedTranslate:me},S.current={initial:ae,translated:W}},[w,L,he,W,v,ie,ae,P,b,_e,le,me]),J2e({...ee,delta:y,draggingRect:W,pointerCoordinates:de,scrollableAncestors:le,scrollableAncestorRects:ue});let Ce=(0,C.useMemo)(()=>({active:w,activeNode:L,activeNodeRect:te,activatorEvent:O,collisions:he,containerNodeRect:B,dragOverlay:re,draggableNodes:v,droppableContainers:b,droppableRects:P,over:_e,measureDroppableContainers:F,scrollableAncestors:le,scrollableAncestorRects:ue,measuringConfiguration:N,measuringScheduled:I,windowRect:ce}),[w,L,te,O,he,B,re,v,b,P,_e,F,le,ue,N,I,ce]),we=(0,C.useMemo)(()=>({activatorEvent:O,activators:Se,active:w,activeNodeRect:te,ariaDescribedById:{draggable:j},dispatch:d,draggableNodes:v,over:_e,measureDroppableContainers:F}),[O,Se,w,te,d,j,v,_e,F]);return C.createElement(J0e.Provider,{value:p},C.createElement(V9.Provider,{value:we},C.createElement(C4e.Provider,{value:Ce},C.createElement(A4e.Provider,{value:ye},i)),C.createElement(E4e,{disabled:n?.restoreFocus===!1})),C.createElement($0e,{...n,hiddenTextDescribedById:j}));function Te(){let e=E?.autoScrollEnabled===!1,t=typeof r==`object`?r.enabled===!1:r===!1,n=g&&!e&&!t;return typeof r==`object`?{...r,enabled:n}:{enabled:n}}}),M4e=(0,C.createContext)(null),N4e=`button`,P4e=`Draggable`;function F4e(e){let{id:t,data:n,disabled:r=!1,attributes:i}=e,a=f9(P4e),{activators:o,activatorEvent:s,active:c,activeNodeRect:l,ariaDescribedById:u,draggableNodes:d,over:f}=(0,C.useContext)(V9),{role:p=N4e,roleDescription:m=`draggable`,tabIndex:h=0}=i??{},g=c?.id===t,_=(0,C.useContext)(g?A4e:M4e),[v,y]=l9(),[b,x]=l9(),S=p4e(o,t),w=s9(n);return a9(()=>(d.set(t,{id:t,key:a,node:v,activatorNode:b,data:w}),()=>{let e=d.get(t);e&&e.key===a&&d.delete(t)}),[d,t]),{active:c,activatorEvent:s,activeNodeRect:l,attributes:(0,C.useMemo)(()=>({role:p,tabIndex:h,"aria-disabled":r,"aria-pressed":g&&p===N4e?!0:void 0,"aria-roledescription":m,"aria-describedby":u.draggable}),[r,p,h,g,m,u.draggable]),isDragging:g,listeners:r?void 0:S,node:v,over:f,setNodeRef:y,setActivatorNodeRef:x,transform:_}}function I4e(){return(0,C.useContext)(C4e)}var L4e=`Droppable`,R4e={timeout:25};function z4e(e){let{data:t,disabled:n=!1,id:r,resizeObserverConfig:i}=e,a=f9(L4e),{active:o,dispatch:s,over:c,measureDroppableContainers:l}=(0,C.useContext)(V9),u=(0,C.useRef)({disabled:n}),d=(0,C.useRef)(!1),f=(0,C.useRef)(null),p=(0,C.useRef)(null),{disabled:m,updateMeasurementsFor:h,timeout:g}={...R4e,...i},_=s9(h??r),v=R9({callback:(0,C.useCallback)(()=>{if(!d.current){d.current=!0;return}p.current!=null&&clearTimeout(p.current),p.current=setTimeout(()=>{l(Array.isArray(_.current)?_.current:[_.current]),p.current=null},g)},[g]),disabled:m||!o}),[y,b]=l9((0,C.useCallback)((e,t)=>{v&&(t&&(v.unobserve(t),d.current=!1),e&&v.observe(e))},[v])),x=s9(t);return(0,C.useEffect)(()=>{!v||!y.current||(v.disconnect(),d.current=!1,v.observe(y.current))},[y,v]),(0,C.useEffect)(()=>(s({type:v9.RegisterDroppable,element:{id:r,key:a,disabled:n,node:y,rect:f,data:x}}),()=>s({type:v9.UnregisterDroppable,key:a,id:r})),[r]),(0,C.useEffect)(()=>{n!==u.current.disabled&&(s({type:v9.SetDroppableDisabled,id:r,key:a,disabled:n}),u.current.disabled=n)},[r,a,n,s]),{active:o,rect:f,isOver:c?.id===r,node:y,over:c,setNodeRef:b}}function U9(e,t,n){let r=e.slice();return r.splice(n<0?r.length+n:n,0,r.splice(t,1)[0]),r}function B4e(e,t){return e.reduce((e,n,r)=>{let i=t.get(n);return i&&(e[r]=i),e},Array(e.length))}function W9(e){return e!==null&&e>=0}function V4e(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}function H4e(e){return typeof e==`boolean`?{draggable:e,droppable:e}:e}var U4e=e=>{let{rects:t,activeIndex:n,overIndex:r,index:i}=e,a=U9(t,r,n),o=t[i],s=a[i];return!s||!o?null:{x:s.left-o.left,y:s.top-o.top,scaleX:s.width/o.width,scaleY:s.height/o.height}},G9={scaleX:1,scaleY:1},W4e=e=>{let{activeIndex:t,activeNodeRect:n,index:r,rects:i,overIndex:a}=e,o=i[t]??n;if(!o)return null;if(r===t){let e=i[a];return e?{x:0,y:t<a?e.top+e.height-(o.top+o.height):e.top-o.top,...G9}:null}let s=G4e(i,r,t);return r>t&&r<=a?{x:0,y:-o.height-s,...G9}:r<t&&r>=a?{x:0,y:o.height+s,...G9}:{x:0,y:0,...G9}};function G4e(e,t,n){let r=e[t],i=e[t-1],a=e[t+1];return r?n<t?i?r.top-(i.top+i.height):a?a.top-(r.top+r.height):0:a?a.top-(r.top+r.height):i?r.top-(i.top+i.height):0:0}var K4e=`Sortable`,q4e=C.createContext({activeIndex:-1,containerId:K4e,disableTransforms:!1,items:[],overIndex:-1,useDragOverlay:!1,sortedRects:[],strategy:U4e,disabled:{draggable:!1,droppable:!1}});function J4e(e){let{children:t,id:n,items:r,strategy:i=U4e,disabled:a=!1}=e,{active:o,dragOverlay:s,droppableRects:c,over:l,measureDroppableContainers:u}=I4e(),d=f9(K4e,n),f=s.rect!==null,p=(0,C.useMemo)(()=>r.map(e=>typeof e==`object`&&`id`in e?e.id:e),[r]),m=o!=null,h=o?p.indexOf(o.id):-1,g=l?p.indexOf(l.id):-1,_=(0,C.useRef)(p),v=!V4e(p,_.current),y=g!==-1&&h===-1||v,b=H4e(a);a9(()=>{v&&m&&u(p)},[v,p,m,u]),(0,C.useEffect)(()=>{_.current=p},[p]);let x=(0,C.useMemo)(()=>({activeIndex:h,containerId:d,disabled:b,disableTransforms:y,items:p,overIndex:g,useDragOverlay:f,sortedRects:B4e(p,c),strategy:i}),[h,d,b.draggable,b.droppable,y,p,g,c,f,i]);return C.createElement(q4e.Provider,{value:x},t)}var Y4e=e=>{let{id:t,items:n,activeIndex:r,overIndex:i}=e;return U9(n,r,i).indexOf(t)},X4e=e=>{let{containerId:t,isSorting:n,wasDragging:r,index:i,items:a,newIndex:o,previousItems:s,previousContainerId:c,transition:l}=e;return!l||!r||s!==a&&i===o?!1:n?!0:o!==i&&t===c},Z4e={duration:200,easing:`ease`},Q4e=`transform`,$4e=_9.Transition.toString({property:Q4e,duration:0,easing:`linear`}),e3e={roleDescription:`sortable`};function t3e(e){let{disabled:t,index:n,node:r,rect:i}=e,[a,o]=(0,C.useState)(null),s=(0,C.useRef)(n);return a9(()=>{if(!t&&n!==s.current&&r.current){let e=i.current;if(e){let t=x9(r.current,{ignoreTransform:!0}),n={x:e.left-t.left,y:e.top-t.top,scaleX:e.width/t.width,scaleY:e.height/t.height};(n.x||n.y)&&o(n)}}n!==s.current&&(s.current=n)},[t,n,r,i]),(0,C.useEffect)(()=>{a&&o(null)},[a]),a}function n3e(e){let{animateLayoutChanges:t=X4e,attributes:n,disabled:r,data:i,getNewIndex:a=Y4e,id:o,strategy:s,resizeObserverConfig:c,transition:l=Z4e}=e,{items:u,containerId:d,activeIndex:f,disabled:p,disableTransforms:m,sortedRects:h,overIndex:g,useDragOverlay:_,strategy:v}=(0,C.useContext)(q4e),y=r3e(r,p),b=u.indexOf(o),x=(0,C.useMemo)(()=>({sortable:{containerId:d,index:b,items:u},...i}),[d,i,b,u]),S=(0,C.useMemo)(()=>u.slice(u.indexOf(o)),[u,o]),{rect:w,node:T,isOver:E,setNodeRef:D}=z4e({id:o,data:x,disabled:y.droppable,resizeObserverConfig:{updateMeasurementsFor:S,...c}}),{active:O,activatorEvent:k,activeNodeRect:A,attributes:j,setNodeRef:M,listeners:N,isDragging:P,over:F,setActivatorNodeRef:I,transform:L}=F4e({id:o,data:x,attributes:{...e3e,...n},disabled:y.draggable}),R=I0e(D,M),ee=!!O,z=ee&&!m&&W9(f)&&W9(g),te=!_&&P,B=z?(te&&z?L:null)??(s??v)({rects:h,activeNodeRect:A,activeIndex:f,overIndex:g,index:b}):null,V=W9(f)&&W9(g)?a({id:o,items:u,activeIndex:f,overIndex:g}):b,ne=O?.id,re=(0,C.useRef)({activeId:ne,items:u,newIndex:V,containerId:d}),ie=u!==re.current.items,ae=t({active:O,containerId:d,isDragging:P,isSorting:ee,id:o,index:b,items:u,newIndex:re.current.newIndex,previousItems:re.current.items,previousContainerId:re.current.containerId,transition:l,wasDragging:re.current.activeId!=null}),oe=t3e({disabled:!ae,index:b,node:T,rect:w});return(0,C.useEffect)(()=>{ee&&re.current.newIndex!==V&&(re.current.newIndex=V),d!==re.current.containerId&&(re.current.containerId=d),u!==re.current.items&&(re.current.items=u)},[ee,V,d,u]),(0,C.useEffect)(()=>{if(ne===re.current.activeId)return;if(ne!=null&&re.current.activeId==null){re.current.activeId=ne;return}let e=setTimeout(()=>{re.current.activeId=ne},50);return()=>clearTimeout(e)},[ne]),{active:O,activeIndex:f,attributes:j,data:x,rect:w,index:b,newIndex:V,items:u,isOver:E,isSorting:ee,isDragging:P,listeners:N,node:T,overIndex:g,over:F,setNodeRef:R,setActivatorNodeRef:I,setDroppableNodeRef:D,setDraggableNodeRef:M,transform:oe??B,transition:se()};function se(){if(oe||ie&&re.current.newIndex===b)return $4e;if(!(te&&!h9(k)||!l)&&(ee||ae))return _9.Transition.toString({...l,property:Q4e})}}function r3e(e,t){return typeof e==`boolean`?{draggable:e,droppable:!1}:{draggable:e?.draggable??t.draggable,droppable:e?.droppable??t.droppable}}function K9(e){if(!e)return!1;let t=e.data.current;return!!(t&&`sortable`in t&&typeof t.sortable==`object`&&`containerId`in t.sortable&&`items`in t.sortable&&`index`in t.sortable)}var i3e=[A9.Down,A9.Right,A9.Up,A9.Left],a3e=(e,t)=>{let{context:{active:n,collisionRect:r,droppableRects:i,droppableContainers:a,over:o,scrollableAncestors:s}}=t;if(i3e.includes(e.code)){if(e.preventDefault(),!n||!r)return;let t=[];a.getEnabled().forEach(n=>{if(!n||n!=null&&n.disabled)return;let a=i.get(n.id);if(a)switch(e.code){case A9.Down:r.top<a.top&&t.push(n);break;case A9.Up:r.top>a.top&&t.push(n);break;case A9.Left:r.left>a.left&&t.push(n);break;case A9.Right:r.left<a.left&&t.push(n);break}});let c=l2e({active:n,collisionRect:r,droppableRects:i,droppableContainers:t,pointerCoordinates:null}),l=o2e(c,`id`);if(l===o?.id&&c.length>1&&(l=c[1].id),l!=null){let e=a.get(n.id),t=a.get(l),o=t?i.get(t.id):null,c=t?.node.current;if(c&&o&&e&&t){let n=S9(c).some((e,t)=>s[t]!==e),i=o3e(e,t),a=s3e(e,t),l=n||!i?{x:0,y:0}:{x:a?r.width-o.width:0,y:a?r.height-o.height:0},u={x:o.left,y:o.top};return l.x&&l.y?u:m9(u,l)}}}};function o3e(e,t){return!K9(e)||!K9(t)?!1:e.data.current.sortable.containerId===t.data.current.sortable.containerId}function s3e(e,t){return!K9(e)||!K9(t)||!o3e(e,t)?!1:e.data.current.sortable.index<t.data.current.sortable.index}var c3e=({bridge:e,index:t})=>{let{attributes:n,listeners:r,setNodeRef:i,transform:a,transition:o,isDragging:s}=n3e({id:e.id}),[c,l]=(0,C.useState)(!1);return(0,C.useEffect)(()=>{vE(e.id).then(l)},[e.id]),(0,G.jsx)(gv,{ref:i,style:{transform:_9.Transform.toString(a),transition:o,opacity:s?.5:1},variant:`outlined`,sx:{cursor:`grab`,"&:active":{cursor:`grabbing`},bgcolor:s?`action.selected`:`background.paper`,width:`fit-content`},children:(0,G.jsxs)(yv,{sx:{display:`flex`,alignItems:`center`,gap:1.5,py:1,"&:last-child":{pb:1}},children:[(0,G.jsx)(Z,{...n,...r,sx:{display:`flex`,alignItems:`center`,color:`text.secondary`},children:(0,G.jsx)(Ehe,{})}),(0,G.jsx)(Dv,{label:t+1,size:`small`,color:`primary`,sx:{minWidth:32,fontWeight:`bold`}}),c?(0,G.jsx)(Z,{component:`img`,src:yE(e.id),alt:e.name,sx:{width:40,height:40,borderRadius:`50%`,objectFit:`cover`,boxShadow:2}}):(0,G.jsx)(Tb,{sx:{bgcolor:TE(e),width:40,height:40,boxShadow:2},children:(0,G.jsx)(wE(e),{sx:{fontSize:24}})}),(0,G.jsxs)(Z,{sx:{flex:1},children:[(0,G.jsx)(Q,{variant:`subtitle1`,fontWeight:500,children:e.name}),(0,G.jsxs)(Q,{variant:`caption`,color:`text.secondary`,children:[`Port: `,e.port,` • Priority: `,e.priority??100]})]})]})})},l3e=()=>{let{t:e}=ms(),t=Jv(),{content:n,isLoading:r}=FT(),i=Wme(),[a,o]=(0,C.useState)([]),[s,c]=(0,C.useState)(!1);(0,C.useEffect)(()=>{n&&(o([...n].sort((e,t)=>(e.priority??100)-(t.priority??100))),c(!1))},[n]);let l=t2e(e2e(N9),e2e(j9,{coordinateGetter:a3e})),u=(0,C.useCallback)(e=>{let{active:t,over:n}=e;n&&t.id!==n.id&&(o(e=>U9(e,e.findIndex(e=>e.id===t.id),e.findIndex(e=>e.id===n.id))),c(!0))},[]),d=(0,C.useCallback)(async()=>{let n=a.map((e,t)=>({id:e.id,priority:(t+1)*10}));try{await i(n),t.show({message:e(`startup.saveSuccess`),severity:`success`}),c(!1)}catch(n){t.show({message:n instanceof Error?n.message:e(`startup.saveFailed`),severity:`error`})}},[a,i,t,e]),f=(0,C.useMemo)(()=>a.map(e=>e.id),[a]);return r?(0,G.jsxs)(Q,{children:[e(`common.loading`),`...`]}):(0,G.jsxs)(Uv,{spacing:3,children:[(0,G.jsx)(qv,{items:[{name:e(`nav.bridges`),to:J9.bridges},{name:e(`startup.title`),to:J9.startup}]}),(0,G.jsxs)(Z,{display:`flex`,alignItems:`center`,gap:2,children:[(0,G.jsx)(dv,{color:`primary`,fontSize:`large`}),(0,G.jsxs)(Z,{children:[(0,G.jsx)(Q,{variant:`h5`,fontWeight:600,children:e(`startup.title`)}),(0,G.jsx)(Q,{variant:`body2`,color:`text.secondary`,children:e(`startup.description`)})]})]}),s&&(0,G.jsx)(Gh,{severity:`info`,action:(0,G.jsx)(hv,{color:`inherit`,size:`small`,startIcon:(0,G.jsx)(cE,{}),onClick:d,children:e(`startup.saveChanges`)}),children:e(`startup.unsavedChanges`)}),(0,G.jsx)(j4e,{sensors:l,collisionDetection:c2e,onDragEnd:u,children:(0,G.jsx)(J4e,{items:f,strategy:W4e,children:(0,G.jsx)(Uv,{spacing:1,children:a.map((e,t)=>(0,G.jsx)(c3e,{bridge:e,index:t},e.id))})})}),a.length===0&&(0,G.jsx)(Q,{color:`text.secondary`,textAlign:`center`,py:4,children:e(`startup.noBridges`)}),s&&a.length>0&&(0,G.jsx)(Z,{display:`flex`,justifyContent:`flex-end`,children:(0,G.jsx)(hv,{variant:`contained`,startIcon:(0,G.jsx)(cE,{}),onClick:d,children:e(`startup.saveOrder`)})})]})},q9=`https://riddix.github.io/home-assistant-matter-hub`,J9={dashboard:`/`,bridges:`/bridges`,bridge:e=>`/bridges/${e}`,createBridge:`/bridges/create`,areaSetup:`/bridges/area-setup`,editBridge:e=>`/bridges/${e}/edit`,devices:`/devices`,networkMap:`/network-map`,health:`/health`,labels:`/labels`,lockCredentials:`/lock-credentials`,plugins:`/plugins`,settings:`/settings`,startup:`/startup`,githubRepository:`https://github.com/riddix/home-assistant-matter-hub/`,documentation:q9,support:`${q9}/support`,faq:{multiFabric:`${q9}/connect-multiple-fabrics`,bridgeConfig:`${q9}/bridge-configuration`}},u3e=[{path:``,element:(0,G.jsx)(Sre,{}),children:[{path:``,element:(0,G.jsx)(qge,{})},{path:J9.bridges,element:(0,G.jsx)(Vge,{})},{path:J9.createBridge,element:(0,G.jsx)(Dqe,{})},{path:J9.areaSetup,element:(0,G.jsx)(yae,{})},{path:J9.bridge(`:bridgeId`),element:(0,G.jsx)(ohe,{})},{path:J9.editBridge(`:bridgeId`),element:(0,G.jsx)(Oqe,{})},{path:J9.devices,element:(0,G.jsx)(d_e,{})},{path:J9.networkMap,element:(0,G.jsx)(o0e,{})},{path:J9.health,element:(0,G.jsx)(qqe,{})},{path:J9.labels,element:(0,G.jsx)(Zqe,{})},{path:J9.lockCredentials,element:(0,G.jsx)(rJe,{})},{path:J9.plugins,element:(0,G.jsx)(A0e,{})},{path:J9.settings,element:(0,G.jsx)(F0e,{})},{path:J9.startup,element:(0,G.jsx)(l3e,{})},{path:`*`,element:(0,G.jsx)(iJe,{})}]}],d3e=k_({items:{isInitialized:!1,isLoading:!1}},e=>{e.addCase(U_.pending,e=>{e.items.isLoading=!0}).addCase(U_.rejected,(e,t)=>{e.items.isInitialized=!0,e.items.isLoading=!1,e.items.content=void 0,e.items.error=t.error}).addCase(U_.fulfilled,(e,t)=>{e.items.isInitialized=!0,e.items.isLoading=!1,e.items.content=t.payload,e.items.error=void 0}).addCase(W_.fulfilled,(e,t)=>{e.items.content?.push(t.payload)}).addCase(K_.fulfilled,(e,t)=>{let n=e.items.content?.findIndex(e=>e.id===t.payload.id)??-1;n!==-1&&(e.items.content[n]=t.payload)}).addCase(q_.fulfilled,(e,t)=>{let n=e.items.content?.findIndex(e=>e.id===t.payload.id)??-1;n!==-1&&(e.items.content[n]=t.payload)}).addCase(G_.fulfilled,(e,t)=>{if(e.items.content){let n=e.items.content.findIndex(e=>e.id===t.meta.arg);n!==-1&&e.items.content.splice(n,1)}}).addCase(J_,(e,t)=>{e.items.isInitialized=!0,e.items.isLoading=!1,e.items.content=t.payload,e.items.error=void 0}).addCase(Y_,(e,t)=>{if(e.items.content){let n=e.items.content.findIndex(e=>e.id===t.payload.id);n===-1?e.items.content.push(t.payload):e.items.content[n]=t.payload}})}),f3e=k_({byBridge:{}},e=>{e.addCase(RT.pending,(e,t)=>{e.byBridge[t.meta.arg]=Y9(e.byBridge[t.meta.arg],t)}).addCase(RT.rejected,(e,t)=>{e.byBridge[t.meta.arg]=Y9(e.byBridge[t.meta.arg],t)}).addCase(RT.fulfilled,(e,t)=>{e.byBridge[t.meta.arg]=Y9(e.byBridge[t.meta.arg],t)})}),Y9=k_({isInitialized:!1,isLoading:!1,content:void 0,error:void 0},e=>{e.addCase(RT.pending,e=>{e.isLoading=!0}).addCase(RT.rejected,(e,t)=>{e.isInitialized=!0,e.isLoading=!1,e.content=void 0,e.error=t.error}).addCase(RT.fulfilled,(e,t)=>{e.isInitialized=!0,e.isLoading=!1,e.content=t.payload,e.error=void 0})}),p3e=Yne({reducer:{bridges:d3e,devices:f3e}}),X9=gp({createStyledComponent:J(`div`,{name:`MuiContainer`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[`maxWidth${Y(String(n.maxWidth))}`],n.fixed&&t.fixed,n.disableGutters&&t.disableGutters]}}),useThemeProps:e=>Am({props:e,name:`MuiContainer`})});function m3e(e){return Id(`MuiToolbar`,e)}Ld(`MuiToolbar`,[`root`,`gutters`,`regular`,`dense`]);var h3e=e=>{let{classes:t,disableGutters:n,variant:r}=e;return dp({root:[`root`,!n&&`gutters`,r]},m3e,t)},g3e=J(`div`,{name:`MuiToolbar`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,!n.disableGutters&&t.gutters,t[n.variant]]}})(Im(({theme:e})=>({position:`relative`,display:`flex`,alignItems:`center`,variants:[{props:({ownerState:e})=>!e.disableGutters,style:{paddingLeft:e.spacing(2),paddingRight:e.spacing(2),[e.breakpoints.up(`sm`)]:{paddingLeft:e.spacing(3),paddingRight:e.spacing(3)}}},{props:{variant:`dense`},style:{minHeight:48}},{props:{variant:`regular`},style:e.mixins.toolbar}]}))),_3e=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiToolbar`}),{className:r,component:i=`div`,disableGutters:a=!1,variant:o=`regular`,...s}=n,c={...n,component:i,disableGutters:a,variant:o};return(0,G.jsx)(g3e,{as:i,className:K(h3e(c).root,r),ref:t,ownerState:c,...s})}),v3e=class extends C.Component{constructor(e){super(e),this.state={hasError:!1,error:null}}static getDerivedStateFromError(e){return{hasError:!0,error:e}}componentDidCatch(e,t){console.error(`ErrorBoundary caught:`,e,t.componentStack)}render(){return this.state.hasError?(0,G.jsxs)(Z,{display:`flex`,flexDirection:`column`,alignItems:`center`,justifyContent:`center`,minHeight:`60vh`,gap:2,p:4,children:[(0,G.jsx)(_b,{color:`error`,sx:{fontSize:64}}),(0,G.jsx)(Q,{variant:`h5`,fontWeight:600,children:Ps.t(`errorBoundary.title`)}),(0,G.jsx)(Q,{variant:`body2`,color:`text.secondary`,textAlign:`center`,maxWidth:480,children:this.state.error?.message??Ps.t(`errorBoundary.fallbackMessage`)}),(0,G.jsx)(hv,{variant:`contained`,onClick:()=>{this.setState({hasError:!1,error:null}),window.location.reload()},children:Ps.t(`errorBoundary.reload`)})]}):this.props.children}};function y3e(e){return Id(`MuiFab`,e)}var b3e=Ld(`MuiFab`,[`root`,`primary`,`secondary`,`extended`,`circular`,`focusVisible`,`disabled`,`colorInherit`,`sizeSmall`,`sizeMedium`,`sizeLarge`,`info`,`error`,`warning`,`success`]),x3e=e=>{let{color:t,variant:n,classes:r,size:i}=e,a=dp({root:[`root`,n,`size${Y(i)}`,t===`inherit`?`colorInherit`:t]},y3e,r);return{...r,...a}},S3e=J(Fh,{name:`MuiFab`,slot:`Root`,shouldForwardProp:e=>Om(e)||e===`classes`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[n.variant],t[`size${Y(n.size)}`],n.color===`inherit`&&t.colorInherit,t[Y(n.size)],t[n.color]]}})(Im(({theme:e})=>({...e.typography.button,minHeight:36,transition:e.transitions.create([`background-color`,`box-shadow`,`border-color`],{duration:e.transitions.duration.short}),borderRadius:`50%`,padding:0,minWidth:0,width:56,height:56,zIndex:(e.vars||e).zIndex.fab,boxShadow:(e.vars||e).shadows[6],"&:active":{boxShadow:(e.vars||e).shadows[12]},color:e.vars?e.vars.palette.grey[900]:e.palette.getContrastText?.(e.palette.grey[300]),backgroundColor:(e.vars||e).palette.grey[300],"&:hover":{backgroundColor:(e.vars||e).palette.grey.A100,"@media (hover: none)":{backgroundColor:(e.vars||e).palette.grey[300]},textDecoration:`none`},[`&.${b3e.focusVisible}`]:{boxShadow:(e.vars||e).shadows[6]},variants:[{props:{size:`small`},style:{width:40,height:40}},{props:{size:`medium`},style:{width:48,height:48}},{props:{variant:`extended`},style:{borderRadius:48/2,padding:`0 16px`,width:`auto`,minHeight:`auto`,minWidth:48,height:48}},{props:{variant:`extended`,size:`small`},style:{width:`auto`,padding:`0 8px`,borderRadius:34/2,minWidth:34,height:34}},{props:{variant:`extended`,size:`medium`},style:{width:`auto`,padding:`0 16px`,borderRadius:40/2,minWidth:40,height:40}},{props:{color:`inherit`},style:{color:`inherit`}}]})),Im(({theme:e})=>({variants:[...Object.entries(e.palette).filter(Gm([`dark`,`contrastText`])).map(([t])=>({props:{color:t},style:{color:(e.vars||e).palette[t].contrastText,backgroundColor:(e.vars||e).palette[t].main,"&:hover":{backgroundColor:(e.vars||e).palette[t].dark,"@media (hover: none)":{backgroundColor:(e.vars||e).palette[t].main}}}}))]})),Im(({theme:e})=>({[`&.${b3e.disabled}`]:{color:(e.vars||e).palette.action.disabled,boxShadow:(e.vars||e).shadows[0],backgroundColor:(e.vars||e).palette.action.disabledBackground}}))),C3e=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiFab`}),{children:r,className:i,color:a=`default`,component:o=`button`,disabled:s=!1,disableFocusRipple:c=!1,focusVisibleClassName:l,size:u=`large`,variant:d=`circular`,...f}=n,p={...n,color:a,component:o,disabled:s,disableFocusRipple:c,size:u,variant:d},m=x3e(p);return(0,G.jsx)(S3e,{className:K(m.root,i),component:o,disabled:s,focusRipple:!c,focusVisibleClassName:K(m.focusVisible,l),ownerState:p,ref:t,...f,classes:m,children:r})}),w3e=[{code:`en`,flag:`🇬🇧`,name:`English`},{code:`de`,flag:`🇩🇪`,name:`Deutsch`},{code:`fr`,flag:`🇫🇷`,name:`Français`},{code:`es`,flag:`🇪🇸`,name:`Español`},{code:`it`,flag:`🇮🇹`,name:`Italiano`},{code:`zh`,flag:`🇨🇳`,name:`中文`},{code:`zh-TW`,flag:`🇹🇼`,name:`繁體中文`},{code:`ja`,flag:`🇯🇵`,name:`日本語`},{code:`th`,flag:`🇹🇭`,name:`ไทย`},{code:`sv`,flag:`🇸🇪`,name:`Svenska`},{code:`tr`,flag:`🇹🇷`,name:`Türkçe`},{code:`ru`,flag:`🇷🇺`,name:`Русский`}],T3e=`hamh-custom-languages`;function E3e(){try{let e=localStorage.getItem(T3e);return e?JSON.parse(e).map(e=>({code:e.code,flag:`🌐`,name:e.name})):[]}catch{return[]}}var D3e=`https://github.com/RiDDiX/home-assistant-matter-hub/issues/new?labels=translation&title=Translation+improvement`;function O3e(){let{t:e,i18n:t}=ms(),[n,r]=(0,C.useState)(!1),i=(0,C.useRef)(null),a=(0,C.useMemo)(()=>[...w3e,...E3e()],[]),o=t.language??`en`,s=a.some(e=>e.code===o)?o:o.split(`-`)[0]??`en`,c=(0,C.useCallback)(()=>{r(e=>!e)},[]),l=(0,C.useCallback)(e=>{t.changeLanguage(e),r(!1)},[t]);return(0,G.jsx)(Jh,{onClickAway:(0,C.useCallback)(()=>{r(!1)},[]),children:(0,G.jsxs)(Z,{children:[(0,G.jsx)(C3e,{ref:i,size:`small`,color:`primary`,onClick:c,"aria-label":`Change language`,sx:{position:`fixed`,bottom:24,right:24,zIndex:1300},children:(0,G.jsx)(Nhe,{})}),(0,G.jsx)(ob,{open:n,anchorEl:i.current,placement:`top-end`,transition:!0,sx:{zIndex:1300},children:({TransitionProps:t})=>(0,G.jsx)(Mb,{...t,timeout:200,children:(0,G.jsxs)(Km,{elevation:8,sx:{mb:1,py:.5,minWidth:160,borderRadius:2,overflow:`hidden`},children:[a.map(e=>(0,G.jsxs)(Z,{onClick:()=>l(e.code),sx:{display:`flex`,alignItems:`center`,gap:1.5,px:2,py:1,cursor:`pointer`,bgcolor:s===e.code?`action.selected`:`transparent`,"&:hover":{bgcolor:`action.hover`},transition:`background-color 0.15s`},children:[(0,G.jsx)(Q,{sx:{fontSize:`1.4rem`,lineHeight:1,userSelect:`none`},children:e.flag}),(0,G.jsx)(Q,{variant:`body2`,fontWeight:s===e.code?600:400,children:e.name})]},e.code)),(0,G.jsx)(Wb,{}),(0,G.jsxs)(Z,{sx:{display:`flex`,alignItems:`flex-start`,gap:.75,px:2,py:1},children:[(0,G.jsx)(Yv,{sx:{fontSize:14,mt:.25,color:`text.secondary`}}),(0,G.jsxs)(Q,{variant:`caption`,color:`text.secondary`,sx:{lineHeight:1.4},children:[e(`languageSwitcher.disclaimer`),` `,(0,G.jsx)(Kv,{href:D3e,target:`_blank`,rel:`noopener`,sx:{fontSize:`inherit`},children:e(`languageSwitcher.contribute`)})]})]})]})})})]})})}var k3e={name:`home-assistant-matter-hub`,description:``,version:`2.1.0-alpha.673`,private:!1,type:`module`,bin:{"home-assistant-matter-hub":`./dist/backend/cli.js`},author:{name:`riddix`,url:`https://github.com/riddix`},keywords:[`home-assistant`,`homeassistant`,`home`,`assistant`,`apple home`,`google home`,`apple`,`google`,`alexa`,`matter`,`matter.js`,`matterjs`,`project-chip`,`smart`,`smarthome`,`smart-home`],bugs:{url:`https://github.com/riddix/home-assistant-matter-hub/issues`},license:`Apache-2.0`,repository:`github:riddix/home-assistant-matter-hub`,scripts:{cleanup:`npx rimraf node_modules dist pack LICENSE README.md`,build:`node build.js`,bundle:`pnpm pack --out package.tgz`,postbuild:`pnpm run bundle`,test:`vitest run`,prestart:`pnpm run build`,start:`dotenvx run -f ../../.env -- ./dist/backend/cli.js start`},dependencies:{"@matter/main":`0.16.11`,"@matter/nodejs":`0.16.11`,"@matter/general":`0.16.11`,ajv:`8.18.0`,archiver:`7.0.1`,color:`5.0.3`,debounce:`3.0.0`,express:`5.2.1`,"express-basic-auth":`1.2.1`,"express-ip-access-control":`1.1.3`,"home-assistant-js-websocket":`9.6.0`,"lodash-es":`4.18.1`,multer:`2.1.1`,nocache:`4.0.0`,unzipper:`0.12.3`,ws:`8.20.0`,yargs:`18.0.0`},devDependencies:{"@home-assistant-matter-hub/backend":`workspace:*`,"@home-assistant-matter-hub/frontend":`workspace:*`,"@home-assistant-matter-hub/common":`workspace:*`,"@types/lodash-es":`^4.17.12`},overrides:{minimatch:`9.0.7`,"path-to-regexp":`^8.4.0`,glob:`^13.0.0`},nx:{targets:{start:{cache:!1,dependsOn:[`build`]},pack:{cache:!0,dependsOn:[`build`],outputs:[`{projectRoot}/pack`]},build:{inputs:[`^default`,`default`,`{workspaceRoot}/README.md`,`{workspaceRoot}/LICENSE`],outputs:[`{projectRoot}/dist`,`{projectRoot}/README.md`,`{projectRoot}/LICENSE`]}}}};function A3e(){let e=`2.1.0-alpha.673`,[t,n]=(0,C.useState)(null);(0,C.useEffect)(()=>{fetch(`api/health`).then(e=>e.ok?e.json():null).then(e=>{e?.version&&n(e.version)}).catch(()=>{})},[]);let r=(0,C.useMemo)(()=>!t||e===`0.0.0-dev`?!1:e!==t,[t]);return(0,C.useMemo)(()=>({name:k3e.name,version:t??e,frontendVersion:e,backendVersion:t,versionMismatch:r}),[t,r])}var j3e=()=>{let{t:e}=ms(),t=[{name:e(`footer.github`),url:J9.githubRepository},{name:e(`footer.documentation`),url:J9.documentation},{name:e(`footer.support`),url:J9.support}];return(0,G.jsxs)(X9,{sx:{mt:16,mb:4},children:[(0,G.jsx)(Wb,{sx:{mt:4,mb:4}}),(0,G.jsx)(Iv,{container:!0,spacing:2,justifyContent:`center`,children:t.map((e,t)=>(0,G.jsx)(Iv,{size:{xs:12,sm:`auto`},children:(0,G.jsx)(hv,{fullWidth:!0,size:`small`,variant:`outlined`,component:Kv,href:e.url,target:`_blank`,children:e.name})},t.toString()))})]})};function M3e(e){return Id(`MuiAppBar`,e)}Ld(`MuiAppBar`,[`root`,`positionFixed`,`positionAbsolute`,`positionSticky`,`positionStatic`,`positionRelative`,`colorDefault`,`colorPrimary`,`colorSecondary`,`colorInherit`,`colorTransparent`,`colorError`,`colorInfo`,`colorSuccess`,`colorWarning`]);var N3e=e=>{let{color:t,position:n,classes:r}=e;return dp({root:[`root`,`color${Y(t)}`,`position${Y(n)}`]},M3e,r)},P3e=(e,t)=>e?`${e.replace(`)`,``)}, ${t})`:t,F3e=J(Km,{name:`MuiAppBar`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[`position${Y(n.position)}`],t[`color${Y(n.color)}`]]}})(Im(({theme:e})=>({display:`flex`,flexDirection:`column`,width:`100%`,boxSizing:`border-box`,flexShrink:0,variants:[{props:{position:`fixed`},style:{position:`fixed`,zIndex:(e.vars||e).zIndex.appBar,top:0,left:`auto`,right:0,"@media print":{position:`absolute`}}},{props:{position:`absolute`},style:{position:`absolute`,zIndex:(e.vars||e).zIndex.appBar,top:0,left:`auto`,right:0}},{props:{position:`sticky`},style:{position:`sticky`,zIndex:(e.vars||e).zIndex.appBar,top:0,left:`auto`,right:0}},{props:{position:`static`},style:{position:`static`}},{props:{position:`relative`},style:{position:`relative`}},{props:{color:`inherit`},style:{"--AppBar-color":`inherit`,color:`var(--AppBar-color)`}},{props:{color:`default`},style:{"--AppBar-background":e.vars?e.vars.palette.AppBar.defaultBg:e.palette.grey[100],"--AppBar-color":e.vars?e.vars.palette.text.primary:e.palette.getContrastText(e.palette.grey[100]),...e.applyStyles(`dark`,{"--AppBar-background":e.vars?e.vars.palette.AppBar.defaultBg:e.palette.grey[900],"--AppBar-color":e.vars?e.vars.palette.text.primary:e.palette.getContrastText(e.palette.grey[900])})}},...Object.entries(e.palette).filter(Gm([`contrastText`])).map(([t])=>({props:{color:t},style:{"--AppBar-background":(e.vars??e).palette[t].main,"--AppBar-color":(e.vars??e).palette[t].contrastText}})),{props:e=>e.enableColorOnDark===!0&&![`inherit`,`transparent`].includes(e.color),style:{backgroundColor:`var(--AppBar-background)`,color:`var(--AppBar-color)`}},{props:e=>e.enableColorOnDark===!1&&![`inherit`,`transparent`].includes(e.color),style:{backgroundColor:`var(--AppBar-background)`,color:`var(--AppBar-color)`,...e.applyStyles(`dark`,{backgroundColor:e.vars?P3e(e.vars.palette.AppBar.darkBg,`var(--AppBar-background)`):null,color:e.vars?P3e(e.vars.palette.AppBar.darkColor,`var(--AppBar-color)`):null})}},{props:{color:`transparent`},style:{"--AppBar-background":`transparent`,"--AppBar-color":`inherit`,backgroundColor:`var(--AppBar-background)`,color:`var(--AppBar-color)`,...e.applyStyles(`dark`,{backgroundImage:`none`})}}]}))),I3e=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiAppBar`}),{className:r,color:i=`primary`,enableColorOnDark:a=!1,position:o=`fixed`,...s}=n,c={...n,color:i,position:o,enableColorOnDark:a};return(0,G.jsx)(F3e,{square:!0,component:`header`,ownerState:c,elevation:4,className:K(N3e(c).root,r,o===`fixed`&&`mui-fixed`),ref:t,...s})}),L3e={visibility:`hidden`};function R3e(e,t,n){let r=n&&n.getBoundingClientRect(),i=nh(t),a=t.style.transform,o=t.style.transition;t.style.transition=``,t.style.transform=``;let s=t.getBoundingClientRect(),c=i.getComputedStyle(t).getPropertyValue(`transform`);t.style.transform=a,t.style.transition=o;let l=0,u=0;if(c&&c!==`none`&&typeof c==`string`){let e=c.split(`(`)[1].split(`)`)[0].split(`,`);l=parseInt(e[4],10),u=parseInt(e[5],10)}return e===`left`?r?`translateX(${r.right+l-s.left}px)`:`translateX(${i.innerWidth+l-s.left}px)`:e===`right`?r?`translateX(-${s.right-r.left-l}px)`:`translateX(-${s.left+s.width-l}px)`:e===`up`?r?`translateY(${r.bottom+u-s.top}px)`:`translateY(${i.innerHeight+u-s.top}px)`:r?`translateY(-${s.top-r.top+s.height-u}px)`:`translateY(-${s.top+s.height-u}px)`}function z3e(e){return typeof e==`function`?e():e}function Z9(e,t,n){let r=R3e(e,t,z3e(n));r&&(t.style.transform=r)}var B3e=C.forwardRef(function(e,t){let n=Tm(),r={enter:n.transitions.easing.easeOut,exit:n.transitions.easing.sharp},i={enter:n.transitions.duration.enteringScreen,exit:n.transitions.duration.leavingScreen},{addEndListener:a,appear:o=!0,children:s,container:c,direction:l=`down`,easing:u=r,in:d,onEnter:f,onEntered:p,onEntering:m,onExit:h,onExited:g,onExiting:_,style:v,timeout:y=i,...b}=e,x=C.useRef(null),S=uh(Kh(s),x,t),w=Xh(x,(e,t)=>{Z9(l,e,c),Yh(e),f&&f(e,t)}),T=Xh(x,(e,t)=>{let r=Qh({timeout:y,style:v,easing:u},{mode:`enter`});e.style.transition=n.transitions.create(`transform`,r),e.style.transform=`none`,m&&m(e,t)}),E=Xh(x,p),D=Xh(x,_),O=Xh(x,e=>{let t=Qh({timeout:y,style:v,easing:u},{mode:`exit`});e.style.transition=n.transitions.create(`transform`,t),Z9(l,e,c),h&&h(e)}),k=Xh(x,e=>{e.style.transition=``,g&&g(e)}),A=e=>{a&&a(x.current,e)},j=C.useCallback(()=>{x.current&&Z9(l,x.current,c)},[l,c]);return C.useEffect(()=>{if(d||l===`down`||l===`right`)return;let e=Zm(()=>{x.current&&Z9(l,x.current,c)}),t=nh(x.current);return t.addEventListener(`resize`,e),()=>{e.clear(),t.removeEventListener(`resize`,e)}},[l,d,c]),C.useEffect(()=>{d||j()},[d,j]),(0,G.jsx)(Eh,{nodeRef:x,onEnter:w,onEntered:E,onEntering:T,onExit:O,onExited:k,onExiting:D,addEndListener:A,appear:o,in:d,timeout:y,...b,children:(e,{ownerState:t,...n})=>{let r;return r=e===`exited`&&!d?v||s.props.style?{visibility:`hidden`,...v,...s.props.style}:L3e:v&&s.props.style?{...v,...s.props.style}:v||s.props.style,C.cloneElement(s,{ref:S,style:r,...n})}})});function V3e(e){return Id(`MuiDrawer`,e)}Ld(`MuiDrawer`,[`root`,`docked`,`paper`,`anchorLeft`,`anchorRight`,`anchorTop`,`anchorBottom`,`paperAnchorLeft`,`paperAnchorRight`,`paperAnchorTop`,`paperAnchorBottom`,`paperAnchorDockedLeft`,`paperAnchorDockedRight`,`paperAnchorDockedTop`,`paperAnchorDockedBottom`,`modal`]);var H3e=(e,t)=>{let{ownerState:n}=e;return[t.root,(n.variant===`permanent`||n.variant===`persistent`)&&t.docked,n.variant===`temporary`&&t.modal]},U3e=e=>{let{classes:t,anchor:n,variant:r}=e;return dp({root:[`root`,`anchor${Y(n)}`],docked:[(r===`permanent`||r===`persistent`)&&`docked`],modal:[`modal`],paper:[`paper`,`paperAnchor${Y(n)}`,r!==`temporary`&&`paperAnchorDocked${Y(n)}`]},V3e,t)},W3e=J(Ib,{name:`MuiDrawer`,slot:`Root`,overridesResolver:H3e})(Im(({theme:e})=>({zIndex:(e.vars||e).zIndex.drawer}))),G3e=J(`div`,{shouldForwardProp:Om,name:`MuiDrawer`,slot:`Docked`,skipVariantsResolver:!1,overridesResolver:H3e})({flex:`0 0 auto`}),K3e=J(Km,{name:`MuiDrawer`,slot:`Paper`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.paper,t[`paperAnchor${Y(n.anchor)}`],n.variant!==`temporary`&&t[`paperAnchorDocked${Y(n.anchor)}`]]}})(Im(({theme:e})=>({overflowY:`auto`,display:`flex`,flexDirection:`column`,height:`100%`,flex:`1 0 auto`,zIndex:(e.vars||e).zIndex.drawer,WebkitOverflowScrolling:`touch`,position:`fixed`,top:0,outline:0,variants:[{props:{anchor:`left`},style:{left:0}},{props:{anchor:`top`},style:{top:0,left:0,right:0,height:`auto`,maxHeight:`100%`}},{props:{anchor:`right`},style:{right:0}},{props:{anchor:`bottom`},style:{top:`auto`,left:0,bottom:0,right:0,height:`auto`,maxHeight:`100%`}},{props:({ownerState:e})=>e.anchor===`left`&&e.variant!==`temporary`,style:{borderRight:`1px solid ${(e.vars||e).palette.divider}`}},{props:({ownerState:e})=>e.anchor===`top`&&e.variant!==`temporary`,style:{borderBottom:`1px solid ${(e.vars||e).palette.divider}`}},{props:({ownerState:e})=>e.anchor===`right`&&e.variant!==`temporary`,style:{borderLeft:`1px solid ${(e.vars||e).palette.divider}`}},{props:({ownerState:e})=>e.anchor===`bottom`&&e.variant!==`temporary`,style:{borderTop:`1px solid ${(e.vars||e).palette.divider}`}}]}))),q3e={left:`right`,right:`left`,top:`down`,bottom:`up`};function J3e(e){return[`left`,`right`].includes(e)}function Y3e({direction:e},t){return e===`rtl`&&J3e(t)?q3e[t]:t}var X3e=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiDrawer`}),r=Tm(),i=Af(),a={enter:r.transitions.duration.enteringScreen,exit:r.transitions.duration.leavingScreen},{anchor:o=`left`,BackdropProps:s,children:c,className:l,elevation:u=16,hideBackdrop:d=!1,ModalProps:{BackdropProps:f,...p}={},onClose:m,open:h=!1,PaperProps:g={},SlideProps:_,TransitionComponent:v,transitionDuration:y=a,variant:b=`temporary`,slots:x={},slotProps:S={},...w}=n,T=C.useRef(!1);C.useEffect(()=>{T.current=!0},[]);let E=Y3e({direction:i?`rtl`:`ltr`},o),D=o,O={...n,anchor:D,elevation:u,open:h,variant:b,...w},k=U3e(O),A={slots:{transition:v,...x},slotProps:{paper:g,transition:_,...S,backdrop:dh(S.backdrop||{...s,...f},{transitionDuration:y})}},[j,M]=Wm(`root`,{ref:t,elementType:W3e,className:K(k.root,k.modal,l),shouldForwardComponentProp:!0,ownerState:O,externalForwardedProps:{...A,...w,...p},additionalProps:{open:h,onClose:m,hideBackdrop:d,slots:{backdrop:A.slots.backdrop},slotProps:{backdrop:A.slotProps.backdrop}}}),[N,P]=Wm(`paper`,{elementType:K3e,shouldForwardComponentProp:!0,className:K(k.paper,g.className),ownerState:O,externalForwardedProps:A,additionalProps:{elevation:b===`temporary`?u:0,square:!0,...b===`temporary`&&{role:`dialog`,"aria-modal":`true`}}}),[F,I]=Wm(`docked`,{elementType:G3e,ref:t,className:K(k.root,k.docked,l),ownerState:O,externalForwardedProps:A,additionalProps:w}),[L,R]=Wm(`transition`,{elementType:B3e,ownerState:O,externalForwardedProps:A,additionalProps:{in:h,direction:q3e[E],timeout:y,appear:T.current}}),ee=(0,G.jsx)(N,{...P,children:c});if(b===`permanent`)return(0,G.jsx)(F,{...I,children:ee});let z=(0,G.jsx)(L,{...R,children:ee});return b===`persistent`?(0,G.jsx)(F,{...I,children:z}):(0,G.jsx)(j,{...M,children:z})}),Z3e=af({themeId:wm}),Q3e={error:Cx,warn:Xv,info:yb,debug:qT},$3e=({open:e,onClose:t})=>{let{t:n}=ms(),r=Tm(),i=(0,C.useMemo)(()=>({error:r.palette.error.main,warn:r.palette.warning.main,info:r.palette.info.main,debug:r.palette.secondary.main}),[r]),[a,o]=(0,C.useState)([]),[s,c]=(0,C.useState)(!0),[l,u]=(0,C.useState)(`error,warn,info`.split(`,`)),[d,f]=(0,C.useState)(``),[p,m]=(0,C.useState)(!0),h=(0,C.useCallback)(async()=>{try{let e=new URLSearchParams({level:l.join(`,`),limit:`500`,...d&&{search:d}}),t=await fetch(`api/logs?${e}`);t.ok&&o((await t.json()).entries)}catch(e){console.error(`Failed to fetch logs:`,e)}finally{c(!1)}},[l,d]);(0,C.useEffect)(()=>{e&&h()},[e,h]),(0,C.useEffect)(()=>{if(!p||!e)return;let t=setInterval(h,5e3);return()=>clearInterval(t)},[p,e,h]);let g=e=>{u(Array.isArray(e.target.value)?e.target.value:[e.target.value])},_=e=>{f(e.target.value)},v=async()=>{try{await fetch(`api/logs`,{method:`DELETE`}),o([])}catch(e){console.error(`Failed to clear logs:`,e)}},y=e=>(0,G.jsx)(Q3e[e]||yb,{sx:{fontSize:16,color:i[e]}});return(0,G.jsxs)(zb,{open:e,onClose:t,maxWidth:`lg`,fullWidth:!0,children:[(0,G.jsxs)(Hb,{sx:{display:`flex`,alignItems:`center`,gap:1},children:[(0,G.jsx)(qT,{}),n(`logs.title`),(0,G.jsx)(Z,{sx:{flexGrow:1}}),(0,G.jsx)(fb,{title:n(`logs.autoRefresh`),children:(0,G.jsx)(Dv,{label:p?`Auto`:`Manual`,color:p?`success`:`default`,size:`small`,onClick:()=>m(!p),sx:{cursor:`pointer`}})}),(0,G.jsx)(Hh,{onClick:t,children:(0,G.jsx)(YT,{})})]}),(0,G.jsxs)(Vb,{children:[(0,G.jsx)(Uv,{spacing:2,sx:{mb:2},children:(0,G.jsxs)(Uv,{direction:`row`,spacing:2,alignItems:`center`,children:[(0,G.jsxs)(Av,{size:`small`,sx:{minWidth:200},children:[(0,G.jsx)(Bx,{children:n(`logs.logLevel`)}),(0,G.jsxs)(SS,{value:l,label:n(`logs.logLevel`),onChange:g,multiple:!0,renderValue:e=>(0,G.jsx)(Z,{sx:{display:`flex`,flexWrap:`wrap`,gap:.5},children:(Array.isArray(e)?e:[e]).map(e=>(0,G.jsx)(Dv,{label:e.toUpperCase(),size:`small`,sx:{backgroundColor:i[e],color:`white`}},e))}),children:[(0,G.jsx)(CS,{value:`error`,children:n(`logs.error`)}),(0,G.jsx)(CS,{value:`warn`,children:n(`logs.warning`)}),(0,G.jsx)(CS,{value:`info`,children:n(`logs.info`)}),(0,G.jsx)(CS,{value:`debug`,children:n(`logs.debug`)})]})]}),(0,G.jsx)(ES,{size:`small`,placeholder:n(`logs.searchPlaceholder`),value:d,onChange:_,sx:{flexGrow:1}}),(0,G.jsx)(hv,{variant:`outlined`,onClick:h,children:n(`common.refresh`)}),(0,G.jsx)(hv,{variant:`outlined`,color:`error`,onClick:v,children:n(`common.delete`)})]})}),(0,G.jsx)(Z,{sx:{height:400,overflow:`auto`,backgroundColor:`background.paper`,border:1,borderColor:`divider`,borderRadius:1,p:1},children:s?(0,G.jsx)(Z,{sx:{display:`flex`,justifyContent:`center`,p:4},children:(0,G.jsxs)(Q,{children:[n(`common.loading`),`...`]})}):a.length===0?(0,G.jsx)(Z,{sx:{display:`flex`,justifyContent:`center`,p:4},children:(0,G.jsx)(Q,{color:`text.secondary`,children:n(`logs.noResults`)})}):(0,G.jsx)(Uv,{spacing:1,children:a.map((e,t)=>(0,G.jsxs)(Z,{sx:{p:1,borderRadius:1,backgroundColor:`action.hover`,fontFamily:`monospace`,fontSize:`0.875rem`,wordBreak:`break-all`},children:[(0,G.jsxs)(Z,{sx:{display:`flex`,alignItems:`center`,gap:1,mb:.5},children:[y(e.level),(0,G.jsx)(Q,{variant:`caption`,color:`text.secondary`,children:new Date(e.timestamp).toLocaleString()}),(0,G.jsx)(Dv,{label:e.level.toUpperCase(),size:`small`,sx:{backgroundColor:i[e.level],color:r.palette.getContrastText(i[e.level]??r.palette.grey[500]),fontSize:`0.7rem`,height:20}})]}),(0,G.jsx)(Q,{sx:{ml:3},children:e.message}),e.context&&(0,G.jsx)(Q,{sx:{ml:3,color:`text.secondary`,fontSize:`0.8rem`},children:JSON.stringify(e.context,null,2)})]},`${e.timestamp}-${e.level}-${t}`))})})]}),(0,G.jsx)(Bb,{children:(0,G.jsx)(hv,{onClick:t,children:n(`common.close`)})})]})};function Q9(){let{t:e}=ms(),{isConnected:t}=$_(),[n,r]=(0,C.useState)(null),[i,a]=(0,C.useState)(!1);(0,C.useEffect)(()=>{let e=async()=>{try{let e=await fetch(`api/health`);e.ok?(r(await e.json()),a(!1)):a(!0)}catch{a(!0)}};e();let t=setInterval(e,3e4);return()=>clearInterval(t)},[]);let o=e=>{let t=Math.floor(e/3600),n=Math.floor(e%3600/60);return t>0?`${t}h ${n}m`:`${n}m`},s=n?.status===`healthy`&&!i,c=n?.services?.bridges,l=c&&c.total>0&&c.running===c.total,u=c&&c.total===0,d=n?(0,G.jsxs)(Z,{sx:{p:.5},children:[(0,G.jsxs)(`div`,{children:[(0,G.jsxs)(`strong`,{children:[e(`health.version`),`:`]}),` `,n.version??e(`status.unknown`)]}),(0,G.jsxs)(`div`,{children:[(0,G.jsxs)(`strong`,{children:[e(`health.uptime`),`:`]}),` `,o(n.uptime??0)]}),n.services?.bridges&&(0,G.jsxs)(`div`,{children:[(0,G.jsxs)(`strong`,{children:[e(`nav.bridges`),`:`]}),` `,n.services.bridges.running??0,`/`,n.services.bridges.total??0,` `,e(`common.running`).toLowerCase(),(n.services.bridges.stopped??0)>0&&` (${n.services.bridges.stopped} ${e(`common.stopped`).toLowerCase()})`]}),n.services?.homeAssistant&&(0,G.jsxs)(`div`,{children:[(0,G.jsxs)(`strong`,{children:[e(`health.homeAssistant`),`:`]}),` `,n.services.homeAssistant.connected?e(`health.connected`):e(`health.disconnected`)]}),(0,G.jsxs)(`div`,{children:[(0,G.jsx)(`strong`,{children:`WebSocket:`}),` `,e(t?`health.connected`:`health.disconnected`)]})]}):e(`status.loadingHealth`);return(0,G.jsx)(fb,{title:d,arrow:!0,children:(0,G.jsx)(Dv,{icon:i||!s?(0,G.jsx)(Cx,{fontSize:`small`}):l?(0,G.jsx)(uv,{fontSize:`small`}):(0,G.jsx)(Sb,{fontSize:`small`}),label:e(i?`status.error`:s?t?u?`status.noBridges`:l?`common.online`:`common.starting`:`common.offline`:`status.unhealthy`),color:i||!s?`error`:!l||!t?`warning`:`success`,size:`small`,variant:`filled`,sx:{borderRadius:1,fontWeight:600,"& .MuiChip-icon":{color:`inherit`}}})})}var e6e=e=>(0,G.jsx)(`svg`,{viewBox:`0 0 91 89`,xmlSpace:`preserve`,xmlns:`http://www.w3.org/2000/svg`,...e,children:(0,G.jsxs)(`g`,{style:{display:`inline`},children:[(0,G.jsx)(`path`,{style:{fill:`#18bcf2`,fillOpacity:1,strokeWidth:.266194},d:`m 49.149143,1.473171 38.513568,38.536435 c 0,0 1.248354,1.186052 2.207681,3.092371 0.959329,1.906323 1.10864,4.600698 1.10864,4.600698 v 36.786372 c 0,0 -0.01549,1.748506 -1.49842,3.050572 -1.482931,1.302064 -3.333077,1.362947 -3.333077,1.362947 l -81.325658,7.7e-5 c 0,0 -1.7523855,-0.0091 -3.17112,-1.352526 C -0.07808495,85.913164 0.05953025,84.487808 0.05953025,84.487808 V 47.704546 c 0,0 -0.0018381,-2.218618 0.95921785,-4.315832 0.9610554,-2.097209 2.3010618,-3.355005 2.3010618,-3.355005 L 41.545959,1.4719546 c 0,0 1.465224,-1.46837077 3.753488,-1.46837077 2.288268,0 3.849696,1.46958717 3.849696,1.46958717 z`}),(0,G.jsx)(`path`,{style:{fill:`#ffffff`,fillOpacity:1,strokeWidth:.175841},d:`m 31.689717,32.051124 c 2.813363,2.331095 6.157331,3.89845 9.721813,4.556421 V 17.180647 l 3.873694,-2.282955 3.870527,2.282955 V 36.60772 c 3.565364,-0.658847 6.910387,-2.226204 9.725159,-4.556417 l 7.032345,4.154609 c -11.437354,11.557779 -29.852321,11.557779 -41.290025,0 z m 8.546732,49.60988 C 44.314996,65.760441 35.09933,49.470196 19.574984,45.139543 v 8.312381 c 3.383916,1.32244 6.386113,3.496288 8.728705,6.320026 L 11.83076,69.485301 v 4.56907 l 3.873697,2.270836 16.469936,-9.713534 c 1.224356,3.48294 1.56683,7.225375 0.996449,10.879778 z M 70.977694,45.139543 c -15.515726,4.34014 -24.72189,20.626696 -20.643519,36.521461 l 7.047658,-4.15742 c -0.569325,-3.654411 -0.2265,-7.3965 0.996449,-10.87979 l 16.457611,9.701233 3.870711,-2.283125 v -4.55677 L 62.233673,59.77195 c 2.342772,-2.822684 5.34497,-4.996533 8.728708,-6.320026 z`})]})}),t6e=e=>{let t=A3e();return(0,G.jsxs)(Z,{component:ea,to:J9.dashboard,sx:{display:`flex`,alignItems:`center`,justifyContent:e.large?`flex-start`:`center`,flexGrow:1,textDecoration:`none`,color:`inherit`},children:[(0,G.jsx)(e6e,{style:{height:`40px`}}),(0,G.jsx)(Q,{variant:`inherit`,component:`span`,sx:{mr:1,ml:1},children:t.name.split(`-`).map(Y).join(`-`)}),e.large&&(0,G.jsx)(Q,{variant:`caption`,component:`span`,children:t.version})]})},n6e=()=>{let e=Z3e(`(min-width:600px)`),{mode:t,setMode:n}=Fm(),[r,i]=(0,C.useState)(!1),[a,o]=(0,C.useState)(!1),s=Sr(),c=yr(),l=e=>e?e===`/`?c.pathname===`/`:c.pathname.startsWith(e):!1,u=()=>{n(t===`dark`?`light`:`dark`)},{t:d}=ms(),f=[{label:d(`dashboard.title`),icon:(0,G.jsx)($T,{}),to:J9.dashboard},{label:d(`nav.bridges`),icon:(0,G.jsx)(eE,{}),to:J9.bridges},{label:d(`nav.devices`),icon:(0,G.jsx)(hb,{}),to:J9.devices},{label:d(`nav.networkMap`),icon:(0,G.jsx)(HT,{}),to:J9.networkMap},{label:d(`nav.startupOrder`),icon:(0,G.jsx)(dv,{}),to:J9.startup},{label:d(`nav.lockCredentials`),icon:(0,G.jsx)(CT,{}),to:J9.lockCredentials},{label:d(`nav.filterReference`),icon:(0,G.jsx)(tE,{}),to:J9.labels},{label:`Plugins`,icon:(0,G.jsx)(ZT,{}),to:J9.plugins},{label:d(`nav.settings`),icon:(0,G.jsx)(MT,{}),to:J9.settings},{label:d(t===`dark`?`nav.lightMode`:`nav.darkMode`),icon:t===`dark`?(0,G.jsx)(Fhe,{}):(0,G.jsx)(She,{}),onClick:u},{label:d(`nav.systemLogs`),icon:(0,G.jsx)(qT,{}),onClick:()=>i(!0)},{label:d(`nav.health`),icon:(0,G.jsx)(kx,{}),to:J9.health}],p=e=>{o(!1),e.onClick?e.onClick():e.to&&s(e.to)};return(0,G.jsxs)(Z,{children:[(0,G.jsx)(I3e,{sx:{height:`72px`},children:(0,G.jsx)(_3e,{sx:{paddingLeft:`0 !important`,paddingRight:`0 !important`},children:(0,G.jsxs)(X9,{sx:{padding:2,height:`100%`,display:`flex`,justifyContent:`space-between`,alignItems:`center`},children:[(0,G.jsx)(t6e,{large:e}),e?(0,G.jsxs)(Z,{sx:{display:`flex`,alignItems:`center`,gap:1},children:[f.map(e=>e.to?(0,G.jsx)(fb,{title:e.label,children:(0,G.jsx)(Hh,{component:ea,to:e.to,sx:{color:`inherit`,bgcolor:l(e.to)?`rgba(255,255,255,0.15)`:`transparent`,borderRadius:1},children:e.icon})},e.label):(0,G.jsx)(fb,{title:e.label,children:(0,G.jsx)(Hh,{onClick:e.onClick,sx:{color:`inherit`},children:e.icon})},e.label)),(0,G.jsx)(Q9,{})]}):(0,G.jsxs)(Z,{sx:{display:`flex`,alignItems:`center`,gap:.5},children:[(0,G.jsx)(Q9,{}),(0,G.jsx)(Hh,{onClick:()=>o(!0),sx:{color:`inherit`},children:(0,G.jsx)(Ihe,{})})]})]})})}),(0,G.jsx)(X3e,{anchor:`right`,open:a,onClose:()=>o(!1),children:(0,G.jsx)(ey,{sx:{width:250},children:f.map(e=>(0,G.jsxs)(Iae,{selected:l(e.to),onClick:()=>p(e),children:[(0,G.jsx)(ay,{children:e.icon}),(0,G.jsx)(sy,{primary:e.label})]},e.label))})}),(0,G.jsx)($3e,{open:r,onClose:()=>i(!1)})]})},r6e=()=>{let{versionMismatch:e,frontendVersion:t,backendVersion:n}=A3e(),{isConnected:r}=$_();return(0,G.jsxs)(Z,{children:[(0,G.jsx)(n6e,{}),(0,G.jsx)(_3e,{}),e&&(0,G.jsxs)(Gh,{severity:`warning`,variant:`filled`,sx:{borderRadius:0},action:(0,G.jsx)(hv,{color:`inherit`,size:`small`,onClick:()=>window.location.reload(),children:`Reload`}),children:[`Version mismatch: frontend `,t,`, backend `,n,`. Please reload to get the latest UI.`]}),!r&&(0,G.jsx)(Gh,{severity:`error`,variant:`filled`,sx:{borderRadius:0},children:`Connection lost, data may be outdated. Reconnecting…`}),(0,G.jsx)(X9,{sx:{p:2},children:(0,G.jsx)(v3e,{children:(0,G.jsx)(oi,{})})}),(0,G.jsx)(j3e,{}),(0,G.jsx)(O3e,{})]})},i6e=Sm({colorSchemes:{light:{palette:{primary:{main:`#1976d2`,light:`#42a5f5`,dark:`#1565c0`},secondary:{main:`#9c27b0`,light:`#ba68c8`,dark:`#7b1fa2`},background:{default:`#f5f5f5`,paper:`#ffffff`}}},dark:{palette:{primary:{main:`#90caf9`,light:`#e3f2fd`,dark:`#42a5f5`},secondary:{main:`#ce93d8`,light:`#f3e5f5`,dark:`#ab47bc`},background:{default:`#121212`,paper:`#1e1e1e`}}}},typography:{fontFamily:`"Roboto", "Helvetica", "Arial", sans-serif`,h1:{fontSize:`2.5rem`,fontWeight:500},h2:{fontSize:`2rem`,fontWeight:500},h3:{fontSize:`1.75rem`,fontWeight:500},h4:{fontSize:`1.5rem`,fontWeight:500},h5:{fontSize:`1.25rem`,fontWeight:500},h6:{fontSize:`1rem`,fontWeight:500}},shape:{borderRadius:8},components:{MuiCard:{styleOverrides:{root:{transition:`transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out`,"&:hover":{transform:`translateY(-2px)`,boxShadow:`0 4px 20px rgba(0,0,0,0.12)`}}}},MuiButton:{styleOverrides:{root:{textTransform:`none`,fontWeight:500}}},MuiChip:{styleOverrides:{root:{fontWeight:500}}},MuiAppBar:{styleOverrides:{root:{backgroundImage:`none`}}}}}),$9=document.getElementsByTagName(`base`)[0]?.href?.replace(/\/$/,``);$9?.startsWith(`http`)&&($9=new URL($9).pathname);var a6e=Yi([{path:`/`,element:(0,G.jsx)(r6e,{}),children:u3e}],{basename:$9});(0,S.createRoot)(document.getElementById(`root`)).render((0,G.jsx)(C.StrictMode,{children:(0,G.jsx)(L,{store:p3e,children:(0,G.jsxs)(Gee,{theme:i6e,children:[(0,G.jsx)(zee,{}),(0,G.jsx)(Em,{styles:{".rjsf-field-array > .MuiFormControl-root > .MuiPaper-root > .MuiBox-root > .MuiGrid-root > .MuiGrid-root:has(> .MuiBox-root > .MuiPaper-root > .MuiBox-root > .rjsf-field)":{overflow:`initial !important`,flexGrow:1}}}),(0,G.jsx)(xre,{children:(0,G.jsx)(sne,{children:(0,G.jsx)(ba,{router:a6e})})})]})})}));
469
+ `},Q0e={onDragStart(e){let{active:t}=e;return`Picked up draggable item `+t.id+`.`},onDragOver(e){let{active:t,over:n}=e;return n?`Draggable item `+t.id+` was moved over droppable area `+n.id+`.`:`Draggable item `+t.id+` is no longer over a droppable area.`},onDragEnd(e){let{active:t,over:n}=e;return n?`Draggable item `+t.id+` was dropped over droppable area `+n.id:`Draggable item `+t.id+` was dropped.`},onDragCancel(e){let{active:t}=e;return`Dragging was cancelled. Draggable item `+t.id+` was dropped.`}};function $0e(e){let{announcements:t=Q0e,container:n,hiddenTextDescribedById:r,screenReaderInstructions:i=Z0e}=e,{announce:a,announcement:o}=q0e(),s=f9(`DndLiveRegion`),[c,l]=(0,C.useState)(!1);if((0,C.useEffect)(()=>{l(!0)},[]),Y0e((0,C.useMemo)(()=>({onDragStart(e){let{active:n}=e;a(t.onDragStart({active:n}))},onDragMove(e){let{active:n,over:r}=e;t.onDragMove&&a(t.onDragMove({active:n,over:r}))},onDragOver(e){let{active:n,over:r}=e;a(t.onDragOver({active:n,over:r}))},onDragEnd(e){let{active:n,over:r}=e;a(t.onDragEnd({active:n,over:r}))},onDragCancel(e){let{active:n,over:r}=e;a(t.onDragCancel({active:n,over:r}))}}),[a,t])),!c)return null;let u=C.createElement(C.Fragment,null,C.createElement(G0e,{id:r,value:i.draggable}),C.createElement(K0e,{id:s,announcement:o}));return n?(0,ya.createPortal)(u,n):u}var v9;(function(e){e.DragStart=`dragStart`,e.DragMove=`dragMove`,e.DragEnd=`dragEnd`,e.DragCancel=`dragCancel`,e.DragOver=`dragOver`,e.RegisterDroppable=`registerDroppable`,e.SetDroppableDisabled=`setDroppableDisabled`,e.UnregisterDroppable=`unregisterDroppable`})(v9||={});function y9(){}function e2e(e,t){return(0,C.useMemo)(()=>({sensor:e,options:t??{}}),[e,t])}function t2e(){var e=[...arguments];return(0,C.useMemo)(()=>[...e].filter(e=>e!=null),[...e])}var b9=Object.freeze({x:0,y:0});function n2e(e,t){return Math.sqrt((e.x-t.x)**2+(e.y-t.y)**2)}function r2e(e,t){let{data:{value:n}}=e,{data:{value:r}}=t;return n-r}function i2e(e,t){let{data:{value:n}}=e,{data:{value:r}}=t;return r-n}function a2e(e){let{left:t,top:n,height:r,width:i}=e;return[{x:t,y:n},{x:t+i,y:n},{x:t,y:n+r},{x:t+i,y:n+r}]}function o2e(e,t){if(!e||e.length===0)return null;let[n]=e;return t?n[t]:n}function s2e(e,t,n){return t===void 0&&(t=e.left),n===void 0&&(n=e.top),{x:t+e.width*.5,y:n+e.height*.5}}var c2e=e=>{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e,i=s2e(t,t.left,t.top),a=[];for(let e of r){let{id:t}=e,r=n.get(t);if(r){let n=n2e(s2e(r),i);a.push({id:t,data:{droppableContainer:e,value:n}})}}return a.sort(r2e)},l2e=e=>{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e,i=a2e(t),a=[];for(let e of r){let{id:t}=e,r=n.get(t);if(r){let n=a2e(r),o=i.reduce((e,t,r)=>e+n2e(n[r],t),0),s=Number((o/4).toFixed(4));a.push({id:t,data:{droppableContainer:e,value:s}})}}return a.sort(r2e)};function u2e(e,t){let n=Math.max(t.top,e.top),r=Math.max(t.left,e.left),i=Math.min(t.left+t.width,e.left+e.width),a=Math.min(t.top+t.height,e.top+e.height),o=i-r,s=a-n;if(r<i&&n<a){let n=t.width*t.height,r=e.width*e.height,i=o*s,a=i/(n+r-i);return Number(a.toFixed(4))}return 0}var d2e=e=>{let{collisionRect:t,droppableRects:n,droppableContainers:r}=e,i=[];for(let e of r){let{id:r}=e,a=n.get(r);if(a){let n=u2e(a,t);n>0&&i.push({id:r,data:{droppableContainer:e,value:n}})}}return i.sort(i2e)};function f2e(e,t,n){return{...e,scaleX:t&&n?t.width/n.width:1,scaleY:t&&n?t.height/n.height:1}}function p2e(e,t){return e&&t?{x:e.left-t.left,y:e.top-t.top}:b9}function m2e(e){return function(t){return[...arguments].slice(1).reduce((t,n)=>({...t,top:t.top+e*n.y,bottom:t.bottom+e*n.y,left:t.left+e*n.x,right:t.right+e*n.x}),{...t})}}var h2e=m2e(1);function g2e(e){if(e.startsWith(`matrix3d(`)){let t=e.slice(9,-1).split(/, /);return{x:+t[12],y:+t[13],scaleX:+t[0],scaleY:+t[5]}}else if(e.startsWith(`matrix(`)){let t=e.slice(7,-1).split(/, /);return{x:+t[4],y:+t[5],scaleX:+t[0],scaleY:+t[3]}}return null}function _2e(e,t,n){let r=g2e(t);if(!r)return e;let{scaleX:i,scaleY:a,x:o,y:s}=r,c=e.left-o-(1-i)*parseFloat(n),l=e.top-s-(1-a)*parseFloat(n.slice(n.indexOf(` `)+1)),u=i?e.width/i:e.width,d=a?e.height/a:e.height;return{width:u,height:d,top:l,right:c+u,bottom:l+d,left:c}}var v2e={ignoreTransform:!1};function x9(e,t){t===void 0&&(t=v2e);let n=e.getBoundingClientRect();if(t.ignoreTransform){let{transform:t,transformOrigin:r}=t9(e).getComputedStyle(e);t&&(n=_2e(n,t,r))}let{top:r,left:i,width:a,height:o,bottom:s,right:c}=n;return{top:r,left:i,width:a,height:o,bottom:s,right:c}}function y2e(e){return x9(e,{ignoreTransform:!0})}function b2e(e){let t=e.innerWidth,n=e.innerHeight;return{top:0,left:0,right:t,bottom:n,width:t,height:n}}function x2e(e,t){return t===void 0&&(t=t9(e).getComputedStyle(e)),t.position===`fixed`}function S2e(e,t){t===void 0&&(t=t9(e).getComputedStyle(e));let n=/(auto|scroll|overlay)/;return[`overflow`,`overflowX`,`overflowY`].some(e=>{let r=t[e];return typeof r==`string`?n.test(r):!1})}function S9(e,t){let n=[];function r(i){if(t!=null&&n.length>=t||!i)return n;if(n9(i)&&i.scrollingElement!=null&&!n.includes(i.scrollingElement))return n.push(i.scrollingElement),n;if(!r9(i)||L0e(i)||n.includes(i))return n;let a=t9(e).getComputedStyle(i);return i!==e&&S2e(i,a)&&n.push(i),x2e(i,a)?n:r(i.parentNode)}return e?r(e):n}function C2e(e){let[t]=S9(e,1);return t??null}function C9(e){return!Q7||!e?null:$7(e)?e:e9(e)?n9(e)||e===i9(e).scrollingElement?window:r9(e)?e:null:null}function w2e(e){return $7(e)?e.scrollX:e.scrollLeft}function T2e(e){return $7(e)?e.scrollY:e.scrollTop}function w9(e){return{x:w2e(e),y:T2e(e)}}var T9;(function(e){e[e.Forward=1]=`Forward`,e[e.Backward=-1]=`Backward`})(T9||={});function E2e(e){return!Q7||!e?!1:e===document.scrollingElement}function D2e(e){let t={x:0,y:0},n=E2e(e)?{height:window.innerHeight,width:window.innerWidth}:{height:e.clientHeight,width:e.clientWidth},r={x:e.scrollWidth-n.width,y:e.scrollHeight-n.height};return{isTop:e.scrollTop<=t.y,isLeft:e.scrollLeft<=t.x,isBottom:e.scrollTop>=r.y,isRight:e.scrollLeft>=r.x,maxScroll:r,minScroll:t}}var O2e={x:.2,y:.2};function k2e(e,t,n,r,i){let{top:a,left:o,right:s,bottom:c}=n;r===void 0&&(r=10),i===void 0&&(i=O2e);let{isTop:l,isBottom:u,isLeft:d,isRight:f}=D2e(e),p={x:0,y:0},m={x:0,y:0},h={height:t.height*i.y,width:t.width*i.x};return!l&&a<=t.top+h.height?(p.y=T9.Backward,m.y=r*Math.abs((t.top+h.height-a)/h.height)):!u&&c>=t.bottom-h.height&&(p.y=T9.Forward,m.y=r*Math.abs((t.bottom-h.height-c)/h.height)),!f&&s>=t.right-h.width?(p.x=T9.Forward,m.x=r*Math.abs((t.right-h.width-s)/h.width)):!d&&o<=t.left+h.width&&(p.x=T9.Backward,m.x=r*Math.abs((t.left+h.width-o)/h.width)),{direction:p,speed:m}}function A2e(e){if(e===document.scrollingElement){let{innerWidth:e,innerHeight:t}=window;return{top:0,left:0,right:e,bottom:t,width:e,height:t}}let{top:t,left:n,right:r,bottom:i}=e.getBoundingClientRect();return{top:t,left:n,right:r,bottom:i,width:e.clientWidth,height:e.clientHeight}}function j2e(e){return e.reduce((e,t)=>p9(e,w9(t)),b9)}function M2e(e){return e.reduce((e,t)=>e+w2e(t),0)}function N2e(e){return e.reduce((e,t)=>e+T2e(t),0)}function P2e(e,t){if(t===void 0&&(t=x9),!e)return;let{top:n,left:r,bottom:i,right:a}=t(e);C2e(e)&&(i<=0||a<=0||n>=window.innerHeight||r>=window.innerWidth)&&e.scrollIntoView({block:`center`,inline:`center`})}var F2e=[[`x`,[`left`,`right`],M2e],[`y`,[`top`,`bottom`],N2e]],E9=class{constructor(e,t){this.rect=void 0,this.width=void 0,this.height=void 0,this.top=void 0,this.bottom=void 0,this.right=void 0,this.left=void 0;let n=S9(t),r=j2e(n);this.rect={...e},this.width=e.width,this.height=e.height;for(let[e,t,i]of F2e)for(let a of t)Object.defineProperty(this,a,{get:()=>{let t=i(n),o=r[e]-t;return this.rect[a]+o},enumerable:!0});Object.defineProperty(this,`rect`,{enumerable:!1})}},D9=class{constructor(e){this.target=void 0,this.listeners=[],this.removeAll=()=>{this.listeners.forEach(e=>this.target?.removeEventListener(...e))},this.target=e}add(e,t,n){var r;(r=this.target)==null||r.addEventListener(e,t,n),this.listeners.push([e,t,n])}};function I2e(e){let{EventTarget:t}=t9(e);return e instanceof t?e:i9(e)}function O9(e,t){let n=Math.abs(e.x),r=Math.abs(e.y);return typeof t==`number`?Math.sqrt(n**2+r**2)>t:`x`in t&&`y`in t?n>t.x&&r>t.y:`x`in t?n>t.x:`y`in t?r>t.y:!1}var k9;(function(e){e.Click=`click`,e.DragStart=`dragstart`,e.Keydown=`keydown`,e.ContextMenu=`contextmenu`,e.Resize=`resize`,e.SelectionChange=`selectionchange`,e.VisibilityChange=`visibilitychange`})(k9||={});function L2e(e){e.preventDefault()}function R2e(e){e.stopPropagation()}var A9;(function(e){e.Space=`Space`,e.Down=`ArrowDown`,e.Right=`ArrowRight`,e.Left=`ArrowLeft`,e.Up=`ArrowUp`,e.Esc=`Escape`,e.Enter=`Enter`,e.Tab=`Tab`})(A9||={});var z2e={start:[A9.Space,A9.Enter],cancel:[A9.Esc],end:[A9.Space,A9.Enter,A9.Tab]},B2e=(e,t)=>{let{currentCoordinates:n}=t;switch(e.code){case A9.Right:return{...n,x:n.x+25};case A9.Left:return{...n,x:n.x-25};case A9.Down:return{...n,y:n.y+25};case A9.Up:return{...n,y:n.y-25}}},j9=class{constructor(e){this.props=void 0,this.autoScrollEnabled=!1,this.referenceCoordinates=void 0,this.listeners=void 0,this.windowListeners=void 0,this.props=e;let{event:{target:t}}=e;this.props=e,this.listeners=new D9(i9(t)),this.windowListeners=new D9(t9(t)),this.handleKeyDown=this.handleKeyDown.bind(this),this.handleCancel=this.handleCancel.bind(this),this.attach()}attach(){this.handleStart(),this.windowListeners.add(k9.Resize,this.handleCancel),this.windowListeners.add(k9.VisibilityChange,this.handleCancel),setTimeout(()=>this.listeners.add(k9.Keydown,this.handleKeyDown))}handleStart(){let{activeNode:e,onStart:t}=this.props,n=e.node.current;n&&P2e(n),t(b9)}handleKeyDown(e){if(h9(e)){let{active:t,context:n,options:r}=this.props,{keyboardCodes:i=z2e,coordinateGetter:a=B2e,scrollBehavior:o=`smooth`}=r,{code:s}=e;if(i.end.includes(s)){this.handleEnd(e);return}if(i.cancel.includes(s)){this.handleCancel(e);return}let{collisionRect:c}=n.current,l=c?{x:c.left,y:c.top}:b9;this.referenceCoordinates||=l;let u=a(e,{active:t,context:n.current,currentCoordinates:l});if(u){let t=m9(u,l),r={x:0,y:0},{scrollableAncestors:i}=n.current;for(let n of i){let i=e.code,{isTop:a,isRight:s,isLeft:c,isBottom:l,maxScroll:d,minScroll:f}=D2e(n),p=A2e(n),m={x:Math.min(i===A9.Right?p.right-p.width/2:p.right,Math.max(i===A9.Right?p.left:p.left+p.width/2,u.x)),y:Math.min(i===A9.Down?p.bottom-p.height/2:p.bottom,Math.max(i===A9.Down?p.top:p.top+p.height/2,u.y))},h=i===A9.Right&&!s||i===A9.Left&&!c,g=i===A9.Down&&!l||i===A9.Up&&!a;if(h&&m.x!==u.x){let e=n.scrollLeft+t.x,a=i===A9.Right&&e<=d.x||i===A9.Left&&e>=f.x;if(a&&!t.y){n.scrollTo({left:e,behavior:o});return}a?r.x=n.scrollLeft-e:r.x=i===A9.Right?n.scrollLeft-d.x:n.scrollLeft-f.x,r.x&&n.scrollBy({left:-r.x,behavior:o});break}else if(g&&m.y!==u.y){let e=n.scrollTop+t.y,a=i===A9.Down&&e<=d.y||i===A9.Up&&e>=f.y;if(a&&!t.x){n.scrollTo({top:e,behavior:o});return}a?r.y=n.scrollTop-e:r.y=i===A9.Down?n.scrollTop-d.y:n.scrollTop-f.y,r.y&&n.scrollBy({top:-r.y,behavior:o});break}}this.handleMove(e,p9(m9(u,this.referenceCoordinates),r))}}}handleMove(e,t){let{onMove:n}=this.props;e.preventDefault(),n(t)}handleEnd(e){let{onEnd:t}=this.props;e.preventDefault(),this.detach(),t()}handleCancel(e){let{onCancel:t}=this.props;e.preventDefault(),this.detach(),t()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll()}};j9.activators=[{eventName:`onKeyDown`,handler:(e,t,n)=>{let{keyboardCodes:r=z2e,onActivation:i}=t,{active:a}=n,{code:o}=e.nativeEvent;if(r.start.includes(o)){let t=a.activatorNode.current;return t&&e.target!==t?!1:(e.preventDefault(),i?.({event:e.nativeEvent}),!0)}return!1}}];function V2e(e){return!!(e&&`distance`in e)}function H2e(e){return!!(e&&`delay`in e)}var M9=class{constructor(e,t,n){n===void 0&&(n=I2e(e.event.target)),this.props=void 0,this.events=void 0,this.autoScrollEnabled=!0,this.document=void 0,this.activated=!1,this.initialCoordinates=void 0,this.timeoutId=null,this.listeners=void 0,this.documentListeners=void 0,this.windowListeners=void 0,this.props=e,this.events=t;let{event:r}=e,{target:i}=r;this.props=e,this.events=t,this.document=i9(i),this.documentListeners=new D9(this.document),this.listeners=new D9(n),this.windowListeners=new D9(t9(i)),this.initialCoordinates=g9(r)??b9,this.handleStart=this.handleStart.bind(this),this.handleMove=this.handleMove.bind(this),this.handleEnd=this.handleEnd.bind(this),this.handleCancel=this.handleCancel.bind(this),this.handleKeydown=this.handleKeydown.bind(this),this.removeTextSelection=this.removeTextSelection.bind(this),this.attach()}attach(){let{events:e,props:{options:{activationConstraint:t,bypassActivationConstraint:n}}}=this;if(this.listeners.add(e.move.name,this.handleMove,{passive:!1}),this.listeners.add(e.end.name,this.handleEnd),e.cancel&&this.listeners.add(e.cancel.name,this.handleCancel),this.windowListeners.add(k9.Resize,this.handleCancel),this.windowListeners.add(k9.DragStart,L2e),this.windowListeners.add(k9.VisibilityChange,this.handleCancel),this.windowListeners.add(k9.ContextMenu,L2e),this.documentListeners.add(k9.Keydown,this.handleKeydown),t){if(n!=null&&n({event:this.props.event,activeNode:this.props.activeNode,options:this.props.options}))return this.handleStart();if(H2e(t)){this.timeoutId=setTimeout(this.handleStart,t.delay),this.handlePending(t);return}if(V2e(t)){this.handlePending(t);return}}this.handleStart()}detach(){this.listeners.removeAll(),this.windowListeners.removeAll(),setTimeout(this.documentListeners.removeAll,50),this.timeoutId!==null&&(clearTimeout(this.timeoutId),this.timeoutId=null)}handlePending(e,t){let{active:n,onPending:r}=this.props;r(n,e,this.initialCoordinates,t)}handleStart(){let{initialCoordinates:e}=this,{onStart:t}=this.props;e&&(this.activated=!0,this.documentListeners.add(k9.Click,R2e,{capture:!0}),this.removeTextSelection(),this.documentListeners.add(k9.SelectionChange,this.removeTextSelection),t(e))}handleMove(e){let{activated:t,initialCoordinates:n,props:r}=this,{onMove:i,options:{activationConstraint:a}}=r;if(!n)return;let o=g9(e)??b9,s=m9(n,o);if(!t&&a){if(V2e(a)){if(a.tolerance!=null&&O9(s,a.tolerance))return this.handleCancel();if(O9(s,a.distance))return this.handleStart()}if(H2e(a)&&O9(s,a.tolerance))return this.handleCancel();this.handlePending(a,s);return}e.cancelable&&e.preventDefault(),i(o)}handleEnd(){let{onAbort:e,onEnd:t}=this.props;this.detach(),this.activated||e(this.props.active),t()}handleCancel(){let{onAbort:e,onCancel:t}=this.props;this.detach(),this.activated||e(this.props.active),t()}handleKeydown(e){e.code===A9.Esc&&this.handleCancel()}removeTextSelection(){var e;(e=this.document.getSelection())==null||e.removeAllRanges()}},U2e={cancel:{name:`pointercancel`},move:{name:`pointermove`},end:{name:`pointerup`}},N9=class extends M9{constructor(e){let{event:t}=e,n=i9(t.target);super(e,U2e,n)}};N9.activators=[{eventName:`onPointerDown`,handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;return!n.isPrimary||n.button!==0?!1:(r?.({event:n}),!0)}}];var W2e={move:{name:`mousemove`},end:{name:`mouseup`}},G2e;(function(e){e[e.RightClick=2]=`RightClick`})(G2e||={});var K2e=class extends M9{constructor(e){super(e,W2e,i9(e.event.target))}};K2e.activators=[{eventName:`onMouseDown`,handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t;return n.button===G2e.RightClick?!1:(r?.({event:n}),!0)}}];var P9={cancel:{name:`touchcancel`},move:{name:`touchmove`},end:{name:`touchend`}},q2e=class extends M9{constructor(e){super(e,P9)}static setup(){return window.addEventListener(P9.move.name,e,{capture:!1,passive:!1}),function(){window.removeEventListener(P9.move.name,e)};function e(){}}};q2e.activators=[{eventName:`onTouchStart`,handler:(e,t)=>{let{nativeEvent:n}=e,{onActivation:r}=t,{touches:i}=n;return i.length>1?!1:(r?.({event:n}),!0)}}];var F9;(function(e){e[e.Pointer=0]=`Pointer`,e[e.DraggableRect=1]=`DraggableRect`})(F9||={});var I9;(function(e){e[e.TreeOrder=0]=`TreeOrder`,e[e.ReversedTreeOrder=1]=`ReversedTreeOrder`})(I9||={});function J2e(e){let{acceleration:t,activator:n=F9.Pointer,canScroll:r,draggingRect:i,enabled:a,interval:o=5,order:s=I9.TreeOrder,pointerCoordinates:c,scrollableAncestors:l,scrollableAncestorRects:u,delta:d,threshold:f}=e,p=X2e({delta:d,disabled:!a}),[m,h]=R0e(),g=(0,C.useRef)({x:0,y:0}),_=(0,C.useRef)({x:0,y:0}),v=(0,C.useMemo)(()=>{switch(n){case F9.Pointer:return c?{top:c.y,bottom:c.y,left:c.x,right:c.x}:null;case F9.DraggableRect:return i}},[n,i,c]),y=(0,C.useRef)(null),b=(0,C.useCallback)(()=>{let e=y.current;if(!e)return;let t=g.current.x*_.current.x,n=g.current.y*_.current.y;e.scrollBy(t,n)},[]),x=(0,C.useMemo)(()=>s===I9.TreeOrder?[...l].reverse():l,[s,l]);(0,C.useEffect)(()=>{if(!a||!l.length||!v){h();return}for(let e of x){if(r?.(e)===!1)continue;let n=u[l.indexOf(e)];if(!n)continue;let{direction:i,speed:a}=k2e(e,n,v,t,f);for(let e of[`x`,`y`])p[e][i[e]]||(a[e]=0,i[e]=0);if(a.x>0||a.y>0){h(),y.current=e,m(b,o),g.current=a,_.current=i;return}}g.current={x:0,y:0},_.current={x:0,y:0},h()},[t,b,r,h,a,o,JSON.stringify(v),JSON.stringify(p),m,l,x,u,JSON.stringify(f)])}var Y2e={x:{[T9.Backward]:!1,[T9.Forward]:!1},y:{[T9.Backward]:!1,[T9.Forward]:!1}};function X2e(e){let{delta:t,disabled:n}=e,r=u9(t);return c9(e=>{if(n||!r||!e)return Y2e;let i={x:Math.sign(t.x-r.x),y:Math.sign(t.y-r.y)};return{x:{[T9.Backward]:e.x[T9.Backward]||i.x===-1,[T9.Forward]:e.x[T9.Forward]||i.x===1},y:{[T9.Backward]:e.y[T9.Backward]||i.y===-1,[T9.Forward]:e.y[T9.Forward]||i.y===1}}},[n,t,r])}function Z2e(e,t){let n=t==null?void 0:e.get(t),r=n?n.node.current:null;return c9(e=>t==null?null:r??e??null,[r,t])}function Q2e(e,t){return(0,C.useMemo)(()=>e.reduce((e,n)=>{let{sensor:r}=n,i=r.activators.map(e=>({eventName:e.eventName,handler:t(e.handler,n)}));return[...e,...i]},[]),[e,t])}var L9;(function(e){e[e.Always=0]=`Always`,e[e.BeforeDragging=1]=`BeforeDragging`,e[e.WhileDragging=2]=`WhileDragging`})(L9||={});var $2e;(function(e){e.Optimized=`optimized`})($2e||={});var e4e=new Map;function t4e(e,t){let{dragging:n,dependencies:r,config:i}=t,[a,o]=(0,C.useState)(null),{frequency:s,measure:c,strategy:l}=i,u=(0,C.useRef)(e),d=g(),f=s9(d),p=(0,C.useCallback)(function(e){e===void 0&&(e=[]),!f.current&&o(t=>t===null?e:t.concat(e.filter(e=>!t.includes(e))))},[f]),m=(0,C.useRef)(null),h=c9(t=>{if(d&&!n)return e4e;if(!t||t===e4e||u.current!==e||a!=null){let t=new Map;for(let n of e){if(!n)continue;if(a&&a.length>0&&!a.includes(n.id)&&n.rect.current){t.set(n.id,n.rect.current);continue}let e=n.node.current,r=e?new E9(c(e),e):null;n.rect.current=r,r&&t.set(n.id,r)}return t}return t},[e,a,n,d,c]);return(0,C.useEffect)(()=>{u.current=e},[e]),(0,C.useEffect)(()=>{d||p()},[n,d]),(0,C.useEffect)(()=>{a&&a.length>0&&o(null)},[JSON.stringify(a)]),(0,C.useEffect)(()=>{d||typeof s!=`number`||m.current!==null||(m.current=setTimeout(()=>{p(),m.current=null},s))},[s,d,p,...r]),{droppableRects:h,measureDroppableContainers:p,measuringScheduled:a!=null};function g(){switch(l){case L9.Always:return!1;case L9.BeforeDragging:return n;default:return!n}}}function n4e(e,t){return c9(n=>e?n||(typeof t==`function`?t(e):e):null,[t,e])}function r4e(e,t){return n4e(e,t)}function i4e(e){let{callback:t,disabled:n}=e,r=o9(t),i=(0,C.useMemo)(()=>{if(n||typeof window>`u`||window.MutationObserver===void 0)return;let{MutationObserver:e}=window;return new e(r)},[r,n]);return(0,C.useEffect)(()=>()=>i?.disconnect(),[i]),i}function R9(e){let{callback:t,disabled:n}=e,r=o9(t),i=(0,C.useMemo)(()=>{if(n||typeof window>`u`||window.ResizeObserver===void 0)return;let{ResizeObserver:e}=window;return new e(r)},[n]);return(0,C.useEffect)(()=>()=>i?.disconnect(),[i]),i}function a4e(e){return new E9(x9(e),e)}function o4e(e,t,n){t===void 0&&(t=a4e);let[r,i]=(0,C.useState)(null);function a(){i(r=>{if(!e)return null;if(e.isConnected===!1)return r??n??null;let i=t(e);return JSON.stringify(r)===JSON.stringify(i)?r:i})}let o=i4e({callback(t){if(e)for(let n of t){let{type:t,target:r}=n;if(t===`childList`&&r instanceof HTMLElement&&r.contains(e)){a();break}}}}),s=R9({callback:a});return a9(()=>{a(),e?(s?.observe(e),o?.observe(document.body,{childList:!0,subtree:!0})):(s?.disconnect(),o?.disconnect())},[e]),r}function s4e(e){return p2e(e,n4e(e))}var c4e=[];function l4e(e){let t=(0,C.useRef)(e),n=c9(n=>e?n&&n!==c4e&&e&&t.current&&e.parentNode===t.current.parentNode?n:S9(e):c4e,[e]);return(0,C.useEffect)(()=>{t.current=e},[e]),n}function u4e(e){let[t,n]=(0,C.useState)(null),r=(0,C.useRef)(e),i=(0,C.useCallback)(e=>{let t=C9(e.target);t&&n(e=>e?(e.set(t,w9(t)),new Map(e)):null)},[]);return(0,C.useEffect)(()=>{let t=r.current;if(e!==t){a(t);let o=e.map(e=>{let t=C9(e);return t?(t.addEventListener(`scroll`,i,{passive:!0}),[t,w9(t)]):null}).filter(e=>e!=null);n(o.length?new Map(o):null),r.current=e}return()=>{a(e),a(t)};function a(e){e.forEach(e=>{C9(e)?.removeEventListener(`scroll`,i)})}},[i,e]),(0,C.useMemo)(()=>e.length?t?Array.from(t.values()).reduce((e,t)=>p9(e,t),b9):j2e(e):b9,[e,t])}function d4e(e,t){t===void 0&&(t=[]);let n=(0,C.useRef)(null);return(0,C.useEffect)(()=>{n.current=null},t),(0,C.useEffect)(()=>{let t=e!==b9;t&&!n.current&&(n.current=e),!t&&n.current&&(n.current=null)},[e]),n.current?m9(e,n.current):b9}function f4e(e){(0,C.useEffect)(()=>{if(!Q7)return;let t=e.map(e=>{let{sensor:t}=e;return t.setup==null?void 0:t.setup()});return()=>{for(let e of t)e?.()}},e.map(e=>{let{sensor:t}=e;return t}))}function p4e(e,t){return(0,C.useMemo)(()=>e.reduce((e,n)=>{let{eventName:r,handler:i}=n;return e[r]=e=>{i(e,t)},e},{}),[e,t])}function m4e(e){return(0,C.useMemo)(()=>e?b2e(e):null,[e])}var h4e=[];function g4e(e,t){t===void 0&&(t=x9);let[n]=e,r=m4e(n?t9(n):null),[i,a]=(0,C.useState)(h4e);function o(){a(()=>e.length?e.map(e=>E2e(e)?r:new E9(t(e),e)):h4e)}let s=R9({callback:o});return a9(()=>{s?.disconnect(),o(),e.forEach(e=>s?.observe(e))},[e]),i}function _4e(e){if(!e)return null;if(e.children.length>1)return e;let t=e.children[0];return r9(t)?t:e}function v4e(e){let{measure:t}=e,[n,r]=(0,C.useState)(null),i=R9({callback:(0,C.useCallback)(e=>{for(let{target:n}of e)if(r9(n)){r(e=>{let r=t(n);return e?{...e,width:r.width,height:r.height}:r});break}},[t])}),[a,o]=l9((0,C.useCallback)(e=>{let n=_4e(e);i?.disconnect(),n&&i?.observe(n),r(n?t(n):null)},[t,i]));return(0,C.useMemo)(()=>({nodeRef:a,rect:n,setRef:o}),[n,a,o])}var y4e=[{sensor:N9,options:{}},{sensor:j9,options:{}}],b4e={current:{}},z9={draggable:{measure:y2e},droppable:{measure:y2e,strategy:L9.WhileDragging,frequency:$2e.Optimized},dragOverlay:{measure:x9}},B9=class extends Map{get(e){return e==null?void 0:super.get(e)??void 0}toArray(){return Array.from(this.values())}getEnabled(){return this.toArray().filter(e=>{let{disabled:t}=e;return!t})}getNodeFor(e){return this.get(e)?.node.current??void 0}},x4e={activatorEvent:null,active:null,activeNode:null,activeNodeRect:null,collisions:null,containerNodeRect:null,draggableNodes:new Map,droppableRects:new Map,droppableContainers:new B9,over:null,dragOverlay:{nodeRef:{current:null},rect:null,setRef:y9},scrollableAncestors:[],scrollableAncestorRects:[],measuringConfiguration:z9,measureDroppableContainers:y9,windowRect:null,measuringScheduled:!1},S4e={activatorEvent:null,activators:[],active:null,activeNodeRect:null,ariaDescribedById:{draggable:``},dispatch:y9,draggableNodes:new Map,over:null,measureDroppableContainers:y9},V9=(0,C.createContext)(S4e),C4e=(0,C.createContext)(x4e);function w4e(){return{draggable:{active:null,initialCoordinates:{x:0,y:0},nodes:new Map,translate:{x:0,y:0}},droppable:{containers:new B9}}}function T4e(e,t){switch(t.type){case v9.DragStart:return{...e,draggable:{...e.draggable,initialCoordinates:t.initialCoordinates,active:t.active}};case v9.DragMove:return e.draggable.active==null?e:{...e,draggable:{...e.draggable,translate:{x:t.coordinates.x-e.draggable.initialCoordinates.x,y:t.coordinates.y-e.draggable.initialCoordinates.y}}};case v9.DragEnd:case v9.DragCancel:return{...e,draggable:{...e.draggable,active:null,initialCoordinates:{x:0,y:0},translate:{x:0,y:0}}};case v9.RegisterDroppable:{let{element:n}=t,{id:r}=n,i=new B9(e.droppable.containers);return i.set(r,n),{...e,droppable:{...e.droppable,containers:i}}}case v9.SetDroppableDisabled:{let{id:n,key:r,disabled:i}=t,a=e.droppable.containers.get(n);if(!a||r!==a.key)return e;let o=new B9(e.droppable.containers);return o.set(n,{...a,disabled:i}),{...e,droppable:{...e.droppable,containers:o}}}case v9.UnregisterDroppable:{let{id:n,key:r}=t,i=e.droppable.containers.get(n);if(!i||r!==i.key)return e;let a=new B9(e.droppable.containers);return a.delete(n),{...e,droppable:{...e.droppable,containers:a}}}default:return e}}function E4e(e){let{disabled:t}=e,{active:n,activatorEvent:r,draggableNodes:i}=(0,C.useContext)(V9),a=u9(r),o=u9(n?.id);return(0,C.useEffect)(()=>{if(!t&&!r&&a&&o!=null){if(!h9(a)||document.activeElement===a.target)return;let e=i.get(o);if(!e)return;let{activatorNode:t,node:n}=e;if(!t.current&&!n.current)return;requestAnimationFrame(()=>{for(let e of[t.current,n.current]){if(!e)continue;let t=U0e(e);if(t){t.focus();break}}})}},[r,t,i,o,a]),null}function D4e(e,t){let{transform:n,...r}=t;return e!=null&&e.length?e.reduce((e,t)=>t({transform:e,...r}),n):n}function O4e(e){return(0,C.useMemo)(()=>({draggable:{...z9.draggable,...e?.draggable},droppable:{...z9.droppable,...e?.droppable},dragOverlay:{...z9.dragOverlay,...e?.dragOverlay}}),[e?.draggable,e?.droppable,e?.dragOverlay])}function k4e(e){let{activeNode:t,measure:n,initialRect:r,config:i=!0}=e,a=(0,C.useRef)(!1),{x:o,y:s}=typeof i==`boolean`?{x:i,y:i}:i;a9(()=>{if(!o&&!s||!t){a.current=!1;return}if(a.current||!r)return;let e=t?.node.current;if(!e||e.isConnected===!1)return;let i=p2e(n(e),r);if(o||(i.x=0),s||(i.y=0),a.current=!0,Math.abs(i.x)>0||Math.abs(i.y)>0){let t=C2e(e);t&&t.scrollBy({top:i.y,left:i.x})}},[t,o,s,r,n])}var A4e=(0,C.createContext)({...b9,scaleX:1,scaleY:1}),H9;(function(e){e[e.Uninitialized=0]=`Uninitialized`,e[e.Initializing=1]=`Initializing`,e[e.Initialized=2]=`Initialized`})(H9||={});var j4e=(0,C.memo)(function(e){let{id:t,accessibility:n,autoScroll:r=!0,children:i,sensors:a=y4e,collisionDetection:o=d2e,measuring:s,modifiers:c,...l}=e,[u,d]=(0,C.useReducer)(T4e,void 0,w4e),[f,p]=X0e(),[m,h]=(0,C.useState)(H9.Uninitialized),g=m===H9.Initialized,{draggable:{active:_,nodes:v,translate:y},droppable:{containers:b}}=u,x=_==null?null:v.get(_),S=(0,C.useRef)({initial:null,translated:null}),w=(0,C.useMemo)(()=>_==null?null:{id:_,data:x?.data??b4e,rect:S},[_,x]),T=(0,C.useRef)(null),[E,D]=(0,C.useState)(null),[O,k]=(0,C.useState)(null),A=s9(l,Object.values(l)),j=f9(`DndDescribedBy`,t),M=(0,C.useMemo)(()=>b.getEnabled(),[b]),N=O4e(s),{droppableRects:P,measureDroppableContainers:F,measuringScheduled:I}=t4e(M,{dragging:g,dependencies:[y.x,y.y],config:N.droppable}),L=Z2e(v,_),R=(0,C.useMemo)(()=>O?g9(O):null,[O]),ee=Te(),z=r4e(L,N.draggable.measure);k4e({activeNode:_==null?null:v.get(_),config:ee.layoutShiftCompensation,initialRect:z,measure:N.draggable.measure});let te=o4e(L,N.draggable.measure,z),B=o4e(L?L.parentElement:null),V=(0,C.useRef)({activatorEvent:null,active:null,activeNode:L,collisionRect:null,collisions:null,droppableRects:P,draggableNodes:v,draggingNode:null,draggingNodeRect:null,droppableContainers:b,over:null,scrollableAncestors:[],scrollAdjustedTranslate:null}),ne=b.getNodeFor(V.current.over?.id),re=v4e({measure:N.dragOverlay.measure}),ie=re.nodeRef.current??L,ae=g?re.rect??te:null,oe=!!(re.nodeRef.current&&re.rect),se=s4e(oe?null:te),ce=m4e(ie?t9(ie):null),le=l4e(g?ne??L:null),ue=g4e(le),H=D4e(c,{transform:{x:y.x-se.x,y:y.y-se.y,scaleX:1,scaleY:1},activatorEvent:O,active:w,activeNodeRect:te,containerNodeRect:B,draggingNodeRect:ae,over:V.current.over,overlayNodeRect:re.rect,scrollableAncestors:le,scrollableAncestorRects:ue,windowRect:ce}),de=R?p9(R,y):null,fe=u4e(le),U=d4e(fe),pe=d4e(fe,[te]),me=p9(H,U),W=ae?h2e(ae,H):null,he=w&&W?o({active:w,collisionRect:W,droppableRects:P,droppableContainers:M,pointerCoordinates:de}):null,ge=o2e(he,`id`),[_e,ve]=(0,C.useState)(null),ye=f2e(oe?H:p9(H,pe),_e?.rect??null,te),be=(0,C.useRef)(null),xe=(0,C.useCallback)((e,t)=>{let{sensor:n,options:r}=t;if(T.current==null)return;let i=v.get(T.current);if(!i)return;let a=e.nativeEvent;be.current=new n({active:T.current,activeNode:i,event:a,options:r,context:V,onAbort(e){if(!v.get(e))return;let{onDragAbort:t}=A.current,n={id:e};t?.(n),f({type:`onDragAbort`,event:n})},onPending(e,t,n,r){if(!v.get(e))return;let{onDragPending:i}=A.current,a={id:e,constraint:t,initialCoordinates:n,offset:r};i?.(a),f({type:`onDragPending`,event:a})},onStart(e){let t=T.current;if(t==null)return;let n=v.get(t);if(!n)return;let{onDragStart:r}=A.current,i={activatorEvent:a,active:{id:t,data:n.data,rect:S}};(0,ya.unstable_batchedUpdates)(()=>{r?.(i),h(H9.Initializing),d({type:v9.DragStart,initialCoordinates:e,active:t}),f({type:`onDragStart`,event:i}),D(be.current),k(a)})},onMove(e){d({type:v9.DragMove,coordinates:e})},onEnd:o(v9.DragEnd),onCancel:o(v9.DragCancel)});function o(e){return async function(){let{active:t,collisions:n,over:r,scrollAdjustedTranslate:i}=V.current,o=null;if(t&&i){let{cancelDrop:s}=A.current;o={activatorEvent:a,active:t,collisions:n,delta:i,over:r},e===v9.DragEnd&&typeof s==`function`&&await Promise.resolve(s(o))&&(e=v9.DragCancel)}T.current=null,(0,ya.unstable_batchedUpdates)(()=>{d({type:e}),h(H9.Uninitialized),ve(null),D(null),k(null),be.current=null;let t=e===v9.DragEnd?`onDragEnd`:`onDragCancel`;if(o){let e=A.current[t];e?.(o),f({type:t,event:o})}})}}},[v]),Se=Q2e(a,(0,C.useCallback)((e,t)=>(n,r)=>{let i=n.nativeEvent,a=v.get(r);if(T.current!==null||!a||i.dndKit||i.defaultPrevented)return;let o={active:a};e(n,t.options,o)===!0&&(i.dndKit={capturedBy:t.sensor},T.current=r,xe(n,t))},[v,xe]));f4e(a),a9(()=>{te&&m===H9.Initializing&&h(H9.Initialized)},[te,m]),(0,C.useEffect)(()=>{let{onDragMove:e}=A.current,{active:t,activatorEvent:n,collisions:r,over:i}=V.current;if(!t||!n)return;let a={active:t,activatorEvent:n,collisions:r,delta:{x:me.x,y:me.y},over:i};(0,ya.unstable_batchedUpdates)(()=>{e?.(a),f({type:`onDragMove`,event:a})})},[me.x,me.y]),(0,C.useEffect)(()=>{let{active:e,activatorEvent:t,collisions:n,droppableContainers:r,scrollAdjustedTranslate:i}=V.current;if(!e||T.current==null||!t||!i)return;let{onDragOver:a}=A.current,o=r.get(ge),s=o&&o.rect.current?{id:o.id,rect:o.rect.current,data:o.data,disabled:o.disabled}:null,c={active:e,activatorEvent:t,collisions:n,delta:{x:i.x,y:i.y},over:s};(0,ya.unstable_batchedUpdates)(()=>{ve(s),a?.(c),f({type:`onDragOver`,event:c})})},[ge]),a9(()=>{V.current={activatorEvent:O,active:w,activeNode:L,collisionRect:W,collisions:he,droppableRects:P,draggableNodes:v,draggingNode:ie,draggingNodeRect:ae,droppableContainers:b,over:_e,scrollableAncestors:le,scrollAdjustedTranslate:me},S.current={initial:ae,translated:W}},[w,L,he,W,v,ie,ae,P,b,_e,le,me]),J2e({...ee,delta:y,draggingRect:W,pointerCoordinates:de,scrollableAncestors:le,scrollableAncestorRects:ue});let Ce=(0,C.useMemo)(()=>({active:w,activeNode:L,activeNodeRect:te,activatorEvent:O,collisions:he,containerNodeRect:B,dragOverlay:re,draggableNodes:v,droppableContainers:b,droppableRects:P,over:_e,measureDroppableContainers:F,scrollableAncestors:le,scrollableAncestorRects:ue,measuringConfiguration:N,measuringScheduled:I,windowRect:ce}),[w,L,te,O,he,B,re,v,b,P,_e,F,le,ue,N,I,ce]),we=(0,C.useMemo)(()=>({activatorEvent:O,activators:Se,active:w,activeNodeRect:te,ariaDescribedById:{draggable:j},dispatch:d,draggableNodes:v,over:_e,measureDroppableContainers:F}),[O,Se,w,te,d,j,v,_e,F]);return C.createElement(J0e.Provider,{value:p},C.createElement(V9.Provider,{value:we},C.createElement(C4e.Provider,{value:Ce},C.createElement(A4e.Provider,{value:ye},i)),C.createElement(E4e,{disabled:n?.restoreFocus===!1})),C.createElement($0e,{...n,hiddenTextDescribedById:j}));function Te(){let e=E?.autoScrollEnabled===!1,t=typeof r==`object`?r.enabled===!1:r===!1,n=g&&!e&&!t;return typeof r==`object`?{...r,enabled:n}:{enabled:n}}}),M4e=(0,C.createContext)(null),N4e=`button`,P4e=`Draggable`;function F4e(e){let{id:t,data:n,disabled:r=!1,attributes:i}=e,a=f9(P4e),{activators:o,activatorEvent:s,active:c,activeNodeRect:l,ariaDescribedById:u,draggableNodes:d,over:f}=(0,C.useContext)(V9),{role:p=N4e,roleDescription:m=`draggable`,tabIndex:h=0}=i??{},g=c?.id===t,_=(0,C.useContext)(g?A4e:M4e),[v,y]=l9(),[b,x]=l9(),S=p4e(o,t),w=s9(n);return a9(()=>(d.set(t,{id:t,key:a,node:v,activatorNode:b,data:w}),()=>{let e=d.get(t);e&&e.key===a&&d.delete(t)}),[d,t]),{active:c,activatorEvent:s,activeNodeRect:l,attributes:(0,C.useMemo)(()=>({role:p,tabIndex:h,"aria-disabled":r,"aria-pressed":g&&p===N4e?!0:void 0,"aria-roledescription":m,"aria-describedby":u.draggable}),[r,p,h,g,m,u.draggable]),isDragging:g,listeners:r?void 0:S,node:v,over:f,setNodeRef:y,setActivatorNodeRef:x,transform:_}}function I4e(){return(0,C.useContext)(C4e)}var L4e=`Droppable`,R4e={timeout:25};function z4e(e){let{data:t,disabled:n=!1,id:r,resizeObserverConfig:i}=e,a=f9(L4e),{active:o,dispatch:s,over:c,measureDroppableContainers:l}=(0,C.useContext)(V9),u=(0,C.useRef)({disabled:n}),d=(0,C.useRef)(!1),f=(0,C.useRef)(null),p=(0,C.useRef)(null),{disabled:m,updateMeasurementsFor:h,timeout:g}={...R4e,...i},_=s9(h??r),v=R9({callback:(0,C.useCallback)(()=>{if(!d.current){d.current=!0;return}p.current!=null&&clearTimeout(p.current),p.current=setTimeout(()=>{l(Array.isArray(_.current)?_.current:[_.current]),p.current=null},g)},[g]),disabled:m||!o}),[y,b]=l9((0,C.useCallback)((e,t)=>{v&&(t&&(v.unobserve(t),d.current=!1),e&&v.observe(e))},[v])),x=s9(t);return(0,C.useEffect)(()=>{!v||!y.current||(v.disconnect(),d.current=!1,v.observe(y.current))},[y,v]),(0,C.useEffect)(()=>(s({type:v9.RegisterDroppable,element:{id:r,key:a,disabled:n,node:y,rect:f,data:x}}),()=>s({type:v9.UnregisterDroppable,key:a,id:r})),[r]),(0,C.useEffect)(()=>{n!==u.current.disabled&&(s({type:v9.SetDroppableDisabled,id:r,key:a,disabled:n}),u.current.disabled=n)},[r,a,n,s]),{active:o,rect:f,isOver:c?.id===r,node:y,over:c,setNodeRef:b}}function U9(e,t,n){let r=e.slice();return r.splice(n<0?r.length+n:n,0,r.splice(t,1)[0]),r}function B4e(e,t){return e.reduce((e,n,r)=>{let i=t.get(n);return i&&(e[r]=i),e},Array(e.length))}function W9(e){return e!==null&&e>=0}function V4e(e,t){if(e===t)return!0;if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!==t[n])return!1;return!0}function H4e(e){return typeof e==`boolean`?{draggable:e,droppable:e}:e}var U4e=e=>{let{rects:t,activeIndex:n,overIndex:r,index:i}=e,a=U9(t,r,n),o=t[i],s=a[i];return!s||!o?null:{x:s.left-o.left,y:s.top-o.top,scaleX:s.width/o.width,scaleY:s.height/o.height}},G9={scaleX:1,scaleY:1},W4e=e=>{let{activeIndex:t,activeNodeRect:n,index:r,rects:i,overIndex:a}=e,o=i[t]??n;if(!o)return null;if(r===t){let e=i[a];return e?{x:0,y:t<a?e.top+e.height-(o.top+o.height):e.top-o.top,...G9}:null}let s=G4e(i,r,t);return r>t&&r<=a?{x:0,y:-o.height-s,...G9}:r<t&&r>=a?{x:0,y:o.height+s,...G9}:{x:0,y:0,...G9}};function G4e(e,t,n){let r=e[t],i=e[t-1],a=e[t+1];return r?n<t?i?r.top-(i.top+i.height):a?a.top-(r.top+r.height):0:a?a.top-(r.top+r.height):i?r.top-(i.top+i.height):0:0}var K4e=`Sortable`,q4e=C.createContext({activeIndex:-1,containerId:K4e,disableTransforms:!1,items:[],overIndex:-1,useDragOverlay:!1,sortedRects:[],strategy:U4e,disabled:{draggable:!1,droppable:!1}});function J4e(e){let{children:t,id:n,items:r,strategy:i=U4e,disabled:a=!1}=e,{active:o,dragOverlay:s,droppableRects:c,over:l,measureDroppableContainers:u}=I4e(),d=f9(K4e,n),f=s.rect!==null,p=(0,C.useMemo)(()=>r.map(e=>typeof e==`object`&&`id`in e?e.id:e),[r]),m=o!=null,h=o?p.indexOf(o.id):-1,g=l?p.indexOf(l.id):-1,_=(0,C.useRef)(p),v=!V4e(p,_.current),y=g!==-1&&h===-1||v,b=H4e(a);a9(()=>{v&&m&&u(p)},[v,p,m,u]),(0,C.useEffect)(()=>{_.current=p},[p]);let x=(0,C.useMemo)(()=>({activeIndex:h,containerId:d,disabled:b,disableTransforms:y,items:p,overIndex:g,useDragOverlay:f,sortedRects:B4e(p,c),strategy:i}),[h,d,b.draggable,b.droppable,y,p,g,c,f,i]);return C.createElement(q4e.Provider,{value:x},t)}var Y4e=e=>{let{id:t,items:n,activeIndex:r,overIndex:i}=e;return U9(n,r,i).indexOf(t)},X4e=e=>{let{containerId:t,isSorting:n,wasDragging:r,index:i,items:a,newIndex:o,previousItems:s,previousContainerId:c,transition:l}=e;return!l||!r||s!==a&&i===o?!1:n?!0:o!==i&&t===c},Z4e={duration:200,easing:`ease`},Q4e=`transform`,$4e=_9.Transition.toString({property:Q4e,duration:0,easing:`linear`}),e3e={roleDescription:`sortable`};function t3e(e){let{disabled:t,index:n,node:r,rect:i}=e,[a,o]=(0,C.useState)(null),s=(0,C.useRef)(n);return a9(()=>{if(!t&&n!==s.current&&r.current){let e=i.current;if(e){let t=x9(r.current,{ignoreTransform:!0}),n={x:e.left-t.left,y:e.top-t.top,scaleX:e.width/t.width,scaleY:e.height/t.height};(n.x||n.y)&&o(n)}}n!==s.current&&(s.current=n)},[t,n,r,i]),(0,C.useEffect)(()=>{a&&o(null)},[a]),a}function n3e(e){let{animateLayoutChanges:t=X4e,attributes:n,disabled:r,data:i,getNewIndex:a=Y4e,id:o,strategy:s,resizeObserverConfig:c,transition:l=Z4e}=e,{items:u,containerId:d,activeIndex:f,disabled:p,disableTransforms:m,sortedRects:h,overIndex:g,useDragOverlay:_,strategy:v}=(0,C.useContext)(q4e),y=r3e(r,p),b=u.indexOf(o),x=(0,C.useMemo)(()=>({sortable:{containerId:d,index:b,items:u},...i}),[d,i,b,u]),S=(0,C.useMemo)(()=>u.slice(u.indexOf(o)),[u,o]),{rect:w,node:T,isOver:E,setNodeRef:D}=z4e({id:o,data:x,disabled:y.droppable,resizeObserverConfig:{updateMeasurementsFor:S,...c}}),{active:O,activatorEvent:k,activeNodeRect:A,attributes:j,setNodeRef:M,listeners:N,isDragging:P,over:F,setActivatorNodeRef:I,transform:L}=F4e({id:o,data:x,attributes:{...e3e,...n},disabled:y.draggable}),R=I0e(D,M),ee=!!O,z=ee&&!m&&W9(f)&&W9(g),te=!_&&P,B=z?(te&&z?L:null)??(s??v)({rects:h,activeNodeRect:A,activeIndex:f,overIndex:g,index:b}):null,V=W9(f)&&W9(g)?a({id:o,items:u,activeIndex:f,overIndex:g}):b,ne=O?.id,re=(0,C.useRef)({activeId:ne,items:u,newIndex:V,containerId:d}),ie=u!==re.current.items,ae=t({active:O,containerId:d,isDragging:P,isSorting:ee,id:o,index:b,items:u,newIndex:re.current.newIndex,previousItems:re.current.items,previousContainerId:re.current.containerId,transition:l,wasDragging:re.current.activeId!=null}),oe=t3e({disabled:!ae,index:b,node:T,rect:w});return(0,C.useEffect)(()=>{ee&&re.current.newIndex!==V&&(re.current.newIndex=V),d!==re.current.containerId&&(re.current.containerId=d),u!==re.current.items&&(re.current.items=u)},[ee,V,d,u]),(0,C.useEffect)(()=>{if(ne===re.current.activeId)return;if(ne!=null&&re.current.activeId==null){re.current.activeId=ne;return}let e=setTimeout(()=>{re.current.activeId=ne},50);return()=>clearTimeout(e)},[ne]),{active:O,activeIndex:f,attributes:j,data:x,rect:w,index:b,newIndex:V,items:u,isOver:E,isSorting:ee,isDragging:P,listeners:N,node:T,overIndex:g,over:F,setNodeRef:R,setActivatorNodeRef:I,setDroppableNodeRef:D,setDraggableNodeRef:M,transform:oe??B,transition:se()};function se(){if(oe||ie&&re.current.newIndex===b)return $4e;if(!(te&&!h9(k)||!l)&&(ee||ae))return _9.Transition.toString({...l,property:Q4e})}}function r3e(e,t){return typeof e==`boolean`?{draggable:e,droppable:!1}:{draggable:e?.draggable??t.draggable,droppable:e?.droppable??t.droppable}}function K9(e){if(!e)return!1;let t=e.data.current;return!!(t&&`sortable`in t&&typeof t.sortable==`object`&&`containerId`in t.sortable&&`items`in t.sortable&&`index`in t.sortable)}var i3e=[A9.Down,A9.Right,A9.Up,A9.Left],a3e=(e,t)=>{let{context:{active:n,collisionRect:r,droppableRects:i,droppableContainers:a,over:o,scrollableAncestors:s}}=t;if(i3e.includes(e.code)){if(e.preventDefault(),!n||!r)return;let t=[];a.getEnabled().forEach(n=>{if(!n||n!=null&&n.disabled)return;let a=i.get(n.id);if(a)switch(e.code){case A9.Down:r.top<a.top&&t.push(n);break;case A9.Up:r.top>a.top&&t.push(n);break;case A9.Left:r.left>a.left&&t.push(n);break;case A9.Right:r.left<a.left&&t.push(n);break}});let c=l2e({active:n,collisionRect:r,droppableRects:i,droppableContainers:t,pointerCoordinates:null}),l=o2e(c,`id`);if(l===o?.id&&c.length>1&&(l=c[1].id),l!=null){let e=a.get(n.id),t=a.get(l),o=t?i.get(t.id):null,c=t?.node.current;if(c&&o&&e&&t){let n=S9(c).some((e,t)=>s[t]!==e),i=o3e(e,t),a=s3e(e,t),l=n||!i?{x:0,y:0}:{x:a?r.width-o.width:0,y:a?r.height-o.height:0},u={x:o.left,y:o.top};return l.x&&l.y?u:m9(u,l)}}}};function o3e(e,t){return!K9(e)||!K9(t)?!1:e.data.current.sortable.containerId===t.data.current.sortable.containerId}function s3e(e,t){return!K9(e)||!K9(t)||!o3e(e,t)?!1:e.data.current.sortable.index<t.data.current.sortable.index}var c3e=({bridge:e,index:t})=>{let{attributes:n,listeners:r,setNodeRef:i,transform:a,transition:o,isDragging:s}=n3e({id:e.id}),[c,l]=(0,C.useState)(!1);return(0,C.useEffect)(()=>{vE(e.id).then(l)},[e.id]),(0,G.jsx)(gv,{ref:i,style:{transform:_9.Transform.toString(a),transition:o,opacity:s?.5:1},variant:`outlined`,sx:{cursor:`grab`,"&:active":{cursor:`grabbing`},bgcolor:s?`action.selected`:`background.paper`,width:`fit-content`},children:(0,G.jsxs)(yv,{sx:{display:`flex`,alignItems:`center`,gap:1.5,py:1,"&:last-child":{pb:1}},children:[(0,G.jsx)(Z,{...n,...r,sx:{display:`flex`,alignItems:`center`,color:`text.secondary`},children:(0,G.jsx)(Ehe,{})}),(0,G.jsx)(Dv,{label:t+1,size:`small`,color:`primary`,sx:{minWidth:32,fontWeight:`bold`}}),c?(0,G.jsx)(Z,{component:`img`,src:yE(e.id),alt:e.name,sx:{width:40,height:40,borderRadius:`50%`,objectFit:`cover`,boxShadow:2}}):(0,G.jsx)(Tb,{sx:{bgcolor:TE(e),width:40,height:40,boxShadow:2},children:(0,G.jsx)(wE(e),{sx:{fontSize:24}})}),(0,G.jsxs)(Z,{sx:{flex:1},children:[(0,G.jsx)(Q,{variant:`subtitle1`,fontWeight:500,children:e.name}),(0,G.jsxs)(Q,{variant:`caption`,color:`text.secondary`,children:[`Port: `,e.port,` • Priority: `,e.priority??100]})]})]})})},l3e=()=>{let{t:e}=ms(),t=Jv(),{content:n,isLoading:r}=FT(),i=Wme(),[a,o]=(0,C.useState)([]),[s,c]=(0,C.useState)(!1);(0,C.useEffect)(()=>{n&&(o([...n].sort((e,t)=>(e.priority??100)-(t.priority??100))),c(!1))},[n]);let l=t2e(e2e(N9),e2e(j9,{coordinateGetter:a3e})),u=(0,C.useCallback)(e=>{let{active:t,over:n}=e;n&&t.id!==n.id&&(o(e=>U9(e,e.findIndex(e=>e.id===t.id),e.findIndex(e=>e.id===n.id))),c(!0))},[]),d=(0,C.useCallback)(async()=>{let n=a.map((e,t)=>({id:e.id,priority:(t+1)*10}));try{await i(n),t.show({message:e(`startup.saveSuccess`),severity:`success`}),c(!1)}catch(n){t.show({message:n instanceof Error?n.message:e(`startup.saveFailed`),severity:`error`})}},[a,i,t,e]),f=(0,C.useMemo)(()=>a.map(e=>e.id),[a]);return r?(0,G.jsxs)(Q,{children:[e(`common.loading`),`...`]}):(0,G.jsxs)(Uv,{spacing:3,children:[(0,G.jsx)(qv,{items:[{name:e(`nav.bridges`),to:J9.bridges},{name:e(`startup.title`),to:J9.startup}]}),(0,G.jsxs)(Z,{display:`flex`,alignItems:`center`,gap:2,children:[(0,G.jsx)(dv,{color:`primary`,fontSize:`large`}),(0,G.jsxs)(Z,{children:[(0,G.jsx)(Q,{variant:`h5`,fontWeight:600,children:e(`startup.title`)}),(0,G.jsx)(Q,{variant:`body2`,color:`text.secondary`,children:e(`startup.description`)})]})]}),s&&(0,G.jsx)(Gh,{severity:`info`,action:(0,G.jsx)(hv,{color:`inherit`,size:`small`,startIcon:(0,G.jsx)(cE,{}),onClick:d,children:e(`startup.saveChanges`)}),children:e(`startup.unsavedChanges`)}),(0,G.jsx)(j4e,{sensors:l,collisionDetection:c2e,onDragEnd:u,children:(0,G.jsx)(J4e,{items:f,strategy:W4e,children:(0,G.jsx)(Uv,{spacing:1,children:a.map((e,t)=>(0,G.jsx)(c3e,{bridge:e,index:t},e.id))})})}),a.length===0&&(0,G.jsx)(Q,{color:`text.secondary`,textAlign:`center`,py:4,children:e(`startup.noBridges`)}),s&&a.length>0&&(0,G.jsx)(Z,{display:`flex`,justifyContent:`flex-end`,children:(0,G.jsx)(hv,{variant:`contained`,startIcon:(0,G.jsx)(cE,{}),onClick:d,children:e(`startup.saveOrder`)})})]})},q9=`https://riddix.github.io/home-assistant-matter-hub`,J9={dashboard:`/`,bridges:`/bridges`,bridge:e=>`/bridges/${e}`,createBridge:`/bridges/create`,areaSetup:`/bridges/area-setup`,editBridge:e=>`/bridges/${e}/edit`,devices:`/devices`,networkMap:`/network-map`,health:`/health`,labels:`/labels`,lockCredentials:`/lock-credentials`,plugins:`/plugins`,settings:`/settings`,startup:`/startup`,githubRepository:`https://github.com/riddix/home-assistant-matter-hub/`,documentation:q9,support:`${q9}/support`,faq:{multiFabric:`${q9}/connect-multiple-fabrics`,bridgeConfig:`${q9}/bridge-configuration`}},u3e=[{path:``,element:(0,G.jsx)(Sre,{}),children:[{path:``,element:(0,G.jsx)(qge,{})},{path:J9.bridges,element:(0,G.jsx)(Vge,{})},{path:J9.createBridge,element:(0,G.jsx)(Dqe,{})},{path:J9.areaSetup,element:(0,G.jsx)(yae,{})},{path:J9.bridge(`:bridgeId`),element:(0,G.jsx)(ohe,{})},{path:J9.editBridge(`:bridgeId`),element:(0,G.jsx)(Oqe,{})},{path:J9.devices,element:(0,G.jsx)(d_e,{})},{path:J9.networkMap,element:(0,G.jsx)(o0e,{})},{path:J9.health,element:(0,G.jsx)(qqe,{})},{path:J9.labels,element:(0,G.jsx)(Zqe,{})},{path:J9.lockCredentials,element:(0,G.jsx)(rJe,{})},{path:J9.plugins,element:(0,G.jsx)(A0e,{})},{path:J9.settings,element:(0,G.jsx)(F0e,{})},{path:J9.startup,element:(0,G.jsx)(l3e,{})},{path:`*`,element:(0,G.jsx)(iJe,{})}]}],d3e=k_({items:{isInitialized:!1,isLoading:!1}},e=>{e.addCase(U_.pending,e=>{e.items.isLoading=!0}).addCase(U_.rejected,(e,t)=>{e.items.isInitialized=!0,e.items.isLoading=!1,e.items.content=void 0,e.items.error=t.error}).addCase(U_.fulfilled,(e,t)=>{e.items.isInitialized=!0,e.items.isLoading=!1,e.items.content=t.payload,e.items.error=void 0}).addCase(W_.fulfilled,(e,t)=>{e.items.content?.push(t.payload)}).addCase(K_.fulfilled,(e,t)=>{let n=e.items.content?.findIndex(e=>e.id===t.payload.id)??-1;n!==-1&&(e.items.content[n]=t.payload)}).addCase(q_.fulfilled,(e,t)=>{let n=e.items.content?.findIndex(e=>e.id===t.payload.id)??-1;n!==-1&&(e.items.content[n]=t.payload)}).addCase(G_.fulfilled,(e,t)=>{if(e.items.content){let n=e.items.content.findIndex(e=>e.id===t.meta.arg);n!==-1&&e.items.content.splice(n,1)}}).addCase(J_,(e,t)=>{e.items.isInitialized=!0,e.items.isLoading=!1,e.items.content=t.payload,e.items.error=void 0}).addCase(Y_,(e,t)=>{if(e.items.content){let n=e.items.content.findIndex(e=>e.id===t.payload.id);n===-1?e.items.content.push(t.payload):e.items.content[n]=t.payload}})}),f3e=k_({byBridge:{}},e=>{e.addCase(RT.pending,(e,t)=>{e.byBridge[t.meta.arg]=Y9(e.byBridge[t.meta.arg],t)}).addCase(RT.rejected,(e,t)=>{e.byBridge[t.meta.arg]=Y9(e.byBridge[t.meta.arg],t)}).addCase(RT.fulfilled,(e,t)=>{e.byBridge[t.meta.arg]=Y9(e.byBridge[t.meta.arg],t)})}),Y9=k_({isInitialized:!1,isLoading:!1,content:void 0,error:void 0},e=>{e.addCase(RT.pending,e=>{e.isLoading=!0}).addCase(RT.rejected,(e,t)=>{e.isInitialized=!0,e.isLoading=!1,e.content=void 0,e.error=t.error}).addCase(RT.fulfilled,(e,t)=>{e.isInitialized=!0,e.isLoading=!1,e.content=t.payload,e.error=void 0})}),p3e=Yne({reducer:{bridges:d3e,devices:f3e}}),X9=gp({createStyledComponent:J(`div`,{name:`MuiContainer`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[`maxWidth${Y(String(n.maxWidth))}`],n.fixed&&t.fixed,n.disableGutters&&t.disableGutters]}}),useThemeProps:e=>Am({props:e,name:`MuiContainer`})});function m3e(e){return Id(`MuiToolbar`,e)}Ld(`MuiToolbar`,[`root`,`gutters`,`regular`,`dense`]);var h3e=e=>{let{classes:t,disableGutters:n,variant:r}=e;return dp({root:[`root`,!n&&`gutters`,r]},m3e,t)},g3e=J(`div`,{name:`MuiToolbar`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,!n.disableGutters&&t.gutters,t[n.variant]]}})(Im(({theme:e})=>({position:`relative`,display:`flex`,alignItems:`center`,variants:[{props:({ownerState:e})=>!e.disableGutters,style:{paddingLeft:e.spacing(2),paddingRight:e.spacing(2),[e.breakpoints.up(`sm`)]:{paddingLeft:e.spacing(3),paddingRight:e.spacing(3)}}},{props:{variant:`dense`},style:{minHeight:48}},{props:{variant:`regular`},style:e.mixins.toolbar}]}))),_3e=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiToolbar`}),{className:r,component:i=`div`,disableGutters:a=!1,variant:o=`regular`,...s}=n,c={...n,component:i,disableGutters:a,variant:o};return(0,G.jsx)(g3e,{as:i,className:K(h3e(c).root,r),ref:t,ownerState:c,...s})}),v3e=class extends C.Component{constructor(e){super(e),this.state={hasError:!1,error:null}}static getDerivedStateFromError(e){return{hasError:!0,error:e}}componentDidCatch(e,t){console.error(`ErrorBoundary caught:`,e,t.componentStack)}render(){return this.state.hasError?(0,G.jsxs)(Z,{display:`flex`,flexDirection:`column`,alignItems:`center`,justifyContent:`center`,minHeight:`60vh`,gap:2,p:4,children:[(0,G.jsx)(_b,{color:`error`,sx:{fontSize:64}}),(0,G.jsx)(Q,{variant:`h5`,fontWeight:600,children:Ps.t(`errorBoundary.title`)}),(0,G.jsx)(Q,{variant:`body2`,color:`text.secondary`,textAlign:`center`,maxWidth:480,children:this.state.error?.message??Ps.t(`errorBoundary.fallbackMessage`)}),(0,G.jsx)(hv,{variant:`contained`,onClick:()=>{this.setState({hasError:!1,error:null}),window.location.reload()},children:Ps.t(`errorBoundary.reload`)})]}):this.props.children}};function y3e(e){return Id(`MuiFab`,e)}var b3e=Ld(`MuiFab`,[`root`,`primary`,`secondary`,`extended`,`circular`,`focusVisible`,`disabled`,`colorInherit`,`sizeSmall`,`sizeMedium`,`sizeLarge`,`info`,`error`,`warning`,`success`]),x3e=e=>{let{color:t,variant:n,classes:r,size:i}=e,a=dp({root:[`root`,n,`size${Y(i)}`,t===`inherit`?`colorInherit`:t]},y3e,r);return{...r,...a}},S3e=J(Fh,{name:`MuiFab`,slot:`Root`,shouldForwardProp:e=>Om(e)||e===`classes`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[n.variant],t[`size${Y(n.size)}`],n.color===`inherit`&&t.colorInherit,t[Y(n.size)],t[n.color]]}})(Im(({theme:e})=>({...e.typography.button,minHeight:36,transition:e.transitions.create([`background-color`,`box-shadow`,`border-color`],{duration:e.transitions.duration.short}),borderRadius:`50%`,padding:0,minWidth:0,width:56,height:56,zIndex:(e.vars||e).zIndex.fab,boxShadow:(e.vars||e).shadows[6],"&:active":{boxShadow:(e.vars||e).shadows[12]},color:e.vars?e.vars.palette.grey[900]:e.palette.getContrastText?.(e.palette.grey[300]),backgroundColor:(e.vars||e).palette.grey[300],"&:hover":{backgroundColor:(e.vars||e).palette.grey.A100,"@media (hover: none)":{backgroundColor:(e.vars||e).palette.grey[300]},textDecoration:`none`},[`&.${b3e.focusVisible}`]:{boxShadow:(e.vars||e).shadows[6]},variants:[{props:{size:`small`},style:{width:40,height:40}},{props:{size:`medium`},style:{width:48,height:48}},{props:{variant:`extended`},style:{borderRadius:48/2,padding:`0 16px`,width:`auto`,minHeight:`auto`,minWidth:48,height:48}},{props:{variant:`extended`,size:`small`},style:{width:`auto`,padding:`0 8px`,borderRadius:34/2,minWidth:34,height:34}},{props:{variant:`extended`,size:`medium`},style:{width:`auto`,padding:`0 16px`,borderRadius:40/2,minWidth:40,height:40}},{props:{color:`inherit`},style:{color:`inherit`}}]})),Im(({theme:e})=>({variants:[...Object.entries(e.palette).filter(Gm([`dark`,`contrastText`])).map(([t])=>({props:{color:t},style:{color:(e.vars||e).palette[t].contrastText,backgroundColor:(e.vars||e).palette[t].main,"&:hover":{backgroundColor:(e.vars||e).palette[t].dark,"@media (hover: none)":{backgroundColor:(e.vars||e).palette[t].main}}}}))]})),Im(({theme:e})=>({[`&.${b3e.disabled}`]:{color:(e.vars||e).palette.action.disabled,boxShadow:(e.vars||e).shadows[0],backgroundColor:(e.vars||e).palette.action.disabledBackground}}))),C3e=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiFab`}),{children:r,className:i,color:a=`default`,component:o=`button`,disabled:s=!1,disableFocusRipple:c=!1,focusVisibleClassName:l,size:u=`large`,variant:d=`circular`,...f}=n,p={...n,color:a,component:o,disabled:s,disableFocusRipple:c,size:u,variant:d},m=x3e(p);return(0,G.jsx)(S3e,{className:K(m.root,i),component:o,disabled:s,focusRipple:!c,focusVisibleClassName:K(m.focusVisible,l),ownerState:p,ref:t,...f,classes:m,children:r})}),w3e=[{code:`en`,flag:`🇬🇧`,name:`English`},{code:`de`,flag:`🇩🇪`,name:`Deutsch`},{code:`fr`,flag:`🇫🇷`,name:`Français`},{code:`es`,flag:`🇪🇸`,name:`Español`},{code:`it`,flag:`🇮🇹`,name:`Italiano`},{code:`zh`,flag:`🇨🇳`,name:`中文`},{code:`zh-TW`,flag:`🇹🇼`,name:`繁體中文`},{code:`ja`,flag:`🇯🇵`,name:`日本語`},{code:`th`,flag:`🇹🇭`,name:`ไทย`},{code:`sv`,flag:`🇸🇪`,name:`Svenska`},{code:`tr`,flag:`🇹🇷`,name:`Türkçe`},{code:`ru`,flag:`🇷🇺`,name:`Русский`}],T3e=`hamh-custom-languages`;function E3e(){try{let e=localStorage.getItem(T3e);return e?JSON.parse(e).map(e=>({code:e.code,flag:`🌐`,name:e.name})):[]}catch{return[]}}var D3e=`https://github.com/RiDDiX/home-assistant-matter-hub/issues/new?labels=translation&title=Translation+improvement`;function O3e(){let{t:e,i18n:t}=ms(),[n,r]=(0,C.useState)(!1),i=(0,C.useRef)(null),a=(0,C.useMemo)(()=>[...w3e,...E3e()],[]),o=t.language??`en`,s=a.some(e=>e.code===o)?o:o.split(`-`)[0]??`en`,c=(0,C.useCallback)(()=>{r(e=>!e)},[]),l=(0,C.useCallback)(e=>{t.changeLanguage(e),r(!1)},[t]);return(0,G.jsx)(Jh,{onClickAway:(0,C.useCallback)(()=>{r(!1)},[]),children:(0,G.jsxs)(Z,{children:[(0,G.jsx)(C3e,{ref:i,size:`small`,color:`primary`,onClick:c,"aria-label":`Change language`,sx:{position:`fixed`,bottom:24,right:24,zIndex:1300},children:(0,G.jsx)(Nhe,{})}),(0,G.jsx)(ob,{open:n,anchorEl:i.current,placement:`top-end`,transition:!0,sx:{zIndex:1300},children:({TransitionProps:t})=>(0,G.jsx)(Mb,{...t,timeout:200,children:(0,G.jsxs)(Km,{elevation:8,sx:{mb:1,py:.5,minWidth:160,borderRadius:2,overflow:`hidden`},children:[a.map(e=>(0,G.jsxs)(Z,{onClick:()=>l(e.code),sx:{display:`flex`,alignItems:`center`,gap:1.5,px:2,py:1,cursor:`pointer`,bgcolor:s===e.code?`action.selected`:`transparent`,"&:hover":{bgcolor:`action.hover`},transition:`background-color 0.15s`},children:[(0,G.jsx)(Q,{sx:{fontSize:`1.4rem`,lineHeight:1,userSelect:`none`},children:e.flag}),(0,G.jsx)(Q,{variant:`body2`,fontWeight:s===e.code?600:400,children:e.name})]},e.code)),(0,G.jsx)(Wb,{}),(0,G.jsxs)(Z,{sx:{display:`flex`,alignItems:`flex-start`,gap:.75,px:2,py:1},children:[(0,G.jsx)(Yv,{sx:{fontSize:14,mt:.25,color:`text.secondary`}}),(0,G.jsxs)(Q,{variant:`caption`,color:`text.secondary`,sx:{lineHeight:1.4},children:[e(`languageSwitcher.disclaimer`),` `,(0,G.jsx)(Kv,{href:D3e,target:`_blank`,rel:`noopener`,sx:{fontSize:`inherit`},children:e(`languageSwitcher.contribute`)})]})]})]})})})]})})}var k3e={name:`home-assistant-matter-hub`,description:``,version:`2.1.0-alpha.674`,private:!1,type:`module`,bin:{"home-assistant-matter-hub":`./dist/backend/cli.js`},author:{name:`riddix`,url:`https://github.com/riddix`},keywords:[`home-assistant`,`homeassistant`,`home`,`assistant`,`apple home`,`google home`,`apple`,`google`,`alexa`,`matter`,`matter.js`,`matterjs`,`project-chip`,`smart`,`smarthome`,`smart-home`],bugs:{url:`https://github.com/riddix/home-assistant-matter-hub/issues`},license:`Apache-2.0`,repository:`github:riddix/home-assistant-matter-hub`,scripts:{cleanup:`npx rimraf node_modules dist pack LICENSE README.md`,build:`node build.js`,bundle:`pnpm pack --out package.tgz`,postbuild:`pnpm run bundle`,test:`vitest run`,prestart:`pnpm run build`,start:`dotenvx run -f ../../.env -- ./dist/backend/cli.js start`},dependencies:{"@matter/main":`0.16.11`,"@matter/nodejs":`0.16.11`,"@matter/general":`0.16.11`,ajv:`8.18.0`,archiver:`7.0.1`,color:`5.0.3`,debounce:`3.0.0`,express:`5.2.1`,"express-basic-auth":`1.2.1`,"express-ip-access-control":`1.1.3`,"home-assistant-js-websocket":`9.6.0`,"lodash-es":`4.18.1`,multer:`2.1.1`,nocache:`4.0.0`,unzipper:`0.12.3`,ws:`8.20.0`,yargs:`18.0.0`},devDependencies:{"@home-assistant-matter-hub/backend":`workspace:*`,"@home-assistant-matter-hub/frontend":`workspace:*`,"@home-assistant-matter-hub/common":`workspace:*`,"@types/lodash-es":`^4.17.12`},overrides:{minimatch:`9.0.7`,"path-to-regexp":`^8.4.0`,glob:`^13.0.0`},nx:{targets:{start:{cache:!1,dependsOn:[`build`]},pack:{cache:!0,dependsOn:[`build`],outputs:[`{projectRoot}/pack`]},build:{inputs:[`^default`,`default`,`{workspaceRoot}/README.md`,`{workspaceRoot}/LICENSE`],outputs:[`{projectRoot}/dist`,`{projectRoot}/README.md`,`{projectRoot}/LICENSE`]}}}};function A3e(){let e=`2.1.0-alpha.674`,[t,n]=(0,C.useState)(null);(0,C.useEffect)(()=>{fetch(`api/health`).then(e=>e.ok?e.json():null).then(e=>{e?.version&&n(e.version)}).catch(()=>{})},[]);let r=(0,C.useMemo)(()=>!t||e===`0.0.0-dev`?!1:e!==t,[t]);return(0,C.useMemo)(()=>({name:k3e.name,version:t??e,frontendVersion:e,backendVersion:t,versionMismatch:r}),[t,r])}var j3e=()=>{let{t:e}=ms(),t=[{name:e(`footer.github`),url:J9.githubRepository},{name:e(`footer.documentation`),url:J9.documentation},{name:e(`footer.support`),url:J9.support}];return(0,G.jsxs)(X9,{sx:{mt:16,mb:4},children:[(0,G.jsx)(Wb,{sx:{mt:4,mb:4}}),(0,G.jsx)(Iv,{container:!0,spacing:2,justifyContent:`center`,children:t.map((e,t)=>(0,G.jsx)(Iv,{size:{xs:12,sm:`auto`},children:(0,G.jsx)(hv,{fullWidth:!0,size:`small`,variant:`outlined`,component:Kv,href:e.url,target:`_blank`,children:e.name})},t.toString()))})]})};function M3e(e){return Id(`MuiAppBar`,e)}Ld(`MuiAppBar`,[`root`,`positionFixed`,`positionAbsolute`,`positionSticky`,`positionStatic`,`positionRelative`,`colorDefault`,`colorPrimary`,`colorSecondary`,`colorInherit`,`colorTransparent`,`colorError`,`colorInfo`,`colorSuccess`,`colorWarning`]);var N3e=e=>{let{color:t,position:n,classes:r}=e;return dp({root:[`root`,`color${Y(t)}`,`position${Y(n)}`]},M3e,r)},P3e=(e,t)=>e?`${e.replace(`)`,``)}, ${t})`:t,F3e=J(Km,{name:`MuiAppBar`,slot:`Root`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.root,t[`position${Y(n.position)}`],t[`color${Y(n.color)}`]]}})(Im(({theme:e})=>({display:`flex`,flexDirection:`column`,width:`100%`,boxSizing:`border-box`,flexShrink:0,variants:[{props:{position:`fixed`},style:{position:`fixed`,zIndex:(e.vars||e).zIndex.appBar,top:0,left:`auto`,right:0,"@media print":{position:`absolute`}}},{props:{position:`absolute`},style:{position:`absolute`,zIndex:(e.vars||e).zIndex.appBar,top:0,left:`auto`,right:0}},{props:{position:`sticky`},style:{position:`sticky`,zIndex:(e.vars||e).zIndex.appBar,top:0,left:`auto`,right:0}},{props:{position:`static`},style:{position:`static`}},{props:{position:`relative`},style:{position:`relative`}},{props:{color:`inherit`},style:{"--AppBar-color":`inherit`,color:`var(--AppBar-color)`}},{props:{color:`default`},style:{"--AppBar-background":e.vars?e.vars.palette.AppBar.defaultBg:e.palette.grey[100],"--AppBar-color":e.vars?e.vars.palette.text.primary:e.palette.getContrastText(e.palette.grey[100]),...e.applyStyles(`dark`,{"--AppBar-background":e.vars?e.vars.palette.AppBar.defaultBg:e.palette.grey[900],"--AppBar-color":e.vars?e.vars.palette.text.primary:e.palette.getContrastText(e.palette.grey[900])})}},...Object.entries(e.palette).filter(Gm([`contrastText`])).map(([t])=>({props:{color:t},style:{"--AppBar-background":(e.vars??e).palette[t].main,"--AppBar-color":(e.vars??e).palette[t].contrastText}})),{props:e=>e.enableColorOnDark===!0&&![`inherit`,`transparent`].includes(e.color),style:{backgroundColor:`var(--AppBar-background)`,color:`var(--AppBar-color)`}},{props:e=>e.enableColorOnDark===!1&&![`inherit`,`transparent`].includes(e.color),style:{backgroundColor:`var(--AppBar-background)`,color:`var(--AppBar-color)`,...e.applyStyles(`dark`,{backgroundColor:e.vars?P3e(e.vars.palette.AppBar.darkBg,`var(--AppBar-background)`):null,color:e.vars?P3e(e.vars.palette.AppBar.darkColor,`var(--AppBar-color)`):null})}},{props:{color:`transparent`},style:{"--AppBar-background":`transparent`,"--AppBar-color":`inherit`,backgroundColor:`var(--AppBar-background)`,color:`var(--AppBar-color)`,...e.applyStyles(`dark`,{backgroundImage:`none`})}}]}))),I3e=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiAppBar`}),{className:r,color:i=`primary`,enableColorOnDark:a=!1,position:o=`fixed`,...s}=n,c={...n,color:i,position:o,enableColorOnDark:a};return(0,G.jsx)(F3e,{square:!0,component:`header`,ownerState:c,elevation:4,className:K(N3e(c).root,r,o===`fixed`&&`mui-fixed`),ref:t,...s})}),L3e={visibility:`hidden`};function R3e(e,t,n){let r=n&&n.getBoundingClientRect(),i=nh(t),a=t.style.transform,o=t.style.transition;t.style.transition=``,t.style.transform=``;let s=t.getBoundingClientRect(),c=i.getComputedStyle(t).getPropertyValue(`transform`);t.style.transform=a,t.style.transition=o;let l=0,u=0;if(c&&c!==`none`&&typeof c==`string`){let e=c.split(`(`)[1].split(`)`)[0].split(`,`);l=parseInt(e[4],10),u=parseInt(e[5],10)}return e===`left`?r?`translateX(${r.right+l-s.left}px)`:`translateX(${i.innerWidth+l-s.left}px)`:e===`right`?r?`translateX(-${s.right-r.left-l}px)`:`translateX(-${s.left+s.width-l}px)`:e===`up`?r?`translateY(${r.bottom+u-s.top}px)`:`translateY(${i.innerHeight+u-s.top}px)`:r?`translateY(-${s.top-r.top+s.height-u}px)`:`translateY(-${s.top+s.height-u}px)`}function z3e(e){return typeof e==`function`?e():e}function Z9(e,t,n){let r=R3e(e,t,z3e(n));r&&(t.style.transform=r)}var B3e=C.forwardRef(function(e,t){let n=Tm(),r={enter:n.transitions.easing.easeOut,exit:n.transitions.easing.sharp},i={enter:n.transitions.duration.enteringScreen,exit:n.transitions.duration.leavingScreen},{addEndListener:a,appear:o=!0,children:s,container:c,direction:l=`down`,easing:u=r,in:d,onEnter:f,onEntered:p,onEntering:m,onExit:h,onExited:g,onExiting:_,style:v,timeout:y=i,...b}=e,x=C.useRef(null),S=uh(Kh(s),x,t),w=Xh(x,(e,t)=>{Z9(l,e,c),Yh(e),f&&f(e,t)}),T=Xh(x,(e,t)=>{let r=Qh({timeout:y,style:v,easing:u},{mode:`enter`});e.style.transition=n.transitions.create(`transform`,r),e.style.transform=`none`,m&&m(e,t)}),E=Xh(x,p),D=Xh(x,_),O=Xh(x,e=>{let t=Qh({timeout:y,style:v,easing:u},{mode:`exit`});e.style.transition=n.transitions.create(`transform`,t),Z9(l,e,c),h&&h(e)}),k=Xh(x,e=>{e.style.transition=``,g&&g(e)}),A=e=>{a&&a(x.current,e)},j=C.useCallback(()=>{x.current&&Z9(l,x.current,c)},[l,c]);return C.useEffect(()=>{if(d||l===`down`||l===`right`)return;let e=Zm(()=>{x.current&&Z9(l,x.current,c)}),t=nh(x.current);return t.addEventListener(`resize`,e),()=>{e.clear(),t.removeEventListener(`resize`,e)}},[l,d,c]),C.useEffect(()=>{d||j()},[d,j]),(0,G.jsx)(Eh,{nodeRef:x,onEnter:w,onEntered:E,onEntering:T,onExit:O,onExited:k,onExiting:D,addEndListener:A,appear:o,in:d,timeout:y,...b,children:(e,{ownerState:t,...n})=>{let r;return r=e===`exited`&&!d?v||s.props.style?{visibility:`hidden`,...v,...s.props.style}:L3e:v&&s.props.style?{...v,...s.props.style}:v||s.props.style,C.cloneElement(s,{ref:S,style:r,...n})}})});function V3e(e){return Id(`MuiDrawer`,e)}Ld(`MuiDrawer`,[`root`,`docked`,`paper`,`anchorLeft`,`anchorRight`,`anchorTop`,`anchorBottom`,`paperAnchorLeft`,`paperAnchorRight`,`paperAnchorTop`,`paperAnchorBottom`,`paperAnchorDockedLeft`,`paperAnchorDockedRight`,`paperAnchorDockedTop`,`paperAnchorDockedBottom`,`modal`]);var H3e=(e,t)=>{let{ownerState:n}=e;return[t.root,(n.variant===`permanent`||n.variant===`persistent`)&&t.docked,n.variant===`temporary`&&t.modal]},U3e=e=>{let{classes:t,anchor:n,variant:r}=e;return dp({root:[`root`,`anchor${Y(n)}`],docked:[(r===`permanent`||r===`persistent`)&&`docked`],modal:[`modal`],paper:[`paper`,`paperAnchor${Y(n)}`,r!==`temporary`&&`paperAnchorDocked${Y(n)}`]},V3e,t)},W3e=J(Ib,{name:`MuiDrawer`,slot:`Root`,overridesResolver:H3e})(Im(({theme:e})=>({zIndex:(e.vars||e).zIndex.drawer}))),G3e=J(`div`,{shouldForwardProp:Om,name:`MuiDrawer`,slot:`Docked`,skipVariantsResolver:!1,overridesResolver:H3e})({flex:`0 0 auto`}),K3e=J(Km,{name:`MuiDrawer`,slot:`Paper`,overridesResolver:(e,t)=>{let{ownerState:n}=e;return[t.paper,t[`paperAnchor${Y(n.anchor)}`],n.variant!==`temporary`&&t[`paperAnchorDocked${Y(n.anchor)}`]]}})(Im(({theme:e})=>({overflowY:`auto`,display:`flex`,flexDirection:`column`,height:`100%`,flex:`1 0 auto`,zIndex:(e.vars||e).zIndex.drawer,WebkitOverflowScrolling:`touch`,position:`fixed`,top:0,outline:0,variants:[{props:{anchor:`left`},style:{left:0}},{props:{anchor:`top`},style:{top:0,left:0,right:0,height:`auto`,maxHeight:`100%`}},{props:{anchor:`right`},style:{right:0}},{props:{anchor:`bottom`},style:{top:`auto`,left:0,bottom:0,right:0,height:`auto`,maxHeight:`100%`}},{props:({ownerState:e})=>e.anchor===`left`&&e.variant!==`temporary`,style:{borderRight:`1px solid ${(e.vars||e).palette.divider}`}},{props:({ownerState:e})=>e.anchor===`top`&&e.variant!==`temporary`,style:{borderBottom:`1px solid ${(e.vars||e).palette.divider}`}},{props:({ownerState:e})=>e.anchor===`right`&&e.variant!==`temporary`,style:{borderLeft:`1px solid ${(e.vars||e).palette.divider}`}},{props:({ownerState:e})=>e.anchor===`bottom`&&e.variant!==`temporary`,style:{borderTop:`1px solid ${(e.vars||e).palette.divider}`}}]}))),q3e={left:`right`,right:`left`,top:`down`,bottom:`up`};function J3e(e){return[`left`,`right`].includes(e)}function Y3e({direction:e},t){return e===`rtl`&&J3e(t)?q3e[t]:t}var X3e=C.forwardRef(function(e,t){let n=Am({props:e,name:`MuiDrawer`}),r=Tm(),i=Af(),a={enter:r.transitions.duration.enteringScreen,exit:r.transitions.duration.leavingScreen},{anchor:o=`left`,BackdropProps:s,children:c,className:l,elevation:u=16,hideBackdrop:d=!1,ModalProps:{BackdropProps:f,...p}={},onClose:m,open:h=!1,PaperProps:g={},SlideProps:_,TransitionComponent:v,transitionDuration:y=a,variant:b=`temporary`,slots:x={},slotProps:S={},...w}=n,T=C.useRef(!1);C.useEffect(()=>{T.current=!0},[]);let E=Y3e({direction:i?`rtl`:`ltr`},o),D=o,O={...n,anchor:D,elevation:u,open:h,variant:b,...w},k=U3e(O),A={slots:{transition:v,...x},slotProps:{paper:g,transition:_,...S,backdrop:dh(S.backdrop||{...s,...f},{transitionDuration:y})}},[j,M]=Wm(`root`,{ref:t,elementType:W3e,className:K(k.root,k.modal,l),shouldForwardComponentProp:!0,ownerState:O,externalForwardedProps:{...A,...w,...p},additionalProps:{open:h,onClose:m,hideBackdrop:d,slots:{backdrop:A.slots.backdrop},slotProps:{backdrop:A.slotProps.backdrop}}}),[N,P]=Wm(`paper`,{elementType:K3e,shouldForwardComponentProp:!0,className:K(k.paper,g.className),ownerState:O,externalForwardedProps:A,additionalProps:{elevation:b===`temporary`?u:0,square:!0,...b===`temporary`&&{role:`dialog`,"aria-modal":`true`}}}),[F,I]=Wm(`docked`,{elementType:G3e,ref:t,className:K(k.root,k.docked,l),ownerState:O,externalForwardedProps:A,additionalProps:w}),[L,R]=Wm(`transition`,{elementType:B3e,ownerState:O,externalForwardedProps:A,additionalProps:{in:h,direction:q3e[E],timeout:y,appear:T.current}}),ee=(0,G.jsx)(N,{...P,children:c});if(b===`permanent`)return(0,G.jsx)(F,{...I,children:ee});let z=(0,G.jsx)(L,{...R,children:ee});return b===`persistent`?(0,G.jsx)(F,{...I,children:z}):(0,G.jsx)(j,{...M,children:z})}),Z3e=af({themeId:wm}),Q3e={error:Cx,warn:Xv,info:yb,debug:qT},$3e=({open:e,onClose:t})=>{let{t:n}=ms(),r=Tm(),i=(0,C.useMemo)(()=>({error:r.palette.error.main,warn:r.palette.warning.main,info:r.palette.info.main,debug:r.palette.secondary.main}),[r]),[a,o]=(0,C.useState)([]),[s,c]=(0,C.useState)(!0),[l,u]=(0,C.useState)(`error,warn,info`.split(`,`)),[d,f]=(0,C.useState)(``),[p,m]=(0,C.useState)(!0),h=(0,C.useCallback)(async()=>{try{let e=new URLSearchParams({level:l.join(`,`),limit:`500`,...d&&{search:d}}),t=await fetch(`api/logs?${e}`);t.ok&&o((await t.json()).entries)}catch(e){console.error(`Failed to fetch logs:`,e)}finally{c(!1)}},[l,d]);(0,C.useEffect)(()=>{e&&h()},[e,h]),(0,C.useEffect)(()=>{if(!p||!e)return;let t=setInterval(h,5e3);return()=>clearInterval(t)},[p,e,h]);let g=e=>{u(Array.isArray(e.target.value)?e.target.value:[e.target.value])},_=e=>{f(e.target.value)},v=async()=>{try{await fetch(`api/logs`,{method:`DELETE`}),o([])}catch(e){console.error(`Failed to clear logs:`,e)}},y=e=>(0,G.jsx)(Q3e[e]||yb,{sx:{fontSize:16,color:i[e]}});return(0,G.jsxs)(zb,{open:e,onClose:t,maxWidth:`lg`,fullWidth:!0,children:[(0,G.jsxs)(Hb,{sx:{display:`flex`,alignItems:`center`,gap:1},children:[(0,G.jsx)(qT,{}),n(`logs.title`),(0,G.jsx)(Z,{sx:{flexGrow:1}}),(0,G.jsx)(fb,{title:n(`logs.autoRefresh`),children:(0,G.jsx)(Dv,{label:p?`Auto`:`Manual`,color:p?`success`:`default`,size:`small`,onClick:()=>m(!p),sx:{cursor:`pointer`}})}),(0,G.jsx)(Hh,{onClick:t,children:(0,G.jsx)(YT,{})})]}),(0,G.jsxs)(Vb,{children:[(0,G.jsx)(Uv,{spacing:2,sx:{mb:2},children:(0,G.jsxs)(Uv,{direction:`row`,spacing:2,alignItems:`center`,children:[(0,G.jsxs)(Av,{size:`small`,sx:{minWidth:200},children:[(0,G.jsx)(Bx,{children:n(`logs.logLevel`)}),(0,G.jsxs)(SS,{value:l,label:n(`logs.logLevel`),onChange:g,multiple:!0,renderValue:e=>(0,G.jsx)(Z,{sx:{display:`flex`,flexWrap:`wrap`,gap:.5},children:(Array.isArray(e)?e:[e]).map(e=>(0,G.jsx)(Dv,{label:e.toUpperCase(),size:`small`,sx:{backgroundColor:i[e],color:`white`}},e))}),children:[(0,G.jsx)(CS,{value:`error`,children:n(`logs.error`)}),(0,G.jsx)(CS,{value:`warn`,children:n(`logs.warning`)}),(0,G.jsx)(CS,{value:`info`,children:n(`logs.info`)}),(0,G.jsx)(CS,{value:`debug`,children:n(`logs.debug`)})]})]}),(0,G.jsx)(ES,{size:`small`,placeholder:n(`logs.searchPlaceholder`),value:d,onChange:_,sx:{flexGrow:1}}),(0,G.jsx)(hv,{variant:`outlined`,onClick:h,children:n(`common.refresh`)}),(0,G.jsx)(hv,{variant:`outlined`,color:`error`,onClick:v,children:n(`common.delete`)})]})}),(0,G.jsx)(Z,{sx:{height:400,overflow:`auto`,backgroundColor:`background.paper`,border:1,borderColor:`divider`,borderRadius:1,p:1},children:s?(0,G.jsx)(Z,{sx:{display:`flex`,justifyContent:`center`,p:4},children:(0,G.jsxs)(Q,{children:[n(`common.loading`),`...`]})}):a.length===0?(0,G.jsx)(Z,{sx:{display:`flex`,justifyContent:`center`,p:4},children:(0,G.jsx)(Q,{color:`text.secondary`,children:n(`logs.noResults`)})}):(0,G.jsx)(Uv,{spacing:1,children:a.map((e,t)=>(0,G.jsxs)(Z,{sx:{p:1,borderRadius:1,backgroundColor:`action.hover`,fontFamily:`monospace`,fontSize:`0.875rem`,wordBreak:`break-all`},children:[(0,G.jsxs)(Z,{sx:{display:`flex`,alignItems:`center`,gap:1,mb:.5},children:[y(e.level),(0,G.jsx)(Q,{variant:`caption`,color:`text.secondary`,children:new Date(e.timestamp).toLocaleString()}),(0,G.jsx)(Dv,{label:e.level.toUpperCase(),size:`small`,sx:{backgroundColor:i[e.level],color:r.palette.getContrastText(i[e.level]??r.palette.grey[500]),fontSize:`0.7rem`,height:20}})]}),(0,G.jsx)(Q,{sx:{ml:3},children:e.message}),e.context&&(0,G.jsx)(Q,{sx:{ml:3,color:`text.secondary`,fontSize:`0.8rem`},children:JSON.stringify(e.context,null,2)})]},`${e.timestamp}-${e.level}-${t}`))})})]}),(0,G.jsx)(Bb,{children:(0,G.jsx)(hv,{onClick:t,children:n(`common.close`)})})]})};function Q9(){let{t:e}=ms(),{isConnected:t}=$_(),[n,r]=(0,C.useState)(null),[i,a]=(0,C.useState)(!1);(0,C.useEffect)(()=>{let e=async()=>{try{let e=await fetch(`api/health`);e.ok?(r(await e.json()),a(!1)):a(!0)}catch{a(!0)}};e();let t=setInterval(e,3e4);return()=>clearInterval(t)},[]);let o=e=>{let t=Math.floor(e/3600),n=Math.floor(e%3600/60);return t>0?`${t}h ${n}m`:`${n}m`},s=n?.status===`healthy`&&!i,c=n?.services?.bridges,l=c&&c.total>0&&c.running===c.total,u=c&&c.total===0,d=n?(0,G.jsxs)(Z,{sx:{p:.5},children:[(0,G.jsxs)(`div`,{children:[(0,G.jsxs)(`strong`,{children:[e(`health.version`),`:`]}),` `,n.version??e(`status.unknown`)]}),(0,G.jsxs)(`div`,{children:[(0,G.jsxs)(`strong`,{children:[e(`health.uptime`),`:`]}),` `,o(n.uptime??0)]}),n.services?.bridges&&(0,G.jsxs)(`div`,{children:[(0,G.jsxs)(`strong`,{children:[e(`nav.bridges`),`:`]}),` `,n.services.bridges.running??0,`/`,n.services.bridges.total??0,` `,e(`common.running`).toLowerCase(),(n.services.bridges.stopped??0)>0&&` (${n.services.bridges.stopped} ${e(`common.stopped`).toLowerCase()})`]}),n.services?.homeAssistant&&(0,G.jsxs)(`div`,{children:[(0,G.jsxs)(`strong`,{children:[e(`health.homeAssistant`),`:`]}),` `,n.services.homeAssistant.connected?e(`health.connected`):e(`health.disconnected`)]}),(0,G.jsxs)(`div`,{children:[(0,G.jsx)(`strong`,{children:`WebSocket:`}),` `,e(t?`health.connected`:`health.disconnected`)]})]}):e(`status.loadingHealth`);return(0,G.jsx)(fb,{title:d,arrow:!0,children:(0,G.jsx)(Dv,{icon:i||!s?(0,G.jsx)(Cx,{fontSize:`small`}):l?(0,G.jsx)(uv,{fontSize:`small`}):(0,G.jsx)(Sb,{fontSize:`small`}),label:e(i?`status.error`:s?t?u?`status.noBridges`:l?`common.online`:`common.starting`:`common.offline`:`status.unhealthy`),color:i||!s?`error`:!l||!t?`warning`:`success`,size:`small`,variant:`filled`,sx:{borderRadius:1,fontWeight:600,"& .MuiChip-icon":{color:`inherit`}}})})}var e6e=e=>(0,G.jsx)(`svg`,{viewBox:`0 0 91 89`,xmlSpace:`preserve`,xmlns:`http://www.w3.org/2000/svg`,...e,children:(0,G.jsxs)(`g`,{style:{display:`inline`},children:[(0,G.jsx)(`path`,{style:{fill:`#18bcf2`,fillOpacity:1,strokeWidth:.266194},d:`m 49.149143,1.473171 38.513568,38.536435 c 0,0 1.248354,1.186052 2.207681,3.092371 0.959329,1.906323 1.10864,4.600698 1.10864,4.600698 v 36.786372 c 0,0 -0.01549,1.748506 -1.49842,3.050572 -1.482931,1.302064 -3.333077,1.362947 -3.333077,1.362947 l -81.325658,7.7e-5 c 0,0 -1.7523855,-0.0091 -3.17112,-1.352526 C -0.07808495,85.913164 0.05953025,84.487808 0.05953025,84.487808 V 47.704546 c 0,0 -0.0018381,-2.218618 0.95921785,-4.315832 0.9610554,-2.097209 2.3010618,-3.355005 2.3010618,-3.355005 L 41.545959,1.4719546 c 0,0 1.465224,-1.46837077 3.753488,-1.46837077 2.288268,0 3.849696,1.46958717 3.849696,1.46958717 z`}),(0,G.jsx)(`path`,{style:{fill:`#ffffff`,fillOpacity:1,strokeWidth:.175841},d:`m 31.689717,32.051124 c 2.813363,2.331095 6.157331,3.89845 9.721813,4.556421 V 17.180647 l 3.873694,-2.282955 3.870527,2.282955 V 36.60772 c 3.565364,-0.658847 6.910387,-2.226204 9.725159,-4.556417 l 7.032345,4.154609 c -11.437354,11.557779 -29.852321,11.557779 -41.290025,0 z m 8.546732,49.60988 C 44.314996,65.760441 35.09933,49.470196 19.574984,45.139543 v 8.312381 c 3.383916,1.32244 6.386113,3.496288 8.728705,6.320026 L 11.83076,69.485301 v 4.56907 l 3.873697,2.270836 16.469936,-9.713534 c 1.224356,3.48294 1.56683,7.225375 0.996449,10.879778 z M 70.977694,45.139543 c -15.515726,4.34014 -24.72189,20.626696 -20.643519,36.521461 l 7.047658,-4.15742 c -0.569325,-3.654411 -0.2265,-7.3965 0.996449,-10.87979 l 16.457611,9.701233 3.870711,-2.283125 v -4.55677 L 62.233673,59.77195 c 2.342772,-2.822684 5.34497,-4.996533 8.728708,-6.320026 z`})]})}),t6e=e=>{let t=A3e();return(0,G.jsxs)(Z,{component:ea,to:J9.dashboard,sx:{display:`flex`,alignItems:`center`,justifyContent:e.large?`flex-start`:`center`,flexGrow:1,textDecoration:`none`,color:`inherit`},children:[(0,G.jsx)(e6e,{style:{height:`40px`}}),(0,G.jsx)(Q,{variant:`inherit`,component:`span`,sx:{mr:1,ml:1},children:t.name.split(`-`).map(Y).join(`-`)}),e.large&&(0,G.jsx)(Q,{variant:`caption`,component:`span`,children:t.version})]})},n6e=()=>{let e=Z3e(`(min-width:600px)`),{mode:t,setMode:n}=Fm(),[r,i]=(0,C.useState)(!1),[a,o]=(0,C.useState)(!1),s=Sr(),c=yr(),l=e=>e?e===`/`?c.pathname===`/`:c.pathname.startsWith(e):!1,u=()=>{n(t===`dark`?`light`:`dark`)},{t:d}=ms(),f=[{label:d(`dashboard.title`),icon:(0,G.jsx)($T,{}),to:J9.dashboard},{label:d(`nav.bridges`),icon:(0,G.jsx)(eE,{}),to:J9.bridges},{label:d(`nav.devices`),icon:(0,G.jsx)(hb,{}),to:J9.devices},{label:d(`nav.networkMap`),icon:(0,G.jsx)(HT,{}),to:J9.networkMap},{label:d(`nav.startupOrder`),icon:(0,G.jsx)(dv,{}),to:J9.startup},{label:d(`nav.lockCredentials`),icon:(0,G.jsx)(CT,{}),to:J9.lockCredentials},{label:d(`nav.filterReference`),icon:(0,G.jsx)(tE,{}),to:J9.labels},{label:`Plugins`,icon:(0,G.jsx)(ZT,{}),to:J9.plugins},{label:d(`nav.settings`),icon:(0,G.jsx)(MT,{}),to:J9.settings},{label:d(t===`dark`?`nav.lightMode`:`nav.darkMode`),icon:t===`dark`?(0,G.jsx)(Fhe,{}):(0,G.jsx)(She,{}),onClick:u},{label:d(`nav.systemLogs`),icon:(0,G.jsx)(qT,{}),onClick:()=>i(!0)},{label:d(`nav.health`),icon:(0,G.jsx)(kx,{}),to:J9.health}],p=e=>{o(!1),e.onClick?e.onClick():e.to&&s(e.to)};return(0,G.jsxs)(Z,{children:[(0,G.jsx)(I3e,{sx:{height:`72px`},children:(0,G.jsx)(_3e,{sx:{paddingLeft:`0 !important`,paddingRight:`0 !important`},children:(0,G.jsxs)(X9,{sx:{padding:2,height:`100%`,display:`flex`,justifyContent:`space-between`,alignItems:`center`},children:[(0,G.jsx)(t6e,{large:e}),e?(0,G.jsxs)(Z,{sx:{display:`flex`,alignItems:`center`,gap:1},children:[f.map(e=>e.to?(0,G.jsx)(fb,{title:e.label,children:(0,G.jsx)(Hh,{component:ea,to:e.to,sx:{color:`inherit`,bgcolor:l(e.to)?`rgba(255,255,255,0.15)`:`transparent`,borderRadius:1},children:e.icon})},e.label):(0,G.jsx)(fb,{title:e.label,children:(0,G.jsx)(Hh,{onClick:e.onClick,sx:{color:`inherit`},children:e.icon})},e.label)),(0,G.jsx)(Q9,{})]}):(0,G.jsxs)(Z,{sx:{display:`flex`,alignItems:`center`,gap:.5},children:[(0,G.jsx)(Q9,{}),(0,G.jsx)(Hh,{onClick:()=>o(!0),sx:{color:`inherit`},children:(0,G.jsx)(Ihe,{})})]})]})})}),(0,G.jsx)(X3e,{anchor:`right`,open:a,onClose:()=>o(!1),children:(0,G.jsx)(ey,{sx:{width:250},children:f.map(e=>(0,G.jsxs)(Iae,{selected:l(e.to),onClick:()=>p(e),children:[(0,G.jsx)(ay,{children:e.icon}),(0,G.jsx)(sy,{primary:e.label})]},e.label))})}),(0,G.jsx)($3e,{open:r,onClose:()=>i(!1)})]})},r6e=()=>{let{versionMismatch:e,frontendVersion:t,backendVersion:n}=A3e(),{isConnected:r}=$_();return(0,G.jsxs)(Z,{children:[(0,G.jsx)(n6e,{}),(0,G.jsx)(_3e,{}),e&&(0,G.jsxs)(Gh,{severity:`warning`,variant:`filled`,sx:{borderRadius:0},action:(0,G.jsx)(hv,{color:`inherit`,size:`small`,onClick:()=>window.location.reload(),children:`Reload`}),children:[`Version mismatch: frontend `,t,`, backend `,n,`. Please reload to get the latest UI.`]}),!r&&(0,G.jsx)(Gh,{severity:`error`,variant:`filled`,sx:{borderRadius:0},children:`Connection lost, data may be outdated. Reconnecting…`}),(0,G.jsx)(X9,{sx:{p:2},children:(0,G.jsx)(v3e,{children:(0,G.jsx)(oi,{})})}),(0,G.jsx)(j3e,{}),(0,G.jsx)(O3e,{})]})},i6e=Sm({colorSchemes:{light:{palette:{primary:{main:`#1976d2`,light:`#42a5f5`,dark:`#1565c0`},secondary:{main:`#9c27b0`,light:`#ba68c8`,dark:`#7b1fa2`},background:{default:`#f5f5f5`,paper:`#ffffff`}}},dark:{palette:{primary:{main:`#90caf9`,light:`#e3f2fd`,dark:`#42a5f5`},secondary:{main:`#ce93d8`,light:`#f3e5f5`,dark:`#ab47bc`},background:{default:`#121212`,paper:`#1e1e1e`}}}},typography:{fontFamily:`"Roboto", "Helvetica", "Arial", sans-serif`,h1:{fontSize:`2.5rem`,fontWeight:500},h2:{fontSize:`2rem`,fontWeight:500},h3:{fontSize:`1.75rem`,fontWeight:500},h4:{fontSize:`1.5rem`,fontWeight:500},h5:{fontSize:`1.25rem`,fontWeight:500},h6:{fontSize:`1rem`,fontWeight:500}},shape:{borderRadius:8},components:{MuiCard:{styleOverrides:{root:{transition:`transform 0.2s ease-in-out, box-shadow 0.2s ease-in-out`,"&:hover":{transform:`translateY(-2px)`,boxShadow:`0 4px 20px rgba(0,0,0,0.12)`}}}},MuiButton:{styleOverrides:{root:{textTransform:`none`,fontWeight:500}}},MuiChip:{styleOverrides:{root:{fontWeight:500}}},MuiAppBar:{styleOverrides:{root:{backgroundImage:`none`}}}}}),$9=document.getElementsByTagName(`base`)[0]?.href?.replace(/\/$/,``);$9?.startsWith(`http`)&&($9=new URL($9).pathname);var a6e=Yi([{path:`/`,element:(0,G.jsx)(r6e,{}),children:u3e}],{basename:$9});(0,S.createRoot)(document.getElementById(`root`)).render((0,G.jsx)(C.StrictMode,{children:(0,G.jsx)(L,{store:p3e,children:(0,G.jsxs)(Gee,{theme:i6e,children:[(0,G.jsx)(zee,{}),(0,G.jsx)(Em,{styles:{".rjsf-field-array > .MuiFormControl-root > .MuiPaper-root > .MuiBox-root > .MuiGrid-root > .MuiGrid-root:has(> .MuiBox-root > .MuiPaper-root > .MuiBox-root > .rjsf-field)":{overflow:`initial !important`,flexGrow:1}}}),(0,G.jsx)(xre,{children:(0,G.jsx)(sne,{children:(0,G.jsx)(ba,{router:a6e})})})]})})}));
@@ -8,7 +8,7 @@
8
8
  <!-- BASE -->
9
9
  <base href="/" />
10
10
  <!-- /BASE -->
11
- <script type="module" crossorigin src="./assets/index-C16aCYiw.js"></script>
11
+ <script type="module" crossorigin src="./assets/index-uf040DiY.js"></script>
12
12
  <link rel="stylesheet" crossorigin href="./assets/index-G-pxPqsB.css">
13
13
  </head>
14
14
  <body>
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@riddix/hamh",
3
3
  "description": "",
4
- "version": "2.1.0-alpha.673",
4
+ "version": "2.1.0-alpha.674",
5
5
  "private": false,
6
6
  "type": "module",
7
7
  "bin": {
@@ -55,9 +55,9 @@
55
55
  },
56
56
  "devDependencies": {
57
57
  "@types/lodash-es": "^4.17.12",
58
- "@home-assistant-matter-hub/backend": "2.1.0-alpha.673",
59
- "@home-assistant-matter-hub/common": "2.1.0-alpha.673",
60
- "@home-assistant-matter-hub/frontend": "2.1.0-alpha.673"
58
+ "@home-assistant-matter-hub/frontend": "2.1.0-alpha.674",
59
+ "@home-assistant-matter-hub/common": "2.1.0-alpha.674",
60
+ "@home-assistant-matter-hub/backend": "2.1.0-alpha.674"
61
61
  },
62
62
  "overrides": {
63
63
  "minimatch": "9.0.7",