@camstack/addon-agent-ui 1.2.233 → 1.2.234
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/addon.js +71 -11
- package/dist/assets/{MotionZonesSettings-DysNHSic.js → MotionZonesSettings-JxtqkJPW.js} +1 -1
- package/dist/assets/{PrivacyMaskSettings-ofuyNRtJ.js → PrivacyMaskSettings-BtK2jp8R.js} +1 -1
- package/dist/assets/{SceneMonitorEditor-C-BdkaId.js → SceneMonitorEditor-cW0uEQk0.js} +1 -1
- package/dist/assets/index-CPcFAuFw.js +112 -0
- package/dist/index.html +1 -1
- package/package.json +1 -1
- package/dist/assets/index-B1dCKzBv.js +0 -112
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["assets/MotionZonesSettings-JxtqkJPW.js","assets/scheduler-mSeF_D00.js","assets/MaskShapeCanvas-u4Ka7P5T.js","assets/PrivacyMaskSettings-BtK2jp8R.js","assets/SceneMonitorEditor-cW0uEQk0.js"])))=>i.map(i=>d[i]);
|
|
2
|
+
import{i as e,n as t,o as n,r,t as i}from"./scheduler-mSeF_D00.js";(function(){let e=document.createElement(`link`).relList;if(e&&e.supports&&e.supports(`modulepreload`))return;for(let e of document.querySelectorAll(`link[rel="modulepreload"]`))n(e);new MutationObserver(e=>{for(let t of e)if(t.type===`childList`)for(let e of t.addedNodes)e.tagName===`LINK`&&e.rel===`modulepreload`&&n(e)}).observe(document,{childList:!0,subtree:!0});function t(e){let t={};return e.integrity&&(t.integrity=e.integrity),e.referrerPolicy&&(t.referrerPolicy=e.referrerPolicy),e.crossOrigin===`use-credentials`?t.credentials=`include`:e.crossOrigin===`anonymous`?t.credentials=`omit`:t.credentials=`same-origin`,t}function n(e){if(e.ep)return;e.ep=!0;let n=t(e);fetch(e.href,n)}})();var a=(...e)=>e.filter((e,t,n)=>!!e&&e.trim()!==``&&n.indexOf(e)===t).join(` `).trim(),o=e=>e.replace(/([a-z0-9])([A-Z])/g,`$1-$2`).toLowerCase(),s=e=>e.replace(/^([A-Z])|[\s-_]+(\w)/g,(e,t,n)=>n?n.toUpperCase():t.toLowerCase()),c=e=>{let t=s(e);return t.charAt(0).toUpperCase()+t.slice(1)},l={xmlns:`http://www.w3.org/2000/svg`,width:24,height:24,viewBox:`0 0 24 24`,fill:`none`,stroke:`currentColor`,strokeWidth:2,strokeLinecap:`round`,strokeLinejoin:`round`},u=e=>{for(let t in e)if(t.startsWith(`aria-`)||t===`role`||t===`title`)return!0;return!1},d=n(r()),f=(0,d.forwardRef)(({color:e=`currentColor`,size:t=24,strokeWidth:n=2,absoluteStrokeWidth:r,className:i=``,children:o,iconNode:s,...c},f)=>(0,d.createElement)(`svg`,{ref:f,...l,width:t,height:t,stroke:e,strokeWidth:r?Number(n)*24/Number(t):n,className:a(`lucide`,i),...!o&&!u(c)&&{"aria-hidden":`true`},...c},[...s.map(([e,t])=>(0,d.createElement)(e,t)),...Array.isArray(o)?o:[o]])),p=(e,t)=>{let n=(0,d.forwardRef)(({className:n,...r},i)=>(0,d.createElement)(f,{ref:i,iconNode:t,className:a(`lucide-${o(c(e))}`,`lucide-${e}`,n),...r}));return n.displayName=c(e),n},m=p(`activity`,[[`path`,{d:`M22 12h-2.48a2 2 0 0 0-1.93 1.46l-2.35 8.36a.25.25 0 0 1-.48 0L9.24 2.18a.25.25 0 0 0-.48 0l-2.35 8.36A2 2 0 0 1 4.49 12H2`,key:`169zse`}]]),h=p(`air-vent`,[[`path`,{d:`M18 17.5a2.5 2.5 0 1 1-4 2.03V12`,key:`yd12zl`}],[`path`,{d:`M6 12H4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2v5a2 2 0 0 1-2 2h-2`,key:`larmp2`}],[`path`,{d:`M6 8h12`,key:`6g4wlu`}],[`path`,{d:`M6.6 15.572A2 2 0 1 0 10 17v-5`,key:`1x1kqn`}]]),g=p(`alarm-smoke`,[[`path`,{d:`M11 21c0-2.5 2-2.5 2-5`,key:`1sicvv`}],[`path`,{d:`M16 21c0-2.5 2-2.5 2-5`,key:`1o3eny`}],[`path`,{d:`m19 8-.8 3a1.25 1.25 0 0 1-1.2 1H7a1.25 1.25 0 0 1-1.2-1L5 8`,key:`1bvca4`}],[`path`,{d:`M21 3a1 1 0 0 1 1 1v2a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V4a1 1 0 0 1 1-1z`,key:`x3qr1j`}],[`path`,{d:`M6 21c0-2.5 2-2.5 2-5`,key:`i3w1gp`}]]),_=p(`ban`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M4.929 4.929 19.07 19.071`,key:`196cmz`}]]),v=p(`bath`,[[`path`,{d:`M10 4 8 6`,key:`1rru8s`}],[`path`,{d:`M17 19v2`,key:`ts1sot`}],[`path`,{d:`M2 12h20`,key:`9i4pu4`}],[`path`,{d:`M7 19v2`,key:`12npes`}],[`path`,{d:`M9 5 7.621 3.621A2.121 2.121 0 0 0 4 5v12a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-5`,key:`14ym8i`}]]),y=p(`battery-medium`,[[`path`,{d:`M10 14v-4`,key:`suye4c`}],[`path`,{d:`M22 14v-4`,key:`14q9d5`}],[`path`,{d:`M6 14v-4`,key:`14a6bd`}],[`rect`,{x:`2`,y:`6`,width:`16`,height:`12`,rx:`2`,key:`13zb55`}]]),b=p(`battery-warning`,[[`path`,{d:`M10 17h.01`,key:`nbq80n`}],[`path`,{d:`M10 7v6`,key:`nne03l`}],[`path`,{d:`M14 6h2a2 2 0 0 1 2 2v8a2 2 0 0 1-2 2h-2`,key:`1m83kb`}],[`path`,{d:`M22 14v-4`,key:`14q9d5`}],[`path`,{d:`M6 18H4a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h2`,key:`h8lgfh`}]]),x=p(`bell`,[[`path`,{d:`M10.268 21a2 2 0 0 0 3.464 0`,key:`vwvbt9`}],[`path`,{d:`M3.262 15.326A1 1 0 0 0 4 17h16a1 1 0 0 0 .74-1.673C19.41 13.956 18 12.499 18 8A6 6 0 0 0 6 8c0 4.499-1.411 5.956-2.738 7.326`,key:`11g9vi`}]]),ee=p(`blinds`,[[`path`,{d:`M3 3h18`,key:`o7r712`}],[`path`,{d:`M20 7H8`,key:`gd2fo2`}],[`path`,{d:`M20 11H8`,key:`1ynp89`}],[`path`,{d:`M10 19h10`,key:`19hjk5`}],[`path`,{d:`M8 15h12`,key:`1yqzne`}],[`path`,{d:`M4 3v14`,key:`fggqzn`}],[`circle`,{cx:`4`,cy:`19`,r:`2`,key:`p3m9r0`}]]),te=p(`bone`,[[`path`,{d:`M17 10c.7-.7 1.69 0 2.5 0a2.5 2.5 0 1 0 0-5 .5.5 0 0 1-.5-.5 2.5 2.5 0 1 0-5 0c0 .81.7 1.8 0 2.5l-7 7c-.7.7-1.69 0-2.5 0a2.5 2.5 0 0 0 0 5c.28 0 .5.22.5.5a2.5 2.5 0 1 0 5 0c0-.81-.7-1.8 0-2.5Z`,key:`w610uw`}]]),S=p(`bot`,[[`path`,{d:`M12 8V4H8`,key:`hb8ula`}],[`rect`,{width:`16`,height:`12`,x:`4`,y:`8`,rx:`2`,key:`enze0r`}],[`path`,{d:`M2 14h2`,key:`vft8re`}],[`path`,{d:`M20 14h2`,key:`4cs60a`}],[`path`,{d:`M15 13v2`,key:`1xurst`}],[`path`,{d:`M9 13v2`,key:`rq6x2g`}]]),ne=p(`box`,[[`path`,{d:`M21 8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73l7 4a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16Z`,key:`hh9hay`}],[`path`,{d:`m3.3 7 8.7 5 8.7-5`,key:`g66t2b`}],[`path`,{d:`M12 22V12`,key:`d0xqtd`}]]),re=p(`camera`,[[`path`,{d:`M13.997 4a2 2 0 0 1 1.76 1.05l.486.9A2 2 0 0 0 18.003 7H20a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2h1.997a2 2 0 0 0 1.759-1.048l.489-.904A2 2 0 0 1 10.004 4z`,key:`18u6gg`}],[`circle`,{cx:`12`,cy:`13`,r:`3`,key:`1vg3eu`}]]),ie=p(`check`,[[`path`,{d:`M20 6 9 17l-5-5`,key:`1gmf2c`}]]),ae=p(`chevron-down`,[[`path`,{d:`m6 9 6 6 6-6`,key:`qrunsl`}]]),oe=p(`chevron-left`,[[`path`,{d:`m15 18-6-6 6-6`,key:`1wnfg3`}]]),se=p(`chevron-right`,[[`path`,{d:`m9 18 6-6-6-6`,key:`mthhwq`}]]),ce=p(`chevron-up`,[[`path`,{d:`m18 15-6-6-6 6`,key:`153udz`}]]),le=p(`circle-alert`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`line`,{x1:`12`,x2:`12`,y1:`8`,y2:`12`,key:`1pkeuh`}],[`line`,{x1:`12`,x2:`12.01`,y1:`16`,y2:`16`,key:`4dfq90`}]]),ue=p(`circle-check`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),de=p(`circle-dot`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`circle`,{cx:`12`,cy:`12`,r:`1`,key:`41hilf`}]]),C=p(`circle-stop`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`rect`,{x:`9`,y:`9`,width:`6`,height:`6`,rx:`1`,key:`1ssd4o`}]]),w=p(`clock`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 6v6l4 2`,key:`mmk7yg`}]]),fe=p(`cloud-fog`,[[`path`,{d:`M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242`,key:`1pljnt`}],[`path`,{d:`M16 17H7`,key:`pygtm1`}],[`path`,{d:`M17 21H9`,key:`1u2q02`}]]),pe=p(`cloud-lightning`,[[`path`,{d:`M6 16.326A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 .5 8.973`,key:`1cez44`}],[`path`,{d:`m13 12-3 5h4l-3 5`,key:`1t22er`}]]),me=p(`cloud-rain`,[[`path`,{d:`M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242`,key:`1pljnt`}],[`path`,{d:`M16 14v6`,key:`1j4efv`}],[`path`,{d:`M8 14v6`,key:`17c4r9`}],[`path`,{d:`M12 16v6`,key:`c8a4gj`}]]),he=p(`cloud-snow`,[[`path`,{d:`M4 14.899A7 7 0 1 1 15.71 8h1.79a4.5 4.5 0 0 1 2.5 8.242`,key:`1pljnt`}],[`path`,{d:`M8 15h.01`,key:`a7atzg`}],[`path`,{d:`M8 19h.01`,key:`puxtts`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}],[`path`,{d:`M12 21h.01`,key:`h35vbk`}],[`path`,{d:`M16 15h.01`,key:`rnfrdf`}],[`path`,{d:`M16 19h.01`,key:`1vcnzz`}]]),ge=p(`cloud-sun`,[[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`m4.93 4.93 1.41 1.41`,key:`149t6j`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`m19.07 4.93-1.41 1.41`,key:`1shlcs`}],[`path`,{d:`M15.947 12.65a4 4 0 0 0-5.925-4.128`,key:`dpwdj0`}],[`path`,{d:`M13 22H7a5 5 0 1 1 4.9-6H13a3 3 0 0 1 0 6Z`,key:`s09mg5`}]]),_e=p(`cloud`,[[`path`,{d:`M17.5 19H9a7 7 0 1 1 6.71-9h1.79a4.5 4.5 0 1 1 0 9Z`,key:`p7xjir`}]]),ve=p(`cog`,[[`path`,{d:`M11 10.27 7 3.34`,key:`16pf9h`}],[`path`,{d:`m11 13.73-4 6.93`,key:`794ttg`}],[`path`,{d:`M12 22v-2`,key:`1osdcq`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M14 12h8`,key:`4f43i9`}],[`path`,{d:`m17 20.66-1-1.73`,key:`eq3orb`}],[`path`,{d:`m17 3.34-1 1.73`,key:`2wel8s`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`m20.66 17-1.73-1`,key:`sg0v6f`}],[`path`,{d:`m20.66 7-1.73 1`,key:`1ow05n`}],[`path`,{d:`m3.34 17 1.73-1`,key:`nuk764`}],[`path`,{d:`m3.34 7 1.73 1`,key:`1ulond`}],[`circle`,{cx:`12`,cy:`12`,r:`2`,key:`1c9p78`}],[`circle`,{cx:`12`,cy:`12`,r:`8`,key:`46899m`}]]),ye=p(`cpu`,[[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M17 20v2`,key:`1rnc9c`}],[`path`,{d:`M17 2v2`,key:`11trls`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M2 17h2`,key:`7oei6x`}],[`path`,{d:`M2 7h2`,key:`asdhe0`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`M20 17h2`,key:`1fpfkl`}],[`path`,{d:`M20 7h2`,key:`1o8tra`}],[`path`,{d:`M7 20v2`,key:`4gnj0m`}],[`path`,{d:`M7 2v2`,key:`1i4yhu`}],[`rect`,{x:`4`,y:`4`,width:`16`,height:`16`,rx:`2`,key:`1vbyd7`}],[`rect`,{x:`8`,y:`8`,width:`8`,height:`8`,rx:`1`,key:`z9xiuo`}]]),be=p(`crosshair`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`line`,{x1:`22`,x2:`18`,y1:`12`,y2:`12`,key:`l9bcsi`}],[`line`,{x1:`6`,x2:`2`,y1:`12`,y2:`12`,key:`13hhkx`}],[`line`,{x1:`12`,x2:`12`,y1:`6`,y2:`2`,key:`10w3f3`}],[`line`,{x1:`12`,x2:`12`,y1:`22`,y2:`18`,key:`15g9kq`}]]),xe=p(`door-closed`,[[`path`,{d:`M10 12h.01`,key:`1kxr2c`}],[`path`,{d:`M18 20V6a2 2 0 0 0-2-2H8a2 2 0 0 0-2 2v14`,key:`36qu9e`}],[`path`,{d:`M2 20h20`,key:`owomy5`}]]),Se=p(`door-open`,[[`path`,{d:`M11 20H2`,key:`nlcfvz`}],[`path`,{d:`M11 4.562v16.157a1 1 0 0 0 1.242.97L19 20V5.562a2 2 0 0 0-1.515-1.94l-4-1A2 2 0 0 0 11 4.561z`,key:`au4z13`}],[`path`,{d:`M11 4H8a2 2 0 0 0-2 2v14`,key:`74r1mk`}],[`path`,{d:`M14 12h.01`,key:`1jfl7z`}],[`path`,{d:`M22 20h-3`,key:`vhrsz`}]]),Ce=p(`download`,[[`path`,{d:`M12 15V3`,key:`m9g1x1`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}],[`path`,{d:`m7 10 5 5 5-5`,key:`brsn70`}]]),we=p(`droplet`,[[`path`,{d:`M12 22a7 7 0 0 0 7-7c0-2-1-3.9-3-5.5s-3.5-4-4-6.5c-.5 2.5-2 4.9-4 6.5C6 11.1 5 13 5 15a7 7 0 0 0 7 7z`,key:`c7niix`}]]),Te=p(`droplets`,[[`path`,{d:`M7 16.3c2.2 0 4-1.83 4-4.05 0-1.16-.57-2.26-1.71-3.19S7.29 6.75 7 5.3c-.29 1.45-1.14 2.84-2.29 3.76S3 11.1 3 12.25c0 2.22 1.8 4.05 4 4.05z`,key:`1ptgy4`}],[`path`,{d:`M12.56 6.6A10.97 10.97 0 0 0 14 3.02c.5 2.5 2 4.9 4 6.5s3 3.5 3 5.5a6.98 6.98 0 0 1-11.91 4.97`,key:`1sl1rz`}]]),Ee=p(`eye-off`,[[`path`,{d:`M10.733 5.076a10.744 10.744 0 0 1 11.205 6.575 1 1 0 0 1 0 .696 10.747 10.747 0 0 1-1.444 2.49`,key:`ct8e1f`}],[`path`,{d:`M14.084 14.158a3 3 0 0 1-4.242-4.242`,key:`151rxh`}],[`path`,{d:`M17.479 17.499a10.75 10.75 0 0 1-15.417-5.151 1 1 0 0 1 0-.696 10.75 10.75 0 0 1 4.446-5.143`,key:`13bj9a`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}]]),De=p(`eye`,[[`path`,{d:`M2.062 12.348a1 1 0 0 1 0-.696 10.75 10.75 0 0 1 19.876 0 1 1 0 0 1 0 .696 10.75 10.75 0 0 1-19.876 0`,key:`1nclc0`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]),Oe=p(`fan`,[[`path`,{d:`M10.827 16.379a6.082 6.082 0 0 1-8.618-7.002l5.412 1.45a6.082 6.082 0 0 1 7.002-8.618l-1.45 5.412a6.082 6.082 0 0 1 8.618 7.002l-5.412-1.45a6.082 6.082 0 0 1-7.002 8.618l1.45-5.412Z`,key:`484a7f`}],[`path`,{d:`M12 12v.01`,key:`u5ubse`}]]),ke=p(`feather`,[[`path`,{d:`M12.67 19a2 2 0 0 0 1.416-.588l6.154-6.172a6 6 0 0 0-8.49-8.49L5.586 9.914A2 2 0 0 0 5 11.328V18a1 1 0 0 0 1 1z`,key:`18jl4k`}],[`path`,{d:`M16 8 2 22`,key:`vp34q`}],[`path`,{d:`M17.5 15H9`,key:`1oz8nu`}]]),Ae=p(`flame`,[[`path`,{d:`M12 3q1 4 4 6.5t3 5.5a1 1 0 0 1-14 0 5 5 0 0 1 1-3 1 1 0 0 0 5 0c0-2-1.5-3-1.5-5q0-2 2.5-4`,key:`1slcih`}]]),je=p(`flashlight`,[[`path`,{d:`M12 13v1`,key:`176q98`}],[`path`,{d:`M17 2a1 1 0 0 1 1 1v4a3 3 0 0 1-.6 1.8l-.6.8A4 4 0 0 0 16 12v8a2 2 0 0 1-2 2H10a2 2 0 0 1-2-2v-8a4 4 0 0 0-.8-2.4l-.6-.8A3 3 0 0 1 6 7V3a1 1 0 0 1 1-1z`,key:`17vh7j`}],[`path`,{d:`M6 6h12`,key:`n6hhss`}]]),Me=p(`flask-conical`,[[`path`,{d:`M14 2v6a2 2 0 0 0 .245.96l5.51 10.08A2 2 0 0 1 18 22H6a2 2 0 0 1-1.755-2.96l5.51-10.08A2 2 0 0 0 10 8V2`,key:`18mbvz`}],[`path`,{d:`M6.453 15h11.094`,key:`3shlmq`}],[`path`,{d:`M8.5 2h7`,key:`csnxdl`}]]),Ne=p(`footprints`,[[`path`,{d:`M4 16v-2.38C4 11.5 2.97 10.5 3 8c.03-2.72 1.49-6 4.5-6C9.37 2 10 3.8 10 5.5c0 3.11-2 5.66-2 8.68V16a2 2 0 1 1-4 0Z`,key:`1dudjm`}],[`path`,{d:`M20 20v-2.38c0-2.12 1.03-3.12 1-5.62-.03-2.72-1.49-6-4.5-6C14.63 6 14 7.8 14 9.5c0 3.11 2 5.66 2 8.68V20a2 2 0 1 0 4 0Z`,key:`l2t8xc`}],[`path`,{d:`M16 17h4`,key:`1dejxt`}],[`path`,{d:`M4 13h4`,key:`1bwh8b`}]]),Pe=p(`gauge`,[[`path`,{d:`m12 14 4-4`,key:`9kzdfg`}],[`path`,{d:`M3.34 19a10 10 0 1 1 17.32 0`,key:`19p75a`}]]),Fe=p(`hash`,[[`line`,{x1:`4`,x2:`20`,y1:`9`,y2:`9`,key:`4lhtct`}],[`line`,{x1:`4`,x2:`20`,y1:`15`,y2:`15`,key:`vyu0kd`}],[`line`,{x1:`10`,x2:`8`,y1:`3`,y2:`21`,key:`1ggp8o`}],[`line`,{x1:`16`,x2:`14`,y1:`3`,y2:`21`,key:`weycgp`}]]),Ie=p(`house`,[[`path`,{d:`M15 21v-8a1 1 0 0 0-1-1h-4a1 1 0 0 0-1 1v8`,key:`5wwlr5`}],[`path`,{d:`M3 10a2 2 0 0 1 .709-1.528l7-6a2 2 0 0 1 2.582 0l7 6A2 2 0 0 1 21 10v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2z`,key:`r6nss1`}]]),Le=p(`image-off`,[[`line`,{x1:`2`,x2:`22`,y1:`2`,y2:`22`,key:`a6p6uj`}],[`path`,{d:`M10.41 10.41a2 2 0 1 1-2.83-2.83`,key:`1bzlo9`}],[`line`,{x1:`13.5`,x2:`6`,y1:`13.5`,y2:`21`,key:`1q0aeu`}],[`line`,{x1:`18`,x2:`21`,y1:`12`,y2:`15`,key:`5mozeu`}],[`path`,{d:`M3.59 3.59A1.99 1.99 0 0 0 3 5v14a2 2 0 0 0 2 2h14c.55 0 1.052-.22 1.41-.59`,key:`mmje98`}],[`path`,{d:`M21 15V5a2 2 0 0 0-2-2H9`,key:`43el77`}]]),Re=p(`image`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,ry:`2`,key:`1m3agn`}],[`circle`,{cx:`9`,cy:`9`,r:`2`,key:`af1f0g`}],[`path`,{d:`m21 15-3.086-3.086a2 2 0 0 0-2.828 0L6 21`,key:`1xmnt7`}]]),ze=p(`info`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`path`,{d:`M12 16v-4`,key:`1dtifu`}],[`path`,{d:`M12 8h.01`,key:`e9boi3`}]]),Be=p(`leaf`,[[`path`,{d:`M11 20A7 7 0 0 1 9.8 6.1C15.5 5 17 4.48 19 2c1 2 2 4.18 2 8 0 5.5-4.78 10-10 10Z`,key:`nnexq3`}],[`path`,{d:`M2 21c0-3 1.85-5.36 5.08-6C9.5 14.52 12 13 13 12`,key:`mt58a7`}]]),Ve=p(`lightbulb`,[[`path`,{d:`M15 14c.2-1 .7-1.7 1.5-2.5 1-.9 1.5-2.2 1.5-3.5A6 6 0 0 0 6 8c0 1 .2 2.2 1.5 3.5.7.7 1.3 1.5 1.5 2.5`,key:`1gvzjb`}],[`path`,{d:`M9 18h6`,key:`x1upvd`}],[`path`,{d:`M10 22h4`,key:`ceow96`}]]),He=p(`list-checks`,[[`path`,{d:`M13 5h8`,key:`a7qcls`}],[`path`,{d:`M13 12h8`,key:`h98zly`}],[`path`,{d:`M13 19h8`,key:`c3s6r1`}],[`path`,{d:`m3 17 2 2 4-4`,key:`1jhpwq`}],[`path`,{d:`m3 7 2 2 4-4`,key:`1obspn`}]]),Ue=p(`list`,[[`path`,{d:`M3 5h.01`,key:`18ugdj`}],[`path`,{d:`M3 12h.01`,key:`nlz23k`}],[`path`,{d:`M3 19h.01`,key:`noohij`}],[`path`,{d:`M8 5h13`,key:`1pao27`}],[`path`,{d:`M8 12h13`,key:`1za7za`}],[`path`,{d:`M8 19h13`,key:`m83p4d`}]]),We=p(`loader-circle`,[[`path`,{d:`M21 12a9 9 0 1 1-6.219-8.56`,key:`13zald`}]]),Ge=p(`lock-open`,[[`rect`,{width:`18`,height:`11`,x:`3`,y:`11`,rx:`2`,ry:`2`,key:`1w4ew1`}],[`path`,{d:`M7 11V7a5 5 0 0 1 9.9-1`,key:`1mm8w8`}]]),Ke=p(`lock`,[[`rect`,{width:`18`,height:`11`,x:`3`,y:`11`,rx:`2`,ry:`2`,key:`1w4ew1`}],[`path`,{d:`M7 11V7a5 5 0 0 1 10 0v4`,key:`fwvmzm`}]]),qe=p(`mail`,[[`path`,{d:`m22 7-8.991 5.727a2 2 0 0 1-2.009 0L2 7`,key:`132q7q`}],[`rect`,{x:`2`,y:`4`,width:`20`,height:`16`,rx:`2`,key:`izxlao`}]]),Je=p(`map-pin`,[[`path`,{d:`M20 10c0 4.993-5.539 10.193-7.399 11.799a1 1 0 0 1-1.202 0C9.539 20.193 4 14.993 4 10a8 8 0 0 1 16 0`,key:`1r0f0z`}],[`circle`,{cx:`12`,cy:`10`,r:`3`,key:`ilqhr7`}]]),Ye=p(`megaphone`,[[`path`,{d:`M11 6a13 13 0 0 0 8.4-2.8A1 1 0 0 1 21 4v12a1 1 0 0 1-1.6.8A13 13 0 0 0 11 14H5a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2z`,key:`q8bfy3`}],[`path`,{d:`M6 14a12 12 0 0 0 2.4 7.2 2 2 0 0 0 3.2-2.4A8 8 0 0 1 10 14`,key:`1853fq`}],[`path`,{d:`M8 6v8`,key:`15ugcq`}]]),Xe=p(`memory-stick`,[[`path`,{d:`M12 12v-2`,key:`fwoke6`}],[`path`,{d:`M12 18v-2`,key:`qj6yno`}],[`path`,{d:`M16 12v-2`,key:`heuere`}],[`path`,{d:`M16 18v-2`,key:`s1ct0w`}],[`path`,{d:`M2 11h1.5`,key:`15p63e`}],[`path`,{d:`M20 18v-2`,key:`12ehxp`}],[`path`,{d:`M20.5 11H22`,key:`khsy7a`}],[`path`,{d:`M4 18v-2`,key:`1c3oqr`}],[`path`,{d:`M8 12v-2`,key:`1mwtfd`}],[`path`,{d:`M8 18v-2`,key:`qcmpov`}],[`rect`,{x:`2`,y:`6`,width:`20`,height:`10`,rx:`2`,key:`1qcswk`}]]),Ze=p(`message-square`,[[`path`,{d:`M22 17a2 2 0 0 1-2 2H6.828a2 2 0 0 0-1.414.586l-2.202 2.202A.71.71 0 0 1 2 21.286V5a2 2 0 0 1 2-2h16a2 2 0 0 1 2 2z`,key:`18887p`}]]),Qe=p(`mic`,[[`path`,{d:`M12 19v3`,key:`npa21l`}],[`path`,{d:`M19 10v2a7 7 0 0 1-14 0v-2`,key:`1vc78b`}],[`rect`,{x:`9`,y:`2`,width:`6`,height:`13`,rx:`3`,key:`s6n7sd`}]]),$e=p(`monitor-play`,[[`path`,{d:`M15.033 9.44a.647.647 0 0 1 0 1.12l-4.065 2.352a.645.645 0 0 1-.968-.56V7.648a.645.645 0 0 1 .967-.56z`,key:`vbtd3f`}],[`path`,{d:`M12 17v4`,key:`1riwvh`}],[`path`,{d:`M8 21h8`,key:`1ev6f3`}],[`rect`,{x:`2`,y:`3`,width:`20`,height:`14`,rx:`2`,key:`x3v2xh`}]]),et=p(`moon`,[[`path`,{d:`M20.985 12.486a9 9 0 1 1-9.473-9.472c.405-.022.617.46.402.803a6 6 0 0 0 8.268 8.268c.344-.215.825-.004.803.401`,key:`kfwtm`}]]),tt=p(`mouse-pointer-click`,[[`path`,{d:`M14 4.1 12 6`,key:`ita8i4`}],[`path`,{d:`m5.1 8-2.9-.8`,key:`1go3kf`}],[`path`,{d:`m6 12-1.9 2`,key:`mnht97`}],[`path`,{d:`M7.2 2.2 8 5.1`,key:`1cfko1`}],[`path`,{d:`M9.037 9.69a.498.498 0 0 1 .653-.653l11 4.5a.5.5 0 0 1-.074.949l-4.349 1.041a1 1 0 0 0-.74.739l-1.04 4.35a.5.5 0 0 1-.95.074z`,key:`s0h3yz`}]]),nt=p(`move-horizontal`,[[`path`,{d:`m18 8 4 4-4 4`,key:`1ak13k`}],[`path`,{d:`M2 12h20`,key:`9i4pu4`}],[`path`,{d:`m6 8-4 4 4 4`,key:`15zrgr`}]]),rt=p(`move-vertical`,[[`path`,{d:`M12 2v20`,key:`t6zp3m`}],[`path`,{d:`m8 18 4 4 4-4`,key:`bh5tu3`}],[`path`,{d:`m8 6 4-4 4 4`,key:`ybng9g`}]]),it=p(`music`,[[`path`,{d:`M9 18V5l12-2v13`,key:`1jmyc2`}],[`circle`,{cx:`6`,cy:`18`,r:`3`,key:`fqmcym`}],[`circle`,{cx:`18`,cy:`16`,r:`3`,key:`1hluhg`}]]),at=p(`navigation`,[[`polygon`,{points:`3 11 22 2 13 21 11 13 3 11`,key:`1ltx0t`}]]),ot=p(`network`,[[`rect`,{x:`16`,y:`16`,width:`6`,height:`6`,rx:`1`,key:`4q2zg0`}],[`rect`,{x:`2`,y:`16`,width:`6`,height:`6`,rx:`1`,key:`8cvhb9`}],[`rect`,{x:`9`,y:`2`,width:`6`,height:`6`,rx:`1`,key:`1egb70`}],[`path`,{d:`M5 16v-3a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v3`,key:`1jsf9p`}],[`path`,{d:`M12 12V8`,key:`2874zd`}]]),st=p(`package`,[[`path`,{d:`M11 21.73a2 2 0 0 0 2 0l7-4A2 2 0 0 0 21 16V8a2 2 0 0 0-1-1.73l-7-4a2 2 0 0 0-2 0l-7 4A2 2 0 0 0 3 8v8a2 2 0 0 0 1 1.73z`,key:`1a0edw`}],[`path`,{d:`M12 22V12`,key:`d0xqtd`}],[`polyline`,{points:`3.29 7 12 12 20.71 7`,key:`ousv84`}],[`path`,{d:`m7.5 4.27 9 5.15`,key:`1c824w`}]]),ct=p(`pause`,[[`rect`,{x:`14`,y:`3`,width:`5`,height:`18`,rx:`1`,key:`kaeet6`}],[`rect`,{x:`5`,y:`3`,width:`5`,height:`18`,rx:`1`,key:`1wsw3u`}]]),lt=p(`paw-print`,[[`circle`,{cx:`11`,cy:`4`,r:`2`,key:`vol9p0`}],[`circle`,{cx:`18`,cy:`8`,r:`2`,key:`17gozi`}],[`circle`,{cx:`20`,cy:`16`,r:`2`,key:`1v9bxh`}],[`path`,{d:`M9 10a5 5 0 0 1 5 5v3.5a3.5 3.5 0 0 1-6.84 1.045Q6.52 17.48 4.46 16.84A3.5 3.5 0 0 1 5.5 10Z`,key:`1ydw1z`}]]),ut=p(`pipette`,[[`path`,{d:`m12 9-8.414 8.414A2 2 0 0 0 3 18.828v1.344a2 2 0 0 1-.586 1.414A2 2 0 0 1 3.828 21h1.344a2 2 0 0 0 1.414-.586L15 12`,key:`1y3wsu`}],[`path`,{d:`m18 9 .4.4a1 1 0 1 1-3 3l-3.8-3.8a1 1 0 1 1 3-3l.4.4 3.4-3.4a1 1 0 1 1 3 3z`,key:`110lr1`}],[`path`,{d:`m2 22 .414-.414`,key:`jhxm08`}]]),dt=p(`play`,[[`path`,{d:`M5 5a2 2 0 0 1 3.008-1.728l11.997 6.998a2 2 0 0 1 .003 3.458l-12 7A2 2 0 0 1 5 19z`,key:`10ikf1`}]]),ft=p(`power`,[[`path`,{d:`M12 2v10`,key:`mnfbl`}],[`path`,{d:`M18.4 6.6a9 9 0 1 1-12.77.04`,key:`obofu9`}]]),pt=p(`radar`,[[`path`,{d:`M19.07 4.93A10 10 0 0 0 6.99 3.34`,key:`z3du51`}],[`path`,{d:`M4 6h.01`,key:`oypzma`}],[`path`,{d:`M2.29 9.62A10 10 0 1 0 21.31 8.35`,key:`qzzz0`}],[`path`,{d:`M16.24 7.76A6 6 0 1 0 8.23 16.67`,key:`1yjesh`}],[`path`,{d:`M12 18h.01`,key:`mhygvu`}],[`path`,{d:`M17.99 11.66A6 6 0 0 1 15.77 16.67`,key:`1u2y91`}],[`circle`,{cx:`12`,cy:`12`,r:`2`,key:`1c9p78`}],[`path`,{d:`m13.41 10.59 5.66-5.66`,key:`mhq4k0`}]]),mt=p(`refresh-cw`,[[`path`,{d:`M3 12a9 9 0 0 1 9-9 9.75 9.75 0 0 1 6.74 2.74L21 8`,key:`v9h5vc`}],[`path`,{d:`M21 3v5h-5`,key:`1q7to0`}],[`path`,{d:`M21 12a9 9 0 0 1-9 9 9.75 9.75 0 0 1-6.74-2.74L3 16`,key:`3uifl3`}],[`path`,{d:`M8 16H3v5`,key:`1cv678`}]]),ht=p(`rotate-ccw`,[[`path`,{d:`M3 12a9 9 0 1 0 9-9 9.75 9.75 0 0 0-6.74 2.74L3 8`,key:`1357e3`}],[`path`,{d:`M3 3v5h5`,key:`1xhq8a`}]]),gt=p(`save`,[[`path`,{d:`M15.2 3a2 2 0 0 1 1.4.6l3.8 3.8a2 2 0 0 1 .6 1.4V19a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z`,key:`1c8476`}],[`path`,{d:`M17 21v-7a1 1 0 0 0-1-1H8a1 1 0 0 0-1 1v7`,key:`1ydtos`}],[`path`,{d:`M7 3v4a1 1 0 0 0 1 1h7`,key:`t51u73`}]]);p(`scan`,[[`path`,{d:`M3 7V5a2 2 0 0 1 2-2h2`,key:`aa7l1z`}],[`path`,{d:`M17 3h2a2 2 0 0 1 2 2v2`,key:`4qcy5o`}],[`path`,{d:`M21 17v2a2 2 0 0 1-2 2h-2`,key:`6vwrx8`}],[`path`,{d:`M7 21H5a2 2 0 0 1-2-2v-2`,key:`ioqczr`}]]);var _t=p(`scroll-text`,[[`path`,{d:`M15 12h-5`,key:`r7krc0`}],[`path`,{d:`M15 8h-5`,key:`1khuty`}],[`path`,{d:`M19 17V5a2 2 0 0 0-2-2H4`,key:`zz82l3`}],[`path`,{d:`M8 21h12a2 2 0 0 0 2-2v-1a1 1 0 0 0-1-1H11a1 1 0 0 0-1 1v1a2 2 0 1 1-4 0V5a2 2 0 1 0-4 0v2a1 1 0 0 0 1 1h3`,key:`1ph1d7`}]]),vt=p(`server`,[[`rect`,{width:`20`,height:`8`,x:`2`,y:`2`,rx:`2`,ry:`2`,key:`ngkwjq`}],[`rect`,{width:`20`,height:`8`,x:`2`,y:`14`,rx:`2`,ry:`2`,key:`iecqi9`}],[`line`,{x1:`6`,x2:`6.01`,y1:`6`,y2:`6`,key:`16zg32`}],[`line`,{x1:`6`,x2:`6.01`,y1:`18`,y2:`18`,key:`nzw8ys`}]]),yt=p(`settings`,[[`path`,{d:`M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915`,key:`1i5ecw`}],[`circle`,{cx:`12`,cy:`12`,r:`3`,key:`1v7zrd`}]]),bt=p(`shield-alert`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}],[`path`,{d:`M12 8v4`,key:`1got3b`}],[`path`,{d:`M12 16h.01`,key:`1drbdi`}]]),xt=p(`shield-check`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}],[`path`,{d:`m9 12 2 2 4-4`,key:`dzmm74`}]]),St=p(`shield-off`,[[`path`,{d:`m2 2 20 20`,key:`1ooewy`}],[`path`,{d:`M5 5a1 1 0 0 0-1 1v7c0 5 3.5 7.5 7.67 8.94a1 1 0 0 0 .67.01c2.35-.82 4.48-1.97 5.9-3.71`,key:`1jlk70`}],[`path`,{d:`M9.309 3.652A12.252 12.252 0 0 0 11.24 2.28a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1v7a9.784 9.784 0 0 1-.08 1.264`,key:`18rp1v`}]]),Ct=p(`shield-question-mark`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}],[`path`,{d:`M9.1 9a3 3 0 0 1 5.82 1c0 2-3 3-3 3`,key:`mhlwft`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),wt=p(`shield`,[[`path`,{d:`M20 13c0 5-3.5 7.5-7.66 8.95a1 1 0 0 1-.67-.01C7.5 20.5 4 18 4 13V6a1 1 0 0 1 1-1c2 0 4.5-1.2 6.24-2.72a1.17 1.17 0 0 1 1.52 0C14.51 3.81 17 5 19 5a1 1 0 0 1 1 1z`,key:`oel41y`}]]),Tt=p(`siren`,[[`path`,{d:`M7 18v-6a5 5 0 1 1 10 0v6`,key:`pcx96s`}],[`path`,{d:`M5 21a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1v-1a2 2 0 0 0-2-2H7a2 2 0 0 0-2 2z`,key:`1b4s83`}],[`path`,{d:`M21 12h1`,key:`jtio3y`}],[`path`,{d:`M18.5 4.5 18 5`,key:`g5sp9y`}],[`path`,{d:`M2 12h1`,key:`1uaihz`}],[`path`,{d:`M12 2v1`,key:`11qlp1`}],[`path`,{d:`m4.929 4.929.707.707`,key:`1i51kw`}],[`path`,{d:`M12 12v6`,key:`3ahymv`}]]),Et=p(`skip-back`,[[`path`,{d:`M17.971 4.285A2 2 0 0 1 21 6v12a2 2 0 0 1-3.029 1.715l-9.997-5.998a2 2 0 0 1-.003-3.432z`,key:`15892j`}],[`path`,{d:`M3 20V4`,key:`1ptbpl`}]]),Dt=p(`skip-forward`,[[`path`,{d:`M21 4v16`,key:`7j8fe9`}],[`path`,{d:`M6.029 4.285A2 2 0 0 0 3 6v12a2 2 0 0 0 3.029 1.715l9.997-5.998a2 2 0 0 0 .003-3.432z`,key:`zs4d6`}]]),Ot=p(`sliders-horizontal`,[[`path`,{d:`M10 5H3`,key:`1qgfaw`}],[`path`,{d:`M12 19H3`,key:`yhmn1j`}],[`path`,{d:`M14 3v4`,key:`1sua03`}],[`path`,{d:`M16 17v4`,key:`1q0r14`}],[`path`,{d:`M21 12h-9`,key:`1o4lsq`}],[`path`,{d:`M21 19h-5`,key:`1rlt1p`}],[`path`,{d:`M21 5h-7`,key:`1oszz2`}],[`path`,{d:`M8 10v4`,key:`tgpxqk`}],[`path`,{d:`M8 12H3`,key:`a7s4jb`}]]),kt=p(`smartphone`,[[`rect`,{width:`14`,height:`20`,x:`5`,y:`2`,rx:`2`,ry:`2`,key:`1yt0o3`}],[`path`,{d:`M12 18h.01`,key:`mhygvu`}]]),At=p(`snowflake`,[[`path`,{d:`m10 20-1.25-2.5L6 18`,key:`18frcb`}],[`path`,{d:`M10 4 8.75 6.5 6 6`,key:`7mghy3`}],[`path`,{d:`m14 20 1.25-2.5L18 18`,key:`1chtki`}],[`path`,{d:`m14 4 1.25 2.5L18 6`,key:`1b4wsy`}],[`path`,{d:`m17 21-3-6h-4`,key:`15hhxa`}],[`path`,{d:`m17 3-3 6 1.5 3`,key:`11697g`}],[`path`,{d:`M2 12h6.5L10 9`,key:`kv9z4n`}],[`path`,{d:`m20 10-1.5 2 1.5 2`,key:`1swlpi`}],[`path`,{d:`M22 12h-6.5L14 15`,key:`1mxi28`}],[`path`,{d:`m4 10 1.5 2L4 14`,key:`k9enpj`}],[`path`,{d:`m7 21 3-6-1.5-3`,key:`j8hb9u`}],[`path`,{d:`m7 3 3 6h4`,key:`1otusx`}]]),jt=p(`sparkles`,[[`path`,{d:`M11.017 2.814a1 1 0 0 1 1.966 0l1.051 5.558a2 2 0 0 0 1.594 1.594l5.558 1.051a1 1 0 0 1 0 1.966l-5.558 1.051a2 2 0 0 0-1.594 1.594l-1.051 5.558a1 1 0 0 1-1.966 0l-1.051-5.558a2 2 0 0 0-1.594-1.594l-5.558-1.051a1 1 0 0 1 0-1.966l5.558-1.051a2 2 0 0 0 1.594-1.594z`,key:`1s2grr`}],[`path`,{d:`M20 2v4`,key:`1rf3ol`}],[`path`,{d:`M22 4h-4`,key:`gwowj6`}],[`circle`,{cx:`4`,cy:`20`,r:`2`,key:`6kqj1y`}]]),Mt=p(`sprout`,[[`path`,{d:`M14 9.536V7a4 4 0 0 1 4-4h1.5a.5.5 0 0 1 .5.5V5a4 4 0 0 1-4 4 4 4 0 0 0-4 4c0 2 1 3 1 5a5 5 0 0 1-1 3`,key:`139s4v`}],[`path`,{d:`M4 9a5 5 0 0 1 8 4 5 5 0 0 1-8-4`,key:`1dlkgp`}],[`path`,{d:`M5 21h14`,key:`11awu3`}]]),Nt=p(`square`,[[`rect`,{width:`18`,height:`18`,x:`3`,y:`3`,rx:`2`,key:`afitv7`}]]),Pt=p(`sun-medium`,[[`circle`,{cx:`12`,cy:`12`,r:`4`,key:`4exip2`}],[`path`,{d:`M12 3v1`,key:`1asbbs`}],[`path`,{d:`M12 20v1`,key:`1wcdkc`}],[`path`,{d:`M3 12h1`,key:`lp3yf2`}],[`path`,{d:`M20 12h1`,key:`1vloll`}],[`path`,{d:`m18.364 5.636-.707.707`,key:`1hakh0`}],[`path`,{d:`m6.343 17.657-.707.707`,key:`18m9nf`}],[`path`,{d:`m5.636 5.636.707.707`,key:`1xv1c5`}],[`path`,{d:`m17.657 17.657.707.707`,key:`vl76zb`}]]),Ft=p(`sun`,[[`circle`,{cx:`12`,cy:`12`,r:`4`,key:`4exip2`}],[`path`,{d:`M12 2v2`,key:`tus03m`}],[`path`,{d:`M12 20v2`,key:`1lh1kg`}],[`path`,{d:`m4.93 4.93 1.41 1.41`,key:`149t6j`}],[`path`,{d:`m17.66 17.66 1.41 1.41`,key:`ptbguv`}],[`path`,{d:`M2 12h2`,key:`1t8f8n`}],[`path`,{d:`M20 12h2`,key:`1q8mjw`}],[`path`,{d:`m6.34 17.66-1.41 1.41`,key:`1m8zz5`}],[`path`,{d:`m19.07 4.93-1.41 1.41`,key:`1shlcs`}]]),It=p(`sunrise`,[[`path`,{d:`M12 2v8`,key:`1q4o3n`}],[`path`,{d:`m4.93 10.93 1.41 1.41`,key:`2a7f42`}],[`path`,{d:`M2 18h2`,key:`j10viu`}],[`path`,{d:`M20 18h2`,key:`wocana`}],[`path`,{d:`m19.07 10.93-1.41 1.41`,key:`15zs5n`}],[`path`,{d:`M22 22H2`,key:`19qnx5`}],[`path`,{d:`m8 6 4-4 4 4`,key:`ybng9g`}],[`path`,{d:`M16 18a4 4 0 0 0-8 0`,key:`1lzouq`}]]);p(`target`,[[`circle`,{cx:`12`,cy:`12`,r:`10`,key:`1mglay`}],[`circle`,{cx:`12`,cy:`12`,r:`6`,key:`1vlfrh`}],[`circle`,{cx:`12`,cy:`12`,r:`2`,key:`1c9p78`}]]);var Lt=p(`thermometer`,[[`path`,{d:`M14 4v10.54a4 4 0 1 1-4 0V4a2 2 0 0 1 4 0Z`,key:`17jzev`}]]),Rt=p(`toggle-left`,[[`circle`,{cx:`9`,cy:`12`,r:`3`,key:`u3jwor`}],[`rect`,{width:`20`,height:`14`,x:`2`,y:`5`,rx:`7`,key:`g7kal2`}]]),zt=p(`tractor`,[[`path`,{d:`m10 11 11 .9a1 1 0 0 1 .8 1.1l-.665 4.158a1 1 0 0 1-.988.842H20`,key:`she1j9`}],[`path`,{d:`M16 18h-5`,key:`bq60fd`}],[`path`,{d:`M18 5a1 1 0 0 0-1 1v5.573`,key:`1kv8ia`}],[`path`,{d:`M3 4h8.129a1 1 0 0 1 .99.863L13 11.246`,key:`1q1ert`}],[`path`,{d:`M4 11V4`,key:`9ft8pt`}],[`path`,{d:`M7 15h.01`,key:`k5ht0j`}],[`path`,{d:`M8 10.1V4`,key:`1jgyzo`}],[`circle`,{cx:`18`,cy:`18`,r:`2`,key:`1emm8v`}],[`circle`,{cx:`7`,cy:`15`,r:`5`,key:`ddtuc`}]]),Bt=p(`trash-2`,[[`path`,{d:`M10 11v6`,key:`nco0om`}],[`path`,{d:`M14 11v6`,key:`outv1u`}],[`path`,{d:`M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6`,key:`miytrc`}],[`path`,{d:`M3 6h18`,key:`d0wm0j`}],[`path`,{d:`M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2`,key:`e791ji`}]]),Vt=p(`triangle-alert`,[[`path`,{d:`m21.73 18-8-14a2 2 0 0 0-3.48 0l-8 14A2 2 0 0 0 4 21h16a2 2 0 0 0 1.73-3`,key:`wmoenq`}],[`path`,{d:`M12 9v4`,key:`juzpu7`}],[`path`,{d:`M12 17h.01`,key:`p32p05`}]]),Ht=p(`type`,[[`path`,{d:`M12 4v16`,key:`1654pz`}],[`path`,{d:`M4 7V5a1 1 0 0 1 1-1h14a1 1 0 0 1 1 1v2`,key:`e0r10z`}],[`path`,{d:`M9 20h6`,key:`s66wpe`}]]),Ut=p(`unlink`,[[`path`,{d:`m18.84 12.25 1.72-1.71h-.02a5.004 5.004 0 0 0-.12-7.07 5.006 5.006 0 0 0-6.95 0l-1.72 1.71`,key:`yqzxt4`}],[`path`,{d:`m5.17 11.75-1.71 1.71a5.004 5.004 0 0 0 .12 7.07 5.006 5.006 0 0 0 6.95 0l1.71-1.71`,key:`4qinb0`}],[`line`,{x1:`8`,x2:`8`,y1:`2`,y2:`5`,key:`1041cp`}],[`line`,{x1:`2`,x2:`5`,y1:`8`,y2:`8`,key:`14m1p5`}],[`line`,{x1:`16`,x2:`16`,y1:`19`,y2:`22`,key:`rzdirn`}],[`line`,{x1:`19`,x2:`22`,y1:`16`,y2:`16`,key:`ox905f`}]]);p(`upload`,[[`path`,{d:`M12 3v12`,key:`1x0j5s`}],[`path`,{d:`m17 8-5-5-5 5`,key:`7q97r8`}],[`path`,{d:`M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4`,key:`ih7n3h`}]]);var Wt=p(`utensils-crossed`,[[`path`,{d:`m16 2-2.3 2.3a3 3 0 0 0 0 4.2l1.8 1.8a3 3 0 0 0 4.2 0L22 8`,key:`n7qcjb`}],[`path`,{d:`M15 15 3.3 3.3a4.2 4.2 0 0 0 0 6l7.3 7.3c.7.7 2 .7 2.8 0L15 15Zm0 0 7 7`,key:`d0u48b`}],[`path`,{d:`m2.1 21.8 6.4-6.3`,key:`yn04lh`}],[`path`,{d:`m19 5-7 7`,key:`194lzd`}]]),Gt=p(`vibrate`,[[`path`,{d:`m2 8 2 2-2 2 2 2-2 2`,key:`sv1b1`}],[`path`,{d:`m22 8-2 2 2 2-2 2 2 2`,key:`101i4y`}],[`rect`,{width:`8`,height:`14`,x:`8`,y:`5`,rx:`1`,key:`1oyrl4`}]]),Kt=p(`volume-2`,[[`path`,{d:`M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z`,key:`uqj9uw`}],[`path`,{d:`M16 9a5 5 0 0 1 0 6`,key:`1q6k2b`}],[`path`,{d:`M19.364 18.364a9 9 0 0 0 0-12.728`,key:`ijwkga`}]]),qt=p(`volume-x`,[[`path`,{d:`M11 4.702a.705.705 0 0 0-1.203-.498L6.413 7.587A1.4 1.4 0 0 1 5.416 8H3a1 1 0 0 0-1 1v6a1 1 0 0 0 1 1h2.416a1.4 1.4 0 0 1 .997.413l3.383 3.384A.705.705 0 0 0 11 19.298z`,key:`uqj9uw`}],[`line`,{x1:`22`,x2:`16`,y1:`9`,y2:`15`,key:`1ewh16`}],[`line`,{x1:`16`,x2:`22`,y1:`9`,y2:`15`,key:`5ykzw1`}]]),Jt=p(`waves`,[[`path`,{d:`M2 6c.6.5 1.2 1 2.5 1C7 7 7 5 9.5 5c2.6 0 2.4 2 5 2 2.5 0 2.5-2 5-2 1.3 0 1.9.5 2.5 1`,key:`knzxuh`}],[`path`,{d:`M2 12c.6.5 1.2 1 2.5 1 2.5 0 2.5-2 5-2 2.6 0 2.4 2 5 2 2.5 0 2.5-2 5-2 1.3 0 1.9.5 2.5 1`,key:`2jd2cc`}],[`path`,{d:`M2 18c.6.5 1.2 1 2.5 1 2.5 0 2.5-2 5-2 2.6 0 2.4 2 5 2 2.5 0 2.5-2 5-2 1.3 0 1.9.5 2.5 1`,key:`rd2r6e`}]]),Yt=p(`wifi-off`,[[`path`,{d:`M12 20h.01`,key:`zekei9`}],[`path`,{d:`M8.5 16.429a5 5 0 0 1 7 0`,key:`1bycff`}],[`path`,{d:`M5 12.859a10 10 0 0 1 5.17-2.69`,key:`1dl1wf`}],[`path`,{d:`M19 12.859a10 10 0 0 0-2.007-1.523`,key:`4k23kn`}],[`path`,{d:`M2 8.82a15 15 0 0 1 4.177-2.643`,key:`1grhjp`}],[`path`,{d:`M22 8.82a15 15 0 0 0-11.288-3.764`,key:`z3jwby`}],[`path`,{d:`m2 2 20 20`,key:`1ooewy`}]]),Xt=p(`wifi`,[[`path`,{d:`M12 20h.01`,key:`zekei9`}],[`path`,{d:`M2 8.82a15 15 0 0 1 20 0`,key:`dnpr2z`}],[`path`,{d:`M5 12.859a10 10 0 0 1 14 0`,key:`1x1e6c`}],[`path`,{d:`M8.5 16.429a5 5 0 0 1 7 0`,key:`1bycff`}]]),Zt=p(`wind`,[[`path`,{d:`M12.8 19.6A2 2 0 1 0 14 16H2`,key:`148xed`}],[`path`,{d:`M17.5 8a2.5 2.5 0 1 1 2 4H2`,key:`1u4tom`}],[`path`,{d:`M9.8 4.4A2 2 0 1 1 11 8H2`,key:`75valh`}]]),Qt=p(`workflow`,[[`rect`,{width:`8`,height:`8`,x:`3`,y:`3`,rx:`2`,key:`by2w9f`}],[`path`,{d:`M7 11v4a2 2 0 0 0 2 2h4`,key:`xkn7yn`}],[`rect`,{width:`8`,height:`8`,x:`13`,y:`13`,rx:`2`,key:`1cgmvn`}]]),$t=p(`x`,[[`path`,{d:`M18 6 6 18`,key:`1bl5f8`}],[`path`,{d:`m6 6 12 12`,key:`d8bk6v`}]]),en=p(`zap`,[[`path`,{d:`M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z`,key:`1xq2db`}]]),tn=p(`zoom-in`,[[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}],[`line`,{x1:`21`,x2:`16.65`,y1:`21`,y2:`16.65`,key:`13gj7c`}],[`line`,{x1:`11`,x2:`11`,y1:`8`,y2:`14`,key:`1vmskp`}],[`line`,{x1:`8`,x2:`14`,y1:`11`,y2:`11`,key:`durymu`}]]),nn=p(`zoom-out`,[[`circle`,{cx:`11`,cy:`11`,r:`8`,key:`4ej97u`}],[`line`,{x1:`21`,x2:`16.65`,y1:`21`,y2:`16.65`,key:`13gj7c`}],[`line`,{x1:`8`,x2:`14`,y1:`11`,y2:`11`,key:`durymu`}]]),T=function(e){return e.SystemBoot=`system.boot`,e.SystemAddonsReady=`system.addons-ready`,e.SystemRestarting=`system.restarting`,e.SystemRestartCompleted=`system.restart-completed`,e.SystemTlsCertChanged=`system.tls-cert-changed`,e.UpdateAvailable=`update.available`,e.SystemReadyState=`system.ready-state`,e.AddonStarted=`addon.started`,e.AddonStopped=`addon.stopped`,e.AddonRestarted=`addon.restarted`,e.AddonUpdated=`addon.updated`,e.AddonInstalled=`addon.installed`,e.AddonUninstalled=`addon.uninstalled`,e.AddonCrashed=`addon.crashed`,e.AddonRunnerFailed=`addon.runner-failed`,e.AddonError=`addon.error`,e.AddonPageReady=`addon.page-ready`,e.AddonWidgetReady=`addon.widget-ready`,e.AddonLoadFailed=`addon.load-failed`,e.KeychainChanged=`keychain.changed`,e.AddonLoadRecovered=`addon.load-recovered`,e.AddonRetryScheduled=`addon.retry-scheduled`,e.SystemLivenessFailed=`system.liveness-failed`,e.SystemLivenessRecovered=`system.liveness-recovered`,e.AddonRetryAttempting=`addon.retry-attempting`,e.DeviceRegistered=`device.registered`,e.DeviceUnregistered=`device.unregistered`,e.DeviceEnabled=`device.enabled`,e.DeviceDisabled=`device.disabled`,e.DeviceSettingsUpdated=`device.settings-updated`,e.DeviceBindingsChanged=`device.bindings-changed`,e.DeviceMetaChanged=`device.meta-changed`,e.DeviceSourceInfoChanged=`device.source-info-changed`,e.DeviceStreamsRegistered=`device.streams-registered`,e.DeviceProvisioned=`device.provisioned`,e.DeviceReady=`device.ready`,e.IntegrationEnabled=`integration.enabled`,e.IntegrationDisabled=`integration.disabled`,e.IntegrationDeleted=`integration.deleted`,e.BrokerStatusChanged=`broker.status-changed`,e.BrokerMessage=`broker.message`,e.ProviderStarted=`provider.started`,e.ProviderStopped=`provider.stopped`,e.ProcessCrashed=`process.crashed`,e.ProcessRestartScheduled=`process.restart_scheduled`,e.ProcessRestarted=`process.restarted`,e.StorageLocationsChanged=`storage.locations-changed`,e.RecordingStarted=`recording.started`,e.RecordingStopped=`recording.stopped`,e.RecordingError=`recording.error`,e.RecordingHealthDegraded=`recording.health.degraded`,e.RecordingHealthStalled=`recording.health.stalled`,e.RecordingHealthOk=`recording.health.ok`,e.RecordingStorageCritical=`recording.storage.critical`,e.StorageLocationLow=`storage.location.low`,e.StorageLocationCritical=`storage.location.critical`,e.StorageLocationOk=`storage.location.ok`,e.RecordingSegmentWritten=`recording.segment.written`,e.RecordingPolicyFallback=`recording.policy.fallback`,e.RecordingRetentionCompleted=`recording.retention.completed`,e.RecordingExportProgress=`recording.export.progress`,e.RecordingExportCompleted=`recording.export.completed`,e.RecordingExportFailed=`recording.export.failed`,e.DetectionEvent=`detection.event`,e.SessionTrackNew=`session.track.new`,e.SessionTrackExpired=`session.track.expired`,e.BenchmarkProgress=`benchmark.progress`,e.PlatformProbePhase=`platform-probe.phase`,e.PipelineProgress=`pipeline.progress`,e.PipelineTrace=`pipeline.trace`,e.PipelineInferenceResult=`pipeline.inference-result`,e.PipelineCameraAssigned=`pipeline.camera-assigned`,e.PipelineCameraUnassigned=`pipeline.camera-unassigned`,e.PipelineNodeInferenceUnavailable=`pipeline.node-inference-unavailable`,e.PipelineDetectionBlind=`pipeline.detection-blind`,e.PipelineCameraUpdated=`pipeline.camera-updated`,e.PipelineIngestOwnerChanged=`pipeline.ingest-owner-changed`,e.PipelineRunnerLoadSnapshot=`pipeline.runner-load-snapshot`,e.PipelineCameraMetricsSnapshot=`pipeline.camera-metrics-snapshot`,e.StreamBrokerMetricsSnapshot=`stream-broker.metrics-snapshot`,e.StreamBrokerOnCamStreamDemand=`stream-broker.onCamStreamDemand`,e.StreamBrokerOnCamStreamIdle=`stream-broker.onCamStreamIdle`,e.StreamBrokerOnRequestStreamSourceRefresh=`stream-broker.onRequestStreamSourceRefresh`,e.StreamParamsChanged=`stream-params.changed`,e.DeviceStateChanged=`device.state-changed`,e.DeviceNativeShadowChanged=`device.native-shadow-changed`,e.ZoneAnalyticsOccupancyChanged=`zone-analytics.occupancy-changed`,e.BatteryOnStatusChanged=`battery.onStatusChanged`,e.NetworkLinkOnStatusChanged=`network-link.onStatusChanged`,e.BatteryOnWakeStarted=`battery.onWakeStarted`,e.DoorbellOnPressed=`doorbell.onPressed`,e.EventEmitted=`event-emitter.event`,e.PipelineEngineMetricsSnapshot=`pipeline.engine-metrics-snapshot`,e.PipelineEngineProvisioning=`pipeline.engine-provisioning`,e.ClusterTopologySnapshot=`cluster.topology-snapshot`,e.MetricsNodeResourcesSnapshot=`metrics.node-resources-snapshot`,e.MetricsNodeProcessesSnapshot=`metrics.node-processes-snapshot`,e.CapabilityBindingChanged=`capability.binding-changed`,e.ModelDownloadProgress=`model.download.progress`,e.AgentRegistered=`agent.registered`,e.AgentUnregistered=`agent.unregistered`,e.AgentOnline=`agent.online`,e.AgentOffline=`agent.offline`,e.WorkerOnline=`worker.online`,e.WorkerOffline=`worker.offline`,e.AgentTaskDispatched=`agent.task.dispatched`,e.AgentTaskAssigned=`agent.task.assigned`,e.AgentTrpcConnected=`agent.trpc.connected`,e.AgentWsConnected=`agent.ws.connected`,e.AgentWsDisconnected=`agent.ws.disconnected`,e.AgentBackupActivated=`agent.backup.activated`,e.OrchestrationSettingsUpdated=`orchestration.settings-updated`,e.MotionAnalysis=`detection.motion-analysis`,e.MotionZonesRaw=`detection.motion-zones-raw`,e.MotionOnMotionChanged=`motion.on-motion-changed`,e.DetectionResult=`detection.result`,e.DetectionRaw=`detection.raw`,e.DetectionCameraNative=`detection.camera-native`,e.PipelineAudioInferenceResult=`pipeline.audio-inference-result`,e.DetectionPhaseTransition=`detection.phase-transition`,e.ProviderMotion=`provider.motion`,e.ProviderDetection=`provider.detection`,e.EnrichmentEmbeddingStored=`enrichment.embedding.stored`,e.EnrichmentSceneStateChanged=`enrichment.scene.state-changed`,e.EnrichmentActivitySummary=`enrichment.activity.summary`,e.PipelineAnalyticsTrackLifecycle=`pipeline-analytics.track-lifecycle`,e.PipelineAnalyticsTrackStarted=`pipeline-analytics.track-started`,e.PipelineAnalyticsTrackEnded=`pipeline-analytics.track-ended`,e.PipelineAnalyticsDetectionEvent=`pipeline-analytics.detection-event`,e.PipelineAnalyticsFrameTracked=`pipeline-analytics.frame-tracked`,e.PipelineAnalyticsStationaryChanged=`pipeline-analytics.stationary-changed`,e.PipelineAnalyticsPackageDelivered=`pipeline-analytics.package-delivered`,e.PipelineAnalyticsPackagePickedUp=`pipeline-analytics.package-picked-up`,e.PipelineAnalyticsFaceGalleryChanged=`pipeline-analytics.face-gallery-changed`,e.PipelineAnalyticsPlateGalleryChanged=`pipeline-analytics.plate-gallery-changed`,e.CameraStreamsProfileSlotsChanged=`camera-streams.onProfileSlotsChanged`,e.StreamOnline=`stream.online`,e.StreamOffline=`stream.offline`,e.NetworkTunnelStarted=`network.tunnel.started`,e.NetworkTunnelStopped=`network.tunnel.stopped`,e.LocalNetworkChanged=`network.local.changed`,e.MeshNetworkChanged=`network.mesh.changed`,e.BackupCompleted=`backup.completed`,e.BackupRunCompleted=`backup.run-completed`,e.BackupRestored=`backup.restored`,e.NotificationDispatched=`notification.dispatched`,e.NotificationFailed=`notification.failed`,e.DeviceUpdated=`device.updated`,e.DeviceOnline=`device.online`,e.DeviceOffline=`device.offline`,e.DeviceAwake=`device.awake`,e.DeviceSleeping=`device.sleeping`,e.RetentionCleanup=`retention.cleanup`,e.AddonsBulkUpdateProgress=`addons.bulk-update-progress`,e.AddonsJobProgress=`addons.job-progress`,e.AddonsJobLog=`addons.job-log`,e.AccessoriesChildVisibilityChanged=`accessories.onChildVisibilityChanged`,e.AccessoriesChanged=`accessories.onAccessoriesChanged`,e.ModelConvertProgress=`model-convert.progress`,e}({}),rn=new Set([`device.native-shadow-changed`]);function an(e){return rn.has(e)}function on(){let e=Object.values(T).filter(e=>typeof e==`string`);return[...new Set(e)].filter(e=>!an(e)).toSorted()}var sn;function E(e,t,n){function r(n,r){if(n._zod||Object.defineProperty(n,"_zod",{value:{def:r,constr:o,traits:new Set},enumerable:!1}),n._zod.traits.has(e))return;n._zod.traits.add(e),t(n,r);let i=o.prototype,a=Object.keys(i);for(let e=0;e<a.length;e++){let t=a[e];t in n||(n[t]=i[t].bind(n))}}let i=n?.Parent??Object;class a extends i{}Object.defineProperty(a,"name",{value:e});function o(e){var t;let i=n?.Parent?new a:this;r(i,e),(t=i._zod).deferred??(t.deferred=[]);for(let e of i._zod.deferred)e();return i}return Object.defineProperty(o,"init",{value:r}),Object.defineProperty(o,Symbol.hasInstance,{value:t=>n?.Parent&&t instanceof n.Parent?!0:t?._zod?.traits?.has(e)}),Object.defineProperty(o,"name",{value:e}),o}var cn=class extends Error{constructor(){super(`Encountered Promise during synchronous parse. Use .parseAsync() instead.`)}},ln=class extends Error{constructor(e){super(`Encountered unidirectional transform during encode: ${e}`),this.name=`ZodEncodeError`}};(sn=globalThis).__zod_globalConfig??(sn.__zod_globalConfig={});var un=globalThis.__zod_globalConfig;function dn(e){return e&&Object.assign(un,e),un}function fn(e){let t=Object.values(e).filter(e=>typeof e==`number`);return Object.entries(e).filter(([e,n])=>t.indexOf(+e)===-1).map(([e,t])=>t)}function pn(e,t){return typeof t==`bigint`?t.toString():t}function mn(e){return{get value(){{let t=e();return Object.defineProperty(this,"value",{value:t}),t}throw Error(`cached value already set`)}}}function hn(e){return e==null}function gn(e){let t=+!!e.startsWith(`^`),n=e.endsWith(`$`)?e.length-1:e.length;return e.slice(t,n)}function _n(e,t){let n=e/t,r=Math.round(n),i=2**-52*Math.max(Math.abs(n),1);return Math.abs(n-r)<i?0:n-r}var vn=Symbol(`evaluating`);function yn(e,t,n){let r;Object.defineProperty(e,t,{get(){if(r!==vn)return r===void 0&&(r=vn,r=n()),r},set(n){Object.defineProperty(e,t,{value:n})},configurable:!0})}function bn(e,t,n){Object.defineProperty(e,t,{value:n,writable:!0,enumerable:!0,configurable:!0})}function xn(...e){let t={};for(let n of e)Object.assign(t,Object.getOwnPropertyDescriptors(n));return Object.defineProperties({},t)}function Sn(e){return JSON.stringify(e)}function Cn(e){return e.toLowerCase().trim().replace(/[^\w\s-]/g,``).replace(/[\s_-]+/g,`-`).replace(/^-+|-+$/g,``)}var wn=`captureStackTrace`in Error?Error.captureStackTrace:(...e)=>{};function Tn(e){return typeof e==`object`&&!!e&&!Array.isArray(e)}var En=mn(()=>{if(un.jitless||typeof navigator<`u`&&navigator?.userAgent?.includes(`Cloudflare`))return!1;try{return Function(``),!0}catch{return!1}});function Dn(e){if(Tn(e)===!1)return!1;let t=e.constructor;if(t===void 0||typeof t!=`function`)return!0;let n=t.prototype;return!(Tn(n)===!1||Object.prototype.hasOwnProperty.call(n,`isPrototypeOf`)===!1)}function On(e){return Dn(e)?{...e}:Array.isArray(e)?[...e]:e instanceof Map?new Map(e):e instanceof Set?new Set(e):e}var kn=new Set([`string`,`number`,`symbol`]);function An(e){return e.replace(/[.*+?^${}()|[\]\\]/g,`\\$&`)}function jn(e,t,n){let r=new e._zod.constr(t??e._zod.def);return(!t||n?.parent)&&(r._zod.parent=e),r}function D(e){let t=e;if(!t)return{};if(typeof t==`string`)return{error:()=>t};if(t?.message!==void 0){if(t?.error!==void 0)throw Error("Cannot specify both `message` and `error` params");t.error=t.message}return delete t.message,typeof t.error==`string`?{...t,error:()=>t.error}:t}function Mn(e){return Object.keys(e).filter(t=>e[t]._zod.optin===`optional`&&e[t]._zod.optout===`optional`)}var Nn={safeint:[-(2**53-1),2**53-1],int32:[-2147483648,2147483647],uint32:[0,4294967295],float32:[-34028234663852886e22,34028234663852886e22],float64:[-Number.MAX_VALUE,Number.MAX_VALUE]};function Pn(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.pick() cannot be used on object schemas containing refinements`);return jn(e,xn(e._zod.def,{get shape(){let e={};for(let r in t){if(!(r in n.shape))throw Error(`Unrecognized key: "${r}"`);t[r]&&(e[r]=n.shape[r])}return bn(this,`shape`,e),e},checks:[]}))}function Fn(e,t){let n=e._zod.def,r=n.checks;if(r&&r.length>0)throw Error(`.omit() cannot be used on object schemas containing refinements`);return jn(e,xn(e._zod.def,{get shape(){let r={...e._zod.def.shape};for(let e in t){if(!(e in n.shape))throw Error(`Unrecognized key: "${e}"`);t[e]&&delete r[e]}return bn(this,`shape`,r),r},checks:[]}))}function In(e,t){if(!Dn(t))throw Error(`Invalid input to extend: expected a plain object`);let n=e._zod.def.checks;if(n&&n.length>0){let n=e._zod.def.shape;for(let e in t)if(Object.getOwnPropertyDescriptor(n,e)!==void 0)throw Error("Cannot overwrite keys on object schemas containing refinements. Use `.safeExtend()` instead.")}return jn(e,xn(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return bn(this,`shape`,n),n}}))}function Ln(e,t){if(!Dn(t))throw Error(`Invalid input to safeExtend: expected a plain object`);return jn(e,xn(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t};return bn(this,`shape`,n),n}}))}function Rn(e,t){if(e._zod.def.checks?.length)throw Error(`.merge() cannot be used on object schemas containing refinements. Use .safeExtend() instead.`);return jn(e,xn(e._zod.def,{get shape(){let n={...e._zod.def.shape,...t._zod.def.shape};return bn(this,`shape`,n),n},get catchall(){return t._zod.def.catchall},checks:t._zod.def.checks??[]}))}function zn(e,t,n){let r=t._zod.def.checks;if(r&&r.length>0)throw Error(`.partial() cannot be used on object schemas containing refinements`);return jn(t,xn(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in r))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t])}else for(let t in r)i[t]=e?new e({type:`optional`,innerType:r[t]}):r[t];return bn(this,`shape`,i),i},checks:[]}))}function Bn(e,t,n){return jn(t,xn(t._zod.def,{get shape(){let r=t._zod.def.shape,i={...r};if(n)for(let t in n){if(!(t in i))throw Error(`Unrecognized key: "${t}"`);n[t]&&(i[t]=new e({type:`nonoptional`,innerType:r[t]}))}else for(let t in r)i[t]=new e({type:`nonoptional`,innerType:r[t]});return bn(this,`shape`,i),i}}))}function Vn(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue!==!0)return!0;return!1}function Hn(e,t=0){if(e.aborted===!0)return!0;for(let n=t;n<e.issues.length;n++)if(e.issues[n]?.continue===!1)return!0;return!1}function Un(e,t){return t.map(t=>{var n;return(n=t).path??(n.path=[]),t.path.unshift(e),t})}function Wn(e){return typeof e==`string`?e:e?.message}function Gn(e,t,n){let r=e.message?e.message:Wn(e.inst?._zod.def?.error?.(e))??Wn(t?.error?.(e))??Wn(n.customError?.(e))??Wn(n.localeError?.(e))??`Invalid input`,{inst:i,continue:a,input:o,...s}=e;return s.path??=[],s.message=r,t?.reportInput&&(s.input=o),s}function Kn(e){return Array.isArray(e)?`array`:typeof e==`string`?`string`:`unknown`}function qn(...e){let[t,n,r]=e;return typeof t==`string`?{message:t,code:`custom`,input:n,inst:r}:{...t}}var Jn=(e,t)=>{e.name=`$ZodError`,Object.defineProperty(e,"_zod",{value:e._zod,enumerable:!1}),Object.defineProperty(e,"issues",{value:t,enumerable:!1}),e.message=JSON.stringify(t,pn,2),Object.defineProperty(e,"toString",{value:()=>e.message,enumerable:!1})},Yn=E(`$ZodError`,Jn),Xn=E(`$ZodError`,Jn,{Parent:Error});function Zn(e,t=e=>e.message){let n={},r=[];for(let i of e.issues)i.path.length>0?(n[i.path[0]]=n[i.path[0]]||[],n[i.path[0]].push(t(i))):r.push(t(i));return{formErrors:r,fieldErrors:n}}function Qn(e,t=e=>e.message){let n={_errors:[]},r=(e,i=[])=>{for(let a of e.issues)if(a.code===`invalid_union`&&a.errors.length)a.errors.map(e=>r({issues:e},[...i,...a.path]));else if(a.code===`invalid_key`)r({issues:a.issues},[...i,...a.path]);else if(a.code===`invalid_element`)r({issues:a.issues},[...i,...a.path]);else{let e=[...i,...a.path];if(e.length===0)n._errors.push(t(a));else{let r=n,i=0;for(;i<e.length;){let n=e[i];i===e.length-1?(r[n]=r[n]||{_errors:[]},r[n]._errors.push(t(a))):r[n]=r[n]||{_errors:[]},r=r[n],i++}}}};return r(e),n}var $n=e=>(t,n,r,i)=>{let a=r?{...r,async:!1}:{async:!1},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise)throw new cn;if(o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>Gn(e,a,dn())));throw wn(t,i?.callee),t}return o.value},er=e=>async(t,n,r,i)=>{let a=r?{...r,async:!0}:{async:!0},o=t._zod.run({value:n,issues:[]},a);if(o instanceof Promise&&(o=await o),o.issues.length){let t=new(i?.Err??e)(o.issues.map(e=>Gn(e,a,dn())));throw wn(t,i?.callee),t}return o.value},tr=e=>(t,n,r)=>{let i=r?{...r,async:!1}:{async:!1},a=t._zod.run({value:n,issues:[]},i);if(a instanceof Promise)throw new cn;return a.issues.length?{success:!1,error:new(e??Yn)(a.issues.map(e=>Gn(e,i,dn())))}:{success:!0,data:a.value}},nr=tr(Xn),rr=e=>async(t,n,r)=>{let i=r?{...r,async:!0}:{async:!0},a=t._zod.run({value:n,issues:[]},i);return a instanceof Promise&&(a=await a),a.issues.length?{success:!1,error:new e(a.issues.map(e=>Gn(e,i,dn())))}:{success:!0,data:a.value}},ir=rr(Xn),ar=e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return $n(e)(t,n,i)},or=e=>(t,n,r)=>$n(e)(t,n,r),sr=e=>async(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return er(e)(t,n,i)},cr=e=>async(t,n,r)=>er(e)(t,n,r),lr=e=>(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return tr(e)(t,n,i)},ur=e=>(t,n,r)=>tr(e)(t,n,r),dr=e=>async(t,n,r)=>{let i=r?{...r,direction:`backward`}:{direction:`backward`};return rr(e)(t,n,i)},fr=e=>async(t,n,r)=>rr(e)(t,n,r),pr=/^[cC][0-9a-z]{6,}$/,mr=/^[0-9a-z]+$/,hr=/^[0-9A-HJKMNP-TV-Za-hjkmnp-tv-z]{26}$/,gr=/^[0-9a-vA-V]{20}$/,_r=/^[A-Za-z0-9]{27}$/,vr=/^[a-zA-Z0-9_-]{21}$/,yr=/^P(?:(\d+W)|(?!.*W)(?=\d|T\d)(\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+([.,]\d+)?S)?)?)$/,br=/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12})$/,xr=e=>e?RegExp(`^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-${e}[0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12})$`):/^([0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[1-8][0-9a-fA-F]{3}-[89abAB][0-9a-fA-F]{3}-[0-9a-fA-F]{12}|00000000-0000-0000-0000-000000000000|ffffffff-ffff-ffff-ffff-ffffffffffff)$/,Sr=/^(?!\.)(?!.*\.\.)([A-Za-z0-9_'+\-\.]*)[A-Za-z0-9_+-]@([A-Za-z0-9][A-Za-z0-9\-]*\.)+[A-Za-z]{2,}$/,Cr=`^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$`;function wr(){return new RegExp(Cr,`u`)}var Tr=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,Er=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:))$/,Dr=/^((25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/([0-9]|[1-2][0-9]|3[0-2])$/,Or=/^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|::|([0-9a-fA-F]{1,4})?::([0-9a-fA-F]{1,4}:?){0,6})\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,kr=/^$|^(?:[0-9a-zA-Z+/]{4})*(?:(?:[0-9a-zA-Z+/]{2}==)|(?:[0-9a-zA-Z+/]{3}=))?$/,Ar=/^[A-Za-z0-9_-]*$/,jr=/^https?$/,Mr=/^\+[1-9]\d{6,14}$/,Nr=`(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))`,Pr=RegExp(`^${Nr}$`);function Fr(e){let t=`(?:[01]\\d|2[0-3]):[0-5]\\d`;return typeof e.precision==`number`?e.precision===-1?`${t}`:e.precision===0?`${t}:[0-5]\\d`:`${t}:[0-5]\\d\\.\\d{${e.precision}}`:`${t}(?::[0-5]\\d(?:\\.\\d+)?)?`}function Ir(e){return RegExp(`^${Fr(e)}$`)}function Lr(e){let t=Fr({precision:e.precision}),n=[`Z`];e.local&&n.push(``),e.offset&&n.push(`([+-](?:[01]\\d|2[0-3]):[0-5]\\d)`);let r=`${t}(?:${n.join(`|`)})`;return RegExp(`^${Nr}T(?:${r})$`)}var Rr=e=>{let t=e?`[\\s\\S]{${e?.minimum??0},${e?.maximum??``}}`:`[\\s\\S]*`;return RegExp(`^${t}$`)},zr=/^-?\d+$/,Br=/^-?\d+(?:\.\d+)?$/,Vr=/^(?:true|false)$/i,Hr=/^null$/i,Ur=/^[^A-Z]*$/,Wr=/^[^a-z]*$/,Gr=E(`$ZodCheck`,(e,t)=>{var n;e._zod??={},e._zod.def=t,(n=e._zod).onattach??(n.onattach=[])}),Kr={number:`number`,bigint:`bigint`,object:`date`},qr=E(`$ZodCheckLessThan`,(e,t)=>{Gr.init(e,t);let n=Kr[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.maximum:n.exclusiveMaximum)??1/0;t.value<r&&(t.inclusive?n.maximum=t.value:n.exclusiveMaximum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value<=t.value:r.value<t.value)||r.issues.push({origin:n,code:`too_big`,maximum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Jr=E(`$ZodCheckGreaterThan`,(e,t)=>{Gr.init(e,t);let n=Kr[typeof t.value];e._zod.onattach.push(e=>{let n=e._zod.bag,r=(t.inclusive?n.minimum:n.exclusiveMinimum)??-1/0;t.value>r&&(t.inclusive?n.minimum=t.value:n.exclusiveMinimum=t.value)}),e._zod.check=r=>{(t.inclusive?r.value>=t.value:r.value>t.value)||r.issues.push({origin:n,code:`too_small`,minimum:typeof t.value==`object`?t.value.getTime():t.value,input:r.value,inclusive:t.inclusive,inst:e,continue:!t.abort})}}),Yr=E(`$ZodCheckMultipleOf`,(e,t)=>{Gr.init(e,t),e._zod.onattach.push(e=>{var n;(n=e._zod.bag).multipleOf??(n.multipleOf=t.value)}),e._zod.check=n=>{if(typeof n.value!=typeof t.value)throw Error(`Cannot mix number and bigint in multiple_of check.`);(typeof n.value==`bigint`?n.value%t.value===BigInt(0):_n(n.value,t.value)===0)||n.issues.push({origin:typeof n.value,code:`not_multiple_of`,divisor:t.value,input:n.value,inst:e,continue:!t.abort})}}),Xr=E(`$ZodCheckNumberFormat`,(e,t)=>{Gr.init(e,t),t.format=t.format||`float64`;let n=t.format?.includes(`int`),r=n?`int`:`number`,[i,a]=Nn[t.format];e._zod.onattach.push(e=>{let r=e._zod.bag;r.format=t.format,r.minimum=i,r.maximum=a,n&&(r.pattern=zr)}),e._zod.check=o=>{let s=o.value;if(n){if(!Number.isInteger(s)){o.issues.push({expected:r,format:t.format,code:`invalid_type`,continue:!1,input:s,inst:e});return}if(!Number.isSafeInteger(s)){s>0?o.issues.push({input:s,code:`too_big`,maximum:2**53-1,note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort}):o.issues.push({input:s,code:`too_small`,minimum:-(2**53-1),note:`Integers must be within the safe integer range.`,inst:e,origin:r,inclusive:!0,continue:!t.abort});return}}s<i&&o.issues.push({origin:`number`,input:s,code:`too_small`,minimum:i,inclusive:!0,inst:e,continue:!t.abort}),s>a&&o.issues.push({origin:`number`,input:s,code:`too_big`,maximum:a,inclusive:!0,inst:e,continue:!t.abort})}}),Zr=E(`$ZodCheckMaxLength`,(e,t)=>{var n;Gr.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!hn(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.maximum??1/0;t.maximum<n&&(e._zod.bag.maximum=t.maximum)}),e._zod.check=n=>{let r=n.value;if(r.length<=t.maximum)return;let i=Kn(r);n.issues.push({origin:i,code:`too_big`,maximum:t.maximum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),Qr=E(`$ZodCheckMinLength`,(e,t)=>{var n;Gr.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!hn(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag.minimum??-1/0;t.minimum>n&&(e._zod.bag.minimum=t.minimum)}),e._zod.check=n=>{let r=n.value;if(r.length>=t.minimum)return;let i=Kn(r);n.issues.push({origin:i,code:`too_small`,minimum:t.minimum,inclusive:!0,input:r,inst:e,continue:!t.abort})}}),$r=E(`$ZodCheckLengthEquals`,(e,t)=>{var n;Gr.init(e,t),(n=e._zod.def).when??(n.when=e=>{let t=e.value;return!hn(t)&&t.length!==void 0}),e._zod.onattach.push(e=>{let n=e._zod.bag;n.minimum=t.length,n.maximum=t.length,n.length=t.length}),e._zod.check=n=>{let r=n.value,i=r.length;if(i===t.length)return;let a=Kn(r),o=i>t.length;n.issues.push({origin:a,...o?{code:`too_big`,maximum:t.length}:{code:`too_small`,minimum:t.length},inclusive:!0,exact:!0,input:n.value,inst:e,continue:!t.abort})}}),ei=E(`$ZodCheckStringFormat`,(e,t)=>{var n,r;Gr.init(e,t),e._zod.onattach.push(e=>{let n=e._zod.bag;n.format=t.format,t.pattern&&(n.patterns??=new Set,n.patterns.add(t.pattern))}),t.pattern?(n=e._zod).check??(n.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:t.format,input:n.value,...t.pattern?{pattern:t.pattern.toString()}:{},inst:e,continue:!t.abort})}):(r=e._zod).check??(r.check=()=>{})}),ti=E(`$ZodCheckRegex`,(e,t)=>{ei.init(e,t),e._zod.check=n=>{t.pattern.lastIndex=0,!t.pattern.test(n.value)&&n.issues.push({origin:`string`,code:`invalid_format`,format:`regex`,input:n.value,pattern:t.pattern.toString(),inst:e,continue:!t.abort})}}),ni=E(`$ZodCheckLowerCase`,(e,t)=>{t.pattern??=Ur,ei.init(e,t)}),ri=E(`$ZodCheckUpperCase`,(e,t)=>{t.pattern??=Wr,ei.init(e,t)}),ii=E(`$ZodCheckIncludes`,(e,t)=>{Gr.init(e,t);let n=An(t.includes),r=new RegExp(typeof t.position==`number`?`^.{${t.position}}${n}`:n);t.pattern=r,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(r)}),e._zod.check=n=>{n.value.includes(t.includes,t.position)||n.issues.push({origin:`string`,code:`invalid_format`,format:`includes`,includes:t.includes,input:n.value,inst:e,continue:!t.abort})}}),ai=E(`$ZodCheckStartsWith`,(e,t)=>{Gr.init(e,t);let n=RegExp(`^${An(t.prefix)}.*`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.startsWith(t.prefix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`starts_with`,prefix:t.prefix,input:n.value,inst:e,continue:!t.abort})}}),oi=E(`$ZodCheckEndsWith`,(e,t)=>{Gr.init(e,t);let n=RegExp(`.*${An(t.suffix)}$`);t.pattern??=n,e._zod.onattach.push(e=>{let t=e._zod.bag;t.patterns??=new Set,t.patterns.add(n)}),e._zod.check=n=>{n.value.endsWith(t.suffix)||n.issues.push({origin:`string`,code:`invalid_format`,format:`ends_with`,suffix:t.suffix,input:n.value,inst:e,continue:!t.abort})}}),si=E(`$ZodCheckOverwrite`,(e,t)=>{Gr.init(e,t),e._zod.check=e=>{e.value=t.tx(e.value)}}),ci=class{constructor(e=[]){this.content=[],this.indent=0,this&&(this.args=e)}indented(e){this.indent+=1,e(this),--this.indent}write(e){if(typeof e==`function`){e(this,{execution:`sync`}),e(this,{execution:`async`});return}let t=e.split(`
|
|
3
|
+
`).filter(e=>e),n=Math.min(...t.map(e=>e.length-e.trimStart().length)),r=t.map(e=>e.slice(n)).map(e=>` `.repeat(this.indent*2)+e);for(let e of r)this.content.push(e)}compile(){let e=Function,t=this?.args,n=[...(this?.content??[``]).map(e=>` ${e}`)];return new e(...t,n.join(`
|
|
4
|
+
`))}},li={major:4,minor:4,patch:3},ui=E(`$ZodType`,(e,t)=>{var n;e??={},e._zod.def=t,e._zod.bag=e._zod.bag||{},e._zod.version=li;let r=[...e._zod.def.checks??[]];e._zod.traits.has(`$ZodCheck`)&&r.unshift(e);for(let t of r)for(let n of t._zod.onattach)n(e);if(r.length===0)(n=e._zod).deferred??(n.deferred=[]),e._zod.deferred?.push(()=>{e._zod.run=e._zod.parse});else{let t=(e,t,n)=>{let r=Vn(e),i;for(let a of t){if(a._zod.def.when){if(Hn(e)||!a._zod.def.when(e))continue}else if(r)continue;let t=e.issues.length,o=a._zod.check(e);if(o instanceof Promise&&n?.async===!1)throw new cn;if(i||o instanceof Promise)i=(i??Promise.resolve()).then(async()=>{await o,e.issues.length!==t&&(r||=Vn(e,t))});else{if(e.issues.length===t)continue;r||=Vn(e,t)}}return i?i.then(()=>e):e},n=(n,i,a)=>{if(Vn(n))return n.aborted=!0,n;let o=t(i,r,a);if(o instanceof Promise){if(a.async===!1)throw new cn;return o.then(t=>e._zod.parse(t,a))}return e._zod.parse(o,a)};e._zod.run=(i,a)=>{if(a.skipChecks)return e._zod.parse(i,a);if(a.direction===`backward`){let t=e._zod.parse({value:i.value,issues:[]},{...a,skipChecks:!0});return t instanceof Promise?t.then(e=>n(e,i,a)):n(t,i,a)}let o=e._zod.parse(i,a);if(o instanceof Promise){if(a.async===!1)throw new cn;return o.then(e=>t(e,r,a))}return t(o,r,a)}}yn(e,`~standard`,()=>({validate:t=>{try{let n=nr(e,t);return n.success?{value:n.data}:{issues:n.error?.issues}}catch{return ir(e,t).then(e=>e.success?{value:e.data}:{issues:e.error?.issues})}},vendor:`zod`,version:1}))}),di=E(`$ZodString`,(e,t)=>{ui.init(e,t),e._zod.pattern=[...e?._zod.bag?.patterns??[]].pop()??Rr(e._zod.bag),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=String(n.value)}catch{}return typeof n.value==`string`||n.issues.push({expected:`string`,code:`invalid_type`,input:n.value,inst:e}),n}}),fi=E(`$ZodStringFormat`,(e,t)=>{ei.init(e,t),di.init(e,t)}),pi=E(`$ZodGUID`,(e,t)=>{t.pattern??=br,fi.init(e,t)}),mi=E(`$ZodUUID`,(e,t)=>{if(t.version){let e={v1:1,v2:2,v3:3,v4:4,v5:5,v6:6,v7:7,v8:8}[t.version];if(e===void 0)throw Error(`Invalid UUID version: "${t.version}"`);t.pattern??=xr(e)}else t.pattern??=xr();fi.init(e,t)}),hi=E(`$ZodEmail`,(e,t)=>{t.pattern??=Sr,fi.init(e,t)}),gi=E(`$ZodURL`,(e,t)=>{fi.init(e,t),e._zod.check=n=>{try{let r=n.value.trim();if(!t.normalize&&t.protocol?.source===jr.source&&!/^https?:\/\//i.test(r)){n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid URL format`,input:n.value,inst:e,continue:!t.abort});return}let i=new URL(r);t.hostname&&(t.hostname.lastIndex=0,t.hostname.test(i.hostname)||n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid hostname`,pattern:t.hostname.source,input:n.value,inst:e,continue:!t.abort})),t.protocol&&(t.protocol.lastIndex=0,t.protocol.test(i.protocol.endsWith(`:`)?i.protocol.slice(0,-1):i.protocol)||n.issues.push({code:`invalid_format`,format:`url`,note:`Invalid protocol`,pattern:t.protocol.source,input:n.value,inst:e,continue:!t.abort})),t.normalize?n.value=i.href:n.value=r;return}catch{n.issues.push({code:`invalid_format`,format:`url`,input:n.value,inst:e,continue:!t.abort})}}}),_i=E(`$ZodEmoji`,(e,t)=>{t.pattern??=wr(),fi.init(e,t)}),vi=E(`$ZodNanoID`,(e,t)=>{t.pattern??=vr,fi.init(e,t)}),yi=E(`$ZodCUID`,(e,t)=>{t.pattern??=pr,fi.init(e,t)}),bi=E(`$ZodCUID2`,(e,t)=>{t.pattern??=mr,fi.init(e,t)}),xi=E(`$ZodULID`,(e,t)=>{t.pattern??=hr,fi.init(e,t)}),Si=E(`$ZodXID`,(e,t)=>{t.pattern??=gr,fi.init(e,t)}),Ci=E(`$ZodKSUID`,(e,t)=>{t.pattern??=_r,fi.init(e,t)}),wi=E(`$ZodISODateTime`,(e,t)=>{t.pattern??=Lr(t),fi.init(e,t)}),Ti=E(`$ZodISODate`,(e,t)=>{t.pattern??=Pr,fi.init(e,t)}),Ei=E(`$ZodISOTime`,(e,t)=>{t.pattern??=Ir(t),fi.init(e,t)}),Di=E(`$ZodISODuration`,(e,t)=>{t.pattern??=yr,fi.init(e,t)}),Oi=E(`$ZodIPv4`,(e,t)=>{t.pattern??=Tr,fi.init(e,t),e._zod.bag.format=`ipv4`}),ki=E(`$ZodIPv6`,(e,t)=>{t.pattern??=Er,fi.init(e,t),e._zod.bag.format=`ipv6`,e._zod.check=n=>{try{new URL(`http://[${n.value}]`)}catch{n.issues.push({code:`invalid_format`,format:`ipv6`,input:n.value,inst:e,continue:!t.abort})}}}),Ai=E(`$ZodCIDRv4`,(e,t)=>{t.pattern??=Dr,fi.init(e,t)}),ji=E(`$ZodCIDRv6`,(e,t)=>{t.pattern??=Or,fi.init(e,t),e._zod.check=n=>{let r=n.value.split(`/`);try{if(r.length!==2)throw Error();let[e,t]=r;if(!t)throw Error();let n=Number(t);if(`${n}`!==t||n<0||n>128)throw Error();new URL(`http://[${e}]`)}catch{n.issues.push({code:`invalid_format`,format:`cidrv6`,input:n.value,inst:e,continue:!t.abort})}}});function Mi(e){if(e===``)return!0;if(/\s/.test(e)||e.length%4!=0)return!1;try{return atob(e),!0}catch{return!1}}var Ni=E(`$ZodBase64`,(e,t)=>{t.pattern??=kr,fi.init(e,t),e._zod.bag.contentEncoding=`base64`,e._zod.check=n=>{Mi(n.value)||n.issues.push({code:`invalid_format`,format:`base64`,input:n.value,inst:e,continue:!t.abort})}});function Pi(e){if(!Ar.test(e))return!1;let t=e.replace(/[-_]/g,e=>e===`-`?`+`:`/`);return Mi(t.padEnd(Math.ceil(t.length/4)*4,`=`))}var Fi=E(`$ZodBase64URL`,(e,t)=>{t.pattern??=Ar,fi.init(e,t),e._zod.bag.contentEncoding=`base64url`,e._zod.check=n=>{Pi(n.value)||n.issues.push({code:`invalid_format`,format:`base64url`,input:n.value,inst:e,continue:!t.abort})}}),Ii=E(`$ZodE164`,(e,t)=>{t.pattern??=Mr,fi.init(e,t)});function Li(e,t=null){try{let n=e.split(`.`);if(n.length!==3)return!1;let[r]=n;if(!r)return!1;let i=JSON.parse(atob(r));return!(`typ`in i&&i?.typ!==`JWT`||!i.alg||t&&(!(`alg`in i)||i.alg!==t))}catch{return!1}}var Ri=E(`$ZodJWT`,(e,t)=>{fi.init(e,t),e._zod.check=n=>{Li(n.value,t.alg)||n.issues.push({code:`invalid_format`,format:`jwt`,input:n.value,inst:e,continue:!t.abort})}}),zi=E(`$ZodNumber`,(e,t)=>{ui.init(e,t),e._zod.pattern=e._zod.bag.pattern??Br,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=Number(n.value)}catch{}let i=n.value;if(typeof i==`number`&&!Number.isNaN(i)&&Number.isFinite(i))return n;let a=typeof i==`number`?Number.isNaN(i)?`NaN`:Number.isFinite(i)?void 0:`Infinity`:void 0;return n.issues.push({expected:`number`,code:`invalid_type`,input:i,inst:e,...a?{received:a}:{}}),n}}),Bi=E(`$ZodNumberFormat`,(e,t)=>{Xr.init(e,t),zi.init(e,t)}),Vi=E(`$ZodBoolean`,(e,t)=>{ui.init(e,t),e._zod.pattern=Vr,e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=!!n.value}catch{}let i=n.value;return typeof i==`boolean`||n.issues.push({expected:`boolean`,code:`invalid_type`,input:i,inst:e}),n}}),Hi=E(`$ZodNull`,(e,t)=>{ui.init(e,t),e._zod.pattern=Hr,e._zod.values=new Set([null]),e._zod.parse=(t,n)=>{let r=t.value;return r===null||t.issues.push({expected:`null`,code:`invalid_type`,input:r,inst:e}),t}}),Ui=E(`$ZodAny`,(e,t)=>{ui.init(e,t),e._zod.parse=e=>e}),Wi=E(`$ZodUnknown`,(e,t)=>{ui.init(e,t),e._zod.parse=e=>e}),Gi=E(`$ZodNever`,(e,t)=>{ui.init(e,t),e._zod.parse=(t,n)=>(t.issues.push({expected:`never`,code:`invalid_type`,input:t.value,inst:e}),t)}),Ki=E(`$ZodVoid`,(e,t)=>{ui.init(e,t),e._zod.parse=(t,n)=>{let r=t.value;return r===void 0||t.issues.push({expected:`void`,code:`invalid_type`,input:r,inst:e}),t}}),qi=E(`$ZodDate`,(e,t)=>{ui.init(e,t),e._zod.parse=(n,r)=>{if(t.coerce)try{n.value=new Date(n.value)}catch{}let i=n.value,a=i instanceof Date;return a&&!Number.isNaN(i.getTime())||n.issues.push({expected:`date`,code:`invalid_type`,input:i,...a?{received:`Invalid Date`}:{},inst:e}),n}});function Ji(e,t,n){e.issues.length&&t.issues.push(...Un(n,e.issues)),t.value[n]=e.value}var Yi=E(`$ZodArray`,(e,t)=>{ui.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Array.isArray(i))return n.issues.push({expected:`array`,code:`invalid_type`,input:i,inst:e}),n;n.value=Array(i.length);let a=[];for(let e=0;e<i.length;e++){let o=i[e],s=t.element._zod.run({value:o,issues:[]},r);s instanceof Promise?a.push(s.then(t=>Ji(t,n,e))):Ji(s,n,e)}return a.length?Promise.all(a).then(()=>n):n}});function Xi(e,t,n,r,i,a){let o=n in r;if(e.issues.length){if(i&&a&&!o)return;t.issues.push(...Un(n,e.issues))}if(!o&&!i){e.issues.length||t.issues.push({code:`invalid_type`,expected:`nonoptional`,input:void 0,path:[n]});return}e.value===void 0?o&&(t.value[n]=void 0):t.value[n]=e.value}function Zi(e){let t=Object.keys(e.shape);for(let n of t)if(!e.shape?.[n]?._zod?.traits?.has(`$ZodType`))throw Error(`Invalid element at key "${n}": expected a Zod schema`);let n=Mn(e.shape);return{...e,keys:t,keySet:new Set(t),numKeys:t.length,optionalKeys:new Set(n)}}function Qi(e,t,n,r,i,a){let o=[],s=i.keySet,c=i.catchall._zod,l=c.def.type,u=c.optin===`optional`,d=c.optout===`optional`;for(let i in t){if(i===`__proto__`||s.has(i))continue;if(l===`never`){o.push(i);continue}let a=c.run({value:t[i],issues:[]},r);a instanceof Promise?e.push(a.then(e=>Xi(e,n,i,t,u,d))):Xi(a,n,i,t,u,d)}return o.length&&n.issues.push({code:`unrecognized_keys`,keys:o,input:t,inst:a}),e.length?Promise.all(e).then(()=>n):n}var $i=E(`$ZodObject`,(e,t)=>{if(ui.init(e,t),!Object.getOwnPropertyDescriptor(t,`shape`)?.get){let e=t.shape;Object.defineProperty(t,"shape",{get:()=>{let n={...e};return Object.defineProperty(t,"shape",{value:n}),n}})}let n=mn(()=>Zi(t));yn(e._zod,`propValues`,()=>{let e=t.shape,n={};for(let t in e){let r=e[t]._zod;if(r.values){n[t]??(n[t]=new Set);for(let e of r.values)n[t].add(e)}}return n});let r=Tn,i=t.catchall,a;e._zod.parse=(t,o)=>{a??=n.value;let s=t.value;if(!r(s))return t.issues.push({expected:`object`,code:`invalid_type`,input:s,inst:e}),t;t.value={};let c=[],l=a.shape;for(let e of a.keys){let n=l[e],r=n._zod.optin===`optional`,i=n._zod.optout===`optional`,a=n._zod.run({value:s[e],issues:[]},o);a instanceof Promise?c.push(a.then(n=>Xi(n,t,e,s,r,i))):Xi(a,t,e,s,r,i)}return i?Qi(c,s,t,o,n.value,e):c.length?Promise.all(c).then(()=>t):t}}),ea=E(`$ZodObjectJIT`,(e,t)=>{$i.init(e,t);let n=e._zod.parse,r=mn(()=>Zi(t)),i=e=>{let t=new ci([`shape`,`payload`,`ctx`]),n=r.value,i=e=>{let t=Sn(e);return`shape[${t}]._zod.run({ value: input[${t}], issues: [] }, ctx)`};t.write(`const input = payload.value;`);let a=Object.create(null),o=0;for(let e of n.keys)a[e]=`key_${o++}`;t.write(`const newResult = {};`);for(let r of n.keys){let n=a[r],o=Sn(r),s=e[r],c=s?._zod?.optin===`optional`,l=s?._zod?.optout===`optional`;t.write(`const ${n} = ${i(r)};`),c&&l?t.write(`
|
|
5
|
+
if (${n}.issues.length) {
|
|
6
|
+
if (${o} in input) {
|
|
7
|
+
payload.issues = payload.issues.concat(${n}.issues.map(iss => ({
|
|
8
|
+
...iss,
|
|
9
|
+
path: iss.path ? [${o}, ...iss.path] : [${o}]
|
|
10
|
+
})));
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
if (${n}.value === undefined) {
|
|
15
|
+
if (${o} in input) {
|
|
16
|
+
newResult[${o}] = undefined;
|
|
17
|
+
}
|
|
18
|
+
} else {
|
|
19
|
+
newResult[${o}] = ${n}.value;
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
`):c?t.write(`
|
|
23
|
+
if (${n}.issues.length) {
|
|
24
|
+
payload.issues = payload.issues.concat(${n}.issues.map(iss => ({
|
|
25
|
+
...iss,
|
|
26
|
+
path: iss.path ? [${o}, ...iss.path] : [${o}]
|
|
27
|
+
})));
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
if (${n}.value === undefined) {
|
|
31
|
+
if (${o} in input) {
|
|
32
|
+
newResult[${o}] = undefined;
|
|
33
|
+
}
|
|
34
|
+
} else {
|
|
35
|
+
newResult[${o}] = ${n}.value;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
`):t.write(`
|
|
39
|
+
const ${n}_present = ${o} in input;
|
|
40
|
+
if (${n}.issues.length) {
|
|
41
|
+
payload.issues = payload.issues.concat(${n}.issues.map(iss => ({
|
|
42
|
+
...iss,
|
|
43
|
+
path: iss.path ? [${o}, ...iss.path] : [${o}]
|
|
44
|
+
})));
|
|
45
|
+
}
|
|
46
|
+
if (!${n}_present && !${n}.issues.length) {
|
|
47
|
+
payload.issues.push({
|
|
48
|
+
code: "invalid_type",
|
|
49
|
+
expected: "nonoptional",
|
|
50
|
+
input: undefined,
|
|
51
|
+
path: [${o}]
|
|
52
|
+
});
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
if (${n}_present) {
|
|
56
|
+
if (${n}.value === undefined) {
|
|
57
|
+
newResult[${o}] = undefined;
|
|
58
|
+
} else {
|
|
59
|
+
newResult[${o}] = ${n}.value;
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
`)}t.write(`payload.value = newResult;`),t.write(`return payload;`);let s=t.compile();return(t,n)=>s(e,t,n)},a,o=Tn,s=!un.jitless,c=s&&En.value,l=t.catchall,u;e._zod.parse=(d,f)=>{u??=r.value;let p=d.value;return o(p)?s&&c&&f?.async===!1&&f.jitless!==!0?(a||=i(t.shape),d=a(d,f),l?Qi([],p,d,f,u,e):d):n(d,f):(d.issues.push({expected:`object`,code:`invalid_type`,input:p,inst:e}),d)}});function ta(e,t,n,r){for(let n of e)if(n.issues.length===0)return t.value=n.value,t;let i=e.filter(e=>!Vn(e));return i.length===1?(t.value=i[0].value,i[0]):(t.issues.push({code:`invalid_union`,input:t.value,inst:n,errors:e.map(e=>e.issues.map(e=>Gn(e,r,dn())))}),t)}var na=E(`$ZodUnion`,(e,t)=>{ui.init(e,t),yn(e._zod,`optin`,()=>t.options.some(e=>e._zod.optin===`optional`)?`optional`:void 0),yn(e._zod,`optout`,()=>t.options.some(e=>e._zod.optout===`optional`)?`optional`:void 0),yn(e._zod,`values`,()=>{if(t.options.every(e=>e._zod.values))return new Set(t.options.flatMap(e=>Array.from(e._zod.values)))}),yn(e._zod,`pattern`,()=>{if(t.options.every(e=>e._zod.pattern)){let e=t.options.map(e=>e._zod.pattern);return RegExp(`^(${e.map(e=>gn(e.source)).join(`|`)})$`)}});let n=t.options.length===1?t.options[0]._zod.run:null;e._zod.parse=(r,i)=>{if(n)return n(r,i);let a=!1,o=[];for(let e of t.options){let t=e._zod.run({value:r.value,issues:[]},i);if(t instanceof Promise)o.push(t),a=!0;else{if(t.issues.length===0)return t;o.push(t)}}return a?Promise.all(o).then(t=>ta(t,r,e,i)):ta(o,r,e,i)}}),ra=E(`$ZodDiscriminatedUnion`,(e,t)=>{t.inclusive=!1,na.init(e,t);let n=e._zod.parse;yn(e._zod,`propValues`,()=>{let e={};for(let n of t.options){let r=n._zod.propValues;if(!r||Object.keys(r).length===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(n)}"`);for(let[t,n]of Object.entries(r)){e[t]||(e[t]=new Set);for(let r of n)e[t].add(r)}}return e});let r=mn(()=>{let e=t.options,n=new Map;for(let r of e){let e=r._zod.propValues?.[t.discriminator];if(!e||e.size===0)throw Error(`Invalid discriminated union option at index "${t.options.indexOf(r)}"`);for(let t of e){if(n.has(t))throw Error(`Duplicate discriminator value "${String(t)}"`);n.set(t,r)}}return n});e._zod.parse=(i,a)=>{let o=i.value;if(!Tn(o))return i.issues.push({code:`invalid_type`,expected:`object`,input:o,inst:e}),i;let s=r.value.get(o?.[t.discriminator]);return s?s._zod.run(i,a):t.unionFallback||a.direction===`backward`?n(i,a):(i.issues.push({code:`invalid_union`,errors:[],note:`No matching discriminator`,discriminator:t.discriminator,options:Array.from(r.value.keys()),input:o,path:[t.discriminator],inst:e}),i)}}),ia=E(`$ZodIntersection`,(e,t)=>{ui.init(e,t),e._zod.parse=(e,n)=>{let r=e.value,i=t.left._zod.run({value:r,issues:[]},n),a=t.right._zod.run({value:r,issues:[]},n);return i instanceof Promise||a instanceof Promise?Promise.all([i,a]).then(([t,n])=>oa(e,t,n)):oa(e,i,a)}});function aa(e,t){if(e===t||e instanceof Date&&t instanceof Date&&+e==+t)return{valid:!0,data:e};if(Dn(e)&&Dn(t)){let n=Object.keys(t),r=Object.keys(e).filter(e=>n.indexOf(e)!==-1),i={...e,...t};for(let n of r){let r=aa(e[n],t[n]);if(!r.valid)return{valid:!1,mergeErrorPath:[n,...r.mergeErrorPath]};i[n]=r.data}return{valid:!0,data:i}}if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return{valid:!1,mergeErrorPath:[]};let n=[];for(let r=0;r<e.length;r++){let i=e[r],a=t[r],o=aa(i,a);if(!o.valid)return{valid:!1,mergeErrorPath:[r,...o.mergeErrorPath]};n.push(o.data)}return{valid:!0,data:n}}return{valid:!1,mergeErrorPath:[]}}function oa(e,t,n){let r=new Map,i;for(let n of t.issues)if(n.code===`unrecognized_keys`){i??=n;for(let e of n.keys)r.has(e)||r.set(e,{}),r.get(e).l=!0}else e.issues.push(n);for(let t of n.issues)if(t.code===`unrecognized_keys`)for(let e of t.keys)r.has(e)||r.set(e,{}),r.get(e).r=!0;else e.issues.push(t);let a=[...r].filter(([,e])=>e.l&&e.r).map(([e])=>e);if(a.length&&i&&e.issues.push({...i,keys:a}),Vn(e))return e;let o=aa(t.value,n.value);if(!o.valid)throw Error(`Unmergable intersection. Error path: ${JSON.stringify(o.mergeErrorPath)}`);return e.value=o.data,e}var sa=E(`$ZodTuple`,(e,t)=>{ui.init(e,t);let n=t.items;e._zod.parse=(r,i)=>{let a=r.value;if(!Array.isArray(a))return r.issues.push({input:a,inst:e,expected:`tuple`,code:`invalid_type`}),r;r.value=[];let o=[],s=ca(n,`optin`),c=ca(n,`optout`);if(!t.rest){if(a.length<s)return r.issues.push({code:`too_small`,minimum:s,inclusive:!0,input:a,inst:e,origin:`array`}),r;a.length>n.length&&r.issues.push({code:`too_big`,maximum:n.length,inclusive:!0,input:a,inst:e,origin:`array`})}let l=Array(n.length);for(let e=0;e<n.length;e++){let t=n[e]._zod.run({value:a[e],issues:[]},i);t instanceof Promise?o.push(t.then(t=>{l[e]=t})):l[e]=t}if(t.rest){let e=n.length-1,s=a.slice(n.length);for(let n of s){e++;let a=t.rest._zod.run({value:n,issues:[]},i);a instanceof Promise?o.push(a.then(t=>la(t,r,e))):la(a,r,e)}}return o.length?Promise.all(o).then(()=>ua(l,r,n,a,c)):ua(l,r,n,a,c)}});function ca(e,t){for(let n=e.length-1;n>=0;n--)if(e[n]._zod[t]!==`optional`)return n+1;return 0}function la(e,t,n){e.issues.length&&t.issues.push(...Un(n,e.issues)),t.value[n]=e.value}function ua(e,t,n,r,i){for(let a=0;a<n.length;a++){let n=e[a],o=a<r.length;if(n.issues.length){if(!o&&a>=i){t.value.length=a;break}t.issues.push(...Un(a,n.issues))}t.value[a]=n.value}for(let e=t.value.length-1;e>=r.length&&n[e]._zod.optout===`optional`&&t.value[e]===void 0;e--)t.value.length=e;return t}var da=E(`$ZodRecord`,(e,t)=>{ui.init(e,t),e._zod.parse=(n,r)=>{let i=n.value;if(!Dn(i))return n.issues.push({expected:`record`,code:`invalid_type`,input:i,inst:e}),n;let a=[],o=t.keyType._zod.values;if(o){n.value={};let s=new Set;for(let c of o)if(typeof c==`string`||typeof c==`number`||typeof c==`symbol`){s.add(typeof c==`number`?c.toString():c);let o=t.keyType._zod.run({value:c,issues:[]},r);if(o instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(o.issues.length){n.issues.push({code:`invalid_key`,origin:`record`,issues:o.issues.map(e=>Gn(e,r,dn())),input:c,path:[c],inst:e});continue}let l=o.value,u=t.valueType._zod.run({value:i[c],issues:[]},r);u instanceof Promise?a.push(u.then(e=>{e.issues.length&&n.issues.push(...Un(c,e.issues)),n.value[l]=e.value})):(u.issues.length&&n.issues.push(...Un(c,u.issues)),n.value[l]=u.value)}let c;for(let e in i)s.has(e)||(c??=[],c.push(e));c&&c.length>0&&n.issues.push({code:`unrecognized_keys`,input:i,inst:e,keys:c})}else{n.value={};for(let o of Reflect.ownKeys(i)){if(o===`__proto__`||!Object.prototype.propertyIsEnumerable.call(i,o))continue;let s=t.keyType._zod.run({value:o,issues:[]},r);if(s instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);if(typeof o==`string`&&Br.test(o)&&s.issues.length){let e=t.keyType._zod.run({value:Number(o),issues:[]},r);if(e instanceof Promise)throw Error(`Async schemas not supported in object keys currently`);e.issues.length===0&&(s=e)}if(s.issues.length){t.mode===`loose`?n.value[o]=i[o]:n.issues.push({code:`invalid_key`,origin:`record`,issues:s.issues.map(e=>Gn(e,r,dn())),input:o,path:[o],inst:e});continue}let c=t.valueType._zod.run({value:i[o],issues:[]},r);c instanceof Promise?a.push(c.then(e=>{e.issues.length&&n.issues.push(...Un(o,e.issues)),n.value[s.value]=e.value})):(c.issues.length&&n.issues.push(...Un(o,c.issues)),n.value[s.value]=c.value)}}return a.length?Promise.all(a).then(()=>n):n}}),fa=E(`$ZodEnum`,(e,t)=>{ui.init(e,t);let n=fn(t.entries),r=new Set(n);e._zod.values=r,e._zod.pattern=RegExp(`^(${n.filter(e=>kn.has(typeof e)).map(e=>typeof e==`string`?An(e):e.toString()).join(`|`)})$`),e._zod.parse=(t,i)=>{let a=t.value;return r.has(a)||t.issues.push({code:`invalid_value`,values:n,input:a,inst:e}),t}}),pa=E(`$ZodLiteral`,(e,t)=>{if(ui.init(e,t),t.values.length===0)throw Error(`Cannot create literal schema with no valid values`);let n=new Set(t.values);e._zod.values=n,e._zod.pattern=RegExp(`^(${t.values.map(e=>typeof e==`string`?An(e):e?An(e.toString()):String(e)).join(`|`)})$`),e._zod.parse=(r,i)=>{let a=r.value;return n.has(a)||r.issues.push({code:`invalid_value`,values:t.values,input:a,inst:e}),r}}),ma=E(`$ZodTransform`,(e,t)=>{ui.init(e,t),e._zod.optin=`optional`,e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new ln(e.constructor.name);let i=t.transform(n.value,n);if(r.async)return(i instanceof Promise?i:Promise.resolve(i)).then(e=>(n.value=e,n.fallback=!0,n));if(i instanceof Promise)throw new cn;return n.value=i,n.fallback=!0,n}});function ha(e,t){return t===void 0&&(e.issues.length||e.fallback)?{issues:[],value:void 0}:e}var ga=E(`$ZodOptional`,(e,t)=>{ui.init(e,t),e._zod.optin=`optional`,e._zod.optout=`optional`,yn(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,void 0]):void 0),yn(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${gn(e.source)})?$`):void 0}),e._zod.parse=(e,n)=>{if(t.innerType._zod.optin===`optional`){let r=e.value,i=t.innerType._zod.run(e,n);return i instanceof Promise?i.then(e=>ha(e,r)):ha(i,r)}return e.value===void 0?e:t.innerType._zod.run(e,n)}}),_a=E(`$ZodExactOptional`,(e,t)=>{ga.init(e,t),yn(e._zod,`values`,()=>t.innerType._zod.values),yn(e._zod,`pattern`,()=>t.innerType._zod.pattern),e._zod.parse=(e,n)=>t.innerType._zod.run(e,n)}),va=E(`$ZodNullable`,(e,t)=>{ui.init(e,t),yn(e._zod,`optin`,()=>t.innerType._zod.optin),yn(e._zod,`optout`,()=>t.innerType._zod.optout),yn(e._zod,`pattern`,()=>{let e=t.innerType._zod.pattern;return e?RegExp(`^(${gn(e.source)}|null)$`):void 0}),yn(e._zod,`values`,()=>t.innerType._zod.values?new Set([...t.innerType._zod.values,null]):void 0),e._zod.parse=(e,n)=>e.value===null?e:t.innerType._zod.run(e,n)}),ya=E(`$ZodDefault`,(e,t)=>{ui.init(e,t),e._zod.optin=`optional`,yn(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);if(e.value===void 0)return e.value=t.defaultValue,e;let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(e=>ba(e,t)):ba(r,t)}});function ba(e,t){return e.value===void 0&&(e.value=t.defaultValue),e}var xa=E(`$ZodPrefault`,(e,t)=>{ui.init(e,t),e._zod.optin=`optional`,yn(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>(n.direction===`backward`||e.value===void 0&&(e.value=t.defaultValue),t.innerType._zod.run(e,n))}),Sa=E(`$ZodNonOptional`,(e,t)=>{ui.init(e,t),yn(e._zod,`values`,()=>{let e=t.innerType._zod.values;return e?new Set([...e].filter(e=>e!==void 0)):void 0}),e._zod.parse=(n,r)=>{let i=t.innerType._zod.run(n,r);return i instanceof Promise?i.then(t=>Ca(t,e)):Ca(i,e)}});function Ca(e,t){return!e.issues.length&&e.value===void 0&&e.issues.push({code:`invalid_type`,expected:`nonoptional`,input:e.value,inst:t}),e}var wa=E(`$ZodCatch`,(e,t)=>{ui.init(e,t),e._zod.optin=`optional`,yn(e._zod,`optout`,()=>t.innerType._zod.optout),yn(e._zod,`values`,()=>t.innerType._zod.values),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(r=>(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>Gn(e,n,dn()))},input:e.value}),e.issues=[],e.fallback=!0),e)):(e.value=r.value,r.issues.length&&(e.value=t.catchValue({...e,error:{issues:r.issues.map(e=>Gn(e,n,dn()))},input:e.value}),e.issues=[],e.fallback=!0),e)}}),Ta=E(`$ZodPipe`,(e,t)=>{ui.init(e,t),yn(e._zod,`values`,()=>t.in._zod.values),yn(e._zod,`optin`,()=>t.in._zod.optin),yn(e._zod,`optout`,()=>t.out._zod.optout),yn(e._zod,`propValues`,()=>t.in._zod.propValues),e._zod.parse=(e,n)=>{if(n.direction===`backward`){let r=t.out._zod.run(e,n);return r instanceof Promise?r.then(e=>Ea(e,t.in,n)):Ea(r,t.in,n)}let r=t.in._zod.run(e,n);return r instanceof Promise?r.then(e=>Ea(e,t.out,n)):Ea(r,t.out,n)}});function Ea(e,t,n){return e.issues.length?(e.aborted=!0,e):t._zod.run({value:e.value,issues:e.issues,fallback:e.fallback},n)}var Da=E(`$ZodPreprocess`,(e,t)=>{Ta.init(e,t)}),Oa=E(`$ZodReadonly`,(e,t)=>{ui.init(e,t),yn(e._zod,`propValues`,()=>t.innerType._zod.propValues),yn(e._zod,`values`,()=>t.innerType._zod.values),yn(e._zod,`optin`,()=>t.innerType?._zod?.optin),yn(e._zod,`optout`,()=>t.innerType?._zod?.optout),e._zod.parse=(e,n)=>{if(n.direction===`backward`)return t.innerType._zod.run(e,n);let r=t.innerType._zod.run(e,n);return r instanceof Promise?r.then(ka):ka(r)}});function ka(e){return e.value=Object.freeze(e.value),e}var Aa=E(`$ZodLazy`,(e,t)=>{ui.init(e,t),yn(e._zod,`innerType`,()=>{let e=t;return e._cachedInner||=t.getter(),e._cachedInner}),yn(e._zod,`pattern`,()=>e._zod.innerType?._zod?.pattern),yn(e._zod,`propValues`,()=>e._zod.innerType?._zod?.propValues),yn(e._zod,`optin`,()=>e._zod.innerType?._zod?.optin??void 0),yn(e._zod,`optout`,()=>e._zod.innerType?._zod?.optout??void 0),e._zod.parse=(t,n)=>e._zod.innerType._zod.run(t,n)}),ja=E(`$ZodCustom`,(e,t)=>{Gr.init(e,t),ui.init(e,t),e._zod.parse=(e,t)=>e,e._zod.check=n=>{let r=n.value,i=t.fn(r);if(i instanceof Promise)return i.then(t=>Ma(t,n,r,e));Ma(i,n,r,e)}});function Ma(e,t,n,r){if(!e){let e={code:`custom`,input:n,inst:r,path:[...r._zod.def.path??[]],continue:!r._zod.def.abort};r._zod.def.params&&(e.params=r._zod.def.params),t.issues.push(qn(e))}}var Na,Pa=class{constructor(){this._map=new WeakMap,this._idmap=new Map}add(e,...t){let n=t[0];return this._map.set(e,n),n&&typeof n==`object`&&`id`in n&&this._idmap.set(n.id,e),this}clear(){return this._map=new WeakMap,this._idmap=new Map,this}remove(e){let t=this._map.get(e);return t&&typeof t==`object`&&`id`in t&&this._idmap.delete(t.id),this._map.delete(e),this}get(e){let t=e._zod.parent;if(t){let n={...this.get(t)??{}};delete n.id;let r={...n,...this._map.get(e)};return Object.keys(r).length?r:void 0}return this._map.get(e)}has(e){return this._map.has(e)}};function Fa(){return new Pa}(Na=globalThis).__zod_globalRegistry??(Na.__zod_globalRegistry=Fa());var Ia=globalThis.__zod_globalRegistry;function La(e,t){return new e({type:`string`,...D(t)})}function Ra(e,t){return new e({type:`string`,format:`email`,check:`string_format`,abort:!1,...D(t)})}function za(e,t){return new e({type:`string`,format:`guid`,check:`string_format`,abort:!1,...D(t)})}function Ba(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,...D(t)})}function Va(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v4`,...D(t)})}function Ha(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v6`,...D(t)})}function Ua(e,t){return new e({type:`string`,format:`uuid`,check:`string_format`,abort:!1,version:`v7`,...D(t)})}function Wa(e,t){return new e({type:`string`,format:`url`,check:`string_format`,abort:!1,...D(t)})}function Ga(e,t){return new e({type:`string`,format:`emoji`,check:`string_format`,abort:!1,...D(t)})}function Ka(e,t){return new e({type:`string`,format:`nanoid`,check:`string_format`,abort:!1,...D(t)})}function qa(e,t){return new e({type:`string`,format:`cuid`,check:`string_format`,abort:!1,...D(t)})}function Ja(e,t){return new e({type:`string`,format:`cuid2`,check:`string_format`,abort:!1,...D(t)})}function Ya(e,t){return new e({type:`string`,format:`ulid`,check:`string_format`,abort:!1,...D(t)})}function Xa(e,t){return new e({type:`string`,format:`xid`,check:`string_format`,abort:!1,...D(t)})}function Za(e,t){return new e({type:`string`,format:`ksuid`,check:`string_format`,abort:!1,...D(t)})}function Qa(e,t){return new e({type:`string`,format:`ipv4`,check:`string_format`,abort:!1,...D(t)})}function $a(e,t){return new e({type:`string`,format:`ipv6`,check:`string_format`,abort:!1,...D(t)})}function eo(e,t){return new e({type:`string`,format:`cidrv4`,check:`string_format`,abort:!1,...D(t)})}function to(e,t){return new e({type:`string`,format:`cidrv6`,check:`string_format`,abort:!1,...D(t)})}function no(e,t){return new e({type:`string`,format:`base64`,check:`string_format`,abort:!1,...D(t)})}function ro(e,t){return new e({type:`string`,format:`base64url`,check:`string_format`,abort:!1,...D(t)})}function io(e,t){return new e({type:`string`,format:`e164`,check:`string_format`,abort:!1,...D(t)})}function ao(e,t){return new e({type:`string`,format:`jwt`,check:`string_format`,abort:!1,...D(t)})}function oo(e,t){return new e({type:`string`,format:`datetime`,check:`string_format`,offset:!1,local:!1,precision:null,...D(t)})}function so(e,t){return new e({type:`string`,format:`date`,check:`string_format`,...D(t)})}function co(e,t){return new e({type:`string`,format:`time`,check:`string_format`,precision:null,...D(t)})}function lo(e,t){return new e({type:`string`,format:`duration`,check:`string_format`,...D(t)})}function uo(e,t){return new e({type:`number`,checks:[],...D(t)})}function fo(e,t){return new e({type:`number`,check:`number_format`,abort:!1,format:`safeint`,...D(t)})}function po(e,t){return new e({type:`boolean`,...D(t)})}function mo(e,t){return new e({type:`null`,...D(t)})}function ho(e){return new e({type:`any`})}function go(e){return new e({type:`unknown`})}function _o(e,t){return new e({type:`never`,...D(t)})}function vo(e,t){return new e({type:`void`,...D(t)})}function yo(e,t){return new e({type:`date`,...D(t)})}function bo(e,t){return new qr({check:`less_than`,...D(t),value:e,inclusive:!1})}function xo(e,t){return new qr({check:`less_than`,...D(t),value:e,inclusive:!0})}function So(e,t){return new Jr({check:`greater_than`,...D(t),value:e,inclusive:!1})}function Co(e,t){return new Jr({check:`greater_than`,...D(t),value:e,inclusive:!0})}function wo(e,t){return new Yr({check:`multiple_of`,...D(t),value:e})}function O(e,t){return new Zr({check:`max_length`,...D(t),maximum:e})}function To(e,t){return new Qr({check:`min_length`,...D(t),minimum:e})}function Eo(e,t){return new $r({check:`length_equals`,...D(t),length:e})}function Do(e,t){return new ti({check:`string_format`,format:`regex`,...D(t),pattern:e})}function Oo(e){return new ni({check:`string_format`,format:`lowercase`,...D(e)})}function ko(e){return new ri({check:`string_format`,format:`uppercase`,...D(e)})}function Ao(e,t){return new ii({check:`string_format`,format:`includes`,...D(t),includes:e})}function jo(e,t){return new ai({check:`string_format`,format:`starts_with`,...D(t),prefix:e})}function Mo(e,t){return new oi({check:`string_format`,format:`ends_with`,...D(t),suffix:e})}function No(e){return new si({check:`overwrite`,tx:e})}function Po(e){return No(t=>t.normalize(e))}function Fo(){return No(e=>e.trim())}function Io(){return No(e=>e.toLowerCase())}function Lo(){return No(e=>e.toUpperCase())}function Ro(){return No(e=>Cn(e))}function zo(e,t,n){return new e({type:`array`,element:t,...D(n)})}function Bo(e,t,n){let r=D(n);return r.abort??=!0,new e({type:`custom`,check:`custom`,fn:t,...r})}function Vo(e,t,n){return new e({type:`custom`,check:`custom`,fn:t,...D(n)})}function Ho(e,t){let n=Uo(t=>(t.addIssue=e=>{if(typeof e==`string`)t.issues.push(qn(e,t.value,n._zod.def));else{let r=e;r.fatal&&(r.continue=!1),r.code??=`custom`,r.input??=t.value,r.inst??=n,r.continue??=!n._zod.def.abort,t.issues.push(qn(r))}},e(t.value,t)),t);return n}function Uo(e,t){let n=new Gr({check:`custom`,...D(t)});return n._zod.check=e,n}function Wo(e){let t=e?.target??`draft-2020-12`;return t===`draft-4`&&(t=`draft-04`),t===`draft-7`&&(t=`draft-07`),{processors:e.processors??{},metadataRegistry:e?.metadata??Ia,target:t,unrepresentable:e?.unrepresentable??`throw`,override:e?.override??(()=>{}),io:e?.io??`output`,counter:0,seen:new Map,cycles:e?.cycles??`ref`,reused:e?.reused??`inline`,external:e?.external??void 0}}function Go(e,t,n={path:[],schemaPath:[]}){var r;let i=e._zod.def,a=t.seen.get(e);if(a)return a.count++,n.schemaPath.includes(e)&&(a.cycle=n.path),a.schema;let o={schema:{},count:1,cycle:void 0,path:n.path};t.seen.set(e,o);let s=e._zod.toJSONSchema?.();if(s)o.schema=s;else{let r={...n,schemaPath:[...n.schemaPath,e],path:n.path};if(e._zod.processJSONSchema)e._zod.processJSONSchema(t,o.schema,r);else{let n=o.schema,a=t.processors[i.type];if(!a)throw Error(`[toJSONSchema]: Non-representable type encountered: ${i.type}`);a(e,t,n,r)}let a=e._zod.parent;a&&(o.ref||=a,Go(a,t,r),t.seen.get(a).isParent=!0)}let c=t.metadataRegistry.get(e);return c&&Object.assign(o.schema,c),t.io===`input`&&Jo(e)&&(delete o.schema.examples,delete o.schema.default),t.io===`input`&&`_prefault`in o.schema&&((r=o.schema).default??(r.default=o.schema._prefault)),delete o.schema._prefault,t.seen.get(e).schema}function Ko(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=new Map;for(let t of e.seen.entries()){let n=e.metadataRegistry.get(t[0])?.id;if(n){let e=r.get(n);if(e&&e!==t[0])throw Error(`Duplicate schema id "${n}" detected during JSON Schema conversion. Two different schemas cannot share the same id when converted together.`);r.set(n,t[0])}}let i=t=>{let r=e.target===`draft-2020-12`?`$defs`:`definitions`;if(e.external){let n=e.external.registry.get(t[0])?.id,i=e.external.uri??(e=>e);if(n)return{ref:i(n)};let a=t[1].defId??t[1].schema.id??`schema${e.counter++}`;return t[1].defId=a,{defId:a,ref:`${i(`__shared`)}#/${r}/${a}`}}if(t[1]===n)return{ref:`#`};let i=`#/${r}/`,a=t[1].schema.id??`__schema${e.counter++}`;return{defId:a,ref:i+a}},a=e=>{if(e[1].schema.$ref)return;let t=e[1],{ref:n,defId:r}=i(e);t.def={...t.schema},r&&(t.defId=r);let a=t.schema;for(let e in a)delete a[e];a.$ref=n};if(e.cycles===`throw`)for(let t of e.seen.entries()){let e=t[1];if(e.cycle)throw Error(`Cycle detected: #/${e.cycle?.join(`/`)}/<root>
|
|
64
|
+
|
|
65
|
+
Set the \`cycles\` parameter to \`"ref"\` to resolve cyclical schemas with defs.`)}for(let n of e.seen.entries()){let r=n[1];if(t===n[0]){a(n);continue}if(e.external){let r=e.external.registry.get(n[0])?.id;if(t!==n[0]&&r){a(n);continue}}if(e.metadataRegistry.get(n[0])?.id){a(n);continue}if(r.cycle){a(n);continue}if(r.count>1&&e.reused===`ref`){a(n);continue}}}function qo(e,t){let n=e.seen.get(t);if(!n)throw Error(`Unprocessed schema. This is a bug in Zod.`);let r=t=>{let n=e.seen.get(t);if(n.ref===null)return;let i=n.def??n.schema,a={...i},o=n.ref;if(n.ref=null,o){r(o);let n=e.seen.get(o),s=n.schema;if(s.$ref&&(e.target===`draft-07`||e.target===`draft-04`||e.target===`openapi-3.0`)?(i.allOf=i.allOf??[],i.allOf.push(s)):Object.assign(i,s),Object.assign(i,a),t._zod.parent===o)for(let e in i)e===`$ref`||e===`allOf`||e in a||delete i[e];if(s.$ref&&n.def)for(let e in i)e===`$ref`||e===`allOf`||e in n.def&&JSON.stringify(i[e])===JSON.stringify(n.def[e])&&delete i[e]}let s=t._zod.parent;if(s&&s!==o){r(s);let t=e.seen.get(s);if(t?.schema.$ref&&(i.$ref=t.schema.$ref,t.def))for(let e in i)e===`$ref`||e===`allOf`||e in t.def&&JSON.stringify(i[e])===JSON.stringify(t.def[e])&&delete i[e]}e.override({zodSchema:t,jsonSchema:i,path:n.path??[]})};for(let t of[...e.seen.entries()].reverse())r(t[0]);let i={};if(e.target===`draft-2020-12`?i.$schema=`https://json-schema.org/draft/2020-12/schema`:e.target===`draft-07`?i.$schema=`http://json-schema.org/draft-07/schema#`:e.target===`draft-04`?i.$schema=`http://json-schema.org/draft-04/schema#`:e.target,e.external?.uri){let n=e.external.registry.get(t)?.id;if(!n)throw Error("Schema is missing an `id` property");i.$id=e.external.uri(n)}Object.assign(i,n.def??n.schema);let a=e.metadataRegistry.get(t)?.id;a!==void 0&&i.id===a&&delete i.id;let o=e.external?.defs??{};for(let t of e.seen.entries()){let e=t[1];e.def&&e.defId&&(e.def.id===e.defId&&delete e.def.id,o[e.defId]=e.def)}e.external||Object.keys(o).length>0&&(e.target===`draft-2020-12`?i.$defs=o:i.definitions=o);try{let n=JSON.parse(JSON.stringify(i));return Object.defineProperty(n,"~standard",{value:{...t[`~standard`],jsonSchema:{input:Xo(t,`input`,e.processors),output:Xo(t,`output`,e.processors)}},enumerable:!1,writable:!1}),n}catch{throw Error(`Error converting schema to JSON.`)}}function Jo(e,t){let n=t??{seen:new Set};if(n.seen.has(e))return!1;n.seen.add(e);let r=e._zod.def;if(r.type===`transform`)return!0;if(r.type===`array`)return Jo(r.element,n);if(r.type===`set`)return Jo(r.valueType,n);if(r.type===`lazy`)return Jo(r.getter(),n);if(r.type===`promise`||r.type===`optional`||r.type===`nonoptional`||r.type===`nullable`||r.type===`readonly`||r.type==="default"||r.type===`prefault`)return Jo(r.innerType,n);if(r.type===`intersection`)return Jo(r.left,n)||Jo(r.right,n);if(r.type===`record`||r.type===`map`)return Jo(r.keyType,n)||Jo(r.valueType,n);if(r.type===`pipe`)return e._zod.traits.has(`$ZodCodec`)?!0:Jo(r.in,n)||Jo(r.out,n);if(r.type===`object`){for(let e in r.shape)if(Jo(r.shape[e],n))return!0;return!1}if(r.type===`union`){for(let e of r.options)if(Jo(e,n))return!0;return!1}if(r.type===`tuple`){for(let e of r.items)if(Jo(e,n))return!0;return!!(r.rest&&Jo(r.rest,n))}return!1}var Yo=(e,t={})=>n=>{let r=Wo({...n,processors:t});return Go(e,r),Ko(r,e),qo(r,e)},Xo=(e,t,n={})=>r=>{let{libraryOptions:i,target:a}=r??{},o=Wo({...i??{},target:a,io:t,processors:n});return Go(e,o),Ko(o,e),qo(o,e)},Zo={guid:`uuid`,url:`uri`,datetime:`date-time`,json_string:`json-string`,regex:``},Qo=(e,t,n,r)=>{let i=n;i.type=`string`;let{minimum:a,maximum:o,format:s,patterns:c,contentEncoding:l}=e._zod.bag;if(typeof a==`number`&&(i.minLength=a),typeof o==`number`&&(i.maxLength=o),s&&(i.format=Zo[s]??s,i.format===``&&delete i.format,s===`time`&&delete i.format),l&&(i.contentEncoding=l),c&&c.size>0){let e=[...c];e.length===1?i.pattern=e[0].source:e.length>1&&(i.allOf=[...e.map(e=>({...t.target===`draft-07`||t.target===`draft-04`||t.target===`openapi-3.0`?{type:`string`}:{},pattern:e.source}))])}},$o=(e,t,n,r)=>{let i=n,{minimum:a,maximum:o,format:s,multipleOf:c,exclusiveMaximum:l,exclusiveMinimum:u}=e._zod.bag;typeof s==`string`&&s.includes(`int`)?i.type=`integer`:i.type=`number`;let d=typeof u==`number`&&u>=(a??-1/0),f=typeof l==`number`&&l<=(o??1/0),p=t.target===`draft-04`||t.target===`openapi-3.0`;d?p?(i.minimum=u,i.exclusiveMinimum=!0):i.exclusiveMinimum=u:typeof a==`number`&&(i.minimum=a),f?p?(i.maximum=l,i.exclusiveMaximum=!0):i.exclusiveMaximum=l:typeof o==`number`&&(i.maximum=o),typeof c==`number`&&(i.multipleOf=c)},es=(e,t,n,r)=>{n.type=`boolean`},ts=(e,t,n,r)=>{t.target===`openapi-3.0`?(n.type=`string`,n.nullable=!0,n.enum=[null]):n.type=`null`},ns=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Void cannot be represented in JSON Schema`)},rs=(e,t,n,r)=>{n.not={}},is=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Date cannot be represented in JSON Schema`)},as=(e,t,n,r)=>{let i=e._zod.def,a=fn(i.entries);a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),n.enum=a},os=(e,t,n,r)=>{let i=e._zod.def,a=[];for(let e of i.values)if(e===void 0){if(t.unrepresentable===`throw`)throw Error("Literal `undefined` cannot be represented in JSON Schema")}else if(typeof e==`bigint`){if(t.unrepresentable===`throw`)throw Error(`BigInt literals cannot be represented in JSON Schema`);a.push(Number(e))}else a.push(e);if(a.length!==0)if(a.length===1){let e=a[0];n.type=e===null?`null`:typeof e,t.target===`draft-04`||t.target===`openapi-3.0`?n.enum=[e]:n.const=e}else a.every(e=>typeof e==`number`)&&(n.type=`number`),a.every(e=>typeof e==`string`)&&(n.type=`string`),a.every(e=>typeof e==`boolean`)&&(n.type=`boolean`),a.every(e=>e===null)&&(n.type=`null`),n.enum=a},ss=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Custom types cannot be represented in JSON Schema`)},cs=(e,t,n,r)=>{if(t.unrepresentable===`throw`)throw Error(`Transforms cannot be represented in JSON Schema`)},ls=(e,t,n,r)=>{let i=n,a=e._zod.def,{minimum:o,maximum:s}=e._zod.bag;typeof o==`number`&&(i.minItems=o),typeof s==`number`&&(i.maxItems=s),i.type=`array`,i.items=Go(a.element,t,{...r,path:[...r.path,`items`]})},us=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`,i.properties={};let o=a.shape;for(let e in o)i.properties[e]=Go(o[e],t,{...r,path:[...r.path,`properties`,e]});let s=new Set(Object.keys(o)),c=new Set([...s].filter(e=>{let n=a.shape[e]._zod;return t.io===`input`?n.optin===void 0:n.optout===void 0}));c.size>0&&(i.required=Array.from(c)),a.catchall?._zod.def.type===`never`?i.additionalProperties=!1:a.catchall?a.catchall&&(i.additionalProperties=Go(a.catchall,t,{...r,path:[...r.path,`additionalProperties`]})):t.io===`output`&&(i.additionalProperties=!1)},ds=(e,t,n,r)=>{let i=e._zod.def,a=i.inclusive===!1,o=i.options.map((e,n)=>Go(e,t,{...r,path:[...r.path,a?`oneOf`:`anyOf`,n]}));a?n.oneOf=o:n.anyOf=o},fs=(e,t,n,r)=>{let i=e._zod.def,a=Go(i.left,t,{...r,path:[...r.path,`allOf`,0]}),o=Go(i.right,t,{...r,path:[...r.path,`allOf`,1]}),s=e=>`allOf`in e&&Object.keys(e).length===1;n.allOf=[...s(a)?a.allOf:[a],...s(o)?o.allOf:[o]]},ps=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`array`;let o=t.target===`draft-2020-12`?`prefixItems`:`items`,s=t.target===`draft-2020-12`||t.target===`openapi-3.0`?`items`:`additionalItems`,c=a.items.map((e,n)=>Go(e,t,{...r,path:[...r.path,o,n]})),l=a.rest?Go(a.rest,t,{...r,path:[...r.path,s,...t.target===`openapi-3.0`?[a.items.length]:[]]}):null;t.target===`draft-2020-12`?(i.prefixItems=c,l&&(i.items=l)):t.target===`openapi-3.0`?(i.items={anyOf:c},l&&i.items.anyOf.push(l),i.minItems=c.length,l||(i.maxItems=c.length)):(i.items=c,l&&(i.additionalItems=l));let{minimum:u,maximum:d}=e._zod.bag;typeof u==`number`&&(i.minItems=u),typeof d==`number`&&(i.maxItems=d)},ms=(e,t,n,r)=>{let i=n,a=e._zod.def;i.type=`object`;let o=a.keyType,s=o._zod.bag?.patterns;if(a.mode===`loose`&&s&&s.size>0){let e=Go(a.valueType,t,{...r,path:[...r.path,`patternProperties`,`*`]});i.patternProperties={};for(let t of s)i.patternProperties[t.source]=e}else (t.target===`draft-07`||t.target===`draft-2020-12`)&&(i.propertyNames=Go(a.keyType,t,{...r,path:[...r.path,`propertyNames`]})),i.additionalProperties=Go(a.valueType,t,{...r,path:[...r.path,`additionalProperties`]});let c=o._zod.values;if(c){let e=[...c].filter(e=>typeof e==`string`||typeof e==`number`);e.length>0&&(i.required=e)}},hs=(e,t,n,r)=>{let i=e._zod.def,a=Go(i.innerType,t,r),o=t.seen.get(e);t.target===`openapi-3.0`?(o.ref=i.innerType,n.nullable=!0):n.anyOf=[a,{type:`null`}]},gs=(e,t,n,r)=>{let i=e._zod.def;Go(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},_s=(e,t,n,r)=>{let i=e._zod.def;Go(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.default=JSON.parse(JSON.stringify(i.defaultValue))},vs=(e,t,n,r)=>{let i=e._zod.def;Go(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,t.io===`input`&&(n._prefault=JSON.parse(JSON.stringify(i.defaultValue)))},ys=(e,t,n,r)=>{let i=e._zod.def;Go(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType;let o;try{o=i.catchValue(void 0)}catch{throw Error(`Dynamic catch values are not supported in JSON Schema`)}n.default=o},bs=(e,t,n,r)=>{let i=e._zod.def,a=i.in._zod.traits.has(`$ZodTransform`),o=t.io===`input`?a?i.out:i.in:i.out;Go(o,t,r);let s=t.seen.get(e);s.ref=o},xs=(e,t,n,r)=>{let i=e._zod.def;Go(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType,n.readOnly=!0},Ss=(e,t,n,r)=>{let i=e._zod.def;Go(i.innerType,t,r);let a=t.seen.get(e);a.ref=i.innerType},Cs=(e,t,n,r)=>{let i=e._zod.innerType;Go(i,t,r);let a=t.seen.get(e);a.ref=i},ws=E(`ZodISODateTime`,(e,t)=>{wi.init(e,t),Xs.init(e,t)});function Ts(e){return oo(ws,e)}var Es=E(`ZodISODate`,(e,t)=>{Ti.init(e,t),Xs.init(e,t)});function Ds(e){return so(Es,e)}var Os=E(`ZodISOTime`,(e,t)=>{Ei.init(e,t),Xs.init(e,t)});function ks(e){return co(Os,e)}var As=E(`ZodISODuration`,(e,t)=>{Di.init(e,t),Xs.init(e,t)});function js(e){return lo(As,e)}var Ms=E(`ZodError`,(e,t)=>{Yn.init(e,t),e.name=`ZodError`,Object.defineProperties(e,{format:{value:t=>Qn(e,t)},flatten:{value:t=>Zn(e,t)},addIssue:{value:t=>{e.issues.push(t),e.message=JSON.stringify(e.issues,pn,2)}},addIssues:{value:t=>{e.issues.push(...t),e.message=JSON.stringify(e.issues,pn,2)}},isEmpty:{get(){return e.issues.length===0}}})},{Parent:Error}),Ns=$n(Ms),Ps=er(Ms),Fs=tr(Ms),Is=rr(Ms),Ls=ar(Ms),Rs=or(Ms),zs=sr(Ms),Bs=cr(Ms),Vs=lr(Ms),Hs=ur(Ms),Us=dr(Ms),Ws=fr(Ms),Gs=new WeakMap;function Ks(e,t,n){let r=Object.getPrototypeOf(e),i=Gs.get(r);if(i||(i=new Set,Gs.set(r,i)),!i.has(t)){i.add(t);for(let e in n){let t=n[e];Object.defineProperty(r,e,{configurable:!0,enumerable:!1,get(){let n=t.bind(this);return Object.defineProperty(this,e,{configurable:!0,writable:!0,enumerable:!0,value:n}),n},set(t){Object.defineProperty(this,e,{configurable:!0,writable:!0,enumerable:!0,value:t})}})}}}var qs=E(`ZodType`,(e,t)=>(ui.init(e,t),Object.assign(e[`~standard`],{jsonSchema:{input:Xo(e,`input`),output:Xo(e,`output`)}}),e.toJSONSchema=Yo(e,{}),e.def=t,e.type=t.type,Object.defineProperty(e,"_def",{value:t}),e.parse=(t,n)=>Ns(e,t,n,{callee:e.parse}),e.safeParse=(t,n)=>Fs(e,t,n),e.parseAsync=async(t,n)=>Ps(e,t,n,{callee:e.parseAsync}),e.safeParseAsync=async(t,n)=>Is(e,t,n),e.spa=e.safeParseAsync,e.encode=(t,n)=>Ls(e,t,n),e.decode=(t,n)=>Rs(e,t,n),e.encodeAsync=async(t,n)=>zs(e,t,n),e.decodeAsync=async(t,n)=>Bs(e,t,n),e.safeEncode=(t,n)=>Vs(e,t,n),e.safeDecode=(t,n)=>Hs(e,t,n),e.safeEncodeAsync=async(t,n)=>Us(e,t,n),e.safeDecodeAsync=async(t,n)=>Ws(e,t,n),Ks(e,`ZodType`,{check(...e){let t=this.def;return this.clone(xn(t,{checks:[...t.checks??[],...e.map(e=>typeof e==`function`?{_zod:{check:e,def:{check:`custom`},onattach:[]}}:e)]}),{parent:!0})},with(...e){return this.check(...e)},clone(e,t){return jn(this,e,t)},brand(){return this},register(e,t){return e.add(this,t),this},refine(e,t){return this.check(gl(e,t))},superRefine(e,t){return this.check(_l(e,t))},overwrite(e){return this.check(No(e))},optional(){return Jc(this)},exactOptional(){return Xc(this)},nullable(){return Qc(this)},nullish(){return Jc(Qc(this))},nonoptional(e){return il(this,e)},array(){return P(this)},or(e){return I([this,e])},and(e){return Rc(this,e)},transform(e){return cl(this,Kc(e))},default(e){return el(this,e)},prefault(e){return nl(this,e)},catch(e){return ol(this,e)},pipe(e){return cl(this,e)},readonly(){return dl(this)},describe(e){let t=this.clone();return Ia.add(t,{description:e}),t},meta(...e){if(e.length===0)return Ia.get(this);let t=this.clone();return Ia.add(t,e[0]),t},isOptional(){return this.safeParse(void 0).success},isNullable(){return this.safeParse(null).success},apply(e){return e(this)}}),Object.defineProperty(e,"description",{get(){return Ia.get(e)?.description},configurable:!0}),e)),Js=E(`_ZodString`,(e,t)=>{di.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Qo(e,t,n,r);let n=e._zod.bag;e.format=n.format??null,e.minLength=n.minimum??null,e.maxLength=n.maximum??null,Ks(e,`_ZodString`,{regex(...e){return this.check(Do(...e))},includes(...e){return this.check(Ao(...e))},startsWith(...e){return this.check(jo(...e))},endsWith(...e){return this.check(Mo(...e))},min(...e){return this.check(To(...e))},max(...e){return this.check(O(...e))},length(...e){return this.check(Eo(...e))},nonempty(...e){return this.check(To(1,...e))},lowercase(e){return this.check(Oo(e))},uppercase(e){return this.check(ko(e))},trim(){return this.check(Fo())},normalize(...e){return this.check(Po(...e))},toLowerCase(){return this.check(Io())},toUpperCase(){return this.check(Lo())},slugify(){return this.check(Ro())}})}),Ys=E(`ZodString`,(e,t)=>{di.init(e,t),Js.init(e,t),e.email=t=>e.check(Ra(Zs,t)),e.url=t=>e.check(Wa(tc,t)),e.jwt=t=>e.check(ao(_c,t)),e.emoji=t=>e.check(Ga(rc,t)),e.guid=t=>e.check(za($s,t)),e.uuid=t=>e.check(Ba(ec,t)),e.uuidv4=t=>e.check(Va(ec,t)),e.uuidv6=t=>e.check(Ha(ec,t)),e.uuidv7=t=>e.check(Ua(ec,t)),e.nanoid=t=>e.check(Ka(ic,t)),e.guid=t=>e.check(za($s,t)),e.cuid=t=>e.check(qa(ac,t)),e.cuid2=t=>e.check(Ja(oc,t)),e.ulid=t=>e.check(Ya(sc,t)),e.base64=t=>e.check(no(mc,t)),e.base64url=t=>e.check(ro(hc,t)),e.xid=t=>e.check(Xa(cc,t)),e.ksuid=t=>e.check(Za(lc,t)),e.ipv4=t=>e.check(Qa(uc,t)),e.ipv6=t=>e.check($a(dc,t)),e.cidrv4=t=>e.check(eo(fc,t)),e.cidrv6=t=>e.check(to(pc,t)),e.e164=t=>e.check(io(gc,t)),e.datetime=t=>e.check(Ts(t)),e.date=t=>e.check(Ds(t)),e.time=t=>e.check(ks(t)),e.duration=t=>e.check(js(t))});function k(e){return La(Ys,e)}var Xs=E(`ZodStringFormat`,(e,t)=>{fi.init(e,t),Js.init(e,t)}),Zs=E(`ZodEmail`,(e,t)=>{hi.init(e,t),Xs.init(e,t)});function Qs(e){return Ra(Zs,e)}var $s=E(`ZodGUID`,(e,t)=>{pi.init(e,t),Xs.init(e,t)}),ec=E(`ZodUUID`,(e,t)=>{mi.init(e,t),Xs.init(e,t)}),tc=E(`ZodURL`,(e,t)=>{gi.init(e,t),Xs.init(e,t)});function nc(e){return Wa(tc,e)}var rc=E(`ZodEmoji`,(e,t)=>{_i.init(e,t),Xs.init(e,t)}),ic=E(`ZodNanoID`,(e,t)=>{vi.init(e,t),Xs.init(e,t)}),ac=E(`ZodCUID`,(e,t)=>{yi.init(e,t),Xs.init(e,t)}),oc=E(`ZodCUID2`,(e,t)=>{bi.init(e,t),Xs.init(e,t)}),sc=E(`ZodULID`,(e,t)=>{xi.init(e,t),Xs.init(e,t)}),cc=E(`ZodXID`,(e,t)=>{Si.init(e,t),Xs.init(e,t)}),lc=E(`ZodKSUID`,(e,t)=>{Ci.init(e,t),Xs.init(e,t)}),uc=E(`ZodIPv4`,(e,t)=>{Oi.init(e,t),Xs.init(e,t)}),dc=E(`ZodIPv6`,(e,t)=>{ki.init(e,t),Xs.init(e,t)}),fc=E(`ZodCIDRv4`,(e,t)=>{Ai.init(e,t),Xs.init(e,t)}),pc=E(`ZodCIDRv6`,(e,t)=>{ji.init(e,t),Xs.init(e,t)}),mc=E(`ZodBase64`,(e,t)=>{Ni.init(e,t),Xs.init(e,t)}),hc=E(`ZodBase64URL`,(e,t)=>{Fi.init(e,t),Xs.init(e,t)}),gc=E(`ZodE164`,(e,t)=>{Ii.init(e,t),Xs.init(e,t)}),_c=E(`ZodJWT`,(e,t)=>{Ri.init(e,t),Xs.init(e,t)}),vc=E(`ZodNumber`,(e,t)=>{zi.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>$o(e,t,n,r),Ks(e,`ZodNumber`,{gt(e,t){return this.check(So(e,t))},gte(e,t){return this.check(Co(e,t))},min(e,t){return this.check(Co(e,t))},lt(e,t){return this.check(bo(e,t))},lte(e,t){return this.check(xo(e,t))},max(e,t){return this.check(xo(e,t))},int(e){return this.check(bc(e))},safe(e){return this.check(bc(e))},positive(e){return this.check(So(0,e))},nonnegative(e){return this.check(Co(0,e))},negative(e){return this.check(bo(0,e))},nonpositive(e){return this.check(xo(0,e))},multipleOf(e,t){return this.check(wo(e,t))},step(e,t){return this.check(wo(e,t))},finite(){return this}});let n=e._zod.bag;e.minValue=Math.max(n.minimum??-1/0,n.exclusiveMinimum??-1/0)??null,e.maxValue=Math.min(n.maximum??1/0,n.exclusiveMaximum??1/0)??null,e.isInt=(n.format??``).includes(`int`)||Number.isSafeInteger(n.multipleOf??.5),e.isFinite=!0,e.format=n.format??null});function A(e){return uo(vc,e)}var yc=E(`ZodNumberFormat`,(e,t)=>{Bi.init(e,t),vc.init(e,t)});function bc(e){return fo(yc,e)}var xc=E(`ZodBoolean`,(e,t)=>{Vi.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>es(e,t,n,r)});function j(e){return po(xc,e)}var Sc=E(`ZodNull`,(e,t)=>{Hi.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ts(e,t,n,r)});function Cc(e){return mo(Sc,e)}var wc=E(`ZodAny`,(e,t)=>{Ui.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function Tc(){return ho(wc)}var Ec=E(`ZodUnknown`,(e,t)=>{Wi.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(e,t,n)=>void 0});function M(){return go(Ec)}var Dc=E(`ZodNever`,(e,t)=>{Gi.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>rs(e,t,n,r)});function Oc(e){return _o(Dc,e)}var kc=E(`ZodVoid`,(e,t)=>{Ki.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ns(e,t,n,r)});function N(e){return vo(kc,e)}var Ac=E(`ZodDate`,(e,t)=>{qi.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>is(e,t,n,r),e.min=(t,n)=>e.check(Co(t,n)),e.max=(t,n)=>e.check(xo(t,n));let n=e._zod.bag;e.minDate=n.minimum?new Date(n.minimum):null,e.maxDate=n.maximum?new Date(n.maximum):null});function jc(e){return yo(Ac,e)}var Mc=E(`ZodArray`,(e,t)=>{Yi.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ls(e,t,n,r),e.element=t.element,Ks(e,`ZodArray`,{min(e,t){return this.check(To(e,t))},nonempty(e){return this.check(To(1,e))},max(e,t){return this.check(O(e,t))},length(e,t){return this.check(Eo(e,t))},unwrap(){return this.element}})});function P(e,t){return zo(Mc,e,t)}var Nc=E(`ZodObject`,(e,t)=>{ea.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>us(e,t,n,r),yn(e,`shape`,()=>t.shape),Ks(e,`ZodObject`,{keyof(){return z(Object.keys(this._zod.def.shape))},catchall(e){return this.clone({...this._zod.def,catchall:e})},passthrough(){return this.clone({...this._zod.def,catchall:M()})},loose(){return this.clone({...this._zod.def,catchall:M()})},strict(){return this.clone({...this._zod.def,catchall:Oc()})},strip(){return this.clone({...this._zod.def,catchall:void 0})},extend(e){return In(this,e)},safeExtend(e){return Ln(this,e)},merge(e){return Rn(this,e)},pick(e){return Pn(this,e)},omit(e){return Fn(this,e)},partial(...e){return zn(qc,this,e[0])},required(...e){return Bn(rl,this,e[0])}})});function F(e,t){return new Nc({type:`object`,shape:e??{},...D(t)})}function Pc(e,t){return new Nc({type:`object`,shape:e,catchall:M(),...D(t)})}var Fc=E(`ZodUnion`,(e,t)=>{na.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ds(e,t,n,r),e.options=t.options});function I(e,t){return new Fc({type:`union`,options:e,...D(t)})}var Ic=E(`ZodDiscriminatedUnion`,(e,t)=>{Fc.init(e,t),ra.init(e,t)});function L(e,t,n){return new Ic({type:`union`,options:t,discriminator:e,...D(n)})}var Lc=E(`ZodIntersection`,(e,t)=>{ia.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>fs(e,t,n,r)});function Rc(e,t){return new Lc({type:`intersection`,left:e,right:t})}var zc=E(`ZodTuple`,(e,t)=>{sa.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ps(e,t,n,r),e.rest=t=>e.clone({...e._zod.def,rest:t})});function Bc(e,t,n){let r=t instanceof ui;return new zc({type:`tuple`,items:e,rest:r?t:null,...D(r?n:t)})}var Vc=E(`ZodRecord`,(e,t)=>{da.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ms(e,t,n,r),e.keyType=t.keyType,e.valueType=t.valueType});function R(e,t,n){return!t||!t._zod?new Vc({type:`record`,keyType:k(),valueType:e,...D(t)}):new Vc({type:`record`,keyType:e,valueType:t,...D(n)})}function Hc(e,t,n){let r=jn(e);return r._zod.values=void 0,new Vc({type:`record`,keyType:r,valueType:t,...D(n)})}var Uc=E(`ZodEnum`,(e,t)=>{fa.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>as(e,t,n,r),e.enum=t.entries,e.options=Object.values(t.entries);let n=new Set(Object.keys(t.entries));e.extract=(e,r)=>{let i={};for(let r of e)if(n.has(r))i[r]=t.entries[r];else throw Error(`Key ${r} not found in enum`);return new Uc({...t,checks:[],...D(r),entries:i})},e.exclude=(e,r)=>{let i={...t.entries};for(let t of e)if(n.has(t))delete i[t];else throw Error(`Key ${t} not found in enum`);return new Uc({...t,checks:[],...D(r),entries:i})}});function z(e,t){return new Uc({type:`enum`,entries:Array.isArray(e)?Object.fromEntries(e.map(e=>[e,e])):e,...D(t)})}var Wc=E(`ZodLiteral`,(e,t)=>{pa.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>os(e,t,n,r),e.values=new Set(t.values),Object.defineProperty(e,"value",{get(){if(t.values.length>1)throw Error("This schema contains multiple valid literal values. Use `.values` instead.");return t.values[0]}})});function B(e,t){return new Wc({type:`literal`,values:Array.isArray(e)?e:[e],...D(t)})}var Gc=E(`ZodTransform`,(e,t)=>{ma.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>cs(e,t,n,r),e._zod.parse=(n,r)=>{if(r.direction===`backward`)throw new ln(e.constructor.name);n.addIssue=r=>{if(typeof r==`string`)n.issues.push(qn(r,n.value,t));else{let t=r;t.fatal&&(t.continue=!1),t.code??=`custom`,t.input??=n.value,t.inst??=e,n.issues.push(qn(t))}};let i=t.transform(n.value,n);return i instanceof Promise?i.then(e=>(n.value=e,n.fallback=!0,n)):(n.value=i,n.fallback=!0,n)}});function Kc(e){return new Gc({type:`transform`,transform:e})}var qc=E(`ZodOptional`,(e,t)=>{ga.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ss(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Jc(e){return new qc({type:`optional`,innerType:e})}var Yc=E(`ZodExactOptional`,(e,t)=>{_a.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Ss(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Xc(e){return new Yc({type:`optional`,innerType:e})}var Zc=E(`ZodNullable`,(e,t)=>{va.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>hs(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function Qc(e){return new Zc({type:`nullable`,innerType:e})}var $c=E(`ZodDefault`,(e,t)=>{ya.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>_s(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeDefault=e.unwrap});function el(e,t){return new $c({type:`default`,innerType:e,get defaultValue(){return typeof t==`function`?t():On(t)}})}var tl=E(`ZodPrefault`,(e,t)=>{xa.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>vs(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function nl(e,t){return new tl({type:`prefault`,innerType:e,get defaultValue(){return typeof t==`function`?t():On(t)}})}var rl=E(`ZodNonOptional`,(e,t)=>{Sa.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>gs(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function il(e,t){return new rl({type:`nonoptional`,innerType:e,...D(t)})}var al=E(`ZodCatch`,(e,t)=>{wa.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ys(e,t,n,r),e.unwrap=()=>e._zod.def.innerType,e.removeCatch=e.unwrap});function ol(e,t){return new al({type:`catch`,innerType:e,catchValue:typeof t==`function`?t:()=>t})}var sl=E(`ZodPipe`,(e,t)=>{Ta.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>bs(e,t,n,r),e.in=t.in,e.out=t.out});function cl(e,t){return new sl({type:`pipe`,in:e,out:t})}var ll=E(`ZodPreprocess`,(e,t)=>{sl.init(e,t),Da.init(e,t)}),ul=E(`ZodReadonly`,(e,t)=>{Oa.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>xs(e,t,n,r),e.unwrap=()=>e._zod.def.innerType});function dl(e){return new ul({type:`readonly`,innerType:e})}var fl=E(`ZodLazy`,(e,t)=>{Aa.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>Cs(e,t,n,r),e.unwrap=()=>e._zod.def.getter()});function pl(e){return new fl({type:`lazy`,getter:e})}var ml=E(`ZodCustom`,(e,t)=>{ja.init(e,t),qs.init(e,t),e._zod.processJSONSchema=(t,n,r)=>ss(e,t,n,r)});function hl(e,t){return Bo(ml,e??(()=>!0),t)}function gl(e,t={}){return Vo(ml,e,t)}function _l(e,t){return Ho(e,t)}function vl(e,t={}){let n=new ml({type:`custom`,check:`custom`,fn:t=>t instanceof e,abort:!0,...D(t)});return n._zod.bag.Class=e,n._zod.check=t=>{t.value instanceof e||t.issues.push({code:`invalid_type`,expected:e.name,input:t.value,inst:n,path:[...n._zod.def.path??[]]})},n}function yl(e,t){return new ll({type:`pipe`,in:Kc(e),out:t})}var bl={invalid_type:`invalid_type`,too_big:`too_big`,too_small:`too_small`,invalid_format:`invalid_format`,not_multiple_of:`not_multiple_of`,unrecognized_keys:`unrecognized_keys`,invalid_union:`invalid_union`,invalid_key:`invalid_key`,invalid_element:`invalid_element`,invalid_value:`invalid_value`,custom:`custom`},xl;xl||={};var Sl=`modulepreload`,Cl=function(e){return`/`+e},wl={},Tl=function(e,t,n){let r=Promise.resolve();if(t&&t.length>0){let e=document.getElementsByTagName(`link`),i=document.querySelector(`meta[property=csp-nonce]`),a=i?.nonce||i?.getAttribute(`nonce`);function o(e){return Promise.all(e.map(e=>Promise.resolve(e).then(e=>({status:`fulfilled`,value:e}),e=>({status:`rejected`,reason:e}))))}r=o(t.map(t=>{if(t=Cl(t,n),t in wl)return;wl[t]=!0;let r=t.endsWith(`.css`),i=r?`[rel="stylesheet"]`:``;if(n)for(let n=e.length-1;n>=0;n--){let i=e[n];if(i.href===t&&(!r||i.rel===`stylesheet`))return}else if(document.querySelector(`link[href="${t}"]${i}`))return;let o=document.createElement(`link`);if(o.rel=r?`stylesheet`:Sl,r||(o.as=`script`),o.crossOrigin=``,o.href=t,a&&o.setAttribute(`nonce`,a),document.head.appendChild(o),r)return new Promise((e,n)=>{o.addEventListener(`load`,e),o.addEventListener(`error`,()=>n(Error(`Unable to preload CSS for ${t}`)))})}))}function i(e){let t=new Event(`vite:preloadError`,{cancelable:!0});if(t.payload=e,window.dispatchEvent(t),!t.defaultPrevented)throw e}return r.then(t=>{for(let e of t||[])e.status===`rejected`&&i(e.reason);return e().catch(i)})},El=[`f32le`,`pcmu`,`pcma`];function Dl(){let e=new Float32Array(256);for(let t=0;t<256;t++){let n=~t&255,r=n&128?-1:1,i=n>>4&7;e[t]=r*((8*(n&15)+132<<i)-132)/32768}return e}function Ol(){let e=new Float32Array(256);for(let t=0;t<256;t++){let n=t^85,r=n&128?1:-1,i=n>>4&7,a=n&15;e[t]=r*(i===0?16*a+8:16*a+264<<i-1)/32768}return e}Dl(),Ol(),Object.fromEntries([{id:`overview`,label:`Overview`,icon:`layout-dashboard`,order:-10},{id:`general`,label:`General`,icon:`settings`,order:0},{id:`image`,label:`Image`,icon:`image`,order:5},{id:`light`,label:`Light`,icon:`lightbulb`,order:7},{id:`motion`,label:`Motion`,icon:`activity`,order:10},{id:`audio`,label:`Audio`,icon:`mic`,order:12},{id:`alarms`,label:`Alarms`,icon:`bell-ring`,order:13},{id:`snapshot`,label:`Snapshot`,icon:`camera`,order:15},{id:`osd`,label:`OSD`,icon:`type`,order:18},{id:`stream-broker`,label:`Stream Broker`,icon:`radio`,order:20},{id:`streaming`,label:`Streaming`,icon:`video`,order:35},{id:`ptz`,label:`PTZ`,icon:`move`,order:40},{id:`navigation`,label:`Navigation`,icon:`compass`,order:41},{id:`consumables`,label:`Consumables`,icon:`recycle`,order:44},{id:`pipeline`,label:`Detection Pipeline`,icon:`cpu`,order:39},{id:`detection-pipeline`,label:`Detection pipeline`,icon:`cpu`,order:39},{id:`zones`,label:`Detection`,icon:`shapes`,order:38},{id:`analytics`,label:`Analytics`,icon:`activity`,order:37},{id:`live-stats`,label:`Live Stats`,icon:`activity`,order:39},{id:`recording`,label:`Recording`,icon:`circle-dot`,order:40},{id:`engine`,label:`Inference Engine`,icon:`zap`,order:41},{id:`scheduler`,label:`Scheduler`,icon:`list-checks`,order:42},{id:`decoder`,label:`Decoder`,icon:`film`,order:43},{id:`notifications`,label:`Notifications`,icon:`bell`,order:50},{id:`network`,label:`Network`,icon:`globe`,order:60},{id:`storage`,label:`Storage`,icon:`hard-drive`,order:70},{id:`advanced`,label:`Advanced`,icon:`wrench`,order:100}].map(e=>[e.id,e]));var kl=F({url:k().min(1),hostNodeId:k().min(1),expiresAtMs:A().int().nonnegative(),declaredBytes:A().int().nonnegative().nullable()}),Al=z([`high`,`mid`,`low`]),jl=I([Al,B(`auto`)]),Ml=z([`pull-rtsp`,`pull-rtmp`,`pull-http`,`pull-flv`,`pull-rfc4571`,`push-annexb`,`derived`]),Nl=F({width:A().int().positive(),height:A().int().positive()}),Pl=F({camStreamId:k().min(1),deviceId:A().int().nonnegative(),kind:Ml,url:k().optional(),codec:k().optional(),resolution:Nl.optional(),fps:A().positive().optional(),label:k().optional(),deviceFeatures:P(k()).optional(),autoEligible:j().optional(),profileHint:Al.optional(),metadata:R(k(),M()).optional()}),Fl=z([`unassigned`,`idle`,`connecting`,`streaming`,`error`]),Il=F({deviceId:A().int().nonnegative(),profile:Al,brokerId:k(),sourceCamStreamId:k().nullable(),status:Fl,resolution:Nl.optional(),codec:k().optional(),preBufferSec:A().nonnegative().optional(),errorMessage:k().optional()}),Ll=F({id:k(),label:k(),protocol:z([`rtsp`,`rtmp`,`annexb`,`http-mjpeg`,`webrtc`,`custom`]),url:k().optional(),resolution:F({width:A(),height:A()}).readonly().optional(),fps:A().optional(),bitrate:A().optional(),codec:k().optional(),profileHint:Al.optional()});F({type:k(),url:k(),videoCodec:k().optional(),audioCodec:k().optional(),metadata:R(k(),M()).readonly().optional()});var Rl=F({shmId:k(),slot:A().int().nonnegative(),seq:A().int().nonnegative(),width:A().int().positive(),height:A().int().positive(),format:z([`jpeg`,`rgb`,`bgr`,`yuv420`,`gray`]),pts:A(),byteLength:A().int().nonnegative(),nodeId:k(),slotCount:A().int().positive()}),zl=z(El),Bl=F({data:vl(Uint8Array),sampleRate:A().int().positive(),channels:A().int().positive(),timestamp:A(),format:zl.optional()}),Vl=F({brokerId:k(),tag:k().optional(),accept:P(zl).readonly().optional()}),Hl=F({subscriptionId:k()}),Ul=F({status:z([`idle`,`connecting`,`streaming`,`error`,`stopped`]),inputFps:A(),encodedSubscribers:A(),uptimeMs:A(),bitrateKbps:A(),idrIntervalMs:A(),codec:k().optional(),totalBytes:A(),packetCount:A(),rtspClients:A(),pipeClients:A(),preBufferSec:A(),preBufferMs:A(),preBufferPackets:A(),audio:F({codec:k(),sampleRate:A(),channels:A(),supported:j()}).nullable().optional(),audioMuted:j().optional(),audioMutedDropped:A().optional()}),Wl=F({profile:Al,brokerId:k(),url:k(),mutedUrl:k(),enabled:j(),codec:k().optional(),resolution:Nl.optional()}),Gl=[`onnx`,`coreml`,`openvino`,`tflite`,`pt`,`gguf`];F({field:k().min(1),on:B(`advance`)});var Kl=F({id:k(),title:k(),description:k().optional(),style:z([`card`,`accordion`]).optional(),defaultCollapsed:j().optional(),columns:I([B(1),B(2),B(3),B(4)]).optional(),tab:k().optional(),location:z([`settings`,`top-tab`]).optional(),order:A().optional(),fields:P(Tc())});F({tabs:P(F({id:k(),label:k(),icon:k(),order:A().optional()})).optional(),sections:P(Kl)}).nullable(),F({deviceId:A()}),F({deviceId:A()}),F({deviceId:A(),patch:R(k(),M())}),F({success:B(!0)}),F({deviceId:A()}),M().nullable();function V(e,t,n){return{input:e,output:t,kind:n?.kind??`query`,...n?.auth===void 0?{}:{auth:n.auth},...n?.access===void 0?{}:{access:n.access},...n?.caller===void 0?{}:{caller:n.caller},timeoutMs:n?.timeoutMs}}function ql(e,t,n){return{...V(e,t,n),systemOnly:!0}}function Jl(e,t,n){return{...V(e,t,n),providerOptional:!0}}function Yl(e){return{data:e}}var Xl=F({staticDir:k()}),Zl=F({version:k()}),Ql={name:`admin-ui`,scope:`system`,mode:`singleton`,internal:!0,methods:{getStaticDir:V(N(),Xl,{auth:`admin`}),getVersion:V(N(),Zl,{auth:`admin`})}},$l=F({staticDir:k()}),eu=F({version:k()}),tu={name:`viewer-ui`,scope:`system`,mode:`singleton`,internal:!0,methods:{getStaticDir:V(N(),$l,{auth:`admin`}),getVersion:V(N(),eu,{auth:`admin`})}},nu=F({id:k(),label:k(),protocol:z([`rtsp`,`rtmp`,`annexb`,`http-mjpeg`,`webrtc`,`custom`]),url:k().optional(),resolution:F({width:A(),height:A()}).optional(),fps:A().optional(),bitrate:A().optional(),codec:k().optional(),profileHint:Al.optional(),sdp:k().optional()}),ru=F({key:k(),value:M()}),iu=F({source:k(),data:R(k(),M())}),au={name:`device-ops`,scope:`device`,deviceNative:!0,mode:`singleton`,methods:{getStreamSources:V(F({deviceId:A()}),P(nu)),getConfigEntries:V(F({deviceId:A()}),P(ru)),setConfig:V(F({deviceId:A(),values:R(k(),M())}),N(),{kind:`mutation`,auth:`admin`}),runAction:V(F({deviceId:A(),action:k().min(1),input:M()}),M(),{kind:`mutation`}),removeDevice:V(F({deviceId:A()}),N(),{kind:`mutation`,auth:`admin`}),getSettingsSchema:V(F({deviceId:A()}),M().nullable()),getRawState:V(F({deviceId:A()}),iu.nullable(),{auth:`protected`})}},ou=`device.state-changed`;function su(e){let t=new Map,n=new Map,r=null,i=(e,t)=>`${e}:${t}`,a=()=>{r||e.live?.onEvent&&(r=e.live.onEvent.subscribe({category:ou},{onData:e=>{let r=e.data;if(!r||typeof r.deviceId!=`number`||typeof r.capName!=`string`)return;let a=i(r.deviceId,r.capName);t.set(a,r.slice);let o=n.get(a);if(o)for(let e of o)try{e(r.slice)}catch{}}}))},o=()=>{r&&(n.size>0||(r.unsubscribe(),r=null))};return{read(e,n){return t.get(i(e,n))},async refresh(r,a){let o=await e.deviceState.getCapSlice.query({deviceId:r,capName:a}),s=i(r,a);t.set(s,o??void 0);let c=n.get(s);if(c)for(let e of c)try{e(o??void 0)}catch{}},watch(e,t,r){let s=i(e,t),c=n.get(s);return c||(c=new Set,n.set(s,c)),c.add(r),a(),()=>{c.delete(r),c.size===0&&n.delete(s),o()}},async write(t,n,r){await e.deviceState.setCapSlice.mutate({deviceId:t,capName:n,slice:r})}}}function H(e,t,n){let r=cu(e)?e:su(e);return{get value(){return r.read(t,n)},refresh(){return r.refresh(t,n)},subscribe(e){let i=r.watch(t,n,t=>{try{e(t)}catch{}});try{e(r.read(t,n))}catch{}return r.read(t,n)===void 0&&r.refresh(t,n).catch(()=>void 0),i},async set(e){await r.write(t,n,e)},async patch(e){let i={...r.read(t,n),...e};await r.write(t,n,i)}}}function cu(e){return typeof e.read==`function`&&typeof e.watch==`function`}function lu(e,t,n){let r=e,i=n?.stateSource??su(e);function a(e,n){let r=typeof e==`object`&&e?e:{};return n===void 0?{...r,deviceId:t.deviceId}:{...r,deviceId:t.deviceId,nodeId:n}}function o(e,t,n,i,a){let o=r[e]?.[t];if(!o)throw Error(`DeviceProxy: api has no '${e}.${t}'`);let s=o;return n===`mutation`?s.mutate(i):n===`subscription`?s.subscribe(i,a):s.query(i)}function s(e,n,r,i,s,c){return o(n,r,i,a(s,t.entries.find(t=>t.capName===e)?.providerNodeId),c)}function c(e,t,n,r,i){return o(e,t,n,a(r,void 0),i)}function l(e){return t.entries.some(t=>t.capName===e)}let u={setChildHidden:e=>s(`accessories`,`accessories`,`setChildHidden`,`mutation`,e),getStatus:e=>s(`accessories`,`accessories`,`getStatus`,`query`,e)},d={getStatus:e=>s(`air-quality-sensor`,`airQualitySensor`,`getStatus`,`query`,e)},f={arm:e=>s(`alarm-panel`,`alarmPanel`,`arm`,`mutation`,e),disarm:e=>s(`alarm-panel`,`alarmPanel`,`disarm`,`mutation`,e),trigger:e=>s(`alarm-panel`,`alarmPanel`,`trigger`,`mutation`,e),getStatus:e=>s(`alarm-panel`,`alarmPanel`,`getStatus`,`query`,e)},p={getStatus:e=>s(`ambient-light-sensor`,`ambientLightSensor`,`getStatus`,`query`,e)},m={resolveDeviceSettings:e=>s(`audio-analysis`,`audioAnalysis`,`resolveDeviceSettings`,`query`,e),getDeviceSettingsContribution:e=>s(`audio-analysis`,`audioAnalysis`,`getDeviceSettingsContribution`,`query`,e),getDeviceLiveContribution:e=>s(`audio-analysis`,`audioAnalysis`,`getDeviceLiveContribution`,`query`,e),applyDeviceSettingsPatch:e=>s(`audio-analysis`,`audioAnalysis`,`applyDeviceSettingsPatch`,`mutation`,e)},h={getCurrentSnapshot:e=>s(`audio-metrics`,`audioMetrics`,`getCurrentSnapshot`,`query`,e),getHistory:e=>s(`audio-metrics`,`audioMetrics`,`getHistory`,`query`,e)},g={enable:e=>s(`automation-control`,`automationControl`,`enable`,`mutation`,e),disable:e=>s(`automation-control`,`automationControl`,`disable`,`mutation`,e),trigger:e=>s(`automation-control`,`automationControl`,`trigger`,`mutation`,e),getStatus:e=>s(`automation-control`,`automationControl`,`getStatus`,`query`,e)},_={wakeForStream:e=>s(`battery`,`battery`,`wakeForStream`,`mutation`,e),getStatus:e=>s(`battery`,`battery`,`getStatus`,`query`,e)},v={getStatus:e=>s(`binary`,`binary`,`getStatus`,`query`,e)},y={setBrightness:e=>s(`brightness`,`brightness`,`setBrightness`,`mutation`,e),getStatus:e=>s(`brightness`,`brightness`,`getStatus`,`query`,e)},b={press:e=>s(`button`,`button`,`press`,`mutation`,e)},x={getCredentials:e=>s(`camera-credentials`,`cameraCredentials`,`getCredentials`,`query`,e),getStatus:e=>s(`camera-credentials`,`cameraCredentials`,`getStatus`,`query`,e)},ee={getLayout:e=>s(`camera-grid-layout`,`cameraGridLayout`,`getLayout`,`query`,e),saveLayout:e=>s(`camera-grid-layout`,`cameraGridLayout`,`saveLayout`,`mutation`,e),getDeviceSettingsContribution:e=>s(`camera-grid-layout`,`cameraGridLayout`,`getDeviceSettingsContribution`,`query`,e),getDeviceLiveContribution:e=>s(`camera-grid-layout`,`cameraGridLayout`,`getDeviceLiveContribution`,`query`,e),applyDeviceSettingsPatch:e=>s(`camera-grid-layout`,`cameraGridLayout`,`applyDeviceSettingsPatch`,`mutation`,e)},te={getDeviceSettingsContribution:e=>s(`camera-pipeline-config`,`cameraPipelineConfig`,`getDeviceSettingsContribution`,`query`,e),getDeviceLiveContribution:e=>s(`camera-pipeline-config`,`cameraPipelineConfig`,`getDeviceLiveContribution`,`query`,e),applyDeviceSettingsPatch:e=>s(`camera-pipeline-config`,`cameraPipelineConfig`,`applyDeviceSettingsPatch`,`mutation`,e)},S={getCameraStreams:e=>s(`camera-streams`,`cameraStreams`,`getCameraStreams`,`query`,e),getBrokerStreams:e=>s(`camera-streams`,`cameraStreams`,`getBrokerStreams`,`query`,e),getRtspEntries:e=>s(`camera-streams`,`cameraStreams`,`getRtspEntries`,`query`,e),getProfileRtspEntries:e=>s(`camera-streams`,`cameraStreams`,`getProfileRtspEntries`,`query`,e),pickStream:e=>s(`camera-streams`,`cameraStreams`,`pickStream`,`query`,e)},ne={getStatus:e=>s(`carbon-monoxide`,`carbonMonoxide`,`getStatus`,`query`,e)},re={setMode:e=>s(`climate-control`,`climateControl`,`setMode`,`mutation`,e),setFanMode:e=>s(`climate-control`,`climateControl`,`setFanMode`,`mutation`,e),setPreset:e=>s(`climate-control`,`climateControl`,`setPreset`,`mutation`,e),setTarget:e=>s(`climate-control`,`climateControl`,`setTarget`,`mutation`,e),setTargetRange:e=>s(`climate-control`,`climateControl`,`setTargetRange`,`mutation`,e),setTargetHumidity:e=>s(`climate-control`,`climateControl`,`setTargetHumidity`,`mutation`,e),setSwingVertical:e=>s(`climate-control`,`climateControl`,`setSwingVertical`,`mutation`,e),setSwingHorizontal:e=>s(`climate-control`,`climateControl`,`setSwingHorizontal`,`mutation`,e),getStatus:e=>s(`climate-control`,`climateControl`,`getStatus`,`query`,e)},ie={setColor:e=>s(`color`,`color`,`setColor`,`mutation`,e),getStatus:e=>s(`color`,`color`,`getStatus`,`query`,e)},ae={getStatus:e=>s(`connectivity`,`connectivity`,`getStatus`,`query`,e)},oe={reset:e=>s(`consumables`,`consumables`,`reset`,`mutation`,e),getStatus:e=>s(`consumables`,`consumables`,`getStatus`,`query`,e)},se={getStatus:e=>s(`contact`,`contact`,`getStatus`,`query`,e)},ce={setValue:e=>s(`control`,`control`,`setValue`,`mutation`,e),getStatus:e=>s(`control`,`control`,`getStatus`,`query`,e)},le={open:e=>s(`cover`,`cover`,`open`,`mutation`,e),close:e=>s(`cover`,`cover`,`close`,`mutation`,e),stop:e=>s(`cover`,`cover`,`stop`,`mutation`,e),setPosition:e=>s(`cover`,`cover`,`setPosition`,`mutation`,e),setTiltPosition:e=>s(`cover`,`cover`,`setTiltPosition`,`mutation`,e),getStatus:e=>s(`cover`,`cover`,`getStatus`,`query`,e)},ue={getOptions:e=>s(`day-night`,`dayNight`,`getOptions`,`query`,e),setSettings:e=>s(`day-night`,`dayNight`,`setSettings`,`mutation`,e),getStatus:e=>s(`day-night`,`dayNight`,`getStatus`,`query`,e)},de={getDeviceSettingsContribution:e=>s(`detection-pipeline`,`detectionPipeline`,`getDeviceSettingsContribution`,`query`,e),getDeviceLiveContribution:e=>s(`detection-pipeline`,`detectionPipeline`,`getDeviceLiveContribution`,`query`,e),applyDeviceSettingsPatch:e=>s(`detection-pipeline`,`detectionPipeline`,`applyDeviceSettingsPatch`,`mutation`,e)},C={getAdminLink:e=>s(`device-admin-link`,`deviceAdminLink`,`getAdminLink`,`query`,e)},w={listDiscovered:e=>s(`device-discovery`,`deviceDiscovery`,`listDiscovered`,`query`,e),refreshDiscovery:e=>s(`device-discovery`,`deviceDiscovery`,`refreshDiscovery`,`mutation`,e),adoptDevice:e=>s(`device-discovery`,`deviceDiscovery`,`adoptDevice`,`mutation`,e),releaseDevice:e=>s(`device-discovery`,`deviceDiscovery`,`releaseDevice`,`mutation`,e),getStatus:e=>s(`device-discovery`,`deviceDiscovery`,`getStatus`,`query`,e)},fe={listSources:e=>s(`device-extension`,`deviceExtension`,`listSources`,`query`,e),listSlots:e=>s(`device-extension`,`deviceExtension`,`listSlots`,`query`,e),listCandidates:e=>s(`device-extension`,`deviceExtension`,`listCandidates`,`query`,e),setSlot:e=>s(`device-extension`,`deviceExtension`,`setSlot`,`mutation`,e)},pe={getStreamSources:e=>s(`device-ops`,`deviceOps`,`getStreamSources`,`query`,e),getConfigEntries:e=>s(`device-ops`,`deviceOps`,`getConfigEntries`,`query`,e),setConfig:e=>s(`device-ops`,`deviceOps`,`setConfig`,`mutation`,e),runAction:e=>s(`device-ops`,`deviceOps`,`runAction`,`mutation`,e),removeDevice:e=>s(`device-ops`,`deviceOps`,`removeDevice`,`mutation`,e),getSettingsSchema:e=>s(`device-ops`,`deviceOps`,`getSettingsSchema`,`query`,e),getRawState:e=>s(`device-ops`,`deviceOps`,`getRawState`,`query`,e)},me={getStatus:e=>s(`device-status`,`deviceStatus`,`getStatus`,`query`,e)},he={getStatus:e=>s(`doorbell`,`doorbell`,`getStatus`,`query`,e)},ge={getStatus:e=>s(`enum-sensor`,`enumSensor`,`getStatus`,`query`,e)},_e={getStatus:e=>s(`event-emitter`,`eventEmitter`,`getStatus`,`query`,e)},ve={setPercentage:e=>s(`fan-control`,`fanControl`,`setPercentage`,`mutation`,e),setPreset:e=>s(`fan-control`,`fanControl`,`setPreset`,`mutation`,e),setDirection:e=>s(`fan-control`,`fanControl`,`setDirection`,`mutation`,e),setOscillating:e=>s(`fan-control`,`fanControl`,`setOscillating`,`mutation`,e),getStatus:e=>s(`fan-control`,`fanControl`,`getStatus`,`query`,e)},ye={getStatus:e=>s(`feature-probe`,`featureProbe`,`getStatus`,`query`,e)},be={getStatus:e=>s(`flood`,`flood`,`getStatus`,`query`,e)},xe={getStatus:e=>s(`gas`,`gas`,`getStatus`,`query`,e)},Se={setOn:e=>s(`humidifier`,`humidifier`,`setOn`,`mutation`,e),setTargetHumidity:e=>s(`humidifier`,`humidifier`,`setTargetHumidity`,`mutation`,e),setMode:e=>s(`humidifier`,`humidifier`,`setMode`,`mutation`,e),getStatus:e=>s(`humidifier`,`humidifier`,`getStatus`,`query`,e)},Ce={getStatus:e=>s(`humidity-sensor`,`humiditySensor`,`getStatus`,`query`,e)},we={getStatus:e=>s(`image`,`image`,`getStatus`,`query`,e)},Te={getOptions:e=>s(`image-settings`,`imageSettings`,`getOptions`,`query`,e),setSettings:e=>s(`image-settings`,`imageSettings`,`setSettings`,`mutation`,e),getStatus:e=>s(`image-settings`,`imageSettings`,`getStatus`,`query`,e)},Ee={startSession:e=>s(`intercom`,`intercom`,`startSession`,`mutation`,e),handleAnswer:e=>s(`intercom`,`intercom`,`handleAnswer`,`mutation`,e),stopSession:e=>s(`intercom`,`intercom`,`stopSession`,`mutation`,e),startTalkSession:e=>s(`intercom`,`intercom`,`startTalkSession`,`mutation`,e),pushTalkAudio:e=>s(`intercom`,`intercom`,`pushTalkAudio`,`mutation`,e),endTalkSession:e=>s(`intercom`,`intercom`,`endTalkSession`,`mutation`,e),getStatus:e=>s(`intercom`,`intercom`,`getStatus`,`query`,e)},De={startMowing:e=>s(`lawn-mower-control`,`lawnMowerControl`,`startMowing`,`mutation`,e),pause:e=>s(`lawn-mower-control`,`lawnMowerControl`,`pause`,`mutation`,e),dock:e=>s(`lawn-mower-control`,`lawnMowerControl`,`dock`,`mutation`,e),getStatus:e=>s(`lawn-mower-control`,`lawnMowerControl`,`getStatus`,`query`,e)},Oe={lock:e=>s(`lock-control`,`lockControl`,`lock`,`mutation`,e),unlock:e=>s(`lock-control`,`lockControl`,`unlock`,`mutation`,e),open:e=>s(`lock-control`,`lockControl`,`open`,`mutation`,e),getStatus:e=>s(`lock-control`,`lockControl`,`getStatus`,`query`,e)},ke={play:e=>s(`media-player`,`mediaPlayer`,`play`,`mutation`,e),pause:e=>s(`media-player`,`mediaPlayer`,`pause`,`mutation`,e),stop:e=>s(`media-player`,`mediaPlayer`,`stop`,`mutation`,e),next:e=>s(`media-player`,`mediaPlayer`,`next`,`mutation`,e),previous:e=>s(`media-player`,`mediaPlayer`,`previous`,`mutation`,e),seek:e=>s(`media-player`,`mediaPlayer`,`seek`,`mutation`,e),setVolume:e=>s(`media-player`,`mediaPlayer`,`setVolume`,`mutation`,e),setMute:e=>s(`media-player`,`mediaPlayer`,`setMute`,`mutation`,e),setShuffle:e=>s(`media-player`,`mediaPlayer`,`setShuffle`,`mutation`,e),setRepeat:e=>s(`media-player`,`mediaPlayer`,`setRepeat`,`mutation`,e),selectSource:e=>s(`media-player`,`mediaPlayer`,`selectSource`,`mutation`,e),playMedia:e=>s(`media-player`,`mediaPlayer`,`playMedia`,`mutation`,e),getStatus:e=>s(`media-player`,`mediaPlayer`,`getStatus`,`query`,e)},Ae={isDetected:e=>s(`motion`,`motion`,`isDetected`,`query`,e),getStatus:e=>s(`motion`,`motion`,`getStatus`,`query`,e)},je={analyze:e=>s(`motion-detection`,`motionDetection`,`analyze`,`mutation`,e),removeCamera:e=>s(`motion-detection`,`motionDetection`,`removeCamera`,`mutation`,e),reset:e=>s(`motion-detection`,`motionDetection`,`reset`,`mutation`,e),getDeviceSettingsContribution:e=>s(`motion-detection`,`motionDetection`,`getDeviceSettingsContribution`,`query`,e),getDeviceLiveContribution:e=>s(`motion-detection`,`motionDetection`,`getDeviceLiveContribution`,`query`,e),applyDeviceSettingsPatch:e=>s(`motion-detection`,`motionDetection`,`applyDeviceSettingsPatch`,`mutation`,e)},Me={setMotionTrigger:e=>s(`motion-trigger`,`motionTrigger`,`setMotionTrigger`,`mutation`,e),getStatus:e=>s(`motion-trigger`,`motionTrigger`,`getStatus`,`query`,e)},Ne={getOptions:e=>s(`motion-zones`,`motionZones`,`getOptions`,`query`,e),setZone:e=>s(`motion-zones`,`motionZones`,`setZone`,`mutation`,e),getStatus:e=>s(`motion-zones`,`motionZones`,`getStatus`,`query`,e)},Pe={getOptions:e=>s(`native-object-detection`,`nativeObjectDetection`,`getOptions`,`query`,e),setSettings:e=>s(`native-object-detection`,`nativeObjectDetection`,`setSettings`,`mutation`,e),setEnabled:e=>s(`native-object-detection`,`nativeObjectDetection`,`setEnabled`,`mutation`,e),getStatus:e=>s(`native-object-detection`,`nativeObjectDetection`,`getStatus`,`query`,e)},Fe={move:e=>s(`navigation`,`navigation`,`move`,`mutation`,e),stop:e=>s(`navigation`,`navigation`,`stop`,`mutation`,e),goToPoint:e=>s(`navigation`,`navigation`,`goToPoint`,`mutation`,e),listActions:e=>s(`navigation`,`navigation`,`listActions`,`query`,e),runAction:e=>s(`navigation`,`navigation`,`runAction`,`mutation`,e),playSound:e=>s(`navigation`,`navigation`,`playSound`,`mutation`,e),setLightOn:e=>s(`navigation`,`navigation`,`setLightOn`,`mutation`,e),setLightMode:e=>s(`navigation`,`navigation`,`setLightMode`,`mutation`,e),setLightLevel:e=>s(`navigation`,`navigation`,`setLightLevel`,`mutation`,e),getFeatures:e=>s(`navigation`,`navigation`,`getFeatures`,`query`,e),getStatus:e=>s(`navigation`,`navigation`,`getStatus`,`query`,e)},Ie={getStatus:e=>s(`network-link`,`networkLink`,`getStatus`,`query`,e)},Le={send:e=>s(`notifier`,`notifier`,`send`,`mutation`,e),cancel:e=>s(`notifier`,`notifier`,`cancel`,`mutation`,e),getStatus:e=>s(`notifier`,`notifier`,`getStatus`,`query`,e)},Re={getStatus:e=>s(`numeric-sensor`,`numericSensor`,`getStatus`,`query`,e)},ze={setOverlay:e=>s(`osd`,`osd`,`setOverlay`,`mutation`,e),getStatus:e=>s(`osd`,`osd`,`getStatus`,`query`,e)},Be={feed:e=>s(`pet-feeder`,`petFeeder`,`feed`,`mutation`,e),cancelFeed:e=>s(`pet-feeder`,`petFeeder`,`cancelFeed`,`mutation`,e),resetDesiccant:e=>s(`pet-feeder`,`petFeeder`,`resetDesiccant`,`mutation`,e),markFoodReplenished:e=>s(`pet-feeder`,`petFeeder`,`markFoodReplenished`,`mutation`,e),callPet:e=>s(`pet-feeder`,`petFeeder`,`callPet`,`mutation`,e),playSound:e=>s(`pet-feeder`,`petFeeder`,`playSound`,`mutation`,e),setChildLock:e=>s(`pet-feeder`,`petFeeder`,`setChildLock`,`mutation`,e),setIndicatorLight:e=>s(`pet-feeder`,`petFeeder`,`setIndicatorLight`,`mutation`,e),setFeedSound:e=>s(`pet-feeder`,`petFeeder`,`setFeedSound`,`mutation`,e),setVolume:e=>s(`pet-feeder`,`petFeeder`,`setVolume`,`mutation`,e),getStatus:e=>s(`pet-feeder`,`petFeeder`,`getStatus`,`query`,e)},Ve={getActiveTracks:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`getActiveTracks`,`query`,e),getTrack:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`getTrack`,`query`,e),listTracks:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`listTracks`,`query`,e),listRecentTracks:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`listRecentTracks`,`query`,e),clearTracks:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`clearTracks`,`mutation`,e),getMotionEvents:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`getMotionEvents`,`query`,e),getObjectEvents:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`getObjectEvents`,`query`,e),getAudioEvents:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`getAudioEvents`,`query`,e),listEventKinds:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`listEventKinds`,`query`,e),listEventKindsBatch:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`listEventKindsBatch`,`query`,e),getSensorEvents:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`getSensorEvents`,`query`,e),getKeyEvents:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`getKeyEvents`,`query`,e),getKeyEventsBatch:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`getKeyEventsBatch`,`query`,e),readLongTermSeries:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`readLongTermSeries`,`query`,e),getEventDensity:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`getEventDensity`,`query`,e),getEventDensityBatch:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`getEventDensityBatch`,`query`,e),pruneEventsBefore:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`pruneEventsBefore`,`mutation`,e),pruneTracksBefore:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`pruneTracksBefore`,`mutation`,e),wipeAllAnalytics:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`wipeAllAnalytics`,`mutation`,e),reconcileFromDisk:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`reconcileFromDisk`,`mutation`,e),deleteTracks:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`deleteTracks`,`mutation`,e),setTrackFlags:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`setTrackFlags`,`mutation`,e),listArchivedDebugNotes:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`listArchivedDebugNotes`,`query`,e),setTrackRelation:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`setTrackRelation`,`mutation`,e),clearTrackRelation:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`clearTrackRelation`,`mutation`,e),setTrackPurity:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`setTrackPurity`,`mutation`,e),listTrackRelations:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`listTrackRelations`,`query`,e),listBirthDecisions:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`listBirthDecisions`,`query`,e),getEventStoreFootprint:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`getEventStoreFootprint`,`query`,e),getEventMediaFootprintByKind:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`getEventMediaFootprintByKind`,`query`,e),pruneEvents:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`pruneEvents`,`mutation`,e),deleteDeviceEvents:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`deleteDeviceEvents`,`mutation`,e),pauseForStorageMigration:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`pauseForStorageMigration`,`mutation`,e),resumeForStorageMigration:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`resumeForStorageMigration`,`mutation`,e),refreshStorageLocationsForMigration:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`refreshStorageLocationsForMigration`,`mutation`,e),startStorageMigrationMove:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`startStorageMigrationMove`,`mutation`,e),getStorageMigrationMoveStatus:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`getStorageMigrationMoveStatus`,`query`,e),cancelStorageMigrationMove:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`cancelStorageMigrationMove`,`mutation`,e),relocateMedia:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`relocateMedia`,`mutation`,e),countUnstampedEventMedia:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`countUnstampedEventMedia`,`query`,e),countRelocatableMedia:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`countRelocatableMedia`,`query`,e),listRelocateMediaJobs:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`listRelocateMediaJobs`,`query`,e),cancelRelocateMedia:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`cancelRelocateMedia`,`mutation`,e),listOpsLog:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`listOpsLog`,`query`,e),reclaimDebugMedia:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`reclaimDebugMedia`,`mutation`,e),getMediaReclaimStatus:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`getMediaReclaimStatus`,`query`,e),getTrainingExportSummary:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`getTrainingExportSummary`,`query`,e),getTrainingExportUrl:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`getTrainingExportUrl`,`query`,e),listRetrainStaging:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`listRetrainStaging`,`query`,e),listRetrainCorpusPage:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`listRetrainCorpusPage`,`query`,e),getRetrainCorpusKpi:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`getRetrainCorpusKpi`,`query`,e),listRetrainFrames:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`listRetrainFrames`,`query`,e),selectRetrainFrames:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`selectRetrainFrames`,`mutation`,e),deselectRetrainFrame:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`deselectRetrainFrame`,`mutation`,e),getRetrainFrameImage:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`getRetrainFrameImage`,`query`,e),proposeRetrainAnnotations:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`proposeRetrainAnnotations`,`mutation`,e),listRetrainAnnotations:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`listRetrainAnnotations`,`query`,e),saveRetrainAnnotations:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`saveRetrainAnnotations`,`mutation`,e),backfillRetrainOrigins:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`backfillRetrainOrigins`,`mutation`,e),completeRetrainTrack:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`completeRetrainTrack`,`mutation`,e),restageRetrainTrack:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`restageRetrainTrack`,`mutation`,e),getRetrainExportUrl:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`getRetrainExportUrl`,`query`,e),setRetrainFrameComplete:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`setRetrainFrameComplete`,`mutation`,e),writeRetrainArchive:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`writeRetrainArchive`,`mutation`,e),offerRetrainArchive:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`offerRetrainArchive`,`mutation`,e),listRetrainAssistProfiles:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`listRetrainAssistProfiles`,`query`,e),proposeRetrainAnnotationsWithLlm:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`proposeRetrainAnnotationsWithLlm`,`mutation`,e),createRetrainCollection:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`createRetrainCollection`,`mutation`,e),listRetrainCollections:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`listRetrainCollections`,`query`,e),resolveRetrainTrainingCorpus:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`resolveRetrainTrainingCorpus`,`query`,e),renameRetrainCollection:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`renameRetrainCollection`,`mutation`,e),deleteRetrainCollection:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`deleteRetrainCollection`,`mutation`,e),addRetrainFrameFromRecording:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`addRetrainFrameFromRecording`,`mutation`,e),addRetrainFramesToCollection:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`addRetrainFramesToCollection`,`mutation`,e),removeRetrainFrameFromCollection:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`removeRetrainFrameFromCollection`,`mutation`,e),listRetrainCollectionFrames:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`listRetrainCollectionFrames`,`query`,e),getEventMedia:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`getEventMedia`,`query`,e),getTrackMedia:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`getTrackMedia`,`query`,e),listTrackMedia:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`listTrackMedia`,`query`,e),listEventMedia:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`listEventMedia`,`query`,e),ownersWithMedia:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`ownersWithMedia`,`query`,e),searchObjectEvents:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`searchObjectEvents`,`query`,e),wipeObjectEmbeddings:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`wipeObjectEmbeddings`,`mutation`,e),rebuildObjectEmbeddings:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`rebuildObjectEmbeddings`,`mutation`,e),getObjectEmbeddingRebuildStatus:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`getObjectEmbeddingRebuildStatus`,`query`,e),getDeviceSettingsContribution:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`getDeviceSettingsContribution`,`query`,e),getDeviceLiveContribution:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`getDeviceLiveContribution`,`query`,e),applyDeviceSettingsPatch:e=>s(`pipeline-analytics`,`pipelineAnalytics`,`applyDeviceSettingsPatch`,`mutation`,e)},He={getStatus:e=>s(`power-meter`,`powerMeter`,`getStatus`,`query`,e)},Ue={getStatus:e=>s(`presence`,`presence`,`getStatus`,`query`,e)},We={getStatus:e=>s(`pressure-sensor`,`pressureSensor`,`getStatus`,`query`,e)},Ge={getOptions:e=>s(`privacy-mask`,`privacyMask`,`getOptions`,`query`,e),setMask:e=>s(`privacy-mask`,`privacyMask`,`setMask`,`mutation`,e),setAudioEnabled:e=>s(`privacy-mask`,`privacyMask`,`setAudioEnabled`,`mutation`,e),getStatus:e=>s(`privacy-mask`,`privacyMask`,`getStatus`,`query`,e)},Ke={move:e=>s(`ptz`,`ptz`,`move`,`mutation`,e),continuousMove:e=>s(`ptz`,`ptz`,`continuousMove`,`mutation`,e),stop:e=>s(`ptz`,`ptz`,`stop`,`mutation`,e),getPresets:e=>s(`ptz`,`ptz`,`getPresets`,`query`,e),goToPreset:e=>s(`ptz`,`ptz`,`goToPreset`,`mutation`,e),savePreset:e=>s(`ptz`,`ptz`,`savePreset`,`mutation`,e),deletePreset:e=>s(`ptz`,`ptz`,`deletePreset`,`mutation`,e),getOptions:e=>s(`ptz`,`ptz`,`getOptions`,`query`,e),goHome:e=>s(`ptz`,`ptz`,`goHome`,`mutation`,e),getHomePreset:e=>s(`ptz`,`ptz`,`getHomePreset`,`query`,e),setHomePreset:e=>s(`ptz`,`ptz`,`setHomePreset`,`mutation`,e),captureHomeHere:e=>s(`ptz`,`ptz`,`captureHomeHere`,`mutation`,e),getHomeReturn:e=>s(`ptz`,`ptz`,`getHomeReturn`,`query`,e),setHomeReturn:e=>s(`ptz`,`ptz`,`setHomeReturn`,`mutation`,e),getPosition:e=>s(`ptz`,`ptz`,`getPosition`,`query`,e),setAutofocus:e=>s(`ptz`,`ptz`,`setAutofocus`,`mutation`,e),getStatus:e=>s(`ptz`,`ptz`,`getStatus`,`query`,e)},qe={getStatus:e=>s(`ptz-autotrack`,`ptzAutotrack`,`getStatus`,`query`,e),setEnabled:e=>s(`ptz-autotrack`,`ptzAutotrack`,`setEnabled`,`mutation`,e),getSettings:e=>s(`ptz-autotrack`,`ptzAutotrack`,`getSettings`,`query`,e),setSettings:e=>s(`ptz-autotrack`,`ptzAutotrack`,`setSettings`,`mutation`,e)},Je={reboot:e=>s(`reboot`,`reboot`,`reboot`,`mutation`,e)},Ye={listSources:e=>s(`recording`,`recording`,`listSources`,`query`,e),getAvailability:e=>s(`recording`,`recording`,`getAvailability`,`query`,e),getDaysWithRecordings:e=>s(`recording`,`recording`,`getDaysWithRecordings`,`query`,e),getPlayback:e=>s(`recording`,`recording`,`getPlayback`,`query`,e),getPlaybackOptions:e=>s(`recording`,`recording`,`getPlaybackOptions`,`query`,e)},Xe={getOptions:e=>s(`recording-onboard`,`recordingOnboard`,`getOptions`,`query`,e),setSettings:e=>s(`recording-onboard`,`recordingOnboard`,`setSettings`,`mutation`,e),getStatus:e=>s(`recording-onboard`,`recordingOnboard`,`getStatus`,`query`,e)},Ze={getStatus:e=>s(`recording-signal`,`recordingSignal`,`getStatus`,`query`,e)},Qe={listScenes:e=>s(`scene-monitor`,`sceneMonitor`,`listScenes`,`query`,e),listScenesBatch:e=>s(`scene-monitor`,`sceneMonitor`,`listScenesBatch`,`query`,e),createScene:e=>s(`scene-monitor`,`sceneMonitor`,`createScene`,`mutation`,e),updateScene:e=>s(`scene-monitor`,`sceneMonitor`,`updateScene`,`mutation`,e),deleteScene:e=>s(`scene-monitor`,`sceneMonitor`,`deleteScene`,`mutation`,e),captureReference:e=>s(`scene-monitor`,`sceneMonitor`,`captureReference`,`mutation`,e),deleteReference:e=>s(`scene-monitor`,`sceneMonitor`,`deleteReference`,`mutation`,e),recheckNow:e=>s(`scene-monitor`,`sceneMonitor`,`recheckNow`,`mutation`,e),resetScene:e=>s(`scene-monitor`,`sceneMonitor`,`resetScene`,`mutation`,e),getStatus:e=>s(`scene-monitor`,`sceneMonitor`,`getStatus`,`query`,e)},$e={run:e=>s(`script-runner`,`scriptRunner`,`run`,`mutation`,e),stop:e=>s(`script-runner`,`scriptRunner`,`stop`,`mutation`,e),getStatus:e=>s(`script-runner`,`scriptRunner`,`getStatus`,`query`,e)},et={getStatus:e=>s(`smoke`,`smoke`,`getStatus`,`query`,e)},tt={getSnapshot:e=>s(`snapshot`,`snapshot`,`getSnapshot`,`query`,e),invalidateCache:e=>s(`snapshot`,`snapshot`,`invalidateCache`,`mutation`,e),getSnapshotOverview:e=>s(`snapshot`,`snapshot`,`getSnapshotOverview`,`query`,e),getDebugState:e=>s(`snapshot`,`snapshot`,`getDebugState`,`query`,e),getSnapshotLinks:e=>s(`snapshot`,`snapshot`,`getSnapshotLinks`,`query`,e),getStatus:e=>s(`snapshot`,`snapshot`,`getStatus`,`query`,e),getDeviceSettingsContribution:e=>s(`snapshot`,`snapshot`,`getDeviceSettingsContribution`,`query`,e),getDeviceLiveContribution:e=>s(`snapshot`,`snapshot`,`getDeviceLiveContribution`,`query`,e),applyDeviceSettingsPatch:e=>s(`snapshot`,`snapshot`,`applyDeviceSettingsPatch`,`mutation`,e)},nt={getCatalog:e=>s(`stream-catalog`,`streamCatalog`,`getCatalog`,`query`,e)},rt={getOptions:e=>s(`stream-params`,`streamParams`,`getOptions`,`query`,e),setProfile:e=>s(`stream-params`,`streamParams`,`setProfile`,`mutation`,e),getConfigSchema:e=>s(`stream-params`,`streamParams`,`getConfigSchema`,`query`,e),getStatus:e=>s(`stream-params`,`streamParams`,`getStatus`,`query`,e)},it={listSignals:e=>s(`stream-signals`,`streamSignals`,`listSignals`,`query`,e)},at={setState:e=>s(`switch`,`switch`,`setState`,`mutation`,e),getStatus:e=>s(`switch`,`switch`,`getStatus`,`query`,e)},ot={getStatus:e=>s(`tamper`,`tamper`,`getStatus`,`query`,e)},st={getStatus:e=>s(`temperature-sensor`,`temperatureSensor`,`getStatus`,`query`,e)},ct={installUpdate:e=>s(`update`,`update`,`installUpdate`,`mutation`,e),getStatus:e=>s(`update`,`update`,`getStatus`,`query`,e)},lt={start:e=>s(`vacuum-control`,`vacuumControl`,`start`,`mutation`,e),pause:e=>s(`vacuum-control`,`vacuumControl`,`pause`,`mutation`,e),stop:e=>s(`vacuum-control`,`vacuumControl`,`stop`,`mutation`,e),returnToBase:e=>s(`vacuum-control`,`vacuumControl`,`returnToBase`,`mutation`,e),locate:e=>s(`vacuum-control`,`vacuumControl`,`locate`,`mutation`,e),setFanSpeed:e=>s(`vacuum-control`,`vacuumControl`,`setFanSpeed`,`mutation`,e),getStatus:e=>s(`vacuum-control`,`vacuumControl`,`getStatus`,`query`,e)},ut={open:e=>s(`valve`,`valve`,`open`,`mutation`,e),close:e=>s(`valve`,`valve`,`close`,`mutation`,e),stop:e=>s(`valve`,`valve`,`stop`,`mutation`,e),setPosition:e=>s(`valve`,`valve`,`setPosition`,`mutation`,e),getStatus:e=>s(`valve`,`valve`,`getStatus`,`query`,e)},dt={getStatus:e=>s(`vibration`,`vibration`,`getStatus`,`query`,e)},ft={listClips:e=>s(`videoclips`,`videoclips`,`listClips`,`query`,e),listSources:e=>s(`videoclips`,`videoclips`,`listSources`,`query`,e),getClipPlayback:e=>s(`videoclips`,`videoclips`,`getClipPlayback`,`query`,e),readClipBytes:e=>s(`videoclips`,`videoclips`,`readClipBytes`,`query`,e),offerClipBytes:e=>s(`videoclips`,`videoclips`,`offerClipBytes`,`query`,e),dialClipStream:e=>s(`videoclips`,`videoclips`,`dialClipStream`,`query`,e),getPlaybackOptions:e=>s(`videoclips`,`videoclips`,`getPlaybackOptions`,`query`,e)},pt={setTargetTemp:e=>s(`water-heater`,`waterHeater`,`setTargetTemp`,`mutation`,e),setOperationMode:e=>s(`water-heater`,`waterHeater`,`setOperationMode`,`mutation`,e),setAway:e=>s(`water-heater`,`waterHeater`,`setAway`,`mutation`,e),getStatus:e=>s(`water-heater`,`waterHeater`,`getStatus`,`query`,e)},mt={getStatus:e=>s(`weather`,`weather`,`getStatus`,`query`,e)},ht={listStreams:e=>s(`webrtc-session`,`webrtcSession`,`listStreams`,`query`,e),createSession:e=>s(`webrtc-session`,`webrtcSession`,`createSession`,`mutation`,e),handleOffer:e=>s(`webrtc-session`,`webrtcSession`,`handleOffer`,`mutation`,e),handleAnswer:e=>s(`webrtc-session`,`webrtcSession`,`handleAnswer`,`mutation`,e),addIceCandidate:e=>s(`webrtc-session`,`webrtcSession`,`addIceCandidate`,`mutation`,e),getIceCandidates:e=>s(`webrtc-session`,`webrtcSession`,`getIceCandidates`,`query`,e),closeSession:e=>s(`webrtc-session`,`webrtcSession`,`closeSession`,`mutation`,e),hasAdaptiveBitrate:e=>s(`webrtc-session`,`webrtcSession`,`hasAdaptiveBitrate`,`query`,e),getSessionState:e=>s(`webrtc-session`,`webrtcSession`,`getSessionState`,`query`,e),applyDownlinkProbe:e=>s(`webrtc-session`,`webrtcSession`,`applyDownlinkProbe`,`mutation`,e),getSessionDebug:e=>s(`webrtc-session`,`webrtcSession`,`getSessionDebug`,`query`,e)},gt={getCurrentSnapshot:e=>s(`zone-analytics`,`zoneAnalytics`,`getCurrentSnapshot`,`query`,e),getCurrentSnapshotBatch:e=>s(`zone-analytics`,`zoneAnalytics`,`getCurrentSnapshotBatch`,`query`,e),getZoneHistory:e=>s(`zone-analytics`,`zoneAnalytics`,`getZoneHistory`,`query`,e),getCameraHistory:e=>s(`zone-analytics`,`zoneAnalytics`,`getCameraHistory`,`query`,e),getUnzonedHistory:e=>s(`zone-analytics`,`zoneAnalytics`,`getUnzonedHistory`,`query`,e)},_t={listRules:e=>s(`zone-rules`,`zoneRules`,`listRules`,`query`,e),setRules:e=>s(`zone-rules`,`zoneRules`,`setRules`,`mutation`,e)},vt={listZones:e=>s(`zones`,`zones`,`listZones`,`query`,e),addZone:e=>s(`zones`,`zones`,`addZone`,`mutation`,e),removeZone:e=>s(`zones`,`zones`,`removeZone`,`mutation`,e),updateZone:e=>s(`zones`,`zones`,`updateZone`,`mutation`,e)},yt={getDeviceSettings:e=>c(`addonSettings`,`getDeviceSettings`,`query`,e),updateDeviceSettings:e=>c(`addonSettings`,`updateDeviceSettings`,`mutation`,e)},bt={detachDevice:e=>c(`audioAnalyzer`,`detachDevice`,`mutation`,e)},xt={getStatus:e=>c(`deviceAdoption`,`getStatus`,`query`,e)},St={getDeviceSettingsContribution:e=>c(`deviceExport`,`getDeviceSettingsContribution`,`query`,e),getDeviceLiveContribution:e=>c(`deviceExport`,`getDeviceLiveContribution`,`query`,e),applyDeviceSettingsPatch:e=>c(`deviceExport`,`applyDeviceSettingsPatch`,`mutation`,e)},Ct={listSeries:e=>c(`deviceHistory`,`listSeries`,`query`,e),query:e=>c(`deviceHistory`,`query`,`query`,e),getDeviceEnabled:e=>c(`deviceHistory`,`getDeviceEnabled`,`query`,e),setDeviceEnabled:e=>c(`deviceHistory`,`setDeviceEnabled`,`mutation`,e)},wt={loadConfig:e=>c(`deviceManager`,`loadConfig`,`query`,e),loadRuntimeState:e=>c(`deviceManager`,`loadRuntimeState`,`query`,e),loadMeta:e=>c(`deviceManager`,`loadMeta`,`query`,e),setName:e=>c(`deviceManager`,`setName`,`mutation`,e),setLocation:e=>c(`deviceManager`,`setLocation`,`mutation`,e),setType:e=>c(`deviceManager`,`setType`,`mutation`,e),setIntegrationId:e=>c(`deviceManager`,`setIntegrationId`,`mutation`,e),setLinkDeviceId:e=>c(`deviceManager`,`setLinkDeviceId`,`mutation`,e),setPrimaryChildEntityId:e=>c(`deviceManager`,`setPrimaryChildEntityId`,`mutation`,e),setChildLayout:e=>c(`deviceManager`,`setChildLayout`,`mutation`,e),setDisplay:e=>c(`deviceManager`,`setDisplay`,`mutation`,e),getWireableFields:e=>c(`deviceManager`,`getWireableFields`,`query`,e),setRole:e=>c(`deviceManager`,`setRole`,`mutation`,e),applyInitialMeta:e=>c(`deviceManager`,`applyInitialMeta`,`mutation`,e),setMetadata:e=>c(`deviceManager`,`setMetadata`,`mutation`,e),setDisabled:e=>c(`deviceManager`,`setDisabled`,`mutation`,e),getDevice:e=>c(`deviceManager`,`getDevice`,`query`,e),getLinkedDevices:e=>c(`deviceManager`,`getLinkedDevices`,`query`,e),getStreamSources:e=>c(`deviceManager`,`getStreamSources`,`query`,e),getConfigSchema:e=>c(`deviceManager`,`getConfigSchema`,`query`,e),getSettingsSchema:e=>c(`deviceManager`,`getSettingsSchema`,`query`,e),updateConfig:e=>c(`deviceManager`,`updateConfig`,`mutation`,e),enable:e=>c(`deviceManager`,`enable`,`mutation`,e),disable:e=>c(`deviceManager`,`disable`,`mutation`,e),remove:e=>c(`deviceManager`,`remove`,`mutation`,e),getStreamProfileMap:e=>c(`deviceManager`,`getStreamProfileMap`,`query`,e),setStreamProfileMap:e=>c(`deviceManager`,`setStreamProfileMap`,`mutation`,e),probeStreams:e=>c(`deviceManager`,`probeStreams`,`mutation`,e),getBindings:e=>c(`deviceManager`,`getBindings`,`query`,e),setWrapperActive:e=>c(`deviceManager`,`setWrapperActive`,`mutation`,e),getWrapperActivation:e=>c(`deviceManager`,`getWrapperActivation`,`query`,e),getDeviceSettingsAggregate:e=>c(`deviceManager`,`getDeviceSettingsAggregate`,`query`,e),getDeviceLiveInfoAggregate:e=>c(`deviceManager`,`getDeviceLiveInfoAggregate`,`query`,e),getDeviceAggregate:e=>c(`deviceManager`,`getDeviceAggregate`,`query`,e),runDeviceAction:e=>c(`deviceManager`,`runDeviceAction`,`mutation`,e),updateDeviceField:e=>c(`deviceManager`,`updateDeviceField`,`mutation`,e),updateDeviceFieldsBatch:e=>c(`deviceManager`,`updateDeviceFieldsBatch`,`mutation`,e),testField:e=>c(`deviceManager`,`testField`,`mutation`,e),getDeviceStatusAggregate:e=>c(`deviceManager`,`getDeviceStatusAggregate`,`query`,e)},Tt={getSnapshot:e=>c(`deviceState`,`getSnapshot`,`query`,e),getCapSlice:e=>c(`deviceState`,`getCapSlice`,`query`,e),setCapSlice:e=>c(`deviceState`,`setCapSlice`,`mutation`,e),claimFields:e=>c(`deviceState`,`claimFields`,`mutation`,e),patchOwnedFields:e=>c(`deviceState`,`patchOwnedFields`,`mutation`,e),releaseClaim:e=>c(`deviceState`,`releaseClaim`,`mutation`,e),getNativeCapSlice:e=>c(`deviceState`,`getNativeCapSlice`,`query`,e)},Et={listRecentFaces:e=>c(`faceGallery`,`listRecentFaces`,`query`,e),getFaceByTrack:e=>c(`faceGallery`,`getFaceByTrack`,`query`,e)},Dt={getDeviceStats:e=>c(`networkQuality`,`getDeviceStats`,`query`,e),reportClientStats:e=>c(`networkQuality`,`reportClientStats`,`mutation`,e)},Ot={setDeviceMuted:e=>c(`notificationRules`,`setDeviceMuted`,`mutation`,e)},kt={getDeviceOsd:e=>c(`osdManager`,`getDeviceOsd`,`query`,e),getSourceCatalog:e=>c(`osdManager`,`getSourceCatalog`,`query`,e),setSlotBinding:e=>c(`osdManager`,`setSlotBinding`,`mutation`,e),clearSlotBinding:e=>c(`osdManager`,`clearSlotBinding`,`mutation`,e),setSlotCameraEnabled:e=>c(`osdManager`,`setSlotCameraEnabled`,`mutation`,e),previewSlot:e=>c(`osdManager`,`previewSlot`,`mutation`,e),renderDevice:e=>c(`osdManager`,`renderDevice`,`mutation`,e)},At={runPipeline:e=>c(`pipelineExecutor`,`runPipeline`,`mutation`,e),runPipelineBatch:e=>c(`pipelineExecutor`,`runPipelineBatch`,`mutation`,e)},jt={assignPipeline:e=>c(`pipelineOrchestrator`,`assignPipeline`,`mutation`,e),unassignPipeline:e=>c(`pipelineOrchestrator`,`unassignPipeline`,`mutation`,e),setPipelineDevicePin:e=>c(`pipelineOrchestrator`,`setPipelineDevicePin`,`mutation`,e),getPipelineDevicePin:e=>c(`pipelineOrchestrator`,`getPipelineDevicePin`,`query`,e),getPipelineAssignment:e=>c(`pipelineOrchestrator`,`getPipelineAssignment`,`query`,e),getCameraMetrics:e=>c(`pipelineOrchestrator`,`getCameraMetrics`,`query`,e),assignAudio:e=>c(`pipelineOrchestrator`,`assignAudio`,`mutation`,e),unassignAudio:e=>c(`pipelineOrchestrator`,`unassignAudio`,`mutation`,e),getAudioAssignment:e=>c(`pipelineOrchestrator`,`getAudioAssignment`,`query`,e),getCameraSettings:e=>c(`pipelineOrchestrator`,`getCameraSettings`,`query`,e),setCameraStepToggle:e=>c(`pipelineOrchestrator`,`setCameraStepToggle`,`mutation`,e),getCameraDetectionSource:e=>c(`pipelineOrchestrator`,`getCameraDetectionSource`,`query`,e),setCameraDetectionSource:e=>c(`pipelineOrchestrator`,`setCameraDetectionSource`,`mutation`,e),getCameraStepOverrides:e=>c(`pipelineOrchestrator`,`getCameraStepOverrides`,`query`,e),setCameraStepOverride:e=>c(`pipelineOrchestrator`,`setCameraStepOverride`,`mutation`,e),setCameraStepSettings:e=>c(`pipelineOrchestrator`,`setCameraStepSettings`,`mutation`,e),setCameraPipelineForAgent:e=>c(`pipelineOrchestrator`,`setCameraPipelineForAgent`,`mutation`,e),resolvePipeline:e=>c(`pipelineOrchestrator`,`resolvePipeline`,`query`,e),getCameraSwitches:e=>c(`pipelineOrchestrator`,`getCameraSwitches`,`query`,e),setCameraSwitch:e=>c(`pipelineOrchestrator`,`setCameraSwitch`,`mutation`,e),getCameraStatus:e=>c(`pipelineOrchestrator`,`getCameraStatus`,`query`,e),getDeviceSettingsContribution:e=>c(`pipelineOrchestrator`,`getDeviceSettingsContribution`,`query`,e),getDeviceLiveContribution:e=>c(`pipelineOrchestrator`,`getDeviceLiveContribution`,`query`,e),applyDeviceSettingsPatch:e=>c(`pipelineOrchestrator`,`applyDeviceSettingsPatch`,`mutation`,e)},Mt={detachCamera:e=>c(`pipelineRunner`,`detachCamera`,`mutation`,e),getCameraMetrics:e=>c(`pipelineRunner`,`getCameraMetrics`,`query`,e),requestOccupancyBurst:e=>c(`pipelineRunner`,`requestOccupancyBurst`,`mutation`,e),runDetailSubtree:e=>c(`pipelineRunner`,`runDetailSubtree`,`mutation`,e),parkTrackFrame:e=>c(`pipelineRunner`,`parkTrackFrame`,`mutation`,e),getParkedTrackFrame:e=>c(`pipelineRunner`,`getParkedTrackFrame`,`query`,e),releaseParkedTrackFrames:e=>c(`pipelineRunner`,`releaseParkedTrackFrames`,`mutation`,e)},Nt={listPlates:e=>c(`plateGallery`,`listPlates`,`query`,e),getPlateByTrack:e=>c(`plateGallery`,`getPlateByTrack`,`query`,e)},Pt={getDeviceConfig:e=>c(`recordingArchive`,`getDeviceConfig`,`query`,e),locateSegment:e=>c(`recordingArchive`,`locateSegment`,`query`,e),readSegmentBytes:e=>c(`recordingArchive`,`readSegmentBytes`,`query`,e),readGopBytes:e=>c(`recordingArchive`,`readGopBytes`,`query`,e),readWindowBytes:e=>c(`recordingArchive`,`readWindowBytes`,`query`,e),setDeviceConfig:e=>c(`recordingArchive`,`setDeviceConfig`,`mutation`,e),rescanStorage:e=>c(`recordingArchive`,`rescanStorage`,`mutation`,e),pruneFootage:e=>c(`recordingArchive`,`pruneFootage`,`mutation`,e),deleteFootprint:e=>c(`recordingArchive`,`deleteFootprint`,`mutation`,e),renderGif:e=>c(`recordingArchive`,`renderGif`,`mutation`,e),renderClip:e=>c(`recordingArchive`,`renderClip`,`mutation`,e),getStatus:e=>c(`recordingArchive`,`getStatus`,`query`,e),getDeviceSettingsContribution:e=>c(`recordingArchive`,`getDeviceSettingsContribution`,`query`,e),getDeviceLiveContribution:e=>c(`recordingArchive`,`getDeviceLiveContribution`,`query`,e),applyDeviceSettingsPatch:e=>c(`recordingArchive`,`applyDeviceSettingsPatch`,`mutation`,e)},Ft={listExports:e=>c(`recordingExport`,`listExports`,`query`,e)},It={reportStreamSignal:e=>c(`streamBroker`,`reportStreamSignal`,`mutation`,e),publishCameraStream:e=>c(`streamBroker`,`publishCameraStream`,`mutation`,e),retractCameraStream:e=>c(`streamBroker`,`retractCameraStream`,`mutation`,e),assignProfile:e=>c(`streamBroker`,`assignProfile`,`mutation`,e),unassignProfile:e=>c(`streamBroker`,`unassignProfile`,`mutation`,e),forgetDeviceHardware:e=>c(`streamBroker`,`forgetDeviceHardware`,`mutation`,e),renderPreBufferClip:e=>c(`streamBroker`,`renderPreBufferClip`,`mutation`,e),produceEventMedia:e=>c(`streamBroker`,`produceEventMedia`,`mutation`,e),restartProfile:e=>c(`streamBroker`,`restartProfile`,`mutation`,e),getDeviceAudioMute:e=>c(`streamBroker`,`getDeviceAudioMute`,`query`,e),setDeviceAudioMute:e=>c(`streamBroker`,`setDeviceAudioMute`,`mutation`,e),getDeviceSettingsContribution:e=>c(`streamBroker`,`getDeviceSettingsContribution`,`query`,e),getDeviceLiveContribution:e=>c(`streamBroker`,`getDeviceLiveContribution`,`query`,e),applyDeviceSettingsPatch:e=>c(`streamBroker`,`applyDeviceSettingsPatch`,`mutation`,e)};return{deviceId:t.deviceId,binding:t,state:{airQualitySensor:H(i,t.deviceId,`air-quality-sensor`),alarmPanel:H(i,t.deviceId,`alarm-panel`),ambientLightSensor:H(i,t.deviceId,`ambient-light-sensor`),audioMetrics:H(i,t.deviceId,`audio-metrics`),automationControl:H(i,t.deviceId,`automation-control`),battery:H(i,t.deviceId,`battery`),binary:H(i,t.deviceId,`binary`),brightness:H(i,t.deviceId,`brightness`),cameraStreams:H(i,t.deviceId,`camera-streams`),carbonMonoxide:H(i,t.deviceId,`carbon-monoxide`),climateControl:H(i,t.deviceId,`climate-control`),color:H(i,t.deviceId,`color`),connectivity:H(i,t.deviceId,`connectivity`),consumables:H(i,t.deviceId,`consumables`),contact:H(i,t.deviceId,`contact`),control:H(i,t.deviceId,`control`),cover:H(i,t.deviceId,`cover`),dayNight:H(i,t.deviceId,`day-night`),deviceDiscovery:H(i,t.deviceId,`device-discovery`),deviceStatus:H(i,t.deviceId,`device-status`),doorbell:H(i,t.deviceId,`doorbell`),enumSensor:H(i,t.deviceId,`enum-sensor`),eventEmitter:H(i,t.deviceId,`event-emitter`),fanControl:H(i,t.deviceId,`fan-control`),featureProbe:H(i,t.deviceId,`feature-probe`),flood:H(i,t.deviceId,`flood`),gas:H(i,t.deviceId,`gas`),humidifier:H(i,t.deviceId,`humidifier`),humiditySensor:H(i,t.deviceId,`humidity-sensor`),image:H(i,t.deviceId,`image`),imageSettings:H(i,t.deviceId,`image-settings`),intercom:H(i,t.deviceId,`intercom`),lawnMowerControl:H(i,t.deviceId,`lawn-mower-control`),lockControl:H(i,t.deviceId,`lock-control`),mediaPlayer:H(i,t.deviceId,`media-player`),motion:H(i,t.deviceId,`motion`),motionTrigger:H(i,t.deviceId,`motion-trigger`),motionZones:H(i,t.deviceId,`motion-zones`),nativeObjectDetection:H(i,t.deviceId,`native-object-detection`),navigation:H(i,t.deviceId,`navigation`),networkLink:H(i,t.deviceId,`network-link`),notifier:H(i,t.deviceId,`notifier`),numericSensor:H(i,t.deviceId,`numeric-sensor`),petFeeder:H(i,t.deviceId,`pet-feeder`),powerMeter:H(i,t.deviceId,`power-meter`),presence:H(i,t.deviceId,`presence`),pressureSensor:H(i,t.deviceId,`pressure-sensor`),privacyMask:H(i,t.deviceId,`privacy-mask`),ptzAutotrack:H(i,t.deviceId,`ptz-autotrack`),recordingOnboard:H(i,t.deviceId,`recording-onboard`),recordingSignal:H(i,t.deviceId,`recording-signal`),sceneMonitor:H(i,t.deviceId,`scene-monitor`),scriptRunner:H(i,t.deviceId,`script-runner`),smoke:H(i,t.deviceId,`smoke`),streamCatalog:H(i,t.deviceId,`stream-catalog`),streamParams:H(i,t.deviceId,`stream-params`),streamSignals:H(i,t.deviceId,`stream-signals`),switch:H(i,t.deviceId,`switch`),tamper:H(i,t.deviceId,`tamper`),temperatureSensor:H(i,t.deviceId,`temperature-sensor`),update:H(i,t.deviceId,`update`),vacuumControl:H(i,t.deviceId,`vacuum-control`),valve:H(i,t.deviceId,`valve`),vibration:H(i,t.deviceId,`vibration`),waterHeater:H(i,t.deviceId,`water-heater`),weather:H(i,t.deviceId,`weather`),zoneAnalytics:H(i,t.deviceId,`zone-analytics`),zoneRules:H(i,t.deviceId,`zone-rules`),zones:H(i,t.deviceId,`zones`)},...l(`accessories`)?{accessories:u}:{},...l(`air-quality-sensor`)?{airQualitySensor:d}:{},...l(`alarm-panel`)?{alarmPanel:f}:{},...l(`ambient-light-sensor`)?{ambientLightSensor:p}:{},...l(`audio-analysis`)?{audioAnalysis:m}:{},...l(`audio-metrics`)?{audioMetrics:h}:{},...l(`automation-control`)?{automationControl:g}:{},...l(`battery`)?{battery:_}:{},...l(`binary`)?{binary:v}:{},...l(`brightness`)?{brightness:y}:{},...l(`button`)?{button:b}:{},...l(`camera-credentials`)?{cameraCredentials:x}:{},...l(`camera-grid-layout`)?{cameraGridLayout:ee}:{},...l(`camera-pipeline-config`)?{cameraPipelineConfig:te}:{},...l(`camera-streams`)?{cameraStreams:S}:{},...l(`carbon-monoxide`)?{carbonMonoxide:ne}:{},...l(`climate-control`)?{climateControl:re}:{},...l(`color`)?{color:ie}:{},...l(`connectivity`)?{connectivity:ae}:{},...l(`consumables`)?{consumables:oe}:{},...l(`contact`)?{contact:se}:{},...l(`control`)?{control:ce}:{},...l(`cover`)?{cover:le}:{},...l(`day-night`)?{dayNight:ue}:{},...l(`detection-pipeline`)?{detectionPipeline:de}:{},...l(`device-admin-link`)?{deviceAdminLink:C}:{},...l(`device-discovery`)?{deviceDiscovery:w}:{},...l(`device-extension`)?{deviceExtension:fe}:{},...l(`device-ops`)?{deviceOps:pe}:{},...l(`device-status`)?{deviceStatus:me}:{},...l(`doorbell`)?{doorbell:he}:{},...l(`enum-sensor`)?{enumSensor:ge}:{},...l(`event-emitter`)?{eventEmitter:_e}:{},...l(`fan-control`)?{fanControl:ve}:{},...l(`feature-probe`)?{featureProbe:ye}:{},...l(`flood`)?{flood:be}:{},...l(`gas`)?{gas:xe}:{},...l(`humidifier`)?{humidifier:Se}:{},...l(`humidity-sensor`)?{humiditySensor:Ce}:{},...l(`image`)?{image:we}:{},...l(`image-settings`)?{imageSettings:Te}:{},...l(`intercom`)?{intercom:Ee}:{},...l(`lawn-mower-control`)?{lawnMowerControl:De}:{},...l(`lock-control`)?{lockControl:Oe}:{},...l(`media-player`)?{mediaPlayer:ke}:{},...l(`motion`)?{motion:Ae}:{},...l(`motion-detection`)?{motionDetection:je}:{},...l(`motion-trigger`)?{motionTrigger:Me}:{},...l(`motion-zones`)?{motionZones:Ne}:{},...l(`native-object-detection`)?{nativeObjectDetection:Pe}:{},...l(`navigation`)?{navigation:Fe}:{},...l(`network-link`)?{networkLink:Ie}:{},...l(`notifier`)?{notifier:Le}:{},...l(`numeric-sensor`)?{numericSensor:Re}:{},...l(`osd`)?{osd:ze}:{},...l(`pet-feeder`)?{petFeeder:Be}:{},...l(`pipeline-analytics`)?{pipelineAnalytics:Ve}:{},...l(`power-meter`)?{powerMeter:He}:{},...l(`presence`)?{presence:Ue}:{},...l(`pressure-sensor`)?{pressureSensor:We}:{},...l(`privacy-mask`)?{privacyMask:Ge}:{},...l(`ptz`)?{ptz:Ke}:{},...l(`ptz-autotrack`)?{ptzAutotrack:qe}:{},...l(`reboot`)?{reboot:Je}:{},...l(`recording`)?{recording:Ye}:{},...l(`recording-onboard`)?{recordingOnboard:Xe}:{},...l(`recording-signal`)?{recordingSignal:Ze}:{},...l(`scene-monitor`)?{sceneMonitor:Qe}:{},...l(`script-runner`)?{scriptRunner:$e}:{},...l(`smoke`)?{smoke:et}:{},...l(`snapshot`)?{snapshot:tt}:{},...l(`stream-catalog`)?{streamCatalog:nt}:{},...l(`stream-params`)?{streamParams:rt}:{},...l(`stream-signals`)?{streamSignals:it}:{},...l(`switch`)?{switch:at}:{},...l(`tamper`)?{tamper:ot}:{},...l(`temperature-sensor`)?{temperatureSensor:st}:{},...l(`update`)?{update:ct}:{},...l(`vacuum-control`)?{vacuumControl:lt}:{},...l(`valve`)?{valve:ut}:{},...l(`vibration`)?{vibration:dt}:{},...l(`videoclips`)?{videoclips:ft}:{},...l(`water-heater`)?{waterHeater:pt}:{},...l(`weather`)?{weather:mt}:{},...l(`webrtc-session`)?{webrtcSession:ht}:{},...l(`zone-analytics`)?{zoneAnalytics:gt}:{},...l(`zone-rules`)?{zoneRules:_t}:{},...l(`zones`)?{zones:vt}:{},addonSettings:yt,audioAnalyzer:bt,deviceAdoption:xt,deviceExport:St,deviceHistory:Ct,deviceManager:wt,deviceState:Tt,faceGallery:Et,networkQuality:Dt,notificationRules:Ot,osdManager:kt,pipelineExecutor:At,pipelineOrchestrator:jt,pipelineRunner:Mt,plateGallery:Nt,recordingArchive:Pt,recordingExport:Ft,streamBroker:It}}var U=function(e){return e.Camera=`camera`,e.Hub=`hub`,e.Light=`light`,e.Siren=`siren`,e.Switch=`switch`,e.Sensor=`sensor`,e.Thermostat=`thermostat`,e.Climate=`climate`,e.Button=`button`,e.EventEmitter=`event-emitter`,e.Update=`update`,e.Generic=`generic`,e.Notifier=`notifier`,e.Script=`script`,e.Automation=`automation`,e.Lock=`lock`,e.Cover=`cover`,e.Valve=`valve`,e.Humidifier=`humidifier`,e.WaterHeater=`water-heater`,e.Fan=`fan`,e.MediaPlayer=`media-player`,e.AlarmPanel=`alarm-panel`,e.Control=`control`,e.Presence=`presence`,e.Weather=`weather`,e.Vacuum=`vacuum`,e.LawnMower=`lawn-mower`,e.Container=`container`,e.Image=`image`,e.PetFeeder=`pet-feeder`,e}({}),uu=function(e){return e.BatteryOperated=`battery-operated`,e.Rebootable=`rebootable`,e.Resyncable=`resyncable`,e.NativeSnapshot=`native-snapshot`,e.DoorbellButton=`doorbell-button`,e.TwoWayAudio=`two-way-audio`,e.PanTiltZoom=`pan-tilt-zoom`,e.PtzAutotrack=`ptz-autotrack`,e.MotionTrigger=`motion-trigger`,e.LightColorRgb=`light-color-rgb`,e.LightColorHsv=`light-color-hsv`,e.LightColorMired=`light-color-mired`,e.ClimateDualSetpoint=`climate-dual-setpoint`,e.ClimateHumidity=`climate-humidity`,e.ClimateFanMode=`climate-fan-mode`,e.ClimatePreset=`climate-preset`,e.ClimateSwingVertical=`climate-swing-vertical`,e.ClimateSwingHorizontal=`climate-swing-horizontal`,e.CoverPositionable=`cover-positionable`,e.CoverTilt=`cover-tilt`,e.ValvePositionable=`valve-positionable`,e.FanSpeed=`fan-speed`,e.FanPreset=`fan-preset`,e.FanDirection=`fan-direction`,e.FanOscillating=`fan-oscillating`,e.LockPinRequired=`lock-pin-required`,e.LockOpen=`lock-open`,e.MediaPlayerSeek=`media-player-seek`,e.MediaPlayerVolume=`media-player-volume`,e.MediaPlayerMute=`media-player-mute`,e.MediaPlayerShuffle=`media-player-shuffle`,e.MediaPlayerRepeat=`media-player-repeat`,e.MediaPlayerSelectSource=`media-player-select-source`,e.MediaPlayerPlayMedia=`media-player-play-media`,e.MediaPlayerNext=`media-player-next`,e.MediaPlayerPrevious=`media-player-previous`,e.MediaPlayerStop=`media-player-stop`,e.AlarmPinRequired=`alarm-pin-required`,e.PresenceGps=`presence-gps`,e.NotifierImage=`notifier-image`,e.NotifierPriority=`notifier-priority`,e.NotifierData=`notifier-data`,e.NotifierActions=`notifier-actions`,e.NotifierRecipients=`notifier-recipients`,e.ScriptVariables=`script-variables`,e.AutomationSkipCondition=`automation-skip-condition`,e.VacuumHasMap=`vacuum-has-map`,e.VacuumHasAi=`vacuum-has-ai`,e.MowerHasMap=`mower-has-map`,e.MowerHasTargetedMowing=`mower-has-targeted-mowing`,e}({}),W=function(e){return e.Siren=`siren`,e.Floodlight=`floodlight`,e.Spotlight=`spotlight`,e.PirSensor=`pir-sensor`,e.Chime=`chime`,e.Autotrack=`autotrack`,e.Nightvision=`nightvision`,e.PrivacyMask=`privacy-mask`,e.Doorbell=`doorbell`,e.BinaryHelper=`binary-helper`,e.MotionSensor=`motion-sensor`,e.ContactSensor=`contact-sensor`,e.LeakSensor=`leak-sensor`,e.SmokeSensor=`smoke-sensor`,e.COSensor=`co-sensor`,e.GasSensor=`gas-sensor`,e.TamperSensor=`tamper-sensor`,e.VibrationSensor=`vibration-sensor`,e.ConnectivitySensor=`connectivity-sensor`,e.SoundSensor=`sound-sensor`,e.BinarySensor=`binary-sensor`,e.TemperatureSensor=`temperature-sensor`,e.HumiditySensor=`humidity-sensor`,e.AmbientLightSensor=`ambient-light-sensor`,e.PressureSensor=`pressure-sensor`,e.WindSensor=`wind-sensor`,e.RainSensor=`rain-sensor`,e.UvSensor=`uv-sensor`,e.SolarRadiationSensor=`solar-radiation-sensor`,e.SoilMoistureSensor=`soil-moisture-sensor`,e.PowerSensor=`power-sensor`,e.EnergySensor=`energy-sensor`,e.VoltageSensor=`voltage-sensor`,e.CurrentSensor=`current-sensor`,e.AirQualitySensor=`air-quality-sensor`,e.BatterySensor=`battery-sensor`,e.NumericSensor=`numeric-sensor`,e.EnumSensor=`enum-sensor`,e.DateTimeSensor=`datetime-sensor`,e.GenericSensor=`generic-sensor`,e.NumericControl=`numeric-control`,e.SelectControl=`select-control`,e.TextControl=`text-control`,e.DateTimeControl=`datetime-control`,e.MobilePushNotifier=`mobile-push-notifier`,e.MessagingNotifier=`messaging-notifier`,e.EmailNotifier=`email-notifier`,e.GenericNotifier=`generic-notifier`,e}({});e(((e,t)=>{t.exports={}}))();var du=`8.1.2-5`,fu=`https://github.com/jellyfin/jellyfin-ffmpeg/releases/download/v${du}`;function pu(e){return`${fu}/jellyfin-ffmpeg_${du}_portable_${e}-gpl.tar.xz`}pu(`linux64`),pu(`linuxarm64`),pu(`macarm64`),pu(`mac64`),`${fu}${du}`;var mu={contact:`entryOpen`,binary:`on`,switch:`on`,motion:`detected`,flood:`flooded`,gas:`detected`,smoke:`detected`,"carbon-monoxide":`detected`,vibration:`detected`,tamper:`tampered`},hu=Object.keys(mu),gu=class extends Error{position;constructor(e,t){super(e),this.name=`ExpressionParseError`,this.position=t}},_u=class extends Error{constructor(e){super(e),this.name=`ExpressionEvalError`}};function vu(e,t,n){if(typeof e!=`number`||!Number.isFinite(e))throw new _u(`${t}: argument ${n+1} must be a finite number`);return e}function yu(e,t,n){if(typeof e!=`string`)throw new _u(`${t}: argument ${n+1} must be a string`);return e}function bu(e,t){if(!Number.isFinite(e))throw new _u(`${t}: produced a non-finite result`);return e}function xu(e,t){return e.map((e,n)=>vu(e,t,n))}function Su(e,t,n){if(typeof e!=`boolean`)throw new _u(`${t}: argument ${n+1} must be a boolean`);return e}var Cu=/^[+-]?(\d+(\.\d*)?|\.\d+)([eE][+-]?\d+)?$/;function wu(e){if(typeof e==`number`)return Number.isFinite(e)?e:null;if(typeof e!=`string`)return null;let t=e.trim();if(!Cu.test(t))return null;let n=Number(t);return Number.isFinite(n)?n:null}var Tu=1/0,Eu={min:{minArgs:1,maxArgs:Tu,apply:e=>bu(Math.min(...xu(e,`min`)),`min`)},max:{minArgs:1,maxArgs:Tu,apply:e=>bu(Math.max(...xu(e,`max`)),`max`)},abs:{minArgs:1,maxArgs:1,apply:e=>bu(Math.abs(vu(e[0],`abs`,0)),`abs`)},floor:{minArgs:1,maxArgs:1,apply:e=>bu(Math.floor(vu(e[0],`floor`,0)),`floor`)},ceil:{minArgs:1,maxArgs:1,apply:e=>bu(Math.ceil(vu(e[0],`ceil`,0)),`ceil`)},sqrt:{minArgs:1,maxArgs:1,apply:e=>bu(Math.sqrt(vu(e[0],`sqrt`,0)),`sqrt`)},round:{minArgs:1,maxArgs:2,apply:e=>{let t=vu(e[0],`round`,0),n=e.length>1?Math.trunc(vu(e[1],`round`,1)):0;if(n<0||n>100)throw new _u(`round: digits must be between 0 and 100`);let r=10**n;return bu(Math.round(t*r)/r,`round`)}},pow:{minArgs:2,maxArgs:2,apply:e=>bu(vu(e[0],`pow`,0)**vu(e[1],`pow`,1),`pow`)},clamp:{minArgs:3,maxArgs:3,apply:e=>{let t=vu(e[0],`clamp`,0),n=vu(e[1],`clamp`,1),r=vu(e[2],`clamp`,2);if(n>r)throw new _u(`clamp: lower bound is greater than upper bound`);return bu(Math.min(r,Math.max(n,t)),`clamp`)}},avg:{minArgs:1,maxArgs:Tu,apply:e=>{let t=xu(e,`avg`);return bu(t.reduce((e,t)=>e+t,0)/t.length,`avg`)}},sum:{minArgs:1,maxArgs:Tu,apply:e=>bu(xu(e,`sum`).reduce((e,t)=>e+t,0),`sum`)},coalesce:{minArgs:1,maxArgs:Tu,apply:e=>{for(let t of e)if(t!==null)return t;return null}},age:{minArgs:2,maxArgs:2,apply:e=>bu(vu(e[0],`age`,0)-vu(e[1],`age`,1),`age`)},convert:{minArgs:3,maxArgs:3,apply:(e,t)=>{let n=vu(e[0],`convert`,0),r=yu(e[1],`convert`,1).trim(),i=yu(e[2],`convert`,2).trim();if(t.convert){let e=t.convert(n,r,i);if(e===null)throw new _u(`convert: cannot convert '${r}' to '${i}'`);return bu(e,`convert`)}if(r===i)return n;throw new _u(`convert: unit conversion table not installed`)}},any:{minArgs:1,maxArgs:Tu,apply:e=>e.map((e,t)=>Su(e,`any`,t)).some(e=>e)},all:{minArgs:1,maxArgs:Tu,apply:e=>e.map((e,t)=>Su(e,`all`,t)).every(e=>e)},within:{minArgs:2,maxArgs:2,apply:(e,t)=>{let n=vu(e[1],`within`,1);if(n<0)throw new _u(`within: the window must not be negative`);let r=e[0];if(r===null)return!1;let i=vu(r,`within`,0),a=t.now;if(a===void 0||!Number.isFinite(a))throw new _u(`within: no clock was supplied to this evaluation`);let o=a-i<=n;return o&&t.noteDeadline?.(i+n+1),o}},number:{minArgs:1,maxArgs:1,apply:e=>wu(e[0])},latest:{minArgs:1,maxArgs:Tu,apply:e=>{let t=e.flatMap((e,t)=>e===null?[]:[vu(e,`latest`,t)]);return t.length===0?null:bu(Math.max(...t),`latest`)}},rose:{minArgs:2,maxArgs:3,apply:()=>{throw new _u(`rose: stateful evaluation context is required`)}},count:{minArgs:1,maxArgs:1,apply:()=>{throw new _u(`count: stateful evaluation context is required`)}}};Object.freeze(Object.assign(Object.create(null),Eu));var Du=new Set(Object.keys(Eu)),Ou=2048,ku=/^[A-Za-z_][A-Za-z0-9_]*$/,Au=new Set([`now`,`true`,`false`,`null`]),ju=new Set([`true`,`false`,`null`]);function Mu(e){return e>=`0`&&e<=`9`}function Nu(e){return e>=`A`&&e<=`Z`||e>=`a`&&e<=`z`||e===`_`}function Pu(e){return Nu(e)||Mu(e)}function Fu(e){return e===` `||e===` `||e===`
|
|
66
|
+
`||e===`\r`||e===`\f`||e===`\v`}function Iu(e){if(e.length>2048)throw new gu(`expression too long (${e.length} > ${Ou} chars)`,0);let t=[],n=0,r=e.length;for(;n<r;){let i=e[n];if(Fu(i)){n+=1;continue}if(Mu(i)){let i=n;for(;n<r&&Mu(e[n]);)n+=1;if(n<r&&e[n]===`.`){if(n+1>=r||!Mu(e[n+1]))throw new gu(`malformed number: decimal point needs a digit`,n);for(n+=1;n<r&&Mu(e[n]);)n+=1}let a=e.slice(i,n),o=Number(a);if(!Number.isFinite(o))throw new gu(`malformed number: '${a}'`,i);t.push({type:`number`,value:o,pos:i});continue}if(i===`'`||i===`"`){let a=i,o=n;n+=1;let s=``,c=!1;for(;n<r;){let t=e[n];if(t===`\\`){let t=n+1<r?e[n+1]:``;if(t===`\\`||t===`'`||t===`"`){s+=t,n+=2;continue}throw new gu(`invalid string escape: '\\${t}'`,n)}if(t===a){c=!0,n+=1;break}s+=t,n+=1}if(!c)throw new gu(`unterminated string literal`,o);t.push({type:`string`,value:s,pos:o});continue}if(Nu(i)){let i=n;for(;n<r&&Pu(e[n]);)n+=1;let a=e.slice(i,n);ju.has(a)?t.push({type:`keyword`,keyword:Lu(a),pos:i}):t.push({type:`identifier`,name:a,pos:i});continue}let a=n+1<r?e.slice(n,n+2):``;if(a===`<=`||a===`>=`||a===`==`||a===`!=`||a===`&&`||a===`||`){t.push({type:`punct`,punct:a,pos:n}),n+=2;continue}if(Ru(i)){t.push({type:`punct`,punct:i,pos:n}),n+=1;continue}throw new gu(`unexpected character '${i}'`,n)}return t.push({type:`eof`,pos:r}),t}function Lu(e){return e===`true`?`true`:e===`false`?`false`:`null`}function Ru(e){return e===`(`||e===`)`||e===`,`||e===`?`||e===`:`||e===`+`||e===`-`||e===`*`||e===`/`||e===`%`||e===`!`||e===`<`||e===`>`}var zu={"||":1,"&&":2,"==":3,"!=":3,"<":4,"<=":4,">":4,">=":4,"+":5,"-":5,"*":6,"/":6,"%":6};function Bu(e){return e===`&&`||e===`||`}function Vu(e){return e===`+`||e===`-`||e===`*`||e===`/`||e===`%`||e===`==`||e===`!=`||e===`<`||e===`<=`||e===`>`||e===`>=`}var Hu=class{tokens;pos=0;nodeCount=0;identifiers=new Set;callees=new Set;constructor(e){this.tokens=e}parse(){let e=this.parseTernary(),t=this.peek();if(t.type!==`eof`)throw new gu(`unexpected trailing input`,t.pos);return{ast:e,identifiers:this.identifiers,callees:this.callees,nodeCount:this.nodeCount}}peek(){return this.tokens[this.pos]}next(){return this.tokens[this.pos++]}expectPunct(e){let t=this.peek();if(t.type!==`punct`||t.punct!==e)throw new gu(`expected '${e}'`,t.pos);this.pos+=1}matchPunct(e){let t=this.peek();return t.type===`punct`&&t.punct===e?(this.pos+=1,!0):!1}countNode(){if(this.nodeCount+=1,this.nodeCount>256)throw new gu(`expression too complex`,this.peek().pos)}parseTernary(){let e=this.parseBinary(1);if(this.matchPunct(`?`)){let t=this.parseTernary();this.expectPunct(`:`);let n=this.parseTernary();return this.countNode(),{kind:`conditional`,test:e,consequent:t,alternate:n}}return e}parseBinary(e){let t=this.parseUnary();for(;;){let n=this.peek();if(n.type!==`punct`)break;let r=zu[n.punct];if(r===void 0||r<e)break;let i=n.punct;this.pos+=1;let a=this.parseBinary(r+1);if(this.countNode(),Bu(i))t={kind:`logical`,op:i,left:t,right:a};else if(Vu(i))t={kind:`binary`,op:i,left:t,right:a};else throw new gu(`unexpected operator '${i}'`,n.pos)}return t}parseUnary(){let e=this.peek();if(e.type===`punct`&&(e.punct===`!`||e.punct===`-`)){let t=e.punct;this.pos+=1;let n=this.parseUnary();return this.countNode(),{kind:`unary`,op:t,operand:n}}return this.parsePrimary()}parsePrimary(){let e=this.next();switch(e.type){case`number`:return this.countNode(),{kind:`literal`,value:e.value};case`string`:return this.countNode(),{kind:`literal`,value:e.value};case`keyword`:return this.countNode(),{kind:`literal`,value:e.keyword===`null`?null:e.keyword===`true`};case`identifier`:{let t=this.peek();return t.type===`punct`&&t.punct===`(`?this.parseCall(e.name,e.pos):(this.identifiers.add(e.name),this.countNode(),{kind:`identifier`,name:e.name})}case`punct`:if(e.punct===`(`){let e=this.parseTernary();return this.expectPunct(`)`),e}throw new gu(`unexpected token '${e.punct}'`,e.pos);case`eof`:throw new gu(`unexpected end of expression`,e.pos)}}parseCall(e,t){if(!Du.has(e))throw new gu(`unknown function '${e}'`,t);this.expectPunct(`(`);let n=[];if(!this.matchPunct(`)`))for(;;){if(n.push(this.parseTernary()),n.length>16)throw new gu(`too many arguments to '${e}'`,t);if(!this.matchPunct(`,`)){this.expectPunct(`)`);break}}return this.callees.add(e),this.countNode(),{kind:`call`,callee:e,args:n}}};function Uu(e){return new Hu(Iu(e)).parse()}var Wu=new Map;function Gu(e){let t=Wu.get(e);if(t!==void 0)return Wu.delete(e),Wu.set(e,t),t;let n;try{n={ok:!0,parsed:Uu(e)}}catch(e){n={ok:!1,error:e instanceof gu?e.message:String(e)}}if(Wu.set(e,n),Wu.size>256){let e=Wu.keys().next().value;e!==void 0&&Wu.delete(e)}return n}function Ku(e){return Gu(e)}Object.freeze({});function qu(e){let t=Object.keys(e.bindings);if(t.length>32)return`too many bindings (${t.length} > 32)`;for(let e of t){if(!ku.test(e))return`invalid binding name '${e}'`;if(Au.has(e))return`binding name '${e}' is reserved`;if(Du.has(e))return`binding name '${e}' shadows a builtin function`}let n=Ku(e.expr);if(!n.ok)return n.error;let r=new Set(t);for(let e of n.parsed.identifiers)if(e!==`now`&&!r.has(e))return`expression references unbound identifier '${e}'`;return null}var Ju=`composed-`,Yu=2e4,Xu=F({addonId:k().min(1),stableId:k().min(1)}),Zu=F({source:Xu,cap:k().min(1),fieldPath:k().min(1)}),Qu=Zu.extend({kind:B(`from`)}),$u=L(`kind`,[Qu,F({kind:B(`literal`),value:I([k(),A(),j(),Cc()])})]),ed=F({kind:B(`expression`),expr:k().min(1).max(Ou),bindings:R(k().regex(ku),$u)}).superRefine((e,t)=>{let n=qu(e);n!==null&&t.addIssue({code:`custom`,message:n,path:[`expr`]})}),td=F({kind:B(`code`),code:k().min(1).max(Yu)}),nd=L(`kind`,[Qu,ed,td]),rd=L(`kind`,[F({kind:B(`forward`),source:Xu,cap:k().min(1),method:k().min(1)}),td]),id=/^[a-z0-9][a-z0-9-]{0,47}$/,ad=F({label:k().min(1).max(80),fields:R(k().min(1),nd)}),od=L(`kind`,[F({kind:B(`fields`),cap:k().min(1),enabled:j().optional(),fields:R(k().min(1),nd).refine(e=>Object.keys(e).length<=32,{message:`at most 32 fields per capability`}),items:R(k().regex(id),ad).refine(e=>Object.keys(e).length<=16,{message:`at most 16 items`}).optional(),commands:R(k().min(1),rd).optional()}),F({kind:B(`passthrough`),cap:k().min(1),enabled:j().optional(),source:Xu})]),sd=F({target:L(`kind`,[F({kind:B(`new`),type:z(U),role:z(W).optional()}),F({kind:B(`existing`),device:Xu})]),features:P(od).min(1).max(16)}).superRefine((e,t)=>{let n=new Set;e.features.forEach((e,r)=>{n.has(e.cap)&&t.addIssue({code:`custom`,message:`capability \`${e.cap}\` is composed twice — one feature per capability`,path:[`features`,r,`cap`]}),n.add(e.cap)})}),cd=z([`node-a`,`node-b`,`node-c`,`node-d`,`node-e`,`node-f`,`node-g`,`node-h`]);new Set([`track`,`face`,`identity`,`plate`,`vehicle`,`scene`,`motion`,`object`,`audio`,`mosaic`]);var ld=[`motion`,`object`,`audio`],ud=z(ld),dd=z([...ld,`track`]);new Set(ld);var fd=F({video:F({codec:z([`h264`,`h265`,`copy`]),profile:z([`baseline`,`main`,`high`]).optional(),level:k().optional(),width:A().int().positive().optional(),height:A().int().positive().optional(),fps:A().positive().optional(),bitrateKbps:A().int().positive().optional(),gopFrames:A().int().positive().optional(),bf:A().int().min(0).optional(),preset:z([`ultrafast`,`superfast`,`veryfast`,`faster`,`fast`,`medium`]).optional(),tune:z([`zerolatency`,`film`,`animation`]).optional(),singleSlicePerFrame:j().optional()}),audio:I([B(`passthrough`),F({codec:z([`opus`,`aac`,`pcmu`,`pcma`,`copy`]),bitrateKbps:A().int().positive().optional(),sampleRateHz:A().int().positive().optional(),channels:I([B(1),B(2)]).optional()})]),inputArgs:P(k()).optional(),outputArgs:P(k()).optional()}),pd={video:{codec:`h264`,profile:`baseline`,level:`3.1`,width:1280,height:720,fps:25,bitrateKbps:2500,gopFrames:25,bf:0,preset:`veryfast`,tune:`zerolatency`},audio:`passthrough`};({...pd}),{...pd.video},{...pd},{...pd.video};var md=z([`singleton`,`device`,`widget`]),hd=F({capName:k(),kind:md,deviceId:A().optional(),reachable:j(),latencyMs:A(),error:k().optional()}),gd=F({addonId:k(),caps:P(hd).readonly(),widgets:P(hd).readonly()}),_d=F({nodeId:k(),addons:P(gd).readonly()});F({ok:j(),degraded:j(),checkedAt:k(),nodes:P(_d).readonly(),summary:F({total:A(),reachable:A(),unreachable:A()})});var vd=z([`running`,`done`,`failed`,`cancelled`]),yd=z([`adopted`,`already-adopted`,`failed`,`cancelled`]),bd=F({childNativeId:k(),outcome:yd,parentDeviceId:A().int().nonnegative().nullable(),accessoryCount:A().int().nonnegative(),error:k().nullable()}),xd=F({jobId:k(),addonId:k(),integrationId:k(),state:vd,total:A().int().nonnegative(),processed:A().int().nonnegative(),adopted:A().int().nonnegative(),alreadyAdopted:A().int().nonnegative(),failed:A().int().nonnegative(),accessoriesCreated:A().int().nonnegative(),currentChildNativeId:k().nullable(),results:P(bd).readonly(),startedAt:A(),finishedAt:A().nullable(),error:k().nullable()}),Sd=z([`stream-broker`,`object-detection`,`privacy-mask`,`device-audio`,`broker-audio`,`audio-analysis`,`event-saving`,`recording`,`notifications`]),Cd=L(`kind`,[F({kind:B(`device-disabled`)}),F({kind:B(`wrapper-binding`),capName:k()}),F({kind:B(`recording-config`)}),F({kind:B(`notification-mute`)}),F({kind:B(`camera-audio`),capName:k()}),F({kind:B(`camera-mask`),capName:k()}),F({kind:B(`broker-audio-mute`)})]),wd=z([`no-provider`,`source-unreachable`,`device-disabled`]),Td=z([`no-privacy-zones`]),Ed=F({id:Sd,label:k(),costWhenOff:k(),available:j(),unavailableReason:wd.optional(),warning:Td.optional(),enabled:j(),authority:Cd}),Dd=F({deviceId:A().int(),switches:P(Ed).readonly(),fetchedAt:A()}),Od=`camstack.training/v1`,kd=`camstack.training-result/v1`,Ad=z([`onnx`,`openvino-fp16`,`openvino-int8`,`coreml-fp16`]),jd=R(k(),A().min(0).max(1));F({schema:B(Od),jobKey:k().uuid(),target:F({kind:B(`detector`),step:B(`object-detection`)}),base:F({modelId:k().min(1),weights:k().min(1),imgsz:A().int().positive()}),baseline:F({modelId:k().min(1),onnxUrl:k().url(),imgsz:A().int().positive(),floors:jd}),dataset:F({versionId:k().min(1),annotationHash:k(),sha256:k().regex(/^[0-9a-f]{64}$/)}),split:F({holdoutCameras:P(A().int()),holdoutLastDays:A().int().nonnegative(),valFraction:A().min(0).max(.5),seed:A().int()}),hyper:F({epochs:A().int().positive(),batch:A().int().positive(),lr0:A().positive(),freeze:A().int().nonnegative(),patience:A().int().nonnegative(),seed:A().int()}),replay:F({source:B(`coco2017`),count:A().int().nonnegative()}),exports:P(Ad).min(1),calibration:F({maxFrames:A().int().positive()}),floors:F({minSupport:A().int().positive(),clamp:A().min(0).max(1)}),int8Gate:F({maxMap50Drop:A().min(0).max(1)}),catalog:F({id:k().regex(/^[a-z0-9][a-z0-9-]{2,80}$/),name:k().min(1).max(160)})});var Md=F({path:k().min(1),bytes:A().int().nonnegative(),sha256:k().regex(/^[0-9a-f]{64}$/),format:z([`onnx`,`openvino`,`coreml`,`pt`]),variant:z([`base`,`int8`])}),Nd=F({url:k().min(1),sizeMB:A().nonnegative(),isDirectory:j().optional(),files:P(k()).optional(),runtimes:P(B(`python`)).optional(),revision:k().min(1)}),Pd=F({id:k().min(1),name:k().min(1),description:k(),labels:P(M()),inputSize:F({width:A().int().positive(),height:A().int().positive()}),preprocessMode:B(`letterbox`),defaultClassFloors:jd,formats:F({onnx:Nd.optional(),openvino:Nd.optional(),coreml:Nd.optional()})}),Fd=F({positives:A().int(),floor:A().nullable(),tp:A().int(),fp:A().int(),fn:A().int(),precision:A().nullable(),recall:A().nullable(),ap50:A().nullable(),recallByCamera:R(k(),A().nullable()).optional(),recallByLight:R(k(),A().nullable()).optional(),fpByCamera:R(k(),A()).optional(),smallFound:A().int().optional(),smallTotal:A().int().optional()}).passthrough(),Id=F({frames:A().int(),classes:R(k(),Fd)}).passthrough(),Ld=F({schema:B(kd),jobKey:k(),status:z([`succeeded`,`failed`]),error:F({stage:k(),code:k(),message:k()}).nullable(),trainer:F({version:k(),revision:k()}),toolchain:R(k(),k().nullable()),dataset:F({versionId:k(),annotationHash:k(),sha256:k(),frames:F({train:A().int(),val:A().int(),holdout:A().int()}),holdoutCameras:P(A().int()),replayImages:A().int()}).optional(),training:F({epochsRun:A().int(),bestEpoch:A().int(),bestMap50:A(),bestMap50_95:A(),seconds:A()}).optional(),evaluation:F({holdoutFrames:A().int(),baseline:Id.nullable(),candidate:Id.nullable(),candidateInt8:Id.nullable(),recallDeltaByCamera:R(k(),R(k(),A())).nullable(),map50:R(k(),A().nullable())}).optional(),floors:F({baseline:jd,candidate:jd,candidateInt8:jd.nullable(),notes:P(k())}).optional(),int8:F({kept:j(),map50Fp16:A().nullable(),map50Int8:A().nullable(),reason:k().nullable()}).optional(),exportsDropped:P(F({export:k(),reason:k()})).optional(),files:P(Md).optional(),bundle:F({path:B(`bundle.tar`),bytes:A().int().nonnegative(),sha256:k().regex(/^[0-9a-f]{64}$/)}).nullable().optional(),catalogDraft:F({base:Pd,int8:Pd.nullable()}).nullable().optional(),licence:k()}),Rd=z([`prepare`,`replay`,`train`,`eval`,`export`,`package`]),zd={v:B(1),ts:A()};L(`type`,[F({...zd,type:B(`stage`),stage:Rd}),F({...zd,type:B(`epoch`),epoch:A().int(),epochs:A().int(),boxLoss:A().nullable().optional(),map50:A().nullable().optional(),map50_95:A().nullable().optional(),etaSec:A().nullable().optional()}),F({...zd,type:B(`metric`),name:k(),value:A()}),F({...zd,type:B(`artifact`),path:k(),bytes:A(),sha256:k()}),F({...zd,type:B(`done`),status:z([`succeeded`,`failed`]),resultSha256:k().nullable().optional()}),F({...zd,type:B(`error`),stage:k(),code:k(),message:k()})]);var Bd=[`unchanged`,`adjusted`,`reclassified`,`added`,`removed`,`model-error`],Vd=z([`confirmed`,`suppressed`,`exhausted-fallback`]),Hd=F({id:k(),at:A().int(),deviceId:A().int(),sourceTrackId:k(),className:k(),verdict:Vd,reason:k().nullable(),attempts:A().int(),deferredForMs:A().int(),decidedOnCoastedFrame:j(),birthEvidenceAvailable:j(),decidedByBirthEvidence:j(),bestScore:A().nullable(),appliedMinConfidence:A().nullable(),firstSeen:A().int().nullable(),motionOnsetAt:A().int().nullable(),birthLatencyMs:A().int().nullable(),birthIndexInBurst:A().int().nullable()}),Ud=F({deviceId:A().int().optional(),since:A().int().optional(),verdict:Vd.optional(),limit:A().int().min(1).max(5e3).optional()}),Wd=F({id:k(),note:k(),deviceId:A().int(),sourceTrackId:k(),archivedAt:A().int(),trackStartedAt:A().int().nullable(),trackClass:k().nullable(),trackLabel:k().nullable()}),Gd=F({deviceId:A().int().optional(),limit:A().int().min(1).max(1e3).optional()}),Kd=z([`same-subject`,`different-subjects`]),qd=z([`before`,`after`]),Jd=z([`mixed`,`not-a-subject`]),Yd=F({id:k(),deviceId:A().int(),leftTrackId:k(),rightTrackId:k(),leftSide:qd.nullable(),rightSide:qd.nullable(),relation:Kd,presence:B(`continuous`).nullable(),leftStartedAt:A().int().nullable(),rightStartedAt:A().int().nullable(),createdAt:A().int(),updatedAt:A().int(),author:k().nullable()}),Xd=F({id:k(),deviceId:A().int(),sourceTrackId:k(),purity:Jd,switchAtMs:A().int().nullable(),startedAt:A().int().nullable(),createdAt:A().int(),updatedAt:A().int(),author:k().nullable()}),Zd=F({deviceId:A().int(),trackId:k().min(1),otherTrackId:k().min(1),relation:Kd,presence:B(`continuous`).optional(),trackSide:qd.optional(),otherSide:qd.optional()}),Qd=F({deviceId:A().int(),trackId:k().min(1),otherTrackId:k().min(1)}),$d=F({cleared:j()}),ef=F({deviceId:A().int(),trackId:k().min(1),purity:z([`pure`,`mixed`,`not-a-subject`]),switchAtMs:A().int().optional()}),tf=F({purity:Xd.nullable()}),nf=F({deviceId:A().int(),trackId:k().optional(),since:A().int().optional(),until:A().int().optional(),limit:A().int().min(1).max(5e3).optional()}),rf=F({relations:P(Yd).readonly(),purities:P(Xd).readonly(),truncated:j()});z([`unknown-track`,`cross-device`,`self-relation`,`contradiction`,`switch-outside-track`,`switch-needs-mixed`]);var af=z([`recording`,`events`]),of=z([`prune`,`manual-delete`,`rescan`,`retention-run`,`relocate`,`orphan-audit`]),sf=z([`retention`,`quota`,`manual`,`operator`,`maintenance`,`orphaned-device`]),cf=F({id:k(),at:A(),domain:af,op:of,reason:sf,deviceId:A().nullable(),nodeId:k(),itemsAffected:A(),bytesReclaimed:A(),detail:k().nullable(),actor:k()}),lf=F({deviceId:A().optional(),limit:A().int().min(1).max(1e3).optional()}),uf=F({id:k(),name:k(),category:k().optional(),description:k().optional(),icon:k().optional()}),df=[`person`,`vehicle`,`animal`,`package`],ff=[`person`,`vehicle`,`animal`],pf=F({mapping:R(k(),z(df)),preserveOriginal:j()}),mf=A().int().min(0).max(6),hf=/^([01]\d|2[0-3]):[0-5]\d$/,gf=z([`off`,`events`,`continuous`,`on-device-decision`]),_f=z(ff),vf=e=>new Set(e).size===e.length,yf=F({motion:j().optional(),audioThresholdDbfs:A().optional(),objectClasses:P(_f).min(1).refine(vf,{message:`objectClasses must not repeat a class`}).optional(),sensorDeviceIds:P(A().int().positive()).min(1).max(16).refine(vf,{message:`sensorDeviceIds must not repeat a device`}).optional()}),bf=z([`continuous`,`events`]),xf=yf,Sf=z([`on`,`muted`]),Cf=F({days:P(mf),start:k().regex(hf),end:k().regex(hf),mode:bf,audio:Sf.optional(),triggers:xf.optional(),preBufferSec:A().min(0).optional(),postBufferSec:A().min(0).optional()});({postBufferSec:30}).postBufferSec*1e3;var wf=F({maxAgeDays:A().min(0).optional(),maxSizeGb:A().min(0).optional()}),Tf=F({enabled:j(),mode:gf.optional(),profiles:P(Al).optional(),segmentSeconds:A().int().positive().optional(),bands:P(Cf).default([]),deviceDecision:j().optional(),retention:wf.optional()}).strict().refine(e=>e.deviceDecision!==!0||e.bands.length===0,{message:`deviceDecision is a whole-config mode and carries no schedule: it cannot be combined with bands`,path:[`bands`]}),Ef=z([`queued`,`running`,`done`,`failed`,`cancelled`]),Df=F({jobId:k(),state:Ef,fromLocationId:k(),toLocationId:k(),deviceId:A().nullable(),entities:P(k()),filesMoved:A().int(),bytesMoved:A().int(),filesTotal:A().int().nullable(),rowsReconciled:A().int().nonnegative().optional(),rowsForgotten:A().int().nonnegative().optional(),startedAt:A(),finishedAt:A().nullable(),error:k().nullable()}),Of=z([`recordings`,`recordingsLow`]),kf=F({fromLocationId:k(),toLocationId:k(),entities:P(z([`segments`])).optional(),footageClass:Of.optional(),deviceId:A().int().optional(),profiles:P(k()).optional(),throttleMbps:A().min(1).max(1e3).optional(),sinceMs:A().int().optional()}),Af=F({leaseId:k().min(1)}),jf=kf.extend({leaseId:k().min(1)}),Mf=z([`move`,`seal`,`gallery`]),Nf=F({toLocationId:k(),fromLocationId:k().optional(),throttleMbps:A().min(1).max(1e3).optional(),mode:Mf.optional()}),Pf=F({present:j(),rows:A().int().nonnegative().nullable()}),Ff=F({media:Pf,retrainFrames:Pf,anyPresent:j(),total:A().int().nonnegative().nullable()}).nullable(),If=Nf.extend({leaseId:k().min(1)}),Lf=z([`recordings`,`recordingsLow`,`eventMedia`,`backups`,`galleryMedia`]),Rf=F({recordings:k().min(1).optional(),recordingsLow:k().min(1).optional(),eventMedia:k().min(1).optional(),backups:k().min(1).optional(),galleryMedia:k().min(1).optional()}).refine(e=>Object.keys(e).length>0,{message:`select at least one storage class`}),zf=F({recordings:k().min(1).optional(),recordingsLow:k().min(1).optional(),eventMedia:k().min(1).optional(),backups:k().min(1).optional(),galleryMedia:k().min(1).optional()}).optional(),Bf=z([`blocking`,`nonBlocking`]),Vf=F({destinations:Rf,sources:zf,throttleMbps:A().min(1).max(1e3).optional(),mode:Bf.optional()}),Hf=z([`planning`,`sealing`,`pausing`,`moving`,`draining`,`verifying`,`repointing`,`refreshing`,`resuming`,`done`,`failed`,`cancelled`]),Uf=z([`pipeline`,`recorder`,`analytics`]),Wf=F({filesMoved:A().int().nonnegative(),filesTotal:A().int().nonnegative().nullable(),bytesMoved:A().int().nonnegative(),rowsReconciled:A().int().nonnegative().optional(),startedAt:A(),observedAt:A()}),Gf=F({storageClass:Lf,fromLocationId:k(),toLocationId:k(),freezeSource:j().optional(),moverJobId:k().nullable(),state:Ef.nullable(),error:k().nullable(),progress:Wf.nullable()}),Kf=F({jobId:k(),phase:Hf,mode:Bf,destinations:Rf,sources:zf,throttleMbps:A(),moves:P(Gf),pauseLeaseId:k().nullable(),pausedParticipants:P(Uf),repointed:j(),cancelRequested:j(),startedAt:A(),updatedAt:A(),finishedAt:A().nullable(),error:k().nullable()}),qf=F({code:z([`sharesDeviceWithSource`,`deviceIdentityUnknown`,`unstampedEventMediaRows`,`blockingOnly`,`noMover`]),storageClass:Lf,message:k()}),Jf=F({destinations:Rf,sources:zf,mode:Bf,moves:P(F({storageClass:Lf,fromLocationId:k(),toLocationId:k(),freezeSource:j().optional()})),findings:P(qf)}),Yf=F({lane:z([`footage`,`media`]),job:Df,migrationJobId:k().nullable(),observedAt:A()}),Xf=F({storageClass:Lf,fromLocationId:k(),toLocationId:k(),items:A().int().nonnegative().nullable(),bytes:A().int().nonnegative().nullable()}),Zf=F({classes:P(Lf).min(1),throttleMbps:A().min(1).max(1e3).optional()}),Qf=F({fromLocationId:k().min(1),footageClass:Of.optional()}),$f=F({segments:A().int().nonnegative(),bytes:A().int().nonnegative()}).nullable(),ep=F({locationId:k().min(1),apply:j().optional(),deviceId:A().int().positive().optional(),profiles:P(k().min(1)).optional()}),tp=z([`location-unknown`,`source-writable`,`no-ledger`,`archive-unreadable`,`anchor-absent`,`anchor-unreadable`,`anchor-moved`]);z([`live-tail`,`listing-error`,`path-mismatch`,`durable-refused`]);var np=F({"live-tail":A().int().nonnegative(),"listing-error":A().int().nonnegative(),"path-mismatch":A().int().nonnegative(),"durable-refused":A().int().nonnegative()}),rp=F({deviceId:A().int(),hoursWalked:A().int().nonnegative(),hoursMissing:A().int().nonnegative(),ghostSegments:A().int().nonnegative(),ghostBytes:A().int().nonnegative(),forgottenSegments:A().int().nonnegative(),orphanFiles:A().int().nonnegative()}),ip=F({locationId:k(),applied:j(),refused:tp.nullable(),archiveSegments:A().int().nonnegative().nullable(),archiveBytes:A().int().nonnegative().nullable(),hoursClaimed:A().int().nonnegative(),hoursWalked:A().int().nonnegative(),hoursMissing:A().int().nonnegative(),listings:A().int().nonnegative(),segmentsClaimed:A().int().nonnegative(),ghostSegments:A().int().nonnegative(),ghostBytes:A().int().nonnegative(),ghostHoursWhole:A().int().nonnegative(),forgottenSegments:A().int().nonnegative(),forgottenBytes:A().int().nonnegative(),orphanFiles:A().int().nonnegative(),orphanSample:P(k()).readonly(),hoursSkipped:A().int().nonnegative(),skippedByReason:np,bounded:j(),byDevice:P(rp).readonly()}),ap=F({rows:A().int().nonnegative()}).nullable(),op=F({toLocationId:k().min(1),fromLocationId:k().optional(),mode:Mf.optional()}),sp=z([`orphans`,`debug-media`,`ghost-ledger`,`done`,`failed`,`cancelled`]),cp=F({includeDebugMedia:j().optional()}),lp=F({jobId:k(),phase:sp,includeDebugMedia:j(),orphansReclaimed:A().int().nonnegative(),orphanBytesReclaimed:A().int().nonnegative(),debugMediaReclaimed:A().int().nonnegative(),debugMediaBytesReclaimed:A().int().nonnegative(),ghostsForgotten:A().int().nonnegative(),ghostBytesForgotten:A().int().nonnegative(),detail:k().nullable(),cancelRequested:j(),startedAt:A(),updatedAt:A(),finishedAt:A().nullable(),error:k().nullable()}),up=F({jobId:k().optional()}),dp=z([`active`,`readonly`,`drain`,`disabled`]);z([`normal`,`never`,`drain`]);var fp=k().regex(/^[a-z][a-zA-Z0-9-]*$/),pp=F({id:k().regex(/^[a-z][a-zA-Z0-9-]*:[a-zA-Z0-9-]+$/),type:k(),displayName:k().min(1),providerId:k().min(1),config:R(k(),M()),nodeId:k().optional(),isSystem:j().default(!1),enabled:j().optional(),mode:dp.optional(),capacity:F({totalBytes:A(),availableBytes:A()}).nullable().optional(),owned:F({bytes:A().int().nonnegative(),measuredAtMs:A().int().nonnegative()}).optional(),createdAt:A(),updatedAt:A()});F({isDefault:j().optional()});var mp=F({locationId:k(),startedAtMs:A(),startBytes:A(),bytesRemaining:A(),drained:j(),estimatedEmptyAtMs:A().nullable()}),hp=I([fp,k().regex(/^[a-z][a-zA-Z0-9-]*:[a-zA-Z0-9-]+$/)]),gp=z([`local-path`,`cap-mediated`]),_p=F({id:k().regex(/^[a-z][a-zA-Z0-9-]*$/,{message:`id must start with a lowercase letter and contain only letters, digits, or hyphens`}),displayName:k().min(1,{message:`displayName must not be empty`}),description:k().optional(),cardinality:z([`single`,`multi`]),access:gp.optional(),defaultsTo:k().optional(),defaultRoot:z([`data`,`media`,`backup`]).optional()}),vp=z([`info`,`warn`,`error`]),yp=F({name:k().min(3).regex(/^[a-z0-9-]+(\.[a-z0-9-]+)+$/,`a channel name is dotted lower-kebab, e.g. area.thing`),description:k().min(1),defaultLevel:vp,perDevice:j()}),bp=F({channel:k().min(1),armedUntilMs:A(),deviceIds:P(A().int()).readonly().nullable()}),xp=F({textModelId:k().min(1),embeddingDim:A().int().positive(),vectorIndex:k().regex(/^object-clip(-[a-z0-9][a-z0-9-]*)?$/),tokenizerFile:k().min(1),contextLength:A().int().positive(),padId:A().int().nonnegative(),searchMinScore:A().min(0).max(1)}),Sp=z([`loose`,`balanced`,`strict`]),Cp=[`animal-classifier`,`vehicle-classifier`,`package-detection`],wp=[`plate-detection`,`face-detection`],Tp=[`segmentation`];[...Cp,...wp,...Tp];var Ep=F({url:k(),sizeMB:A(),isDirectory:j().optional(),files:P(k()).readonly().optional(),runtimes:P(z([`python`])).readonly().optional(),revision:k().min(1).optional()}),Dp=z([`current`,`stale`,`missing`]),Op=z([`fp32`,`fp16`,`int8`]),kp=F({downloaded:j(),sizeMB:A(),onDisk:Dp.optional(),precision:Op.optional()}),Ap=F({url:k(),filename:k(),sizeMB:A()}),jp=F({onnx:Ep.optional(),coreml:Ep.optional(),openvino:Ep.optional(),tflite:Ep.optional(),pt:Ep.optional(),gguf:Ep.optional()}),Mp=F({family:k(),tier:k(),precision:z([`fp32`,`int8`]).optional(),optimization:z([`standard`,`test`]).optional(),resolution:A().int().positive().optional()}),Np=z([`camstack`,`frigate`,`scrypted`,`custom`]),Pp=yl(e=>typeof e==`string`?{weights:e}:e,F({weights:k().min(1),code:k().min(1).optional(),data:F({name:k().min(1),terms:k().min(1),url:k().url().optional()}).optional(),upstream:F({name:k().min(1),url:k().url()}).optional(),url:k().url().optional(),attribution:k().min(1).optional(),modifications:k().min(1).optional(),hosting:z([`camstack-hf`,`third-party`,`built-in`]).optional(),nonCommercial:j().optional()})),Fp=L(`kind`,[F({kind:B(`label`),stepId:z(Cp),labelToEffect:R(k(),k()),uncovered:P(k()).readonly()}),F({kind:B(`crop`),stepId:z(wp),rootLabels:P(k()).readonly(),parentMacro:z([`vehicle`,`person`]),childClass:z([`plate`,`face`]),rootInputPx:A().int().positive().optional()}),F({kind:B(`mask`),stepId:z(Tp)})]),Ip=F({id:k(),name:k(),description:k(),formats:jp,inputSize:F({width:A(),height:A()}),inputChannels:A().int().positive().optional(),labels:P(uf).readonly(),inputLayout:z([`nchw`,`nhwc`]).optional(),inputNormalization:z([`zero-one`,`imagenet`,`none`,`scrfd`]).optional(),outputProbabilities:j().optional(),preprocessMode:z([`letterbox`,`resize`]).optional(),postprocessor:hl().optional(),defaultConfidence:A().min(0).max(1).optional(),defaultClassFloors:R(k(),A().min(0).max(1)).optional(),gpuInferencePrecision:z([`f32`,`f16`]).optional(),suppliedLabelFloors:R(k(),A().min(0).max(1)).optional(),faceAlignment:j().optional(),extraFiles:P(Ap).readonly().optional(),legacy:j().optional(),metrics:F({map50:A().optional(),p95LatencyMs:R(k(),A()).optional()}).optional(),license:Pp.optional(),group:Mp.optional(),provider:Np.optional(),classMap:pf.optional(),suppliesSteps:P(Fp).readonly().optional(),clip:xp.optional()}),Lp=L(`format`,[F({format:B(`openvino`),precisions:P(z([`fp16`,`int8`])).min(1).readonly()}),F({format:B(`coreml`)})]),Rp=F({id:k().regex(/^[a-zA-Z0-9._-]+$/),name:k(),labels:P(uf).readonly(),inputSize:F({width:A(),height:A()}),inputLayout:z([`nchw`,`nhwc`]).optional(),inputNormalization:z([`zero-one`,`imagenet`,`none`,`scrfd`]).optional(),preprocessMode:z([`letterbox`,`resize`]).optional(),outputFormat:z([`yolo`,`ssd`,`embedding`,`classification`,`ocr`,`segmentation`]),faceAlignment:j().optional(),classMap:pf.optional()}),zp=F({entry:Ip,artifacts:P(F({format:z(Gl),precision:z([`fp16`,`int8`]).optional(),sizeMB:A(),validated:j(),files:P(k()).readonly()})).readonly()});z([`new-session`,`step-up`]);var Bp=L(`kind`,[F({kind:B(`native`)}),F({kind:B(`browser`),startPath:k().startsWith(`/`)})]),Vp=`ecdsa-p256-sha256`,Hp=`camstack-device-cert-v1`;z([`login`,`renew`,`revoke`]);var Up=z([`ios`,`android`,`web`,`other`]),Wp=k().min(1).max(4096).regex(/^[A-Za-z0-9_-]+$/),Gp=k().min(1).max(16384),Kp=z([`revoked`,`unknown-credential`,`expired`,`bad-signature`,`nonce-invalid`,`rate-limited`,`invalid-certificate`,`superseded`,`user-gone`,`unavailable`,`code-invalid`,`self-enrollment-disabled`,`step-up-required`,`bad-public-key`]),qp=F({ok:B(!1),reason:Kp,definitive:j(),retryAfterSeconds:A().optional()});F({code:k().min(1).max(256),publicKeySpki:Wp,deviceName:k().min(1).max(80).optional(),platform:Up}),L(`ok`,[F({credentialId:k(),certPem:Gp,chainPem:Gp,notAfter:A(),user:F({id:k(),username:k()})}).extend({ok:B(!0)}),qp]),F({proof:k().min(1).max(512),publicKeySpki:Wp,deviceName:k().min(1).max(80),platform:Up}),F({proof:k(),expiresAt:A()}),L(`ok`,[F({nonce:k(),origin:k(),expiresAt:A(),signature:B(Vp)}).extend({ok:B(!0)}),qp]),F({certPem:Gp,nonce:k().min(1).max(256),signature:Wp}),L(`ok`,[F({credentialId:k(),certPem:Gp,chainPem:Gp,notAfter:A()}).extend({ok:B(!0)}),qp]),L(`ok`,[F({ok:B(!0),credentialId:k(),sessionsEnded:A().int()}),qp]);var Jp=z([`active`,`expired`,`revoked`]),Yp=F({id:k(),userId:k(),username:k().nullable(),deviceName:k(),platform:Up,enrolledVia:z([`qr`,`self`]),fingerprint:k(),issuedAt:A(),expiresAt:A(),lastUsedAt:A().nullable(),lastUsedFrom:k().nullable(),revokedAt:A().nullable(),revokedBy:k().nullable(),status:Jp}),Xp=F({code:k(),expiresAt:A(),enrollUrl:k(),hubOrigin:k().nullable(),hubOrigins:P(k())});F({kind:B(`device-certificate`),id:B(`device-certificate`),label:k(),stage:B(`primary`),challengePath:B(`auth.getDeviceChallenge`),revokePath:B(`auth.revokeOwnDeviceCertificate`),enrollSelfPath:B(`auth.enrollSelf`),loginPath:B(`auth.loginWithDeviceCertificate`),renewPath:B(`auth.renewDeviceCertificate`),signature:B(Vp),messageVersion:B(Hp),clients:P(z([`native`,`web`])),app:Bp.nullable()});var Zp=I([F({kind:B(`field`).optional(),sourceKey:k(),cap:k(),fieldPath:k()}),F({kind:B(`literal`),value:I([k(),A(),j(),Cc()])}),F({kind:B(`global`),sourceStableId:k(),cap:k(),fieldPath:k()})]);F({expr:k().min(1).max(Ou),bindings:R(k().regex(ku),Zp)}).superRefine((e,t)=>{let n=qu(e);n!==null&&t.addIssue({code:`custom`,message:n,path:[`expr`]})});var Qp=z([`eq`,`ne`,`gt`,`gte`,`lt`,`lte`,`contains`,`in`]),$p=F({kind:B(`condition`),deviceId:A().int().nonnegative(),cap:k().min(1),fieldPath:k().min(1),operator:Qp,value:I([k(),A(),j(),P(I([k(),A()]))])}),em=F({kind:B(`expression`),expr:k().min(1).max(Ou),bindings:R(k().regex(ku),Zp)}).superRefine((e,t)=>{let n=qu(e);n!==null&&t.addIssue({code:`custom`,message:n,path:[`expr`]})}),tm=pl(()=>L(`kind`,[F({kind:B(`all`),children:P(tm)}),F({kind:B(`any`),children:P(tm)}),F({kind:B(`not`),child:tm}),$p,em])),nm=L(`kind`,[F({kind:B(`device-state`),deviceId:A().int().nonnegative(),cap:k().min(1),fieldPath:k().min(1),becomes:I([k(),A(),j()]).optional(),edge:j().optional(),forMs:A().int().min(0).max(864e5).optional(),debounceMs:A().int().min(0).max(6e5).optional()}),F({kind:B(`device-event`),category:k().min(1),deviceId:A().int().nonnegative().optional()}),F({kind:B(`schedule`),cron:k().min(1).max(120)}),F({kind:B(`manual`)})]),eee=L(`kind`,[F({kind:B(`wait`),seconds:A().min(0).max(300)}),F({kind:B(`cap`),deviceId:I([A().int(),P(A().int()).min(1),F({$var:k().min(1)})]),cap:k().min(1),method:k().min(1),args:R(k(),M()).optional()}),F({kind:B(`code`),code:k().min(1).max(2e4)})]),rm=F({triggers:P(nm),conditions:tm.optional(),actions:P(eee)}),im=F({id:k(),label:k(),icon:k(),path:k(),remoteName:k(),bundle:k(),section:k().optional(),sectionLabel:k().optional()}),am=F({addonId:k(),page:im,bundleUrl:k()}),om={name:`addon-pages`,scope:`system`,mode:`singleton`,methods:{listPages:V(N(),P(am).readonly())}},sm=F({id:k(),label:k(),icon:k(),path:k(),remoteName:k(),bundle:k(),section:k().optional(),sectionLabel:k().optional()}),cm={name:`addon-pages-source`,scope:`system`,mode:`collection`,internal:!0,methods:{listPages:V(N(),P(sm).readonly(),{auth:`admin`})}},lm=F({method:z([`GET`,`POST`,`PUT`,`DELETE`,`PATCH`]),path:k(),access:z([`public`,`authenticated`,`admin`]).optional(),description:k().optional(),rateLimit:z([`auth`]).optional()}),um=F({method:k(),path:k(),params:R(k(),k()),query:R(k(),k()),body:M(),headers:R(k(),k()),user:F({id:k(),username:k(),isAdmin:j()}).optional(),scopedToken:M().optional()}),dm=F({status:A().int(),headers:R(k(),k()),redirectUrl:k().nullable(),body:M().optional(),contentType:k().optional()}),fm={name:`addon-routes`,scope:`system`,mode:`collection`,internal:!0,methods:{getRoutes:V(N(),P(lm)),invoke:V(um,dm,{kind:`mutation`})},mount:{kind:`skip`}},pm=F({id:k(),label:k(),icon:k(),order:A().optional()}),mm=F({id:k(),title:k(),description:k().optional(),style:z([`card`,`accordion`]).optional(),defaultCollapsed:j().optional(),columns:I([B(1),B(2),B(3),B(4)]).optional(),tab:k().optional(),location:z([`settings`,`top-tab`]).optional(),order:A().optional(),fields:P(Tc())}),hm=F({tabs:P(pm).optional(),sections:P(mm)}),gm=R(k(),M()),_m=F({success:B(!0)}),vm={name:`addon-settings`,scope:`system`,mode:`singleton`,nodeIdMode:`data`,methods:{getGlobalSettings:V(F({addonId:k(),nodeId:k().optional(),overlay:R(k(),M()).optional(),cap:k().optional()}),hm.nullable()),updateGlobalSettings:V(F({addonId:k(),nodeId:k().optional(),patch:gm}),_m,{kind:`mutation`,auth:`admin`}),getIntegrationSettings:V(F({addonId:k(),nodeId:k().optional()}),hm.nullable()),getDeviceSettings:V(F({addonId:k(),deviceId:A(),nodeId:k().optional()}),hm.nullable()),updateDeviceSettings:V(F({addonId:k(),deviceId:A(),nodeId:k().optional(),patch:gm}),_m,{kind:`mutation`,auth:`admin`})}},ym=z([`device-tab`,`dashboard`,`integration-detail`]),bm=z([`xs`,`sm`,`md`,`lg`,`xl`]),xm=F({remoteName:k(),exposedModule:k(),componentKey:k().optional()}),Sm=F({tab:k(),subTab:k().optional(),label:k(),order:A().optional(),kind:B(`remote`),remote:xm,stableId:k(),description:k().optional(),icon:k().optional(),bundle:k(),hosts:P(ym).readonly(),requires:F({deviceContext:j().default(!1),integrationContext:j().default(!1)}),preAuth:j().optional().default(!1),defaultSize:bm.default(`md`),allowedSizes:P(bm).readonly().default([`sm`,`md`,`lg`]),defaultColumns:A().int().min(1).max(12).default(6),defaultRows:A().int().min(1).max(12).default(1)}),Cm={name:`addon-widgets-source`,scope:`system`,mode:`collection`,internal:!0,methods:{listWidgets:V(N(),P(Sm).readonly(),{auth:`admin`})}},wm=Sm.extend({addonId:k(),bundleUrl:k()}),Tm={name:`addon-widgets`,scope:`system`,mode:`singleton`,methods:{listWidgets:V(N(),P(wm).readonly())}},Em=z([`info`,`success`,`warning`,`error`]),Dm=z([`active`,`in-progress`,`completed`,`failed`,`dismissed`]),Om=F({type:k(),id:k()}),km=F({id:k(),category:k(),severity:Em,title:k(),message:k(),status:Dm,progress:A().optional(),read:j(),createdAt:A(),updatedAt:A(),source:Om.optional(),metadata:R(k(),M()).optional()}),tee={name:`alerts`,scope:`system`,mode:`singleton`,methods:{emit:V(km,N(),{kind:`mutation`}),update:V(F({alertId:k(),patch:km.partial()}),N(),{kind:`mutation`}),list:V(F({unreadOnly:j().optional(),limit:A().optional()}).optional(),P(km).readonly()),getUnreadCount:V(N(),A()),markRead:V(F({alertId:k()}),N(),{kind:`mutation`}),markAllRead:V(N(),N(),{kind:`mutation`}),dismiss:V(F({alertId:k()}),N(),{kind:`mutation`})}},Am={name:`audio-analysis`,scope:`device`,mode:`singleton`,kind:`wrapper`,defaultActive:!0,deviceTypes:[U.Camera],exposesDeviceSettings:!0,methods:{resolveDeviceSettings:V(F({deviceId:A()}),hl())},events:{onAudioLevel:Yl(F({deviceId:A(),rms:A(),dbfs:A()}))}},jm=z([`jpeg`,`rgb`,`bgr`,`yuv420`,`gray`]),Mm=F({data:hl(),format:jm,width:A(),height:A(),timestamp:A()}),Nm=F({x:A(),y:A(),w:A(),h:A()});F({class:k(),originalClass:k(),score:A(),bbox:Nm});var Pm=F({data:vl(Uint8Array),sampleRate:A(),channels:A(),timestamp:A(),deviceId:A().optional()}),Fm=F({rms:A(),dbfs:A()}),Im=F({className:k(),originalClass:k().optional(),score:A()}),Lm=L(`state`,[F({state:B(`classified`)}),F({state:B(`not-classified`),reason:z([`superseded`,`error`,`timeout`,`disposed`])})]),Rm=F({level:Fm,classification:F({labels:P(Im).readonly(),inferenceMs:A()}).optional(),classifyOutcome:Lm,timestamp:A()}),zm=F({minConfidence:A().min(0).max(1).default(.3),allowedClasses:P(k()).default([])}),Bm=F({deviceId:A(),brokerId:k(),ingestNodeId:k(),settings:zm}),Vm=F({attached:j(),replaced:j()}),Hm=F({detached:j()}),Um=F({labels:P(Im).readonly(),rawLabels:P(Im).readonly().optional(),inferenceMs:A()}),Wm={name:`audio-analyzer`,scope:`system`,mode:`singleton`,methods:{analyseChunk:V(F({chunk:Pm,settings:zm}),Rm.nullable(),{kind:`mutation`}),classify:V(Pm,Um,{timeoutMs:3e4}),attachDevice:V(Bm,Vm,{kind:`mutation`}),detachDevice:V(F({deviceId:A()}),Hm,{kind:`mutation`}),isReady:V(N(),j()),dispose:V(N(),N(),{kind:`mutation`}),reprobeAudioEngine:V(N(),F({backend:k()}),{kind:`mutation`,auth:`admin`})}},Gm=z([`f32le`,`s16le`]),Km=F({codec:k(),canDecode:j(),canEncode:j(),label:k().optional()}),qm=F({codec:k(),sourceSampleRate:A().int().positive(),sourceChannels:A().int().positive(),extraData:vl(Uint8Array).optional(),targetSampleRate:A().int().positive(),targetChannels:A().int().positive(),targetFormat:Gm.optional(),idleMs:A().int().positive().optional(),tag:k().optional()}),Jm=F({codec:k(),sourceSampleRate:A().int().positive(),sourceChannels:A().int().positive(),sourceFormat:Gm.optional(),targetSampleRate:A().int().positive(),targetChannels:A().int().positive(),bitrateKbps:A().int().positive().optional(),idleMs:A().int().positive().optional(),tag:k().optional()}),Ym=F({data:vl(Uint8Array),sampleRate:A().int().positive(),channels:A().int().positive(),format:Gm,pts:A()}),Xm=F({data:vl(Uint8Array),codec:k(),pts:A(),frameComplete:j()}),Zm=F({sessionId:k(),kind:z([`decode`,`encode`]),codec:k(),sourceSampleRate:A(),sourceChannels:A(),targetSampleRate:A(),targetChannels:A(),format:Gm,tag:k().optional(),createdAtMs:A(),lastActivityMs:A(),framesIn:A(),framesOut:A()}),Qm={name:`audio-codec`,scope:`system`,mode:`singleton`,preferredProvider:`decoder-nodeav`,methods:{listSupportedCodecs:V(N(),P(Km).readonly()),canHandle:V(F({codec:k(),kind:z([`decode`,`encode`])}),j()),createDecodeSession:V(qm,F({sessionId:k(),nodeId:k()}),{kind:`mutation`}),createEncodeSession:V(Jm,F({sessionId:k(),nodeId:k()}),{kind:`mutation`}),closeSession:V(F({sessionId:k(),nodeId:k().optional()}),N(),{kind:`mutation`}),pushEncodedFrame:V(F({sessionId:k(),nodeId:k().optional(),data:vl(Uint8Array),pts:A().optional()}),N(),{kind:`mutation`}),pullPcm:V(F({sessionId:k(),nodeId:k().optional(),maxCount:A().int().positive().default(8)}),P(Ym)),pushPcm:V(F({sessionId:k(),nodeId:k().optional(),data:vl(Uint8Array),pts:A().optional()}),N(),{kind:`mutation`}),pullEncoded:V(F({sessionId:k(),nodeId:k().optional(),maxCount:A().int().positive().default(8)}),P(Xm)),flushEncode:V(F({sessionId:k(),nodeId:k().optional()}),P(Xm),{kind:`mutation`}),listActiveSessions:V(N(),P(Zm).readonly())}},$m=F({userId:k(),username:k(),email:k().optional(),displayName:k().optional(),isAdmin:j().default(!1)}),eh={name:`auth-provider`,scope:`system`,mode:`collection`,internal:!0,methods:{validateCredentials:V(F({username:k(),password:k()}),$m.nullable(),{kind:`mutation`}),getLoginUrl:V(F({state:k()}),k()),handleCallback:V(R(k(),k()),$m,{kind:`mutation`}),validateToken:V(F({token:k()}),$m.nullable())},mount:{kind:`skip`}},th=F({where:R(k(),M()).optional(),whereIn:R(k(),P(M())).optional(),whereBetween:R(k(),Bc([M(),M()])).optional(),whereNot:R(k(),M()).optional(),whereNotIn:R(k(),P(M())).optional(),orderBy:F({field:k(),direction:z([`asc`,`desc`])}).optional(),limit:A().optional(),offset:A().optional()}),nh=F({where:R(k(),M()).optional(),whereIn:R(k(),P(M())).optional(),whereBetween:R(k(),Bc([M(),M()])).optional(),whereNot:R(k(),M()).optional(),whereNotIn:R(k(),P(M())).optional()}),rh=F({as:k().min(1),field:k().min(1),op:z([`sum`,`min`,`max`])}),ih=F({count:A().int(),values:R(k(),A().nullable())}),ah=F({id:k(),data:R(k(),M())}),oh=F({id:k().optional(),data:R(k(),M())}),sh=z([`settings`,`events`,`history`]);sh.options;var ch=L(`op`,[F({op:B(`deleteWhere`),collection:k(),filter:nh}),F({op:B(`insertMany`),collection:k(),records:P(oh).readonly()}),F({op:B(`update`),collection:k(),id:k(),data:R(k(),M())}),F({op:B(`upsertMany`),collection:k(),conflict:P(k()).readonly(),records:P(oh).readonly()})]),lh=F({collection:k(),key:k(),column:k(),equals:M()}),uh=F({name:k(),type:z([`TEXT`,`INTEGER`,`REAL`,`JSON`,`BOOLEAN`]),primaryKey:j().optional(),notNull:j().optional(),unique:j().optional(),defaultValue:I([k(),A(),j()]).optional()}),dh=F({name:k(),columns:P(k()).readonly(),unique:j().optional()}),fh=F({namespace:k().optional(),collection:k(),columns:P(uh).readonly(),indexes:P(dh).readonly().optional(),database:sh.optional(),primaryKey:P(k()).readonly().optional(),withoutRowid:j().optional()}),ph={name:`settings-store`,scope:`system`,mode:`singleton`,methods:{get:V(F({namespace:k().optional(),collection:k(),key:k()}),M(),{auth:`admin`}),set:V(F({namespace:k().optional(),collection:k(),key:k(),value:M()}),N(),{kind:`mutation`,auth:`admin`}),query:V(F({namespace:k().optional(),collection:k(),filter:th.optional(),columns:P(k()).readonly().optional()}),P(ah).readonly(),{auth:`admin`}),upsert:V(F({namespace:k().optional(),collection:k(),conflict:P(k()).readonly(),record:oh}),F({id:I([k(),A()])}),{kind:`mutation`,auth:`admin`}),upsertMany:V(F({namespace:k().optional(),collection:k(),conflict:P(k()).readonly(),records:P(oh).readonly()}),F({upserted:A().int()}),{kind:`mutation`,auth:`admin`}),insert:V(F({namespace:k().optional(),collection:k(),record:F({id:k().optional(),data:R(k(),M())})}),F({id:I([k(),A()])}),{kind:`mutation`,auth:`admin`}),insertMany:V(F({namespace:k().optional(),collection:k(),records:P(oh).readonly()}),F({inserted:A().int()}),{kind:`mutation`,auth:`admin`}),transact:V(F({namespace:k().optional(),guard:lh.optional(),ops:P(ch).readonly()}),F({applied:j(),current:M().optional()}),{kind:`mutation`,auth:`admin`}),update:V(F({namespace:k().optional(),collection:k(),id:k(),data:R(k(),M())}),N(),{kind:`mutation`,auth:`admin`}),delete:V(F({namespace:k().optional(),collection:k(),key:k()}),N(),{kind:`mutation`,auth:`admin`}),deleteWhere:V(F({namespace:k().optional(),collection:k(),filter:nh}),F({deleted:A().int()}),{kind:`mutation`,auth:`admin`}),updateWhere:V(F({namespace:k().optional(),collection:k(),filter:nh,data:R(k(),M())}),F({updated:A().int()}),{kind:`mutation`,auth:`admin`}),count:V(F({namespace:k().optional(),collection:k(),filter:th.optional()}),A(),{auth:`admin`}),aggregate:V(F({namespace:k().optional(),collection:k(),fields:P(rh).readonly(),filter:th.optional()}),ih,{auth:`admin`}),histogram:V(F({namespace:k().optional(),collection:k(),field:k(),bucketSize:A().int().positive(),origin:A().int(),filter:th.optional()}),P(F({bucket:A().int(),count:A().int()})).readonly(),{auth:`admin`}),isEmpty:V(F({namespace:k().optional(),collection:k()}),j(),{auth:`admin`}),declareCollection:V(fh,N(),{kind:`mutation`,auth:`admin`})}},mh=30*6e4,hh=F({databases:P(F({databaseId:sh,livePath:k()}))}),gh=F({name:k(),rows:A().int().nonnegative()}),_h=F({livePath:k(),snapshotPath:k(),sizeBytes:A().int().nonnegative(),pageCount:A().int().nonnegative(),pageSize:A().int().positive(),tables:P(gh),copyMs:A().nonnegative(),verifyMs:A().nonnegative(),takenAt:A()}),vh=_h.extend({databaseId:sh}),yh=F({databaseId:sh}),bh=_h.extend({livePath:k(),snapshotPath:k(),databaseId:sh.optional()}),xh={name:`database-snapshot`,scope:`system`,mode:`singleton`,internal:!0,methods:{listDatabases:V(F({}),hh,{auth:`admin`}),writeSnapshot:V(yh,vh,{kind:`mutation`,auth:`admin`,timeoutMs:mh})}},Sh=F({subId:k(),displayName:k(),description:k().optional(),kind:k(),triggerSupported:j(),restoreSupported:j()}).extend({id:k(),addonId:k(),enabled:j(),retentionCount:A(),label:k().optional(),lastSuccessAt:A().optional(),lastSuccessSizeBytes:A().optional(),cron:k().optional(),nextRunAt:A().optional(),lastAttemptAt:A().optional(),lastError:k().optional()}),Ch=F({scheme:k(),keyId:k()}),wh=F({enabled:j(),active:F({keyId:k(),publicKey:k(),createdAt:A()}).nullable(),keys:P(F({keyId:k(),createdAt:A(),retiredAt:A().nullable()})).readonly()}),Th=F({id:k(),filename:k(),createdAt:A(),sizeBytes:A(),label:k().optional(),locations:P(k()).readonly(),encryption:Ch.optional(),databases:P(sh).readonly().optional()}),Eh=F({id:k(),destinationId:k().optional(),label:k().optional(),createdAt:A(),sizeBytes:A(),locations:P(k()).optional(),encryption:Ch.optional()}),Dh=F({path:k(),kind:z([`file`,`dir`,`symlink`]),sizeBytes:A(),mtime:A()}),Oh=F({archiveVersion:B(1),createdAt:A(),dataDir:k(),locations:P(k()),entries:P(Dh),totalBytes:A(),totalFiles:A(),sqliteSnapshots:P(bh).optional(),omittedDatabases:P(sh).optional()}),kh=F({name:k(),sizeBytes:A(),fileCount:A(),present:j()}),Ah=z([`queued`,`running`,`succeeded`,`failed`,`cancelled`]),jh=z([`queued`,`building`,`uploading`,`done`]),Mh=F({id:k(),state:Ah,phase:jh,destinationIds:P(k()).readonly(),label:k().optional(),requestedAt:A(),startedAt:A().optional(),finishedAt:A().optional(),stagedBytes:A(),archiveSizeBytes:A().optional(),uploadedBytes:A(),completedDestinationIds:P(k()).readonly(),failedDestinationIds:P(k()).readonly(),error:k().optional(),queuePosition:A().int().min(1).optional()}),Nh=F({runId:k(),queued:j(),joined:j(),cancelled:j(),entries:P(Eh).readonly()}),Ph=F({id:k(),label:k(),cron:k(),enabled:j(),locationIds:P(k()).readonly(),retentionCount:A().int().min(1).max(1e3),dataSources:P(k()).readonly().optional(),databases:P(sh).readonly().optional(),lastAttemptAt:A().optional(),lastSuccessAt:A().optional(),lastError:k().optional(),nextRunAt:A().optional()}),Fh={name:`backup`,scope:`system`,mode:`singleton`,methods:{listDestinations:V(N(),P(Sh).readonly(),{auth:`admin`}),trigger:V(F({destinations:P(k()).optional(),locations:P(k()).optional(),label:k().optional(),retentionCount:A().int().min(1).max(1e3).optional(),databases:P(sh).optional()}).optional(),Nh,{kind:`mutation`,auth:`admin`}),listRuns:V(N(),P(Mh).readonly(),{auth:`admin`}),cancel:V(F({runId:k()}),F({cancelled:j()}),{kind:`mutation`,auth:`admin`}),list:V(N(),P(Eh).readonly(),{auth:`admin`}),listLocations:V(N(),P(kh).readonly(),{auth:`admin`}),getEntries:V(F({destinationId:k(),backupId:k()}),Oh.nullable(),{auth:`admin`}),restore:V(F({destinationId:k(),backupId:k(),locations:P(k()).optional(),backupSecretKey:k().optional()}),N(),{kind:`mutation`,auth:`admin`}),getEncryption:V(N(),wh,{auth:`admin`}),setupEncryption:V(F({}),F({keyId:k(),secretKey:k(),publicKey:k(),createdAt:A(),replacedKeyId:k().nullable()}),{kind:`mutation`,auth:`admin`}),disableEncryption:V(F({}),F({disabledKeyId:k().nullable()}),{kind:`mutation`,auth:`admin`}),checkBackupKey:V(F({backupSecretKey:k()}),F({valid:j(),keyId:k().nullable(),known:j(),active:j(),error:k().optional()}),{kind:`mutation`,auth:`admin`}),delete:V(F({destinationId:k(),backupId:k()}),N(),{kind:`mutation`,auth:`admin`}),listArchives:V(F({destinationId:k()}),P(Th).readonly(),{auth:`admin`}),upsertDestinationPolicy:V(F({locationId:k(),enabled:j(),retentionCount:A().int().min(1).max(1e3),label:k().optional()}),N(),{kind:`mutation`,auth:`admin`}),previewSchedule:V(F({cron:k(),count:A().int().min(1).max(20).optional()}),F({ok:j(),error:k().optional(),nextRuns:P(A()).readonly()})),listSchedules:V(N(),P(Ph).readonly(),{auth:`admin`}),listAvailableDatabases:V(N(),F({answered:j(),databases:P(sh).readonly()}),{auth:`admin`}),upsertSchedule:V(F({id:k().optional(),label:k(),cron:k(),enabled:j(),locationIds:P(k()).readonly(),retentionCount:A().int().min(1).max(1e3),dataSources:P(k()).readonly().optional(),databases:P(sh).readonly().optional()}),Ph,{kind:`mutation`,auth:`admin`}),deleteSchedule:V(F({id:k()}),N(),{kind:`mutation`,auth:`admin`})}},Ih=z([`connected`,`disconnected`,`connecting`,`auth-failed`,`unreachable`,`error`]),Lh=F({id:k(),addonId:k(),name:k(),kind:k(),status:Ih,info:R(k(),M()),lastCheckedAt:A().nullable(),error:k().nullable()}),Rh=F({brokerCount:A().int().nonnegative(),connectedCount:A().int().nonnegative()}),zh=F({addonId:k(),kinds:P(F({kind:k(),label:k(),interactiveConnectPath:k().min(1).optional(),interactiveDisconnectPath:k().min(1).optional()}))}),Bh=F({kind:k().optional()}),Vh=F({id:k()}),Hh=F({kind:k().min(1),name:k().min(1),id:k().min(1).optional(),settings:R(k(),M())}),Uh=F({id:k()}),Wh=F({id:k()}),Gh=L(`ok`,[F({ok:B(!0),latencyMs:A().nonnegative()}),F({ok:B(!1),error:k()})]),Kh=R(k(),M()),nee=F({kind:k()}),ree=F({kind:k(),settings:Kh}),iee=L(`ok`,[F({ok:B(!0),latencyMs:A().nonnegative().optional()}).strict(),F({ok:B(!1),error:k()})]),aee=M().nullable(),oee=F({brokerId:k(),target:R(k(),M()),payload:M().optional()}),see=F({brokerId:k(),filter:R(k(),M())}),cee=F({subscriptionId:k()}),lee=F({brokerId:k(),subscriptionId:k()}),uee=F({brokerId:k(),key:k()}),dee={name:`broker`,scope:`system`,mode:`collection`,providerKind:`broker`,status:{schema:Rh,kind:`poll`},methods:{list:V(Bh,P(Lh)),get:V(Vh,Lh.nullable()),listProviders:V(N(),P(zh),{auth:`admin`}),add:V(Hh,Uh,{kind:`mutation`,auth:`admin`}),remove:V(Wh,N(),{kind:`mutation`,auth:`admin`}),testConnection:V(Vh,Gh,{kind:`mutation`,auth:`admin`}),getSettings:V(Vh,Kh.nullable(),{auth:`admin`}),setSettings:V(F({id:k(),settings:Kh}),N(),{kind:`mutation`,auth:`admin`}),getBrokerConfig:V(Vh,Kh.nullable(),{auth:`admin`}),getSettingsSchema:V(nee,aee,{auth:`admin`}),testSettings:V(ree,iee,{kind:`mutation`,auth:`admin`}),publish:V(oee,M(),{kind:`mutation`,auth:`admin`}),subscribe:V(see,cee,{kind:`mutation`,auth:`admin`}),unsubscribe:V(lee,N(),{kind:`mutation`,auth:`admin`}),getState:V(uee,M().nullable(),{auth:`admin`}),getStatus:V(N(),Rh)}},fee={name:`camera-pipeline-config`,scope:`device`,mode:`singleton`,kind:`wrapper`,defaultActive:!0,deviceTypes:[U.Camera],exposesDeviceSettings:!0,methods:{}},pee=z([`webrtc`,`hls`,`mjpeg`,`rtsp`]),qh=z([`mp4`,`gif`]),mee=F({kind:qh,handle:k(),nodeId:k(),mime:k(),bytes:A().int(),width:A().int(),height:A().int()}),hee=F({fromTs:A(),toTs:A(),packets:A().int()}),gee=F({media:P(mee).readonly(),coverage:hee,profile:Al,video:z([`copy`,`encode`])}),Jh=F({brokerId:k(),url:k(),mutedUrl:k(),enabled:j(),codec:k().optional(),resolution:F({width:A().int().positive(),height:A().int().positive()}).optional()}),Yh=F({sessionId:k(),remoteAddr:k(),userAgent:k().nullish(),playing:j(),muted:j(),connectedAt:A(),lastRtpAt:A(),bytesSent:A()}),Xh=F({tag:k(),subscribedAt:A(),chunksDelivered:A()}),Zh=F({kind:z([`alexa`,`homekit`,`webrtc-browser`,`webrtc-mobile`,`webrtc-whep`,`rtsp-listen`,`derived-broker`,`recording`,`pipeline`,`snapshot`,`warmup`,`unknown`]),label:k().optional(),media:z([`audio`,`video`,`both`]).optional(),targetCodec:k().optional(),transport:z([`passthrough`,`repacketize`,`transcode`]).optional(),remoteAddr:k().optional(),userAgent:k().optional(),userId:k().optional(),sessionId:k().optional(),extra:R(k(),k()).optional()}).readonly(),Qh=F({id:k(),channel:z([`annexb`,`rtp`]),attribution:Zh,subscribedAt:A(),packetsDelivered:A()}),$h=F({rtsp:P(Yh).readonly(),audio:P(Xh).readonly(),encoded:P(Qh).readonly(),pipeClients:A(),encodedSubscribers:A()}),eg=F({deviceId:A().int().nonnegative(),viewers:A().int().positive()});z([`reconnecting`,`sleeping`,`offline`,`disabled`,`waking`]);var tg=z([`h264`,`h265`,`copy`]),ng=z([`aac`,`opus`,`pcmu`,`copy`,`none`]),rg=F({deviceId:A().int().nonnegative(),video:tg,audio:ng.optional(),profile:Al.optional(),targetResolution:F({width:A().int().positive(),height:A().int().positive()}).optional(),outputArgs:P(k()).optional(),audioEgress:j().optional(),hostname:k().optional(),tag:k().optional()}),ig=F({url:k(),sentryUrl:k().nullable().optional(),videoCodec:z([`H264`,`H265`]),audioCodec:k(),resolution:F({width:A().int().positive(),height:A().int().positive()}),transcoded:j(),encoder:k(),pipelineKey:k()}),ag=fd.omit({inputArgs:!0,outputArgs:!0}),og=z([`tight`,`relaxed`]),sg=F({deviceId:A().int().nonnegative(),source:L(`kind`,[F({kind:B(`profile`),profile:Al}),F({kind:B(`cam-stream`),camStreamId:k().min(1)})]),encode:ag,rateControl:og.optional(),bitstreamFilter:z([`dump_extra`,`h264_mp4toannexb`,`hevc_mp4toannexb`]).optional(),publishLocally:j().optional(),pixelFormat:z([`yuv420p`,`nv12`]).optional(),decodeHwAccel:z([`auto`,`none`,`videotoolbox`,`vaapi`,`qsv`,`cuda`]).optional(),hostname:k().optional(),tag:k().optional()}),cg=F({url:k(),pipelineKey:k(),videoCodec:z([`H264`,`H265`]),resolution:F({width:A().int().positive(),height:A().int().positive()}),transcoded:j(),encoder:k(),decodeHwAccel:k().nullable(),camStreamId:k().nullable()}),lg={name:`stream-broker`,scope:`system`,mode:`singleton`,exposesDeviceSettings:!0,methods:{reportStreamSignal:V(F({deviceId:A().int().nonnegative(),code:k().min(1),at:A().optional()}),F({accepted:j(),reason:z([`woke`,`hold-extended`,`not-enabled`,`no-consumer`,`unknown-code`])}),{kind:`mutation`}),publishCameraStream:V(F({deviceId:A().int().nonnegative(),camStreamId:k().min(1),kind:Ml,url:k().optional(),codec:k().optional(),resolution:Nl.optional(),fps:A().positive().optional(),label:k().optional(),deviceFeatures:P(k()).optional(),autoEligible:j().optional(),profileHint:Al.optional(),metadata:R(k(),M()).optional(),sourceCamStreamId:k().min(1).optional(),encodeProfile:fd.optional()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),retractCameraStream:V(F({deviceId:A().int().nonnegative(),camStreamId:k().min(1)}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),assignProfile:V(F({deviceId:A().int().nonnegative(),profile:Al,camStreamId:k().min(1)}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),unassignProfile:V(F({deviceId:A().int().nonnegative(),profile:Al}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),forgetDeviceHardware:V(F({deviceId:A().int().nonnegative()}),F({derivedStreamsDeleted:P(k()).readonly(),assignmentsPurged:j(),probeSnapshotsDropped:A().int().nonnegative(),rtspTokenRowsDeleted:A().int().nonnegative()}),{kind:`mutation`,auth:`admin`}),renderPreBufferClip:V(F({deviceId:A(),profile:Al.optional(),aroundMs:A(),preRollSec:A().min(0).max(20).default(3),postRollSec:A().min(0).max(20).default(5),format:z([`gif`,`mp4`]).default(`gif`),maxWidth:A().int().min(120).max(1920).default(480),fps:A().int().min(1).max(15).default(5),speed:A().min(1).max(8).default(2)}),F({base64:k(),mime:k(),bytes:A().int(),profile:Al,durationMs:A()}),{kind:`mutation`,auth:`admin`}),produceEventMedia:V(F({deviceId:A(),profile:Al.optional(),aroundMs:A(),preSeconds:A().min(0).max(20).default(4),postSeconds:A().min(0).max(20).default(6),kinds:P(qh).min(1).default([`mp4`]),gifMaxWidth:A().int().min(120).max(1280).default(640),gifFps:A().int().min(1).max(15).default(12),gifSpeed:A().min(1).max(8).default(4),speed:A().min(1).max(8).default(4)}),gee,{kind:`mutation`,auth:`admin`}),fetchEventMedia:V(F({handle:k()}),F({base64:k(),mime:k(),bytes:A().int()}).nullable(),{kind:`mutation`,auth:`admin`}),listAllCameraStreams:V(N(),P(Pl).readonly()),listAllProfileSlots:V(N(),P(Il).readonly()),getBrokerStats:V(F({brokerId:k()}),Ul),probeStream:V(F({brokerId:k()}),F({probed:j(),summary:k()}),{kind:`mutation`,auth:`admin`}),listClients:V(F({brokerId:k()}),$h),getLiveViewerCounts:V(N(),P(eg).readonly()),killClient:V(F({brokerId:k(),channel:z([`rtsp`,`audio`]),handle:k()}),F({killed:j()}),{kind:`mutation`,auth:`admin`}),restartProfile:V(F({deviceId:A().int().nonnegative(),profile:Al}),F({success:j()}),{kind:`mutation`,auth:`admin`}),getStreamUrl:V(F({streamId:k(),format:pee}),F({url:k()})),getStreamWithCodec:V(rg,ig,{kind:`mutation`,auth:`admin`}),releaseStreamWithCodec:V(F({pipelineKey:k()}),F({released:j(),refcount:A().int().nonnegative()}),{kind:`mutation`,auth:`admin`}),acquireEgressTranscode:V(sg,cg,{kind:`mutation`,auth:`admin`}),releaseEgressTranscode:V(F({pipelineKey:k()}),F({released:j(),refcount:A().int().nonnegative()}),{kind:`mutation`,auth:`admin`}),subscribeAudioChunks:V(Vl,Hl,{kind:`mutation`}),pullAudioChunks:V(F({subscriptionId:k(),maxCount:A().int().positive().default(8)}),P(Bl).readonly()),unsubscribeAudioChunks:V(F({subscriptionId:k()}),F({released:j()}),{kind:`mutation`}),setPreBufferDuration:V(F({brokerId:k(),seconds:A().min(0).max(30)}),N(),{kind:`mutation`,auth:`admin`}),getPreBufferInfo:V(F({brokerId:k()}),F({configuredSec:A(),bufferedMs:A(),packetCount:A()})),getRtspPort:V(N(),A()),getAllRtspEntries:V(F({hostname:k().optional()}),P(Jh).readonly()),getRtspEntry:V(F({brokerId:k(),hostname:k().optional()}),Jh.nullable()),regenerateRtspToken:V(F({brokerId:k()}),k().nullable(),{kind:`mutation`,auth:`admin`}),setRtspEnabled:V(F({brokerId:k(),enabled:j()}),N(),{kind:`mutation`,auth:`admin`}),isRtspEnabled:V(F({brokerId:k()}),j()),getDeviceAudioMute:V(F({deviceId:A().int()}),F({muted:j(),appliedBrokers:A().int().nonnegative()})),setDeviceAudioMute:V(F({deviceId:A().int(),muted:j()}),F({muted:j(),appliedBrokers:A().int().nonnegative()}),{kind:`mutation`,auth:`admin`})},events:{onCamStreamDemand:Yl(F({deviceId:A().int().nonnegative(),camStreamId:k(),profile:Al})),onCamStreamIdle:Yl(F({deviceId:A().int().nonnegative(),camStreamId:k()})),onRequestStreamSourceRefresh:Yl(F({deviceId:A().int().nonnegative(),camStreamId:k(),brokerId:k()}))}},ug=z([`h264`,`h265`,`hevc`,`av1`,`mjpeg`,`vp8`,`vp9`]),dg=F({acceptCodecs:P(ug).readonly().optional(),minHeight:A().int().positive().optional(),maxHeight:A().int().positive().optional(),minWidth:A().int().positive().optional(),excludeDerived:j().optional(),requireSiblingCodec:P(ug).readonly().optional(),allowTranscode:j().optional(),requireProfileBound:j().optional()}).readonly(),fg=F({preferredProviders:P(k()).readonly().optional(),resolutionPreference:z([`highest`,`lowest`]).optional(),targetHeight:A().int().positive().optional()}).readonly(),pg=F({camStreamId:k(),codec:k().optional(),resolution:Nl.optional(),transcodes:j(),reason:k(),profile:Al.optional(),brokerId:k().optional(),url:k().optional(),fps:A().positive().optional(),fpsSource:z([`published`,`measured`]).optional()}),mg={name:`camera-streams`,scope:`device`,mode:`singleton`,kind:`wrapper`,defaultActive:!0,deviceTypes:[U.Camera],methods:{getCameraStreams:V(F({deviceId:A().int().nonnegative()}),P(Pl).readonly()),getBrokerStreams:V(F({deviceId:A().int().nonnegative()}),P(Il).readonly()),getRtspEntries:V(F({deviceId:A().int().nonnegative(),hostname:k().optional()}),P(Jh).readonly()),getProfileRtspEntries:V(F({deviceId:A().int().nonnegative(),hostname:k().optional()}),P(Wl).readonly()),pickStream:V(F({deviceId:A().int().nonnegative(),requirements:dg,preferences:fg.optional()}),pg.nullable())},events:{onCamStreamsChanged:Yl(F({deviceId:A().int().nonnegative(),camStreams:P(Pl).readonly()})),onProfileSlotsChanged:Yl(F({deviceId:A().int().nonnegative(),profileSlots:P(Il).readonly()}))},runtimeState:F({online:j(),slotStatuses:F({high:Fl.optional(),mid:Fl.optional(),low:Fl.optional()}),slotErrors:F({high:k().optional(),mid:k().optional(),low:k().optional()}),lastChangedAt:A()}),durability:`session`,history:`none`};T.DoorbellOnPressed;var hg=F({featureIndex:A().int().nonnegative(),cap:k(),eventName:k(),category:z(T),stateField:k(),fieldKey:k()}),gg=F({code:z([`reserved-variant`,`unknown-capability`,`not-composable`,`wrong-device-type`,`has-commands`,`unknown-field`,`nested-field`,`missing-field`,`kind-mismatch`,`may-be-null`,`source-missing`,`source-unreadable`,`source-capability-missing`,`source-field-unknown`,`expression-invalid`,`cycle`,`duplicate-target`,`not-item-array`,`item-field-reserved`,`target-missing`,`target-unreadable`,`not-replaceable`]),path:k(),message:k()}),_g=z([`string`,`number`,`boolean`,`enum`]),vg=z([`null`,`offline`,`unknown`,`release`]),yg=z([`derived`,`clock`,`constant`,`accumulator`]),bg=F({arrayPath:k(),key:k(),label:k()}),xg=F({cap:k(),path:k(),item:bg.optional(),featureIndex:A().int().nonnegative(),kind:_g,nullable:j(),required:j(),unavailable:vg,role:yg,source:nd,reads:P(Zu)}),Sg=z([`new`,`add`,`replace`]),Cg=F({featureIndex:A().int().nonnegative(),cap:k(),mode:Sg}),wg=F({ok:j(),problems:P(gg),fields:P(xg),features:P(Cg),events:P(hg)}),Tg=z([`stopped`,`starting`,`running`,`degraded`,`failed`]),Eg=z([`fresh`,`stale`,`unavailable`]),Dg=F({cap:k(),path:k(),item:bg.optional(),state:Eg,value:I([k(),A(),j(),Cc()]),reason:k().optional()}),Og=F({blockId:k(),deviceId:A().nullable(),status:Tg,reason:k().optional(),fields:P(Dg)}),kg=F({id:k().min(1),name:k().min(1).max(120),enabled:j(),updatedAt:A(),composition:sd}),Ag=F({id:k().min(1),name:k().nullable(),error:k()}),jg={name:`composer`,scope:`system`,mode:`singleton`,internal:!0,methods:{applyBlocks:V(F({integrationId:k().nullable(),storeLoaded:j(),blocks:P(kg),restartBlockIds:P(k()),unreadableBlocks:P(Ag)}),F({blocks:P(F({blockId:k(),status:Tg,reason:k().optional()})),acted:j()}),{kind:`mutation`,auth:`admin`}),getStates:V(F({blockIds:P(k())}),F({states:P(Og)}),{auth:`admin`})}},Mg={kind:`fixed`,result:[`number`]},Ng={kind:`fixed`,result:[`boolean`]};Object.freeze({min:Mg,max:Mg,abs:Mg,floor:Mg,ceil:Mg,sqrt:Mg,round:Mg,pow:Mg,clamp:Mg,avg:Mg,sum:Mg,age:Mg,convert:Mg,coalesce:{kind:`coalesce`},any:Ng,all:Ng,within:Ng,latest:{kind:`fixed`,result:[`number`,`null`]},number:{kind:`fixed`,result:[`number`,`null`]},rose:{kind:`fixed`,result:[`number`,`null`]},count:Mg}),`${Ju}`;var Pg=F({path:k(),kind:_g,nullable:j(),required:j(),enumValues:P(k()).optional()}),Fg=F({caps:P(F({cap:k(),fields:P(Pg),itemArray:F({path:k(),keyField:k()}).optional()}))}),Ig=I([B(`hub`),k().min(1)]),Lg=z([`stopped`,`starting`,`running`,`degraded`,`failed`]),Rg=R(k().min(1).max(260),k().max(2e5)),zg=hl(),Bg=F({name:k().min(1).max(120),code:k().max(2e5).optional(),files:Rg.optional(),entry:k().min(1).max(260).optional(),enabled:j(),placement:Ig,integrationId:k().optional(),settingsSchema:zg.optional()}),Vg=Bg.superRefine((e,t)=>{let n=e.entry??`main.ts`;if(e.files!==void 0){e.files[n]===void 0&&t.addIssue({code:`custom`,message:`files must include the entry "${n}"`,path:[`files`]});return}e.code===void 0&&t.addIssue({code:`custom`,message:`code or files is required`,path:[`code`]})}),Hg=L(`kind`,[F({kind:B(`code`)}),F({kind:B(`recipe`),recipe:rm}),F({kind:B(`composition`),composition:sd})]),Ug=F({name:k().min(1).max(120).optional(),enabled:j(),composition:sd}),Wg=F({name:k().min(1).max(120),code:k().max(2e5),files:Rg.optional(),entry:k().min(1).max(260).optional(),enabled:j(),placement:Ig,integrationId:k().optional(),settingsSchema:zg.optional(),id:k(),createdAt:A(),updatedAt:A(),createdBy:k(),status:Lg,lastError:k().optional(),lastChangedAt:A(),source:Hg.optional()}),Gg=F({block:Wg,state:L(`kind`,[F({kind:B(`answered`),state:Og.nullable()}),F({kind:B(`unreachable`),error:k()})])}),Kg=F({state:B(`not-loaded`),reason:k()}),qg=L(`state`,[F({state:B(`loaded`),views:P(Gg)}),Kg]),Jg=L(`state`,[F({state:B(`loaded`),view:Gg.nullable()}),Kg]),Yg=L(`state`,[F({state:B(`loaded`),view:Gg.nullable()}),Kg]),Xg=F({ok:j(),error:k().optional(),line:A().optional(),column:A().optional()}),Zg=F({code:k().optional(),files:Rg.optional(),entry:k().min(1).max(260).optional()}).superRefine((e,t)=>{if(e.files!==void 0){let n=e.entry??`main.ts`;e.files[n]===void 0&&t.addIssue({code:`custom`,message:`files must include the entry "${n}"`,path:[`files`]});return}e.code===void 0&&t.addIssue({code:`custom`,message:`code or files is required`,path:[`code`]})}),Qg={name:`core-blocks`,scope:`system`,mode:`singleton`,methods:{list:V(F({}),F({blocks:P(Wg)}),{auth:`admin`}),get:V(F({blockId:k()}),F({block:Wg.nullable()}),{auth:`admin`}),create:V(F({block:Vg}),F({block:Wg}),{kind:`mutation`,auth:`admin`,caller:`required`}),update:V(F({blockId:k(),block:Bg.partial()}),F({block:Wg}),{kind:`mutation`,auth:`admin`,caller:`required`}),delete:V(F({blockId:k()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),setEnabled:V(F({blockId:k(),enabled:j()}),F({block:Wg}),{kind:`mutation`,auth:`admin`}),restart:V(F({blockId:k()}),F({block:Wg}),{kind:`mutation`,auth:`admin`}),compile:V(Zg,Xg,{kind:`mutation`,auth:`admin`}),getBlockSettings:V(F({blockId:k()}),hm.nullable(),{auth:`admin`}),updateBlockSettings:V(F({blockId:k(),patch:gm}),_m,{kind:`mutation`,auth:`admin`}),getTypeDefs:V(F({}),F({libs:P(F({filePath:k(),content:k()}))}),{auth:`admin`}),createComposition:V(F({block:Ug}),F({block:Wg}),{kind:`mutation`,auth:`admin`,caller:`required`}),updateComposition:V(F({blockId:k(),expectedUpdatedAt:A(),block:Ug.partial()}),F({block:Wg}),{kind:`mutation`,auth:`admin`,caller:`required`}),getComposition:V(F({blockId:k()}),Jg,{auth:`admin`}),listCompositions:V(F({}),qg,{auth:`admin`}),getCustomization:V(F({addonId:k().min(1),stableId:k().min(1)}),Yg,{auth:`admin`}),listComposableCaps:V(F({deviceType:z(U)}),Fg,{auth:`admin`}),validateComposition:V(F({composition:sd,blockId:k().optional()}),wg,{kind:`mutation`,auth:`admin`,access:`view`})}},$g=F({stepId:k(),entry:Ip}),e_=F({path:k().min(1),bytes:A().int().nonnegative(),sha256:k().regex(/^[0-9a-f]{64}$/)}),t_=F({addonId:k(),stepId:k().min(1),entries:P(Ip).min(1).max(4),bundle:F({ticket:kl,bytes:A().int().positive(),sha256:k().regex(/^[0-9a-f]{64}$/)}),files:P(e_).min(1).max(64),distribute:j()}),n_=L(`kind`,[F({kind:B(`imported`),modelIds:P(k()).readonly(),distributed:P(F({modelId:k(),nodeId:k(),format:z(Gl),ok:j(),error:k().optional()})).readonly()}),F({kind:B(`refused`),reason:z([`transfer-failed`,`checksum-mismatch`,`bundle-mismatch`,`invalid-entry`,`id-taken`]),detail:k()})]),r_={name:`custom-model-registry`,scope:`system`,mode:`collection`,internal:!0,methods:{listModels:V(N(),P($g).readonly(),{auth:`admin`}),importModelBundle:V(t_,n_,{kind:`mutation`,auth:`admin`,timeoutMs:30*6e4})}},i_=F({engineId:k(),kind:z([`relational`,`vector`]),displayName:k()}),a_={name:`data-store-provider`,scope:`system`,mode:`collection`,internal:!0,methods:{getEngineInfo:V(N(),i_,{auth:`admin`}),get:V(F({namespace:k().optional(),collection:k(),key:k()}),M(),{auth:`admin`}),set:V(F({namespace:k().optional(),collection:k(),key:k(),value:M()}),N(),{kind:`mutation`,auth:`admin`}),query:V(F({namespace:k().optional(),collection:k(),filter:th.optional(),columns:P(k()).readonly().optional()}),P(ah).readonly(),{auth:`admin`}),insert:V(F({namespace:k().optional(),collection:k(),record:F({id:k().optional(),data:R(k(),M())})}),F({id:I([k(),A()])}),{kind:`mutation`,auth:`admin`}),upsert:V(F({namespace:k().optional(),collection:k(),conflict:P(k()).readonly(),record:oh}),F({id:I([k(),A()])}),{kind:`mutation`,auth:`admin`}),upsertMany:V(F({namespace:k().optional(),collection:k(),conflict:P(k()).readonly(),records:P(oh).readonly()}),F({upserted:A().int()}),{kind:`mutation`,auth:`admin`}),insertMany:V(F({namespace:k().optional(),collection:k(),records:P(oh).readonly()}),F({inserted:A().int()}),{kind:`mutation`,auth:`admin`}),transact:V(F({namespace:k().optional(),guard:lh.optional(),ops:P(ch).readonly()}),F({applied:j(),current:M().optional()}),{kind:`mutation`,auth:`admin`}),update:V(F({namespace:k().optional(),collection:k(),id:k(),data:R(k(),M())}),N(),{kind:`mutation`,auth:`admin`}),delete:V(F({namespace:k().optional(),collection:k(),key:k()}),N(),{kind:`mutation`,auth:`admin`}),deleteWhere:V(F({namespace:k().optional(),collection:k(),filter:nh}),F({deleted:A().int()}),{kind:`mutation`,auth:`admin`}),updateWhere:V(F({namespace:k().optional(),collection:k(),filter:nh,data:R(k(),M())}),F({updated:A().int()}),{kind:`mutation`,auth:`admin`}),count:V(F({namespace:k().optional(),collection:k(),filter:th.optional()}),A(),{auth:`admin`}),aggregate:V(F({namespace:k().optional(),collection:k(),fields:P(rh).readonly(),filter:th.optional()}),ih,{auth:`admin`}),histogram:V(F({namespace:k().optional(),collection:k(),field:k(),bucketSize:A().int().positive(),origin:A().int(),filter:th.optional()}),P(F({bucket:A().int(),count:A().int()})).readonly(),{auth:`admin`}),isEmpty:V(F({namespace:k().optional(),collection:k()}),j(),{auth:`admin`}),declareCollection:V(fh,N(),{kind:`mutation`,auth:`admin`})}},o_=z([`key-missing`,`wrong-key`,`key-file-unreadable`,`store-unavailable`,`not-initialized`,`decrypt-failed`]),s_=L(`state`,[F({state:B(`ready`)}),F({state:B(`locked`),reason:o_})]),c_=L(`kind`,[F({kind:B(`value`),value:k(),version:A().int()}),F({kind:B(`missing`)}),F({kind:B(`unavailable`),reason:o_}),F({kind:B(`forbidden`)})]),l_=R(k(),c_),u_=F({ref:k(),owner:k(),scope:k(),fieldPath:k(),version:A().int(),createdAt:A(),updatedAt:A(),updatedBy:k(),lastReadAt:A().nullable()}),d_=P(k().min(1)).max(512),f_={name:`keychain`,scope:`system`,mode:`singleton`,internal:!0,methods:{put:V(F({ref:k().min(1),value:k().min(1)}),F({ref:k(),version:A().int()}),{kind:`mutation`,auth:`admin`}),resolve:V(F({refs:d_}),l_,{auth:`admin`}),delete:V(F({refs:d_}),F({deleted:A().int()}),{kind:`mutation`,auth:`admin`}),listMeta:V(F({}),P(u_).readonly(),{auth:`admin`}),getState:V(F({}),s_,{auth:`admin`})}},p_=L(`kind`,[F({kind:B(`device`),deviceId:A().int()}),F({kind:B(`node`),nodeId:k().min(1)})]),m_=z([`gauge`,`counter`,`boolean`]),h_=z([`raw`,`5m`,`1h`,`1d`]),g_=z([`undeclared`,`not-owner`,`opted-out`,`not-a-real-device`,`rate`,`ingest-mismatch`,`out-of-range`]),__=F({key:k(),reason:g_,count:A().int()}),v_=F({accepted:A().int(),refused:P(__).readonly()}),y_=F({key:k(),scope:k(),kind:m_,unit:k().nullable(),displayName:k(),source:z([`cap`,`addon`]),firstTs:A(),lastTs:A()}),b_=F({t:A(),samples:A().int(),mean:A().nullable(),twMean:A().nullable(),min:A(),max:A(),last:A().nullable()}),x_=F({scope:k(),before:F({t:A(),value:A().nullable()}).nullable(),points:P(b_).readonly()}),S_={key:k(),scope:k().optional(),from:A(),to:A(),resolution:I([h_,B(`auto`)]).default(`auto`),maxPoints:A().int().positive().max(5e3).default(1e3)},C_=F({resolution:h_,series:P(x_).readonly(),truncated:j()}),w_=F({tier:h_,rows:A().int().nullable(),approxBytes:A().nullable(),countedAt:A().nullable()}),T_=F({startedAt:A(),ready:j(),series:A().int(),metrics:A().int(),optedOutDevices:A().int(),tiers:P(w_).readonly(),capture:F({eventsSeen:A().int(),pointsEmitted:A().int(),pointsWritten:A().int(),pointsDropped:A().int(),bufferDepth:A().int(),trailingEmitted:A().int(),reconciledPoints:A().int(),reconcileRuns:A().int(),reconcileFailures:A().int(),lastReconcileAt:A().nullable(),lastFlushAt:A().nullable(),flushFailures:A().int(),skipped:R(k(),A().int())}),ingest:F({accepted:A().int(),refused:R(k(),A().int())}),rollup:F({last5mAt:A().nullable(),last1hAt:A().nullable(),last1dAt:A().nullable(),errors:A().int(),dirty5m:A().int(),dirty1h:A().int(),dirty1d:A().int()}),retention:F({lastRunAt:A().nullable(),deleted:R(k(),A().int()),purgedSeries:A().int()}),directory:F({devices:A().int(),lastRefreshAt:A().nullable()})}),E_={name:`device-history`,scope:`system`,mode:`singleton`,methods:{listSeries:V(F({deviceId:A().int()}),P(y_).readonly()),listNodeSeries:V(F({nodeId:k().min(1)}),P(y_).readonly(),{auth:`admin`}),query:V(F({deviceId:A().int(),...S_}),C_),queryNode:V(F({nodeId:k().min(1),...S_}),C_,{auth:`admin`}),declareSeries:V(F({name:k().regex(/^[a-z0-9-]+$/),subjectKind:z([`device`,`node`]),kind:m_,unit:k().optional(),displayName:k().min(1),ingest:z([`points`,`buckets`])}),F({key:k()}),{kind:`mutation`,auth:`admin`}),record:V(F({points:P(F({key:k(),subject:p_,scope:k().default(``),ts:A(),value:A()})).max(5e3)}),v_,{kind:`mutation`,auth:`admin`}),recordBuckets:V(F({buckets:P(F({key:k(),subject:p_,scope:k().default(``),bucketStart:A(),samples:A().int().positive(),sum:A(),min:A(),max:A(),last:A().nullable(),lastTs:A().nullable()})).max(5e3)}),v_,{kind:`mutation`,auth:`admin`}),getDeviceEnabled:V(F({deviceId:A().int()}),F({enabled:j()})),setDeviceEnabled:V(F({deviceId:A().int(),enabled:j()}),F({enabled:j()}),{kind:`mutation`,auth:`admin`}),getStatus:V(F({}),T_,{auth:`admin`})}},D_=L(`state`,[F({state:B(`absent`)}),F({state:B(`ready`),subject:k(),fingerprintSha256:k(),validTo:k()}),F({state:B(`unavailable`),reason:k()})]),O_=F({selfEnrollment:z([`allowed`,`disabled`])}),k_={name:`device-credentials`,scope:`system`,mode:`singleton`,methods:{listDeviceCredentials:V(F({userId:k().min(1).optional(),includeRevoked:j().default(!1)}),P(Yp).readonly(),{auth:`admin`}),startEnrollment:V(F({userId:k().min(1),deviceName:k().min(1).max(80)}),Xp,{kind:`mutation`,auth:`admin`,caller:`required`}),revokeDeviceCredential:V(F({id:k().min(1)}),F({revoked:j(),sessionsEnded:A().int(),status:Jp}),{kind:`mutation`,auth:`admin`,caller:`required`}),getDeviceCertificateSettings:V(F({}),O_,{auth:`admin`}),setDeviceCertificateSettings:V(O_,O_,{kind:`mutation`,auth:`admin`}),deleteDeviceCredential:V(F({id:k().min(1)}),F({result:z([`deleted`,`live`,`unknown`])}),{kind:`mutation`,auth:`admin`,caller:`required`}),getDeviceCaStatus:V(F({}),D_,{auth:`admin`}),renameDeviceCredential:V(F({id:k().min(1),deviceName:k().min(1).max(80)}),F({renamed:j()}),{kind:`mutation`,auth:`admin`})}},A_=F({cn:k(),serial:k(),fingerprintSha256:k(),notBefore:A(),notAfter:A()}),j_=F({fingerprintSha256:k(),issuer:k(),sans:P(k()),notBefore:A(),notAfter:A()}),M_=L(`state`,[F({state:B(`served`),leaf:j_}),F({state:B(`not-issued`),reason:k()})]),N_={name:`node-certificates`,scope:`system`,mode:`singleton`,internal:!0,methods:{getCertificates:V(F({}),F({nodeId:k(),mesh:A_.nullable(),https:M_}),{auth:`admin`}),prepareMeshRenewal:V(F({}),F({csrPem:k()}),{kind:`mutation`,auth:`admin`}),installMeshLeaf:V(F({certPem:k().min(1),caCertPem:k().min(1),confirmWithinMs:A().int().min(1e4).max(6e5)}),F({fingerprintSha256:k(),serial:k()}),{kind:`mutation`,auth:`admin`}),confirmMeshLeaf:V(F({fingerprintSha256:k()}),F({confirmed:j()}),{kind:`mutation`,auth:`admin`}),rollbackMeshLeaf:V(F({}),F({rolledBack:j()}),{kind:`mutation`,auth:`admin`}),prepareHttpsCertificate:V(F({}),F({csrPem:k(),hostnames:P(k()),addresses:P(k()),pinnedCaFingerprintSha256:k().nullable()}),{kind:`mutation`,auth:`admin`}),forgetHub:V(F({}),F({ok:B(!0)}),{kind:`mutation`,auth:`admin`}),installHttpsCertificate:V(F({certPem:k().min(1),caCertPem:k().min(1),caRotation:j().optional()}),j_,{kind:`mutation`,auth:`admin`})},mount:{kind:`skip`}},P_=F({kind:z([`config-file`,`previous-config-file`,`platform`,`default-file`]),path:k().optional(),sharesBackupWithDatabase:j()}),F_=F({id:k(),at:A(),actor:k(),lockedReason:k().nullable(),archived:A().int(),archivedCollection:k().nullable(),archivedKeysCollection:k().nullable(),clearedSettingsKeys:P(k()).readonly(),acknowledgedAt:A().nullable()}),I_=F({keychain:s_,keySource:P_.nullable(),configuredSource:P_,fingerprint:k().nullable(),activeKeyId:k().nullable(),rotationPending:j(),retiredWraps:A().int(),recoveryKeyDownloadedAt:A().nullable(),secretCount:A().int(),lastReset:F_.nullable()}),L_=z([`in-use`,`orphan`,`unknown`]),R_=u_.extend({usage:L_}),z_=z([`put`,`delete`,`reveal`,`rotate-master-key`,`purge-retired-keys`,`download-recovery-key`,`delete-orphans`,`reset`,`acknowledge-reset`,`initialize`]),B_=F({id:k(),at:A(),action:z_,actor:k(),ref:k().nullable(),detail:k().nullable()}),V_=`RESET KEYCHAIN`,H_=z([`jwt-signing-key`]),U_={name:`keychain-admin`,scope:`system`,mode:`singleton`,methods:{status:V(F({}),I_,{auth:`admin`}),listSecrets:V(F({}),P(R_).readonly(),{auth:`admin`}),listAudit:V(F({limit:A().int().min(1).max(500).optional()}),P(B_).readonly(),{auth:`admin`}),reveal:V(F({ref:k().min(1)}),F({value:k(),version:A().int()}),{kind:`mutation`,auth:`admin`,caller:`required`}),setSystemSecret:V(F({name:H_,value:k().min(16)}),F({ref:k(),version:A().int()}),{kind:`mutation`,auth:`admin`,caller:`required`}),deleteOrphans:V(F({refs:P(k().min(1)).max(1e3)}),F({deleted:P(k()).readonly(),kept:P(F({ref:k(),usage:L_})).readonly()}),{kind:`mutation`,auth:`admin`,caller:`required`}),rotateMasterKey:V(F({}),F({fingerprint:k(),keySource:P_}),{kind:`mutation`,auth:`admin`,caller:`required`}),purgeRetiredKeys:V(F({}),F({purged:A().int()}),{kind:`mutation`,auth:`admin`,caller:`required`}),downloadRecoveryKey:V(F({}),F({key:k(),fingerprint:k(),keySource:P_}),{kind:`mutation`,auth:`admin`,caller:`required`}),resetKeychain:V(F({confirm:B(V_)}),F({archivedCollection:k().nullable(),archived:A().int()}),{kind:`mutation`,auth:`admin`,caller:`required`}),resetReport:V(F({}),F({reset:F_.nullable(),pendingReentry:P(u_).readonly()}),{auth:`admin`}),acknowledgeReset:V(F({}),F({acknowledged:j()}),{kind:`mutation`,auth:`admin`,caller:`required`})}},W_={name:`decoder`,scope:`system`,mode:`singleton`,preferredProvider:`decoder-nodeav`,methods:{getInfo:V(N(),F({id:k(),name:k(),hwaccel:k().optional(),probedBestHwaccel:k().optional()})),reprobeHwaccel:V(N(),F({backend:k()}),{kind:`mutation`,auth:`admin`})}},G_={name:`detection-pipeline`,scope:`device`,mode:`singleton`,kind:`wrapper`,defaultActive:!0,deviceTypes:[U.Camera],exposesDeviceSettings:!0,methods:{}},K_=z([`device`,`integration`]),q_=F({url:k(),label:k(),target:K_,host:k()}),J_={name:`device-admin-link`,scope:`device`,deviceNative:!0,mode:`singleton`,methods:{getAdminLink:V(F({deviceId:A().int().nonnegative()}),q_.nullable(),{auth:`admin`})}},Y_=F({id:k(),system:k(),uniqueId:k().optional(),raw:R(k(),M()).optional()});function X_(e){if(e==null)return;let t=e.trim();if(t===``)return;let n=t.toLowerCase();return n===`°c`||n===`c`||n===`celsius`?`°C`:n===`°f`||n===`f`||n===`fahrenheit`?`°F`:n===`k`||n===`kelvin`?`K`:n===`%`||n===`percent`||n===`percentage`?`%`:n===`lx`||n===`lux`?`lx`:n===`hpa`||n===`hectopascal`?`hPa`:n===`kpa`?`kPa`:n===`pa`?`Pa`:n===`mbar`||n===`millibar`?`mbar`:n===`w`||n===`watt`?`W`:n===`kw`||n===`kilowatt`?`kW`:n===`wh`||n===`watt-hour`?`Wh`:n===`kwh`||n===`kilowatt-hour`?`kWh`:n===`v`||n===`volt`?`V`:n===`a`||n===`amp`||n===`ampere`?`A`:n===`ma`||n===`milliampere`?`mA`:n===`va`?`VA`:n===`ppm`?`ppm`:n===`ppb`?`ppb`:n===`µg/m³`||n===`ug/m3`||n===`µg/m3`?`µg/m³`:n===`km/h`||n===`kph`?`km/h`:n===`mph`?`mph`:n===`m/s`?`m/s`:n===`m`?`m`:n===`km`?`km`:n===`kg`?`kg`:n===`g`?`g`:t}var Z_=z([`online`,`sleeping`,`offline`,`unknown`]),Q_=pl(()=>F({childNativeId:k(),name:k(),type:z(U),status:Z_,metadata:F({model:k().optional(),serialNumber:k().optional(),uid:k().optional(),rtspChannel:A().int().nonnegative().optional(),isBattery:j().optional(),isDoorbell:j().optional(),isMultifocal:j().optional(),externalLocation:k().optional(),manufacturer:k().optional(),integration:k().optional()}).default({}),alreadyAdopted:j(),adoptedDeviceId:A().int().nonnegative().nullable(),capabilities:P(k()).readonly().optional(),features:P(k()).readonly().optional(),sourceInfo:Y_.optional(),children:P(Q_).readonly().optional()})),$_=F({discovered:P(Q_),lastDiscoveryAt:A().int().nonnegative().nullable(),lastError:k().nullable()}),ev={name:`device-discovery`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Hub],status:{schema:$_,kind:`poll`},runtimeState:$_.extend({lastFetchedAt:A().int().nonnegative()}),durability:`session`,history:`none`,methods:{listDiscovered:V(F({deviceId:A().int().nonnegative()}),P(Q_).readonly()),refreshDiscovery:V(F({deviceId:A().int().nonnegative()}),P(Q_).readonly(),{kind:`mutation`,auth:`admin`}),adoptDevice:V(F({deviceId:A().int().nonnegative(),childNativeId:k(),name:k().optional()}),F({deviceId:A().int().nonnegative(),stableId:k()}),{kind:`mutation`,auth:`admin`}),releaseDevice:V(F({deviceId:A().int().nonnegative(),childDeviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`admin`})}},tv=F({id:k(),label:k(),isDefault:j().optional()}),nv=F({search:k().optional(),area:k().optional(),manufacturer:k().optional(),adoptedOnly:j().optional(),unadoptedOnly:j().optional()}),rv=F({integrationId:k(),page:A().int().positive().default(1),pageSize:A().int().positive().max(2e4).default(50),filter:k().optional(),filterText:nv.optional()}),iv=F({candidates:P(Q_).readonly(),totalCount:A().int().nonnegative(),page:A().int().positive(),pageSize:A().int().positive()}),av=F({integrationId:k(),childNativeId:k()}),ov=F({lastDiscoveryAt:A().int().nonnegative().nullable(),candidateCount:A().int().nonnegative(),adoptedCount:A().int().nonnegative(),lastError:k().nullable()}),sv=F({name:k().min(1).optional(),hiddenChildIds:P(k()).optional()}),cv=F({integrationId:k(),childNativeIds:P(k()).min(1),filter:k().optional(),importLocations:j().optional(),perCandidate:R(k(),sv).optional()}),lv=F({adopted:P(F({childNativeId:k(),parentDeviceId:A().int().nonnegative(),accessoryDeviceIds:P(A().int().nonnegative()).readonly()})).readonly()}),uv=F({integrationId:k(),camDeviceId:A().int().nonnegative()}),dv=F({camDeviceId:A().int().nonnegative(),resetToSource:j().optional()}),fv=F({changed:j(),rebuiltChildren:A().int().nonnegative(),removedChildren:A().int().nonnegative().optional()}),pv={name:`device-adoption`,scope:`system`,mode:`singleton`,status:{schema:ov,kind:`poll`},methods:{listCandidateFilters:V(F({integrationId:k()}),F({filters:P(tv)}),{auth:`admin`}),listCandidates:V(rv,iv,{auth:`admin`}),getCandidate:V(av,Q_.nullable(),{auth:`admin`}),refresh:V(F({integrationId:k()}),ov,{kind:`mutation`,auth:`admin`}),adopt:V(cv,lv,{kind:`mutation`,auth:`admin`}),release:V(uv,N(),{kind:`mutation`,auth:`admin`}),resync:V(dv,fv,{kind:`mutation`,auth:`admin`})}},mv=z([`unlinked`,`linked`,`error`]),hv=F({label:k(),value:k(),secret:j().optional()}),gv=F({qr:k().optional(),fields:P(hv).readonly().optional(),note:k().optional()}),_v=F({linkState:mv,exposedDeviceCount:A(),error:k().optional(),setup:gv.optional()}),vv=k(),yv=F({deviceId:k(),exposedAs:k().optional(),capabilities:P(k()).optional()}),bv=F({deviceId:k(),capabilities:P(k()).optional()}),xv=F({deviceId:k()}),Sv={name:`device-export`,scope:`system`,mode:`collection`,providerKind:`device-export`,status:{schema:_v,kind:`poll`},exposesDeviceSettings:!0,methods:{getStatus:V(N(),_v),listSupportedDeviceKinds:V(N(),P(vv)),listExposedDevices:V(N(),P(yv)),exposeDevice:V(bv,N(),{kind:`mutation`,auth:`admin`}),unexposeDevice:V(xv,N(),{kind:`mutation`,auth:`admin`})}},Cv=`accessibility.account.animals.arrows.brands.buildings.charts.communication.connectivity.cursors.design.development.devices.emoji.files.finance.food-beverage.gaming.home.layout.mail.math.medical.multimedia.nature.navigation.notifications.people.photography.science.seasons.security.shapes.shopping.social.sports.sustainability.text.time.tools.transportation.travel.weather`.split(`.`),wv=`a-arrow-down.a-arrow-up.a-large-small.accessibility.activity.air-vent.airplay.alarm-clock.alarm-clock-check.alarm-clock-minus.alarm-clock-off.alarm-clock-plus.alarm-smoke.album.align-center-horizontal.align-center-vertical.align-end-horizontal.align-end-vertical.align-horizontal-distribute-center.align-horizontal-distribute-end.align-horizontal-distribute-start.align-horizontal-justify-center.align-horizontal-justify-end.align-horizontal-justify-start.align-horizontal-space-around.align-horizontal-space-between.align-start-horizontal.align-start-vertical.align-vertical-distribute-center.align-vertical-distribute-end.align-vertical-distribute-start.align-vertical-justify-center.align-vertical-justify-end.align-vertical-justify-start.align-vertical-space-around.align-vertical-space-between.ambulance.ampersand.ampersands.amphora.anchor.angry.annoyed.antenna.anvil.aperture.app-window.app-window-mac.apple.archive.archive-restore.archive-x.armchair.arrow-big-down.arrow-big-down-dash.arrow-big-left.arrow-big-left-dash.arrow-big-right.arrow-big-right-dash.arrow-big-up.arrow-big-up-dash.arrow-down.arrow-down-0-1.arrow-down-1-0.arrow-down-a-z.arrow-down-from-line.arrow-down-left.arrow-down-narrow-wide.arrow-down-right.arrow-down-to-dot.arrow-down-to-line.arrow-down-up.arrow-down-wide-narrow.arrow-down-z-a.arrow-left.arrow-left-from-line.arrow-left-right.arrow-left-to-line.arrow-right.arrow-right-from-line.arrow-right-left.arrow-right-to-line.arrow-up.arrow-up-0-1.arrow-up-1-0.arrow-up-a-z.arrow-up-down.arrow-up-from-dot.arrow-up-from-line.arrow-up-left.arrow-up-narrow-wide.arrow-up-right.arrow-up-to-line.arrow-up-wide-narrow.arrow-up-z-a.arrows-up-from-line.asterisk.at-sign.atom.audio-lines.audio-waveform.award.axe.axis-3d.baby.backpack.badge.badge-alert.badge-cent.badge-check.badge-dollar-sign.badge-euro.badge-indian-rupee.badge-info.badge-japanese-yen.badge-minus.badge-percent.badge-plus.badge-pound-sterling.badge-question-mark.badge-russian-ruble.badge-swiss-franc.badge-turkish-lira.badge-x.baggage-claim.balloon.ban.banana.bandage.banknote.banknote-arrow-down.banknote-arrow-up.banknote-x.barcode.barrel.baseline.bath.battery.battery-charging.battery-full.battery-low.battery-medium.battery-plus.battery-warning.beaker.bean.bean-off.bed.bed-double.bed-single.beef.beer.beer-off.bell.bell-dot.bell-electric.bell-minus.bell-off.bell-plus.bell-ring.between-horizontal-end.between-horizontal-start.between-vertical-end.between-vertical-start.biceps-flexed.bike.binary.binoculars.biohazard.bird.birdhouse.bitcoin.blend.blinds.blocks.bluetooth.bluetooth-connected.bluetooth-off.bluetooth-searching.bold.bolt.bomb.bone.book.book-a.book-alert.book-audio.book-check.book-copy.book-dashed.book-down.book-headphones.book-heart.book-image.book-key.book-lock.book-marked.book-minus.book-open.book-open-check.book-open-text.book-plus.book-search.book-text.book-type.book-up.book-up-2.book-user.book-x.bookmark.bookmark-check.bookmark-minus.bookmark-plus.bookmark-x.boom-box.bot.bot-message-square.bot-off.bottle-wine.bow-arrow.box.boxes.braces.brackets.brain.brain-circuit.brain-cog.brick-wall.brick-wall-fire.brick-wall-shield.briefcase.briefcase-business.briefcase-conveyor-belt.briefcase-medical.bring-to-front.brush.brush-cleaning.bubbles.bug.bug-off.bug-play.building.building-2.bus.bus-front.cable.cable-car.cake.cake-slice.calculator.calendar.calendar-1.calendar-arrow-down.calendar-arrow-up.calendar-check.calendar-check-2.calendar-clock.calendar-cog.calendar-days.calendar-fold.calendar-heart.calendar-minus.calendar-minus-2.calendar-off.calendar-plus.calendar-plus-2.calendar-range.calendar-search.calendar-sync.calendar-x.calendar-x-2.calendars.camera.camera-off.candy.candy-cane.candy-off.cannabis.cannabis-off.captions.captions-off.car.car-front.car-taxi-front.caravan.card-sim.carrot.case-lower.case-sensitive.case-upper.cassette-tape.cast.castle.cat.cctv.chart-area.chart-bar.chart-bar-big.chart-bar-decreasing.chart-bar-increasing.chart-bar-stacked.chart-candlestick.chart-column.chart-column-big.chart-column-decreasing.chart-column-increasing.chart-column-stacked.chart-gantt.chart-line.chart-network.chart-no-axes-column.chart-no-axes-column-decreasing.chart-no-axes-column-increasing.chart-no-axes-combined.chart-no-axes-gantt.chart-pie.chart-scatter.chart-spline.check.check-check.check-line.chef-hat.cherry.chess-bishop.chess-king.chess-knight.chess-pawn.chess-queen.chess-rook.chevron-down.chevron-first.chevron-last.chevron-left.chevron-right.chevron-up.chevrons-down.chevrons-down-up.chevrons-left.chevrons-left-right.chevrons-left-right-ellipsis.chevrons-right.chevrons-right-left.chevrons-up.chevrons-up-down.church.cigarette.cigarette-off.circle.circle-alert.circle-arrow-down.circle-arrow-left.circle-arrow-out-down-left.circle-arrow-out-down-right.circle-arrow-out-up-left.circle-arrow-out-up-right.circle-arrow-right.circle-arrow-up.circle-check.circle-check-big.circle-chevron-down.circle-chevron-left.circle-chevron-right.circle-chevron-up.circle-dashed.circle-divide.circle-dollar-sign.circle-dot.circle-dot-dashed.circle-ellipsis.circle-equal.circle-fading-arrow-up.circle-fading-plus.circle-gauge.circle-minus.circle-off.circle-parking.circle-parking-off.circle-pause.circle-percent.circle-pile.circle-play.circle-plus.circle-pound-sterling.circle-power.circle-question-mark.circle-slash.circle-slash-2.circle-small.circle-star.circle-stop.circle-user.circle-user-round.circle-x.circuit-board.citrus.clapperboard.clipboard.clipboard-check.clipboard-clock.clipboard-copy.clipboard-list.clipboard-minus.clipboard-paste.clipboard-pen.clipboard-pen-line.clipboard-plus.clipboard-type.clipboard-x.clock.clock-1.clock-10.clock-11.clock-12.clock-2.clock-3.clock-4.clock-5.clock-6.clock-7.clock-8.clock-9.clock-alert.clock-arrow-down.clock-arrow-up.clock-check.clock-fading.clock-plus.closed-caption.cloud.cloud-alert.cloud-backup.cloud-check.cloud-cog.cloud-download.cloud-drizzle.cloud-fog.cloud-hail.cloud-lightning.cloud-moon.cloud-moon-rain.cloud-off.cloud-rain.cloud-rain-wind.cloud-snow.cloud-sun.cloud-sun-rain.cloud-sync.cloud-upload.cloudy.clover.club.code.code-xml.coffee.cog.coins.columns-2.columns-3.columns-3-cog.columns-4.combine.command.compass.component.computer.concierge-bell.cone.construction.contact.contact-round.container.contrast.cookie.cooking-pot.copy.copy-check.copy-minus.copy-plus.copy-slash.copy-x.copyleft.copyright.corner-down-left.corner-down-right.corner-left-down.corner-left-up.corner-right-down.corner-right-up.corner-up-left.corner-up-right.cpu.creative-commons.credit-card.croissant.crop.cross.crosshair.crown.cuboid.cup-soda.currency.cylinder.dam.database.database-backup.database-search.database-zap.decimals-arrow-left.decimals-arrow-right.delete.dessert.diameter.diamond.diamond-minus.diamond-percent.diamond-plus.dice-1.dice-2.dice-3.dice-4.dice-5.dice-6.dices.diff.disc.disc-2.disc-3.disc-album.divide.dna.dna-off.dock.dog.dollar-sign.donut.door-closed.door-closed-locked.door-open.dot.download.drafting-compass.drama.drill.drone.droplet.droplet-off.droplets.drum.drumstick.dumbbell.ear.ear-off.earth.earth-lock.eclipse.egg.egg-fried.egg-off.ellipsis.ellipsis-vertical.equal.equal-approximately.equal-not.eraser.ethernet-port.euro.ev-charger.expand.external-link.eye.eye-closed.eye-off.factory.fan.fast-forward.feather.fence.ferris-wheel.file.file-archive.file-axis-3d.file-badge.file-box.file-braces.file-braces-corner.file-chart-column.file-chart-column-increasing.file-chart-line.file-chart-pie.file-check.file-check-corner.file-clock.file-code.file-code-corner.file-cog.file-diff.file-digit.file-down.file-exclamation-point.file-headphone.file-heart.file-image.file-input.file-key.file-lock.file-minus.file-minus-corner.file-music.file-output.file-pen.file-pen-line.file-play.file-plus.file-plus-corner.file-question-mark.file-scan.file-search.file-search-corner.file-signal.file-sliders.file-spreadsheet.file-stack.file-symlink.file-terminal.file-text.file-type.file-type-corner.file-up.file-user.file-video-camera.file-volume.file-x.file-x-corner.files.film.fingerprint-pattern.fire-extinguisher.fish.fish-off.fish-symbol.fishing-hook.fishing-rod.flag.flag-off.flag-triangle-left.flag-triangle-right.flame.flame-kindling.flashlight.flashlight-off.flask-conical.flask-conical-off.flask-round.flip-horizontal-2.flip-vertical-2.flower.flower-2.focus.fold-horizontal.fold-vertical.folder.folder-archive.folder-check.folder-clock.folder-closed.folder-code.folder-cog.folder-dot.folder-down.folder-git.folder-git-2.folder-heart.folder-input.folder-kanban.folder-key.folder-lock.folder-minus.folder-open.folder-open-dot.folder-output.folder-pen.folder-plus.folder-root.folder-search.folder-search-2.folder-symlink.folder-sync.folder-tree.folder-up.folder-x.folders.footprints.forklift.form.forward.frame.frown.fuel.fullscreen.funnel.funnel-plus.funnel-x.gallery-horizontal.gallery-horizontal-end.gallery-thumbnails.gallery-vertical.gallery-vertical-end.gamepad.gamepad-2.gamepad-directional.gauge.gavel.gem.georgian-lari.ghost.gift.git-branch.git-branch-minus.git-branch-plus.git-commit-horizontal.git-commit-vertical.git-compare.git-compare-arrows.git-fork.git-graph.git-merge.git-merge-conflict.git-pull-request.git-pull-request-arrow.git-pull-request-closed.git-pull-request-create.git-pull-request-create-arrow.git-pull-request-draft.glass-water.glasses.globe.globe-lock.globe-off.globe-x.goal.gpu.graduation-cap.grape.grid-2x2.grid-2x2-check.grid-2x2-plus.grid-2x2-x.grid-3x2.grid-3x3.grip.grip-horizontal.grip-vertical.group.guitar.ham.hamburger.hammer.hand.hand-coins.hand-fist.hand-grab.hand-heart.hand-helping.hand-metal.hand-platter.handbag.handshake.hard-drive.hard-drive-download.hard-drive-upload.hard-hat.hash.hat-glasses.haze.hd.hdmi-port.heading.heading-1.heading-2.heading-3.heading-4.heading-5.heading-6.headphone-off.headphones.headset.heart.heart-crack.heart-handshake.heart-minus.heart-off.heart-plus.heart-pulse.heater.helicopter.hexagon.highlighter.history.hop.hop-off.hospital.hotel.hourglass.house.house-heart.house-plug.house-plus.house-wifi.ice-cream-bowl.ice-cream-cone.id-card.id-card-lanyard.image.image-down.image-minus.image-off.image-play.image-plus.image-up.image-upscale.images.import.inbox.indian-rupee.infinity.info.inspection-panel.italic.iteration-ccw.iteration-cw.japanese-yen.joystick.kanban.kayak.key.key-round.key-square.keyboard.keyboard-music.keyboard-off.lamp.lamp-ceiling.lamp-desk.lamp-floor.lamp-wall-down.lamp-wall-up.land-plot.landmark.languages.laptop.laptop-minimal.laptop-minimal-check.lasso.lasso-select.laugh.layers.layers-2.layers-plus.layout-dashboard.layout-grid.layout-list.layout-panel-left.layout-panel-top.layout-template.leaf.leafy-green.lectern.lens-concave.lens-convex.library.library-big.life-buoy.ligature.lightbulb.lightbulb-off.line-dot-right-horizontal.line-squiggle.link.link-2.link-2-off.list.list-check.list-checks.list-chevrons-down-up.list-chevrons-up-down.list-collapse.list-end.list-filter.list-filter-plus.list-indent-decrease.list-indent-increase.list-minus.list-music.list-ordered.list-plus.list-restart.list-start.list-todo.list-tree.list-video.list-x.loader.loader-circle.loader-pinwheel.locate.locate-fixed.locate-off.lock.lock-keyhole.lock-keyhole-open.lock-open.log-in.log-out.logs.lollipop.luggage.magnet.mail.mail-check.mail-minus.mail-open.mail-plus.mail-question-mark.mail-search.mail-warning.mail-x.mailbox.mails.map.map-minus.map-pin.map-pin-check.map-pin-check-inside.map-pin-house.map-pin-minus.map-pin-minus-inside.map-pin-off.map-pin-pen.map-pin-plus.map-pin-plus-inside.map-pin-x.map-pin-x-inside.map-pinned.map-plus.mars.mars-stroke.martini.maximize.maximize-2.medal.megaphone.megaphone-off.meh.memory-stick.menu.merge.message-circle.message-circle-check.message-circle-code.message-circle-dashed.message-circle-heart.message-circle-more.message-circle-off.message-circle-plus.message-circle-question-mark.message-circle-reply.message-circle-warning.message-circle-x.message-square.message-square-check.message-square-code.message-square-dashed.message-square-diff.message-square-dot.message-square-heart.message-square-lock.message-square-more.message-square-off.message-square-plus.message-square-quote.message-square-reply.message-square-share.message-square-text.message-square-warning.message-square-x.messages-square.metronome.mic.mic-off.mic-vocal.microchip.microscope.microwave.milestone.milk.milk-off.minimize.minimize-2.minus.mirror-rectangular.mirror-round.monitor.monitor-check.monitor-cloud.monitor-cog.monitor-dot.monitor-down.monitor-off.monitor-pause.monitor-play.monitor-smartphone.monitor-speaker.monitor-stop.monitor-up.monitor-x.moon.moon-star.motorbike.mountain.mountain-snow.mouse.mouse-left.mouse-off.mouse-pointer.mouse-pointer-2.mouse-pointer-2-off.mouse-pointer-ban.mouse-pointer-click.mouse-right.move.move-3d.move-diagonal.move-diagonal-2.move-down.move-down-left.move-down-right.move-horizontal.move-left.move-right.move-up.move-up-left.move-up-right.move-vertical.music.music-2.music-3.music-4.navigation.navigation-2.navigation-2-off.navigation-off.network.newspaper.nfc.non-binary.notebook.notebook-pen.notebook-tabs.notebook-text.notepad-text.notepad-text-dashed.nut.nut-off.octagon.octagon-alert.octagon-minus.octagon-pause.octagon-x.omega.option.orbit.origami.package.package-2.package-check.package-minus.package-open.package-plus.package-search.package-x.paint-bucket.paint-roller.paintbrush.paintbrush-vertical.palette.panda.panel-bottom.panel-bottom-close.panel-bottom-dashed.panel-bottom-open.panel-left.panel-left-close.panel-left-dashed.panel-left-open.panel-left-right-dashed.panel-right.panel-right-close.panel-right-dashed.panel-right-open.panel-top.panel-top-bottom-dashed.panel-top-close.panel-top-dashed.panel-top-open.panels-left-bottom.panels-right-bottom.panels-top-left.paperclip.parentheses.parking-meter.party-popper.pause.paw-print.pc-case.pen.pen-line.pen-off.pen-tool.pencil.pencil-line.pencil-off.pencil-ruler.pentagon.percent.person-standing.philippine-peso.phone.phone-call.phone-forwarded.phone-incoming.phone-missed.phone-off.phone-outgoing.pi.piano.pickaxe.picture-in-picture.picture-in-picture-2.piggy-bank.pilcrow.pilcrow-left.pilcrow-right.pill.pill-bottle.pin.pin-off.pipette.pizza.plane.plane-landing.plane-takeoff.play.plug.plug-2.plug-zap.plus.pocket-knife.podcast.pointer.pointer-off.popcorn.popsicle.pound-sterling.power.power-off.presentation.printer.printer-check.printer-x.projector.proportions.puzzle.pyramid.qr-code.quote.rabbit.radar.radiation.radical.radio.radio-receiver.radio-tower.radius.rainbow.rat.ratio.receipt.receipt-cent.receipt-euro.receipt-indian-rupee.receipt-japanese-yen.receipt-pound-sterling.receipt-russian-ruble.receipt-swiss-franc.receipt-text.receipt-turkish-lira.rectangle-circle.rectangle-ellipsis.rectangle-goggles.rectangle-horizontal.rectangle-vertical.recycle.redo.redo-2.redo-dot.refresh-ccw.refresh-ccw-dot.refresh-cw.refresh-cw-off.refrigerator.regex.remove-formatting.repeat.repeat-1.repeat-2.replace.replace-all.reply.reply-all.rewind.ribbon.rocket.rocking-chair.roller-coaster.rose.rotate-3d.rotate-ccw.rotate-ccw-key.rotate-ccw-square.rotate-cw.rotate-cw-square.route.route-off.router.rows-2.rows-3.rows-4.rss.ruler.ruler-dimension-line.russian-ruble.sailboat.salad.sandwich.satellite.satellite-dish.saudi-riyal.save.save-all.save-off.scale.scale-3d.scaling.scan.scan-barcode.scan-eye.scan-face.scan-heart.scan-line.scan-qr-code.scan-search.scan-text.school.scissors.scissors-line-dashed.scooter.screen-share.screen-share-off.scroll.scroll-text.search.search-alert.search-check.search-code.search-slash.search-x.section.send.send-horizontal.send-to-back.separator-horizontal.separator-vertical.server.server-cog.server-crash.server-off.settings.settings-2.shapes.share.share-2.sheet.shell.shelving-unit.shield.shield-alert.shield-ban.shield-check.shield-ellipsis.shield-half.shield-minus.shield-off.shield-plus.shield-question-mark.shield-user.shield-x.ship.ship-wheel.shirt.shopping-bag.shopping-basket.shopping-cart.shovel.shower-head.shredder.shrimp.shrink.shrub.shuffle.sigma.signal.signal-high.signal-low.signal-medium.signal-zero.signature.signpost.signpost-big.siren.skip-back.skip-forward.skull.slash.slice.sliders-horizontal.sliders-vertical.smartphone.smartphone-charging.smartphone-nfc.smile.smile-plus.snail.snowflake.soap-dispenser-droplet.sofa.solar-panel.soup.space.spade.sparkle.sparkles.speaker.speech.spell-check.spell-check-2.spline.spline-pointer.split.spool.spotlight.spray-can.sprout.square.square-activity.square-arrow-down.square-arrow-down-left.square-arrow-down-right.square-arrow-left.square-arrow-out-down-left.square-arrow-out-down-right.square-arrow-out-up-left.square-arrow-out-up-right.square-arrow-right.square-arrow-right-enter.square-arrow-right-exit.square-arrow-up.square-arrow-up-left.square-arrow-up-right.square-asterisk.square-bottom-dashed-scissors.square-centerline-dashed-horizontal.square-centerline-dashed-vertical.square-chart-gantt.square-check.square-check-big.square-chevron-down.square-chevron-left.square-chevron-right.square-chevron-up.square-code.square-dashed.square-dashed-bottom.square-dashed-bottom-code.square-dashed-kanban.square-dashed-mouse-pointer.square-dashed-top-solid.square-divide.square-dot.square-equal.square-function.square-kanban.square-library.square-m.square-menu.square-minus.square-mouse-pointer.square-parking.square-parking-off.square-pause.square-pen.square-percent.square-pi.square-pilcrow.square-play.square-plus.square-power.square-radical.square-round-corner.square-scissors.square-sigma.square-slash.square-split-horizontal.square-split-vertical.square-square.square-stack.square-star.square-stop.square-terminal.square-user.square-user-round.square-x.squares-exclude.squares-intersect.squares-subtract.squares-unite.squircle.squircle-dashed.squirrel.stamp.star.star-half.star-off.step-back.step-forward.stethoscope.sticker.sticky-note.stone.store.stretch-horizontal.stretch-vertical.strikethrough.subscript.sun.sun-dim.sun-medium.sun-moon.sun-snow.sunrise.sunset.superscript.swatch-book.swiss-franc.switch-camera.sword.swords.syringe.table.table-2.table-cells-merge.table-cells-split.table-columns-split.table-of-contents.table-properties.table-rows-split.tablet.tablet-smartphone.tablets.tag.tags.tally-1.tally-2.tally-3.tally-4.tally-5.tangent.target.telescope.tent.tent-tree.terminal.test-tube.test-tube-diagonal.test-tubes.text-align-center.text-align-end.text-align-justify.text-align-start.text-cursor.text-cursor-input.text-initial.text-quote.text-search.text-select.text-wrap.theater.thermometer.thermometer-snowflake.thermometer-sun.thumbs-down.thumbs-up.ticket.ticket-check.ticket-minus.ticket-percent.ticket-plus.ticket-slash.ticket-x.tickets.tickets-plane.timer.timer-off.timer-reset.toggle-left.toggle-right.toilet.tool-case.toolbox.tornado.torus.touchpad.touchpad-off.towel-rack.tower-control.toy-brick.tractor.traffic-cone.train-front.train-front-tunnel.train-track.tram-front.transgender.trash.trash-2.tree-deciduous.tree-palm.tree-pine.trees.trending-down.trending-up.trending-up-down.triangle.triangle-alert.triangle-dashed.triangle-right.trophy.truck.truck-electric.turkish-lira.turntable.turtle.tv.tv-minimal.tv-minimal-play.type.type-outline.umbrella.umbrella-off.underline.undo.undo-2.undo-dot.unfold-horizontal.unfold-vertical.ungroup.university.unlink.unlink-2.unplug.upload.usb.user.user-check.user-cog.user-key.user-lock.user-minus.user-pen.user-plus.user-round.user-round-check.user-round-cog.user-round-key.user-round-minus.user-round-pen.user-round-plus.user-round-search.user-round-x.user-search.user-star.user-x.users.users-round.utensils.utensils-crossed.utility-pole.van.variable.vault.vector-square.vegan.venetian-mask.venus.venus-and-mars.vibrate.vibrate-off.video.video-off.videotape.view.voicemail.volleyball.volume.volume-1.volume-2.volume-off.volume-x.vote.wallet.wallet-cards.wallet-minimal.wallpaper.wand.wand-sparkles.warehouse.washing-machine.watch.waves.waves-arrow-down.waves-arrow-up.waves-ladder.waypoints.webcam.webhook.webhook-off.weight.weight-tilde.wheat.wheat-off.whole-word.wifi.wifi-cog.wifi-high.wifi-low.wifi-off.wifi-pen.wifi-sync.wifi-zero.wind.wind-arrow-down.wine.wine-off.workflow.worm.wrench.x.x-line-top.zap.zap-off.zodiac-aquarius.zodiac-aries.zodiac-cancer.zodiac-capricorn.zodiac-gemini.zodiac-leo.zodiac-libra.zodiac-ophiuchus.zodiac-pisces.zodiac-sagittarius.zodiac-scorpio.zodiac-taurus.zodiac-virgo.zoom-in.zoom-out`.split(`.`),Tv=[[[37,10],[`letter`,`font size`,`text`,`formatting`,`smaller`]],[[37,10],[`letter`,`font size`,`text`,`formatting`,`larger`,`bigger`]],[[37,10],[`letter`,`font size`,`text`,`formatting`]],[[0,22],[`disability`,`disabled`,`dda`,`wheelchair`]],[[22,1,34,29,23],`pulse.action.motion.movement.exercise.fitness.healthcare.heart rate monitor.vital signs.vitals.emergency room.er.intensive care.hospital.defibrillator.earthquake.siesmic.magnitude.richter scale.aftershock.tremor.shockwave.audio.waveform.synthesizer.synthesiser.music`.split(`.`)],[[18],[`air conditioner`,`ac`,`central air`,`cooling`,`climate-control`]],[[23,8,12,4],[`stream`,`cast`,`mirroring`,`screen`,`monitor`,`macos`,`osx`]],[[12,26,38],[`morning`]],[[12,26,38],[`done`,`todo`,`tick`,`complete`,`task`]],[[12,26,38],[`remove`]],[[12,26,38],[`morning`,`turn-off`]],[[12,26,38],[`add`]],[[18,12,41],[`fire`,`alert`,`warning`,`detector`,`carbon monoxide`,`safety`,`equipment`,`amenities`]],[[28,23],[`photo`,`book`]],[[19],[`items`,`flex`,`justify`]],[[19],[`items`,`flex`,`justify`]],[[19],[`items`,`bottom`,`flex`,`justify`]],[[19],[`items`,`right`,`flex`,`justify`]],[[19],[`items`,`flex`,`justify`,`space`,`evenly`,`around`]],[[19],[`right`,`items`,`flex`,`justify`]],[[19],[`left`,`items`,`flex`,`justify`]],[[19],[`center`,`items`,`flex`,`justify`]],[[19],[`right`,`items`,`flex`,`justify`]],[[19],[`left`,`items`,`flex`,`justify`]],[[19],[`center`,`items`,`flex`,`justify`,`distribute`,`between`]],[[19],[`around`,`items`,`bottom`,`flex`,`justify`]],[[19],[`top`,`items`,`flex`,`justify`]],[[19],[`left`,`items`,`flex`,`justify`]],[[19],[`items`,`flex`,`justify`,`space`,`evenly`,`around`]],[[19],[`bottom`,`items`,`flex`,`justify`]],[[19],[`top`,`items`,`flex`,`justify`]],[[19],[`center`,`items`,`flex`,`justify`,`distribute`,`between`]],[[19],[`bottom`,`items`,`flex`,`justify`,`distribute`,`between`]],[[19],[`top`,`items`,`flex`,`justify`,`distribute`,`between`]],[[19],[`center`,`items`,`flex`,`justify`,`distribute`,`between`]],[[19],[`center`,`items`,`flex`,`justify`,`distribute`,`between`]],[[22,40],[`ambulance`,`emergency`,`medical`,`vehicle`,`siren`,`healthcare`,`transportation`,`rescue`,`urgent`,`first aid`]],[[37,11],[`and`,`typography`,`operator`,`join`,`concatenate`,`code`,`&`]],[[37,11],[`and`,`operator`,`then`,`code`,`&&`]],[[16,17],[`pottery`,`artifact`,`artefact`,`vase`,`ceramics`,`clay`,`archaeology`,`museum`,`wine`,`oil`]],[[40,37],[`ship`]],[[13],[`emoji`,`anger`,`face`,`emotion`]],[[13],[`emoji`,`nuisance`,`face`,`emotion`]],[[12,23,7],[`signal`,`connection`,`connectivity`,`tv`,`television`,`broadcast`,`live`,`frequency`,`tune`,`scan`,`channels`,`aerial`,`receiver`,`transmission`,`transducer`,`terrestrial`,`satellite`,`cable`]],[[5,39,17],[`metal`,`iron`,`alloy`,`materials`,`heavy`,`weight`,`blacksmith`,`forge`,`acme`]],[[28],[`camera`,`photo`,`pictures`,`shutter`,`exposure`]],[[19,10,11,14],[`application`,`menu bar`,`pane`,`executable`]],[[19,10,11,14],[`application`,`menu bar`,`pane`,`preferences`,`macos`,`osx`,`executable`]],[[16],[`fruit`,`food`,`healthy`,`snack`,`nutrition`,`fresh`,`produce`,`grocery`,`organic`,`harvest`,`vitamin`,`red`,`green`,`juicy`,`sweet`,`tart`,`bite`,`orchard`,`plant`,`core`,`raw`,`diet`]],[[14,20],[`index`,`backup`,`box`,`storage`,`records`]],[[14,20],[`unarchive`,`index`,`backup`,`box`,`storage`,`records`]],[[14,20],[`index`,`backup`,`box`,`storage`,`records`,`junk`]],[[18],[`sofa`,`furniture`,`leisure`,`lounge`,`loveseat`,`couch`]],[[3,17],[`backwards`,`reverse`,`direction`,`south`]],[[3,17,14],[`backwards`,`reverse`,`slow`,`direction`,`south`,`download`]],[[3,17],[`previous`,`back`,`direction`,`west`,`indicate turn`]],[[3,17],[`previous`,`back`,`direction`,`west`,`turn`,`corner`]],[[3,17],[`next`,`forward`,`direction`,`east`,`indicate turn`]],[[3,17],[`next`,`forward`,`direction`,`east`,`turn`,`corner`]],[[3,37,11,17],[`shift`,`keyboard`,`button`,`mac`,`capitalize`,`capitalise`,`forward`,`direction`,`north`]],[[3,37,11,17],[`caps lock`,`capitals`,`keyboard`,`button`,`mac`,`forward`,`direction`,`north`,`faster`,`speed`,`boost`]],[[3],[`backwards`,`reverse`,`direction`,`south`]],[[37,19,3],[`filter`,`sort`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`,`numerical`]],[[37,19,3],[`filter`,`sort`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`,`numerical`]],[[37,19,3],[`filter`,`sort`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`,`alphabetical`]],[[3,14],[`backwards`,`reverse`,`direction`,`south`,`download`,`expand`,`fold`,`vertical`]],[[3],[`direction`,`south-west`,`diagonal`]],[[37,19,3],[`filter`,`sort`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`]],[[3],[`direction`,`south-east`,`diagonal`]],[[3],[`direction`,`south`,`waypoint`,`location`,`step`,`into`]],[[3,14,11],[`behind`,`direction`,`south`,`download`,`save`,`git`,`version control`,`pull`,`collapse`,`fold`,`vertical`]],[[3],[`bidirectional`,`two-way`,`2-way`,`swap`,`switch`,`network`,`traffic`,`flow`,`mobile data`,`internet`,`sort`,`reorder`,`move`]],[[37,19,3],[`filter`,`sort`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`]],[[37,19,3],[`filter`,`sort`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`,`alphabetical`,`reverse`]],[[3],[`previous`,`back`,`direction`,`west`,`<-`]],[[3],[`previous`,`back`,`direction`,`west`,`expand`,`fold`,`horizontal`,`<-|`]],[[3],[`bidirectional`,`two-way`,`2-way`,`swap`,`switch`,`transaction`,`reorder`,`move`,`<-`,`->`]],[[3],[`previous`,`back`,`direction`,`west`,`collapse`,`fold`,`horizontal`,`|<-`]],[[3],[`forward`,`next`,`direction`,`east`,`->`]],[[3],[`next`,`forward`,`direction`,`east`,`export`,`expand`,`fold`,`horizontal`,`|->`]],[[3],[`bidirectional`,`two-way`,`2-way`,`swap`,`switch`,`transaction`,`reorder`,`move`,`<-`,`->`]],[[3,11],[`next`,`forward`,`direction`,`east`,`tab`,`keyboard`,`mac`,`indent`,`collapse`,`fold`,`horizontal`,`->|`]],[[3],[`forward`,`direction`,`north`]],[[37,19,3],[`filter`,`sort`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`,`numerical`]],[[37,19,3],[`filter`,`sort`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`,`numerical`]],[[37,19,3],[`filter`,`sort`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`,`alphabetical`]],[[3],[`bidirectional`,`two-way`,`2-way`,`swap`,`switch`,`network`,`mobile data`,`internet`,`sort`,`reorder`,`move`]],[[3],[`direction`,`north`,`step`,`out`]],[[3,14,11],[`forward`,`direction`,`north`,`upload`,`git`,`version control`,`push`,`expand`,`fold`,`vertical`]],[[3],[`direction`,`north-west`,`diagonal`]],[[37,19,3],[`filter`,`sort`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`]],[[3],[`direction`,`north-east`,`diagonal`]],[[3,14],[`forward`,`direction`,`north`,`upload`,`collapse`,`fold`,`vertical`]],[[37,19,3],[`filter`,`sort`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`]],[[37,19,3],[`filter`,`sort`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`,`alphabetical`,`reverse`]],[[3,40,20],[`direction`,`orientation`,`this way up`,`vertical`,`package`,`box`,`fragile`,`postage`,`shipping`]],[[37,21,11],[`reference`,`times`,`multiply`,`multiplication`,`operator`,`code`,`glob pattern`,`wildcard`,`*`]],[[37,1],[`mention`,`at`,`email`,`message`,`@`]],[[29],[`atomic`,`nuclear`,`physics`,`particle`,`element`,`molecule`,`electricity`,`energy`,`chemistry`]],[[23,7],[`graphic equaliser`,`sound`,`noise`,`listen`,`hearing`,`hertz`,`frequency`,`wavelength`,`vibrate`,`sine`,`synthesizer`,`synthesiser`,`levels`,`track`,`music`,`playback`,`radio`,`broadcast`,`airwaves`,`voice`,`vocals`,`singer`,`song`]],[[23,7],[`sound`,`noise`,`listen`,`hearing`,`hertz`,`frequency`,`wavelength`,`vibrate`,`sine`,`synthesizer`,`synthesiser`,`levels`,`track`,`music`,`playback`,`radio`,`broadcast`,`airwaves`,`voice`,`vocals`,`singer`,`song`]],[[1,35,17],[`achievement`,`badge`,`rosette`,`prize`,`winner`]],[[39,17],[`hatchet`,`weapon`,`chop`,`sharp`,`equipment`,`fireman`,`firefighter`,`brigade`,`lumberjack`,`woodcutter`,`logger`,`forestry`]],[[10],[`gizmo`,`coordinates`]],[[0,27],[`child`,`childproof`,`children`]],[[17,28,41],[`bag`,`hiking`,`travel`,`camping`,`school`,`childhood`]],[[1,34,32],[`check`,`verified`,`unverified`]],[[1,34],[`check`,`verified`,`unverified`,`security`,`safety`,`issue`]],[[33,15],[`discount`,`offer`,`sale`,`voucher`,`tag`,`monetization`,`marketing`,`finance`,`financial`,`exchange`,`transaction`,`payment`,`cents`,`dollar`,`usd`,`$`,`¢`]],[[34],[`verified`,`check`]],[[33,15],[`discount`,`offer`,`sale`,`voucher`,`tag`,`monetization`,`marketing`,`finance`,`financial`,`exchange`,`transaction`,`payment`,`usd`,`$`]],[[33,15],[`discount`,`offer`,`sale`,`voucher`,`tag`,`monetization`,`marketing`,`finance`,`financial`,`exchange`,`transaction`,`payment`,`€`]],[[33,15],[`discount`,`offer`,`sale`,`voucher`,`tag`,`monetization`,`marketing`,`finance`,`financial`,`exchange`,`transaction`,`payment`,`inr`,`₹`]],[[1,0,34],[`verified`,`unverified`,`help`]],[[33,15],[`discount`,`offer`,`sale`,`voucher`,`tag`,`monetization`,`marketing`,`finance`,`financial`,`exchange`,`transaction`,`payment`,`jpy`,`¥`]],[[34],[`verified`,`unverified`,`delete`,`remove`,`erase`]],[[34,15,33,21],[`verified`,`unverified`,`sale`,`discount`,`offer`,`marketing`,`sticker`,`price tag`]],[[34],[`verified`,`unverified`,`add`,`create`,`new`]],[[33,15],[`discount`,`offer`,`sale`,`voucher`,`tag`,`monetization`,`marketing`,`finance`,`financial`,`exchange`,`transaction`,`payment`,`british`,`gbp`,`£`]],[[0,34,32],[`verified`,`unverified`,`help`]],[[33,15],[`discount`,`offer`,`sale`,`voucher`,`tag`,`monetization`,`marketing`,`finance`,`financial`,`exchange`,`transaction`,`payment`,`rub`,`₽`]],[[33,15],[`discount`,`offer`,`sale`,`voucher`,`tag`,`monetization`,`marketing`,`finance`,`financial`,`exchange`,`transaction`,`payment`,`chf`,`₣`]],[[33,15],[`discount`,`offer`,`sale`,`voucher`,`tag`,`monetization`,`marketing`,`finance`,`financial`,`exchange`,`transaction`,`payment`,`try`,`₺`]],[[34],[`verified`,`unverified`,`lost`,`delete`,`remove`]],[[40,41],[`baggage`,`luggage`,`travel`,`cart`,`trolley`,`suitcase`]],[[13],[`party`,`festival`,`congratulations`,`celebration`,`decoration`,`colorful`,`floating`,`fun`,`birthday`,`event`,`entertainment`]],[[1],[`cancel`,`no`,`stop`,`forbidden`,`prohibited`,`error`,`incorrect`,`mistake`,`wrong`,`failure`,`circle`,`slash`,`null`,`void`]],[[16],[`fruit`,`food`]],[[22],[`plaster`,`band-aid`,`first aid`,`medical`,`health`,`wound`,`injury`,`care`,`treatment`,`healing`,`protection`,`emergency`,`aid`,`safety`,`patch`]],[[15],[`currency`,`money`,`payment`]],[[15],[`bill`,`currency`,`money`,`payment`,`funds`,`transaction`,`cash`,`finance`,`withdraw`,`expense`,`out`,`payout`,`refund`,`debit`,`spending`,`decrease`]],[[15],[`bill`,`currency`,`money`,`payment`,`funds`,`transaction`,`cash`,`finance`,`deposit`,`earnings`,`income`,`in`,`credit`,`prepaid`,`growth`,`increase`]],[[15],[`bill`,`currency`,`money`,`payment`,`funds`,`transaction`,`cash`,`finance`,`error`,`failed`,`rejected`,`canceled`,`declined`,`lost`,`delete`,`remove`]],[[33],[`scan`,`checkout`,`till`,`cart`,`transaction`,`purchase`,`buy`,`product`,`packaging`,`retail`,`consumer`]],[[16,25],[`keg`,`drum`,`tank`,`wine`,`beer`,`oak`,`wood`,`firkin`,`hogshead`,`kilderkin`,`barrique`,`solera`,`aging`,`whiskey`,`brewery`,`distillery`,`winery`,`vineyard`]],[[37],[`text`,`format`,`color`]],[[41],[`amenities`,`services`,`bathroom`,`shower`]],[[8,12],[`power`,`electricity`,`energy`,`accumulator`,`charge`]],[[8,12],[`power`,`electricity`,`energy`,`accumulator`,`charge`]],[[8,12],[`power`,`electricity`,`energy`,`accumulator`,`charge`]],[[8,12],[`power`,`electricity`,`energy`,`accumulator`,`charge`]],[[8,12],[`power`,`electricity`,`energy`,`accumulator`,`charge`]],[[12],[`power`,`electricity`,`energy`,`accumulator`,`charge`,`plus`,`economy`,`health`,`add`,`new`,`maximum`,`upgrade`,`extra`,`+`]],[[8,12],[`power`,`electricity`,`energy`,`accumulator`,`charge`,`exclamation mark`]],[[29,17],[`cup`,`lab`,`chemistry`,`experiment`,`test`]],[[16],[`legume`,`soy`,`food`,`seed`]],[[16],[`soy free`,`legume`,`soy`,`food`,`seed`,`allergy`,`intolerance`,`diet`]],[[18],[`sleep`,`hotel`,`furniture`]],[[18],[`sleep`,`hotel`,`furniture`]],[[18],[`sleep`,`hotel`,`furniture`]],[[16],[`food`,`dish`,`restaurant`,`course`,`meal`,`meat`,`bbq`,`steak`]],[[16],[`alcohol`,`bar`,`beverage`,`brewery`,`drink`]],[[16],[`alcohol`,`bar`,`beverage`,`brewery`,`drink`]],[[1,26],[`alarm`,`notification`,`sound`,`reminder`]],[[1,26],[`alarm`,`notification`,`sound`,`reminder`,`unread`]],[[12,26,18],[`fire alarm`,`flames`,`smoke`,`firefighter`,`fireman`,`department`,`brigade`,`station`,`emergency`,`alert`,`safety`,`school bell`,`period break`,`recess`,`doorbell`,`entrance`,`entry`,`ring`,`reception`]],[[26],[`alarm`,`notification`,`silent`,`reminder`,`delete`,`remove`,`erase`]],[[26],[`alarm`,`notification`,`silent`,`reminder`]],[[26],[`notification`,`silent`,`reminder`,`add`,`create`,`new`]],[[26],[`alarm`,`notification`,`sound`,`reminder`]],[[19,10,39],[`insert`,`add`,`left`,`slot`,`squeeze`,`space`,`vertical`,`grid`,`table`,`rows`,`cells`,`excel`,`spreadsheet`,`accountancy`,`data`,`enter`,`entry`,`entries`,`blocks`,`rectangles`,`chevron`]],[[19,10,39],[`insert`,`add`,`right`,`slot`,`squeeze`,`space`,`vertical`,`grid`,`table`,`rows`,`cells`,`excel`,`spreadsheet`,`accountancy`,`data`,`enter`,`entry`,`entries`,`blocks`,`rectangles`,`chevron`]],[[19,10,39],[`insert`,`add`,`top`,`slot`,`squeeze`,`space`,`vertical`,`grid`,`table`,`columns`,`cells`,`data`,`enter`,`entry`,`entries`,`blocks`,`rectangles`,`chevron`]],[[19,10,39],[`insert`,`add`,`bottom`,`slot`,`squeeze`,`space`,`vertical`,`grid`,`table`,`columns`,`cells`,`data`,`enter`,`entry`,`entries`,`blocks`,`rectangles`,`chevron`]],[[13],[`arm`,`muscle`,`strong`,`working out`,`athletic`,`toned`,`muscular`,`forelimb`,`curled`]],[[40],[`bicycle`,`transport`,`trip`]],[[37,11],[`code`,`digits`,`computer`,`zero`,`one`,`boolean`]],[[25,24,28,29,41,11],[`field glasses`,`lorgnette`,`pince-nez`,`observation`,`sightseeing`,`nature`,`wildlife`,`birdwatching`,`scouting`,`surveillance`,`search`,`discovery`,`monitoring`,`lookout`,`viewpoint`,`travel`,`tourism`,`research`]],[[29],[`fallout`,`waste`,`biology`,`chemistry`,`chemical`,`element`]],[[2],[`peace`,`freedom`,`wing`,`avian`,`tweet`]],[[24,2,25,18],[`birdhouse`,`bird`,`garden`,`home`,`house`,`woodwork`]],[[4,11,15],[`currency`,`money`,`payment`]],[[10,28,39,11],[`mode`,`overlay`,`multiply`,`screen`,`opacity`,`transparency`,`alpha`,`filters`,`lenses`,`mixed`,`shades`,`tints`,`hues`,`saturation`,`brightness`,`overlap`,`colors`,`colours`]],[[18],[`shades`,`screen`,`curtain`,`shutter`,`roller blind`,`window`,`lighting`,`household`,`home`]],[[11,19,32],[`addon`,`plugin`,`integration`,`extension`,`package`,`build`,`stack`,`toys`,`kids`,`children`,`learning`,`squares`,`corner`]],[[8,12],[`wireless`]],[[8,12],[`paired`]],[[8,12],[`lost`]],[[8,12],[`pairing`]],[[37],[`text`,`strong`,`format`]],[[39,18],[`nut`,`screw`,`settings`,`preferences`,`configuration`,`controls`,`edit`,`diy`,`fixed`,`build`,`construction`,`parts`]],[[31,39],[`fatal`,`error`,`crash`,`blockbuster`,`mine`,`explosion`,`explode`,`explosive`]],[[2,22,17],[`health`,`skeleton`,`skull`,`death`,`pets`,`dog`]],[[37,11,17],`reading.paperback.booklet.magazine.leaflet.pamphlet.tome.library.writing.written.writer.author.story.script.fiction.novel.information.knowledge.education.high school.university.college.academy.student.study.learning.homework.research.documentation`.split(`.`)],[[37,17],`dictionary.define.definition.thesaurus.encyclopedia.encyclopaedia.reading.booklet.magazine.leaflet.pamphlet.tome.library.writing.written.writer.author.story.script.fiction.novel.information.knowledge.education.high school.university.college.academy.student.study.learning.homework.research.language.translate.alphabetical.a-z.ordered`.split(`.`)],[[37,11,17],`reading.paperback.booklet.magazine.leaflet.pamphlet.tome.library.writing.written.writer.author.story.script.fiction.novel.information.knowledge.education.high school.university.college.academy.student.study.learning.homework.research.documentation.warning.alert.danger.exclamation mark`.split(`.`)],[[23,37],[`audiobook`,`reading`,`listening`,`sound`,`story`,`fiction`,`novel`,`information`,`knowledge`,`education`,`student`,`study`,`learning`,`research`]],[[37,11,17],`read.booklet.magazine.leaflet.pamphlet.library.written.authored.published.informed.knowledgeable.educated.schooled.homework.examined.tested.marked.passed.graduated.studied.learned.lesson.researched.documented.revealed.blank.plain language.true.truth.verified.corrected.task.todo.done.completed.finished.ticked`.split(`.`)],[[11,37,17],`code.coding.version control.git.repository.clone.fork.duplicate.multiple.books.library.copies.copied.plagiarism.plagiarised.plagiarized.reading list.information.informed.knowledge.knowledgeable.knowledgable.education.high school.university.college.academy.student.study.learning.research.smart.intelligent.intellectual`.split(`.`)],[[11],[`code`,`coding`,`version control`,`git`,`repository`,`template`,`draft`,`script`,`screenplay`,`writing`,`writer`,`author`,`unwritten`,`unpublished`,`untold`]],[[11],[`code`,`coding`,`version control`,`git`,`repository`,`pull`]],[[23,37],[`audiobook`,`reading`,`listening`,`sound`,`story`,`fiction`,`novel`,`information`,`knowledge`,`education`,`student`,`study`,`learning`,`research`]],[[34,37,17],`diary.romance.novel.journal.entry.entries.personal.private.secret.crush.like.love.emotion.feminine.girls.teens.teenager.therapy.theraputic.therapist.planner.organizer.organiser.notes.notepad.stationery.sketchbook.writing.written.reading.favorite.favourite.high school`.split(`.`)],[[28,37,23,14,34,33,41],[`images`,`pictures`,`photos`,`album`,`collection`,`event`,`magazine`,`catalog`,`catalogue`,`brochure`,`browse`,`gallery`]],[[11,31,17],[`code`,`coding`,`version control`,`git`,`repository`,`private`,`public`,`secret`,`unlocked`,`hidden`,`revealed`,`knowledge`,`learning`]],[[11,31,17],[`code`,`coding`,`version control`,`git`,`repository`,`private`,`secret`,`hidden`,`knowledge`]],[[37,11,17],`dictionary.reading.booklet.magazine.leaflet.pamphlet.tome.library.writing.written.writer.author.story.script.fiction.novel.information.knowledge.education.high school.university.college.academy.student.study.learning.homework.research.documentation.saved.later.future.reference.index.code.coding.version control.git.repository`.split(`.`)],[[11,37,17],[`code`,`coding`,`version control`,`git`,`repository`,`remove`,`delete`,`censor`,`cancel`,`forbid`,`prohibit`,`ban`,`uneducated`,`re-educate`,`unlearn`,`downgrade`]],[[37,11,17],`reading.pages.booklet.magazine.leaflet.pamphlet.library.writing.written.writer.author.story.script.screenplay.fiction.novel.information.knowledge.education.high school.university.college.academy.student.study.learning.homework.research.documentation.revealed.blank.plain`.split(`.`)],[[37,11,17],`read.pages.booklet.magazine.leaflet.pamphlet.library.written.authored.published.informed.knowledgeable.educated.schooled.homework.examined.tested.marked.passed.graduated.studied.learned.lesson.researched.documented.revealed.blank.plain language.true.truth.verified.corrected.task.todo.done.completed.finished.ticked`.split(`.`)],[[37,11],`reading.pages.booklet.magazine.leaflet.pamphlet.library.writing.written.writer.author.story.script.fiction.novel.information.knowledge.education.high school.university.college.academy.student.study.learning.homework.research.documentation.revealed`.split(`.`)],[[11,37,17],[`code`,`coding`,`version control`,`git`,`repository`,`remove`,`delete`,`read`,`write`,`author`,`publish`,`inform`,`graduate`,`re-educate`,`study`,`learn`,`research`,`knowledge`,`improve`,`upgrade`,`level up`]],[[37,11,17],[`reading`,`library`,`study`,`education`,`research`,`knowledge`,`discover`,`browsing`,`lookup`,`finding`,`scanning`]],[[37,17],`reading.booklet.magazine.leaflet.pamphlet.tome.library.writing.written.writer.author.story.script.fiction.novel.information.knowledge.education.high school.university.college.academy.student.study.learning.homework.research.documentation`.split(`.`)],[[37,10,17],`thesaurus.synonym.reading.booklet.magazine.leaflet.pamphlet.tome.library.writing.written.writer.author.story.script.fiction.novel.information.knowledge.education.high school.university.college.academy.student.study.learning.homework.research.language.translate.typography.fonts.collection`.split(`.`)],[[11],[`code`,`coding`,`version control`,`git`,`repository`,`push`]],[[11],[`code`,`coding`,`version control`,`git`,`repository`,`push`,`force`]],[[1,8,7,34],[`person`,`people`,`family`,`friends`,`acquaintances`,`contacts`,`details`,`addresses`,`phone numbers`,`directory`,`listing`,`networking`]],[[37,17],[`code`,`coding`,`version control`,`git`,`repository`,`remove`,`delete`,`reading`,`misinformation`,`disinformation`,`misinformed`,`charlatan`,`sophistry`,`false`,`lies`,`untruth`,`propaganda`,`censored`,`cancelled`,`forbidden`,`prohibited`,`banned`,`uneducated`,`re-education`,`unlearn`]],[[1],[`save`,`favorite`,`mark`,`label`,`attachment`,`file`,`stick`,`pin`,`read`,`clip`,`marker`,`tag`]],[[1],[`read`,`finished`,`complete`,`clip`,`marker`,`tag`,`task`,`todo`]],[[1],[`delete`,`remove`]],[[1],[`add`]],[[1],[`read`,`clip`,`marker`,`tag`,`cancel`,`close`,`delete`,`remove`,`clear`]],[[12,23,34],[`radio`,`speakers`,`audio`,`music`,`sound`,`broadcast`,`live`,`frequency`]],[[11,34],[`robot`,`ai`,`chat`,`assistant`]],[[11,34],[`robot`,`ai`,`chat`,`assistant`]],[[11,34],[`robot`,`ai`,`chat`,`assistant`]],[[16],[`alcohol`,`drink`,`glass`,`goblet`,`chalice`,`vineyard`,`winery`,`red`,`white`,`rose`,`dry`,`sparkling`,`bar`,`party`,`nightclub`,`nightlife`,`sommelier`,`restaurant`,`dinner`,`meal`]],[[17,39],[`archer`,`archery`,`game`,`war`,`weapon`]],[[32,17,11,21],[`cube`,`package`,`container`,`storage`,`geometry`,`3d`,`isometric`]],[[32,17,11],[`cubes`,`packages`,`parts`,`group`,`units`,`collection`,`cluster`,`geometry`]],[[11,14],[`json`,`code`,`token`,`curly brackets`,`data`,`{`,`}`]],[[11,14],[`code`,`token`,`array`,`list`,`square`,`[`,`]`]],[[22,29],[`medical`,`mind`,`mental`,`intellect`,`cerebral`,`consciousness`,`genius`,`artificial intelligence`,`ai`,`think`,`thought`,`insight`,`intelligent`,`smart`]],[[29,11],[`mind`,`intellect`,`artificial intelligence`,`ai`,`deep learning`,`machine learning`,`computing`]],[[29,11],[`mind`,`intellect`,`artificial intelligence`,`ai`,`deep learning`,`machine learning`,`computing`]],[[5,18],[`bricks`,`mortar`,`cement`,`materials`,`construction`,`builder`,`labourer`,`quantity surveyor`,`blocks`,`stone`]],[[31,18,8],[`firewall`,`security`,`bricks`,`mortar`,`cement`,`materials`,`construction`,`builder`,`labourer`,`quantity surveyor`,`blocks`,`stone`,`campfire`,`camping`,`wilderness`,`outdoors`,`lit`,`warmth`,`wood`,`twigs`,`sticks`]],[[31,18,8],`firewall.security.bricks.mortar.cement.materials.construction.builder.labourer.quantity surveyor.blocks.stone.cybersecurity.secure.safety.protection.guardian.armored.armoured.defense.defence.defender.block.threat.prevention.antivirus.vigilance.vigilant.detection.scan.find.strength.strong.tough.invincible.invincibility.invulnerable.undamaged.audit.admin.verification.crest.bravery.knight.foot soldier.infantry.trooper.pawn.battle.war.military.army.cadet.scout`.split(`.`)],[[40],[`work`,`bag`,`baggage`,`folder`]],[[40],[`work`,`bag`,`baggage`,`folder`,`portfolio`]],[[41,40],[`baggage`,`luggage`,`travel`,`suitcase`,`conveyor`,`carousel`]],[[22,40],[`doctor`,`medicine`,`first aid`]],[[10,19],[`bring`,`send`,`move`,`over`,`forward`,`front`,`overlap`,`layer`,`order`]],[[37,10,39],[`clean`,`sweep`,`refactor`,`remove`,`draw`,`paint`,`color`,`artist`]],[[18,39,10],`cleaning.utensil.housekeeping.tool.sweeping.scrubbing.hygiene.maintenance.household.cleaner.chores.equipment.sanitation.bristles.handle.home care.sanitize.purify.wash.disinfect.sterilize.scrub.polish.decontaminate.wipe.spotless.remove.empty.erase.purge.eliminate`.split(`.`)],[[42],[`water`,`cleaning`,`soap`,`bath`,`hygiene`,`freshness`,`wash`,`foam`,`cleanliness`,`shampoo`,`purity`,`splash`,`lightness`,`airy`,`relaxation`,`spa`,`bubbly`,`fluid`,`floating`,`drop`]],[[11,2],[`issue`,`error`,`defect`,`testing`,`troubleshoot`,`problem`,`report`,`debug`,`code`,`insect`,`beetle`]],[[11,2],[`issue`,`fixed`,`resolved`,`testing`,`debug`,`code`,`insect`,`kill`,`exterminate`,`pest control`]],[[11,2],[`issue`,`testing`,`debug`,`reproduce`,`code`,`insect`]],[[1,5],[`organisation`,`organization`]],[[1,5],[`business`,`company`,`enterprise`,`skyscraper`,`organisation`,`organization`,`city`]],[[40],[`bus`,`vehicle`,`transport`,`trip`]],[[40],[`coach`,`vehicle`,`trip`,`road`]],[[8,12,23],`cord.wire.connector.connection.link.signal.console.computer.equipment.electricity.energy.electronics.recharging.charger.power.supply.disconnected.unplugged.plugs.interface.input.output.audio video.av.rca.scart.tv.television.optical`.split(`.`)],[[40,41],[`ski lift`,`winter holiday`,`alpine`,`resort`,`mountains`]],[[16,34,1],[`birthday`,`birthdate`,`celebration`,`party`,`surprise`,`gateaux`,`dessert`,`fondant`,`icing sugar`,`sweet`,`baking`]],[[16,34],[`birthday`,`birthdate`,`celebration`,`party`,`surprise`,`gateaux`,`dessert`,`candles`,`wish`,`fondant`,`icing sugar`,`sweet`,`baking`]],[[21,12],[`count`,`calculating machine`]],[[38],[`date`,`month`,`year`,`event`,`birthday`,`birthdate`]],[[38],[`date`,`month`,`year`,`event`,`single`,`singular`,`once`,`1`,`first`]],[[38],[`date`,`month`,`year`,`event`,`sort`,`order`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`]],[[38],[`date`,`month`,`year`,`event`,`sort`,`order`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`]],[[38],[`date`,`day`,`month`,`year`,`event`,`confirm`,`subscribe`,`schedule`,`done`,`todo`,`tick`,`complete`,`task`]],[[38],[`date`,`day`,`month`,`year`,`event`,`confirm`,`subscribe`,`schedule`,`done`,`todo`,`tick`,`complete`,`task`]],[[38],[`date`,`day`,`month`,`year`,`event`,`clock`,`hour`]],[[38],[`date`,`day`,`month`,`year`,`events`,`settings`,`gear`,`cog`]],[[38],[`date`,`month`,`year`,`event`]],[[38,14],[`date`,`month`,`year`,`event`,`birthday`,`birthdate`,`ics`]],[[38],[`date`,`month`,`year`,`event`,`heart`,`favourite`,`subscribe`,`valentines day`]],[[38],[`date`,`day`,`month`,`year`,`event`,`delete`,`remove`]],[[38],[`date`,`day`,`month`,`year`,`event`,`delete`,`remove`]],[[38],[`date`,`day`,`month`,`year`,`event`,`delete`,`remove`]],[[38],[`date`,`day`,`month`,`year`,`event`,`add`,`subscribe`,`create`,`new`]],[[38],[`date`,`day`,`month`,`year`,`event`,`add`,`subscribe`,`create`,`new`]],[[38],[`date`,`day`,`month`,`year`,`event`,`range`,`period`]],[[38],[`date`,`day`,`month`,`year`,`events`,`search`,`lens`]],[[3,38],[`repeat`,`refresh`,`reconnect`,`transfer`,`backup`,`date`,`month`,`year`,`event`,`subscribe`,`recurring`,`schedule`,`reminder`,`automatic`,`auto`]],[[38],[`date`,`day`,`month`,`year`,`event`,`remove`,`busy`]],[[38],[`date`,`day`,`month`,`year`,`event`,`remove`]],[[38],[`date`,`month`,`year`,`event`,`dates`,`months`,`years`,`events`]],[[28,12,7],[`photography`,`lens`,`focus`,`capture`,`shot`,`visual`,`image`,`device`,`equipment`,`photo`,`webcam`,`video`]],[[28,12,7],[`photo`,`webcam`,`video`]],[[16],[`sugar`,`food`,`sweet`]],[[16],[`sugar`,`food`,`sweet`,`christmas`,`xmas`]],[[16],[`sugar free`,`food`,`sweet`,`allergy`,`intolerance`,`diet`]],[[24],[`cannabis`,`weed`,`leaf`]],[[24],[`cannabis`,`weed`,`leaf`]],[[23],[`closed captions`,`subtitles`,`subhead`,`transcription`,`transcribe`,`dialogue`,`accessibility`]],[[23],[`closed captions`,`subtitles`,`subhead`,`transcription`,`transcribe`,`dialogue`,`accessibility`]],[[40],[`vehicle`,`drive`,`trip`,`journey`]],[[40],[`vehicle`,`drive`,`trip`,`journey`]],[[40],[`cab`,`vehicle`,`drive`,`trip`,`journey`]],[[40,41,24],[`trailer`,`tow`,`camping`,`campsite`,`mobile home`,`holiday`,`nomadic`,`wilderness`,`outdoors`]],[[8,7,23,12],[`cellphone`,`smartphone`,`mobile`,`network`,`cellular`,`service`,`provider`,`signal`,`coverage`,`disk`,`data`,`format`,`storage`,`flash`,`digital`,`contacts`,`phone book`,`contractual`,`circuit board`,`chip`]],[[16],[`vegetable`,`food`,`eat`]],[[37,11],[`text`,`letters`,`characters`,`font`,`typography`]],[[37],[`text`,`letters`,`characters`,`font`,`typography`]],[[37,11],[`text`,`letters`,`characters`,`font`,`typography`]],[[8,12,23,7,14],[`audio`,`music`,`recording`,`play`]],[[12,8],[`chromecast`,`airplay`,`screen`]],[[5,17,25],[`fortress`,`stronghold`,`palace`,`chateau`,`building`]],[[2],[`animal`,`pet`,`kitten`,`feline`]],[[31,12,7,8,28],[`camera`,`surveillance`,`recording`,`film`,`videotape`,`crime`,`watching`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`,`area`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`,`trending down`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`,`trending up`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`,`multivariate`,`categorical`,`comparison`]],[[6,15],[`trading`,`trader`,`financial`,`markets`,`portfolio`,`assets`,`prices`,`value`,`valuation`,`commodities`,`currencies`,`currency`,`stocks`,`exchange`,`hedge fund`,`statistics`,`analytics`,`diagram`,`graph`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`,`trending down`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`,`trending up`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`,`multivariate`,`categorical`,`comparison`]],[[6],[`diagram`,`graph`,`timeline`,`planning`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`,`topology`,`cluster`,`web`,`nodes`,`connections`,`edges`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`,`trending down`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`,`trending up`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`,`trending up`]],[[6,38,11,10],[`projects`,`manage`,`overview`,`roadmap`,`plan`,`intentions`,`timeline`,`deadline`,`date`,`event`,`range`,`period`,`productivity`,`work`,`agile`,`code`,`coding`]],[[6,14],[`statistics`,`analytics`,`diagram`,`presentation`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`,`curve`,`continuous`,`smooth`,`polynomial`,`quadratic`,`function`,`interpolation`]],[[26],[`done`,`todo`,`tick`,`complete`,`task`]],[[26],[`done`,`received`,`double`,`todo`,`tick`,`complete`,`task`]],[[26],[`done`,`todo`,`tick`,`complete`,`task`]],[[16],[`cooking`,`food`,`kitchen`,`restaurant`]],[[16],[`fruit`,`food`]],[[17,13],[`mitre`,`miter`,`piece`,`board game`,`religion`]],[[17,13],[`ruler`,`crown`,`piece`,`board game`,`stalemate`]],[[17,13],[`piece`,`horse`,`board game`]],[[17,13],[`piece`,`board game`]],[[17,13],[`ruler`,`crown`,`piece`,`board game`,`stalemate`]],[[17,13],[`castle`,`piece`,`board game`]],[[3,17],[`backwards`,`reverse`,`slow`,`dropdown`]],[[3,23],[`previous`,`music`]],[[3,23],[`skip`,`next`,`music`]],[[3],[`back`,`previous`,`less than`,`fewer`,`menu`,`<`]],[[3,21,11],[`forward`,`next`,`more than`,`greater`,`menu`,`code`,`coding`,`command line`,`terminal`,`prompt`,`shell`,`>`]],[[3,21,17],[`caret`,`keyboard`,`mac`,`control`,`ctrl`,`superscript`,`exponential`,`power`,`ahead`,`fast`,`^`,`dropdown`]],[[3,17],[`backwards`,`reverse`,`slower`]],[[3],[`collapse`,`fold`,`vertical`]],[[3,17],[`turn`,`corner`]],[[3],[`expand`,`horizontal`,`unfold`]],[[7,12,23,17],[`internet`,`network`,`connection`,`cable`,`lan`,`port`,`router`,`switch`,`hub`,`modem`,`web`,`online`,`networking`,`communication`,`socket`,`plug`,`slot`,`controller`,`connector`,`interface`,`console`,`signal`,`data`,`input`,`output`]],[[3,17],[`turn`,`corner`]],[[3],[`collapse`,`fold`,`horizontal`]],[[3,17],[`forward`,`ahead`,`faster`,`speed`,`boost`]],[[3],[`expand`,`unfold`,`vertical`]],[[5,25],[`temple`,`building`]],[[41,40,22],[`smoking`]],[[41,40,22],[`smoking`,`no-smoking`]],[[32],[`off`,`zero`,`record`,`shape`]],[[26],[`warning`,`alert`,`danger`,`exclamation mark`]],[[3,17],[`backwards`,`reverse`,`direction`,`south`,`sign`,`button`]],[[3,17],[`previous`,`back`,`direction`,`west`,`sign`,`turn`,`button`,`<-`]],[[3],[`outwards`,`direction`,`south-west`,`diagonal`]],[[3],[`outwards`,`direction`,`south-east`,`diagonal`]],[[3,11],[`outwards`,`direction`,`north-west`,`diagonal`,`keyboard`,`button`,`escape`]],[[3],[`outwards`,`direction`,`north-east`,`diagonal`]],[[3,17],[`next`,`forward`,`direction`,`east`,`sign`,`turn`,`button`,`->`]],[[3,17],[`forward`,`direction`,`north`,`sign`,`button`]],[[26],[`done`,`todo`,`tick`,`complete`,`task`]],[[26],[`done`,`todo`,`tick`,`complete`,`task`]],[[3],[`back`,`menu`]],[[3],[`back`,`previous`,`less than`,`fewer`,`menu`,`<`]],[[3],[`back`,`more than`,`greater`,`menu`,`>`]],[[3],[`caret`,`ahead`,`menu`,`^`]],[[11,32],[`pending`,`dot`,`progress`,`issue`,`draft`,`code`,`coding`,`version control`]],[[21],[`calculate`,`math`,`÷`,`/`]],[[15],[`monetization`,`marketing`,`currency`,`money`,`payment`]],[[11,32],[`pending`,`dot`,`progress`,`issue`,`code`,`coding`,`version control`,`choices`,`multiple choice`,`choose`]],[[11,32],[`pending`,`dot`,`progress`,`issue`,`draft`,`code`,`coding`,`version control`]],[[19,11],[`ellipsis`,`et cetera`,`etc`,`loader`,`loading`,`progress`,`pending`,`throbber`,`menu`,`options`,`operator`,`code`,`spread`,`rest`,`more`,`further`,`extra`,`overflow`,`dots`,`…`,`...`]],[[21],[`calculate`,`shape`,`=`]],[[3,11],[`north`,`up`,`upgrade`,`improve`,`circle`,`button`]],[[7,34],[`stories`,`social media`,`instagram`,`facebook`,`meta`,`snapchat`,`sharing`,`content`]],[[40,35,29],[`dashboard`,`dial`,`meter`,`speed`,`pressure`,`measure`,`level`]],[[21],[`subtract`,`remove`,`decrease`,`reduce`,`calculate`,`line`,`operator`,`code`,`coding`,`minimum`,`downgrade`,`-`]],[[32],[`diameter`,`zero`,`ø`,`nothing`,`null`,`void`,`cancel`,`ban`,`no`,`stop`,`forbidden`,`prohibited`,`error`,`incorrect`,`mistake`,`wrong`,`failure`]],[[40,25],[`parking lot`,`car park`]],[[40,25],[`parking lot`,`car park`,`no parking`]],[[23],[`music`,`audio`,`stop`]],[[34,15,33,21],[`verified`,`unverified`,`sale`,`discount`,`offer`,`marketing`,`sticker`,`price tag`]],[[32],[`off`,`zero`,`record`,`shape`,`circle-pile`,`circle`,`pile`,`stack`,`layer`,`structure`,`form`,`group`,`collection`,`stock`,`inventory`,`materials`,`warehouse`]],[[23],[`music`,`start`,`run`]],[[21,11,9,17],[`add`,`new`,`increase`,`increment`,`positive`,`calculate`,`crosshair`,`aim`,`target`,`scope`,`sight`,`reticule`,`maximum`,`upgrade`,`extra`,`operator`,`join`,`concatenate`,`code`,`coding`,`+`]],[[15],[`monetization`,`coin`,`penny`,`marketing`,`currency`,`money`,`payment`,`british`,`gbp`,`£`]],[[8],[`on`,`off`,`device`,`switch`,`toggle`,`binary`,`boolean`,`reboot`,`restart`,`button`,`keyboard`,`troubleshoot`]],[[0,37,26],[`question mark`]],[[11,21],[`diameter`,`zero`,`ø`,`nothing`,`null`,`void`,`cancel`,`ban`,`no`,`stop`,`forbidden`,`prohibited`,`error`,`incorrect`,`mistake`,`wrong`,`failure`,`divide`,`division`,`or`,`/`]],[[32,21,11],[`diameter`,`zero`,`ø`,`nothing`,`null`,`void`,`ban`,`math`,`divide`,`division`,`half`,`split`,`/`,`average`,`avg`,`mean`,`median`,`normal`]],[[32,22],[`shape`,`bullet`,`gender`,`genderless`]],[[35,17],[`badge`,`medal`,`honour`,`decoration`,`order`,`pin`,`laurel`,`trophy`,`medallion`,`insignia`,`bronze`,`silver`,`gold`]],[[23],[`media`,`music`]],[[1],[`person`,`account`,`contact`]],[[1],[`person`,`account`,`contact`]],[[21,11],[`cancel`,`close`,`delete`,`remove`,`times`,`clear`,`error`,`incorrect`,`wrong`,`mistake`,`failure`,`linter`,`multiply`,`multiplication`]],[[29,11],[`computing`,`electricity`,`electronics`]],[[16],[`lemon`,`orange`,`grapefruit`,`fruit`]],[[23],[`movie`,`film`,`video`,`camera`,`cinema`,`cut`,`action`,`television`,`tv`,`show`,`entertainment`]],[[37],[`copy`,`paste`]],[[37],[`copied`,`pasted`,`done`,`todo`,`tick`,`complete`,`task`]],[[38,37],[`copy`,`paste`,`history`,`log`,`clock`,`time`,`watch`,`alarm`,`hour`,`minute`,`reminder`,`scheduled`,`deadline`,`pending`,`time tracking`,`timesheets`,`appointment`,`logbook`]],[[37,3],[`copy`,`paste`]],[[37],[`copy`,`paste`,`tasks`]],[[37,22],[`copy`,`delete`,`remove`,`erase`,`document`,`medical`,`report`,`doctor`]],[[37,3],[`copy`,`paste`]],[[37],[`paste`,`signature`]],[[37],[`paste`]],[[37,22],[`copy`,`paste`,`add`,`create`,`new`,`document`,`medical`,`report`,`doctor`]],[[37],[`paste`,`format`,`text`]],[[37],[`copy`,`paste`,`discard`,`remove`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`,`noon`,`midnight`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`,`warning`,`wrong`]],[[38],[`time`,`watch`,`alarm`,`sort`,`order`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`]],[[38],[`time`,`watch`,`alarm`,`sort`,`order`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`,`add`,`create`,`new`]],[[0,23],[`tv`,`movie`,`video`,`closed captions`,`subtitles`,`subhead`,`transcription`,`transcribe`,`dialogue`,`accessibility`]],[[42],[`weather`]],[[11],[`weather`,`danger`,`warning`,`alert`,`error`,`sync`,`network`,`exclamation`]],[[3,14],[`storage`,`memory`,`bytes`,`servers`,`backup`,`timemachine`,`rotate`,`synchronize`,`synchronise`,`refresh`,`reconnect`,`transfer`,`data`,`security`,`upload`,`save`,`remote`,`safety`]],[[11],[`sync`,`network`,`success`,`done`,`completed`,`saved`,`persisted`]],[[11],[`computing`,`ai`,`cluster`,`network`]],[[3,14],[`import`]],[[42],[`weather`,`shower`]],[[42],[`weather`,`mist`]],[[42],[`weather`,`rainfall`]],[[42],[`weather`,`bolt`]],[[42],[`weather`,`night`]],[[42],[`weather`,`partly`,`night`,`rainfall`]],[[8,42],[`disconnect`]],[[42],[`weather`,`rainfall`]],[[42],[`weather`,`rainfall`]],[[42],[`weather`,`blizzard`]],[[42],[`weather`,`partly`]],[[42],[`weather`,`partly`,`rainfall`]],[[3,14],[`synchronize`,`synchronise`,`refresh`,`reconnect`,`transfer`,`backup`,`storage`,`upload`,`download`,`connection`,`network`,`data`]],[[3,14],[`file`]],[[42],[`weather`,`clouds`]],[[17],[`leaf`,`luck`,`plant`]],[[32,17],[`shape`,`suit`,`playing`,`cards`]],[[37,11],[`source`,`programming`,`html`,`xml`]],[[37,11],[`source`,`programming`,`html`,`xml`]],[[16],[`drink`,`cup`,`mug`,`tea`,`cafe`,`hot`,`beverage`]],[[1],[`computing`,`settings`,`cog`,`edit`,`gear`,`preferences`,`controls`,`configuration`,`fixed`,`build`,`construction`,`parts`]],[[17],[`money`,`cash`,`finance`,`gamble`]],[[19,10,37],[`lines`,`list`,`queue`,`preview`,`panel`,`parallel`,`series`,`split`,`vertical`,`horizontal`,`half`,`center`,`middle`,`even`,`sidebar`,`drawer`,`gutter`,`fold`,`reflow`,`typography`,`pagination`,`pages`]],[[19,10,37],[`lines`,`list`,`queue`,`preview`,`parallel`,`series`,`split`,`vertical`,`horizontal`,`thirds`,`triple`,`center`,`middle`,`alignment`,`even`,`sidebars`,`drawers`,`gutters`,`fold`,`reflow`,`typography`,`pagination`,`pages`]],[[19,10],[`columns`,`settings`,`customize`,`table`,`grid`,`adjust`,`configuration`,`panel`,`layout`]],[[19,10,37,31],`lines.list.queue.preview.parallel.series.split.vertical.horizontal.thirds.triple.center.middle.alignment.even.sidebars.drawers.gutters.fold.reflow.typography.pagination.pages.prison.jail.bars.sentence.police.cops.cell.crime.criminal.justice.law.enforcement.grill`.split(`.`)],[[11,14],[`cubes`,`packages`,`parts`,`units`,`collection`,`cluster`,`combine`,`gather`,`merge`]],[[11],[`keyboard`,`key`,`mac`,`cmd`,`button`]],[[25,41],[`direction`,`north`,`east`,`south`,`west`,`safari`,`browser`]],[[10,11],[`design`,`element`,`group`,`module`,`part`,`symbol`]],[[12,11,17],[`pc`,`chassis`,`codespaces`,`github`]],[[41],[`reception`,`bell`,`porter`]],[[32,21],[`conical`,`triangle`,`triangular`,`geometry`,`filter`,`funnel`,`hopper`,`spotlight`,`searchlight`]],[[11],[`roadwork`,`maintenance`,`blockade`,`barricade`]],[[1,8,7,34],[`user`,`person`,`family`,`friend`,`acquaintance`,`listing`,`networking`]],[[1,8,7,34],[`user`,`person`,`family`,`friend`,`acquaintance`,`listing`,`networking`]],[[11,40,20],[`storage`,`shipping`,`freight`,`supply chain`,`docker`,`environment`,`devops`,`code`,`coding`]],[[28,0,10],[`display`,`accessibility`]],[[1,16],[`biscuit`,`privacy`,`legal`,`food`]],[[16,18],[`pod`,`cooking`,`recipe`,`food`,`kitchen`,`chef`,`restaurant`,`dinner`,`lunch`,`breakfast`,`meal`,`eat`]],[[37],[`clone`,`duplicate`,`multiple`]],[[37,26],[`clone`,`duplicate`,`done`,`multiple`]],[[37,21],[`clone`,`duplicate`,`remove`,`delete`,`collapse`,`subtract`,`multiple`,`-`]],[[37,21],[`clone`,`duplicate`,`add`,`multiple`,`expand`,`+`]],[[37,11,21],[`clone`,`duplicate`,`cancel`,`ban`,`no`,`stop`,`forbidden`,`prohibited`,`error`,`multiple`,`divide`,`division`,`split`,`or`,`/`]],[[26,21],[`cancel`,`close`,`delete`,`remove`,`clear`,`multiple`,`multiply`,`multiplication`,`times`]],[[37],[`licence`]],[[37],[`licence`,`license`]],[[3],[`arrow`,`return`]],[[3,37,11],[`arrow`,`indent`,`tab`]],[[3],[`arrow`]],[[3],[`arrow`]],[[3],[`arrow`]],[[3],[`arrow`]],[[3],[`arrow`]],[[3],[`arrow`]],[[12],[`processor`,`cores`,`technology`,`computer`,`chip`,`circuit`,`memory`,`ram`,`specs`,`gigahertz`,`ghz`]],[[37],[`licence`,`license`]],[[1,15],[`bank`,`purchase`,`payment`,`cc`]],[[16],[`bakery`,`cooking`,`food`,`pastry`]],[[28,10],[`photo`,`image`]],[[32],[`healthcare`,`first aid`]],[[28],[`aim`,`target`]],[[17],[`diadem`,`tiara`,`circlet`,`corona`,`king`,`ruler`,`winner`,`favourite`]],[[32,21,16],[`brick`,`block`,`box`,`3d`,`solid`,`volume`,`container`,`storage`,`shipping`,`carton`,`geometry`,`rectangular`,`hexahedron`,`butter`,`tofu`,`soap`,`cheese`,`package`,`parcel`,`crate`]],[[16],[`beverage`,`cup`,`drink`,`soda`,`straw`,`water`]],[[15],[`finance`,`money`]],[[32,10,21],[`shape`,`elliptical`,`geometry`,`container`,`storage`,`tin`,`pot`]],[[5,36,25],[`electricity`,`energy`,`water`]],[[12,11],[`storage`,`memory`,`container`,`tin`,`pot`,`bytes`,`servers`]],[[12,3,10,11,28],[`storage`,`memory`,`bytes`,`servers`,`backup`,`timemachine`,`rotate`,`arrow`,`left`]],[[12,11],[`storage`,`memory`,`container`,`tin`,`pot`,`bytes`,`servers`]],[[12,11],[`cache busting`,`storage`,`memory`,`bytes`,`servers`,`power`,`crash`]],[[10,37,3,21],[`numerical`,`decimal`,`decrease`,`less`,`fewer`,`precision`,`rounding`,`digits`,`fraction`,`float`,`number`]],[[10,37,3,21],[`numerical`,`decimal`,`increase`,`more`,`precision`,`rounding`,`digits`,`fraction`,`float`,`number`]],[[37,3],[`backspace`,`remove`]],[[16],[`pudding`,`christmas`,`xmas`,`custard`,`iced bun`,`icing`,`fondant`,`cake`,`ice cream`,`gelato`,`sundae`,`scoop`,`dollop`,`sugar`,`food`,`sweet`]],[[32,21,10,39],[`shape`,`circle`,`geometry`,`trigonometry`,`width`,`height`,`size`,`calculate`,`measure`]],[[32,17],[`square`,`rectangle`,`oblique`,`rhombus`,`shape`,`suit`,`playing`,`cards`]],[[23,28,39,12],[`keyframe`,`subtract`,`remove`,`decrease`,`reduce`,`calculator`,`button`,`keyboard`,`line`,`divider`,`separator`,`horizontal rule`,`hr`,`html`,`markup`,`markdown`,`---`,`toolbar`,`operator`,`code`,`coding`,`minimum`,`downgrade`]],[[34,15,33,21],[`verified`,`unverified`,`sale`,`discount`,`offer`,`marketing`,`sticker`,`price tag`]],[[23,28,39,12],[`keyframe`,`add`,`new`,`increase`,`increment`,`positive`,`calculate`,`toolbar`,`crosshair`,`aim`,`target`,`scope`,`sight`,`reticule`,`maximum`,`upgrade`,`extra`,`+`]],[[17],[`dice`,`random`,`tabletop`,`1`,`board`,`game`]],[[17],[`dice`,`random`,`tabletop`,`2`,`board`,`game`]],[[17],[`dice`,`random`,`tabletop`,`3`,`board`,`game`]],[[17],[`dice`,`random`,`tabletop`,`4`,`board`,`game`]],[[17],[`dice`,`random`,`tabletop`,`5`,`board`,`game`]],[[17],[`dice`,`random`,`tabletop`,`6`,`board`,`game`]],[[17],[`dice`,`random`,`tabletop`,`board`,`game`]],[[11,14],[`patch`,`difference`,`compare`,`plus`,`minus`,`plus-minus`,`math`]],[[12,23],[`album`,`music`,`songs`,`format`,`cd`,`dvd`,`vinyl`,`sleeve`,`cover`,`platinum`,`compilation`,`ep`,`recording`,`playback`,`spin`,`rotate`,`rpm`,`dj`]],[[12,23],[`album`,`music`,`vinyl`,`record`,`cd`,`dvd`,`format`,`dj`,`spin`,`rotate`,`rpm`]],[[12,23],[`album`,`music`,`vinyl`,`record`,`cd`,`dvd`,`format`,`dj`,`spin`,`rotate`,`rpm`]],[[12,23],[`album`,`music`,`songs`,`format`,`cd`,`dvd`,`vinyl`,`sleeve`,`cover`,`platinum`,`compilation`,`ep`,`recording`,`playback`,`spin`,`rotate`,`rpm`,`dj`]],[[21,11],[`calculate`,`math`,`division`,`operator`,`code`,`÷`,`/`]],[[22],[`gene`,`gmo`,`helix`,`heredity`,`chromosome`,`nucleic acid`]],[[22,16],[`gene`,`gmo free`,`helix`,`heredity`,`chromosome`,`nucleic acid`]],[[19,10,11,14],[`desktop`,`applications`,`launch`,`home`,`menu bar`,`bottom`,`line`,`macos`,`osx`]],[[2],[`animal`,`pet`,`puppy`,`hound`,`canine`]],[[15],[`currency`,`money`,`payment`]],[[16],[`doughnut`,`sprinkles`,`topping`,`fast food`,`junk food`,`snack`,`treat`,`sweet`,`sugar`,`dessert`,`hollow`,`ring`]],[[18,41,31],[`entrance`,`entry`,`exit`,`ingress`,`egress`,`gate`,`gateway`,`emergency exit`]],[[18,41,31],[`entrance`,`entry`,`exit`,`ingress`,`egress`,`gate`,`gateway`,`emergency exit`,`lock`]],[[18,41,31],[`entrance`,`entry`,`exit`,`ingress`,`egress`,`gate`,`gateway`,`emergency exit`]],[[32,37],[`interpunct`,`interpoint`,`middot`,`step`,`punctuation`,`period`,`full stop`,`end`,`finish`,`final`,`characters`,`font`,`typography`,`type`,`center`,`.`]],[[3,14],[`import`,`export`,`save`]],[[21,10,39],[`geometry`,`trigonometry`,`radius`,`diameter`,`circumference`,`calculate`,`measure`,`arc`,`curve`,`draw`,`sketch`]],[[23],[`drama`,`masks`,`theater`,`theatre`,`entertainment`,`show`]],[[39,18,12],[`power`,`bit`,`head`,`hole`,`diy`,`toolbox`,`build`,`construction`]],[[40,12],[`quadcopter`,`uav`,`aerial`,`flight`,`flying`,`technology`,`airborne`,`robotics`]],[[42,17],[`water`,`weather`,`liquid`,`fluid`,`wet`,`moisture`,`damp`,`bead`,`globule`]],[[42,17],[`water`,`weather`,`liquid`,`fluid`,`wet`,`moisture`,`damp`,`bead`,`globule`]],[[42],[`water`,`weather`,`liquid`,`fluid`,`wet`,`moisture`,`damp`,`bead`,`globule`]],[[23,12],[`drummer`,`kit`,`sticks`,`instrument`,`beat`,`bang`,`bass`,`backing track`,`band`,`play`,`performance`,`concert`,`march`,`music`,`audio`,`sound`,`noise`,`loud`]],[[16],[`food`,`chicken`,`meat`]],[[25,35],[`barbell`,`weight`,`workout`,`gym`]],[[22,0],[`hearing`,`noise`,`audio`,`accessibility`]],[[22,0],[`hearing`,`hard of hearing`,`hearing loss`,`deafness`,`noise`,`silence`,`audio`,`accessibility`]],[[25],[`world`,`browser`,`language`,`translate`,`globe`]],[[31,11,12],[`vpn`,`private`,`privacy`,`network`,`world`,`browser`,`security`,`encryption`,`protection`,`connection`]],[[29,10,11,0,28],[`lunar`,`solar`,`crescent moon`,`sun`,`earth`,`day`,`night`,`planet`,`space`,`mode`,`dark`,`light`,`toggle`,`switch`,`color`,`css`,`styles`,`display`,`accessibility`,`contrast`,`brightness`,`blend`,`shade`]],[[16,2],[`bird`,`chicken`,`nest`,`hatch`,`shell`,`incubate`,`soft boiled`,`hard`,`breakfast`,`brunch`,`morning`,`easter`]],[[16],[`food`,`breakfast`]],[[16],[`egg free`,`vegan`,`hatched`,`bad egg`]],[[19,11],[`et cetera`,`etc`,`loader`,`loading`,`progress`,`pending`,`throbber`,`menu`,`options`,`operator`,`code`,`coding`,`spread`,`rest`,`more`,`further`,`extra`,`overflow`,`dots`,`…`,`...`]],[[19],[`menu`,`options`,`spread`,`more`,`further`,`extra`,`overflow`,`dots`,`…`,`...`]],[[21,11],[`calculate`,`math`,`operator`,`assignment`,`code`,`=`]],[[21],[`about`,`calculate`,`math`,`operater`]],[[21,11],[`calculate`,`off`,`math`,`operator`,`code`,`≠`]],[[37],[`pencil`,`drawing`,`undo`,`delete`,`clear`,`trash`,`remove`]],[[7,12,23,17],[`internet`,`network`,`connection`,`cable`,`lan`,`port`,`router`,`switch`,`hub`,`modem`,`web`,`online`,`networking`,`communication`,`socket`,`plug`,`slot`,`controller`,`connector`,`interface`,`console`,`signal`,`data`,`input`,`output`]],[[15],[`currency`,`money`,`payment`]],[[40,25],[`electric`,`charger`,`station`,`vehicle`,`fast`,`plug`,`ev`,`power`,`electricity`,`energy`,`accumulator`,`charge`]],[[37,3],[`scale`,`fullscreen`,`maximize`,`minimize`,`contract`]],[[3,37,34],[`outbound`,`open`,`share`]],[[0,28,10,31],[`view`,`watch`,`see`,`show`,`expose`,`reveal`,`display`,`visible`,`visibility`,`vision`,`preview`,`read`]],[[0,28,10,31],[`view`,`watch`,`see`,`hide`,`conceal`,`mask`,`hidden`,`visibility`,`vision`]],[[0,28,10,31],[`view`,`watch`,`see`,`hide`,`conceal`,`mask`,`hidden`,`visibility`,`vision`]],[[5,25],[`building`,`business`,`energy`,`industry`,`manufacture`,`sector`]],[[18],[`air`,`cooler`,`ventilation`,`ventilator`,`blower`]],[[23,3],[`music`]],[[17],[`logo`]],[[18,5],[`picket`,`panels`,`woodwork`,`diy`,`materials`,`suburban`,`garden`,`property`,`territory`]],[[25],[`big wheel`,`daisy wheel`,`observation`,`attraction`,`entertainment`,`amusement park`,`theme park`,`funfair`]],[[14],[`document`]],[[14],[`zip`,`package`,`archive`]],[[10,14],[`model`,`3d`,`axis`,`coordinates`]],[[14],[`award`,`achievement`,`badge`,`rosette`,`prize`,`winner`]],[[14],[`box`,`package`,`model`]],[[14,11],[`code`,`json`,`curly braces`,`curly brackets`]],[[14,11],[`code`,`json`,`curly braces`,`curly brackets`]],[[14],[`statistics`,`analytics`,`diagram`,`graph`,`presentation`]],[[14],[`statistics`,`analytics`,`diagram`,`graph`,`presentation`,`trending up`]],[[14],[`statistics`,`analytics`,`diagram`,`graph`,`presentation`]],[[14],[`statistics`,`analytics`,`diagram`,`graph`,`presentation`]],[[14],[`done`,`document`,`todo`,`tick`,`complete`,`task`]],[[14],[`done`,`document`,`todo`,`tick`,`complete`,`task`]],[[14,38],[`history`,`log`,`clock`]],[[14,11],[`script`,`document`,`gist`,`html`,`xml`,`property list`,`plist`]],[[14,11],[`script`,`document`,`html`,`xml`,`property list`,`plist`]],[[14],[`executable`,`settings`,`cog`,`edit`,`gear`]],[[14,11],[`diff`,`patch`]],[[14,11],[`number`,`document`]],[[14,3],[`download`,`import`,`export`]],[[14,26],[`hidden`,`warning`,`alert`,`danger`,`protected`,`exclamation mark`]],[[14],[`music`,`audio`,`sound`,`headphones`]],[[14],[`heart`,`favourite`,`bookmark`,`quick link`]],[[14],[`image`,`graphics`,`photo`,`picture`]],[[14,3],[`document`]],[[14,31],[`key`,`private`,`public`,`security`]],[[14,31],[`lock`,`password`,`security`]],[[14],[`delete`,`remove`,`erase`,`document`]],[[14],[`document`]],[[14,23],[`audio`,`sound`,`noise`,`track`,`digital`,`recording`,`playback`,`piano`,`keyboard`,`keys`,`notes`,`chord`,`midi`,`octave`]],[[14,3],[`document`]],[[14],[`signature`]],[[14],[`edit`]],[[14],[`movie`,`video`,`film`]],[[14],[`add`,`create`,`new`,`document`]],[[14],[`add`,`create`,`new`,`document`]],[[14],[`readme`,`help`,`question`]],[[14],[`scan`,`code`,`qr-code`]],[[14],[`lost`,`document`,`find`,`browser`,`lens`]],[[14],[`lost`,`document`,`find`,`browser`,`lens`]],[[14],[`audio`,`music`,`volume`]],[[14,11],[`cogged`,`gear`,`mechanical`,`machinery`,`configuration`,`controls`,`preferences`,`settings`,`system`,`admin`,`edit`,`executable`]],[[14],[`spreadsheet`,`sheet`,`table`]],[[14,11],[`versions`,`multiple`,`copy`,`documents`,`revisions`,`version control`,`history`]],[[14],[`symlink`,`symbolic`,`link`]],[[14,11],[`terminal`,`bash`,`script`,`executable`]],[[14,37],[`data`,`txt`,`pdf`,`document`]],[[14,37],[`font`,`text`,`typography`,`type`]],[[14,37],[`font`,`text`,`typography`,`type`]],[[14,3],[`upload`,`import`,`export`]],[[1,14],[`person`,`personal information`,`people`,`listing`,`networking`,`document`,`contact`,`cover letter`,`resume`,`cv`,`curriculum vitae`,`application form`]],[[14],[`movie`,`video`,`film`]],[[14],[`audio`,`music`,`volume`]],[[14],[`lost`,`delete`,`remove`,`document`]],[[14],[`lost`,`delete`,`remove`,`document`]],[[14],[`multiple`,`copy`,`documents`]],[[28,23],[`movie`,`video`,`reel`,`camera`,`cinema`,`entertainment`]],[[1,31,22,12],[`2fa`,`authentication`,`biometric`,`identity`,`security`]],[[18,39,41],[`flames`,`smoke`,`foam`,`water`,`spray`,`hose`,`firefighter`,`fireman`,`department`,`brigade`,`station`,`emergency`,`suppress`,`compressed`,`tank`,`cylinder`,`safety`,`equipment`,`amenities`]],[[16,2],[`dish`,`restaurant`,`course`,`meal`,`seafood`,`pet`,`sea`,`marine`]],[[16,2],[`food`,`dish`,`restaurant`,`course`,`meal`,`seafood`,`animal`,`pet`,`sea`,`marine`,`allergy`,`intolerance`,`diet`]],[[16,2],[`dish`,`restaurant`,`course`,`meal`,`seafood`,`pet`,`sea`,`marine`]],[[35,41],[`sea`,`boating`,`angler`,`bait`,`reel`,`tackle`,`marine`,`outdoors`,`fish`,`fishing`,`hook`,`sports`,`travel`]],[[35,41],[`fishing`,`rod`,`hobby`,`equipment`,`reel`]],[[1,34],[`report`,`marker`,`notification`,`warning`,`milestone`,`goal`,`notice`,`signal`,`attention`,`banner`]],[[1,34],[`unflag`,`unmark`,`report`,`marker`,`notification`,`warning`,`milestone`,`goal`,`notice`,`signal`,`attention`,`banner`]],[[11,25],[`report`,`timeline`,`marker`,`pin`]],[[11,25],[`report`,`timeline`,`marker`,`pin`]],[[42,34,17],[`heat`,`burn`,`light`,`glow`,`ignite`,`passion`,`ember`,`fire`,`lit`,`burning`,`spark`,`embers`,`smoke`,`firefighter`,`fireman`,`department`,`brigade`,`station`,`emergency`]],[[24,34,17],[`campfire`,`camping`,`wilderness`,`outdoors`,`lit`,`warmth`,`wood`,`twigs`,`sticks`]],[[28,12],[`torch`,`light`,`beam`,`emergency`,`safety`,`tool`,`bright`]],[[28,12],[`torch`,`light`,`beam`,`emergency`,`safety`,`tool`,`bright`]],[[29,17],[`beaker`,`erlenmeyer`,`lab`,`chemistry`,`experiment`,`test`]],[[29,17],[`beaker`,`erlenmeyer`,`non toxic`,`lab`,`chemistry`,`experiment`,`test`]],[[29,17],[`beaker`,`lab`,`chemistry`,`experiment`,`test`]],[[10,28],[`reflect`,`mirror`,`alignment`,`dashed`]],[[10,28],[`reflect`,`mirror`,`alignment`,`dashed`]],[[24,17,36],[`sustainability`,`nature`,`plant`,`spring`]],[[24,36,30],[`sustainability`,`nature`,`plant`]],[[28],[`camera`,`lens`,`photo`,`dashed`]],[[3,19],[`arrow`,`collapse`,`fold`,`vertical`,`dashed`]],[[3,19],[`arrow`,`collapse`,`fold`,`vertical`,`dashed`]],[[14],[`directory`]],[[14],[`archive`,`zip`,`package`]],[[14],[`done`,`directory`,`todo`,`tick`,`complete`,`task`]],[[14,38],[`history`,`directory`,`clock`]],[[14],[`directory`,`closed`]],[[14,11],[`directory`,`coding`,`develop`,`software`]],[[14],[`directory`,`settings`,`control`,`preferences`,`cog`,`edit`,`gear`]],[[14,11],[`directory`,`root`,`project`,`pinned`,`active`,`current`,`cogged`,`gear`,`mechanical`,`machinery`,`configuration`,`controls`,`preferences`,`settings`,`system`,`admin`,`edit`]],[[14,3],[`directory`,`download`,`import`,`export`]],[[14],[`directory`,`root`,`project`,`git`,`repo`]],[[14],[`directory`,`root`,`project`,`git`,`repo`]],[[14],[`directory`,`heart`,`favourite`,`bookmark`,`quick link`]],[[14,3],[`directory`,`import`,`export`]],[[6,11,10,14],[`projects`,`manage`,`overview`,`board`,`tickets`,`issues`,`roadmap`,`plan`,`intentions`,`productivity`,`work`,`agile`,`code`,`coding`,`directory`,`project`,`root`]],[[14,31],[`directory`,`key`,`private`,`security`,`protected`]],[[14,31],[`directory`,`lock`,`private`,`security`,`protected`]],[[14],[`directory`,`remove`,`delete`]],[[14],[`directory`]],[[14,11],[`directory`,`root`,`project`,`active`,`current`,`pinned`]],[[14,3],[`directory`,`import`,`export`]],[[14],[`directory`,`rename`]],[[14],[`directory`,`add`,`create`,`new`]],[[14,11],[`directory`,`root`,`project`,`git`,`repo`]],[[14],[`directory`,`search`,`find`,`lost`,`browser`,`lens`]],[[14],[`directory`,`search`,`find`,`lost`,`browser`,`lens`]],[[14],[`directory`,`symlink`,`symbolic`,`link`]],[[14,3],[`directory`,`synchronize`,`synchronise`,`refresh`,`reconnect`,`transfer`,`backup`]],[[14],[`directory`,`tree`,`browser`]],[[14,3],[`directory`,`upload`,`import`,`export`]],[[14],[`directory`,`remove`,`delete`]],[[14],[`multiple`,`copy`,`directories`]],[[25],[`steps`,`walking`,`foot`,`feet`,`trail`,`shoe`]],[[40],[`machinery`,`industrial`,`warehouse`,`lifting`,`storage`,`equipment`,`heavy-duty`,`moving`,`vehicle`,`transport`,`logistics`]],[[11],[`document`,`page`,`file`,`layout`,`paper`,`stub`,`formality`,`structure`,`template`,`inputs`,`design`,`components`]],[[20],[`send`,`share`,`email`]],[[10,28],[`logo`,`design`,`tool`]],[[13,1],[`emoji`,`face`,`bad`,`sad`,`emotion`]],[[40,25],[`filling-station`,`gas`,`petrol`,`tank`]],[[19,23,10,28],[`expand`,`zoom`,`preview`,`focus`,`camera`,`lens`,`image`]],[[19],[`filter`,`hopper`]],[[19],[`filter`,`hopper`,`add`,`create`,`new`]],[[19],[`filter`,`hopper`,`remove`,`delete`]],[[19,10,11,28,23],[`carousel`,`pictures`,`images`,`scroll`,`swipe`,`album`,`portfolio`]],[[19,10,11,28,23,14],[`carousel`,`pictures`,`images`,`scroll`,`swipe`,`album`,`portfolio`,`history`,`versions`,`backup`,`time machine`]],[[19,10,11,28,23],[`carousel`,`pictures`,`images`,`album`,`portfolio`,`preview`]],[[19,10,11,28,23],[`carousel`,`pictures`,`images`,`scroll`,`swipe`,`album`,`portfolio`]],[[19,10,11,28,23,14],[`carousel`,`pictures`,`images`,`scroll`,`swipe`,`album`,`portfolio`,`history`,`versions`,`backup`,`time machine`]],[[17,12],[`console`]],[[17,12],[`console`]],[[17,12],[`direction`,`arrow`,`controller`,`navigation`,`button`,`move`,`pointer`,`arrowhead`,`console`,`game`,`gaming`]],[[40,35,29],[`dashboard`,`dial`,`meter`,`speed`,`pressure`,`measure`,`level`]],[[25,39],[`justice`,`law`,`court`,`judgment`,`legal`,`hands`,`penalty`,`decision`,`authority`,`hammer`,`mallet`]],[[17,11,15],[`diamond`,`crystal`,`ruby`,`jewellery`,`price`,`special`,`present`,`gift`,`ring`,`wedding`,`proposal`,`marriage`,`rubygems`]],[[15],[`currency`,`money`,`payment`]],[[17],[`pac-man`,`spooky`]],[[17,1],[`present`,`box`,`birthday`,`party`]],[[11],[`code`,`version control`,`vcs`,`repository`]],[[11],[`code`,`version control`,`vcs`,`repository`,`delete`,`remove`,`-`]],[[11],[`code`,`version control`,`vcs`,`repository`,`add`,`create`,`+`]],[[11,25],[`code`,`version control`,`waypoint`,`stop`,`station`]],[[11,25],[`code`,`version control`,`waypoint`,`stop`,`station`]],[[11],[`code`,`version control`,`diff`]],[[11,3],[`code`,`version control`,`diff`]],[[11],[`code`,`version control`]],[[11],[`code`,`version control`,`commit graph`,`commits`,`gitlens`]],[[11],[`code`,`version control`]],[[11],[`code`,`version control`,`commits`,`diff`,`error`,`conflict`]],[[11],[`code`,`version control`,`open`]],[[11,3],[`code`,`version control`,`open`]],[[11],[`code`,`version control`,`rejected`,`closed`,`cancelled`,`x`]],[[11],[`code`,`version control`,`open`,`plus`,`add`,`+`]],[[11,3],[`code`,`version control`,`open`,`plus`,`add`,`+`]],[[11],[`code`,`version control`,`open`,`draft`,`dashed`]],[[16],[`beverage`,`drink`,`glass`,`water`]],[[0],[`glasses`,`spectacles`]],[[25],[`world`,`browser`,`language`,`translate`]],[[31,11,12],[`vpn`,`private`,`privacy`,`network`,`world`,`browser`,`security`,`encryption`,`protection`,`connection`]],[[25,8,12],[`globe`,`earth`,`planet`,`disable`,`mute`,`off`,`hide`,`avoid`,`world`,`browser`,`language`,`translate`,`internet`,`offline`,`disconnected`,`network`,`connection`,`no connection`,`network failure`,`signal off`]],[[8,12,25],[`globe`,`internet`,`offline`,`disconnected`,`network`,`connection`,`world`,`no connection`,`network failure`,`signal off`]],[[17],[`flag`,`bullseye`]],[[12,17],[`processor`,`cores`,`technology`,`computer`,`chip`,`circuit`,`specs`,`graphics processing unit`,`video card`,`display adapter`,`gddr`,`rendering`,`digital image processing`,`crypto mining`]],[[5],[`school`,`university`,`learn`,`study`,`mortarboard`,`education`,`ceremony`,`academic`,`hat`,`diploma`,`bachlor's`,`master's`,`doctorate`]],[[16],[`fruit`,`wine`,`food`]],[[37,19,10,21],[`table`,`rows`,`columns`,`blocks`,`plot`,`land`,`geometry`,`measure`,`size`,`width`,`height`,`distance`,`surface area`,`square meter`,`acre`,`window`,`skylight`]],[[37,19,21],[`table`,`rows`,`columns`,`blocks`,`plot`,`land`,`geometry`,`measure`,`data`,`size`,`width`,`height`,`distance`,`surface area`,`square meter`,`acre`]],[[37,19,21],[`table`,`rows`,`columns`,`blocks`,`plot`,`land`,`geometry`,`measure`,`data`,`size`,`width`,`height`,`distance`,`surface area`,`square meter`,`acre`]],[[37,19,21],[`table`,`rows`,`columns`,`data`,`blocks`,`plot`,`land`,`geometry`,`measure`,`size`,`width`,`height`,`distance`,`surface area`,`square meter`,`acre`]],[[37,21,19,10],[`table`,`rows`,`columns`,`blocks`,`plot`,`land`,`geometry`,`measure`,`size`,`width`,`height`,`distance`,`surface area`,`square meter`,`acre`,`window`]],[[37,19,10],[`table`,`rows`,`columns`]],[[19],[`grab`,`dots`,`handle`,`move`,`drag`]],[[19],[`grab`,`dots`,`handle`,`move`,`drag`]],[[19],[`grab`,`dots`,`handle`,`move`,`drag`]],[[14],[`cubes`,`packages`,`parts`,`units`,`collection`,`cluster`,`gather`,`dashed`]],[[23],[`acoustic`,`instrument`,`strings`,`riff`,`rock`,`band`,`country`,`concert`,`performance`,`play`,`lead`,`loud`,`music`,`audio`,`sound`,`noise`]],[[16],[`food`,`pork`,`pig`,`meat`,`bone`,`hock`,`knuckle`,`gammon`,`cured`]],[[16],`burger.cheeseburger.meat.beef.patty.bun.fast food.junk food.takeaway.takeout.snack.dish.restaurant.lunch.meal.savory.savoury.cookery.cooking.grilled.barbecue.barbeque.bbq.lettuce.tomato.relish.pickles.onions.ketchup.mustard.mayonnaise`.split(`.`)],[[39,18],[`mallet`,`nails`,`diy`,`toolbox`,`build`,`construction`]],[[9,0],[`wave`,`move`,`mouse`,`grab`]],[[15,1],[`savings`,`banking`,`money`,`finance`,`offers`,`mortgage`,`payment`,`received`,`wage`,`payroll`,`allowance`,`pocket money`,`handout`,`pennies`]],[[34,13,7,35],[`clench`,`strength`,`power`,`unity`,`solidarity`,`rebellion`,`victory`,`triumph`,`support`,`fight`,`combat`,`brawl`]],[[9,10,19],[`hand`]],[[34],[`love`,`like`,`emotion`]],[[13],[`agreement`,`help`,`proposal`,`charity`,`begging`,`terms`]],[[13,23],[`rock`]],[[16,27],[`waiter`,`waitress`,`restaurant`,`table service`,`served`,`dinner`,`dining`,`meal`,`course`,`luxury`]],[[33,40],[`bag`,`baggage`,`carry`,`clutch`,`fashion`,`luggage`,`purse`,`tote`,`travel`]],[[1,34,7,15,31],[`agreement`,`partnership`,`deal`,`business`,`assistance`,`cooperation`,`friendship`,`union`,`terms`]],[[11,12],[`computer`,`server`,`memory`,`data`,`ssd`,`disk`,`hard disk`,`storage`,`hardware`,`backup`,`media`]],[[11,12,3,14],[`computer`,`server`,`memory`,`data`,`ssd`,`disk`,`hard disk`,`save`]],[[11,12,3,14],[`computer`,`server`,`memory`,`data`,`ssd`,`disk`,`hard disk`,`save`]],[[39],[`helmet`,`construction`,`safety`,`savety`]],[[37,34],[`hashtag`,`number`,`pound`]],[[34,1,31],[`incognito`,`disguise`,`costume`,`masked`,`anonymous`,`anonymity`,`privacy`,`private browsing`,`stealth`,`hidden`,`undercover`,`cloak`,`invisible`,`ghost`,`spy`,`agent`,`detective`,`identity`,`cap`,`fedora`,`spectacles`,`shades`,`sunglasses`,`eyewear`]],[[42],[`mist`,`fog`]],[[12,23],[`tv`,`resolution`,`video`,`high definition`,`720p`,`1080p`]],[[12,23,17],[`socket`,`plug`,`slot`,`controller`,`connector`,`interface`,`console`,`signal`,`audio`,`video`,`visual`,`av`,`data`,`input`,`output`]],[[37],[`h1`,`html`,`markup`,`markdown`]],[[37],[`h1`,`html`,`markup`,`markdown`]],[[37],[`h2`,`html`,`markup`,`markdown`]],[[37],[`h3`,`html`,`markup`,`markdown`]],[[37],[`h4`,`html`,`markup`,`markdown`]],[[37],[`h5`,`html`,`markup`,`markdown`]],[[37],[`h6`,`html`,`markup`,`markdown`]],[[23,8,7,12,17],[`music`,`audio`,`sound`,`mute`,`off`]],[[23,8,12,14,17],[`music`,`audio`,`sound`]],[[23,8,12,14,17],[`music`,`audio`,`sound`,`gaming`,`headphones`,`headset`,`call`,`center`,`phone`,`telephone`,`voip`,`video`]],[[22,34,23,13,17,32],[`like`,`love`,`emotion`,`suit`,`playing`,`cards`]],[[13],[`heartbreak`,`sadness`,`emotion`]],[[13,1,31],[`agreement`,`charity`,`help`,`deal`,`terms`,`emotion`,`together`,`handshake`]],[[22,1,23,17,34],[`unlike`,`unfavorite`,`remove`,`damage`,`ui & ux`]],[[34,23],[`unlike`,`dislike`,`hate`,`emotion`]],[[22,1,23,17,34],[`plus`,`like`,`favorite`,`add`,`health`,`support`]],[[22],[`heartbeat`,`pulse`,`health`,`medical`,`blood pressure`,`cardiac`,`systole`,`diastole`]],[[18,12,41],[`heating`,`warmth`,`comfort`,`fire`,`stove`,`electric`,`electronics`,`amenities`]],[[40,41],[`transport`,`flying`,`rotor`,`aviation`,`helipad`,`gear`,`flyer`,`technology`,`helicopter`,`aircraft`,`vehicle`]],[[32,4,11],[`shape`,`node.js`,`logo`]],[[37,10],[`mark`,`text`]],[[3,38],[`time`,`redo`,`undo`,`rewind`,`timeline`,`version`,`time machine`,`backup`,`rotate`,`ccw`]],[[16],[`beer`,`brewery`,`drink`]],[[16],[`beer`,`brewery`,`drink`,`hop free`,`allergy`,`intolerance`,`diet`]],[[22,5,25,41],[`infirmary`,`sanatorium`,`healthcare`,`doctor`,`hospice`,`clinic`,`emergency room`,`ward`,`building`,`medical`,`vet`]],[[5,25,41],[`building`,`hostel`,`motel`,`inn`]],[[38,17],[`timer`,`time`,`sandglass`]],[[5,18,25],[`home`,`living`,`building`,`residence`,`architecture`]],[[18,5,22],[`home sweet home`,`abode`,`building`,`residence`,`healthy living`,`lifestyle`]],[[5,18,36],[`home`,`living`,`building`,`residence`,`architecture`,`autarky`,`energy`]],[[5,22],[`home`,`living`,`medical`,`new`,`addition`,`building`,`residence`,`architecture`]],[[18,5,8],[`home`,`living`,`building`,`wifi`,`connectivity`]],[[16],[`gelato`,`food`,`dessert`,`dish`,`restaurant`,`course`,`meal`]],[[16],[`gelato`,`food`]],[[31,1],[`card`,`badge`,`identity`,`authentication`,`secure`]],[[31,1],[`id-card`,`id-card-lanyard`,`identity`,`employee`,`gate-pass`,`badge`]],[[28,37,23,14],[`picture`,`photo`]],[[28,37,23,14],[`picture`,`photo`,`download`,`save`,`export`]],[[28,23,14],[`remove`,`delete`]],[[28,23,14],[`picture`,`photo`]],[[28,37,23,14],[`picture`,`gif`,`photo`]],[[28,23,14],[`add`,`create`,`picture`]],[[28,37,23,14],[`picture`,`photo`,`upload`,`import`]],[[28,23],[`resize`,`picture`,`sharpen`,`increase`]],[[28,37,23,14],[`picture`,`photo`,`multiple`,`copy`,`gallery`,`album`,`collection`,`slideshow`,`showcase`]],[[3,14],[`save`]],[[1,20],[`email`]],[[15],[`currency`,`money`,`payment`]],[[23],[`unlimited`,`forever`,`loop`,`math`]],[[0,26],[`about`,`advice`,`clue`,`details`,`help`,`hint`,`indicator`,`information`,`knowledge`,`notice`,`status`,`support`,`tooltip`]],[[39],[`access`,`cover`,`tile`,`metal`,`materials`,`screws`]],[[37],[`oblique`,`text`,`format`]],[[3,10],[`arrow`,`right`]],[[3,10],[`arrow`,`left`]],[[15],[`currency`,`money`,`payment`]],[[17,12],[`game`,`console`,`control stick`]],[[6,11,10],[`projects`,`manage`,`overview`,`board`,`tickets`,`issues`,`roadmap`,`plan`,`intentions`,`productivity`,`work`,`agile`,`code`,`coding`]],[[40],[`kayak`,`boat`,`paddle`,`water`,`sport`,`recreation`,`adventure`,`outdoors`,`equipment`,`lake`,`ocean`]],[[31,1],[`password`,`login`,`authentication`,`secure`,`unlock`,`keychain`,`key ring`,`fob`]],[[31,1],[`password`,`login`,`authentication`,`secure`,`unlock`]],[[31,1],[`password`,`login`,`authentication`,`secure`,`unlock`,`car key`]],[[37,12,11],[`layout`,`spell`,`settings`,`mouse`]],[[23,12],[`music`,`audio`,`sound`,`noise`,`notes`,`keys`,`chord`,`octave`,`midi`,`controller`,`instrument`,`electric`,`signal`,`digital`,`studio`,`production`,`producer`,`pianist`,`piano`,`play`,`performance`,`concert`]],[[12,37,11],[`unkeys`,`layout`,`spell`,`settings`,`mouse`]],[[18],[`lighting`,`household`,`home`,`furniture`]],[[18],[`lighting`,`household`,`home`,`furniture`]],[[18],[`lighting`,`household`,`office`,`desk`,`home`,`furniture`]],[[18],[`lighting`,`household`,`floor`,`home`,`furniture`]],[[18],[`lighting`,`household`,`wall`,`home`,`furniture`]],[[18],[`lighting`,`household`,`wall`,`home`,`furniture`]],[[10,39,21,35,17],[`area`,`surface`,`square metres`,`allotment`,`parcel`,`property`,`plane`,`acres`,`measure`,`distance`,`isometric`,`flag`,`golf course`,`hole`]],[[15,25,5],[`bank`,`building`,`capitol`,`finance`,`money`,`museum`,`art gallery`,`hall`,`institute`,`pediment`,`portico`,`columns`,`pillars`,`classical`,`architecture`,`government`,`institution`]],[[37],[`translate`]],[[12],[`computer`,`screen`,`remote`]],[[12],[`computer`,`screen`,`remote`]],[[12,26],[`computer`,`screen`,`remote`,`success`,`done`,`todo`,`tick`,`complete`,`task`]],[[10,9],[`select`,`cursor`]],[[3,10,9],[`select`,`cursor`]],[[13],[`emoji`,`face`,`happy`,`good`,`emotion`]],[[10,19],[`stack`,`pile`,`pages`,`sheets`,`paperwork`,`copies`,`copy`]],[[10,19],[`stack`,`pile`,`pages`,`sheets`,`paperwork`,`copies`,`copy`,`duplicate`,`double`,`shortcuts`]],[[10,19],[`stack`,`layers`,`add`,`new`,`increase`,`create`,`positive`,`copy`,`upgrade`]],[[10,19],[`masonry`,`brick`]],[[10,19],[`app`,`home`,`start`]],[[10,19,28,37],[`todo`,`tasks`,`items`,`pending`,`image`,`photo`]],[[10,19],[`app`,`home`,`start`,`grid`]],[[19],[`window`,`webpage`,`block`,`section`,`grid`,`template`,`structure`]],[[19],[`window`,`webpage`,`block`,`section`]],[[24,36,30],[`sustainability`,`nature`,`energy`,`plant`,`autumn`]],[[16,13,36],[`salad`,`lettuce`,`vegetable`,`chard`,`cabbage`,`bok choy`]],[[7,23],[`pulpit`,`podium`,`stand`]],[[29,39,32],[`concave`,`lens`,`optics`,`light`,`magnification`,`curved`,`focus`,`refraction`,`science`,`physics`,`eyeglass`,`telescope`,`microscope`]],[[29,39,32],[`convex`,`lens`,`optics`,`magnification`,`focus`,`light`,`refraction`,`physics`,`eyeglass`,`telescope`,`microscope`,`curved`,`science`]],[[37,28,23,25,11],[`books`,`reading`,`written`,`authors`,`stories`,`fiction`,`novels`,`information`,`knowledge`,`education`,`high school`,`university`,`college`,`academy`,`learning`,`study`,`research`,`collection`,`vinyl`,`records`,`albums`,`music`,`package`]],[[37,28,23,25,11],[`books`,`reading`,`written`,`authors`,`stories`,`fiction`,`novels`,`information`,`knowledge`,`education`,`high school`,`university`,`college`,`academy`,`learning`,`study`,`research`,`collection`,`vinyl`,`records`,`albums`,`music`,`package`]],[[0,22],[`preserver`,`life belt`,`lifesaver`,`help`,`rescue`,`ship`,`ring`,`raft`,`inflatable`,`wheel`,`donut`]],[[37],[`text`,`font`,`typography`,`alternates`,`alternatives`]],[[28],[`idea`,`bright`,`lights`]],[[28],[`lights`]],[[11,25],[`code`,`version control`,`waypoint`,`stop`,`station`,`last`,`end`]],[[32,21,10],[`line`,`snakes`,`annotate`,`curve`,`doodle`,`stroke`,`pen`,`tool`,`gesture`,`draw`,`wave`,`art`,`road`]],[[37,1],[`chain`,`url`]],[[37,1],[`chain`,`url`]],[[37],[`unchain`,`chain`]],[[37],[`options`]],[[37],[`done`,`check`,`tick`,`complete`,`list`,`to-do`,`bom`]],[[37],[`todo`,`done`,`check`,`tick`,`complete`,`tasks`,`items`,`pending`]],[[37,3],[`options`,`items`,`collapse`,`expand`,`details`,`disclosure`,`show`,`hide`,`toggle`,`accordion`,`more`,`less`,`fold`,`unfold`,`vertical`]],[[37,3],[`options`,`items`,`collapse`,`expand`,`details`,`disclosure`,`show`,`hide`,`toggle`,`accordion`,`more`,`less`,`fold`,`unfold`,`vertical`]],[[37],[`items`,`collapse`,`expand`,`details`,`disclosure`,`show`,`hide`,`toggle`,`accordion`,`more`,`less`,`fold`,`unfold`]],[[23,37],[`queue`,`bottom`,`end`,`playlist`]],[[37],[`options`]],[[37,19],[`filter`,`plus`,`options`,`add`]],[[37,11],[`text`,`tab`]],[[37,11],[`text`,`tab`]],[[23,37],[`playlist`,`remove`,`song`,`subtract`,`delete`,`unqueue`]],[[23],[`playlist`,`queue`,`music`,`audio`,`playback`]],[[37],[`number`,`order`,`queue`]],[[23,37],[`playlist`,`add`,`song`,`track`,`new`]],[[23,37],[`reset`,`refresh`,`reload`,`playlist`,`replay`]],[[23,37],[`queue`,`top`,`start`,`next`,`playlist`]],[[37],[`todo`,`done`,`check`,`tick`,`complete`,`tasks`,`items`,`pending`]],[[14,37,19],[`tree`,`browser`]],[[23],[`playlist`,`video`,`playback`]],[[23,37],[`playlist`,`subtract`,`remove`,`delete`,`unqueue`]],[[9,23,19,10],[`loading`,`wait`,`busy`,`progress`,`spinner`,`spinning`,`throbber`]],[[9,23,19],[`loading`,`wait`,`busy`,`progress`,`spinner`,`spinning`,`throbber`,`circle`]],[[9,10],[`loading`,`wait`,`busy`,`progress`,`throbber`,`spinner`,`spinning`,`beach ball`,`frozen`,`freeze`]],[[25],[`map`,`gps`,`location`,`cross`]],[[25],[`map`,`gps`,`location`,`cross`]],[[25],[`map`,`gps`,`location`,`cross`]],[[31],[`security`,`password`,`secure`,`admin`]],[[31],[`security`,`password`,`secure`,`admin`]],[[31],[`security`]],[[31],[`security`]],[[3,1],[`sign in`,`arrow`,`enter`,`auth`]],[[3,1],[`sign out`,`arrow`,`exit`,`auth`]],[[37],[`options`,`list`,`menu`,`order`,`queue`,`tasks`,`logs`]],[[16],[`lolly`,`candy`,`sugar`,`food`,`sweet`,`dessert`,`spiral`]],[[41,40],[`baggage`,`luggage`,`travel`,`suitcase`]],[[10],[`horseshoe`,`lock`,`science`,`snap`]],[[37,1,20],[`email`,`message`,`letter`,`unread`]],[[20],[`email`,`message`,`letter`,`subscribe`,`delivered`,`success`,`read`,`done`,`todo`,`tick`,`complete`,`task`]],[[20],[`email`,`message`,`letter`,`remove`,`delete`]],[[20],[`email`,`message`,`letter`,`read`]],[[20],[`email`,`message`,`letter`,`add`,`create`,`new`,`compose`]],[[20],[`email`,`message`,`letter`,`delivery`,`undelivered`]],[[20],[`email`,`message`,`letter`,`search`,`lens`]],[[20],[`email`,`message`,`letter`,`delivery error`,`exclamation mark`]],[[20],[`email`,`message`,`letter`,`remove`,`delete`]],[[20],[`emails`,`messages`,`letters`,`mailing list`,`newsletter`]],[[20],[`emails`,`messages`,`letters`,`multiple`,`mailing list`,`newsletter`,`copy`]],[[37,25],[`location`,`navigation`,`travel`]],[[25,41],[`location`,`navigation`,`travel`,`drop`,`delete`,`remove`,`erase`]],[[25,41,1],[`location`,`waypoint`,`marker`,`drop`]],[[25,41,1],[`location`,`waypoint`,`marker`,`drop`,`done`,`tick`,`complete`,`task`,`added`]],[[25,41,1],[`location`,`waypoint`,`marker`,`drop`,`done`,`tick`,`complete`,`task`,`added`]],[[25,41,1],[`location`,`waypoint`,`marker`,`drop`,`home`,`living`,`building`,`residence`,`architecture`,`address`,`poi`,`real estate`,`property`,`navigation`,`destination`,`geolocation`,`place`,`landmark`]],[[25,41,1],[`location`,`waypoint`,`marker`,`drop`,`delete`,`remove`,`erase`]],[[25,41,1],[`location`,`waypoint`,`marker`,`drop`,`delete`,`remove`,`erase`]],[[25,41],[`location`,`waypoint`,`marker`,`remove`]],[[25,41,1],[`location`,`waypoint`,`marker`,`drop`,`edit`]],[[25,41,1],[`location`,`waypoint`,`marker`,`drop`,`add`,`create`,`new`]],[[25,41,1],[`location`,`waypoint`,`marker`,`drop`,`add`,`create`,`new`]],[[25,41,1],[`location`,`waypoint`,`marker`,`drop`,`delete`,`remove`,`erase`]],[[25,41,1],[`location`,`waypoint`,`marker`,`drop`,`delete`,`remove`,`erase`]],[[25,41,1],[`location`,`waypoint`,`marker`,`drop`]],[[25],[`location`,`navigation`,`travel`,`new`,`add`,`create`]],[[22],[`gender`,`sex`,`male`,`masculine`,`man`,`boy`]],[[22],[`gender`,`androgyne`,`transgender`]],[[16],[`cocktail`,`alcohol`,`beverage`,`bar`,`drink`,`glass`]],[[19,10],[`fullscreen`,`expand`,`dashed`]],[[3,19,10],[`fullscreen`,`arrows`,`expand`]],[[35,17],[`prize`,`sports`,`winner`,`trophy`,`award`,`achievement`]],[[23,26],[`advertisement`,`announcement`,`attention`,`alert`,`loudspeaker`,`megaphone`,`notification`]],[[23,26],[`advertisement`,`announcement`,`attention`,`alert`,`loudspeaker`,`megaphone`,`notification`,`disable`,`silent`]],[[13],[`emoji`,`face`,`neutral`,`emotion`]],[[12,17],[`ram`,`random access`,`technology`,`computer`,`chip`,`circuit`,`specs`,`capacity`,`gigabytes`,`gb`]],[[19,1],[`bars`,`navigation`,`hamburger`,`options`]],[[11,3],[`combine`,`join`,`unite`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`]],[[34,1],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`moderate`,`check`,`done`,`todo`,`complete`]],[[11,34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`code review`,`coding`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`draft`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`positive`,`like`,`love`,`interest`,`valentine`,`dating`,`date`,`speech bubble`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`typing`,`writing`,`responding`,`ellipsis`,`etc`,`et cetera`,`...`,`…`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`clear`,`close`,`delete`,`remove`,`cancel`,`silence`,`mute`,`moderate`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`add`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`help`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`reply`,`response`]],[[34,26],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`report`,`abuse`,`offense`,`alert`,`danger`,`caution`,`protected`,`exclamation mark`]],[[1,34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`clear`,`close`,`delete`,`remove`,`cancel`,`silence`,`mute`,`moderate`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`]],[[34,1],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`moderate`,`check`,`done`,`todo`,`complete`]],[[11,34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`code review`,`coding`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`draft`]],[[11,14,34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`add`,`patch`,`difference`,`plus`,`minus`,`plus-minus`,`math`,`code review`,`coding`,`version control`,`git`]],[[34,26],[`unread`,`unresolved`,`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`positive`,`like`,`love`,`interest`,`valentine`,`dating`,`date`,`speech bubble`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`secure`,`encrypted`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`typing`,`writing`,`responding`,`ellipsis`,`etc`,`et cetera`,`...`,`…`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`clear`,`close`,`delete`,`remove`,`cancel`,`silence`,`mute`,`moderate`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`add`]],[[34,37],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`blockquote`,`quotation`,`indent`,`reply`,`response`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`reply`,`response`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`network`,`forward`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`]],[[34,26],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`report`,`abuse`,`offense`,`alert`,`danger`,`caution`,`protected`,`exclamation mark`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`clear`,`close`,`delete`,`remove`,`cancel`,`silence`,`mute`,`moderate`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubbles`,`copy`,`multiple`,`discussion`,`interview`,`debate`]],[[23,38],[`metronome`,`tempo`,`rhythm`,`beat`,`bpm`,`music`,`audio`,`sound`,`practice`,`timing`,`timer`,`time`,`pulse`,`sync`,`cadence`,`control`,`playback`,`studio`,`tool`]],[[12,7,8,23],[`record`,`sound`,`listen`,`radio`,`podcast`,`microphone`]],[[12,7,8,23],[`record`,`sound`,`mute`,`microphone`]],[[12,23],[`lyrics`,`voice`,`listen`,`sound`,`music`,`radio`,`podcast`,`karaoke`,`singing`,`microphone`]],[[12],[`processor`,`cores`,`technology`,`computer`,`chip`,`integrated circuit`,`memory`,`ram`,`specs`,`gpu`,`gigahertz`,`ghz`]],[[29,22],[`medical`,`education`,`science`,`imaging`,`research`]],[[16,18],[`oven`,`cooker`,`toaster oven`,`bake`]],[[3,25,11,17],[`signpost`,`direction`,`right`,`east`,`forward`,`version control`,`waypoint`]],[[16],[`lactose`,`bottle`,`beverage`,`drink`,`water`,`diet`]],[[16],[`lactose free`,`bottle`,`beverage`,`drink`,`water`,`allergy`,`intolerance`,`diet`]],[[19,10],[`exit fullscreen`,`close`,`shrink`]],[[3,19,10],[`exit fullscreen`,`arrows`,`close`,`shrink`]],[[21,11,37,39],[`subtract`,`remove`,`decrease`,`decrement`,`reduce`,`negative`,`calculate`,`line`,`divider`,`separator`,`horizontal rule`,`hr`,`html`,`markup`,`markdown`,`---`,`toolbar`,`operator`,`code`,`coding`,`minimum`,`downgrade`]],[[29,18,39],[`reflection`,`optics`,`glass`,`surface`,`image`,`physics`,`science`,`bathroom`,`decor`,`cosmetic`,`shiny`,`periscope`,`vanity`]],[[29,18,39],[`reflection`,`optics`,`glass`,`surface`,`image`,`physics`,`science`,`bathroom`,`vanity`,`makeup`,`decor`,`cosmetic`,`shiny`,`periscope`]],[[8,12],[`tv`,`screen`,`display`,`virtual machine`,`vm`]],[[8,12],[`tv`,`screen`,`display`,`desktop`,`running`,`active`,`virtual machine`,`vm`]],[[8,12,11],[`virtual machine`,`virtual desktop`,`vm`,`vdi`,`computing`,`remote work`,`monitoring`,`infrastructure`,`software as a service`,`saas`,`workstation`,`environment`,`tv`,`screen`,`display`]],[[8,12],[`tv`,`screen`,`display`,`virtual machine`,`vm`,`executable`,`settings`,`cog`,`edit`,`gear`,`configuration`,`preferences`,`system`,`control panel`,`network`,`computing`]],[[8,12],[`tv`,`screen`,`display`,`desktop`,`running`,`active`,`virtual machine`,`vm`]],[[8,12],[`tv`,`screen`,`display`,`desktop`,`download`]],[[8,12],[`share`]],[[8,12,23],[`tv`,`screen`,`display`,`desktop`,`video`,`movie`,`film`,`suspend`,`hibernate`,`boot`,`virtual machine`,`vm`]],[[8,12,23],[`tv`,`screen`,`display`,`desktop`,`video`,`movie`,`film`,`running`,`start`,`boot`,`virtual machine`,`vm`]],[[8,12],[`smartphone`,`phone`,`cellphone`,`device`,`mobile`,`desktop`,`monitor`,`responsive`,`screens`]],[[8,12],[`devices`,`connect`,`cast`]],[[8,12,23],[`tv`,`screen`,`display`,`desktop`,`video`,`movie`,`film`,`stop`,`shutdown`,`virtual machine`,`vm`]],[[8,12],[`tv`,`screen`,`display`,`upload`,`connect`,`remote`,`screen share`]],[[8,12],[`tv`,`screen`,`display`,`desktop`,`virtual machine`,`vm`,`close`,`stop`,`suspend`,`remove`,`delete`]],[[0],[`dark`,`night`]],[[0,42],[`dark`,`night`,`star`]],[[40],[`moto`,`motorcycle`,`transport`,`vehicle`,`drive`,`ride`,`trip`,`race`,`racing`,`journey`,`delivery`]],[[24,17],[`climb`,`hike`,`rock`]],[[24],[`alpine`,`climb`,`snow`]],[[12],[`device`,`scroll`,`click`]],[[12],[`device`,`scroll`,`click`]],[[12],[`device`,`scroll`,`click`,`disabled`]],[[3,9],[`click`,`select`]],[[3,9],[`click`,`select`]],[[3,9],[`pointer`,`mouse`,`cursor`,`off`,`disable`,`arrow`,`navigation`,`selection`,`select`,`click`,`no-click`,`interaction`]],[[3,9],[`wait`,`busy`,`loading`,`blocked`,`frozen`,`freeze`]],[[3,9],[`click`,`select`]],[[12],[`device`,`scroll`,`click`]],[[3,9],[`arrows`]],[[10],[`arrows`,`axis`,`gizmo`,`coordinates`,`transform`,`translate`]],[[3,9],[`double`,`arrow`]],[[3,9],[`double`,`arrow`]],[[3],[`arrow`,`direction`,`downwards`,`south`]],[[3],[`arrow`,`direction`]],[[3],[`arrow`,`direction`]],[[3,9],[`double`,`arrow`]],[[3],[`arrow`,`direction`,`back`,`west`]],[[3],[`arrow`,`direction`,`trend flat`,`east`]],[[3],[`arrow`,`direction`,`upwards`,`north`]],[[3],[`arrow`,`direction`]],[[3],[`arrow`,`direction`]],[[3,9],[`double`,`arrow`]],[[23,14],[`note`,`quaver`,`eighth note`]],[[23,14],[`quaver`,`eighth note`,`note`]],[[23,14],[`crotchet`,`minim`,`quarter note`,`half note`,`note`]],[[23,14],[`semiquaver`,`sixteenth note`,`note`]],[[25],[`location`,`travel`]],[[25],[`location`,`travel`]],[[25],[`location`,`travel`]],[[25],[`location`,`travel`]],[[11],[`tree`]],[[23,7],[`news`,`feed`,`home`,`magazine`,`article`,`headline`]],[[7,15,12],[`contactless`,`payment`,`near-field communication`]],[[22],[`gender`,`nonbinary`,`enby`]],[[37,7,34,10],`notepad.notes.stationery.sketchbook.moleskine.closure.strap.band.elastic.organizer.organiser.planner.diary.journal.writing.written.writer.reading.high school.university.college.academy.student.study.homework.research`.split(`.`)],[[37,34],[`pencil`,`notepad`,`notes`,`noted`,`stationery`,`sketchbook`,`organizer`,`organiser`,`planner`,`diary`,`journal`,`writing`,`write`,`written`,`reading`,`high school`,`university`,`college`,`academy`,`student`,`study`,`research`,`homework`,`eraser`,`rubber`]],[[1,7,34],[`notepad`,`notes`,`people`,`family`,`friends`,`acquaintances`,`contacts`,`details`,`addresses`,`phone numbers`,`directory`,`listing`,`networking`,`alphabetical`,`a-z`,`organizer`,`organiser`,`planner`,`diary`,`stationery`]],[[37,34],[`notepad`,`notes`,`pages`,`paper`,`stationery`,`sketchbook`,`organizer`,`organiser`,`planner`,`diary`,`journal`,`writing`,`write`,`written`,`reading`,`high school`,`university`,`college`,`academy`,`student`,`study`,`research`,`homework`,`lines`,`opened`]],[[37,34],[`notebook`,`notes`,`pages`,`paper`,`stationery`,`sketchbook`,`organizer`,`organiser`,`planner`,`diary`,`journal`,`writing`,`write`,`written`,`reading`,`high school`,`university`,`college`,`academy`,`student`,`study`,`homework`,`research`,`lines`,`opened`]],[[37,34],[`notebook`,`notes`,`pages`,`paper`,`stationery`,`diary`,`journal`,`writing`,`write`,`written`,`draft`,`template`,`lines`]],[[16],[`hazelnut`,`acorn`,`food`,`diet`]],[[16],[`hazelnut`,`acorn`,`food`,`allergy`,`intolerance`,`diet`]],[[32],[`stop`,`shape`]],[[26,32],[`warning`,`alert`,`danger`,`exclamation mark`]],[[40],[`stop`,`forbidden`,`subtract`,`remove`,`decrease`,`reduce`,`-`,`traffic`,`halt`,`restricted`]],[[23,32],[`music`,`audio`,`stop`]],[[21,26],[`delete`,`stop`,`alert`,`warning`,`times`,`clear`,`math`]],[[21,11,37,29],[`greek`,`symbol`,`mathematics`,`education`,`physics`,`engineering`,`ohms`,`electrical resistance`,`angular frequency`,`dynamical systems`,`astronomy`,`constellations`,`philosophy`]],[[11],[`keyboard`,`key`,`mac`,`alt`,`button`]],[[29],[`planet`,`space`,`physics`,`satellites`,`moons`]],[[2,10],[`paper`,`bird`]],[[14,11],[`box`,`container`,`storage`,`sealed`,`delivery`,`undelivered`,`unopened`,`packed`,`archive`,`zip`,`module`]],[[14,11],[`box`,`container`,`storage`,`sealed`,`packed`,`unopened`,`undelivered`,`archive`,`zip`]],[[11],[`confirm`,`verified`,`done`,`todo`,`tick`,`complete`,`task`,`delivered`]],[[11],[`delete`,`remove`]],[[14,11],[`box`,`container`,`storage`,`unpack`,`unarchive`,`unzip`,`opened`,`delivered`]],[[11],[`new`,`add`,`create`]],[[14,11],[`find`,`product process`,`lens`]],[[11],[`delete`,`remove`]],[[10,39],[`fill`,`paint`,`bucket`,`color`,`colour`]],[[37,10,18,39],[`brush`,`color`,`colour`,`decoration`,`diy`]],[[37,10,28,18,39],[`brush`,`paintbrush`,`design`,`color`,`colour`,`decoration`,`diy`]],[[37,10,28,18,39],[`brush`,`paintbrush`,`design`,`color`,`colour`,`decoration`,`diy`]],[[37,10,28],[`colors`,`colours`,`theme`,`scheme`,`paint`,`watercolor`,`watercolour`,`artist`]],[[2],[`animal`,`wildlife`,`bear`,`zoo`,`bamboo`]],[[19],[`drawer`,`dock`]],[[19,3],[`drawer`,`dock`,`hide`,`chevron`,`down`]],[[19],[`drawer`,`dock`,`show`,`reveal`,`padding`,`margin`,`guide`,`layout`,`bleed`]],[[19,3],[`drawer`,`dock`,`show`,`reveal`,`chevron`,`up`]],[[19],[`primary`,`drawer`]],[[19,3],[`primary`,`drawer`,`hide`,`chevron`,`<`]],[[19],[`sidebar`,`primary`,`drawer`,`show`,`reveal`,`padding`,`margin`,`guide`,`layout`,`bleed`]],[[19,3],[`primary`,`drawer`,`show`,`reveal`,`chevron`,`right`,`>`]],[[19],[`sidebar`,`primary`,`drawer`,`show`,`reveal`,`padding`,`margin`,`guide`,`layout`,`vertical`,`bleed`]],[[19],[`sidebar`,`secondary`,`drawer`]],[[19,3],[`sidebar`,`secondary`,`drawer`,`hide`,`chevron`,`>`]],[[19],[`sidebar`,`secondary`,`drawer`,`show`,`reveal`,`padding`,`margin`,`guide`,`layout`,`bleed`]],[[19,3],[`sidebar`,`secondary`,`drawer`,`show`,`reveal`,`chevron`,`left`,`<`]],[[19,10,11],[`drawer`,`browser`,`webpage`]],[[19],[`sidebar`,`primary`,`drawer`,`show`,`reveal`,`padding`,`margin`,`guide`,`layout`,`horizontal`,`bleed`]],[[19,3],[`menu bar`,`drawer`,`hide`,`chevron`,`up`]],[[19],[`menu bar`,`drawer`,`show`,`reveal`,`padding`,`margin`,`guide`,`layout`,`bleed`]],[[19,3],[`menu bar`,`drawer`,`show`,`reveal`,`chevron`,`down`]],[[19],[`drawers`,`sidebar`,`primary`]],[[19],[`drawers`,`sidebar`,`secondary`]],[[19,10,11],[`menu bar`,`sidebar`,`primary`,`drawers`,`window`,`webpage`,`projects`,`overview`]],[[37,10,14,20],[`attachment`,`file`]],[[11,14,21],[`code`,`token`,`parenthesis`,`parens`,`brackets`,`parameters`,`arguments`,`args`,`input`,`call`,`math`,`formula`,`function`,`(`,`)`]],[[40,25],[`driving`,`car park`,`pay`,`sidewalk`,`pavement`]],[[13],[`emoji`,`congratulations`,`celebration`,`party`,`tada`,`🎉`,`🎊`,`excitement`,`exciting`,`excites`,`confetti`]],[[23],[`music`,`stop`]],[[2],[`pets`,`vets`,`veterinarian`,`domesticated`,`cat`,`dog`,`bear`]],[[12,17],[`computer`,`chassis`]],[[37,10,39],[`pencil`,`change`,`create`,`draw`,`writer`,`writing`,`biro`,`ink`,`marker`,`felt tip`,`stationery`,`artist`]],[[37,10,39],[`pencil`,`change`,`create`,`draw`,`writer`,`writing`,`biro`,`ink`,`marker`,`felt tip`,`stationery`,`artist`]],[[37,10,39],[`disabled`,`inactive`,`non-editable`,`locked`,`read-only`,`unmodifiable`,`frozen`,`restricted`,`pencil`,`change`,`create`,`draw`,`writer`,`writing`,`biro`,`ink`,`marker`,`felt tip`,`stationery`,`artist`]],[[37,10,9],[`vector`,`drawing`,`path`]],[[10,9,39,37],[`rubber`,`edit`,`create`,`draw`,`sketch`,`draft`,`writer`,`writing`,`stationery`,`artist`]],[[37,10,39],[`pencil`,`change`,`create`,`draw`,`sketch`,`draft`,`writer`,`writing`,`biro`,`ink`,`marker`,`felt tip`,`stationery`,`artist`]],[[10,9,39,37],[`disabled`,`inactive`,`non-editable`,`locked`,`read-only`,`unmodifiable`,`frozen`,`restricted`,`rubber`,`edit`,`create`,`draw`,`sketch`,`draft`,`writer`,`writing`,`stationery`,`artist`]],[[39,10,19,37],`edit.create.draw.sketch.draft.writer.writing.stationery.artist.measurements.centimeters.cm.millimeters.mm.metre.foot.feet.inches.units.size.length.width.height.dimensions.depth.breadth.extent`.split(`.`)],[[32],[`shape`]],[[21,11,15,33],[`percentage`,`modulo`,`modulus`,`remainder`,`%`,`sale`,`discount`,`offer`,`marketing`]],[[0,27],[`people`,`human`,`accessibility`,`stick figure`]],[[15],[`currency`,`peso`,`money`,`php`]],[[37,8,12,7],[`call`]],[[8,12,7],[`ring`]],[[3,8,12,7],[`call`]],[[3,8,12,7],[`call`]],[[8,12,7],[`call`]],[[8,12,7],[`call`,`mute`]],[[3,8,12,7],[`call`]],[[11,21],[`constant`,`code`,`coding`,`programming`,`symbol`,`trigonometry`,`geometry`,`formula`]],[[23,12],[`music`,`audio`,`sound`,`noise`,`notes`,`chord`,`keys`,`octave`,`acoustic`,`instrument`,`play`,`pianist`,`performance`,`concert`]],[[39,17],[`mining`,`mine`,`land worker`,`extraction`,`labor`,`construction`,`progress`,`advancement`,`crafting`,`building`,`creation`]],[[23],[`display`,`play`,`video`,`pop out`,`always on top`,`window`,`inset`,`multitask`]],[[23],[`display`,`play`,`video`,`pop out`,`always on top`,`window`,`inset`,`multitask`]],[[15],[`money`,`savings`]],[[37],[`paragraph`,`mark`,`paraph`,`blind`,`typography`,`type`,`text`,`prose`,`symbol`]],[[37],[`direction`,`paragraph`,`mark`,`paraph`,`blind`,`typography`,`type`,`text`,`prose`,`symbol`]],[[37],[`direction`,`paragraph`,`mark`,`paraph`,`blind`,`typography`,`type`,`text`,`prose`,`symbol`]],[[22],[`medicine`,`medication`,`drug`,`prescription`,`tablet`,`pharmacy`]],[[22],[`medicine`,`medication`,`prescription`,`drug`,`supplement`,`vitamin`,`capsule`,`jar`,`container`,`healthcare`,`pharmaceutical`,`tablet`]],[[25,1],[`save`,`map`,`lock`,`fix`]],[[25],[`unpin`,`map`,`unlock`,`unfix`,`unsave`,`remove`]],[[37,10,29],[`eye dropper`,`color picker`,`lab`,`chemistry`]],[[16],[`pie`,`quiche`,`food`]],[[40,41,25],[`plane`,`trip`,`airplane`]],[[40,41],[`arrival`,`plane`,`trip`,`airplane`,`landing`]],[[40,41],[`departure`,`plane`,`trip`,`airplane`,`takeoff`]],[[3,23],[`music`,`audio`,`video`,`start`,`run`]],[[12,11],[`electricity`,`energy`,`electronics`,`socket`,`outlet`,`power`,`voltage`,`current`,`charger`]],[[12,11],[`electricity`,`energy`,`socket`,`outlet`]],[[12],[`electricity`,`energy`,`electronics`,`charge`,`charging`,`battery`,`connect`]],[[21,39,11,37,9,17],[`add`,`new`,`increase`,`increment`,`positive`,`calculate`,`toolbar`,`crosshair`,`aim`,`target`,`scope`,`sight`,`reticule`,`maximum`,`upgrade`,`extra`,`+`]],[[39],[`swiss army knife`,`penknife`,`multi-tool`,`multitask`,`blade`,`cutter`,`gadget`,`corkscrew`]],[[23,34],[`audio`,`music`,`mic`,`talk`,`voice`,`subscribe`,`subscription`,`stream`]],[[9],[`mouse`]],[[9],[`mouse`]],[[16,23],[`cinema`,`movies`,`films`,`salted`,`sweet`,`sugar`,`candy`,`snack`]],[[16],[`ice lolly`,`ice cream`,`sweet`,`food`]],[[15],[`currency`,`money`,`payment`]],[[8],[`on`,`off`,`device`,`switch`,`toggle`,`binary`,`boolean`,`reboot`,`restart`,`button`,`keyboard`,`troubleshoot`]],[[8],[`on`,`off`,`device`,`switch`]],[[23,28,12,7,10],[`screen`,`whiteboard`,`marker pens`,`markers`,`blackboard`,`chalk`,`easel`,`school`,`learning`,`lesson`,`office`,`meeting`,`project`,`planning`]],[[12],[`fax`,`office`,`device`]],[[12],[`fax`,`office`,`device`,`success`,`printed`]],[[12],[`fax`,`office`,`device`,`cross`,`cancel`,`remove`,`error`]],[[23,28,12,7],[`cinema`,`film`,`movie`,`home video`,`presentation`,`slideshow`,`office`,`meeting`,`project`,`planning`]],[[19,10,28,12],[`screens`,`sizes`,`rotate`,`rotation`,`adjust`,`aspect ratio`,`16:9`,`widescreen`,`4:3`,`resolution`,`responsive`,`mobile`,`desktop`,`dimensions`,`monitor`,`orientation`,`portrait`,`landscape`]],[[11,17],[`component`,`module`,`part`,`piece`]],[[32,21,41],[`prism`,`triangle`,`triangular`,`hierarchy`,`structure`,`geometry`,`ancient`,`egyptian`,`landmark`,`tourism`]],[[11,34],[`barcode`,`scan`,`link`,`url`,`information`,`digital`]],[[37],[`quotation`]],[[2],[`animal`,`rodent`,`pet`,`pest`,`bunny`,`hare`,`fast`,`speed`,`hop`]],[[25,31,7],[`scan`,`sonar`,`detect`,`find`,`locate`]],[[29],[`radioactive`,`nuclear`,`fallout`,`waste`,`atomic`,`physics`,`particle`,`element`,`molecule`]],[[11,21],[`calculate`,`formula`,`math`,`operator`,`root`,`square`,`symbol`]],[[12,23,34],[`signal`,`broadcast`,`connectivity`,`live`,`frequency`]],[[12],[`device`,`music`,`connect`]],[[12,23,34],[`signal`,`broadcast`,`connectivity`,`live`,`frequency`]],[[32,21,10,39],[`shape`,`circle`,`geometry`,`trigonometry`,`radii`,`calculate`,`measure`,`size`]],[[42],[`colors`,`colours`,`spectrum`,`light`,`prism`,`arc`,`clear`,`sunshine`]],[[2],[`mouse`,`mice`,`gerbil`,`rodent`,`pet`,`pest`,`plague`,`disease`]],[[19,10,28],[`screens`,`sizes`,`rotate`,`rotation`,`adjust`,`aspect ratio`,`proportions`,`16:9`,`widescreen`,`4:3`,`resolution`,`responsive`,`mobile`,`desktop`,`dimensions`,`monitor`,`orientation`,`portrait`,`landscape`]],[[15,41],[`bill`,`voucher`,`slip`,`check`,`counterfoil`,`currency`,`dollar`,`usd`,`$`]],[[15,41],[`bill`,`voucher`,`slip`,`check`,`counterfoil`,`currency`,`cents`,`dollar`,`usd`,`$`,`¢`]],[[15,41],[`bill`,`voucher`,`slip`,`check`,`counterfoil`,`currency`,`€`]],[[15,41],[`bill`,`voucher`,`slip`,`check`,`counterfoil`,`currency`,`inr`,`₹`]],[[15,41],[`bill`,`voucher`,`slip`,`check`,`counterfoil`,`currency`,`jpy`,`¥`]],[[15,41],[`bill`,`voucher`,`slip`,`check`,`counterfoil`,`british`,`currency`,`gbp`,`£`]],[[15,41],[`bill`,`voucher`,`slip`,`check`,`counterfoil`,`currency`,`rub`,`₽`]],[[15,41],[`bill`,`voucher`,`slip`,`check`,`counterfoil`,`currency`,`chf`,`₣`]],[[15,41],[`bill`,`voucher`,`slip`,`check`,`counterfoil`,`details`,`small print`,`terms`,`conditions`,`contract`]],[[15,41],[`bill`,`voucher`,`slip`,`check`,`counterfoil`,`currency`,`try`,`₺`]],[[11,37],[`compose`,`keyboard`,`key`,`button`]],[[37,11],`login,password,authenticate,2fa,field,fill,ellipsis,et cetera,etc,loader,loading,progress,pending,throbber,menu,options,operator,code,spread,rest,more,further,extra,overflow,dots,…,...`.split(`,`)],[[12,17,23,8],[`vr`,`virtual`,`augmented`,`reality`,`headset`,`goggles`]],[[32,10],[`rectangle`,`aspect ratio`,`16:9`,`horizontal`,`shape`]],[[32,10],[`rectangle`,`aspect ratio`,`9:16`,`vertical`,`shape`]],[[36],[`sustainability`,`salvage`,`arrows`]],[[37,3],[`undo`,`rerun`,`history`]],[[37,3],[`undo`,`rerun`,`history`]],[[37,3],[`redo`,`history`,`step`,`over`,`forward`]],[[3],[`arrows`,`rotate`,`reload`,`rerun`,`synchronise`,`synchronize`,`circular`,`cycle`]],[[3,11],[`arrows`,`rotate`,`reload`,`synchronise`,`synchronize`,`circular`,`cycle`,`issue`,`code`,`coding`,`version control`]],[[3],[`rotate`,`reload`,`rerun`,`synchronise`,`synchronize`,`arrows`,`circular`,`cycle`]],[[3],[`rotate`,`reload`,`rerun`,`synchronise`,`synchronize`,`arrows`,`circular`,`cycle`,`cancel`,`no`,`stop`,`error`,`disconnect`,`ignore`]],[[16,18],[`frigerator`,`fridge`,`freezer`,`cooler`,`icebox`,`chiller`,`cold storage`]],[[37,11],[`search`,`text`,`code`]],[[37],[`text`,`font`,`typography`,`format`,`x`,`remove`,`delete`,`times`,`clear`]],[[3,23],[`loop`,`arrows`]],[[23],[`replay`]],[[3,34,23],[`arrows`,`retweet`,`repost`,`share`,`repeat`,`loop`]],[[37],[`search`,`substitute`,`swap`,`change`]],[[37],[`search`,`substitute`,`swap`,`change`]],[[20],[`email`]],[[20],[`email`]],[[3,23],[`music`]],[[34,22,13],[`awareness`,`strip`,`band`,`tape`,`strap`,`cordon`]],[[17,11],[`release`,`boost`,`launch`,`space`,`version`]],[[18],[`chair`,`furniture`,`seat`,`comfort`,`relax`]],[[25],[`attraction`,`entertainment`,`amusement park`,`theme park`,`funfair`]],[[24,30,36,18,34],[`roses`,`thorns`,`petals`,`plant`,`stem`,`leaves`,`spring`,`bloom`,`blossom`,`gardening`,`botanical`,`flora`,`florist`,`bouquet`,`bunch`,`gift`,`date`,`romance`,`romantic`,`valentines day`,`special occasion`]],[[10],[`gizmo`,`transform`,`orientation`,`orbit`,`axis`]],[[3,10,28],[`arrow`,`left`,`counter-clockwise`,`restart`,`reload`,`rerun`,`refresh`,`backup`,`undo`,`replay`,`redo`,`retry`,`rewind`,`reverse`]],[[31,1],[`password`,`key`,`refresh`,`change`]],[[19,10,28,39,3],[`left`,`counter-clockwise`,`rotate`,`image`,`90`,`45`,`degrees`,`°`]],[[3,10,28],[`arrow`,`right`,`clockwise`,`refresh`,`reload`,`rerun`,`redo`]],[[19,10,28,39,3],[`right`,`clockwise`,`rotate`,`image`,`90`,`45`,`degrees`,`°`]],[[25],[`path`,`journey`,`planner`,`points`,`stops`,`stations`]],[[25],[`path`,`journey`,`planner`,`points`,`stops`,`stations`,`reset`,`clear`,`cancelled`,`closed`,`blocked`]],[[11,12,8,18],[`computer`,`server`,`cloud`]],[[19,10,37],[`lines`,`list`,`queue`,`preview`,`panel`,`paragraphs`,`parallel`,`series`,`split`,`vertical`,`horizontal`,`half`,`center`,`middle`,`even`,`drawer`]],[[19,10,37],[`lines`,`list`,`queue`,`preview`,`paragraphs`,`parallel`,`series`,`split`,`vertical`,`horizontal`,`half`,`center`,`middle`,`even`,`drawers`]],[[19,10,37],[`lines`,`list`,`queue`,`preview`,`paragraphs`,`parallel`,`series`,`split`,`vertical`,`horizontal`,`half`,`center`,`middle`,`even`,`drawers`,`grill`]],[[11,34],[`feed`,`subscribe`,`news`,`updates`,`notifications`,`content`,`blog`,`articles`,`broadcast`,`syndication`,`reader`,`channels`,`posts`,`publishing`,`digest`,`alert`,`following`,`inbox`,`newsletter`,`weblog`,`podcast`]],[[39,10,19],[`measurements`,`centimeters`,`cm`,`millimeters`,`mm`,`metre`,`foot`,`feet`,`inches`,`units`,`size`,`length`,`width`,`height`,`dimensions`,`depth`,`breadth`,`extent`,`stationery`]],[[39,10,19],[`measurements`,`centimeters`,`cm`,`millimeters`,`mm`,`metre`,`foot`,`feet`,`inches`,`units`,`size`,`length`,`width`,`height`,`dimensions`,`depth`,`breadth`,`extent`,`stationery`]],[[15],[`currency`,`money`,`payment`]],[[40,41],[`ship`,`boat`,`harbor`,`harbour`,`dock`]],[[16,13],[`food`,`vegetarian`,`dish`,`restaurant`,`course`,`meal`,`side`,`vegetables`,`health`]],[[16],[`food`,`snack`,`dish`,`restaurant`,`lunch`,`meal`]],[[8,29],[`space station`,`orbit`,`transmitter`]],[[8,12,23],[`antenna`,`receiver`,`dish aerial`,`saucer`]],[[15],[`currency`,`money`,`payment`]],[[37,14],[`floppy disk`]],[[37,14],[`floppy disks`,`copy`]],[[37,14],[`floppy disk`,`unsalvageable`]],[[25,29,15],[`balance`,`legal`,`license`,`right`,`rule`,`law`,`justice`,`weight`,`measure`,`compare`,`judge`,`fair`,`ethics`,`decision`]],[[10],[`gizmo`,`transform`,`size`,`axis`]],[[10],[`scale`,`resize`,`design`]],[[12,33,31,34,17],[`qr-code`,`barcode`,`checkout`,`augmented reality`,`ar`,`target`,`surveillance`,`camera`,`lens`,`focus`,`frame`,`select`,`box`,`boundary`,`bounds`,`area`,`square`,`dashed`]],[[33,12],[`checkout`,`till`,`cart`,`transaction`,`purchase`,`buy`,`product`,`packaging`,`retail`,`consumer`]],[[28,23,0,31,12,1],[`preview`,`zoom`,`expand`,`fullscreen`,`gallery`,`image`,`camera`,`watch`,`surveillance`,`retina`,`focus`,`lens`,`biometric`,`identification`,`authentication`,`access`,`login`]],[[1,31,12,34],[`face`,`biometric`,`identification`,`authentication`,`2fa`,`access`,`login`,`dashed`]],[[22],[`health`,`heart rate`,`pulse`,`monitoring`,`healthiness`,`screening`,`dashed`]],[[12,33],[`checkout`,`till`,`cart`,`transaction`,`purchase`,`buy`,`product`,`packaging`,`retail`,`consumer`,`qr-code`,`dashed`]],[[1,33,12,31],[`barcode`,`scan`,`qrcode`,`url`,`information`,`digital`,`scanner`]],[[28,23,0],[`preview`,`zoom`,`expand`,`fullscreen`,`gallery`,`image`,`focus`,`lens`]],[[37,12],[`recognition`,`read`,`translate`,`copy`,`lines`]],[[5,25],[`building`,`education`,`childhood`,`university`,`learning`,`campus`,`scholar`,`student`,`lecture`,`degree`,`course`,`academia`,`study`,`knowledge`,`classroom`,`research`,`diploma`,`graduation`,`professor`,`tutorial`,`homework`,`assignment`,`exam`]],[[37,10,39],[`cut`,`snip`,`chop`,`stationery`,`crafts`]],[[10,39],[`cut here`,`along`,`snip`,`chop`,`stationery`,`crafts`,`instructions`,`diagram`]],[[40],[`vehicle`,`drive`,`trip`,`journey`,`transport`,`electric`,`ride`,`urban`,`commute`,`speed`]],[[8,12,7],[`host`,`desktop`,`monitor`]],[[8,12,7],[`desktop`,`disconnect`,`monitor`]],[[17,11,37],[`paper`,`log`,`scripture`,`document`,`notes`,`parchment`,`list`,`long`,`script`,`story`,`code`,`coding`]],[[17,11,37],[`paper`,`log`,`scripture`,`document`,`notes`,`parchment`,`list`,`long`,`script`,`story`,`code`,`coding`]],[[37,34],[`find`,`scan`,`magnifier`,`magnifying glass`,`lens`]],[[37,34],[`find`,`scan`,`magnifier`,`magnifying glass`,`stop`,`warning`,`alert`,`error`,`anomaly`,`lens`]],[[37,34],[`find`,`scan`,`magnifier`,`magnifying glass`,`found`,`correct`,`complete`,`tick`,`lens`]],[[37,34,11],[`find`,`scan`,`magnifier`,`magnifying glass`,`grep`,`chevrons`,`<>`,`lens`]],[[37,34],[`find`,`scan`,`magnifier`,`magnifying glass`,`stop`,`clear`,`cancel`,`abort`,`/`,`lens`]],[[37,34],[`find`,`scan`,`magnifier`,`magnifying glass`,`stop`,`clear`,`cancel`,`abort`,`lens`]],[[37],[`mark`,`typography`,`punctuation`,`legal`,`type`,`text`,`prose`,`symbol`]],[[20,7,8],[`email`,`message`,`mail`,`paper airplane`,`paper aeroplane`,`submit`]],[[20,7,8],[`email`,`message`,`mail`,`paper airplane`,`paper aeroplane`,`submit`]],[[10,19],[`bring`,`send`,`move`,`under`,`back`,`backwards`,`overlap`,`layer`,`order`]],[[37,3,19],[`move`,`split`]],[[37,3,19],[`move`,`split`]],[[11,12],[`cloud`,`storage`]],[[11,12],[`cloud`,`storage`,`computing`,`cog`,`gear`]],[[11,12],[`cloud`,`storage`,`problem`,`error`]],[[11,12],[`cloud`,`storage`]],[[1],[`cog`,`edit`,`gear`,`preferences`]],[[1],[`cog`,`edit`,`gear`,`preferences`,`slider`]],[[32,17],[`triangle`,`equilateral`,`square`,`circle`,`classification`,`different`,`collection`,`toy`,`blocks`,`learning`]],[[1,34],[`network`,`connections`]],[[1,34],[`network`,`connections`]],[[37,14],[`spreadsheets`,`table`,`excel`]],[[2,11,24,29,41,16,18],`beach.sand.holiday.sealife.fossil.ammonite.biology.ocean.terminal.command line.session.bash.zsh.roll.wrap.chewing gum.bubble gum.sweet.sugar.hosepipe.carpet.string.spiral.spinner.hypnotise.hypnosis`.split(`.`)],[[18],[`ledge`,`rack`,`storage`,`inventory`,`furniture`,`sill`,`shelves`,`shelf`,`organize`,`display`,`store`,`arrange`,`unit`,`cabinet`,`fixture`,`retail`,`warehouse`]],[[1,31,11,17,32],`cybersecurity.secure.safety.protection.guardian.armored.armoured.defense.defence.defender.block.threat.prevention.antivirus.vigilance.vigilant.detection.scan.find.strength.strong.tough.invincible.invincibility.invulnerable.undamaged.audit.admin.verification.crest.bravery.knight.foot soldier.infantry.trooper.pawn.battle.war.military.army.cadet.scout`.split(`.`)],[[1,31,11,26,17],`unshielded.cybersecurity.insecure.unsecured.safety.unsafe.protection.unprotected.guardian.unguarded.unarmored.unarmoured.defenseless.defenceless.undefended.defender.blocked.stopped.intercepted.interception.saved.thwarted.threat.prevention.unprevented.antivirus.vigilance.vigilant.detection.detected.scanned.found.exploit.vulnerability.vulnerable.weakness.infection.infected.comprimised.data leak.audited.admin.verification.unverified.uncertified.warning.emergency.attention.urgent.alarm.crest.bravery.strength.tough.attacked.damaged.injured.hit.expired.disabled.inactive.error.exclamation mark.!`.split(`.`)],[[1,31,11,17],`unshielded.cybersecurity.insecure.unsecured.safety.unsafe.protection.unprotected.guardian.unguarded.unarmored.unarmoured.defenseless.defenceless.undefended.defender.blocked.stopped.intercepted.interception.saved.thwarted.threat.prevention.unprevented.antivirus.vigilance.vigilant.detection.detected.scanned.found.exploit.vulnerability.vulnerable.weakness.infection.infected.comprimised.data leak.audited.admin.verification.unverified.uncertified.cancel.error.crest.bravery.attacked.damaged.injured.hit.expired.eliminated.disabled.inactive./`.split(`.`)],[[1,31,11,17],`cybersecurity.secured.safety.protection.protected.guardian.guarded.armored.armoured.defense.defence.defended.blocked.threat.prevention.prevented.antivirus.vigilance.vigilant.active.activated.enabled.detection.scanned.found.strength.strong.tough.invincible.invincibility.invulnerable.undamaged.audited.admin.verification.verified.certification.certified.tested.passed.qualified.cleared.cleaned.disinfected.uninfected.task.completed.todo.done.ticked.checked.crest.bravery`.split(`.`)],[[1,31,11,17],`cybersecurity,securing,protecting,guarding,armoring,armouring,defending,blocking,preventing,antivirus,detecting,scanning,finding,auditing,admin,verifying,crest,upgrading,loader,loading,throbber,progress,dots,more,etc,...,…`.split(`,`)],[[1,31,11,17],`cybersecurity.secure.safety.protection.guardian.armored.armoured.defense.defence.defender.block.threat.prevention.antivirus.vigilance.vigilant.detection.scan.strength.strong.tough.invincible.invincibility.invulnerable.undamaged.audit.admin.verification.crest.logo.sigil.flag.team.faction.fraternity.university.college.academy.school.education.uniform.bravery.knight.foot soldier.infantry.trooper.pawn.battle.war.military.ranking.army.cadet.scout`.split(`.`)],[[1,31,11,17],`unshield.cybersecurity.unsecure.unguard.unblock.antivirus.clean.clear.disinfect.patch.fix.stop.cancel.remove.relax.admin.crest.bravery.weakened.damaged.hit.unarm.disable.deactivate.decommission.downgraded.minimum.-`.split(`.`)],[[1,31,11,17],`unshielded.cybersecurity.insecure.unsecured.safety.unsafe.protection.unprotected.guardian.unguarded.unarmored.unarmoured.defenseless.defenceless.undefended.defender.interception.threat.prevention.unprevented.antivirus.detection.undetected.exploit.vulnerability.vulnerable.weakness.infected.infection.comprimised.data leak.unaudited.admin.verification.unverified.inactive.cancelled.error.crest.bravery.damaged.injured.hit.expired.eliminated`.split(`.`)],[[1,31,11,17,22],`cybersecurity.secure.safety.protection.guardian.armored.armoured.defense.defence.defender.block.threat.prevention.antivirus.vigilance.vigilant.detection.scan.strength.strong.tough.invincible.invincibility.invulnerable.undamaged.extra.added.professional.enterprise.full.maximum.upgraded.ultra.activate.enable.audit.admin.verification.crest.medic.+`.split(`.`)],[[1,31,11,17],`unshielded.cybersecurity.insecure.unsecured.safety.unsafe.protection.unprotected.guardian.unguarded.unarmored.unarmoured.defenseless.defenceless.undefended.defender.threat.prevention.unprevented.antivirus.vigilance.vigilant.detection.undetected.scan.find.exploit.vulnerability.vulnerable.weakness.infection.comprimised.data leak.audit.admin.verification.unverified.uncertified.uncertain.unknown.inactive.crest.question mark.?`.split(`.`)],[[1,31,11],[`shield`,`user`,`admin`,`protection`,`protected`,`safety`,`guard`]],[[1,31,11,17],`unshielded.cybersecurity.insecure.unsecured.safety.unsafe.protection.unprotected.guardian.unguarded.unarmored.unarmoured.defenseless.defenceless.undefended.defender.blocked.stopped.intercepted.interception.saved.thwarted.threat.prevention.prevented.antivirus.vigilance.vigilant.detection.detected.scanned.found.exploit.vulnerability.vulnerable.weakness.infection.infected.comprimised.data leak.audited.admin.verification.unverified.inactive.cancel.error.wrong.false.crest.bravery.attacked.damaged.injured.hit.dead.deceased.expired.eliminated.exterminated`.split(`.`)],[[40,25,41],[`boat`,`knots`,`nautical mile`,`maritime`,`sailing`,`yacht`,`cruise`,`ocean liner`,`tanker`,`vessel`,`navy`,`trip`,`releases`]],[[40,25,41],[`steering`,`rudder`,`boat`,`knots`,`nautical mile`,`maritime`,`sailing`,`yacht`,`cruise`,`ocean liner`,`tanker`,`vessel`,`navy`,`trip`]],[[33],[`t-shirt`,`shopping`,`store`,`clothing`,`clothes`]],[[33],[`ecommerce`,`cart`,`purchase`,`store`]],[[33],[`cart`,`e-commerce`,`store`,`purchase`,`products`,`items`,`ingredients`]],[[33],[`trolley`,`cart`,`basket`,`e-commerce`,`store`,`purchase`,`products`,`items`,`ingredients`]],[[24,39,17],[`dig`,`spade`,`treasure`]],[[18,41],[`shower`,`bath`,`bathroom`,`amenities`,`services`]],[[20,14],[`file`,`paper`,`tear`,`cut`,`delete`,`destroy`,`remove`,`erase`,`document`,`destruction`,`secure`,`security`,`confidential`,`data`,`trash`,`dispose`,`disposal`,`information`,`waste`,`permanent`]],[[2],[`seafood`,`shellfish`,`crustacean`,`prawn`,`scallop`,`whelk`,`arthropod`,`littleneck`,`quahog`,`cherrystone`]],[[19,3],[`scale`,`fullscreen`]],[[24],[`forest`,`undergrowth`,`park`,`nature`]],[[23,3],[`music`,`random`,`reorder`]],[[37,21,29],[`sum`,`calculate`,`formula`,`math`,`enumeration`,`enumerate`]],[[8],[`connection`,`wireless`,`gsm`,`phone`,`2g`,`3g`,`4g`,`5g`]],[[8],[`connection`,`wireless`,`gsm`,`phone`,`2g`,`3g`,`4g`,`5g`]],[[8],[`connection`,`wireless`,`gsm`,`phone`,`2g`,`3g`,`4g`,`5g`]],[[8],[`connection`,`wireless`,`gsm`,`phone`,`2g`,`3g`,`4g`,`5g`]],[[8],[`connection`,`wireless`,`gsm`,`phone`,`2g`,`3g`,`4g`,`5g`,`lost`]],[[37],[`text`,`format`,`input`,`contract`,`autograph`,`handwriting`,`sign`,`cursive`,`ink`,`scribble`,`authorize`,`personal`,`agreement`,`legal`,`document`,`identity`,`authentic`,`approval`,`verification`,`unique`]],[[3,25,11,17],[`bidirectional`,`left`,`right`,`east`,`west`]],[[3,25,11,17],[`bidirectional`,`left`,`right`,`east`,`west`]],[[22],[`police`,`ambulance`,`emergency`,`security`,`alert`,`alarm`,`light`]],[[23,3],[`arrow`,`previous`,`music`]],[[23,3],[`arrow`,`skip`,`next`,`music`]],[[17],[`death`,`danger`,`bone`]],[[11,21],[`divide`,`division`,`or`,`/`]],[[10],[`cutter`,`scalpel`,`knife`]],[[1],[`settings`,`filters`,`controls`]],[[1],[`settings`,`controls`]],[[8,12],[`phone`,`cellphone`,`device`,`screen`]],[[8,12],[`phone`,`cellphone`,`device`,`power`,`screen`]],[[7,15,12],[`contactless`,`payment`,`near-field communication`,`screen`]],[[13,1],[`emoji`,`face`,`happy`,`good`,`emotion`]],[[13,34,26,7],[`emoji`,`face`,`happy`,`good`,`emotion`,`react`,`reaction`,`add`]],[[2,16],[`animal`,`insect`,`slow`,`speed`,`delicacy`,`spiral`]],[[42,30],[`cold`,`weather`,`freeze`,`snow`,`winter`]],[[18,41],[`wash`,`bath`,`water`,`liquid`,`fluid`,`wet`,`moisture`,`damp`,`bead`,`globule`]],[[18],[`armchair`,`furniture`,`leisure`,`lounge`,`loveseat`,`couch`]],[[18,29,36,42],[`solar panel`,`solar`,`panel`,`sun`,`energy`,`electricity`,`light`]],[[16],[`food`,`dish`,`restaurant`,`course`,`meal`,`bowl`,`starter`]],[[37],[`text`,`selection`,`letters`,`characters`,`font`,`typography`]],[[32,17],[`shape`,`suit`,`playing`,`cards`]],[[32],[`star`,`effect`,`filter`,`night`,`magic`,`shiny`,`glitter`,`twinkle`,`celebration`]],[[9,23,17,42],[`stars`,`effect`,`filter`,`night`,`magic`]],[[23,12],[`sound`,`audio`,`music`,`tweeter`,`subwoofer`,`bass`,`production`,`producer`,`dj`]],[[0,7],[`disability`,`disabled`,`dda`,`human`,`accessibility`,`people`,`sound`]],[[37,11],[`spelling`,`error`,`mistake`,`oversight`,`typo`,`correction`,`code`,`linter`,`a`]],[[37,11],[`spelling`,`error`,`mistake`,`oversight`,`typo`,`correction`,`code`,`linter`,`a`]],[[10],[`path`,`pen`,`tool`,`shape`,`curve`,`draw`]],[[3,9,10,39],[`path`,`tool`,`curve`,`node`,`click`,`pointer`,`target`,`vector`]],[[11,3],[`break`,`disband`,`divide`,`separate`,`branch`,`disunite`]],[[7,39,34],[`bobbin`,`spindle`,`yarn`,`thread`,`string`,`sewing`,`needlework`]],[[12,28,23,7],[`winner`,`soapbox`,`stage`,`entertainment`,`drama`,`podium`,`actor`,`actress`,`singer`,`light`,`beam`,`play`,`theatre`,`show`,`focus`,`concert`,`performance`,`lens`,`leaderboard`,`followspot`,`best`,`highlight`]],[[10,39],[`paint`,`color`,`graffiti`,`decoration`,`aerosol`,`deodorant`,`shaving foam`,`air freshener`]],[[24,17,36],[`eco`,`green`,`growth`,`leaf`,`nature`,`plant`,`seed`,`spring`,`sustainability`]],[[32,23],[`stop`,`playback`,`music`,`audio`,`video`,`rectangle`,`aspect ratio`,`1:1`,`shape`]],[[22,34,29,23],`pulse.action.motion.movement.exercise.fitness.healthcare.heart rate monitor.vital signs.vitals.emergency room.er.intensive care.hospital.defibrillator.earthquake.siesmic.magnitude.richter scale.aftershock.tremor.shockwave.audio.waveform.synthesizer.synthesiser.music`.split(`.`)],[[3,17],[`backwards`,`reverse`,`direction`,`south`,`sign`,`keyboard`,`button`]],[[3,17],[`direction`,`south-west`,`diagonal`,`sign`,`turn`,`keyboard`,`button`]],[[3,17],[`direction`,`south-east`,`diagonal`,`sign`,`turn`,`keyboard`,`button`]],[[3],[`previous`,`back`,`direction`,`west`,`sign`,`keyboard`,`button`,`<-`]],[[3],[`outwards`,`direction`,`south-west`,`diagonal`]],[[3],[`outwards`,`direction`,`south-east`,`diagonal`]],[[3],[`outwards`,`direction`,`north-west`,`diagonal`]],[[3,34],[`outwards`,`direction`,`north-east`,`diagonal`,`share`,`open`,`external`,`link`]],[[3],[`next`,`forward`,`direction`,`west`,`sign`,`keyboard`,`button`,`->`]],[[3,32,19,23],[`left`,`in`,`inside`,`input`,`insert`,`source`,`import`,`place`,`->`]],[[3,32,19,23],[`out`,`outside`,`output`,`export`,`->`]],[[3],[`forward`,`direction`,`north`,`sign`,`keyboard`,`button`]],[[3],[`direction`,`north-west`,`diagonal`,`sign`,`keyboard`,`button`]],[[3,34],[`direction`,`north-east`,`diagonal`,`sign`,`keyboard`,`button`,`share`]],[[37,31,21,11],[`password`,`secret`,`access`,`key`,`multiply`,`multiplication`,`glob pattern`,`wildcard`,`*`]],[[37,10,39,14,11],[`cut`,`snippet`,`chop`,`stationery`,`crafts`]],[[10,28],[`reflect`,`mirror`,`alignment`,`dashed`]],[[10,28],[`reflect`,`mirror`,`alignment`,`dashed`]],[[6,38,11,10],[`projects`,`manage`,`overview`,`roadmap`,`plan`,`intentions`,`timeline`,`deadline`,`date`,`event`,`range`,`period`,`productivity`,`work`,`agile`,`code`,`coding`,`toolbar`,`button`]],[[26],[`done`,`todo`,`tick`,`complete`,`task`]],[[26],[`done`,`todo`,`tick`,`complete`,`task`]],[[3,25],[`back`,`menu`,`panel`]],[[3,25],[`back`,`previous`,`less than`,`fewer`,`menu`,`panel`,`button`,`keyboard`,`<`]],[[3,25,11],[`forward`,`next`,`more than`,`greater`,`menu`,`panel`,`code`,`coding`,`command line`,`terminal`,`prompt`,`shell`,`console`,`>`]],[[3,25,21],[`caret`,`keyboard`,`button`,`mac`,`control`,`ctrl`,`superscript`,`exponential`,`power`,`ahead`,`menu`,`panel`,`^`]],[[37,11],[`gist`,`source`,`programming`,`html`,`xml`,`coding`]],[[37,10],[`selection`,`square`,`rectangular`,`marquee`,`tool`,`dashed`,`box`]],[[11,14],[`rectangle`,`aspect ratio`,`1:1`,`shape`,`snippet`,`code`,`coding`]],[[11,14],[`rectangle`,`aspect ratio`,`1:1`,`shape`,`snippet`,`code`,`coding`]],[[6,11,10],[`projects`,`manage`,`overview`,`board`,`tickets`,`issues`,`roadmap`,`plan`,`intentions`,`productivity`,`work`,`agile`,`draft`,`template`,`boilerplate`,`code`,`coding`]],[[3,9,11,39],[`inspector`,`element`,`mouse`,`click`,`pointer`,`box`,`browser`,`selector`,`target`,`dom`,`node`]],[[10,11,19],[`square`,`border`,`width`,`layout`,`style`,`design`,`rectangular`,`marquee`,`dashed`,`box`,`rectangle`,`aspect ratio`,`1:1`]],[[21],[`calculate`,`math`,`÷`,`/`]],[[11],[`git`,`diff`,`modified`,`.`]],[[21],[`calculate`,`=`]],[[11,21],[`programming`,`code`,`automation`,`math`]],[[6,11,10],[`projects`,`manage`,`overview`,`board`,`tickets`,`issues`,`roadmap`,`plan`,`intentions`,`productivity`,`work`,`agile`,`code`,`coding`,`toolbar`,`button`]],[[37,28,23,25,11],[`books`,`reading`,`written`,`authors`,`stories`,`fiction`,`novels`,`information`,`knowledge`,`education`,`high school`,`university`,`college`,`academy`,`learning`,`study`,`research`,`collection`,`vinyl`,`records`,`albums`,`music`,`package`]],[[40,25],[`metro`,`subway`,`underground`,`track`,`line`]],[[19],[`bars`,`navigation`,`hamburger`,`options`,`menu bar`,`panel`]],[[21,11,37,39,12],[`subtract`,`remove`,`decrease`,`reduce`,`calculator`,`button`,`keyboard`,`line`,`divider`,`separator`,`horizontal rule`,`hr`,`html`,`markup`,`markdown`,`---`,`toolbar`,`operator`,`code`,`coding`,`minimum`,`downgrade`]],[[3,9,11,39],[`inspector`,`element`,`mouse`,`click`,`pointer`,`box`,`browser`,`selector`,`target`,`dom`,`node`]],[[40,25],[`parking lot`,`car park`]],[[40,25],[`parking lot`,`car park`,`no parking`]],[[23],[`music`,`audio`,`stop`]],[[37],[`pencil`,`edit`,`change`,`create`,`draw`,`sketch`,`draft`,`writer`,`writing`,`biro`,`ink`,`marker`,`felt tip`,`stationery`,`artist`]],[[34,15,33,21],[`verified`,`unverified`,`sale`,`discount`,`offer`,`marketing`,`sticker`,`price tag`]],[[11,21],[`constant`,`code`,`coding`,`programming`,`symbol`,`trigonometry`,`geometry`,`formula`]],[[37],[`paragraph`,`mark`,`paraph`,`blind`,`typography`,`type`,`text`,`prose`,`symbol`]],[[3,23],[`music`,`audio`,`video`,`start`,`run`]],[[21,39,11,37],[`add`,`new`,`increase`,`increment`,`positive`,`calculate`,`calculator`,`button`,`keyboard`,`toolbar`,`maximum`,`upgrade`,`extra`,`operator`,`join`,`concatenate`,`code`,`coding`,`+`]],[[8],[`on`,`off`,`device`,`switch`,`toggle`,`binary`,`boolean`,`reboot`,`restart`,`button`,`keyboard`,`troubleshoot`]],[[11,21],[`calculate`,`formula`,`math`,`operator`,`root`,`square`,`symbol`]],[[10,11,19],[`border`,`radius`,`style`,`design`,`corner`,`layout`,`round`,`rounded`]],[[37,10,39,14,11],[`cut`,`snippet`,`chop`,`stationery`,`crafts`,`toolbar`,`button`]],[[37,21],[`sum`,`calculate`,`formula`,`math`,`enumeration`,`enumerate`]],[[11,21],[`git`,`diff`,`ignored`,`divide`,`division`,`shortcut`,`or`,`/`]],[[19],[`split`,`divide`]],[[19],[`split`,`divide`]],[[19],[`float`,`center`,`rectangle`]],[[37,14,11],[`versions`,`clone`,`copy`,`duplicate`,`multiple`,`revisions`,`version control`,`backup`,`history`]],[[35,17],[`badge`,`medal`,`honour`,`decoration`,`order`,`pin`,`laurel`,`trophy`,`medallion`,`insignia`,`bronze`,`silver`,`gold`]],[[23],[`media`,`music`]],[[11],[`code`,`command line`,`prompt`,`shell`]],[[1],[`person`,`account`,`contact`]],[[1],[`person`,`account`,`contact`]],[[21,26],[`cancel`,`close`,`delete`,`remove`,`times`,`clear`,`math`,`multiply`,`multiplication`]],[[10],[`square`,`pathfinder`,`path`,`exclude`,`invert`,`xor`,`shape`,`vector`]],[[10],[`square`,`pathfinder`,`path`,`intersect`,`shape`,`include`,`vector`]],[[10],[`square`,`pathfinder`,`path`,`minus`,`subtract`,`subtraction`,`shape`,`front`,`vector`]],[[10],[`square`,`pathfinder`,`path`,`unite`,`union`,`shape`,`merge`,`vector`]],[[32],[`shape`]],[[11,32,10],[`shape`,`pending`,`progress`,`issue`,`draft`,`code`,`coding`,`version control`]],[[2],[`animal`,`rodent`,`pet`,`pest`,`nuts`,`retrieve`,`updates`,`storage`,`stash`]],[[10,9,39],[`mark`,`print`,`clone`,`loyalty`,`library`]],[[1,34,32,23,42,13,17],[`bookmark`,`favorite`,`like`,`review`,`rating`]],[[34,23],[`bookmark`,`favorite`,`like`,`review`,`rating`]],[[23,34],[`dislike`,`unlike`,`remove`,`unrate`]],[[23,3],[`arrow`,`previous`,`music`,`left`,`reverse`]],[[23,3],[`arrow`,`next`,`music`,`right`,`continue`]],[[29,22],[`phonendoscope`,`medical`,`heart`,`lungs`,`sound`]],[[34],[`reaction`,`emotion`,`smile`,`happy`,`feedback`]],[[37,34],[`post-it`,`comment`,`annotation`,`reaction`,`memo`,`reminder`,`todo`,`task`,`idea`,`brainstorm`,`document`,`page`,`paper`,`sheet`,`stationary`,`office`]],[[24],[`mineral`,`geology`,`nature`,`solid`,`pebble`,`crystal`,`ore`,`hard`,`coal`,`stone`,`rock`,`boulder`]],[[5,25,33],[`shop`,`supermarket`,`stand`,`boutique`,`building`]],[[19],[`items`,`flex`,`justify`,`distribute`]],[[19],[`items`,`flex`,`justify`,`distribute`]],[[37],[`cross out`,`delete`,`remove`,`format`]],[[37],[`text`]],[[0,42,30,36],[`brightness`,`weather`,`light`,`summer`]],[[0,42],[`brightness`,`dim`,`low`,`brightness low`]],[[0,42],[`brightness`,`medium`]],[[0],[`dark`,`light`,`moon`,`sun`,`brightness`,`theme`,`auto theme`,`system theme`,`appearance`]],[[42],[`weather`,`air conditioning`,`temperature`,`hot`,`cold`,`seasons`]],[[3,42,38],[`weather`,`time`,`morning`,`day`]],[[3,42],[`weather`,`time`,`evening`,`night`]],[[37],[`text`,`exponent`]],[[10,18,28],[`colors`,`colours`,`swatches`,`pantone`,`shades`,`tint`,`hue`,`saturation`,`brightness`,`theme`,`scheme`,`palette`,`samples`,`textile`,`carpet`]],[[15],[`currency`,`money`,`payment`]],[[7,12],[`photo`,`selfie`,`front`,`back`]],[[17,39],[`battle`,`challenge`,`game`,`war`,`weapon`]],[[17,39],[`battle`,`challenge`,`game`,`war`,`weapon`]],[[29,22],[`medicine`,`medical`,`needle`,`pump`,`plunger`,`nozzle`,`blood`]],[[37,14],[`spreadsheet`,`grid`]],[[37,14],[`spreadsheet`,`grid`]],[[37,14],[`spreadsheet`,`grid`,`row`]],[[37,14],[`spreadsheet`,`grid`,`row`]],[[37,14],[`spreadsheet`,`grid`,`cut`,`break`,`divide`,`separate`,`segment`]],[[37],[`toc`,`outline`,`navigation`,`document structure`,`index`,`overview`,`sections`,`chapters`,`content`,`documentation`,`manual`,`knowledge base`,`faq`]],[[37,11,14],[`property list`,`plist`,`spreadsheet`,`grid`,`dictionary`,`object`,`hash`]],[[37,14],[`spreadsheet`,`grid`,`cut`,`break`,`divide`,`separate`,`segment`]],[[12],[`device`]],[[12,10,11,39],[`responsive`,`screens`,`browser`,`testing`,`mobile`]],[[22],[`medicine`,`medication`,`drug`,`prescription`,`pills`,`pharmacy`]],[[1],[`label`,`badge`,`ticket`,`mark`]],[[1],[`labels`,`badges`,`tickets`,`marks`,`copy`,`multiple`]],[[21,17],[`count`,`score`,`enumerate`,`days`,`one`,`1`,`first`,`bar`,`prison`,`cell`,`sentence`]],[[21,17],[`count`,`score`,`enumerate`,`days`,`two`,`2`,`second`,`double`,`bars`,`prison`,`cell`,`sentence`]],[[21,17],[`count`,`score`,`enumerate`,`days`,`three`,`3`,`third`,`triple`,`bars`,`prison`,`cell`,`sentence`]],[[21,17],[`count`,`score`,`enumerate`,`days`,`4`,`fourth`,`quadruple`,`bars`,`prison`,`cell`,`sentence`]],[[21,17],[`count`,`score`,`enumerate`,`days`,`five`,`5`,`fifth`,`bars`,`prison`,`cell`,`sentence`,`slash`,`/`]],[[32,21,10,39],[`tangential`,`shape`,`circle`,`geometry`,`trigonometry`,`bezier curve`]],[[4,17],[`logo`,`bullseye`,`deadline`,`projects`,`overview`,`work`,`productivity`]],[[29,11,39],[`astronomy`,`space`,`discovery`,`exploration`,`explore`,`vision`,`perspective`,`focus`,`stargazing`,`observe`,`view`]],[[41,24,36],[`tipi`,`teepee`,`wigwam`,`lodge`,`camping`,`campsite`,`holiday`,`retreat`,`nomadic`,`native american`,`indian`,`wilderness`,`outdoors`]],[[41,24],[`camping`,`campsite`,`holiday`,`retreat`,`nomadic`,`wilderness`,`outdoors`]],[[11],[`code`,`command line`,`prompt`,`shell`]],[[29],[`tube`,`vial`,`phial`,`flask`,`ampoule`,`ampule`,`lab`,`chemistry`,`experiment`,`test`]],[[29],[`tube`,`vial`,`phial`,`flask`,`ampoule`,`ampule`,`lab`,`chemistry`,`experiment`,`test`]],[[29],[`tubes`,`vials`,`phials`,`flasks`,`ampoules`,`ampules`,`lab`,`chemistry`,`experiment`,`test`]],[[37],[`text`,`alignment`,`center`]],[[37],[`text`,`alignment`,`right`]],[[37],[`text`,`alignment`,`justified`,`menu`,`list`]],[[37],[`text`,`alignment`,`left`,`list`]],[[37,9],[`select`]],[[37,19],[`select`]],[[37],[`drop cap`,`text`,`format`,`typography`,`letter`,`font size`]],[[37],[`blockquote`,`quotation`,`indent`,`reply`,`response`]],[[37],[`find`,`data`,`copy`,`txt`,`pdf`,`document`,`scan`,`magnifier`,`magnifying glass`,`lens`]],[[37,9],[`find`,`search`,`selection`,`dashed`]],[[37,3],[`words`,`lines`,`break`,`paragraph`]],[[5,34],[`theater`,`theatre`,`entertainment`,`podium`,`stage`,`musical`]],[[42],[`temperature`,`celsius`,`fahrenheit`,`weather`]],[[42],[`temperature`,`celsius`,`fahrenheit`,`weather`,`cold`,`freeze`,`freezing`]],[[42],[`temperature`,`celsius`,`fahrenheit`,`weather`,`warm`,`hot`]],[[1,34,13],[`dislike`,`bad`,`emotion`]],[[1,34,13],[`like`,`good`,`emotion`]],[[1,40],[`entry`,`pass`,`voucher`,`event`,`concert`,`show`,`perforated`,`dashed`]],[[40],[`entry`,`pass`,`voucher`,`event`,`concert`,`show`,`booked`,`purchased`,`receipt`,`redeemed`,`validated`,`verified`,`certified`,`checked`,`used`]],[[40],[`entry`,`pass`,`voucher`,`event`,`concert`,`show`,`remove`,`cancel`,`unbook`,`subtract`,`decrease`,`-`]],[[40,33],[`discount`,`reduced`,`offer`,`voucher`,`entry`,`pass`,`event`,`concert`,`show`,`book`,`purchase`,`%`]],[[40],[`entry`,`pass`,`voucher`,`event`,`concert`,`show`,`book`,`purchase`,`add`,`+`]],[[40],`entry.pass.voucher.event.concert.show.redeemed.used.marked.checked.verified.spoiled.invalidated.void.denied.refused.banned.barred.forbidden.prohibited.cancelled.cancellation.refunded.delete.remove.clear.error`.split(`.`)],[[40],[`entry`,`pass`,`voucher`,`event`,`concert`,`show`,`cancelled`,`cancellation`,`refunded`,`used`,`void`,`invalidated`,`spoiled`,`denied`,`refused`,`banned`,`barred`,`forbidden`,`prohibited`,`delete`,`remove`,`clear`,`error`,`x`]],[[41,1,40],[`trip`,`travel`,`pass`,`entry`,`voucher`,`event`,`concert`,`show`,`perforated`,`dashed`]],[[40,41],[`plane`,`trip`,`airplane`,`flight`,`travel`,`fly`,`takeoff`,`vacation`,`passenger`,`pass`,`check-in`,`airport`]],[[38],[`time`,`timer`,`stopwatch`]],[[38],[`time`,`timer`,`stopwatch`]],[[38],[`time`,`timer`,`stopwatch`]],[[19,1,11],[`on`,`off`,`switch`,`boolean`]],[[19,1,11],[`on`,`off`,`switch`,`boolean`]],[[12,18],[`toilet`,`potty`,`bathroom`,`washroom`]],[[39,11,18],[`tools`,`maintenance`,`repair`]],[[39,18],[`toolkit`,`tools`,`trunk`,`chest`,`box`,`storage`,`utility`,`utilities`,`container`,`kit`,`set`,`repair`,`fix`,`service`,`maintenance`,`mechanic`,`workshop`,`construction`,`hardware`,`equipment`,`gear`,`handyman`,`engineering`,`craft`,`diy`]],[[42],[`weather`,`wind`,`storm`,`hurricane`]],[[32,10,39,16],[`donut`,`doughnut`,`ring`,`hollow`,`3d`,`fast food`,`junk food`,`snack`,`treat`,`sweet`,`sugar`,`dessert`]],[[12],[`trackpad`,`cursor`]],[[12],[`trackpad`,`cursor`]],[[18,41],[`flannel`,`bathroom`,`toiletries`,`sanitation`,`clean`,`fresh`,`dry`,`laundry`,`laundrette`,`hospitality`,`housekeeping`,`room service`,`spa break`,`health club`,`amenities`,`hanging`]],[[41,40],[`airport`,`travel`,`tower`,`transportation`,`lighthouse`]],[[17,11],[`lego`,`block`,`addon`,`plugin`,`integration`]],[[40,36,16],[`farming`,`farmer`,`ranch`,`harvest`,`equipment`,`vehicle`]],[[40],[`roadworks`,`tarmac`,`safety`,`block`]],[[40],[`railway`,`metro`,`subway`,`underground`,`high-speed`,`bullet`,`fast`,`track`,`line`]],[[40,25],[`railway`,`metro`,`subway`,`underground`,`speed`,`bullet`,`fast`,`track`,`line`]],[[40,25],[`railway`,`line`]],[[40],[`railway`,`metro`,`subway`,`underground`,`track`,`line`,`tourism`]],[[22,0],[`gender`,`inclusive`]],[[14,20],[`empty`,`deletion`,`cleanup`,`junk`,`clear`,`garbage`,`delete`,`remove`,`bin`,`waste`,`recycle`,`discard`,`binoculars`,`rubbish`]],[[14,20],[`garbage`,`delete`,`remove`,`bin`]],[[24,36],[`tree`,`forest`,`park`,`nature`]],[[24,36],[`vacation`,`leisure`,`island`]],[[24,36],[`tree`,`pine`,`forest`,`park`,`nature`]],[[24,36],[`tree`,`forest`,`park`,`nature`]],[[6,3],[`statistics`]],[[6,3],[`statistics`]],[[6,3],[`arrows`,`estimated`,`indeterminate`,`data fluctuation`,`uncertain`,`forecast`,`variable`,`prediction`,`dynamic`,`volatile`]],[[32],[`equilateral`,`delta`,`shape`,`pyramid`,`hierarchy`]],[[26,32,11],[`warning`,`alert`,`danger`,`exclamation mark`,`linter`]],[[32],[`equilateral`,`delta`,`shape`,`pyramid`,`hierarchy`,`dashed`]],[[32,21],[`volume`,`controls`,`controller`,`tv remote`,`geometry`,`delta`,`ramp`,`slope`,`incline`,`increase`]],[[35,17],[`prize`,`sports`,`winner`,`achievement`,`award`,`champion`,`celebration`,`victory`]],[[40],[`delivery`,`van`,`shipping`,`haulage`,`lorry`]],[[40],[`delivery`,`van`,`shipping`,`haulage`,`lorry`,`electric`]],[[15],[`currency`,`money`,`payment`]],[[23,18],[`record player`,`gramophone`,`stereo`,`phonograph`,`vinyl`,`lp`,`disc`,`platter`,`cut`,`music`,`analog`,`retro`,`dj deck`,`disc jockey`,`scratch`,`spinning`]],[[2],[`animal`,`pet`,`tortoise`,`slow`,`speed`]],[[12,23,7],`television.stream.display.widescreen.high-definition.hd.1080p.4k.8k.smart.digital.video.entertainment.showtime.channels.terrestrial.satellite.cable.broadcast.live.frequency.tune.scan.aerial.receiver.transmission.signal.connection.connectivity`.split(`.`)],[[12,23],[`flatscreen`,`television`,`stream`,`display`,`widescreen`,`high-definition`,`hd`,`1080p`,`4k`,`8k`,`smart`,`digital`,`video`,`home cinema`,`entertainment`,`showtime`,`channels`,`catchup`]],[[12,23],[`flatscreen`,`television`,`stream`,`display`,`widescreen`,`high-definition`,`hd`,`1080p`,`4k`,`8k`,`smart`,`digital`,`video`,`movie`,`live`,`ott`,`running`,`start`,`film`,`home cinema`,`entertainment`,`showtime`,`channels`,`catchup`]],[[37],[`text`,`font`,`typography`]],[[37],[`text`,`font`,`typography`,`silhouette`,`profile`,`contour`,`stroke`,`line`]],[[42],[`rain`,`weather`]],[[42],[`rain`,`weather`,`uncovered`,`uninsured`,`antivirus`,`unprotected`,`risky`]],[[37],[`text`,`format`]],[[37,3],[`redo`,`rerun`,`history`]],[[37,3],[`redo`,`rerun`,`history`,`back`,`return`,`reverse`,`revert`,`direction`,`u-turn`]],[[37,3],[`redo`,`history`,`step`,`back`]],[[3,19],[`arrow`,`collapse`,`fold`,`vertical`,`dashed`]],[[3,19],[`arrow`,`expand`,`vertical`,`dashed`]],[[32,14],[`cubes`,`packages`,`parts`,`units`,`collection`,`cluster`,`separate`]],[[5,25],[`building`,`education`,`childhood`,`school`,`college`,`academy`,`institute`]],[[37],[`url`,`unchain`]],[[37],[`url`,`unchain`]],[[12,11],[`electricity`,`energy`,`electronics`,`socket`,`outlet`,`disconnect`]],[[3,14],[`file`]],[[12,23,18],[`universal`,`serial`,`bus`,`controller`,`connector`,`interface`]],[[1],[`person`,`account`,`contact`]],[[1],[`followed`,`subscribed`,`done`,`todo`,`tick`,`complete`,`task`]],[[1],[`settings`,`edit`,`cog`,`gear`]],[[1],[`passkey`,`password`,`login`,`authentication`,`authorization`,`roles`,`permissions`,`private`,`public`,`security`,`person`,`account`,`contact`]],[[1,31],[`person`,`lock`,`locked`,`account`,`secure`]],[[1],[`delete`,`remove`,`unfollow`,`unsubscribe`]],[[1],[`person`,`account`,`contact`,`profile`,`edit`,`change`]],[[1],[`new`,`add`,`create`,`follow`,`subscribe`]],[[1],[`person`,`account`,`contact`]],[[1],[`followed`,`subscribed`,`done`,`todo`,`tick`,`complete`,`task`]],[[1],[`settings`,`edit`,`cog`,`gear`]],[[1],[`passkey`,`password`,`login`,`authentication`,`authorization`,`roles`,`permissions`,`private`,`public`,`security`,`person`,`account`,`contact`]],[[1],[`delete`,`remove`,`unfollow`,`unsubscribe`]],[[1],[`person`,`account`,`contact`,`profile`,`edit`,`change`]],[[1],[`new`,`add`,`create`,`follow`,`subscribe`]],[[1,34],[`person`,`account`,`contact`,`find`,`scan`,`magnifier`,`magnifying glass`,`lens`]],[[1],[`delete`,`remove`,`unfollow`,`unsubscribe`,`unavailable`]],[[1,34],[`person`,`account`,`contact`,`find`,`scan`,`magnifier`,`magnifying glass`,`lens`]],[[1],[`person`,`account`,`favorite`,`contact`,`like`,`review`,`rating`,`admin`]],[[1],[`delete`,`remove`,`unfollow`,`unsubscribe`,`unavailable`]],[[1],[`group`,`people`]],[[1],[`group`,`people`]],[[16,41,25],[`fork`,`knife`,`cutlery`,`flatware`,`tableware`,`silverware`,`food`,`restaurant`,`meal`,`breakfast`,`dinner`,`supper`]],[[16,41,25],[`fork`,`knife`,`cutlery`,`flatware`,`tableware`,`silverware`,`food`,`restaurant`,`meal`,`breakfast`,`dinner`,`supper`]],[[5,18,36],[`electricity`,`energy`,`transmission line`,`telegraph pole`,`power lines`,`phone`]],[[40],[`minivan`,`cart`,`wagon`,`truck`,`lorry`,`trailer`,`camper`,`vehicle`,`drive`,`trip`,`journey`,`van`,`transport`,`carriage`,`delivery`,`travel`]],[[11,21],[`code`,`coding`,`programming`,`symbol`,`calculate`,`algebra`,`x`,`parentheses`,`parenthesis`,`brackets`,`parameter`,`(`,`)`]],[[31,41,18],[`safe`,`lockbox`,`deposit`,`locker`,`coffer`,`strongbox`,`safety`,`secure`,`storage`,`valuables`,`bank`]],[[32,21,10,39],[`shape`,`geometry`,`art`,`width`,`height`,`size`,`calculate`,`measure`,`select`,`graphics`,`box`]],[[16,36],[`vegetarian`,`fruitarian`,`herbivorous`,`animal rights`,`diet`]],[[1,17],[`mask`,`masquerade`,`impersonate`,`secret`,`incognito`]],[[22],[`gender`,`sex`,`female`,`feminine`,`woman`,`girl`]],[[22],[`gender`,`sex`,`intersex`,`androgynous`,`hermaphrodite`]],[[12,8,1,26],[`smartphone`,`notification`,`rumble`,`haptic feedback`,`screen`]],[[12,8,1],[`smartphone`,`notification`,`rumble`,`haptic feedback`,`notifications`,`screen`]],[[12,7,8,28],[`camera`,`movie`,`film`,`recording`,`motion picture`,`camcorder`,`reel`]],[[12,7,8,28],[`camera`,`movie`,`film`]],[[12,7,8,28,14],[`vhs`,`movie`,`film`,`recording`,`motion picture`,`showreel`,`cassette`]],[[10,28],[`eye`,`look`]],[[8,12,34],[`phone`,`cassette`,`tape`,`reel`,`recording`,`audio`]],[[35,17,41],[`beach`,`sand`,`net`,`holiday`,`vacation`,`summer`,`soccer`,`football`,`futbol`,`kick`,`pitch`,`goal`,`score`,`bounce`,`leather`,`wool`,`yarn`,`knitting`,`sewing`,`thread`,`embroidery`,`textile`]],[[8,7,23],[`music`,`sound`,`mute`,`speaker`]],[[8,7,23],[`music`,`sound`,`speaker`]],[[8,7,23],[`music`,`sound`,`speaker`]],[[8,7,23],[`music`,`sound`,`mute`,`speaker`]],[[8,7,23],[`music`,`sound`,`mute`,`speaker`]],[[34],[`vote`,`poll`,`ballot`,`political`,`social`,`check`,`tick`]],[[1,15],[`money`,`finance`,`pocket`]],[[1,15],[`money`,`finance`,`pocket`,`credit`,`purchase`,`payment`,`shopping`,`retail`,`consumer`,`cc`]],[[1,15],[`finance`,`pocket`]],[[1,12],[`background`,`texture`,`image`,`art`,`design`,`visual`,`decor`,`pattern`,`screen`,`cover`,`lock screen`]],[[10,17,9,28],[`magic`,`selection`]],[[10,17,9,28],[`magic`,`wizard`,`magician`]],[[5,25],[`storage`,`storehouse`,`depot`,`depository`,`repository`,`stockroom`,`logistics`,`building`]],[[18,12,41],[`tumble dryer`,`amenities`,`electronics`,`cycle`,`clothes`,`rinse`,`spin`,`drum`]],[[38],[`clock`,`time`]],[[42,25,23,36],[`water`,`sea`,`sound`,`hertz`,`wavelength`,`vibrate`]],[[42,36],[`water`,`sea`,`level`,`sound`,`hertz`,`wavelength`,`vibrate`,`low`,`tide`,`ocean`,`rising`,`down`,`falling`]],[[42,36],[`water`,`sea`,`level`,`sound`,`hertz`,`wavelength`,`vibrate`,`high`,`tide`,`ocean`,`rising`]],[[35,18],[`swimming`,`water`,`pool`,`lifeguard`,`ocean`,`🌊`,`🏊♂️`,`🏊♀️`,`🏊`,`🥽`]],[[31,1,25,11,34],[`indirection`,`vpn`,`virtual private network`,`proxy`,`connections`,`bounce`,`reroute`,`path`,`journey`,`planner`,`stops`,`stations`,`shared`,`spread`,`viral`]],[[8,12,7],[`camera`,`security`]],[[11,34,1],[`push api`,`interface`,`callback`]],[[11,34,1],[`push api`,`interface`,`callback`]],[[21],[`mass`,`heavy`,`lead`,`metal`,`measure`,`geometry`,`scales`,`balance`]],[[21],[`measure`,`scale`,`estimate`,`load`,`balance`,`size`,`measurement`,`quantity`,`mass`]],[[16],[`corn`,`cereal`,`grain`,`gluten`]],[[16],[`corn`,`cereal`,`grain`,`gluten free`,`allergy`,`intolerance`,`diet`]],[[37],[`text`,`selection`,`letters`,`characters`,`font`,`typography`]],[[8,12],[`connection`,`signal`,`wireless`]],[[8,12,14],[`connection`,`signal`,`wireless`,`directory`,`settings`,`control`,`preferences`,`cog`,`edit`,`gear`]],[[8,12],[`connection`,`signal`,`wireless`]],[[8,12],[`connection`,`signal`,`wireless`]],[[8,12],[`disabled`]],[[8,12],[`edit`,`wifi`,`pen`,`change`,`network`]],[[8,12],[`connection`,`signal`,`wireless`,`synchronize`,`reconnect`,`reset`,`restart`]],[[8,12],[`connection`,`signal`,`wireless`]],[[42,36],[`weather`,`air`,`blow`]],[[42,36],[`weather`,`air`,`pressure`,`blow`]],[[16],[`alcohol`,`beverage`,`bar`,`drink`,`glass`,`sommelier`,`vineyard`,`winery`]],[[16],[`alcohol`,`beverage`,`drink`,`glass`,`alcohol free`,`abstinence`,`abstaining`,`teetotalism`,`allergy`,`intolerance`]],[[11],[`action`,`continuous integration`,`ci`,`automation`,`devops`,`network`,`node`,`connection`]],[[2,31],[`invertebrate`,`grub`,`larva`,`snake`,`crawl`,`wiggle`,`slither`,`pest control`,`computer virus`,`malware`]],[[1,11,39],[`account`,`settings`,`spanner`,`diy`,`toolbox`,`build`,`construction`]],[[26,21],[`cancel`,`close`,`cross`,`delete`,`ex`,`remove`,`times`,`clear`,`math`,`multiply`,`multiplication`]],[[26,21],[`line`,`top`,`arrow`,`navigation`,`up`,`pointer`,`direction`,`vector`,`symbol`,`cancel`,`close`,`delete`,`remove`,`times`,`clear`,`math`,`multiply`,`multiplication`,`mean`,`median`,`average`,`x̄`]],[[8,12,28,42],[`flash`,`camera`,`lightning`,`electricity`,`energy`]],[[8,12,28,42],[`flash`,`camera`,`lightning`,`electricity`,`energy`]],[[34,13],[`water bearer`,`waves`,`innovation`,`air`,`future`,`astrology`,`star sign`,`horoscope`,`constellation`,`celestial`]],[[34,13],[`ram`,`horns`,`fire`,`energy`,`initiative`,`astrology`,`star sign`,`horoscope`,`constellation`,`celestial`]],[[34,13],[`crab`,`shell`,`protection`,`water`,`intuition`,`astrology`,`star sign`,`horoscope`,`constellation`,`celestial`]],[[34,13],[`goat`,`mountain`,`ambition`,`earth`,`discipline`,`astrology`,`star sign`,`horoscope`,`constellation`,`celestial`]],[[34,13],[`twins`,`duality`,`communication`,`air`,`adaptability`,`astrology`,`star sign`,`horoscope`,`constellation`,`celestial`]],[[34,13],[`lion`,`crown`,`leadership`,`fire`,`confidence`,`astrology`,`star sign`,`horoscope`,`constellation`,`celestial`]],[[34,13],[`scales`,`balance`,`justice`,`air`,`harmony`,`astrology`,`star sign`,`horoscope`,`constellation`,`celestial`]],[[34,13],[`serpent`,`snake holder`,`healing`,`knowledge`,`astronomy`,`astrology`,`star sign`,`horoscope`,`constellation`,`celestial`]],[[34,13],[`fish`,`duality`,`water`,`dreams`,`empathy`,`astrology`,`star sign`,`horoscope`,`constellation`,`celestial`]],[[34,13],[`archer`,`arrow`,`exploration`,`fire`,`philosophy`,`astrology`,`star sign`,`horoscope`,`constellation`,`celestial`]],[[34,13],[`scorpion`,`stinger`,`intensity`,`water`,`transformation`,`astrology`,`star sign`,`horoscope`,`constellation`,`celestial`]],[[34,13],[`bull`,`strength`,`stability`,`earth`,`endurance`,`astrology`,`star sign`,`horoscope`,`constellation`,`celestial`]],[[34,13],[`virgin`,`maiden`,`harvest`,`precision`,`earth`,`analysis`,`astrology`,`star sign`,`horoscope`,`constellation`,`celestial`]],[[0,19,10,37,28],[`magnifying glass`,`plus`]],[[0,19,10,37,28],[`magnifying glass`,`plus`]]],Ev={"activity-square":`square-activity`,"alarm-check":`alarm-clock-check`,"alarm-minus":`alarm-clock-minus`,"alarm-plus":`alarm-clock-plus`,"alert-circle":`circle-alert`,"alert-octagon":`octagon-alert`,"alert-triangle":`triangle-alert`,"align-center":`text-align-center`,"align-justify":`text-align-justify`,"align-left":`text-align-start`,"align-right":`text-align-end`,"area-chart":`chart-area`,"arrow-down-01":`arrow-down-0-1`,"arrow-down-10":`arrow-down-1-0`,"arrow-down-az":`arrow-down-a-z`,"arrow-down-circle":`circle-arrow-down`,"arrow-down-left-from-circle":`circle-arrow-out-down-left`,"arrow-down-left-from-square":`square-arrow-out-down-left`,"arrow-down-left-square":`square-arrow-down-left`,"arrow-down-right-from-circle":`circle-arrow-out-down-right`,"arrow-down-right-from-square":`square-arrow-out-down-right`,"arrow-down-right-square":`square-arrow-down-right`,"arrow-down-square":`square-arrow-down`,"arrow-down-za":`arrow-down-z-a`,"arrow-left-circle":`circle-arrow-left`,"arrow-left-square":`square-arrow-left`,"arrow-right-circle":`circle-arrow-right`,"arrow-right-square":`square-arrow-right`,"arrow-up-01":`arrow-up-0-1`,"arrow-up-10":`arrow-up-1-0`,"arrow-up-az":`arrow-up-a-z`,"arrow-up-circle":`circle-arrow-up`,"arrow-up-left-from-circle":`circle-arrow-out-up-left`,"arrow-up-left-from-square":`square-arrow-out-up-left`,"arrow-up-left-square":`square-arrow-up-left`,"arrow-up-right-from-circle":`circle-arrow-out-up-right`,"arrow-up-right-from-square":`square-arrow-out-up-right`,"arrow-up-right-square":`square-arrow-up-right`,"arrow-up-square":`square-arrow-up`,"arrow-up-za":`arrow-up-z-a`,"asterisk-square":`square-asterisk`,"axis-3-d":`axis-3d`,"badge-help":`badge-question-mark`,"bar-chart":`chart-no-axes-column-increasing`,"bar-chart-2":`chart-no-axes-column`,"bar-chart-3":`chart-column`,"bar-chart-4":`chart-column-increasing`,"bar-chart-big":`chart-column-big`,"bar-chart-horizontal":`chart-bar`,"bar-chart-horizontal-big":`chart-bar-big`,"between-horizonal-end":`between-horizontal-end`,"between-horizonal-start":`between-horizontal-start`,"book-template":`book-dashed`,"box-select":`square-dashed`,"candlestick-chart":`chart-candlestick`,"check-circle":`circle-check-big`,"check-circle-2":`circle-check`,"check-square":`square-check-big`,"check-square-2":`square-check`,"chevron-down-circle":`circle-chevron-down`,"chevron-down-square":`square-chevron-down`,"chevron-left-circle":`circle-chevron-left`,"chevron-left-square":`square-chevron-left`,"chevron-right-circle":`circle-chevron-right`,"chevron-right-square":`square-chevron-right`,"chevron-up-circle":`circle-chevron-up`,"chevron-up-square":`square-chevron-up`,"circle-help":`circle-question-mark`,"circle-slashed":`circle-slash-2`,"clipboard-edit":`clipboard-pen`,"clipboard-signature":`clipboard-pen-line`,"code-2":`code-xml`,"code-square":`square-code`,columns:`columns-2`,"columns-settings":`columns-3-cog`,"contact-2":`contact-round`,"curly-braces":`braces`,"divide-circle":`circle-divide`,"divide-square":`square-divide`,"dot-square":`square-dot`,"download-cloud":`cloud-download`,edit:`square-pen`,"edit-2":`pen`,"edit-3":`pen-line`,"equal-square":`square-equal`,"file-audio":`file-headphone`,"file-audio-2":`file-headphone`,"file-axis-3-d":`file-axis-3d`,"file-badge-2":`file-badge`,"file-bar-chart":`file-chart-column-increasing`,"file-bar-chart-2":`file-chart-column`,"file-check-2":`file-check-corner`,"file-code-2":`file-code-corner`,"file-cog-2":`file-cog`,"file-edit":`file-pen`,"file-json":`file-braces`,"file-json-2":`file-braces-corner`,"file-key-2":`file-key`,"file-line-chart":`file-chart-line`,"file-lock-2":`file-lock`,"file-minus-2":`file-minus-corner`,"file-pie-chart":`file-chart-pie`,"file-plus-2":`file-plus-corner`,"file-question":`file-question-mark`,"file-search-2":`file-search-corner`,"file-signature":`file-pen-line`,"file-type-2":`file-type-corner`,"file-video":`file-play`,"file-video-2":`file-video-camera`,"file-volume-2":`file-signal`,"file-warning":`file-exclamation-point`,"file-x-2":`file-x-corner`,filter:`funnel`,"filter-x":`funnel-x`,fingerprint:`fingerprint-pattern`,"flip-horizontal":`square-centerline-dashed-horizontal`,"flip-vertical":`square-centerline-dashed-vertical`,"folder-cog-2":`folder-cog`,"folder-edit":`folder-pen`,"fork-knife":`utensils`,"fork-knife-crossed":`utensils-crossed`,"form-input":`rectangle-ellipsis`,"function-square":`square-function`,"gantt-chart":`chart-no-axes-gantt`,"gantt-chart-square":`square-chart-gantt`,"gauge-circle":`circle-gauge`,"git-commit":`git-commit-horizontal`,"globe-2":`earth`,grab:`hand-grab`,grid:`grid-3x3`,"grid-2-x-2":`grid-2x2`,"grid-2-x-2-check":`grid-2x2-check`,"grid-2-x-2-plus":`grid-2x2-plus`,"grid-2-x-2-x":`grid-2x2-x`,"grid-3-x-3":`grid-3x3`,"help-circle":`circle-question-mark`,"helping-hand":`hand-helping`,home:`house`,"ice-cream":`ice-cream-cone`,"ice-cream-2":`ice-cream-bowl`,indent:`list-indent-increase`,"indent-decrease":`list-indent-decrease`,"indent-increase":`list-indent-increase`,inspect:`square-mouse-pointer`,"kanban-square":`square-kanban`,"kanban-square-dashed":`square-dashed-kanban`,"laptop-2":`laptop-minimal`,"layers-3":`layers`,layout:`panels-top-left`,"letter-text":`text-initial`,"library-square":`square-library`,"line-chart":`chart-line`,"loader-2":`loader-circle`,"location-edit":`map-pin-pen`,"m-square":`square-m`,"mail-question":`mail-question-mark`,"menu-square":`square-menu`,"message-circle-question":`message-circle-question-mark`,"mic-2":`mic-vocal`,"minus-circle":`circle-minus`,"minus-square":`square-minus`,"more-horizontal":`ellipsis`,"more-vertical":`ellipsis-vertical`,"mouse-pointer-square-dashed":`square-dashed-mouse-pointer`,"move-3-d":`move-3d`,outdent:`list-indent-decrease`,"paintbrush-2":`paintbrush-vertical`,palmtree:`tree-palm`,"panel-bottom-inactive":`panel-bottom-dashed`,"panel-left-inactive":`panel-left-dashed`,"panel-right-inactive":`panel-right-dashed`,"panel-top-inactive":`panel-top-dashed`,"panels-left-right":`columns-3`,"panels-top-bottom":`rows-3`,"parking-circle":`circle-parking`,"parking-circle-off":`circle-parking-off`,"parking-square":`square-parking`,"parking-square-off":`square-parking-off`,"pause-circle":`circle-pause`,"pause-octagon":`octagon-pause`,"pen-box":`square-pen`,"pen-square":`square-pen`,"percent-circle":`circle-percent`,"percent-diamond":`diamond-percent`,"percent-square":`square-percent`,"pi-square":`square-pi`,"pie-chart":`chart-pie`,"pilcrow-square":`square-pilcrow`,"play-circle":`circle-play`,"play-square":`square-play`,"plug-zap-2":`plug-zap`,"plus-circle":`circle-plus`,"plus-square":`square-plus`,"power-circle":`circle-power`,"power-square":`square-power`,"rotate-3-d":`rotate-3d`,rows:`rows-2`,"scale-3-d":`scale-3d`,"scatter-chart":`chart-scatter`,"school-2":`university`,"scissors-square":`square-scissors`,"scissors-square-dashed-bottom":`square-bottom-dashed-scissors`,"send-horizonal":`send-horizontal`,"shield-close":`shield-x`,"shield-question":`shield-question-mark`,sidebar:`panel-left`,"sidebar-close":`panel-left-close`,"sidebar-open":`panel-left-open`,"sigma-square":`square-sigma`,"slash-square":`square-slash`,sliders:`sliders-vertical`,"sort-asc":`arrow-up-narrow-wide`,"sort-desc":`arrow-down-wide-narrow`,"split-square-horizontal":`square-split-horizontal`,"split-square-vertical":`square-split-vertical`,"square-gantt-chart":`square-chart-gantt`,stars:`sparkles`,"stop-circle":`circle-stop`,subtitles:`captions`,"table-config":`columns-3-cog`,"terminal-square":`square-terminal`,"test-tube-2":`test-tube-diagonal`,text:`text-align-start`,"text-selection":`text-select`,train:`tram-front`,"tv-2":`tv-minimal`,unlock:`lock-open`,"unlock-keyhole":`lock-keyhole-open`,"upload-cloud":`cloud-upload`,"user-2":`user-round`,"user-check-2":`user-round-check`,"user-circle":`circle-user`,"user-circle-2":`circle-user-round`,"user-cog-2":`user-round-cog`,"user-minus-2":`user-round-minus`,"user-plus-2":`user-round-plus`,"user-square":`square-user`,"user-square-2":`square-user-round`,"user-x-2":`user-round-x`,"users-2":`users-round`,verified:`badge-check`,"wallet-2":`wallet-minimal`,"wand-2":`wand-sparkles`,"wrap-text":`text-wrap`,"x-circle":`circle-x`,"x-octagon":`octagon-x`,"x-square":`square-x`},Dv={activity:[`attivita`,`sensore`,`generico`],"air-vent":[`bocchetta`,`aria`,`ventilazione`,`condizionatore`,`vent`],"alarm-smoke":[`fumo`,`antincendio`,`rilevatore`],baby:[`neonato`,`bimbo`,`cameretta`,`babymonitor`],bath:[`bagno`,`vasca`,`doccia`,`bathroom`],battery:[`batteria`],"battery-charging":[`batteria`,`carica`,`ricarica`],"battery-full":[`batteria`,`carica`,`piena`],"battery-low":[`batteria`,`scarica`],bed:[`cameretta`,`letto`,`singolo`],"bed-double":[`camera`,`letto`,`matrimoniale`,`bedroom`],bell:[`campanello`,`suoneria`,`notifica`,`chime`],"bell-off":[`silenzioso`,`notifiche`,`disattivate`,`muto`],"bell-ring":[`campanello`,`suona`,`doorbell`,`notifica`],bike:[`bicicletta`,`bici`,`moto`],bird:[`uccello`,`animale`],blinds:[`tapparella`,`persiana`,`serranda`,`avvolgibile`,`shutter`,`blind`,`veneziana`],bluetooth:[],bone:[`osso`,`cane`],bot:[`robot`,`aspirapolvere`],box:[`scatola`,`contenitore`],briefcase:[`ufficio`,`lavoro`,`valigetta`,`studio`,`office`],building:[`edificio`,`palazzo`],"building-2":[`edificio`,`uffici`,`condominio`],bus:[`autobus`,`pullman`],cable:[`cavo`],calendar:[`calendario`,`data`,`pianificazione`],camera:[`telecamera`,`videocamera`,`cam`],car:[`auto`,`macchina`,`veicolo`,`parcheggio`,`garage`],cat:[`gatto`,`animale`],"circle-dot":[`pulsante`,`bottone`,`button`,`dot`],"circle-parking":[`parcheggio`,`posto`,`auto`,`garage`,`parking`],clock:[`orologio`,`ora`,`tempo`],cloud:[`nuvola`,`nuvoloso`],"cloud-rain":[`pioggia`],"cloud-sun":[`variabile`,`sole`,`nuvole`],"cooking-pot":[`pentola`,`cucina`,`fornello`],cpu:[`processore`,`chip`,`dispositivo`],crosshair:[`mirino`,`puntamento`,`centro`],dog:[`cane`,`animale`],"door-closed":[`porta`,`chiusa`,`contatto`],"door-open":[`porta`,`aperta`,`contatto`,`ingresso`,`uscita`,`entrance`],drill:[`officina`,`trapano`,`lavori`],droplet:[`goccia`,`acqua`,`perdita`,`allagamento`],droplets:[`umidita`,`acqua`,`allagamento`,`perdita`],dumbbell:[`palestra`,`attrezzi`],eye:[`occhio`,`visibile`,`visto`],"eye-off":[`privacy`,`nascosto`,`oscurato`,`mascherato`,`invisibile`],fan:[`ventilatore`,`ventola`,`aria`],fence:[`recinto`,`cancello`,`staccionata`,`perimetro`,`gate`],flame:[`fiamma`,`gas`,`fuoco`,`incendio`],flashlight:[`faretto`,`torcia`,`spot`,`faro`],flower:[`fiore`,`pianta`],footprints:[`movimento`,`passi`,`presenza`,`motion`],"gamepad-2":[`console`,`gioco`,`joystick`],gauge:[`misura`,`livello`,`pressione`,`indicatore`],hammer:[`officina`,`martello`,`lavori`],"hard-drive":[`disco`,`hdd`,`archiviazione`,`storage`],hash:[`numero`,`contatore`,`valore`],heart:[`cuore`,`preferito`,`salute`],"heart-pulse":[`battito`,`salute`,`monitoraggio`],heater:[`riscaldamento`,`termosifone`,`stufa`,`calore`],house:[`casa`,`abitazione`,`home`],image:[`immagine`,`foto`,`snapshot`],key:[`chiave`],"key-round":[`chiave`,`tonda`],lamp:[`lampada`,`abatjour`],"lamp-ceiling":[`plafoniera`,`lampadario`,`luce`,`soffitto`],"lamp-desk":[`lampada`,`scrivania`,`abatjour`],"lamp-floor":[`piantana`,`lampada`,`terra`],laptop:[`portatile`,`notebook`],leaf:[`foglia`,`pianta`,`verde`],lightbulb:[`luce`,`lampadina`,`lampada`,`light`],lock:[`serratura`,`chiave`,`lucchetto`,`chiuso`,`locked`],"lock-open":[`serratura`,`aperta`,`sbloccato`,`unlocked`],mailbox:[`cassetta`,`postale`,`posta`],"map-pin":[`posizione`,`luogo`,`mappa`,`pin`],mic:[`microfono`,`audio`],"mic-off":[`microfono`,`spento`,`muto`],microwave:[`microonde`,`forno`],monitor:[`schermo`],"monitor-play":[`schermo`,`riproduzione`,`player`,`display`],moon:[`notte`,`luna`,`notturna`,`nightvision`],mountain:[`montagna`,`esterno`,`panorama`],music:[`musica`],network:[`rete`,`lan`],package:[`pacco`,`consegna`,`storage`],"paw-print":[`animale`,`zampa`,`pet`],"person-standing":[`persona`,`piedi`,`presenza`],phone:[`telefono`,`chiamata`],pipette:[`qualita`,`aria`,`misura`,`campione`],plane:[`aereo`],plug:[`presa`,`spina`],"plug-zap":[`presa`,`alimentata`],power:[`accensione`,`alimentazione`],"power-off":[`spegnimento`,`spento`],printer:[`stampante`],projector:[`proiettore`],radar:[`movimento`,`presenza`,`pir`,`rilevamento`,`perimeter`],radio:[],"refresh-cw":[`aggiorna`,`ricarica`,`refresh`,`reload`,`ciclo`],refrigerator:[`frigorifero`,`frigo`],route:[`percorso`,`strada`,`vialetto`,`tragitto`,`street`],router:[`modem`],sailboat:[`barca`,`imbarcazione`],"scroll-text":[`registro`,`log`,`testo`],server:[`nas`],shield:[`scudo`,`protezione`,`sicurezza`,`allarme`],"shield-alert":[`manomissione`,`allarme`,`tamper`,`avviso`],"shield-check":[`protetto`,`sicuro`,`armato`],"shield-off":[`protezione`,`disattivata`,`disarmato`],siren:[`sirena`,`allarme`],"sliders-horizontal":[`regolazione`,`cursori`,`impostazioni`,`slider`],smartphone:[`telefono`,`cellulare`],snowflake:[`freddo`,`raffrescamento`,`aria`,`condizionata`,`neve`],sofa:[`salone`,`soggiorno`,`divano`,`living`,`living room`],sparkles:[`automatico`,`intelligente`,`ai`,`scena`],speaker:[`altoparlante`,`cassa`],sprout:[`irrigazione`,`pianta`,`germoglio`,`orto`],star:[`preferito`,`stella`,`importante`],store:[`negozio`,`ingresso`,`vetrina`,`shop`],sun:[`sole`,`luminosita`,`giorno`,`esterno`,`outdoor`],"sun-medium":[`sole`,`luminosita`],sunrise:[`alba`],tablet:[`ipad`],thermometer:[`temperatura`,`termometro`,`termostato`],"thermometer-snowflake":[`freddo`,`temperatura`,`bassa`],"thermometer-sun":[`caldo`,`temperatura`,`alta`],timer:[`conto`,`rovescia`],"toggle-left":[`interruttore`,`switch`,`toggle`],"toggle-right":[`interruttore`,`switch`,`toggle`,`acceso`],tractor:[`trattore`,`tosaerba`,`giardino`],"train-front":[`treno`],"tree-pine":[`albero`,`pino`,`giardino`],trees:[`giardino`,`alberi`,`esterno`,`parco`,`garden`],truck:[`camion`,`furgone`,`consegna`],tv:[`televisore`],umbrella:[`tenda`,`markise`,`ombrellone`,`pergola`,`veranda`,`terrace`],user:[`persona`,`utente`],users:[`persone`,`gruppo`,`famiglia`],utensils:[`cucina`,`posate`,`sala`,`pranzo`,`kitchen`],vibrate:[`vibrazione`,`urto`,`tamper`],video:[],"video-off":[`video`,`spento`],"volume-2":[`volume`,`audio`,`altoparlante`,`suono`],"volume-x":[`muto`,`silenziato`,`volume`,`spento`],warehouse:[`magazzino`,`capanno`,`deposito`,`cantina`,`warehouse`],"washing-machine":[`lavatrice`,`lavastoviglie`,`asciugatrice`],waves:[`onde`,`acqua`,`vibrazione`],"waves-ladder":[`piscina`,`vasca`,`pool`],wifi:[`rete`,`segnale`],"wifi-off":[`wifi`,`assente`,`offline`,`disconnesso`],wind:[`vento`,`aria`,`gas`,`monossido`,`co`],workflow:[`automazione`,`flusso`,`scenario`],wrench:[`officina`,`manutenzione`,`attrezzi`,`utenze`],zap:[`energia`,`corrente`,`consumo`,`watt`,`elettricita`]},Ov={gauge2:`gauge`},kv=new Set(wv);new Map([...Object.entries(Ev),...Object.entries(Ov)]);function Av(e){return typeof e==`string`&&kv.has(e)}var jv=hl(Av,`Not an icon of the catalog`),Mv=wv.map((e,t)=>{let[n,r]=Tv[t]??[[],[]],i=n.flatMap(e=>{let t=Cv[e];return t===void 0?[]:[t]});return{key:e,categories:i,primaryCategory:i[0]??Cv[0],tags:r,synonyms:Dv[e]??[]}});new Map(Mv.map(e=>[e.key,e]));var Nv=[`devices`,`home`,`security`,`buildings`,`connectivity`,`multimedia`,`nature`,`weather`,`transportation`,`animals`],Pv=new Set(Mv.map(e=>e.primaryCategory));[...Nv,...Cv.filter(e=>!Nv.includes(e))].filter(e=>Pv.has(e));var Fv=F({locationKey:k(),icon:jv}),Iv=F({locationKey:k(),description:k()}),Lv=F({zoneKey:k(),label:k(),icon:jv.nullable(),locationKeys:P(k())}),Rv=F({connected:j(),deviceCount:A(),error:k().optional(),motionSliceWriter:B(`orchestrator`).optional()});F({externalId:k(),name:k(),type:k(),metadata:R(k(),M()).optional()});var zv=F({stableId:k(),type:z(U),suggestedName:k(),prefilledConfig:R(k(),M()),sourceInfo:Y_.optional(),alreadyOnboarded:j().optional(),onboardedDeviceId:A().optional(),onboardedName:k().optional()}),Bv=F({id:A(),stableId:k(),addonId:k(),type:k(),name:k(),parentDeviceId:A().nullable(),online:j(),features:P(k()),config:R(k(),M()),sourceInfo:Y_.optional()}),Vv=F({status:z([`ok`,`error`]),labels:P(k()).optional(),error:k().optional()}),Hv=M(),Uv={name:`device-provider`,scope:`system`,mode:`collection`,methods:{start:V(N(),N(),{kind:`mutation`}),stop:V(N(),N(),{kind:`mutation`}),getStatus:V(N(),Rv),getDevices:V(N(),P(F({id:k(),name:k(),type:k()}))),reloadDevice:V(F({stableId:k()}),F({deviceId:A()}),{kind:`mutation`,timeoutMs:3*6e4}),supportsDiscovery:V(F({}),j()),discoverDevices:V(F({params:R(k(),M()).optional()}),P(zv),{kind:`mutation`,auth:`admin`}),getDiscoveryParamsSchema:V(F({}),Hv),getManualCreationType:V(F({}),F({deviceType:z(U).nullable()})),adoptDiscoveredDevice:V(F({candidate:zv}),Bv,{kind:`mutation`,auth:`admin`}),supportsManualCreation:V(F({}),j()),getChildCreationSchema:V(F({type:z(U)}),Hv),createDevice:V(F({type:z(U),config:R(k(),M())}),Bv,{kind:`mutation`,auth:`admin`}),testCreationField:V(F({type:z(U),key:k(),value:M(),formValues:R(k(),M()).optional()}),Vv,{kind:`mutation`,auth:`admin`})}},Wv=F({childKey:k(),section:k(),order:A().optional(),collapsed:j().optional()}),Gv=F({unit:k().min(1).optional(),precision:A().int().min(0).max(10).optional()}),Kv=F({icon:k().min(1).optional(),label:k().min(1).optional(),unit:k().min(1).optional(),precision:A().int().min(0).max(10).optional(),hidden:j().optional(),perCap:R(k(),Gv).optional()}),qv=F({unit:k().min(1).optional(),precision:A().int().min(0).max(10).optional(),icon:k().min(1).optional()}),Jv=F({id:A(),stableId:k(),addonId:k(),type:z(U),name:k(),location:k().nullable(),disabled:j(),parentDeviceId:A().nullable(),role:k().nullable().optional(),online:j(),probed:j().optional(),features:P(k()),isCamera:j(),config:R(k(),M()),secretConfigPaths:P(k()).optional(),metadata:R(k(),M()).nullable().optional(),sourceInfo:Y_.optional(),integrationId:k().optional(),linkDeviceId:A().nullable().optional(),primaryChildEntityId:k().nullable().optional(),childLayout:P(Wv).readonly().optional(),display:Kv.optional()}),Yv=F({key:k(),value:M(),description:k().optional()}),Xv=z([`manual`]),Zv=F({deviceId:A(),name:k(),location:k().nullable(),features:P(k()),producesTrackedEvents:j().optional()}),Qv=F({deviceIds:P(A().int().positive()),trackedDeviceIds:P(A().int().positive()).optional()}),$v={id:`linked-devices`,label:`Linked devices`,description:`Companion devices of this camera: their controls appear with it, and the ones you opt in produce tracked events on it.`,shape:`association`,hostDeviceTypes:[U.Camera],sourceCaps:`any`,cardinality:`many`,value:Qv},ey=F({deviceId:A(),mode:Xv,devices:P(Zv)}),ty=F({deviceId:A(),entries:P(F({capName:k(),kind:z([`native`,`wrapped`]),providerAddonId:k(),providerNodeId:k(),nativeAddonId:k()}))}),ny=L(`kind`,[F({kind:B(`value`),wrapperAddonId:k().nullable()}),F({kind:B(`missing`)}),F({kind:B(`failed`),error:k()})]),ry=F({id:A(),stableId:k(),type:k(),name:k(),location:k().nullable(),disabled:j(),parentDeviceId:A().nullable(),role:k().nullable().optional()}),iy=F({id:A(),stableId:k(),addonId:k(),type:k(),name:k(),userNamed:j().optional(),location:k().nullable(),disabled:j(),parentDeviceId:A().nullable(),metadata:R(k(),M()).nullable().optional(),sourceInfo:Y_.optional(),integrationId:k().optional(),linkDeviceId:A().nullable().optional(),primaryChildEntityId:k().nullable().optional(),childLayout:P(Wv).readonly().optional(),role:k().nullable().optional(),display:Kv.optional()}),ay=M().nullable(),oy=F({streamId:k(),width:A().optional(),height:A().optional(),codec:k().optional(),fps:A().optional(),bitrateKbps:A().optional()}),sy=F({addonId:k(),stableId:k(),id:A(),type:k(),name:k(),location:k().nullable().optional(),disabled:j().optional(),parentDeviceId:A().nullable(),role:k().nullable().optional(),features:P(k()).optional(),config:R(k(),M()),secretConfigPaths:P(k()).optional()}),cy=F({deviceId:A()}),ly=F({deviceId:A(),data:R(k(),M()),secretConfigPaths:P(k()).optional()}),uy=z([`off`,`on`,`not-offered`,`unreachable`]),dy=F({deviceId:A(),switchId:Sd,outcome:uy,detail:k().optional()}),fy=F({sourceId:A(),targetId:A(),switches:P(dy).readonly(),sourceStillLive:P(Sd).readonly(),swapped:j()}),py={name:`device-manager`,scope:`system`,mode:`singleton`,extensionSlots:[$v],methods:{allocateDeviceId:V(F({addonId:k(),stableId:k()}),F({id:A()}),{kind:`mutation`}),migrateDevice:V(F({sourceId:A(),targetId:A()}),fy,{kind:`mutation`,auth:`admin`,timeoutMs:12*6e4}),registerDevice:V(sy,N(),{kind:`mutation`}),removeDevice:V(cy,N(),{kind:`mutation`}),persistConfig:V(ly,N(),{kind:`mutation`,auth:`admin`}),loadConfig:V(F({deviceId:A()}),R(k(),M()),{auth:`admin`}),loadRuntimeState:V(F({deviceId:A()}),R(k(),M()),{auth:`admin`}),loadMeta:V(F({deviceId:A()}),iy.nullable()),setName:V(F({deviceId:A(),name:k()}),N(),{kind:`mutation`,auth:`admin`}),setLocation:V(F({deviceId:A(),location:k().nullable()}),N(),{kind:`mutation`,auth:`admin`}),setType:V(F({deviceId:A(),type:z(U)}),N(),{kind:`mutation`,auth:`admin`}),setIntegrationId:V(F({deviceId:A(),integrationId:k()}),N(),{kind:`mutation`,auth:`admin`}),setLinkDeviceId:V(F({deviceId:A(),linkDeviceId:A().nullable()}),N(),{kind:`mutation`,auth:`admin`}),setPrimaryChildEntityId:V(F({deviceId:A(),primaryChildEntityId:k().nullable()}),N(),{kind:`mutation`,auth:`admin`}),setChildLayout:V(F({deviceId:A(),childLayout:P(Wv).readonly()}),N(),{kind:`mutation`,auth:`admin`}),setDisplay:V(F({deviceId:A(),display:Kv.nullable()}),N(),{kind:`mutation`,auth:`admin`}),getRoleDisplayDefaults:V(F({}),F({defaults:R(k(),qv)}),{kind:`query`}),setRoleDisplayDefaults:V(F({defaults:R(k(),qv)}),N(),{kind:`mutation`,auth:`admin`}),getWireableFields:V(F({deviceId:A(),includeSynthesizable:j().optional()}),F({caps:P(F({cap:k(),fields:P(F({path:k(),kind:z([`string`,`number`,`boolean`,`enum`]),enumValues:P(k()).optional(),item:j().optional()})).readonly(),itemArray:F({path:k(),keyField:k()}).optional()})).readonly()}),{kind:`query`}),setRole:V(F({deviceId:A(),role:k().nullable()}),N(),{kind:`mutation`,auth:`admin`}),applyInitialMeta:V(F({deviceId:A(),name:k().optional(),location:k().nullable().optional(),type:z(U).optional(),integrationId:k().optional(),linkDeviceId:A().nullable().optional(),role:k().nullable().optional()}),N(),{kind:`mutation`,auth:`admin`}),setMetadata:V(F({deviceId:A(),patch:R(k(),M())}),N(),{kind:`mutation`,auth:`admin`}),listLocations:V(N(),P(k())),addLocation:V(F({name:k()}),N(),{kind:`mutation`,auth:`admin`}),removeLocation:V(F({name:k(),cascade:j().optional()}),N(),{kind:`mutation`,auth:`admin`}),renameLocation:V(F({from:k(),to:k()}),F({moved:A()}),{kind:`mutation`,auth:`admin`}),listLocationIcons:V(N(),P(Fv)),setLocationIcon:V(F({location:k(),icon:jv.nullable()}),N(),{kind:`mutation`,auth:`admin`}),listLocationDescriptions:V(N(),P(Iv)),setLocationDescription:V(F({location:k(),description:k().max(400).nullable()}),N(),{kind:`mutation`,auth:`admin`}),listSiteZones:V(N(),P(Lv)),setSiteZone:V(F({name:k(),icon:jv.nullable().optional()}),N(),{kind:`mutation`,auth:`admin`}),removeSiteZone:V(F({name:k()}),N(),{kind:`mutation`,auth:`admin`}),renameSiteZone:V(F({from:k(),to:k()}),N(),{kind:`mutation`,auth:`admin`}),setLocationZone:V(F({location:k(),zone:k().nullable()}),N(),{kind:`mutation`,auth:`admin`}),setDisabled:V(F({deviceId:A(),disabled:j()}),N(),{kind:`mutation`,auth:`admin`}),listPersistedByAddon:V(F({addonId:k()}),P(ry)),listAll:V(F({addonId:k().optional(),projection:z([`full`,`slim`]).optional(),isCamera:j().optional(),deviceIds:P(A()).optional()}),P(Jv)),getDevice:V(F({deviceId:A()}),Jv.nullable()),getChildren:V(F({parentDeviceId:A()}),P(Jv)),getChildrenBatch:V(F({parentDeviceIds:P(A()).max(256)}),R(k(),P(Jv))),getLinkedDevices:V(F({deviceId:A()}),F({mode:Xv,devices:P(Zv)})),getLinkedDevicesBatch:V(F({deviceIds:P(A())}),P(ey)),getStreamSources:V(F({deviceId:A()}),P(Ll)),getConfigSchema:V(F({deviceId:A()}),P(Yv)),getSettingsSchema:V(F({deviceId:A()}),ay),updateConfig:V(F({deviceId:A(),values:R(k(),M())}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),enable:V(F({deviceId:A()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),disable:V(F({deviceId:A()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),remove:V(F({deviceId:A()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),removeByIntegration:V(F({integrationId:k()}),F({removed:A()}),{kind:`mutation`,auth:`admin`}),getStreamProfileMap:V(F({deviceId:A()}),R(k(),k().nullable())),setStreamProfileMap:V(F({deviceId:A(),profileMap:R(k(),k().nullable())}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),probeStreams:V(F({deviceId:A()}),P(oy),{kind:`mutation`,auth:`admin`}),getBindings:V(F({deviceId:A()}),ty),getBindingsBatch:V(F({deviceIds:P(A())}),P(ty)),getAllBindings:V(F({}),P(ty)),listDeviceIdsByCaps:V(F({capNames:P(k().min(1)).min(1).max(16)}),P(A())),setWrapperActive:V(F({deviceId:A(),capName:k(),wrapperAddonId:k(),active:j()}),N(),{kind:`mutation`,auth:`admin`}),getWrapperActivation:V(F({deviceId:A(),capName:k().min(1)}),ny),listWrappersForCap:V(F({capName:k()}),P(k())),listBindableCapsForDeviceType:V(F({deviceType:k()}),P(F({capName:k(),wrappers:P(k())}))),getDeviceSettingsAggregate:V(F({deviceId:A()}),hm.nullable()),getDeviceLiveInfoAggregate:V(F({deviceId:A()}),hm.nullable()),getDeviceAggregate:V(F({deviceId:A()}),F({settings:hm.nullable(),live:hm.nullable()})),runDeviceAction:V(F({deviceId:A().int().nonnegative(),action:k().min(1),input:M()}),M(),{kind:`mutation`}),updateDeviceField:V(F({deviceId:A(),writerCapName:k(),writerAddonId:k(),key:k(),value:M()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),updateDeviceFieldsBatch:V(F({deviceId:A(),changes:P(F({writerCapName:k(),writerAddonId:k(),key:k(),value:M()}))}),F({success:B(!0),failures:P(F({writerCapName:k(),writerAddonId:k(),error:k()}))}),{kind:`mutation`,auth:`admin`}),discoverDevices:V(F({addonId:k()}),P(zv),{kind:`mutation`,auth:`admin`}),adoptDevice:V(F({addonId:k(),candidate:zv,integrationId:k().optional()}),Bv,{kind:`mutation`,auth:`admin`}),getCreationSchema:V(F({addonId:k(),type:z(U)}),M().nullable()),createDevice:V(F({addonId:k(),type:z(U),config:R(k(),M()),integrationId:k().optional()}),Bv,{kind:`mutation`,auth:`admin`}),testCreationField:V(F({addonId:k(),type:z(U),key:k(),value:M(),formValues:R(k(),M()).optional()}),Vv,{kind:`mutation`,auth:`admin`}),adoptionListCandidateFilters:V(F({addonId:k(),integrationId:k()}),F({filters:P(tv)}),{auth:`admin`}),adoptionListCandidates:V(rv.extend({addonId:k()}),iv,{auth:`admin`}),adoptionRefresh:V(F({addonId:k(),integrationId:k()}),ov,{kind:`mutation`,auth:`admin`}),adoptionAdopt:V(cv.extend({addonId:k()}),lv,{kind:`mutation`,auth:`admin`}),adoptionRelease:V(uv.extend({addonId:k()}),N(),{kind:`mutation`,auth:`admin`}),adoptionStartJob:V(cv.extend({addonId:k()}),F({jobId:k()}),{kind:`mutation`,auth:`admin`}),adoptionListJobs:V(F({addonId:k(),integrationId:k().optional()}),P(xd).readonly(),{auth:`admin`}),adoptionCancelJob:V(F({jobId:k()}),F({cancelled:j()}),{kind:`mutation`,auth:`admin`}),adoptionResync:V(dv,fv,{kind:`mutation`,auth:`admin`}),discoveryProviders:V(F({}),F({providers:P(F({addonId:k(),label:k()})).readonly()}),{auth:`admin`}),discoverAllProviders:V(F({}),F({groups:P(F({addonId:k(),label:k(),candidates:P(zv).readonly(),error:k().nullable()})).readonly()}),{kind:`mutation`,auth:`admin`}),discoverProvider:V(F({addonId:k(),params:R(k(),M()).optional()}),F({candidates:P(zv).readonly()}),{kind:`mutation`,auth:`admin`}),providerCreationType:V(F({addonId:k()}),F({deviceType:z(U).nullable()}),{auth:`admin`}),providerDiscoveryParamsSchema:V(F({addonId:k()}),M(),{auth:`admin`}),testField:V(F({deviceId:A(),key:k(),value:M()}),Vv,{kind:`mutation`,auth:`admin`}),getDeviceStatusAggregate:V(F({deviceId:A(),caps:P(k()).readonly().optional()}),R(k(),M().nullable())),getDeviceStatusAggregateBatch:V(F({deviceIds:P(A()).readonly(),caps:P(k()).readonly().optional()}),R(k(),R(k(),M().nullable())))}},my=z([`linked-devices`]);U.Camera;var hy=L(`slot`,[Qv.extend({slot:B(`linked-devices`)})]),gy=[U.Camera],_y=L(`state`,[F({state:B(`ok`)}),F({state:B(`unreachable`),reason:k()})]),vy=F({source:k(),label:k(),addonId:k().optional(),availability:_y}),yy=z([`ok`,`missing`,`foreign`,`unavailable`]),by=F({deviceId:A().int(),name:k().nullable(),health:yy,detail:k().optional()}),xy=F({state:z([`active`,`inactive`,`unknown`]),authority:k(),detail:k().optional()}),Sy=L(`state`,[F({state:B(`ok`),slotRef:k(),slot:my,authority:k(),activation:xy.nullable(),value:hy,sources:P(by),impliedSources:P(by).optional()}),F({state:B(`unreachable`),addonId:k(),reason:k()})]),Cy=F({candidates:P(F({deviceId:A().int(),name:k(),type:k(),location:k().nullable(),parentName:k().nullable(),suggested:j(),reason:k().nullable()}))}),wy=F({applied:B(!0),reload:z([`none`,`host`,`parent`])}),Ty=F({deviceId:A().int(),slotRef:k().min(1)}),Ey=Ty.extend({value:hy}),Dy={name:`device-extension`,scope:`device`,mode:`collection`,kind:`wrapper`,defaultActive:!0,deviceTypes:gy,deviceConfig:{ui:{kind:`widget`,widgetId:`host/extensions-panel`,tab:`general`,label:`Extensions`,order:72}},methods:{listSources:V(F({deviceId:A().int()}),P(vy)),listSlots:V(F({deviceId:A().int()}),P(Sy)),listCandidates:V(Ty,Cy),setSlot:V(Ey,wy,{kind:`mutation`,auth:`admin`})}},Oy=z([`replace`,`add`]),ky=L(`ok`,[F({ok:B(!0),changed:j()}),F({ok:B(!1),code:z([`owned-by-other`,`not-claimed`,`field-not-claimed`,`invalid-slice`,`unknown-device`,`row-unreadable`,`migration-in-flight`]),message:k()})]),Ay=F({deviceId:A(),capName:k(),owner:k().min(1),mode:Oy,fields:P(k().min(1)).min(1)}),jy=L(`state`,[F({state:B(`loaded`),claims:P(Ay)}),F({state:B(`not-loaded`),reason:k()})]),My={name:`device-state`,scope:`system`,mode:`singleton`,methods:{getSnapshot:V(F({deviceId:A()}),R(k(),R(k(),M()))),getCapSlice:V(F({deviceId:A(),capName:k()}),R(k(),M()).nullable()),getAllSnapshots:V(F({}),R(k(),R(k(),R(k(),M())))),setCapSlice:V(F({deviceId:A(),capName:k(),slice:R(k(),M())}),N(),{kind:`mutation`}),claimFields:V(F({deviceId:A(),capName:k(),owner:k().min(1),mode:Oy,fields:P(k().min(1)).min(1),values:R(k(),M())}),ky,{kind:`mutation`,auth:`admin`}),patchOwnedFields:V(F({deviceId:A(),capName:k(),owner:k().min(1),values:R(k(),M())}),ky,{kind:`mutation`,auth:`admin`}),releaseClaim:V(F({deviceId:A(),capName:k(),owner:k().min(1)}),ky,{kind:`mutation`,auth:`admin`}),listClaims:V(F({ownerPrefix:k().optional()}),jy,{auth:`admin`}),getNativeCapSlice:V(F({deviceId:A(),capName:k()}),R(k(),M()).nullable(),{auth:`admin`})},events:{onChanged:Yl(F({deviceId:A(),capName:k(),slice:R(k(),M())}))}},Ny=F({embedding:P(A()),inferenceMs:A()}),Py=z([`image`,`text`]),_ee=F({modelId:k(),tower:Py,nodeId:k(),crashes:A(),windowMs:A(),sinceMs:A(),lastReason:k()}),vee=F({modelId:k(),tower:Py,nodeId:k(),attempts:A(),sinceMs:A(),lastReason:k()}),yee=F({modelId:k(),embeddingDim:A(),ready:j(),nodeId:k().optional(),failedModels:P(_ee).optional(),failedRequirements:P(vee).optional()}),Fy=`embedding-model-failed`,Iy=`embedding-requirements-unavailable`,Ly=`embedding-requirements-failed`;z([Fy,Iy,Ly]),RegExp(`\\[(${Fy}|${Iy}|${Ly}) model=([^\\s\\]]+) tower=(image|text) node=([^\\s\\]]+)\\]`);var bee={name:`embedding-encoder`,scope:`system`,mode:`collection`,internal:!0,methods:{encode:V(F({crop:vl(Uint8Array),width:A(),height:A()}),Ny,{auth:`admin`}),encodeText:V(F({text:k(),modelId:k().min(1).optional()}),Ny,{auth:`admin`}),getInfo:V(N(),yee,{auth:`admin`}),resetFailedModels:V(F({modelId:k().min(1).optional()}),F({cleared:P(k()),nodeId:k()}),{kind:`mutation`,auth:`admin`})}},xee=F({reason:k(),count:A().int().nonnegative()}),Ry=F({family:k(),deviceId:A().int().positive(),variant:k().optional(),sinceMs:A(),atMs:A(),attempts:A().int().nonnegative(),succeeded:A().int().nonnegative(),reasons:P(xee).readonly()}),See={name:`failure-contribution`,scope:`system`,mode:`collection`,internal:!0,methods:{list:V(N(),P(Ry).readonly())},mount:{kind:`skip`}},Cee=F({name:k(),path:k()}),wee=F({path:k(),entries:P(Cee).readonly(),freeBytes:A(),totalBytes:A()}),Tee={name:`filesystem-browse`,scope:`system`,mode:`singleton`,internal:!0,methods:{listAllowedRoots:V(N(),P(k()).readonly(),{auth:`admin`}),browse:V(F({path:k()}),wee,{auth:`admin`}),createDir:V(F({path:k()}),F({path:k()}),{kind:`mutation`,auth:`admin`})}},Eee=[`appConnections`,`notificationTaps`,`internal`,`publicEndpoint`],zy=6e5,Dee=60*6e4,Oee=F({inputTokens:A(),outputTokens:A()}),kee=z([`timeout`,`rate-limited`,`auth`,`refusal`,`bad-request`,`unavailable`,`no-profile`,`budget-exceeded`,`adapter-error`]),Aee=F({ok:B(!0),text:k(),model:k(),usage:Oee,truncated:j(),latencyMs:A()}),jee=z([`guardrail`,`model`]),By=L(`ok`,[Aee,F({ok:B(!1),code:kee,message:k(),retryAfterMs:A().optional(),refusalSource:jee.optional()})]),Vy=F({bytes:vl(Uint8Array),mimeType:k()}),Hy=F({enabled:j().default(!1),maxAttempts:A().int().min(1).max(5).default(1)}),Uy=F({addonId:k().optional(),profileId:k().optional(),consumer:k(),system:k().optional(),prompt:k(),jsonSchema:R(k(),M()).optional(),maxTokens:A().int().positive().optional(),temperature:A().optional(),topP:A().min(0).max(1).optional(),topK:A().int().positive().optional(),timeoutMs:A().int().positive().optional(),retry:Hy.optional(),requestId:k().optional()}),Mee=F({url:k(),filename:k(),sizeBytes:A(),sha256:k().optional()}),Wy=L(`kind`,[F({kind:B(`catalog`),catalogId:k()}),F({kind:B(`url`),url:k(),sha256:k().optional(),label:k().optional(),sizeBytes:A().optional(),extraFiles:P(Mee).optional()}),F({kind:B(`path`),path:k()})]),Gy=F({nodeId:k(),engine:z([`llama-cpp`]),model:Wy,contextSize:A().int().default(4096),gpuLayers:A().int().default(0),threads:A().int().optional(),parallel:A().int().default(1),batchSize:A().int().positive().optional(),ubatchSize:A().int().positive().optional(),flashAttention:j().default(!1),mlock:j().default(!1),noMmap:j().default(!1),cacheTypeK:z([`f32`,`f16`,`q8_0`,`q5_1`,`q5_0`,`q4_1`,`q4_0`]).optional(),cacheTypeV:z([`f32`,`f16`,`q8_0`,`q5_1`,`q5_0`,`q4_1`,`q4_0`]).optional(),extraArgs:P(k()).default([]),autoStart:j().default(!1),idleStopMinutes:A().int().default(30)}),Nee=F({phase:z([`downloading`,`verifying`]),file:k(),fileIndex:A().int(),fileCount:A().int(),downloadedBytes:A(),totalBytes:A().optional()}),Ky=F({nodeId:k(),state:z([`stopped`,`downloading`,`starting`,`ready`,`crashed`,`failed`]),pid:A().optional(),port:A().optional(),modelPath:k().optional(),modelId:k().optional(),downloadProgress:A().min(0).max(1).optional(),download:Nee.optional(),lastError:k().optional(),crashesInWindow:A(),memoryBytes:A().optional(),vramBytes:A().optional()}),qy=F({file:k(),sizeBytes:A(),catalogId:k().optional(),installedAt:A().optional(),path:k().optional()}),Jy=F({nodeId:k(),modelsBytes:A(),freeBytes:A().optional()}),Pee=Uy.extend({images:P(Vy).optional(),runtime:Gy,timeoutMs:A().int().positive().optional()}),Fee=z([`deviceNotEligible`,`appleIntelligenceNotEnabled`,`modelNotReady`,`osTooOld`,`helperMissing`,`helperCrashed`]),Yy=L(`state`,[F({state:B(`available`),osVersion:k(),contextSize:A().int().positive(),languages:P(k()),imageInput:j()}),F({state:B(`unavailable`),reason:Fee,osVersion:k().nullable(),detail:k()}),F({state:B(`unsupported-platform`),platform:k()}),F({state:B(`unknown`),error:k()})]),Iee=Uy.extend({images:P(Vy).optional(),timeoutMs:A().int().positive().optional()}),Lee=F({requestId:k()}),Ree={name:`llm-runtime`,scope:`system`,mode:`singleton`,internal:!0,methods:{complete:V(Pee,By,{kind:`mutation`,auth:`admin`,timeoutMs:zy}),ensureStarted:V(F({runtime:Gy}),Ky,{kind:`mutation`,auth:`admin`,timeoutMs:zy}),stop:V(F({}),N(),{kind:`mutation`,auth:`admin`}),status:V(F({}),Ky,{auth:`admin`}),installModel:V(F({model:Wy}),N(),{kind:`mutation`,auth:`admin`,timeoutMs:Dee}),deleteModel:V(F({file:k()}),N(),{kind:`mutation`,auth:`admin`}),listLocalModels:V(F({}),P(qy),{auth:`admin`}),getDiskUsage:V(F({}),Jy,{auth:`admin`}),cancel:V(Lee,N(),{kind:`mutation`,auth:`admin`}),appleAvailability:V(F({}),Yy,{auth:`admin`}),completeApple:V(Iee,By,{kind:`mutation`,auth:`admin`,timeoutMs:zy})}},Xy=z([`openai-compatible`,`openai`,`anthropic`,`google`,`managed-local`,`apple-foundation`]),Zy=F({id:k(),name:k(),kind:Xy,addonId:k(),enabled:j(),model:k(),baseUrl:k().optional(),apiKey:k().optional(),supportsVision:j(),temperature:A().min(0).max(2).optional(),topP:A().min(0).max(1).optional(),topK:A().int().positive().optional(),maxTokens:A().int().positive().optional(),contextLength:A().int().positive().optional(),systemPrompt:k().optional(),timeoutMs:A().int().positive().default(6e4),connectTimeoutMs:A().int().positive().default(1e4),firstTokenTimeoutMs:A().int().positive().default(12e4),idleTimeoutMs:A().int().positive().default(6e4),retry:Hy.default({enabled:!1,maxAttempts:1}),toolsEnabled:j().default(!1),extraHeaders:R(k(),k()).optional(),runtime:Gy.optional(),appleFoundation:F({nodeId:k()}).optional()}),zee=M(),Qy=F({kind:Xy,label:k(),icon:k(),addonId:k(),configSchema:zee}),$y=I([F({consumer:k()}),F({purpose:z([`text`,`vision`])})]),eb=F({selector:$y,profileId:k()}),tb=F({day:k(),consumer:k(),profileId:k(),calls:A(),okCalls:A(),errorCalls:A(),inputTokens:A(),outputTokens:A(),avgLatencyMs:A()}),nb=F({id:k(),label:k(),family:k(),purpose:z([`text`,`vision`]),url:k(),sha256:k(),sizeBytes:A(),quantization:k(),minRamBytes:A(),contextSizeDefault:A().int(),mmprojUrl:k().optional()}),rb=L(`ok`,[F({ok:B(!0),model:Wy,label:k(),repo:k(),quantization:k(),purpose:z([`text`,`vision`]),totalBytes:A(),extraFilenames:P(k())}),F({ok:B(!1),code:k(),message:k(),candidates:P(k()).optional(),requiredBytes:A().optional()})]),ib=F({nodeId:k(),reachable:j(),status:Ky.optional(),disk:Jy.optional(),error:k().optional(),apple:Yy.optional()}),ab=Uy.extend({images:P(Vy).min(1)}),ob=F({addonId:k(),profileId:k()}),sb={name:`llm`,scope:`system`,mode:`collection`,internal:!1,providerKind:`ai`,nodeIdMode:`data`,methods:{generate:V(Uy,By,{kind:`mutation`,timeoutMs:zy}),generateVision:V(ab,By,{kind:`mutation`,timeoutMs:zy}),cancel:V(F({addonId:k().optional(),requestId:k()}),N(),{kind:`mutation`}),listProfileKinds:V(F({}),P(Qy)),listProfiles:V(F({}),P(Zy)),upsertProfile:V(F({profile:Zy}),Zy,{kind:`mutation`,auth:`admin`}),deleteProfile:V(ob,N(),{kind:`mutation`,auth:`admin`}),testProfile:V(ob,By,{kind:`mutation`,auth:`admin`,timeoutMs:zy}),listModels:V(ob,P(k())),getDefaults:V(F({}),P(eb)),setDefault:V(F({selector:$y,profileId:k().nullable()}),N(),{kind:`mutation`,auth:`admin`}),getUsage:V(F({since:A().optional(),until:A().optional(),consumer:k().optional(),profileId:k().optional()}),P(tb)),listModelCatalog:V(F({}),P(nb)),listRuntimeNodes:V(F({}),P(ib)),listNodeModels:V(F({nodeId:k()}),P(qy)),resolveModelRef:V(F({ref:k(),maxBytes:A().positive().optional()}),rb,{kind:`mutation`,auth:`admin`}),installModel:V(F({nodeId:k(),model:Wy}),N(),{kind:`mutation`,auth:`admin`}),deleteModel:V(F({nodeId:k(),file:k()}),N(),{kind:`mutation`,auth:`admin`}),getRuntimeStatus:V(ob,Ky),startRuntime:V(ob,Ky,{kind:`mutation`,auth:`admin`}),stopRuntime:V(ob,N(),{kind:`mutation`,auth:`admin`})}},cb=F({role:z([`decode`,`transcode`,`recording`,`streaming`,`detection`]),deviceId:A().int().positive().nullable(),attribution:z([`measured`,`accounted`,`unattributable`]),unit:k(),pid:A().int().positive().optional(),startedAtMs:A().optional(),cpuSeconds:A().optional(),rssBytes:A().optional()}),lb={name:`load-contribution`,scope:`system`,mode:`collection`,internal:!0,methods:{list:V(N(),P(cb).readonly())},mount:{kind:`skip`}},ub=F({armed:A().int().min(0),unknown:P(k()).readonly()}),db={name:`log-channels`,scope:`system`,mode:`collection`,internal:!0,methods:{list:V(N(),P(yp).readonly()),apply:V(F({windows:P(bp).readonly()}),ub,{kind:`mutation`})},mount:{kind:`skip`}},fb=z([`debug`,`info`,`warn`,`error`]),pb=F({timestamp:jc(),level:fb,scope:P(k()),message:k(),meta:R(k(),M()).optional(),tags:R(k(),k()).optional()}),mb={name:`log-destination`,scope:`system`,mode:`collection`,internal:!0,methods:{write:V(pb,N(),{kind:`mutation`}),query:V(F({scope:P(k()).optional(),level:fb.optional(),since:jc().optional(),until:jc().optional(),limit:A().optional(),tags:R(k(),k()).optional()}),P(pb).readonly())},mount:{kind:`skip`}},hb=z([`primary`,`second-factor`]),gb=L(`kind`,[F({kind:B(`redirect`),id:k(),label:k(),icon:k().optional(),startUrl:k(),stage:hb,linkable:j().optional(),app:Bp.nullable().optional()}),F({kind:B(`widget`),id:k(),addonId:k(),bundle:k(),remote:xm,stage:hb,app:Bp.nullable().optional()}),F({kind:B(`passkey`),id:k(),label:k(),stage:hb,rpId:k(),origin:k().nullable(),app:Bp.nullable().optional()})]),_b={name:`login-method`,scope:`system`,mode:`collection`,internal:!0,methods:{getLoginMethods:V(N(),P(gb).readonly())},mount:{kind:`skip`}},vb=F({total:A(),user:A(),system:A(),irq:A(),nice:A(),loadAvg:Bc([A(),A(),A()]),cores:A()}),yb=F({percent:A(),totalBytes:A(),usedBytes:A(),availableBytes:A(),swapUsedBytes:A(),swapTotalBytes:A()}),bb=F({readBytes:A(),writeBytes:A(),readOps:A(),writeOps:A(),timestampMs:A()}),xb=F({rxBytes:A(),txBytes:A(),rxPackets:A(),txPackets:A(),rxErrors:A(),txErrors:A(),timestampMs:A()}),Sb=F({utilization:A(),model:k(),memoryUsedBytes:A(),memoryTotalBytes:A(),temperature:A().nullable()}),Cb=F({openFds:A(),threadCount:A(),activeHandles:A(),activeRequests:A()}),wb=F({avg10:A(),avg60:A(),avg300:A()}),Tb=F({some:wb,full:wb.nullable()}),Eb=F({cpu:vb,memory:yb,gpu:Sb.nullable(),network:xb,disk:bb,pressure:F({cpu:Tb.nullable(),memory:Tb.nullable(),io:Tb.nullable()}),process:Cb,cpuTemperature:A().nullable(),timestampMs:A()}),Db=F({path:k(),totalBytes:A(),usedBytes:A(),availableBytes:A(),percent:A()}),Ob=F({pid:A(),cpu:A(),memory:A(),privateBytes:A().optional(),sharedBytes:A().optional()}),kb=F({addonId:k(),nodeId:k(),role:z([`hub`,`worker`]),pid:A(),state:z([`starting`,`running`,`stopping`,`stopped`,`crashed`]),uptimeSec:A()}),Ab=F({pid:A(),ppid:A(),pgid:A(),classification:z([`root`,`managed`,`system`]),addonId:k().nullable(),nodeId:k().nullable(),command:k(),cpuPercent:A(),memoryRssBytes:A(),cpuMainPercent:A().nullable(),cpuGcPercent:A().nullable(),threadCount:A().nullable(),uptimeSec:A()}),jb=F({source:z([`cgroup-v2`,`cgroup-v1`]),currentBytes:A(),limitBytes:A().nullable(),anonBytes:A().nullable(),fileBytes:A().nullable(),shmemBytes:A().nullable(),slabBytes:A().nullable(),gpuShmemBytes:A().nullable()}).extend({atMs:A()}),Mb=F({atMs:A(),samples:A().int(),cpuMainPercent:A().nullable(),cpuMainPercentMin:A().nullable(),cpuGcPercent:A().nullable(),cpuGcPercentMin:A().nullable(),cpuLifetimePercent:A(),cpuLifetimePercentMin:A(),memoryRssBytes:A(),memoryRssBytesMin:A(),processCount:A().int(),processCountMin:A().int()}),Nb=F({key:k(),kind:z([`addon`,`root`,`unattributed`]),points:P(Mb).readonly()}),Pb=F({nodeId:k(),series:P(Nb).readonly(),containerMemory:P(jb).readonly(),bucketMs:A(),retainedSamples:A(),oldestAtMs:A().nullable(),cadenceMs:A(),durable:j()}),Fb=F({forNodeId:k(),sinceMs:A().optional(),maxPoints:A().int().positive().optional()}),Ib=F({cpuPercent:A(),memoryPercent:A(),memoryUsedMB:A(),memoryTotalMB:A(),diskPercent:A().optional(),temperature:A().optional(),gpuPercent:A().optional(),gpuMemoryPercent:A().optional()}),Lb={name:`metrics-provider`,scope:`system`,mode:`singleton`,methods:{collectSnapshot:V(N(),Eb),getCached:V(N(),Eb.nullable()),getCurrent:V(N(),Ib),getDiskSpace:V(F({dirPath:k()}),Db),getGpuInfo:V(N(),Sb.nullable()),getCpuTemperature:V(N(),A().nullable()),getProcessStats:V(F({pids:P(A())}),P(Ob)),listAddonInstances:V(N(),P(kb).readonly()),getAddonStats:V(F({addonId:k()}),Ob.nullable()),listNodeProcesses:V(N(),P(Ab).readonly()),getLoadSeries:V(Fb,Pb)}},Rb={name:`model-convert`,scope:`system`,mode:`singleton`,internal:!0,methods:{convert:V(F({sourceUrl:k(),metadata:Rp,targets:P(Lp).min(1).readonly(),calibrationRef:k().optional(),sessionId:k().optional()}),zp,{kind:`mutation`,auth:`admin`,timeoutMs:6e5})}},zb={name:`model-distributor`,scope:`system`,mode:`singleton`,internal:!0,methods:{distributeModel:V(F({targetNodeId:k(),modelId:k(),format:z(Gl),entry:Ip}),F({ok:j(),sha256:k(),bytes:A(),path:k()}),{kind:`mutation`,auth:`admin`})}},Bb=F({bbox:Nm,pixelCount:A(),intensity:A()}),Vb=F({detected:j(),regionCount:A(),regions:P(Bb).readonly(),rawRegions:P(Bb).readonly(),frameWidth:A(),frameHeight:A(),analysisMs:A()}),Hb={name:`motion-detection`,scope:`device`,mode:`singleton`,kind:`wrapper`,defaultActive:!0,deviceTypes:[U.Camera],exposesDeviceSettings:!0,methods:{analyze:V(F({deviceId:A(),frame:Mm.optional(),frameHandle:Rl.optional()}),Vb,{kind:`mutation`}),removeCamera:V(F({deviceId:A()}),N(),{kind:`mutation`}),reset:V(N(),N(),{kind:`mutation`})},events:{onMotion:{data:F({deviceId:A(),detected:j(),regionCount:A()})}}},Ub=z([`external`,`embedded`]),Wb=z([`connected`,`disconnected`,`auth-failed`,`unreachable`,`tls-error`]),Gb=F({id:k(),name:k(),url:k(),kind:Ub,status:Wb,latencyMs:A().nullable(),error:k().optional(),connectedClients:A().int().nonnegative().optional(),lastCheckedAt:A().optional()}),Kb=F({url:k(),username:k().optional(),password:k().optional(),clientIdPrefix:k().optional()}),qb=F({name:k().min(1),url:k().regex(/^(mqtt|mqtts|ws|wss):\/\//,`URL must start with mqtt(s):// or ws(s)://`),username:k().optional(),password:k().optional(),clientIdPrefix:k().optional()}),Jb=F({id:k()}),Yb=F({id:k()}),Xb=L(`ok`,[F({ok:B(!0),latencyMs:A()}),F({ok:B(!1),error:k()})]),Zb=F({port:A().int().min(1).max(65535).default(1883),allowAnonymous:j().default(!1),username:k().optional(),password:k().optional()}),Qb=F({id:k(),url:k()}),$b=F({brokerCount:A(),embeddedRunning:j()}),ex={name:`mqtt-broker`,scope:`system`,mode:`collection`,providerKind:`broker`,status:{schema:$b,kind:`poll`},methods:{listBrokers:V(N(),P(Gb)),getBrokerConfig:V(Yb,Kb,{auth:`admin`}),addBroker:V(qb,Jb,{kind:`mutation`,auth:`admin`}),removeBroker:V(Yb,N(),{kind:`mutation`,auth:`admin`}),testConnection:V(Yb,Xb,{kind:`mutation`,auth:`admin`}),startEmbeddedBroker:V(Zb,Qb,{kind:`mutation`,auth:`admin`}),stopEmbeddedBroker:V(Yb,N(),{kind:`mutation`,auth:`admin`}),getStatus:V(N(),$b)}},tx=F({url:k(),hostname:k(),port:A(),protocol:z([`http`,`https`]),stable:j().optional()});F({url:k(),stable:j().optional(),updated:j().optional()});var nx=F({connected:j(),endpoint:tx.nullable(),error:k().optional()}),rx=tx.extend({id:k(),label:k(),mode:k().optional(),sourcePort:A().optional()}),ix={name:`network-access`,scope:`system`,mode:`collection`,providerKind:`ingress`,methods:{start:V(N(),tx,{kind:`mutation`}),stop:V(N(),N(),{kind:`mutation`}),getEndpoint:V(N(),tx.nullable()),getStatus:V(N(),nx),listEndpoints:V(N(),P(rx).readonly())}},ax=z([`image`,`video`,`gif`,`audio`,`icon`]),ox=F({mediaType:ax,url:k().optional(),bytes:vl(Uint8Array).optional(),mime:k().optional(),name:k().optional()}).refine(e=>e.url!==void 0||e.bytes!==void 0,{message:"Attachment requires either `url` or `bytes`"}),sx=z([`text`,`markdown`,`html`]),cx=z([`acknowledge`,`dismiss`,`silence`,`snooze`,`view`,`play`,`open`,`close`,`lock`,`unlock`,`arm`,`arm-home`,`arm-away`,`arm-night`,`disarm`,`light`,`alert`,`camera`]),lx=F({id:k(),label:k(),url:k().optional(),icon:cx.optional(),destructive:j().optional(),mode:z([`navigate`,`background`]).optional()}),ux=F({body:k(),title:k().optional(),format:sx.default(`text`),priority:A().int().min(1).max(5).default(3),level:k().optional(),attachments:P(ox).optional(),clickUrl:k().optional(),actions:P(lx).optional(),sound:k().optional(),ttl:A().optional(),tag:k().optional(),deviceId:A().optional(),eventId:k().optional(),metadata:R(k(),M()).optional()}),dx=F({id:k(),label:k(),ordinal:A().int().min(1).max(5).nullable(),flags:F({critical:j().optional(),silent:j().optional(),noPush:j().optional()}).optional(),requires:P(k()).optional(),description:k().optional()}),fx=F({attachments:F({mediaTypes:P(ax),mode:z([`url`,`bytes`,`both`]),max:A().int().nonnegative(),maxBytes:A().int().positive().optional()}),actions:A().int().nonnegative(),actionIcons:j().optional(),levels:P(dx),format:P(sx),clickUrl:j(),sound:j(),ttl:j(),bodyMaxLen:A().int().positive()}),px=M(),mx=F({kind:k(),label:k(),icon:k(),addonId:k(),iconUrl:k().optional(),iconMediaType:k().optional(),configSchema:px,destinationKeys:P(k()).optional(),supportsDiscovery:j(),caps:fx}),hx=F({id:k(),name:k(),kind:k(),addonId:k(),enabled:j(),config:R(k(),M())}),gx=F({kind:k(),suggestedName:k(),config:R(k(),M())}),_x=F({level:k(),format:sx,attachmentsSent:A().int().nonnegative(),actionsSent:A().int().nonnegative(),truncated:j(),dropped:P(k())}),vx=F({success:j(),error:k().optional(),renderedAs:_x.optional()}),yx=vx,bx=F({ok:j(),resolvedUrl:k(),httpStatus:A().int().optional(),stateInstance:k().optional(),error:k().optional()}),xx={name:`notification-output`,scope:`system`,mode:`collection`,methods:{listTargetKinds:V(F({}),P(mx)),listTargets:V(F({}),P(hx),{auth:`admin`}),getTarget:V(F({targetId:k()}),hx,{auth:`admin`}),discoverTargets:V(F({kind:k(),config:R(k(),M()).optional(),targetId:k().optional()}),P(gx),{auth:`admin`}),probeTargetConfig:V(F({kind:k(),config:R(k(),M()),targetId:k().optional()}),bx,{kind:`mutation`,auth:`admin`}),send:V(F({targetId:k(),notification:ux}),vx,{kind:`mutation`,auth:`admin`}),testTarget:V(F({targetId:k(),sample:ux.optional()}),yx,{kind:`mutation`,auth:`admin`}),upsertTarget:V(F({target:hx,cloneSecretsFrom:k().optional()}),hx,{kind:`mutation`,auth:`admin`}),deleteTarget:V(F({targetId:k()}),N(),{kind:`mutation`,auth:`admin`}),setTargetEnabled:V(F({targetId:k(),enabled:j()}),N(),{kind:`mutation`,auth:`admin`})}};new Set([{id:`person`,name:`Person`},{id:`vehicle`,name:`Vehicle`},{id:`animal`,name:`Animal`},{id:`package`,name:`Package`}].map(e=>e.id));var Sx={mapping:{person:`person`,bicycle:`vehicle`,car:`vehicle`,motorcycle:`vehicle`,airplane:`vehicle`,bus:`vehicle`,train:`vehicle`,truck:`vehicle`,boat:`vehicle`,bird:`animal`,cat:`animal`,dog:`animal`,horse:`animal`,sheep:`animal`,cow:`animal`,elephant:`animal`,bear:`animal`,zebra:`animal`,giraffe:`animal`,suitcase:`package`,backpack:`package`,handbag:`package`},preserveOriginal:!1},Cx=[{id:`speech`,name:`Speech`},{id:`scream`,name:`Scream / Shout`},{id:`crying`,name:`Crying / Baby`},{id:`laughter`,name:`Laughter`},{id:`music`,name:`Music`},{id:`dog`,name:`Dog`},{id:`cat`,name:`Cat`},{id:`bird`,name:`Bird`},{id:`animal`,name:`Animal (other)`},{id:`alarm`,name:`Alarm / Siren`},{id:`doorbell`,name:`Doorbell / Knock`},{id:`glass_breaking`,name:`Glass Breaking`},{id:`gunshot`,name:`Gunshot / Explosion`},{id:`vehicle`,name:`Vehicle`},{id:`siren`,name:`Emergency Siren`},{id:`fire`,name:`Fire / Smoke`},{id:`water`,name:`Water`},{id:`wind`,name:`Wind / Weather`},{id:`door`,name:`Door`},{id:`footsteps`,name:`Footsteps`},{id:`crowd`,name:`Crowd / Chatter`},{id:`telephone`,name:`Telephone`},{id:`engine`,name:`Engine / Motor`},{id:`tools`,name:`Tools / Construction`},{id:`silence`,name:`Silence`}],wx={mapping:{Speech:`speech`,"Child speech, kid speaking":`speech`,Conversation:`speech`,"Narration, monologue":`speech`,Babbling:`speech`,Whispering:`speech`,"Speech synthesizer":`speech`,Humming:`speech`,Rapping:`speech`,Singing:`speech`,Choir:`speech`,"Child singing":`speech`,Shout:`scream`,Bellow:`scream`,Yell:`scream`,Screaming:`scream`,"Children shouting":`scream`,Whoop:`scream`,"Crying, sobbing":`crying`,"Baby cry, infant cry":`crying`,Whimper:`crying`,"Wail, moan":`crying`,Groan:`crying`,Laughter:`laughter`,"Baby laughter":`laughter`,Giggle:`laughter`,Snicker:`laughter`,"Belly laugh":`laughter`,"Chuckle, chortle":`laughter`,Music:`music`,"Musical instrument":`music`,Guitar:`music`,Piano:`music`,Drum:`music`,"Drum kit":`music`,"Violin, fiddle":`music`,Flute:`music`,Saxophone:`music`,Trumpet:`music`,Synthesizer:`music`,"Pop music":`music`,"Rock music":`music`,"Hip hop music":`music`,"Classical music":`music`,Jazz:`music`,"Electronic music":`music`,"Background music":`music`,Dog:`dog`,Bark:`dog`,Yip:`dog`,Howl:`dog`,"Bow-wow":`dog`,Growling:`dog`,"Whimper (dog)":`dog`,Cat:`cat`,Purr:`cat`,Meow:`cat`,Hiss:`cat`,Caterwaul:`cat`,Bird:`bird`,"Bird vocalization, bird call, bird song":`bird`,"Chirp, tweet":`bird`,Squawk:`bird`,Crow:`bird`,Owl:`bird`,"Pigeon, dove":`bird`,Animal:`animal`,"Domestic animals, pets":`animal`,"Livestock, farm animals, working animals":`animal`,Horse:`animal`,"Cattle, bovinae":`animal`,Pig:`animal`,Sheep:`animal`,Goat:`animal`,Frog:`animal`,Insect:`animal`,Cricket:`animal`,Alarm:`alarm`,"Alarm clock":`alarm`,"Smoke detector, smoke alarm":`alarm`,"Fire alarm":`alarm`,Buzzer:`alarm`,"Civil defense siren":`alarm`,"Car alarm":`alarm`,Siren:`siren`,"Police car (siren)":`siren`,"Ambulance (siren)":`siren`,"Fire engine, fire truck (siren)":`siren`,"Emergency vehicle":`siren`,Foghorn:`siren`,Doorbell:`doorbell`,"Ding-dong":`doorbell`,Knock:`doorbell`,Tap:`doorbell`,Glass:`glass_breaking`,Shatter:`glass_breaking`,"Chink, clink":`glass_breaking`,"Gunshot, gunfire":`gunshot`,"Machine gun":`gunshot`,Explosion:`gunshot`,Fireworks:`gunshot`,Firecracker:`gunshot`,"Artillery fire":`gunshot`,"Cap gun":`gunshot`,Boom:`gunshot`,Vehicle:`vehicle`,Car:`vehicle`,Truck:`vehicle`,Bus:`vehicle`,Motorcycle:`vehicle`,"Car passing by":`vehicle`,"Vehicle horn, car horn, honking":`vehicle`,"Traffic noise, roadway noise":`vehicle`,Train:`vehicle`,Aircraft:`vehicle`,Helicopter:`vehicle`,Bicycle:`vehicle`,Skateboard:`vehicle`,Fire:`fire`,Crackle:`fire`,Water:`water`,Rain:`water`,Raindrop:`water`,"Rain on surface":`water`,Stream:`water`,Waterfall:`water`,Ocean:`water`,"Waves, surf":`water`,"Splash, splatter":`water`,Wind:`wind`,Thunderstorm:`wind`,Thunder:`wind`,"Wind noise (microphone)":`wind`,"Rustling leaves":`wind`,Door:`door`,"Sliding door":`door`,Slam:`door`,"Cupboard open or close":`door`,"Walk, footsteps":`footsteps`,Run:`footsteps`,Shuffle:`footsteps`,Crowd:`crowd`,Chatter:`crowd`,Cheering:`crowd`,Applause:`crowd`,"Children playing":`crowd`,"Hubbub, speech noise, speech babble":`crowd`,Telephone:`telephone`,"Telephone bell ringing":`telephone`,Ringtone:`telephone`,"Telephone dialing, DTMF":`telephone`,"Busy signal":`telephone`,Engine:`engine`,"Engine starting":`engine`,Idling:`engine`,"Accelerating, revving, vroom":`engine`,"Light engine (high frequency)":`engine`,"Medium engine (mid frequency)":`engine`,"Heavy engine (low frequency)":`engine`,"Lawn mower":`engine`,Chainsaw:`engine`,Hammer:`tools`,Jackhammer:`tools`,Sawing:`tools`,"Power tool":`tools`,Drill:`tools`,Sanding:`tools`,Silence:`silence`},preserveOriginal:!1},Tx={mapping:{speech:`speech`,child_speech:`speech`,conversation:`speech`,whispering:`speech`,singing:`speech`,humming:`speech`,shout:`scream`,yell:`scream`,screaming:`scream`,crying:`crying`,baby_crying:`crying`,sobbing:`crying`,laughter:`laughter`,baby_laughter:`laughter`,giggling:`laughter`,music:`music`,guitar:`music`,piano:`music`,drums:`music`,dog_bark:`dog`,dog_bow_wow:`dog`,dog_growling:`dog`,dog_howl:`dog`,cat_meow:`cat`,cat_purr:`cat`,cat_hiss:`cat`,bird:`bird`,bird_chirp:`bird`,bird_squawk:`bird`,animal:`animal`,horse:`animal`,cow_moo:`animal`,insect:`animal`,alarm:`alarm`,smoke_alarm:`alarm`,fire_alarm:`alarm`,car_alarm:`alarm`,siren:`siren`,police_siren:`siren`,ambulance_siren:`siren`,doorbell:`doorbell`,door_knock:`doorbell`,knocking:`doorbell`,glass_breaking:`glass_breaking`,glass_shatter:`glass_breaking`,gunshot:`gunshot`,explosion:`gunshot`,fireworks:`gunshot`,car:`vehicle`,truck:`vehicle`,motorcycle:`vehicle`,car_horn:`vehicle`,vehicle_horn:`vehicle`,traffic:`vehicle`,fire:`fire`,fire_crackle:`fire`,water:`water`,rain:`water`,ocean:`water`,splash:`water`,wind:`wind`,thunder:`wind`,thunderstorm:`wind`,door:`door`,door_slam:`door`,sliding_door:`door`,footsteps:`footsteps`,walking:`footsteps`,running:`footsteps`,crowd:`crowd`,chatter:`crowd`,cheering:`crowd`,applause:`crowd`,telephone_ring:`telephone`,ringtone:`telephone`,engine:`engine`,engine_starting:`engine`,lawn_mower:`engine`,chainsaw:`engine`,hammer:`tools`,jackhammer:`tools`,drill:`tools`,power_tool:`tools`,silence:`silence`},preserveOriginal:!1},Ex=new Map;for(let[e,t]of Object.entries(wx.mapping))Ex.set(e.toLowerCase(),t);for(let[e,t]of Object.entries(Tx.mapping))Ex.set(e.toLowerCase(),t);var Dx={motion:`#f59e0b`,audio:`#06b6d4`,person:`#22c55e`,vehicle:`#3b82f6`,animal:`#f97316`,package:`#a855f7`,sensor:`#8b5cf6`,control:`#10b981`,genericDetection:`#64748b`},Ox={car:`#f59e0b`,truck:`#d97706`,bus:`#b45309`,motorcycle:`#eab308`,bicycle:`#ca8a04`,airplane:`#60a5fa`,boat:`#2563eb`,train:`#1d4ed8`,bird:`#14b8a6`,dog:`#84cc16`,cat:`#f97316`,horse:`#a16207`,sheep:`#a3a3a3`,cow:`#78716c`,elephant:`#6b7280`,bear:`#7c2d12`,zebra:`#404040`,giraffe:`#d4a373`};function kx(e){return e.split(/[-_ ]/).filter(e=>e.length>0).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}var Ax=new Map;function jx(e,t,n,r,i){Ax.set(e,{kind:e,parentKind:null,level:`macro`,category:t,color:n,iconId:r,labelKey:`eventKind.${e}`,label:i})}function Mx(e,t,n,r,i,a){Ax.set(e,{kind:e,parentKind:t,level:`sub`,category:n,color:r,iconId:i,labelKey:`eventKind.${e}`,label:a})}jx(`motion`,`motion`,Dx.motion,`motion`,`Motion`),jx(`audio`,`audio`,Dx.audio,`audio`,`Audio`),jx(`person`,`detection`,Dx.person,`person`,`Person`),jx(`vehicle`,`detection`,Dx.vehicle,`vehicle`,`Vehicle`),jx(`animal`,`detection`,Dx.animal,`animal`,`Animal`),jx(`package`,`package`,Dx.package,`package`,`Package`),jx(`sensor`,`sensor`,Dx.sensor,`sensor`,`Sensor`),jx(`control`,`control`,Dx.control,`control`,`Control`);for(let[e,t]of Object.entries(Sx.mapping))t!==`vehicle`&&t!==`animal`||Ax.has(e)||Mx(e,t,`detection`,Ox[e]??Dx.genericDetection,e,kx(e));Mx(`package-delivered`,`package`,`package`,Dx.package,`package`,`Package delivered`),Mx(`package-picked-up`,`package`,`package`,Dx.package,`package`,`Package picked up`),Mx(`contact`,`sensor`,`sensor`,`#f59e0b`,`door`,`Contact`),Mx(`motion-sensor`,`sensor`,`sensor`,Dx.sensor,`pir`,`Motion sensor`),Mx(`smoke`,`sensor`,`sensor`,`#ef4444`,`smoke`,`Smoke`),Mx(`flood`,`sensor`,`sensor`,`#3b82f6`,`water`,`Water leak`),Mx(`gas`,`sensor`,`sensor`,`#ef4444`,`gas`,`Gas`),Mx(`carbon-monoxide`,`sensor`,`sensor`,`#dc2626`,`smoke`,`Carbon monoxide`),Mx(`vibration`,`sensor`,`sensor`,`#eab308`,`vibration`,`Vibration`),Mx(`tamper`,`sensor`,`sensor`,`#f97316`,`tamper`,`Tamper`),Mx(`presence`,`sensor`,`sensor`,`#22c55e`,`presence`,`Presence`),Mx(`enum-sensor`,`sensor`,`sensor`,Dx.sensor,`generic`,`Sensor state`),Mx(`device-event`,`sensor`,`sensor`,`#10b981`,`button`,`Device event`),Mx(`lock`,`control`,`control`,`#0ea5e9`,`lock`,`Lock`),Mx(`cover`,`control`,`control`,`#0ea5e9`,`door`,`Cover`),Mx(`switch`,`control`,`control`,Dx.control,`switch`,`Switch`),Mx(`siren`,`control`,`control`,`#dc2626`,`siren`,`Siren`),Mx(`button`,`control`,`control`,`#10b981`,`button`,`Button`),Mx(`doorbell`,`control`,`control`,`#a855f7`,`doorbell`,`Doorbell`);for(let e of Cx){let t=`audio-${e.id}`;Ax.has(t)||Mx(t,`audio`,`audio`,Dx.audio,t,e.name)}var Nx=Object.freeze(Object.fromEntries(Ax)),Px=F({kind:k(),label:k(),parentKind:k().nullable()}),Fx=F({videoClasses:P(Px),audioKinds:P(Px),labels:P(Px)});function Ix(e,t,n){return{kind:e,label:t,parentKind:n}}function Lx(){let e=Object.values(Nx);return{videoClasses:e.filter(e=>e.category===`detection`).map(e=>Ix(e.kind,e.label,e.parentKind)),audioKinds:e.filter(e=>e.category===`audio`&&e.level===`sub`).map(e=>Ix(e.kind,e.label,e.parentKind)),labels:e.filter(e=>e.category===`sensor`||e.category===`control`).map(e=>Ix(e.kind,e.label,e.parentKind))}}Object.freeze(Lx());var Rx=z([`disarmed`,`armed_home`,`armed_away`,`armed_night`,`armed_vacation`,`armed_custom_bypass`,`arming`,`disarming`,`pending`,`triggered`]),zx=z([`home`,`away`,`night`,`vacation`,`custom_bypass`]),Bx=F({state:Rx,targetMode:zx.nullable().optional(),availableModes:P(zx),requiresCode:j(),lastChangedAt:A()}),Vx={name:`alarm-panel`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.AlarmPanel],methods:{arm:V(F({deviceId:A().int().nonnegative(),mode:zx,code:k().min(1).optional()}),N(),{kind:`mutation`,auth:`protected`}),disarm:V(F({deviceId:A().int().nonnegative(),code:k().min(1).optional()}),N(),{kind:`mutation`,auth:`protected`}),trigger:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`})},status:{schema:Bx,kind:`push`},runtimeState:Bx,durability:`restored`,history:`none`,volatileStateFields:[`lastChangedAt`]},Hx=F({x:A(),y:A()}),Ux=F({kind:B(`rect`),x:A(),y:A(),width:A(),height:A()}),Wx=F({kind:B(`polygon`),points:P(Hx)}),Gx=F({kind:B(`grid`),gridWidth:A(),gridHeight:A(),cells:P(j())});L(`kind`,[Ux,Wx,Gx,F({kind:B(`line`),points:P(Hx)})]);var Kx=z([`rect`,`polygon`,`grid`,`line`]),qx=F({min:A(),max:A()}),Jx=F({width:A(),height:A()}),Yx=z([`immediate`,`track-end`,`device-event`,`package-event`,`system-event`]),Xx=z(`device-online.device-offline.device-disabled.device-enabled.device-battery-low.device-battery-normal.device-consumable-low.device-consumable-normal.device-tank-low.device-tank-full.device-tank-normal.stream-online.stream-offline.node-online.node-offline.node-restarting.node-updating.node-inference-unavailable.detection-blind.recording-stalled.recording-healthy.recording-degraded.storage-location-low.storage-location-critical.storage-location-ok.addon-crash-loop.addon-update-available.server-update-available.wrapper-update-available.alarm-triggered.alarm-armed.alarm-disarmed.alarm-arming.alarm-arm-refused.alarm-pending.alarm-rearmed.alarm-sensor-bypass.alarm-check-failed.addon-updated.server-updated.export-completed.backup-completed.camera-online.camera-offline.camera-disabled.camera-enabled`.split(`.`)),Zx=new Set([`camera-online`,`camera-offline`,`camera-disabled`,`camera-enabled`]);Xx.options.filter(e=>!Zx.has(e));var Qx=[`alarm-arm-refused`,`alarm-check-failed`,`alarm-arming`,`alarm-armed`,`alarm-pending`,`alarm-triggered`,`alarm-rearmed`,`alarm-sensor-bypass`,`alarm-disarmed`],$x=F({kinds:P(Xx).min(1),deviceIds:P(A().int()).min(1).optional(),deviceTypes:P(k().min(1)).min(1).optional(),excludeDeviceIds:P(A().int()).min(1).optional(),nodeIds:P(k().min(1)).min(1).optional(),packageNames:P(k().min(1)).min(1).optional(),consumableLowPercent:A().int().min(1).max(95).optional()}),eS=1440,tS=F({windows:P(F({days:P(A().int().min(0).max(6)).min(1),startMinute:A().int().min(0).max(1439),endMinute:A().int().min(0).max(1439)})).min(1),timezone:k().optional(),invert:j().optional()}),nS=z([`instant`,`summary`]),rS=z([`rule`,`section`]),iS=L(`mode`,[F({mode:B(`instant`)}),F({mode:B(`summary`),schedule:tS,split:rS.optional()})]),aS=F({values:P(k().min(1)),maxDistance:A().int().min(0).max(3).default(1)}),oS=F({zoneId:k().optional(),className:k().optional(),op:z([`became-occupied`,`became-free`,`>=`,`<=`]).default(`became-occupied`),count:A().int().min(0).default(1),sustainSeconds:A().int().min(0).max(3600).default(15)}),sS=F({labels:P(k().min(1)).min(1).optional(),dbThreshold:A().min(-96).max(0).optional(),hitPercent:A().int().min(1).max(100).default(60),samplingSeconds:A().int().min(1).max(300).default(10),confirmHits:A().int().min(1).max(20).optional(),confirmWindowSec:A().int().min(1).max(60).optional()}),cS=z([`enter`,`exit`,`any`]),lS=z([`raised`,`cleared`]),uS=F({ids:P(k().min(1)).min(1),match:z([`any`,`all`]).optional()}),dS=L(`kind`,[F({kind:B(`wait`),seconds:A().min(0).max(300)}),F({kind:B(`cap`),deviceId:A().int(),cap:k().min(1),method:k().min(1),args:R(k(),M()).optional()})]),fS=F({id:k().min(1),name:k().min(1).max(120),minDelaySec:A().int().min(0).max(86400).optional(),actions:P(dS).min(1)}),pS=F({name:k().min(1).max(120),minDelaySec:A().int().min(0).max(86400).optional(),actions:P(dS).min(1)}),mS=P(L(`kind`,[F({kind:B(`sequence`),sequenceId:k().min(1)}),F({kind:B(`do`),action:dS})])).max(4),hS=F({id:k().min(1).max(64),label:k().min(1).max(40),sequenceId:k().min(1),icon:cx.optional(),destructive:j().optional()}),gS=F({onActivation:mS.optional(),onDeactivation:mS.optional(),onTrigger:mS.optional(),onTriggerOff:mS.optional(),buttons:P(hS).max(8).optional()});F({name:k().min(1).max(120),enabled:j(),minDelaySec:A().int().min(0).max(86400).optional(),actions:P(dS).min(1)});var _S=F({deviceId:A().int(),states:P(k().min(1)).min(1)}),vS=F({sceneId:k().min(1),deviceId:A().int().optional(),requiredState:z([`matched`,`diverged`]),latched:j().optional()}),yS=F({deviceState:_S.optional(),scene:vS.optional(),devices:P(A()).optional(),devicesExclude:P(A()).min(1).optional(),classes:P(k().min(1)).optional(),classesExclude:P(k().min(1)).optional(),minConfidence:A().min(0).max(1).optional(),zones:uS.optional(),zonesExclude:P(k().min(1)).optional(),crossing:cS.optional(),labelEquals:P(k().min(1)).optional(),identities:P(k().min(1)).optional(),plates:aS.optional(),identitiesExclude:P(k().min(1)).optional(),minImportance:A().min(0).max(1).optional(),minDwellSeconds:A().min(0).optional(),source:z([`pipeline`,`onboard`,`sensor`,`audio`,`any`]).optional(),minLabelConfidence:A().min(0).max(1).optional(),eventTypeTokens:P(k().min(1)).optional(),sensorKinds:P(k().min(1)).optional(),sensorTransition:lS.optional(),packagePhase:z([`delivered`,`picked-up`,`both`]).optional(),systemEvent:$x.optional(),customZones:P(Wx).optional(),occupancy:oS.optional(),audio:sS.optional()}),bS=F({targetId:k().min(1),params:R(k(),M()).optional()}),xS=z([`cropped`,`full`,`boxed`]),SS=z([`mosaic`,`each`]),CS=F({attach:z([`best`,`best-matching`,`keyFrame`,`none`]).default(`best`),frame:xS.optional(),zoneCrop:j().optional(),gif:j().optional(),clip:j().optional(),clipPreRollSec:A().int().min(0).max(30).optional(),clipPostRollSec:A().int().min(0).max(30).optional(),clipSpeed:A().min(1).max(8).optional(),profile:Al.optional(),linkedCameras:SS.optional()}),wS=z([`shared`,`per-class`]),TS=F({cooldownSec:A().int().min(0).max(86400).default(60),scope:z([`rule`,`rule-device`]).default(`rule-device`),granularity:wS.optional()}),ES=1e3,DS=2e4,OS=8e3,kS=F({op:z([`>=`,`>`,`<=`,`<`,`==`]),count:A().int().min(0).max(1e3)}),AS=F({enabled:j().default(!1),profileId:k().optional(),prompt:k().max(1e3).optional(),expect:kS.optional(),timeoutMs:A().int().min(ES).max(DS).default(OS),onTimeout:z([`fire`,`suppress`]).default(`fire`),maxImagePx:A().int().min(64).max(2048).default(448)}),jS=F({name:k().min(1).max(200),enabled:j().default(!0),delivery:Yx,conditions:yS.default({}),schedule:tS.optional(),systemEventDelivery:iS.optional(),targets:P(bS),targetUsers:P(k()).optional(),media:CS.default({attach:`best`}),throttle:TS.default({cooldownSec:60,scope:`rule-device`}),template:F({title:k().max(500).optional(),body:k().max(2e3).optional()}).optional(),priority:A().int().min(1).max(5).default(3),ownerUserId:k().optional(),snoozeAllowGlobal:j().optional(),snoozeOptions:P(A().int().min(1).max(eS)).max(4).optional(),actions:gS.optional(),confirm:AS.optional(),groupingSec:A().int().min(5).max(60).optional()}),MS=jS.partial().extend({disabledTargetIds:P(k()).optional(),enabled:j().optional(),conditions:yS.optional(),media:CS.optional(),throttle:TS.optional(),priority:A().int().min(1).max(5).optional()}),NS=z([`template`,`schedule`,`targetUsers`,`snoozeOptions`,`snoozeAllowGlobal`,`actions`,`confirm`,`groupingSec`,`waitForEnhancement`,`groupIdleSec`]),PS=F({ruleId:k(),patch:MS,clear:P(NS).optional()}),FS=jS.extend({id:k(),createdBy:k(),createdAt:A(),updatedAt:A(),disabledTargetIds:P(k()).default([])}),IS=z([`device-state`,`streams`,`battery`,`consumables`,`tanks`,`detection-blind`,`nodes`,`addons`,`addon-updates`,`updates`]),LS=F({id:IS,status:z([`read`,`unavailable`]),items:A().int().nonnegative(),reason:k().optional()}),RS=F({section:IS.optional(),title:k(),text:k(),count:A().int().nonnegative()}),zS=F({empty:j(),count:A().int().nonnegative(),text:k(),sections:P(LS),dropped:R(k(),A().int().nonnegative()),excludedGroups:P(k()),split:rS.optional(),rows:P(RS).optional()}),BS=F({recordId:k(),recordKind:z([`object-event`,`track`,`device-event`,`package-event`,`system-event`]),deviceId:A(),timestamp:A(),wouldFire:j(),failedCondition:k().optional(),className:k().optional(),label:k().optional()}),VS=z([`detection`,`sensor`,`occupancy`,`sound`,`device-events`,`system`,`alarm`,`mixed`]),HS=z([`detection`,`sensor`,`occupancy`,`sound`,`system`]),US=z([`rule`,`timelapse`,`summary`]),WS=z([`title`,`body`,`previewText`,`captionText`]),GS=z([`subject`,`place`,`time`,`rule`,`occupancy`,`sound`,`sensor`,`system`,`digest`,`ai`]),KS=F({name:k().regex(/^\w+$/),label:k(),description:k().optional(),example:k(),group:GS,families:P(US).min(1),fields:P(WS).optional(),kinds:P(HS).optional(),deliveries:P(Yx).optional(),systemEventKinds:P(Xx).optional(),systemEventDeliveries:P(nS).optional(),dynamic:F({prefix:B(`count_`),from:B(`classes`)}).optional()}),qS=F({context:F({family:US,field:WS,kind:VS.optional(),delivery:Yx.optional(),systemEventKinds:P(Xx).optional(),systemEventDelivery:nS.optional()}),template:F({title:k().max(500).optional(),body:k().max(2e3).optional()})}),JS=F({title:k().nullable(),body:k().nullable(),unknown:P(k())}),YS=F({id:k(),group:z([`scope`,`class`,`zones`,`quality`,`label`,`schedule`,`device`,`package`,`occupancy`,`audio`,`system`]),label:k(),valueType:z([`deviceIdList`,`deviceIdExcludeList`,`stringList`,`number01`,`number`,`sourceSelect`,`zoneSelection`,`zoneIdList`,`schedule`,`plateMatcher`,`packagePhase`,`crossingSelect`,`sensorTransition`,`polygonDraw`,`occupancy`,`audio`,`deviceState`,`scene`,`systemEvent`]),operator:z([`in`,`notIn`,`anyOf`,`allOf`,`gte`,`fuzzyIn`,`withinSchedule`]),appliesTo:P(Yx),phase:k(),description:k().optional(),options:P(F({value:k(),label:k(),hint:k().optional()})).readonly().optional()}),XS=z([`pending`,`sent`,`dead`]),ZS=z([`object-event`,`track-end`,`device-event`,`package-event`,`system-event`]),QS=F({className:k(),label:k().optional(),confidence:A().optional(),zones:P(k()),timestamp:A(),systemEvent:F({kind:Xx,subject:k(),title:k(),body:k(),data:R(k(),M())}).optional()}),$S=F({id:k(),ruleId:k(),ruleName:k(),delivery:Yx,targetId:k(),deviceId:A(),recordKind:ZS,recordId:k(),trackId:k().optional(),status:XS,attempts:A().int(),createdAt:A(),updatedAt:A(),error:k().optional(),subject:QS,artifactIds:P(k().min(1)).optional()}),eC=F({ruleId:k().optional(),deviceId:A().optional(),status:XS.optional(),since:A().optional(),until:A().optional(),limit:A().int().min(1).max(500).default(100)}),tC=F({runs:P(F({ruleId:k(),lastAt:A(),status:XS,deviceId:A()})),horizonMs:A().nonnegative().nullable()}),nC=z([`rule`,`device`,`all`]),rC=F({scope:nC,ruleId:k().optional(),deviceId:A().int().optional(),classes:P(k().min(1)).min(1).optional(),durationMinutes:A().int().min(1).max(eS),global:j().optional(),summary:j().optional()}),iC=F({id:k(),userId:k(),scope:nC,ruleId:k().optional(),deviceId:A().int().optional(),classes:P(k().min(1)).min(1).optional(),startedAt:A(),expiresAt:A(),global:j(),summary:j(),digestSentAt:A().optional()});F({snoozeId:k(),targetId:k(),ruleId:k(),ruleName:k(),deviceId:A().int(),count:A().int(),firstAt:A(),lastAt:A()});var aC=3600,oC=A().int().min(0).max(600),sC=A().int().min(0).max(aC),cC=e=>new Set(e.map(e=>e.mode)).size===e.length,lC=z([`rearmAfter`,`disableAfter`,`doNothing`]),uC=P(F({mode:zx,exitDelaySec:oC.optional(),entryDelaySec:oC.optional(),triggeredDurationSec:sC.optional(),postTriggeredAction:lC.optional(),schedule:tS.optional(),notifyDuringEntryDelay:j().optional(),notifySensorRewatched:j().optional(),notifySensorIgnored:j().optional()})).max(8).refine(cC,{message:`modeDelays: at most one entry per arm mode`}),dC=P(F({mode:zx,exitDelaySec:oC.nullable().optional(),entryDelaySec:oC.nullable().optional(),triggeredDurationSec:sC.nullable().optional(),postTriggeredAction:lC.nullable().optional(),schedule:tS.nullable().optional(),notifyDuringEntryDelay:j().nullable().optional(),notifySensorRewatched:j().nullable().optional(),notifySensorIgnored:j().nullable().optional()})).max(8).refine(cC,{message:`modeDelays: at most one edit per arm mode`}),fC=F({mode:zx,deviceId:A().int().positive(),nonBlocking:j()}),pC=F({mode:zx,deviceId:A().int().positive(),blocking:j()}),mC=F({mode:zx,deviceId:A().int().positive(),secureOnArm:j()}),hC=F({mode:zx,deviceIds:P(A().int()).max(200)}),gC=hC,_C=hC,vC=hC,yC=P(gC).max(8).refine(cC,{message:`nonBlocking: at most one list per arm mode`}),bC=P(_C).max(8).refine(cC,{message:`blocking: at most one list per arm mode`}),xC=P(vC).max(8).refine(cC,{message:`secureOnArmOff: at most one list per arm mode`}),SC=F({exitDelaySec:oC,entryDelaySec:oC,triggeredDurationSec:sC,postTriggeredAction:lC.optional(),announceArm:j().optional(),announceTargets:P(k().min(1)).max(16),nonBlocking:yC.default([]),blocking:bC.default([]),secureOnArmOff:xC.default([]),modeDelays:uC.default([])}),CC=F({id:k().min(1).max(64),name:k().min(1).max(64),isDefault:j()}),wC=F({activeId:k().min(1),items:P(CC).min(1)}),TC=F({name:k().min(1).max(64),cloneFromId:k().min(1).max(64).optional()}),EC=F({id:k().min(1).max(64),name:k().min(1).max(64)}),DC=F({id:k().min(1).max(64)}),OC=SC.extend({nonBlocking:yC,blocking:bC,secureOnArmOff:xC,modeDelays:dC,nonBlockingEdit:fC,blockingEdit:pC,secureOnArmEdit:mC}).partial().refine(e=>e.nonBlocking===void 0||e.nonBlockingEdit===void 0,{message:`nonBlocking and nonBlockingEdit are exclusive — send the whole lists or one edit`}).refine(e=>e.blocking===void 0||e.blockingEdit===void 0,{message:`blocking and blockingEdit are exclusive — send the whole lists or one edit`}).refine(e=>e.secureOnArmOff===void 0||e.secureOnArmEdit===void 0,{message:`secureOnArmOff and secureOnArmEdit are exclusive — send the whole lists or one edit`}),kC=z([`muted`,`detection-off`,`offline`]),AC=F({deviceId:A().int(),reason:kC}),jC=F({mode:zx,ruleCount:A().int().min(0),allDevices:j(),deviceIds:P(A().int()),allDevicesExcept:P(A().int()).default([]),skippedDevices:P(AC).default([])}),MC=F({deviceId:A().int(),name:k(),state:k(),blocking:j()}),NC=F({deviceId:A().int(),name:k(),phase:z([`open`,`closed`])}),PC=F({mode:zx,devices:P(MC),unknown:P(A().int())}),FC=F({state:Rx,targetMode:zx.nullable(),availableModes:P(zx),openings:P(PC),exclusions:P(NC)}),IC=F({deviceId:A().int().nullable(),settings:SC,profiles:wC.optional(),coverage:P(jC),live:FC.optional()}),LC=z([`open`,`closed`,`unknown`,`not-opening`]),RC=F({deviceId:A().int().positive(),reading:LC,state:k().nullable(),unknownWhy:z([`read-failed`,`unknown-word`]).nullable(),online:j().nullable(),controllable:j().default(!1)}),zC=F({deviceIds:P(A().int().positive()).max(500)}),BC=F({sensors:P(RC),readAt:A().int().nonnegative()}),VC=F({deviceId:A().int().nonnegative().optional(),seconds:A().min(0).max(60),profile:Al.optional(),ruleId:k(),ruleName:k(),reason:z([`window`,`occupancy`])}),HC=F({rulesLoaded:j(),asks:P(VC).readonly()}),UC={name:`notification-rules`,scope:`system`,mode:`singleton`,methods:{listRules:V(F({}),F({rules:P(FS)}),{auth:`admin`}),getRule:V(F({ruleId:k()}),F({rule:FS.nullable()}),{auth:`admin`}),createRule:V(F({rule:jS}),F({rule:FS}),{kind:`mutation`,auth:`admin`,caller:`required`}),updateRule:V(PS,F({rule:FS}),{kind:`mutation`,auth:`admin`,caller:`required`}),deleteRule:V(F({ruleId:k()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),setRuleEnabled:V(F({ruleId:k(),enabled:j()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),listSequences:V(F({}),F({sequences:P(fS)}),{auth:`admin`}),getSequence:V(F({sequenceId:k().min(1)}),F({sequence:fS.nullable()}),{auth:`admin`}),createSequence:V(F({sequence:pS}),F({sequence:fS}),{kind:`mutation`,auth:`admin`}),updateSequence:V(F({sequenceId:k().min(1),sequence:pS}),F({sequence:fS}),{kind:`mutation`,auth:`admin`}),deleteSequence:V(F({sequenceId:k().min(1)}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),getClipRetentionAsks:V(F({}),HC,{auth:`admin`}),listDeviceMutes:V(F({}),F({mutedDeviceIds:P(A().int()).readonly()}),{auth:`admin`}),setDeviceMuted:V(F({deviceId:A().int(),muted:j()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),testRule:V(F({rule:jS,lookbackMinutes:A().int().min(1).max(1440).default(60)}),F({results:P(BS)}),{kind:`mutation`,auth:`admin`}),previewStateSummary:V(F({rule:jS}),zS,{kind:`mutation`,auth:`admin`,access:`view`}),getConditionCatalog:V(F({}),F({catalog:P(YS),taxonomy:Fx.optional()})),getTemplateCatalog:V(F({}),F({vars:P(KS)})),previewTemplate:V(qS,JS,{kind:`mutation`,access:`view`}),getHistory:V(F({filter:eC.default({limit:100})}),F({entries:P($S)}),{auth:`admin`}),getRuleLastRuns:V(F({}),tC,{auth:`admin`}),resolveArtifactUrl:V(F({artifactId:k().min(1)}),F({url:k().nullable()}),{auth:`admin`}),listSnoozes:V(F({}),F({snoozes:P(iC)}),{caller:`required`}),createSnooze:V(F({snooze:rC}),F({snooze:iC}),{kind:`mutation`,caller:`required`}),cancelSnooze:V(F({snoozeId:k()}),F({success:B(!0)}),{kind:`mutation`,caller:`required`}),getAlarmConfig:V(F({}),IC,{auth:`admin`}),setAlarmConfig:V(F({patch:OC}),IC,{kind:`mutation`,auth:`admin`}),createAlarmProfile:V(TC,IC,{kind:`mutation`,auth:`admin`}),renameAlarmProfile:V(EC,IC,{kind:`mutation`,auth:`admin`}),deleteAlarmProfile:V(DC,IC,{kind:`mutation`,auth:`admin`}),activateAlarmProfile:V(DC,IC,{kind:`mutation`,auth:`admin`}),getAlarmSensors:V(zC,BC,{auth:`admin`})}},WC=z([`view`,`create`,`delete`]),GC=I([B(`*`),P(k())]),KC=R(k(),I([B(`*`),P(k())])),qC=z([`device`,`system`]),JC=L(`kind`,[F({kind:B(`all`)}),F({kind:B(`ids`),ids:P(A().int()).min(1)}),F({kind:B(`types`),types:P(z(U)).min(1)}),F({kind:B(`locations`),locations:P(k().min(1)).min(1)})]),YC=F({type:B(`device`),selector:JC,access:P(WC).min(1),includeLinked:j().optional()});function XC(e){if(typeof e!=`object`||!e||Array.isArray(e)||Reflect.get(e,`type`)!==`device`||Reflect.get(e,`selector`)!==void 0)return e;let t=Reflect.get(e,`targets`);return Array.isArray(t)?{type:`device`,selector:{kind:`ids`,ids:t.map(e=>typeof e==`string`?Number(e):e).filter(e=>typeof e==`number`&&Number.isInteger(e))},access:Reflect.get(e,`access`)}:e}var ZC=yl(XC,L(`type`,[F({type:B(`category`),target:qC,access:P(WC).min(1)}),F({type:B(`capability`),target:k(),access:P(WC).min(1)}),F({type:B(`addon`),target:k(),access:P(WC).min(1)}),YC]));F({id:k(),username:k(),passwordHash:k(),isAdmin:j().default(!1),allowedProviders:GC,allowedDevices:KC,scopes:P(ZC).default([]),createdAt:A(),updatedAt:A()}),F({id:k(),label:k(),isAdmin:j().default(!1),allowedProviders:GC,allowedDevices:KC,tokenHash:k(),tokenPrefix:k(),createdAt:A(),lastUsedAt:A().optional()}),F({id:k(),userId:k(),name:k(),tokenHash:k(),tokenPrefix:k(),scopes:P(ZC),expiresAt:A().nullish(),lastUsedAt:A().nullish(),createdAt:A()});var QC=F({integrationId:k(),displayName:k(),requestedScopes:P(ZC),allowedRedirectPrefixes:P(k()).min(1),allowedPrivateHostPaths:P(k()).optional(),requiresPkce:j().optional(),hubUrl:k().optional(),refreshTokenTtlSec:I([A().int().positive(),B(`never`)]).optional()}),$C={name:`oauth-integration`,scope:`system`,mode:`collection`,internal:!0,methods:{getDescriptor:V(N(),QC,{auth:`admin`})}},ew=M(),tw=F({id:k().min(1),displayName:k(),icon:k(),issuerUrl:k(),clientId:k(),configured:j(),formValues:R(k(),M()).optional()}),nw=F({id:k().min(1),displayName:k().min(1),icon:k().optional(),issuerUrl:k().optional(),clientId:k().optional(),clientSecret:I([k(),F({$secretClear:B(!0)})]).optional(),redirectUri:k().optional(),scopes:k().optional(),usernameClaim:z([`preferred_username`,`email`,`sub`]).optional()}),rw={name:`oidc-connections`,scope:`system`,mode:`singleton`,methods:{connectionFormSchema:V(F({}),ew,{auth:`admin`}),listConnections:V(F({}),P(tw).readonly(),{auth:`admin`}),createConnection:V(F({id:k().min(1).regex(/^[a-z0-9][a-z0-9-]{0,63}$/,`id must be a lowercase slug`),displayName:k().min(1)}),F({id:k()}),{kind:`mutation`,auth:`admin`}),updateConnection:V(nw,F({ok:B(!0)}),{kind:`mutation`,auth:`admin`}),deleteConnection:V(F({id:k().min(1)}),F({ok:B(!0)}),{kind:`mutation`,auth:`admin`})}},iw=L(`kind`,[F({kind:B(`camera`)}),F({kind:B(`sensor`),deviceId:A().int().positive()})]);Object.freeze({kind:`camera`});var aw=F({addonId:k().min(1),stableId:k().min(1)});function ow(e){return`${e.addonId}/${e.stableId}`}var sw=z([`in-addition`,`confirm`,`replace`]),cw=`in-addition`,lw=F({sensors:P(aw.extend({mode:sw.default(cw)})).min(1).max(8)}).superRefine((e,t)=>{let n=new Set;e.sensors.forEach((e,r)=>{let i=ow(e);n.has(i)&&t.addIssue({code:`custom`,path:[`sensors`,r],message:`duplicate camera sensor ${i}`}),n.add(i)})}),uw={addonId:k(),stableId:k(),mode:sw.default(cw)},dw=L(`state`,[F({...uw,state:B(`ready`),deviceId:A(),name:k(),caps:P(k()).readonly()}),F({...uw,state:B(`offline`),deviceId:A(),name:k(),reason:z([`offline`,`disabled`])}),F({...uw,state:B(`missing`),reason:k()}),F({...uw,state:B(`unsupported`),deviceId:A(),name:k(),reason:k()}),F({...uw,state:B(`unreadable`),reason:k()})]),fw=z([`onboard-not-listed`,`no-active-detection`]),pw=z([`always`,`when-confirmed`,`never`]),mw=z([`provider-not-split`]),hw=F({detected:j(),atMs:A()}),gw=L(`state`,[F({state:B(`not-configured`),cameraLevel:hw.optional()}),F({state:B(`unreadable`),reason:k(),cameraLevel:hw.optional()}),F({state:B(`configured`),cameraLevel:hw.optional(),sensors:P(dw).readonly(),cameraMotion:pw.optional(),notForwarded:fw.optional(),notEnforced:mw.optional()})]);Object.freeze({state:`unreadable`,reason:`camera sensor mappings not loaded`});var _w=[`owner-not-ready`,`store-read-failed`,`three-way-read-unavailable`,`invalid-stored`,`not-cluster-scoped`];Object.freeze(Object.fromEntries([{stepId:`face-embedding`,label:`Face recognition model`,defaultModelId:`auraface-r100`,indexName:`the enrolled face gallery`,options:[{id:`auraface-r100`,label:`AuraFace R100`}]},{stepId:`clip-embedding`,label:`Semantic search model`,defaultModelId:`siglip2-b16-224`,indexName:`the object semantic-search index`,options:[{id:`siglip2-b16-224`,label:`SigLIP2 B/16 (Apache-2.0)`}]}].map(e=>[e.stepId,e.defaultModelId])));var vw=[{stepId:`face-embedding`,key:`minLandmarkFaceSize`,label:`Min face size to embed (detection-frame px)`,description:`Faces smaller than this in the small frame the detector sees are not embedded, so they can never be recognised. Below it the face cannot be aligned reliably and a bad embedding matches everyone. Same value on every node. 0 = no limit.`,type:`slider`,min:0,max:64,step:2,default:24}];function yw(e,t){return`clusterStepSetting:${e}:${t}`}var bw=A().finite();function xw(e){let t={};for(let n of vw){let r=bw.safeParse(e[yw(n.stepId,n.key)]),i=r.success?r.data:n.default,a=t[n.stepId]??{};t[n.stepId]={...a,[n.key]:i}}return t}xw({});var Sw=z([`new`,`entered`,`left`,`moving`,`idle`]),Cw=z([`motion`,`object`,`audio`]),ww=L(`kind`,[Ux,Wx]),Tw=z([`motion`,`audio`,`person`,`vehicle`,`animal`,`door`,`pir`,`smoke`,`water`,`button`,`package`,`generic`]),Ew=z([`motion`,`audio`,`detection`,`sensor`,`control`,`custom`,`package`]),Dw=z([`macro`,`sub`]),Ow=F({kind:k(),labelKey:k(),label:k(),color:k(),iconId:k(),icon:Tw,category:Ew,parentKind:k().nullable(),level:Dw,source:F({capName:k(),deviceId:A()})}),kw=F({deviceId:A(),kinds:P(Ow).readonly()}),Aw=F({id:k(),deviceId:A(),sourceDeviceId:A(),kind:k(),value:R(k(),M()).nullable(),timestamp:A()}),jw=F({x:A(),y:A(),timestamp:A(),bbox:Nm,source:z([`frame`,`recovery`]).optional(),score:A().optional()}),Mw=F({timestamp:A(),position:jw,mediaId:A().int()}),Nw=F({minX:A(),minY:A(),maxX:A(),maxY:A()}),Pw=z([`full`,`slim`]),Fw=F({label:k(),peakScore:A(),count:A(),firstAt:A(),lastAt:A()}),Iw=z([`pipeline`,`onboard`,`sensor`,`audio`]),Lw=z([`none`,`staging`,`trained`]),Rw={markForTrain:j().optional(),debug:j().optional(),debugNote:k().max(500).optional(),favourited:j().optional()},zw={retrainStatus:Lw.optional()},Bw=F(Rw),Vw=F({trackId:k(),markForTrain:j(),debug:j(),debugNote:k(),favourited:j(),retrainStatus:Lw});I([B(1),B(2)]);var Hw=F({stepId:k(),modelId:k().optional(),decidedAt:A(),identityId:k().optional()}),Uw={label:k().optional(),labelScore:A().optional(),labelMeta:Hw.optional(),subLabel:k().optional(),subLabelScore:A().optional(),subLabelMeta:Hw.optional()},Ww=F({deviceId:A(),tracks:A().int(),files:A().int(),bytes:A().int()}),Gw=F({generatedAt:A(),trackCount:A().int(),fileCount:A().int(),byteCount:A().int(),truncated:j(),devices:P(Ww).readonly()}),Kw=F({trackId:k(),deviceId:A(),className:k(),...Uw,producingDeviceName:k().optional(),source:Iw.optional(),firstSeen:A(),lastSeen:A(),positions:P(jw).readonly(),snapshots:P(Mw).readonly(),zonesVisited:P(k()).readonly(),zoneNames:P(k()).readonly().optional(),classes:P(k()).readonly().optional(),totalDistance:A(),state:Sw,active:j(),importance:A().optional(),bestEventId:k().optional(),importanceReason:k().optional(),audioLabels:P(Fw).readonly().optional(),envelope:Nw.optional(),hasFace:j().optional(),hasEmbeddedFace:j().optional(),hasRider:j().optional(),previewMissReason:k().optional(),modelId:k().optional(),frameWidth:A().optional(),frameHeight:A().optional(),...Rw,...zw}),qw={id:A().int(),deviceId:A(),timestamp:A()},Jw=F({...qw,kind:B(`motion`),regionCount:A(),regions:P(F({bbox:Nm,pixelCount:A(),intensity:A()})).readonly().optional(),frameWidth:A().optional(),frameHeight:A().optional(),mediaUrl:k().optional(),triggeredBy:iw.optional(),durationMs:A().nullable().optional(),edges:P(A()).readonly().optional()}),Yw=z([`pipeline`,`onboard`]),Xw=F({direction:z([`enter`,`exit`]),zoneId:k(),zoneName:k().optional()}),Zw=F({zoneId:k(),zoneName:k().optional(),overlapPct:A()}),Qw=F({...qw,kind:B(`object`),source:Yw.optional(),frameId:k().optional(),idempotencyKey:k().optional(),trackId:k().optional(),className:k(),...Uw,confidence:A().optional(),bbox:Nm.optional(),zones:P(k()).readonly().optional(),zoneOverlaps:P(Zw).readonly().optional(),spawnRefused:k().optional(),state:Sw.optional(),zoneCrossing:Xw.optional(),frameWidth:A().optional(),frameHeight:A().optional(),mediaId:A().int().optional(),keyFrameMediaId:A().int().optional(),mediaUrl:k().optional(),observedAt:A().optional(),importance:A().optional()}),$w=F({...qw,kind:B(`audio`),rms:A(),dbfs:A(),classification:F({className:k(),originalClass:k().optional(),score:A()}).optional(),classifyOutcome:Lm.optional(),mediaUrl:k().optional()}),eT=z([`crop`,`thumbnail`,`snapshot`,`firstFrame`,`lastFrame`,`fullFrame`,`fullFrameBoxed`,`faceCrop`,`plateCrop`,`keyFrame`,`keyFrameSmall`,`thumbnailSmall`,`confirmationCrop`,`debugCrop`,`sceneFrame`,`lastSceneFrame`]),tT=F({mediaId:A().int(),kind:eT,sizeBytes:A(),timestamp:A()}).extend({url:k(),base64:k()}),nT=tT.omit({base64:!0}),rT=z([`person`,`vehicle`,`animal`,`package`,`face`,`plate`]),iT=z([`subject`,`model_error`]),aT=z([`operator`,`assist`,`pipeline`,`llm`]),oT=F({x:A(),y:A(),w:A(),h:A()}),sT=F({source:aT,ref:k().min(1),bbox:oT,macroClass:rT,label:k().optional(),score:A().optional(),modelId:k().optional()}),cT=F({ref:k().min(1),snapshot:sT}),lT=z(Bd),uT=F({boxes:P(F({ref:k(),savedId:k().optional(),status:lT,approximate:j(),origin:sT.optional(),macroClass:rT.optional(),label:k().optional(),iou:A().optional()})).readonly(),summary:F({counts:R(lT,A().int()),total:A().int(),changed:A().int(),approximate:j()})}),dT=F({id:k(),trackId:k().optional(),deviceId:A(),mediaKey:k(),bbox:oT,macroClass:rT,label:k().optional(),subLabel:k().optional(),kind:iT,source:aT,assistModelId:k().optional(),assistScore:A().optional(),origin:sT.nullable().optional(),exportedInBatch:k().optional(),createdAt:A()}),fT=dT.omit({id:!0,trackId:!0,deviceId:!0,mediaKey:!0,createdAt:!0,exportedInBatch:!0}),pT=F({trackId:k(),deviceId:A(),className:k(),label:k().optional(),firstSeen:A(),lastSeen:A(),frameCount:A().int(),annotationCount:A().int()}),mT=F({mediaId:A().int(),kind:eT,timestamp:A(),sizeBytes:A().int(),copied:j()}),hT=F({bbox:oT,macroClass:rT,label:k().optional(),subLabel:k().optional(),score:A().optional(),modelId:k().optional(),trackId:k(),basis:z([`subject-box`,`position`]),deltaMs:A()}),gT=z([`track`,`recording`]),_T=F({frameId:k(),deviceId:A(),origin:gT,trackId:k().optional(),sourceMediaId:A().int().optional(),epochMs:A().optional(),sourceKind:eT,sizeBytes:A().int(),width:A().int(),height:A().int(),copiedAt:A(),capturedAt:A().optional(),complete:j(),pipelineBoxes:P(hT).readonly().optional(),collectionIds:P(k()).readonly().optional(),revision:A().int().optional(),dismissed:P(cT).readonly().optional(),review:uT.optional(),imageUrl:k().optional(),thumbnailUrl:k().optional()}),vT=z([`source-missing`,`unreadable-image`,`write-failed`]),yT=F({copied:P(_T).readonly(),refused:P(F({sourceMediaId:A().int(),reason:vT})).readonly()}),bT=F({candidates:P(mT).readonly(),copies:P(_T).readonly(),autoPickMediaId:A().int().optional()}),xT=z([`unannotated`,`annotated`,`complete`]),ST=F({workState:xT.optional(),deviceIds:P(A()).max(500).optional(),collectionId:k().optional(),classes:P(rT).optional(),page:A().int().positive().default(1),pageSize:A().int().positive().max(100).default(50)}),CT=F({frames:P(_T.extend({workState:xT})).readonly(),total:A().int().nonnegative(),page:A().int().positive(),pageSize:A().int().positive()}),wT=F({deviceId:A(),unannotated:A().int().nonnegative(),annotated:A().int().nonnegative(),complete:A().int().nonnegative(),pctOfCorpus:A().min(0).max(1).nullable()}),TT=F({total:A().int().nonnegative(),unannotated:A().int().nonnegative(),annotated:A().int().nonnegative(),complete:A().int().nonnegative(),cameras:P(wT).readonly()}),ET=F({deviceIds:P(A()).optional(),frameIds:P(k()).max(2e4).optional(),collectionIds:P(k()).max(200).optional(),collectionId:k().optional(),batchId:k().optional(),completeOnly:j().optional(),workState:xT.optional(),classes:P(rT).optional()}),DT=z([`frames`,`crops`]),OT=F({kind:B(`http`),method:z([`PUT`,`POST`]),url:k().url(),headers:R(k(),k()).optional()}),kT=F({batchId:k(),frames:A().int(),crops:A().int(),annotations:A().int(),missing:A().int(),bytes:A().int(),sha256:k(),status:A().int()}),AT=L(`kind`,[F({kind:B(`package`),zone:oT.optional()}),F({kind:B(`objects`),modelId:k(),minScore:A().optional()})]),jT=L(`kind`,[F({kind:B(`proposed`),modelId:k(),stepId:k(),minScore:A(),proposals:P(fT).readonly(),belowThreshold:A().int()}),F({kind:B(`refused`),reason:k(),detail:k().optional()})]),MT=F({id:k(),name:k(),createdAt:A(),frameCount:A().int()}),NT=L(`kind`,[F({kind:B(`created`),collection:MT}),F({kind:B(`refused`),reason:z([`empty-name`,`duplicate-name`])})]),PT=L(`kind`,[F({kind:B(`renamed`),collection:MT}),F({kind:B(`refused`),reason:z([`empty-name`,`duplicate-name`,`unknown-collection`])})]),FT=L(`kind`,[F({kind:B(`added`),collectionId:k(),frame:_T,reused:j()}),F({kind:B(`refused`),reason:z([`unknown-collection`,`still-unavailable`,`still-busy`,`unreadable-image`,`write-failed`]),detail:k().optional()})]),IT=F({id:k(),name:k(),model:k(),kind:k(),leavesHouse:j()}),LT=fT.extend({reason:k()}),RT=F({ref:k(),verdict:z([`confirmed`,`wrong-class`,`not-an-object`,`uncertain`]),suggestedClass:rT.optional(),reason:k()}),zT=L(`kind`,[F({kind:B(`proposed`),profileId:k(),model:k(),leftHouse:j(),proposals:P(LT).readonly(),reviews:P(RT).readonly(),rejected:A().int()}),F({kind:B(`refused`),reason:z([`unknown-frame`,`unreadable-frame`,`unknown-profile`,`profile-disabled`,`no-vision`,`cloud-not-confirmed`,`llm-error`,`malformed-answer`]),detail:k().optional()})]),BT=F({deviceIds:P(A()).readonly().optional(),collectionIds:P(k()).max(200).readonly().optional(),frameIds:P(k()).max(2e4).readonly().optional()}),VT=F({frames:A().int(),completeFrames:A().int(),completeness:A(),subjects:A().int(),modelErrors:A().int(),hardNegatives:A().int(),cells:P(F({macroClass:k(),deviceId:A(),lighting:z([`day`,`night`,`unknown`]),subjects:A().int(),frames:A().int()})).readonly(),cameras:P(F({deviceId:A(),frames:A().int(),completeFrames:A().int()})).readonly()});F({id:k(),name:k(),createdAt:A(),selection:BT,layout:DT,completeOnly:j(),frameCount:A().int(),annotationHash:k(),manifestSchema:k(),stats:VT});var HT=F({collectionIds:P(k()).min(1),workState:z([`complete`,`annotated_or_complete`,`any_annotated`]).default(`complete`)}),UT=L(`kind`,[F({kind:B(`resolved`),frameIds:P(k()).max(2e4).readonly(),stats:VT,annotationHash:k(),layout:DT}),F({kind:B(`refused`),reason:z([`unknown-collection`,`no-frames`]),detail:k()})]),WT=F({trackId:k(),retrainStatus:Lw,changed:j(),reason:z([`unknown-track`,`no-frames-copied`,`not-staging`,`not-trained`,`unchanged`]).optional()}),GT=1e3,KT=5e3,qT=F({deviceId:A(),since:A().optional(),until:A().optional(),limit:A().int().min(1).max(KT).default(GT),projection:z([`full`,`slim`]).optional()}),JT=qT.extend({classFilter:k().optional()}),YT=F({deviceIds:P(A()),since:A().optional(),until:A().optional(),limit:A().int().min(1).max(1e3).default(200),cursor:k().optional(),projection:Pw.optional(),includeStationary:j().optional(),classes:P(k()).optional(),excludeSources:P(Iw).optional()}),XT=F({tracks:P(Kw).readonly(),nextCursor:k().nullable()}),ZT=50,QT=200,$T=F({deviceId:A(),since:A(),until:A(),limit:A().int().min(1).max(QT).default(ZT),minImportance:A().min(0).max(1).optional(),classFilter:k().optional()}),eE=F({id:k(),trackId:k(),timestamp:A(),className:k(),...Uw,importance:A(),bestEventId:k(),windowMs:A().optional(),audioLabels:P(Fw).readonly().optional(),...Rw,...zw}),tE=F({deviceIds:P(A()).min(1).max(200),since:A(),until:A(),limit:A().int().min(1).max(QT).default(ZT),minImportance:A().min(0).max(1).optional(),classFilter:k().optional()}),nE=F({deviceId:A(),events:P(eE).readonly()}),rE=F({bucketStart:A(),motion:A().int(),object:A().int(),audio:A().int(),audioDbfs:A().optional()}),iE=F({deviceId:A(),read:z([`read`,`unreadable`]),buckets:P(rE).readonly()});F({trackId:k(),className:k(),confidence:A(),bbox:Nm,zones:P(k()).readonly(),state:Sw});var aE=Pc({id:k(),kind:z([`first-level`,`detail`]),macroClass:k(),score:A(),bbox:F({x:A(),y:A(),width:A(),height:A()}),labels:P(Pc({label:k(),score:A()})).readonly(),parentId:k().optional()}),oE=Qw.extend({score:A()}),sE=F({text:k(),deviceId:A().optional(),since:A().optional(),until:A().optional(),classFilter:k().optional(),limit:A().default(50),minScore:A().min(0).max(1).optional(),strictness:Sp.optional(),modelId:k().min(1).optional()}),cE=F({tracks:A().int(),events:A().int(),media:A().int(),faces:A().int(),plates:A().int(),embeddings:A().int()}),lE=F({mediaDropped:A().int(),tracks:A().int(),events:A().int()}),uE=F({deviceId:A(),rows:A().int(),bytes:A().int()}),dE=F({totalRows:A().int(),totalBytes:A().int(),devices:P(uE).readonly()}),fE=F({kind:eT,rows:A().int(),bytes:A().int()}),pE=F({totalRows:A().int(),totalBytes:A().int(),kinds:P(fE).readonly(),unaccountedRows:A().int(),unaccountedBytes:A().int()}),mE=F({motion:A().int(),object:A().int(),audio:A().int()}),hE=F({deviceId:A().optional(),since:A().optional(),until:A().optional(),maxTracks:A().int().positive().optional(),executeOnNodeId:k().optional(),pacingMs:A().int().nonnegative().optional(),force:j().optional()}),gE=F({deleted:A(),failedIndexes:P(k()).optional()}),_E=z([`stores-unavailable`,..._w,`method-unavailable`,`read-failed`,`reads-disagree`,`not-a-clip-model`,`force-requires-max-tracks`]),vE=F({started:j(),alreadyRunning:j(),refusal:_E.optional(),modelId:k().optional(),index:k().optional()}),yE=F({running:j(),scanned:A(),rebuilt:A(),missingKeyFrame:A(),missingEvent:A(),missingBbox:A(),boxSource:F({subjectBox:A(),positions:A(),event:A(),refused:A()}),alreadyInSpace:A(),force:j().nullable(),forcedInSpace:A(),notRunnable:A(),noCapableNode:A(),failed:A(),complete:j().nullable(),startedAtMs:A().nullable(),finishedAtMs:A().nullable(),error:k().nullable(),modelId:k().nullable(),index:k().nullable()}),bE=F({started:j(),alreadyRunning:j()}),xE=F({mode:z([`report`,`reclaim`]).default(`report`),scopes:P(z([`motion-still`,`track-filmstrip`])).min(1).optional(),deviceIds:P(A().int()).min(1).optional(),restart:j().optional(),pageSize:A().int().min(50).max(5e3).optional(),maxRowsPerDevice:A().int().min(1).max(5e5).optional(),maxReclaimPerDevice:A().int().min(1).max(5e5).optional(),maxBytesPerRun:A().int().min(1).optional(),budgetMinutes:A().int().min(1).max(720).optional(),throttleBytesPerSec:A().int().min(64*1024).optional(),graceMinutes:A().int().min(1).max(10080).optional()}),SE=F({running:j(),mode:z([`report`,`reclaim`]).nullable(),totalExamined:A(),totalEligible:A(),totalReclaimed:A(),totalBytesReclaimed:A(),totalRefused:A(),devicesDone:A(),complete:j().nullable(),startedAtMs:A().nullable(),finishedAtMs:A().nullable(),error:k().nullable()}),CE=z([`motion`,`audio-dbfs`,`battery`,`occupancy`]),wE=F({scope:k(),bucketStart:A().int(),samples:A().int().nonnegative(),sum:A(),min:A(),max:A()}),TE={name:`pipeline-analytics`,scope:`device`,mode:`singleton`,kind:`wrapper`,defaultActive:!0,deviceTypes:[U.Camera],exposesDeviceSettings:!0,methods:{getActiveTracks:V(F({deviceId:A()}),P(Kw).readonly()),getTrack:V(F({deviceId:A(),trackId:k()}),Kw.nullable()),listTracks:V(F({deviceId:A(),since:A().optional(),until:A().optional(),limit:A().optional(),zone:ww.optional(),projection:Pw.optional(),includeStationary:j().optional(),classes:P(k()).optional(),excludeSources:P(Iw).optional()}),P(Kw).readonly()),listRecentTracks:V(YT,XT),clearTracks:V(F({deviceId:A()}),N(),{kind:`mutation`,auth:`admin`}),getMotionEvents:V(qT,P(Jw).readonly()),getObjectEvents:V(JT,P(Qw).readonly()),getAudioEvents:V(qT,P($w).readonly()),listEventKinds:V(F({deviceId:A()}),P(Ow).readonly()),listEventKindsBatch:V(F({deviceIds:P(A()).min(1).max(200)}),P(kw).readonly()),getSensorEvents:V(F({deviceId:A(),since:A().optional(),until:A().optional(),kinds:P(k()).optional(),limit:A().int().min(1).max(KT).default(GT)}),P(Aw).readonly()),getKeyEvents:V($T,P(eE).readonly()),getKeyEventsBatch:V(tE,P(nE).readonly()),readLongTermSeries:V(F({deviceId:A(),series:CE,scope:k().optional(),from:A(),to:A(),limit:A().int().positive().optional()}),P(wE).readonly()),getEventDensity:V(F({deviceId:A(),since:A(),until:A(),bucketMs:A().int().positive()}),P(rE).readonly()),getEventDensityBatch:V(F({deviceIds:P(A()).min(1).max(200),since:A(),until:A(),bucketMs:A().int().positive()}),P(iE).readonly()),pruneEventsBefore:V(F({deviceId:A(),cutoffMs:A()}),F({motion:A().int(),object:A().int(),audio:A().int()}),{kind:`mutation`,auth:`admin`}),pruneTracksBefore:V(F({deviceId:A(),cutoffMs:A()}),cE,{kind:`mutation`,auth:`admin`}),wipeAllAnalytics:V(F({deviceId:A()}),cE,{kind:`mutation`,auth:`admin`}),reconcileFromDisk:V(F({deviceId:A()}),lE,{kind:`mutation`,auth:`admin`}),deleteTracks:V(F({deviceId:A(),trackIds:P(k()).min(1)}),F({deleted:A().int(),failed:P(k()).readonly(),sparedMediaIds:P(A().int()).readonly().optional()}),{kind:`mutation`,auth:`admin`}),setTrackFlags:V(F({deviceId:A(),trackId:k(),flags:Bw}),Vw,{kind:`mutation`}),listArchivedDebugNotes:V(Gd,P(Wd).readonly(),{kind:`query`}),setTrackRelation:V(Zd,Yd,{kind:`mutation`}),clearTrackRelation:V(Qd,$d,{kind:`mutation`}),setTrackPurity:V(ef,tf,{kind:`mutation`}),listTrackRelations:V(nf,rf,{kind:`query`}),listBirthDecisions:V(Ud,P(Hd).readonly(),{kind:`query`}),getEventStoreFootprint:V(F({}),dE,{kind:`query`,auth:`admin`}),getEventMediaFootprintByKind:V(F({deviceId:A().int().optional()}),pE,{kind:`query`,auth:`admin`}),pruneEvents:V(F({olderThanMs:A(),reason:sf.optional()}),mE,{kind:`mutation`,auth:`admin`}),deleteDeviceEvents:V(F({deviceId:A()}),mE,{kind:`mutation`,auth:`admin`}),pauseForStorageMigration:V(Af,F({paused:B(!0)}),{kind:`mutation`,auth:`admin`}),resumeForStorageMigration:V(Af,F({resumed:B(!0)}),{kind:`mutation`,auth:`admin`}),refreshStorageLocationsForMigration:V(Af,F({refreshed:B(!0)}),{kind:`mutation`,auth:`admin`}),startStorageMigrationMove:V(If,F({jobId:k()}),{kind:`mutation`,auth:`admin`}),getStorageMigrationMoveStatus:V(F({jobId:k()}),Df.nullable(),{auth:`admin`}),cancelStorageMigrationMove:V(F({jobId:k()}),F({cancelled:j()}),{kind:`mutation`,auth:`admin`}),relocateMedia:V(Nf,F({jobId:k()}),{kind:`mutation`,auth:`admin`}),countUnstampedEventMedia:V(F({}),Ff,{auth:`admin`}),countRelocatableMedia:V(op,ap,{kind:`query`,auth:`admin`}),listRelocateMediaJobs:V(F({}),P(Df).readonly(),{kind:`query`,auth:`admin`}),cancelRelocateMedia:V(F({jobId:k()}),F({cancelled:j()}),{kind:`mutation`,auth:`admin`}),listOpsLog:V(lf,P(cf).readonly(),{kind:`query`,auth:`admin`}),reclaimDebugMedia:V(xE,bE,{kind:`mutation`,auth:`admin`}),getMediaReclaimStatus:V(F({}),SE,{kind:`query`,auth:`admin`}),getTrainingExportSummary:V(F({deviceIds:P(A()).optional()}),Gw,{kind:`query`,auth:`admin`}),getTrainingExportUrl:V(F({deviceIds:P(A()).optional()}),F({url:k()}),{kind:`query`,auth:`admin`}),listRetrainStaging:V(F({deviceIds:P(A()).optional(),limit:A().int().min(1).max(500).optional()}),P(pT).readonly(),{kind:`query`,auth:`admin`}),listRetrainCorpusPage:V(ST,CT,{kind:`query`,auth:`admin`}),getRetrainCorpusKpi:V(F({}),TT,{kind:`query`,auth:`admin`}),listRetrainFrames:V(F({trackId:k()}),bT,{kind:`query`,auth:`admin`}),selectRetrainFrames:V(F({deviceId:A(),trackId:k(),mediaIds:P(A().int()).min(1)}),yT,{kind:`mutation`,auth:`admin`}),deselectRetrainFrame:V(F({deviceId:A(),trackId:k().optional(),frameId:k()}),F({removed:j(),removedAnnotations:A().int()}),{kind:`mutation`,auth:`admin`}),getRetrainFrameImage:V(F({frameId:k()}),F({base64:k(),width:A().int(),height:A().int()}),{kind:`query`,auth:`admin`}),proposeRetrainAnnotations:V(F({deviceId:A(),trackId:k().optional(),frameId:k(),subject:AT,nodeId:k().optional()}),jT,{kind:`mutation`,auth:`admin`}),listRetrainAnnotations:V(F({trackId:k().optional(),frameIds:P(k()).max(2e3).optional()}),P(dT).readonly(),{kind:`query`,auth:`admin`}),saveRetrainAnnotations:V(F({deviceId:A(),trackId:k().optional(),frameId:k(),annotations:P(fT),expectedRevision:A().int().optional(),dismissed:P(cT).optional()}),P(dT).readonly(),{kind:`mutation`,auth:`admin`}),backfillRetrainOrigins:V(F({deviceId:A(),trackId:k().optional(),frameId:k(),expectedRevision:A().int().optional(),origins:P(F({annotationId:k(),origin:sT})).min(1).max(500)}),F({updated:A().int(),skipped:A().int(),revision:A().int()}),{kind:`mutation`,auth:`admin`}),completeRetrainTrack:V(F({deviceId:A(),trackId:k()}),WT,{kind:`mutation`,auth:`admin`}),restageRetrainTrack:V(F({deviceId:A(),trackId:k()}),WT,{kind:`mutation`,auth:`admin`}),getRetrainExportUrl:V(ET.extend({layout:DT.optional()}),F({url:k()}),{kind:`query`,auth:`admin`}),setRetrainFrameComplete:V(F({deviceId:A(),trackId:k().optional(),frameId:k(),complete:j()}),_T,{kind:`mutation`,auth:`admin`}),writeRetrainArchive:V(F({filter:ET,layout:DT,target:OT}),kT,{kind:`mutation`,auth:`admin`,timeoutMs:60*6e4}),offerRetrainArchive:V(F({filter:ET,layout:DT}),F({ticket:kl,frames:A().int(),annotations:A().int()}),{kind:`mutation`,auth:`admin`,timeoutMs:12e4}),listRetrainAssistProfiles:V(F({}),P(IT).readonly(),{kind:`query`,auth:`admin`}),proposeRetrainAnnotationsWithLlm:V(F({deviceId:A(),trackId:k().optional(),frameId:k(),profileId:k(),classes:P(rT).min(1),boxes:P(F({ref:k(),bbox:oT,macroClass:rT,label:k().optional()})).max(50),allowCloud:j()}),zT,{kind:`mutation`,auth:`admin`,timeoutMs:18e4}),createRetrainCollection:V(F({name:k().max(120)}),NT,{kind:`mutation`,auth:`admin`}),listRetrainCollections:V(F({}),P(MT).readonly(),{kind:`query`,auth:`admin`}),resolveRetrainTrainingCorpus:V(HT,UT,{kind:`query`,auth:`admin`,timeoutMs:6e4}),renameRetrainCollection:V(F({id:k(),name:k().max(120)}),PT,{kind:`mutation`,auth:`admin`}),deleteRetrainCollection:V(F({id:k()}),F({deleted:j(),removedFrames:A().int()}),{kind:`mutation`,auth:`admin`}),addRetrainFrameFromRecording:V(F({collectionId:k(),deviceId:A(),epochMs:A()}),FT,{kind:`mutation`,auth:`admin`,timeoutMs:6e4}),addRetrainFramesToCollection:V(F({collectionId:k(),frameIds:P(k()).min(1).max(500)}),F({added:A().int(),alreadyMember:A().int(),unknownFrameIds:P(k()).readonly()}),{kind:`mutation`,auth:`admin`}),removeRetrainFrameFromCollection:V(F({collectionId:k(),frameId:k()}),F({removed:j(),deletedFrame:j()}),{kind:`mutation`,auth:`admin`}),listRetrainCollectionFrames:V(F({collectionId:k()}),P(_T).readonly(),{kind:`query`,auth:`admin`}),getEventMedia:V(F({ownerType:ud,eventId:A().int(),kind:eT.optional(),deviceId:A()}),P(tT).readonly()),getTrackMedia:V(F({trackId:k(),kinds:P(eT).optional(),deviceId:A()}),P(tT).readonly()),listTrackMedia:V(F({trackId:k(),deviceId:A()}),P(nT).readonly()),listEventMedia:V(F({ownerType:ud,eventId:A().int(),deviceId:A()}),P(nT).readonly()),ownersWithMedia:V(F({deviceId:A(),ownerKind:dd,ownerIds:P(k()).max(5e3)}),P(k()).readonly()),searchObjectEvents:V(sE,P(oE).readonly(),{caller:`required`}),wipeObjectEmbeddings:V(F({}),gE,{kind:`mutation`,auth:`admin`}),rebuildObjectEmbeddings:V(hE,vE,{kind:`mutation`,auth:`admin`}),getObjectEmbeddingRebuildStatus:V(F({}),yE)},events:{onFrameTracked:{data:F({deviceId:A(),timestamp:A(),frameWidth:A(),frameHeight:A(),detections:P(aE).readonly()})},onTrackStarted:{data:F({deviceId:A(),trackId:k(),className:k()})},onTrackEnded:{data:F({deviceId:A(),trackId:k(),className:k(),durationMs:A()})},onDetectionEvent:{data:F({deviceId:A(),kind:Cw,eventId:k(),timestamp:A()})}}},EE=F({stepId:k(),modelId:k(),detections:P(F({bbox:Bc([A(),A(),A(),A()]),score:A(),landmarks:P(F({x:A(),y:A()})).optional()})).min(1)}),DE=F({handle:Rl,cropFrameSpace:F({x:A(),y:A(),w:A(),h:A()})});F({crop:F({left:A(),top:A(),width:A().positive(),height:A().positive()}).optional(),content:F({width:A().int().positive(),height:A().int().positive()}),fit:z([`stretch`,`contain`]),format:z([`rgb`,`gray`,`jpeg`])});var OE=F({registryId:k().min(1),id:k().min(1),width:A().int().positive(),height:A().int().positive(),format:z([`rgb`,`gray`]),timestamp:A(),capturedAt:A().optional()}),kE=z([`onnx`,`coreml`,`openvino`,`tflite`,`pt`,`gguf`]),AE=z([`detector`,`cropper`,`classifier`,`refiner`,`audio-classifier`]),jE=F({runtime:B(`python`),backend:k(),format:kE,device:k().optional()}),ME=F({deviceKey:k().nullable(),runtime:k(),batchMode:k(),windowMs:A(),maxBatchSize:A(),concurrency:A(),numWorkers:A()}),NE=F({engine:jE,devices:P(F({id:k(),label:k(),description:k().optional()})).readonly(),defaultDevice:k()}),PE=pl(()=>F({addonId:k(),addonName:k(),slot:AE,inputClasses:P(k()).readonly(),outputClasses:P(k()).readonly(),enabled:j(),modelId:k(),children:P(PE).readonly(),group:k().optional(),settings:R(k(),M()).optional()})),FE=F({id:k(),name:k(),formats:R(k(),kp),group:Mp.optional(),legacy:j().optional(),provider:Np.optional(),defaultConfidence:A().optional(),suppliesSteps:P(Fp).readonly().optional()}),IE=hl(),LE=F({id:k(),name:k(),slot:AE,inputClasses:P(k()).readonly(),outputClasses:P(k()).readonly(),childSlots:P(AE).readonly(),models:P(FE).readonly(),defaultModelId:k(),defaultModelIdByFormat:R(k(),k()).optional(),enabledByDefault:j().optional(),backfillIntoExistingOverrides:j().optional(),defaultConfidence:A(),group:k().optional(),configSchema:P(IE).readonly().optional()}),RE=F({id:AE,label:k(),priority:A(),parentSlot:AE.nullable(),addons:P(LE).readonly()}),zE=F({availableEngines:P(NE).readonly(),selectedEngine:jE,slots:P(RE).readonly()}),BE=F({runtimeId:z([`onnx`,`openvino`,`coreml`,`edgetpu`]).nullable(),device:k().nullable(),state:z([`idle`,`installing`,`verifying`,`ready`,`failed`]),progress:A().optional(),error:k().optional(),nextRetryAt:A().optional(),configIssues:P(k()).optional()}),VE=pl(()=>F({addonId:k(),modelId:k().optional(),enabled:j().default(!0),children:P(VE).optional(),settings:R(k(),M()).optional(),jumpDeviceKey:k().optional()})),HE=F({addonId:k(),chosen:k(),running:k(),format:k()}),UE=F({addonId:k(),kind:z([`unknown-addon`,`no-format-build`,`unknown-device`]),detail:k()}),WE=F({ok:j(),issues:P(UE).readonly(),substitutions:P(HE).readonly(),format:k()}),GE=F({filename:k(),stepIds:P(k()).readonly().optional()}),KE=F({base64:k(),filename:k()}),qE=F({filename:k(),sizeKb:A()}),JE=F({base64:k()}),YE=F({id:k(),name:k(),description:k(),available:j(),rawLabels:P(k()).readonly().optional()}),XE=F({activeBackend:k(),availableBackends:P(YE).readonly(),sampleRate:A(),chunkDurationMs:A()}),ZE=F({filePath:k(),sizeMB:A(),durationMs:A()}),QE=F({success:j(),error:k().optional(),frame:hl().optional()}),$E=hl(),eD=hl(),tD=hl(),nD=hl(),rD=hl(),iD=hl(),aD={name:`pipeline-executor`,scope:`system`,mode:`singleton`,methods:{getAvailableEngines:V(N(),P(jE)),getSelectedEngine:V(N(),jE),getDefaultSteps:V(jE,P(PE)),getEngineProvisioning:V(F({nodeId:k()}),BE),getVideoPipelineSteps:V(N(),R(k(),F({modelId:k(),settings:R(k(),M()).readonly()}))),setVideoPipelineSteps:V(F({steps:R(k(),F({modelId:k(),settings:R(k(),M()).readonly()}))}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),clearDeviceOverrides:V(F({nodeId:k()}),F({success:B(!0),clearedDevices:A()}),{kind:`mutation`,auth:`admin`}),clearModelBoundDeviceOverrides:V(F({nodeId:k(),deviceIds:P(A()).readonly().optional(),dryRun:j()}),F({entries:P(F({deviceId:A(),keys:P(k()).readonly()})).readonly(),refused:P(F({deviceId:A(),reason:k()})).readonly()}),{kind:`mutation`,auth:`admin`}),getInferenceDeviceHealth:V(F({nodeId:k()}),F({unhealthy:P(F({deviceKey:k(),state:z([`failed`,`backoff`]),since:A(),deaths:A(),lastError:k()})).readonly()})),rearmInferenceDevice:V(F({nodeId:k(),deviceKey:k()}),F({rearmed:j()}),{kind:`mutation`,auth:`admin`}),getSchema:V(N(),zE),getGlobalSteps:V(N(),P(PE).readonly().nullable()),getGlobalPipelineConfig:V(N(),$E),getOrchestratorConfigSchema:V(N(),eD),validatePipeline:V(F({steps:P(VE),deviceKey:k().optional()}),WE),getCapabilities:V(N(),nD),getAddonModels:V(F({addonId:k()}),rD),downloadModel:V(F({addonId:k(),modelId:k(),format:kE}),ZE,{kind:`mutation`}),deleteModel:V(F({addonId:k(),modelId:k(),format:kE}),F({success:B(!0)}),{kind:`mutation`}),runPipeline:V(F({steps:P(VE).min(1),frame:Mm.optional(),frameRef:OE.optional(),frameHandle:Rl.optional(),imageBase64:k().optional(),image:vl(Uint8Array).optional(),referenceImage:k().optional(),deviceId:A().optional(),sessionId:k().optional(),plane:z([`full`,`frame`]).optional(),deviceKey:k().optional(),nativeCropRef:DE.optional(),replay:B(!0).optional(),suppliedRoot:EE.optional()}),iD,{kind:`mutation`}),runPipelineBatch:V(F({steps:P(VE).min(1),frames:P(Mm).min(1).max(255),deviceId:A().optional(),sessionId:k().optional(),frameId:A().int().nonnegative().optional(),deviceKey:k().optional()}),F({results:P(iD).readonly()}),{kind:`mutation`}),cacheFrameInPool:V(F({data:vl(Uint8Array),width:A().int().positive(),height:A().int().positive(),format:z([`rgb`,`bgr`,`gray`])}),F({frameId:A(),width:A(),height:A()}),{kind:`mutation`}),inferCached:V(F({stepId:k(),frameId:A().int(),modelId:k().min(1)}),R(k(),M()),{kind:`mutation`}),uncacheFrame:V(F({frameId:A().int()}),N(),{kind:`mutation`}),getEffectiveTuning:V(F({deviceKey:k().optional()}),ME),listLoadedEngines:V(N(),P(F({engineKey:k(),engine:jE,modelsLoaded:P(k()).readonly(),inUseByCameras:P(A()).readonly(),kind:z([`runtime`,`device-pool`]),poolPid:A().nullable(),idleMs:A().nullable(),idleTtlMs:A().nullable()})).readonly()),spinEngine:V(F({engine:jE}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),killEngine:V(F({engine:jE,force:j().optional()}),F({success:j(),reason:k().optional()}),{kind:`mutation`,auth:`admin`}),listReferenceImages:V(N(),P(GE).readonly()),getReferenceImage:V(F({filename:k()}),KE.nullable()),getReferenceAudioFiles:V(N(),P(qE).readonly()),getReferenceAudio:V(F({filename:k()}),JE.nullable()),getAudioCapabilities:V(N(),XE),runAudioTest:V(F({addonId:k(),modelId:k(),filename:k().optional(),settings:R(k(),M()).optional()}),QE,{kind:`mutation`}),getDetectionConfigSchema:V(N(),tD)}},oD=z(Gl),sD={min:1,max:8},cD=z([`intel-core-ultra`,`intel-n-series`,`apple-m-base`,`apple-m-pro`,`amd-phoenix`,`unknown`]),lD=z([`intel-npu`,`intel-igpu`,`amd-igpu`,`amd-npu`,`x86-cpu`,`arm-cpu`,`apple-ane`,`coral`]),uD=L(`kind`,[F({kind:B(`capacity`),sessions:A(),minSessions:A()}),F({kind:B(`tie-faster`),over:k(),recallDelta:A()}),F({kind:B(`stepped-down`),from:k(),to:k(),limitedBy:k()}),F({kind:B(`no-fit-lightest`),sessions:A(),minSessions:A()}),F({kind:B(`derived-latency`),modelId:k()}),F({kind:B(`cpu-device`)}),F({kind:B(`coral-untouched`)}),F({kind:B(`device-disabled`)}),F({kind:B(`device-unavailable`)}),F({kind:B(`node-offline`)}),F({kind:B(`no-hardware-facts`)}),F({kind:B(`no-measured-data`),hardwareClass:cD}),F({kind:B(`no-family-build`),format:oD}),F({kind:B(`kept-custom-pin`),modelId:k(),deviceKey:k()})]),dD=z([`custom-pin`]),fD=L(`kind`,[F({kind:B(`table`)}),F({kind:B(`node-benchmark`),resultId:k(),measuredAtMs:A()})]),pD=F({modelId:k(),p50Ms:A(),fps:A(),measured:j(),source:fD.optional(),capacitySessions:A(),personRecall:A()}),mD=F({deviceKey:k(),accelerator:lD.nullable(),enabled:j(),available:j(),chosen:pD.nullable(),kept:dD.optional(),reasons:P(uD).readonly()}),hD=F({nodeId:k(),reachable:j(),hardwareClass:cD.nullable(),cpuModel:k().nullable(),skipped:j(),acceleratorModelId:k().nullable(),devices:P(mD).readonly(),reasons:P(uD).readonly()}),gD=F({stepId:k(),before:k().nullable(),after:k().nullable()}),_D=F({nodeId:k(),deviceKey:k(),madeExplicit:j(),modelPins:P(gD).readonly(),thresholds:P(F({stepId:k(),keys:P(k()).readonly()})).readonly()}),vD=F({deviceId:A(),source:z([`step-override`,`wholesale`]),nodeId:k(),deviceKey:k().nullable(),stepId:k(),modelIdBefore:k().nullable(),keys:P(k()).readonly()}),yD=F({deviceId:A(),keys:P(k()).readonly()}),bD=L(`kind`,[F({kind:B(`detector-store-cluster-wide`),skippedNodes:P(k()).readonly()}),F({kind:B(`detector-store-unreadable`),error:k()}),F({kind:B(`coral-enabled`),nodeId:k(),deviceKey:k()}),F({kind:B(`custom-pin-kept`),nodeId:k(),deviceKey:k().nullable(),deviceId:A().nullable(),modelId:k()}),F({kind:B(`custom-registry-unreadable`),error:k()})]),xD=F({headroom:A().min(.3).max(.5).default(.4),minSessionsPerDevice:A().int().min(sD.min).max(sD.max).default(2)}),SD=F({planHash:k(),family:B(`yolov9`),headroom:A(),minSessionsPerDevice:A(),cameraFps:A(),generatedAt:A(),nodes:P(hD).readonly(),nodeChanges:P(_D).readonly(),cameraClears:P(vD).readonly(),detectorStoreClears:P(yD).readonly(),warnings:P(bD).readonly()}),CD=F({planHash:k(),headroom:A().min(.3).max(.5).default(.4),minSessionsPerDevice:A().int().min(sD.min).max(sD.max).default(2)}),wD=F({phase:z([`download`,`camera-overrides`,`detector-thresholds`,`node-models`,`redispatch`]),ok:j(),detail:k()}),TD=L(`kind`,[F({kind:B(`applied`),planHash:k(),phases:P(wD).readonly()}),F({kind:B(`aborted`),phases:P(wD).readonly()}),F({kind:B(`stale`),plan:SD}),F({kind:B(`refused`),reason:z([`apply-in-progress`])})]),ED=z([`least-loaded`,`share`]),DD=F({nodes:R(k(),A().positive()).default({}),devices:R(k(),R(k(),A().positive())).default({})}),OD=F({windowMs:A().int().min(6e4).max(1440*60*1e3).default(3600*1e3)}),kD=F({deviceKey:k(),sessionsNow:A(),sessionsStarted:A(),observedShare:A().nullable()}),AD=F({nodeId:k(),sessionsNow:A(),sessionsStarted:A(),observedShare:A().nullable(),peakSessions:A(),yieldsAway:A(),devices:P(kD).readonly()}),jD=F({deviceId:A(),deviceKey:k(),reason:z([`disabled`,`absent`])}),MD=F({policy:ED,windowMs:A(),observedForMs:A(),sessionsNow:A(),clusterPeakSessions:A(),nodes:P(AD).readonly(),stalePins:P(jD).readonly()}),ND=z([`hardware`,`benchmark`]),PD=z([`no-benchmark-results`,`partial-benchmark-results`]),FD=F({headroom:A().min(.3).max(.5).default(.4),source:ND.default(`hardware`)}),ID=F({deviceKey:k(),share:A(),modelId:k().nullable(),fps:A().nullable(),measured:j(),suggestedMaxSessions:A().nullable()}),LD=F({nodeId:k(),share:A().nullable(),capacitySessions:A(),devices:P(ID).readonly(),skippedReason:k().nullable(),capacitySource:ND.nullable(),capacityFallback:PD.nullable()}),RD=F({headroom:A(),source:ND,cameraFps:A(),minSessionsPerDevice:A(),nodes:P(LD).readonly()}),zD=z([`hardware`,`benchmark`,`manual`]),BD=F({source:zD});F({nodes:R(k(),A()),devices:R(k(),R(k(),A()))});var VD=F({deviceKey:k(),eligible:j(),configuredPct:A(),effectivePct:A()}),HD=F({nodeId:k(),eligible:j(),configuredPct:A(),effectivePct:A(),capacitySource:ND.nullable(),capacityFallback:PD.nullable(),devices:P(VD).readonly()}),UD=F({source:zD,policy:ED,autoPending:j(),computedAt:A().nullable(),trigger:k().nullable(),nodes:P(HD).readonly(),nodeWeights:R(k(),A()),deviceWeights:R(k(),R(k(),A()))}),WD={fpsPerStream:10,budgetMinutes:45,minBudgetMinutes:10,maxBudgetMinutes:120,staleAfterDays:30,settleSec:5,measureSec:20,drainTimeoutSec:120,maxModelsPerDevice:6},GD=z([`device`,`pipeline`]),KD=F({deviceKey:k().min(1),modelIds:P(k().min(1)).min(1).max(WD.maxModelsPerDevice)}),qD=F({nodeId:k().min(1),devices:P(KD).min(1),phases:P(GD).min(1).default([`device`,`pipeline`]),steps:P(k().min(1)).default([]),fpsPerStream:A().int().min(1).max(30).default(WD.fpsPerStream),budgetMinutes:A().int().min(WD.minBudgetMinutes).max(WD.maxBudgetMinutes).default(WD.budgetMinutes),keepDownloadedModels:j().default(!1),acceptInsufficientHeadroom:j().default(!1)}),JD=F({kind:z([`benchmark-active`,`node-offline`,`unknown-device`,`no-phase`,`insufficient-headroom`]),detail:k(),overridable:j()}),YD=F({deviceId:A(),placedOnNode:j(),pinnedToNode:j()}),XD=F({deviceId:A(),reason:B(`only-frame-source`)}),ZD=F({nodeId:k(),online:j(),moving:P(YD).readonly(),staying:P(XD).readonly(),estimatedDurationMs:A(),budgetMs:A(),phases:P(GD).readonly(),steps:P(k()).readonly(),devices:P(KD).readonly(),headroom:F({sessionsNow:A(),otherNodesCapacitySessions:A().nullable()}),refusals:P(JD).readonly(),canStart:j()}),QD=F({phase:z([`preparing`,`device`,`pipeline`,`cleanup`]),deviceKey:k().nullable(),modelId:k().nullable(),load:A().nullable(),cellsDone:A(),cellsTotal:A(),message:k()}),$D=z([`p95`,`drops`,`errors`,`stall`,`cpu`,`ram`,`none`]),eO=F({load:A(),pass:j(),p95Ms:A(),dropRatio:A(),fps:A(),cpuPct:A().nullable(),ramFreePct:A().nullable(),failReasons:P(k()).readonly()}),tO=L(`phase`,[F({phase:B(`device`),deviceKey:k(),modelId:k(),p50Ms:A(),p95Ms:A(),p99Ms:A(),fps:A(),kMax:A(),limitedBy:$D,warmupMs:A(),ramp:P(eO).readonly()}),F({phase:B(`pipeline`),deviceKey:k(),modelId:k(),steps:P(k()).readonly(),maxSessions:A(),limitedBy:$D,stepsFired:P(k()).readonly(),warmupMs:A(),ramp:P(eO).readonly()})]),nO=F({pipelineVersion:k().nullable(),cpuModel:k().nullable(),ramGb:A().nullable(),os:k().nullable(),pools:R(k(),F({runtime:k(),numWorkers:A(),concurrency:A(),batchMode:k()})).default({})}),rO=F({id:k(),revision:k().nullable(),frames:A(),width:A(),height:A()}),iO=F({runId:k().min(1),devices:P(KD).min(1),phases:P(GD).min(1),steps:P(k()).default([]),fpsPerStream:A().int().min(1).max(30),deadlineAtMs:A(),settleSec:A().min(0).max(60).default(WD.settleSec),measureSec:A().min(2).max(300).default(WD.measureSec),keepDownloadedModels:j().default(!1)}),aO=z([`running`,`done`,`failed`,`aborted`]),oO=F({runId:k(),nodeId:k(),state:aO,progress:QD.nullable(),cells:P(tO).readonly(),fingerprint:nO.nullable(),clip:rO.nullable(),activeCameraIds:P(A()).readonly(),deletedModels:P(k()).readonly(),error:k().nullable(),startedAtMs:A(),finishedAtMs:A().nullable()}),sO=z([`draining`,`measuring`,`restoring`,`done`,`failed`,`aborted`]),cO=z([`completed`,`operator-abort`,`deadline`,`node-lost`,`runner-lost`,`hub-restart`,`drain-timeout`,`failed`]),lO=F({runId:k(),nodeId:k(),state:sO,plan:qD,startedAtMs:A(),deadlineAtMs:A(),finishedAtMs:A().nullable(),endReason:cO.nullable(),error:k().nullable(),moved:P(A()).readonly(),staying:P(A()).readonly(),contaminated:j(),progress:QD.nullable(),resultIds:P(k()).readonly()}),uO=F({modeNodeId:k().nullable(),run:lO.nullable()}),dO=F({id:k(),runId:k(),nodeId:k(),cell:tO,fpsPerStream:A(),fingerprint:nO.nullable(),clip:rO.nullable(),contaminated:j(),stayingCameras:P(A()).readonly(),partialRun:j(),measuredAtMs:A()}),fO=F({nodeId:k().optional(),deviceKey:k().optional()}),pO=dO.extend({standing:z([`fresh`,`stale`,`superseded`]),staleWhy:z([`age`,`runtime`,`pool-tuning`]).nullable()});F({runId:k(),nodeId:k(),startedAtMs:A(),deadlineAtMs:A(),plan:qD,moved:P(A()).readonly(),staying:P(A()).readonly()});var mO=F({nodeId:k(),reachable:j(),devices:P(F({deviceKey:k(),enabled:j(),available:j(),suggested:P(k()).readonly(),all:P(k()).readonly(),currentModelId:k().nullable()})).readonly(),steps:P(F({id:k(),name:k(),slot:k()})).readonly()});F({activeCameras:A(),throttledCameras:A(),avgInferenceTimeMs:A(),queueDepth:A()});var hO=F({detectionMode:z([`disabled`,`always-on`,`on-motion`]),configuredFps:A(),actualFps:A(),queueDepth:A(),avgInferenceTimeMs:A(),droppedFrames:A(),phase:z([`idle`,`watching`,`active`])}),gO=hO.extend({deviceId:A()}),_O=z([`polygon`,`tripwire`]),vO=F({x:A(),y:A()}),yO=F({id:k(),name:k(),kind:_O.default(`polygon`),polygon:P(vO).readonly(),color:k().default(`#3b82f6`)}),bO={name:`zones`,scope:`device`,mode:`singleton`,deviceTypes:[U.Camera],methods:{listZones:V(F({deviceId:A()}),P(yO).readonly()),addZone:V(F({deviceId:A(),zone:yO}),N(),{kind:`mutation`,auth:`admin`}),removeZone:V(F({deviceId:A(),zoneId:k()}),N(),{kind:`mutation`,auth:`admin`}),updateZone:V(F({deviceId:A(),zone:yO}),N(),{kind:`mutation`,auth:`admin`})},runtimeState:F({zones:P(yO).readonly()}),durability:`restored`,history:`none`},xO=F({x:A(),y:A(),w:A(),h:A()}),SO=F({bytes:vl(Uint8Array).optional(),jpeg:k().optional(),jpegBytes:vl(Uint8Array).optional(),width:A().int().positive(),height:A().int().positive(),tier:z([`native`,`ram-fullframe`]).optional()}),CO=z([`keyFrame`,`thumbnail`]),wO=z([`handle-gone`,`encode-failed`]),TO=L(`parked`,[F({parked:B(!0),nodeId:k(),width:A().int().positive(),height:A().int().positive(),bytes:A().int().nonnegative(),replaced:j()}),F({parked:B(!1),nodeId:k(),reason:wO,handleAgeMs:A().nullable(),detail:k().optional()})]),Bee=F({jpeg:k().optional(),jpegBytes:vl(Uint8Array).optional(),width:A().int().positive(),height:A().int().positive(),timestamp:A(),parkedAt:A()}),EO=F({bbox:xO,className:k()}),DO=F({stepId:k(),className:k(),score:A(),bbox:xO.optional(),embedding:k().optional(),embeddingMagnitude:A().optional(),embeddingModelId:k().optional(),label:k().optional(),labelTier:I([B(1),B(2)]).optional(),labelModelId:k().optional(),alignedCropJpeg:k().optional(),nativeFaceShortSidePx:A().optional(),landmarks:P(F({x:A(),y:A()})).optional()}),OO=z([`unknown-step`,`model-not-servable`,`unreadable-frame`,`execution-failed`]),kO=L(`kind`,[F({kind:B(`ran`),nodeId:k(),modelId:k(),details:P(DO)}),F({kind:B(`refused`),nodeId:k(),reason:OO,detail:k()})]),AO={min:0,max:6e4,default:3e4,step:500},jO={min:0,max:6e5,default:12e4,step:5e3},MO={min:5e3,max:6e5,default:9e4,step:5e3},NO={min:1,max:30,default:4,step:1},PO={min:1,max:30,default:10,step:1},FO={min:0,max:300,default:300,step:5},IO={min:1,max:10,default:4,step:1},LO={min:0,max:30,default:12,step:1},RO=z([`onboard`,`analyzer`,`device-activity`]),zO=F({source:RO,triggeredBy:iw,sensorName:k().optional()}),BO=P(RO),VO={analyzer:`Frame-diff Analyzer (motion addon)`,onboard:`Camera sensors`,"device-activity":`Device activity (the device says it is working)`},HO=[`analyzer`,`onboard`,`device-activity`],UO=yl(e=>Array.isArray(e)&&e.length>1?e.slice(0,1):e,P(Yw).max(1)),WO=F({deviceId:A(),detected:j(),source:RO.default(`analyzer`),regions:P(Bb).readonly().optional()}),GO=L(`kind`,[F({kind:B(`local-broker`)}),F({kind:B(`remote-restream`),ownerNodeId:k(),ownerReachableHost:k().optional(),hubHostnameOverride:k().optional()})]).describe(`Per-camera frame-source mode for the runner (P2c)`),KO=F({modelId:k().optional(),settings:R(k(),M()).optional()}),qO=F({deviceKey:k(),weight:A().positive().default(1),maxSessions:A().int().positive().nullable().default(null),steps:R(k(),KO).optional()}),JO=F({deviceId:A(),detectionMode:z([`disabled`,`always-on`,`on-motion`]).default(`on-motion`),audioMode:z([`disabled`,`always-on`,`on-motion`]).default(`always-on`),motionCooldownMs:A().min(AO.min).default(AO.default),maxSessionHoldMs:A().min(jO.min).max(jO.max).optional(),audioMotionWindowMs:A().min(MO.min).max(MO.max).optional(),motionFps:A().min(NO.min).max(NO.max).default(NO.default),detectionFps:A().min(PO.min).max(PO.max).default(PO.default),motionStreamId:k(),detectionStreamId:k(),audioStreamPick:jl.optional(),motionSources:BO.default([`analyzer`]),sessionTrigger:zO.optional(),detectionSources:UO.default([`pipeline`]),pipelineEnabled:j().default(!0),steps:P(VE).readonly().optional(),audio:F({modelId:k().optional(),enabled:j()}).nullable().optional(),zones:P(yO).readonly().default([]),onboardMotionDrivesAnalyzer:j().default(!0),preRollInferenceEnabled:j().default(!0),preRollInferenceFrames:A().min(LO.min).max(LO.max).default(LO.default),occupancyRecheckEnabled:j().default(!0),occupancyRecheckSec:A().min(FO.min).max(FO.max).default(FO.default),occupancyRecheckFrames:A().min(IO.min).max(IO.max).default(IO.default),frameSource:GO.default({kind:`local-broker`}),deviceKey:k().optional(),inferenceDevices:P(qO).readonly().optional()});HO.map(e=>e===`onboard`?{value:e,label:VO[e],description:`The camera's own motion, plus any sensor attached to it`}:{value:e,label:VO[e]}),NO.min,NO.max,NO.step,NO.default,PO.min,PO.max,PO.step,PO.default,AO.min,AO.max,AO.step,AO.default,jO.min,jO.max,jO.step,jO.default,MO.min,MO.max,MO.step,MO.default,LO.min,LO.max,LO.step,LO.default,FO.min,FO.max,FO.step,FO.default,IO.min,IO.max,IO.step,IO.default;var YO=F({nodeId:k(),attachedCameras:A(),activeCameras:A(),avgInferenceFps:A(),avgInferenceTimeMs:A(),queueDepthTotal:A(),devices:P(F({deviceKey:k(),backend:k(),attachedCameras:A()})).default([]),hardware:F({hasGpu:j(),inferenceBackend:k().optional(),cpuCores:A().optional()}),motionSliceWriter:B(`orchestrator`).optional()}),XO=F({framesDecoded:A(),framesAdmitted:A(),framesDroppedPixelFree:A(),viewsMaterialized:A(),viewsSkipped:A(),workerToRunnerBytes:A(),runnerToPoolRawBytes:A(),runnerToPoolJpegBytes:A(),onDemandFullFrameRequests:A(),onDemandCropRequests:A(),nativeHits:A(),nativeMisses:A(),tileHits:A(),tileMisses:A(),fallbackHits:A(),fallbackMisses:A(),retainedWritesAvoided:A(),residentRefs:A(),residentBytes:A(),releases:A(),evictions:A(),staleMisses:A()}),ZO=F({node:XO,cameras:P(XO.extend({deviceId:A()}))}),QO=F({nodeId:k(),activeCameras:A(),throttledCameras:A(),avgInferenceTimeMs:A(),queueDepth:A(),frameLazy:ZO.optional()}),$O=z([`not-attached`,`battery-asleep`,`not-watching`,`already-bursting`]),ek={name:`pipeline-runner`,scope:`system`,mode:`singleton`,methods:{attachCamera:V(JO,F({success:B(!0)}),{kind:`mutation`}),detachCamera:V(F({deviceId:A()}),F({success:B(!0)}),{kind:`mutation`}),reportMotion:V(WO,F({success:B(!0)}),{kind:`mutation`}),getLocalLoad:V(N(),YO),getLocalMetrics:V(N(),QO),getCameraMetrics:V(F({deviceId:A()}),hO.nullable()),getAllCameraMetrics:V(N(),P(gO).readonly()),getLocalCameras:V(N(),P(A()).readonly()),requestOccupancyBurst:V(F({deviceId:A(),frames:A().int().positive().optional(),reason:k()}),F({started:j(),refusedBecause:$O.optional()}),{auth:`admin`,kind:`mutation`}),getNativeCrop:V(F({handle:Rl,bbox:xO,maxWidth:A().int().positive().optional(),acceptJpegBytes:j().optional(),encodeJpeg:j().optional()}),SO.nullable()),runDetailSubtree:V(F({deviceId:A(),frameHandle:Rl.optional(),frameJpeg:k().optional(),cropJpeg:k().optional(),parent:EO,steps:P(k()).optional(),supplied:F({stepId:k(),modelId:k(),boxes:P(F({bbox:xO,score:A()})).min(1)}).optional()}),F({details:P(DO)}).nullable(),{kind:`mutation`}),runStatelessStep:V(F({stepId:k(),modelId:k(),frameJpeg:k(),bbox:xO,className:k(),sourceDeviceId:A()}),kO,{kind:`mutation`}),parkTrackFrame:V(F({deviceId:A(),trackId:k(),kind:CO,handle:Rl,bbox:xO,maxWidth:A().int().positive().optional(),timestamp:A()}),TO,{kind:`mutation`}),getParkedTrackFrame:V(F({deviceId:A(),trackId:k(),kind:CO,acceptJpegBytes:j().optional()}),Bee.nullable()),releaseParkedTrackFrames:V(F({deviceId:A(),trackId:k()}),F({released:A().int().nonnegative()}),{kind:`mutation`}),startNodeBench:V(iO,F({accepted:B(!0),runId:k()}),{kind:`mutation`,auth:`admin`}),getNodeBenchStatus:V(F({runId:k()}),oO.nullable(),{auth:`admin`}),abortNodeBench:V(F({runId:k()}),F({aborted:j()}),{kind:`mutation`,auth:`admin`})}},tk=F({engine:jE.optional(),steps:P(VE).readonly(),audio:F({engine:jE.optional(),modelId:k().optional(),enabled:j(),settings:R(k(),M()).readonly().optional()}).nullable().optional()}),nk=F({modelId:k().optional(),settings:R(k(),M()).optional(),jumpDeviceKey:k().optional()}),rk=F({maxCameras:A().int().nonnegative().nullable().default(null),detectWeight:A().positive().optional(),detect:j().optional(),decode:j().optional(),audio:j().optional(),ingest:j().optional(),decodeBudgetMb:A().int().min(1024).max(65536).optional(),maxLiveDecodeWorkers:A().int().min(1).max(32).optional(),reachableHost:k().optional(),color:cd.optional(),inferenceDevices:R(k(),F({enabled:j(),weight:A().positive().optional(),maxSessions:A().int().positive().optional(),steps:R(k(),nk).optional()})).optional()}),ik=F({steps:P(VE).readonly(),audio:F({modelId:k(),enabled:j()}).nullable()}),ak=F({modelId:k().optional(),settings:R(k(),M()).readonly().optional()}),ok=R(k(),R(k(),M()).readonly()),sk=z([`pipeline`,`onboard`,`none`]),ck=F({stepToggles:R(k(),j()).optional(),stepSettings:ok.optional(),stepOverridesByDevice:R(k(),R(k(),R(k(),ak))).optional(),pipelineByAgent:R(k(),ik).optional()}),lk=F({deviceId:A(),agentNodeId:k(),pinned:j(),reason:z([`manual`,`capacity`,`hardware-affinity`,`failover`,`rebalance`]),assignedAt:A()}),uk=F({nodeId:k(),online:j(),load:YO,score:A(),decodeHwaccel:k().nullable()}),dk=F({totalAgents:A(),onlineAgents:A(),totalCameras:A(),attachedCameras:A(),activeCameras:A(),avgInferenceTimeMs:A(),queueDepth:A()}),fk=R(k(),k()),pk=F({ownerNodeId:k(),reachableHost:k().optional(),configIssue:k().optional()}),mk=F({streams:P(F({camStreamId:k(),codec:k(),width:A(),height:A(),fps:A(),kind:k()})).readonly()}),hk=F({detectionNodeId:k().nullable(),decoderNodeId:k().nullable(),audioNodeId:k().nullable(),sourceNodeId:k().nullable(),pinned:F({detection:j(),decoder:j(),audio:j()}),reasons:F({detection:k().optional(),decoder:k().optional(),audio:k().optional()})}),gk=F({profiles:P(F({profile:k(),status:k(),codec:k(),width:A(),height:A(),subscribers:A(),inFps:A().nullable()})).readonly(),webrtcSessions:A(),rtspRestream:j()}),_k=F({nodeId:k()}),vk=F({enabled:j(),fps:A()}),yk=F({state:z([`idle`,`installing`,`verifying`,`ready`,`failed`]),error:k().optional()}),bk=z([`idle`,`watching`,`active`]),xk=F({nodeId:k(),engine:F({backend:k(),device:k()}),phase:bk,configuredFps:A(),actualFps:A(),queueDepth:A(),avgInferenceMs:A(),provisioning:yk}),Sk=F({nodeId:k(),enabled:j()}),Ck=F({mode:gf,active:j(),storageBytes:A()}),wk=F({stage:z([`source`,`broker`,`detection`,`recording`,`switches`]),reason:z([`timeout`,`error`,`partial`]),elapsedMs:A()}),Tk=F({state:z([`idle`,`running`,`done`,`error`]),total:A().int().nonnegative(),completed:A().int().nonnegative(),currentDeviceId:A().int().nullable(),failed:P(A().int()).readonly(),mediaDropped:A().int().nonnegative(),tracks:A().int().nonnegative(),events:A().int().nonnegative(),startedAtMs:A().int().nullable(),finishedAtMs:A().int().nullable(),error:k().nullable()}),Ek=F({deviceId:A(),assignment:hk,source:mk,broker:gk.nullable(),decoder:_k.nullable(),motion:vk.nullable(),detection:xk.nullable(),audio:Sk.nullable(),recording:Ck.nullable(),switchedOff:P(Sd).readonly(),cameraSensors:gw.optional(),degraded:P(wk).readonly(),fetchedAt:A()}),Dk=z([`disabled`,`unavailable`,`cannot-host-camera-root`,`accelerator-preferred`]),Ok=F({key:k(),backend:k(),device:k(),format:z(Gl),available:j(),enabled:j(),weight:A(),maxSessions:A().nullable(),defaultModelId:k(),steps:R(k(),nk).optional(),exclusion:Dk.nullable()}),kk=L(`kind`,[F({kind:B(`stored`),modelId:k()}),F({kind:B(`absent`),defaultModelId:k()}),F({kind:B(`unreadable`),reason:z(_w),error:k().optional()})]),Ak=F({nodeId:k(),reachable:j(),devices:P(Ok).readonly()}),jk=F({deviceId:A().int().nonnegative(),config:lw.nullable()}),Mk=z([`unknown-camera`,`out-of-range`,`no-burst-producer`,`already-looked`]),Nk={name:`pipeline-orchestrator`,scope:`system`,mode:`singleton`,nodeIdMode:`data`,exposesDeviceSettings:!0,methods:{requestOccupancyLook:V(F({deviceId:A().int().nonnegative(),afterMs:A().finite(),reason:k()}),F({scheduled:j(),dueInMs:A().optional(),refusedBecause:Mk.optional()}),{kind:`mutation`,auth:`admin`}),pauseForStorageMigration:V(Af,F({paused:B(!0)}),{kind:`mutation`,auth:`admin`}),resumeForStorageMigration:V(Af,F({resumed:B(!0)}),{kind:`mutation`,auth:`admin`}),assignPipeline:V(F({deviceId:A(),agentNodeId:k()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),unassignPipeline:V(F({deviceId:A()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),setPipelineDevicePin:V(F({deviceId:A(),deviceKey:k()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),getPipelineDevicePin:V(F({deviceId:A()}),F({deviceKey:k().nullable()})),rebalance:V(N(),F({migrated:A(),skipped:P(F({deviceId:A(),targetNodeId:k(),reason:k()})).default([])}),{kind:`mutation`,auth:`admin`}),getPipelineAssignments:V(N(),P(lk).readonly()),getPipelineAssignment:V(F({deviceId:A()}),lk.nullable()),getAgentLoad:V(N(),P(uk).readonly()),getClusterModelChoice:V(F({stepId:k()}),kk),getGlobalMetrics:V(N(),dk),getCameraMetrics:V(F({deviceId:A()}),hO.nullable()),getCapabilityBindings:V(F({nodeId:k()}),fk),setCapabilityBinding:V(F({nodeId:k(),capName:k(),addonId:k()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),getIngestOwner:V(N(),pk),assignAudio:V(F({deviceId:A(),nodeId:k()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),unassignAudio:V(F({deviceId:A()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),getAudioAssignment:V(F({deviceId:A()}),F({nodeId:k(),pinned:j(),assignedAt:A()}).nullable()),getAudioNodeLoad:V(N(),P(F({nodeId:k(),deviceCount:A()}))),getAudioAssignments:V(N(),P(F({deviceId:A(),nodeId:k(),pinned:j(),assignedAt:A()}))),getAgentSettings:V(F({agentNodeId:k()}),rk.nullable()),listAgentSettings:V(N(),P(F({nodeId:k(),settings:rk})).readonly()),removeAgentSettings:V(F({agentNodeId:k()}),F({success:j(),removed:j()}),{kind:`mutation`,auth:`admin`}),setAgentMaxCameras:V(F({agentNodeId:k(),maxCameras:A().int().nonnegative().nullable()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),setAgentCapabilities:V(F({agentNodeId:k(),detect:j().nullable().optional(),audio:j().nullable().optional(),ingest:j().nullable().optional()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),setAgentDecodeLimits:V(F({agentNodeId:k(),decodeBudgetMb:A().int().min(1024).max(65536).nullable().optional(),maxLiveDecodeWorkers:A().int().min(1).max(32).nullable().optional()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),setAgentReachableHost:V(F({agentNodeId:k(),reachableHost:k().nullable().optional(),color:cd.nullable().optional()}).refine(e=>e.reachableHost!==void 0||e.color!==void 0,{message:`reachableHost or color required`}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),setAgentInferenceDevices:V(F({agentNodeId:k(),inferenceDevices:R(k(),F({enabled:j(),weight:A().positive().optional(),maxSessions:A().int().positive().optional(),steps:R(k(),nk).optional()}))}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),getNodeInferenceDevices:V(F({nodeId:k()}),Ak),resetNodePipelineDefaults:V(F({agentNodeId:k()}),F({success:B(!0),effectiveModelId:k().nullable(),clearedCameraOverrides:A()}),{kind:`mutation`,auth:`admin`}),planAutoTune:V(xD,SD,{auth:`admin`}),applyAutoTune:V(CD,TD,{kind:`mutation`,auth:`admin`}),setLoadBalancingShares:V(DD,F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),getPlacementStats:V(OD,MD,{auth:`admin`}),suggestShares:V(FD,RD,{auth:`admin`}),getEffectiveShares:V(N(),UD,{auth:`admin`}),setShareSource:V(BD,F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),getNodeBenchmarkPreflight:V(qD,ZD,{auth:`admin`}),startNodeBenchmark:V(qD,L(`kind`,[F({kind:B(`started`),runId:k()}),F({kind:B(`refused`),preflight:ZD})]),{kind:`mutation`,auth:`admin`}),getNodeBenchmarkStatus:V(N(),uO,{auth:`admin`}),abortNodeBenchmark:V(F({runId:k()}),F({aborted:j()}),{kind:`mutation`,auth:`admin`}),getNodeBenchmarkCandidates:V(F({nodeId:k()}),mO,{auth:`admin`}),listNodeBenchmarkResults:V(fO,P(pO).readonly(),{auth:`admin`}),deleteNodeBenchmarkResult:V(F({id:k()}),F({deleted:j()}),{kind:`mutation`,auth:`admin`}),getCameraSettings:V(F({deviceId:A()}),ck.nullable()),setCameraStepToggle:V(F({deviceId:A(),addonId:k(),enabled:j().nullable()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),getCameraDetectionSource:V(F({deviceId:A()}),F({source:sk,explicit:j(),onboard:F({available:j(),geometry:z([`boxed`,`while-streaming`,`flag-only`,`unknown`])})})),setCameraDetectionSource:V(F({deviceId:A(),source:sk}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),getCameraStepOverrides:V(F({deviceId:A()}),R(k(),R(k(),R(k(),ak))).nullable()),setCameraStepOverride:V(F({deviceId:A(),agentNodeId:k(),deviceKey:k(),addonId:k(),patch:ak.nullable()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),setCameraStepSettings:V(F({deviceId:A(),addonId:k(),settings:R(k(),M()).nullable()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),setCameraPipelineForAgent:V(F({deviceId:A(),agentNodeId:k(),pipeline:ik.nullable()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),resolvePipeline:V(F({deviceId:A(),agentNodeId:k().optional()}),tk),getCameraSwitches:V(F({deviceId:A()}),Dd),setCameraSwitch:V(F({deviceId:A(),switchId:Sd,enabled:j()}),Dd,{kind:`mutation`,auth:`admin`}),getCameraStatus:V(F({deviceId:A()}),Ek),getCameraStatuses:V(F({deviceIds:P(A()).optional()}),P(Ek).readonly()),setCameraSensors:V(jk,F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),reconcileFromDisk:V(N(),Tk,{kind:`mutation`,auth:`admin`}),getReconcileFromDiskStatus:V(N(),Tk,{auth:`admin`})}},Pk={motion:`motion`,audio:`audio`,person:`person`,vehicle:`vehicle`,animal:`animal`,package:`package`,door:`door`,pir:`pir`,smoke:`smoke`,water:`water`,button:`button`,generic:`generic`,gas:`smoke`,vibration:`generic`,tamper:`generic`,presence:`person`,lock:`generic`,siren:`generic`,switch:`generic`,doorbell:`button`};function Fk(e){return Pk[e]??`generic`}var Ik={contact:`contact`,motion:`motion-sensor`,smoke:`smoke`,flood:`flood`,gas:`gas`,"carbon-monoxide":`carbon-monoxide`,vibration:`vibration`,tamper:`tamper`,presence:`presence`,"enum-sensor":`enum-sensor`,"event-emitter":`device-event`,"lock-control":`lock`,cover:`cover`,switch:`switch`,button:`button`,doorbell:`doorbell`};function Lk(e,t){let n=Nx[t];if(n===void 0)throw Error(`EVENT_KIND_BY_CAP: cap '${e}' maps to unknown taxonomy kind '${t}'`);return{...n,icon:Fk(n.iconId)}}var Rk=Object.freeze(Object.fromEntries(Object.entries(Ik).map(([e,t])=>[e,Lk(e,t)]))),zk=z([`workspace`,`baked`,`data-root`]),Bk=z([`idle`,`checking`,`staging`,`pending-restart`,`awaiting-confirmation`]),Vk=F({state:z([`in-sync`,`behind-patch`,`behind-series`,`ahead`,`unknown`]),seedVersion:k().nullable(),contractVersion:k().nullable(),contractSource:z([`registry`,`running`]).nullable(),message:k()}),Hk=F({kind:z([`docker`,`electron`,`native`,`contradictory`,`unknown`]),evidence:P(F({fact:z([`dockerenv-file`,`proc-1-cgroup`,`platform`,`electron-app-version-env`]),mode:z([`observed`,`declared`]),holds:j(),detail:k()})),currentVersion:k().nullable()}),Uk=F({fromVersion:k(),toVersion:k().nullable(),atMs:A(),reason:k()}),Wk=F({packageName:k(),runningVersion:k().nullable(),nodeRuntimeVersion:k().nullable(),activeVersion:k().nullable(),installedVersion:k().nullable().optional(),restartRequired:j().optional(),previousVersion:k().nullable(),seedVersion:k().nullable(),latestVersion:k().nullable(),updateAvailable:j(),bootMode:zk,updateState:Bk,pendingVersion:k().nullable(),rolledBack:Uk.nullable(),stateFileCorrupt:j(),lastCheckedAtMs:A().nullable(),imageContract:Vk.optional(),wrapper:Hk.optional()}),Gk=F({packageName:k(),runningVersion:k().nullable(),latestVersion:k().nullable(),updateAvailable:j(),checkedAtMs:A(),error:k().nullable(),pendingVersion:k().nullable().optional(),restartRequired:j().optional()}),Kk=z([`staged`,`restart-scheduled`,`already-current`,`refused`,`failed`]),qk=F({accepted:j(),targetVersion:k().nullable(),restarting:j(),message:k(),outcome:Kk.optional(),reason:k().nullable().optional(),error:k().nullable().optional()}),Jk={name:`server-management`,scope:`system`,mode:`singleton`,methods:{getServerPackageStatus:V(N(),Wk,{auth:`admin`}),checkServerUpdate:V(N(),Gk,{kind:`mutation`,auth:`admin`}),applyServerUpdate:V(F({version:k().optional()}),qk,{kind:`mutation`,auth:`admin`,timeoutMs:16*6e4}),rollbackServerUpdate:V(N(),qk,{kind:`mutation`,auth:`admin`}),restartServer:V(N(),qk,{kind:`mutation`,auth:`admin`})},mount:{kind:`server-provided`}},Yk=Qs(),Xk=F({to:I([Yk,P(Yk).min(1)]),cc:P(Yk).optional(),bcc:P(Yk).optional(),from:k().optional(),replyTo:k().optional(),subject:k(),text:k(),html:k().optional()}),Zk=F({messageId:k(),accepted:P(Yk).default([]),rejected:P(Yk).default([])}),Qk=F({ready:j(),host:k(),error:k().optional(),lastVerifiedAt:A().optional()}),$k={name:`smtp-provider`,scope:`system`,mode:`collection`,internal:!0,providerKind:`email`,methods:{sendEmail:V(Xk,Zk,{kind:`mutation`,auth:`admin`,access:`create`}),verify:V(N(),Qk,{kind:`mutation`,auth:`admin`,access:`view`}),getStatus:V(N(),Qk,{auth:`admin`})}},eA=F({base64:k(),contentType:k()}),tA=F({lastCapturedAt:A().nullable(),cacheAgeMs:A().nullable(),lastBytes:A().nullable(),lastStreamId:k().nullable()}),nA={name:`snapshot`,scope:`device`,deviceNative:!0,mode:`singleton`,kind:`wrapper`,defaultActive:!0,deviceTypes:[U.Camera],exposesDeviceSettings:!0,methods:{getSnapshot:V(F({deviceId:A(),streamId:k().optional(),force:j().optional()}),eA.nullable()),invalidateCache:V(F({deviceId:A()}),N(),{kind:`mutation`,auth:`admin`}),getSnapshotOverview:ql(F({deviceIds:P(A()).min(1).max(200)}),P(F({deviceId:A(),lastCapturedAt:A().nullable(),cacheAgeMs:A().nullable(),etag:k().nullable()}))),getDebugState:ql(F({deviceId:A()}),F({battery:F({sleeping:j(),lastUpdated:A(),lastContactAt:A().optional()}).nullable(),state:F({isBattery:j(),reason:z([`disabled`,`offline`,`sleeping`,`unreachable`,`waking`]).nullable()}),frame:F({capturedAt:A().nullable(),ageMs:A().nullable()}),waking:j()})),getSnapshotLinks:ql(F({targets:P(F({deviceId:A(),width:A().int().positive().optional()})).min(1).max(200)}),P(F({deviceId:A(),url:k().nullable(),capturedAt:A().nullable(),ageMs:A().nullable(),expiresAt:A().nullable(),width:A().nullable(),neverCaptured:j(),sleeping:j(),stateReason:z([`disabled`,`offline`,`sleeping`,`unreachable`,`waking`]).nullable(),battery:j()})))},status:{schema:tA,kind:`poll`}},rA=F({userId:k(),username:k(),isAdmin:j(),provider:k(),email:k().optional(),displayName:k().optional(),hubUrl:k().optional(),scopes:P(ZC).optional(),redirectUri:k().optional(),integrationId:k().optional(),jti:k().optional(),codeChallenge:k().optional(),sessionId:k().optional(),refreshTtl:I([A().int().positive(),B(`never`)]).optional(),linkIntent:k().optional(),issuer:k().optional(),browserBinding:k().optional(),app:F({codeChallenge:k(),state:k(),purpose:z([`new-session`,`step-up`]),redirect:k()}).optional()}),iA={name:`sso-bridge`,scope:`system`,mode:`singleton`,internal:!0,methods:{signBridgeToken:V(F({claims:rA,ttlSec:I([A().int().positive(),B(`never`)]).optional()}),F({token:k()}),{auth:`admin`}),verifyBridgeToken:V(F({token:k()}),rA.nullable(),{auth:`admin`})}},aA=L(`shouldSaveDiskSpace`,[F({providerId:k().min(1),displayName:k().min(1),configSchema:M(),nodeLocal:j(),shouldSaveDiskSpace:B(!0),minFreePercent:A().min(0).max(100)}),F({providerId:k().min(1),displayName:k().min(1),configSchema:M(),nodeLocal:j(),shouldSaveDiskSpace:B(!1),minFreePercent:B(null)})]),oA={name:`storage`,scope:`system`,mode:`singleton`,methods:{resolve:V(F({location:hp,relativePath:k()}),k(),{auth:`admin`}),write:V(F({location:hp,relativePath:k(),data:vl(Uint8Array)}),N(),{kind:`mutation`,auth:`admin`}),read:V(F({location:hp,relativePath:k()}),vl(Uint8Array),{auth:`admin`}),exists:V(F({location:hp,relativePath:k()}),j(),{auth:`admin`}),list:V(F({location:hp,prefix:k().optional()}),P(k()).readonly(),{auth:`admin`}),delete:V(F({location:hp,relativePath:k()}),N(),{kind:`mutation`,auth:`admin`}),getAvailableSpace:V(F({location:hp}),A().nullable()),beginUpload:V(F({location:hp,relativePath:k(),sizeBytes:A().optional()}),F({uploadId:k()}),{kind:`mutation`,auth:`admin`}),writeChunk:V(F({uploadId:k(),offset:A(),data:vl(Uint8Array)}),N(),{kind:`mutation`,auth:`admin`}),finalizeUpload:V(F({uploadId:k()}),N(),{kind:`mutation`,auth:`admin`}),abortUpload:V(F({uploadId:k()}),N(),{kind:`mutation`,auth:`admin`}),beginDownload:V(F({location:hp,relativePath:k()}),F({downloadId:k(),sizeBytes:A()}),{kind:`mutation`,auth:`admin`}),readChunk:V(F({downloadId:k(),offset:A(),length:A()}),vl(Uint8Array),{auth:`admin`}),endDownload:V(F({downloadId:k()}),N(),{kind:`mutation`,auth:`admin`}),listLocations:V(F({type:fp.optional()}),P(pp).readonly()),listLocationDeclarations:V(N(),P(_p).readonly()),upsertLocation:V(pp.omit({createdAt:!0,updatedAt:!0}),pp,{kind:`mutation`,auth:`admin`}),deleteLocation:V(F({id:k(),force:j().optional()}),N(),{kind:`mutation`,auth:`admin`}),listDrainProgress:V(N(),P(mp).readonly()),testLocation:V(F({id:k()}),F({ok:j(),error:k().optional()}),{auth:`admin`}),listProviders:V(N(),P(aA).readonly()),testConfig:V(F({providerId:k(),locationId:k().optional(),config:R(k(),M())}),F({ok:j(),error:k().optional()}),{auth:`admin`})}},sA=F({bytes:A().int().nonnegative()}),cA=F({reclaimedBytes:A().int().nonnegative(),exhausted:j()}),lA={name:`storage-evictable`,scope:`system`,mode:`collection`,internal:!0,methods:{getEvictableUsage:V(F({locationId:k()}),sA,{auth:`admin`}),evict:V(F({locationId:k(),targetBytes:A().int().positive()}),cA,{kind:`mutation`,auth:`admin`})}},uA={name:`storage-migration`,scope:`system`,mode:`singleton`,methods:{plan:V(Vf,Jf,{auth:`admin`}),start:V(Vf,F({jobId:k()}),{kind:`mutation`,auth:`admin`}),status:V(F({jobId:k().optional()}),Kf.nullable(),{auth:`admin`}),cancel:V(F({jobId:k()}),F({cancelled:j()}),{kind:`mutation`,auth:`admin`}),movers:V(F({}),P(Yf).readonly(),{auth:`admin`}),residue:V(F({}),P(Xf).readonly(),{auth:`admin`}),drain:V(Zf,F({jobId:k()}),{kind:`mutation`,auth:`admin`}),cleanupStart:V(cp,F({jobId:k()}),{kind:`mutation`,auth:`admin`}),cleanupStatus:V(up,lp.nullable(),{auth:`admin`}),cleanupCancel:V(F({jobId:k()}),F({cancelled:j()}),{kind:`mutation`,auth:`admin`}),history:V(F({}),P(Kf).readonly(),{auth:`admin`})}},dA=F({locationId:k(),ownedBytes:A().int().nonnegative(),measuredAtMs:A().int().nonnegative()}),fA={name:`storage-occupancy`,scope:`system`,mode:`collection`,internal:!0,methods:{getOccupancy:V(F({locationIds:P(k()).readonly()}),P(dA).readonly(),{auth:`admin`})}},pA=L(`shouldSaveDiskSpace`,[F({providerId:k().min(1),displayName:k().min(1),configSchema:M(),nodeLocal:j(),shouldSaveDiskSpace:B(!0),minFreePercent:A().min(0).max(100)}),F({providerId:k().min(1),displayName:k().min(1),configSchema:M(),nodeLocal:j(),shouldSaveDiskSpace:B(!1),minFreePercent:B(null)})]),mA=F({ok:j(),error:k().optional()}),hA=F({location:pp,relativePath:k(),sizeBytes:A().optional()}),gA=F({uploadId:k()}),_A=F({uploadId:k(),offset:A(),data:vl(Uint8Array)}),vA=F({uploadId:k()}),yA=F({uploadId:k()}),bA=F({location:pp,relativePath:k()}),xA=F({downloadId:k(),sizeBytes:A()}),SA=F({downloadId:k(),offset:A(),length:A()}),CA=F({downloadId:k()}),wA={name:`storage-provider`,scope:`system`,mode:`collection`,internal:!0,methods:{getProviderInfo:V(N(),pA,{auth:`admin`}),testLocation:V(F({config:R(k(),M())}),mA,{auth:`admin`}),resolve:V(F({location:pp,relativePath:k()}),k(),{auth:`admin`}),write:V(F({location:pp,relativePath:k(),data:vl(Uint8Array)}),N(),{kind:`mutation`,auth:`admin`}),read:V(F({location:pp,relativePath:k()}),vl(Uint8Array),{auth:`admin`}),exists:V(F({location:pp,relativePath:k()}),j(),{auth:`admin`}),list:V(F({location:pp,prefix:k().optional()}),P(k()).readonly(),{auth:`admin`}),delete:V(F({location:pp,relativePath:k()}),N(),{kind:`mutation`,auth:`admin`}),getAvailableSpace:V(F({location:pp}),A().nullable(),{auth:`admin`}),beginUpload:V(hA,gA,{kind:`mutation`,auth:`admin`}),writeChunk:V(_A,N(),{kind:`mutation`,auth:`admin`}),finalizeUpload:V(vA,N(),{kind:`mutation`,auth:`admin`}),abortUpload:V(yA,N(),{kind:`mutation`,auth:`admin`}),beginDownload:V(bA,xA,{kind:`mutation`,auth:`admin`}),readChunk:V(SA,vl(Uint8Array),{auth:`admin`}),endDownload:V(CA,N(),{kind:`mutation`,auth:`admin`})}},TA=F({code:k().min(1),label:k().min(1),recommended:j()}),EA=F({signals:P(TA),lastFetchedAt:A()}),DA={name:`stream-signals`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:Object.values(U),runtimeState:EA,durability:`session`,history:`none`,methods:{listSignals:V(N(),P(TA).readonly())}},OA=M().nullable(),kA=R(k(),M()),AA=F({sessionId:k(),profileId:k(),label:k(),cols:A().int().positive(),rows:A().int().positive(),startedAt:A()}),jA=F({profileId:k(),label:k(),description:k().optional(),executable:k().optional(),args:P(k()).readonly().optional(),cwd:k().optional(),environment:P(k()).readonly().optional(),settingsSchema:OA.optional()}),MA=F({instanceId:k(),cameraStableId:k(),nodeId:k(),profileId:k(),profileLabel:k(),name:k(),enabled:j(),executable:k(),args:P(k()).readonly(),cwd:k(),environment:P(k()).readonly(),profileSettings:kA}),NA=F({stableId:k(),nodeId:k(),profileId:k(),profileLabel:k(),name:k(),adoptable:j()}),PA=L(`kind`,[F({seq:A().int().positive(),kind:B(`data`),data:k()}),F({seq:A().int().positive(),kind:B(`exit`),exitCode:A().int(),signal:A().int().optional()})]),FA=F({cursor:A().int().nonnegative(),reset:j(),snapshot:k().optional(),events:P(PA).readonly()}),IA={name:`terminal-session`,scope:`system`,mode:`singleton`,methods:{listProfiles:V(N(),P(jA).readonly(),{auth:`admin`}),listInstances:V(N(),P(MA).readonly(),{auth:`admin`}),createInstance:V(F({targetNodeId:k().min(1),profileId:k().min(1),name:k().trim().min(1).max(160).optional(),executable:k().max(1024).optional(),args:P(k().max(2048)).max(64).optional(),cwd:k().max(1024).optional(),environment:P(k().max(4096)).max(64).optional(),profileSettings:kA.optional()}),MA,{kind:`mutation`,auth:`admin`}),updateInstance:V(F({instanceId:k().min(1),name:k().trim().min(1).max(160).optional(),executable:k().max(1024).optional(),args:P(k().max(2048)).max(64).optional(),cwd:k().max(1024).optional(),environment:P(k().max(4096)).max(64).optional(),profileSettings:kA.optional()}),MA,{kind:`mutation`,auth:`admin`}),deleteInstance:V(F({instanceId:k().min(1)}),N(),{kind:`mutation`,auth:`admin`}),setInstanceEnabled:V(F({instanceId:k().min(1),enabled:j()}),MA,{kind:`mutation`,auth:`admin`}),listLegacyCameras:V(N(),P(NA).readonly(),{auth:`admin`}),adoptLegacyMonitor:V(F({stableId:k().min(1),name:k().trim().min(1).max(160).optional()}),MA,{kind:`mutation`,auth:`admin`}),listSessions:V(N(),P(AA).readonly(),{auth:`admin`}),openSession:V(F({profileId:k(),cols:A().int().positive(),rows:A().int().positive(),executable:k().max(1024).optional(),args:P(k().max(2048)).max(64).optional(),cwd:k().max(1024).optional(),environment:P(k().max(4096)).max(64).optional()}),AA,{kind:`mutation`,auth:`admin`}),resize:V(F({sessionId:k(),cols:A().int().positive(),rows:A().int().positive()}),N(),{kind:`mutation`,auth:`admin`}),pullOutput:V(F({sessionId:k(),afterSeq:A().int().nonnegative(),waitMs:A().int().min(0).max(2e3).default(0),waitForOutput:j().optional()}),FA,{kind:`mutation`,auth:`admin`,timeoutMs:15e3}),writeInput:V(F({sessionId:k(),data:k().max(64*1024)}),N(),{kind:`mutation`,auth:`admin`}),close:V(F({sessionId:k()}),N(),{kind:`mutation`,auth:`admin`})}},LA=F({urls:I([k(),P(k())]),username:k().optional(),credential:k().optional()}),RA={name:`turn-provider`,scope:`system`,mode:`collection`,methods:{getTurnServers:V(N(),P(LA).readonly())}},zA=F({credentialId:k(),label:k(),createdAt:A(),lastUsedAt:A().nullable(),transports:P(k()).default([])}),BA={name:`user-passkeys`,scope:`system`,mode:`collection`,internal:!0,methods:{beginRegistration:V(F({userId:k(),username:k()}),F({optionsJSON:R(k(),M())}),{kind:`mutation`,auth:`admin`,access:`create`}),finishRegistration:V(F({userId:k(),response:R(k(),M()),label:k()}),F({success:B(!0),credentialId:k()}),{kind:`mutation`,auth:`admin`,access:`create`}),beginAuthentication:V(F({userId:k().optional()}),F({optionsJSON:R(k(),M())}),{kind:`mutation`,access:`view`,auth:`admin`}),finishAuthentication:V(F({userId:k(),response:R(k(),M())}),F({verified:j()}),{kind:`mutation`,access:`view`,auth:`admin`}),beginDiscoverableAuthentication:V(F({}),F({optionsJSON:R(k(),M())}),{kind:`mutation`,access:`view`,auth:`admin`}),finishDiscoverableAuthentication:V(F({response:R(k(),M())}),F({verified:j(),userId:k().nullable()}),{kind:`mutation`,access:`view`,auth:`admin`}),listPasskeys:V(F({userId:k()}),P(zA),{auth:`admin`}),removePasskey:V(F({userId:k(),credentialId:k()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`,access:`delete`}),getSecondFactorPreference:V(F({userId:k()}),F({enabled:j()}),{auth:`admin`}),setSecondFactorPreference:V(F({userId:k(),enabled:j()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`,access:`create`})}},VA=z([`cosine`,`dot`,`euclidean`]),HA=R(k(),I([k(),A(),j()])),UA=F({equals:R(k(),I([k(),A(),j()])).optional(),between:R(k(),Bc([A(),A()])).optional()}),WA=F({id:k(),vector:k(),metadata:HA}),GA=F({id:k(),score:A(),metadata:HA}),KA=F({index:k(),dim:A().int().positive(),metric:VA.default(`cosine`)}),qA=F({index:k(),items:P(WA)}),JA=F({upserted:A(),rejected:A()}),YA=F({index:k(),vector:k(),topK:A().int().positive(),minScore:A().optional(),filter:UA.optional()}),XA=F({matches:P(GA),scanned:A(),truncated:j(),effectiveTopK:A().int().positive()}),ZA=F({index:k(),ids:P(k())}),QA=F({index:k(),filter:UA}),$A=F({deleted:A()}),ej=F({index:k(),ids:P(k())}),tj=F({items:P(F({id:k(),metadata:HA}))}),nj=F({index:k(),ids:P(k())}),rj=F({items:P(F({id:k(),vector:k(),metadata:HA}))}),ij=F({index:k(),cursor:A().int().nonnegative().default(0),limit:A().int().positive()}),aj=F({items:P(F({id:k(),metadata:HA})),nextCursor:A().int().nonnegative().nullable()}),oj=F({index:k()}),sj=F({backend:k(),count:A(),dim:A(),metric:VA,bytes:A().optional(),exact:j()}),cj={name:`vector-store`,scope:`system`,mode:`singleton`,internal:!0,methods:{declareIndex:V(KA,N(),{kind:`mutation`,auth:`admin`}),upsert:V(qA,JA,{kind:`mutation`,auth:`admin`}),query:V(YA,XA,{auth:`admin`}),getByIds:V(ej,tj,{auth:`admin`}),fetchByIds:V(nj,rj,{auth:`admin`}),scan:V(ij,aj,{auth:`admin`}),deleteByIds:V(ZA,$A,{kind:`mutation`,auth:`admin`}),deleteByFilter:V(QA,$A,{kind:`mutation`,auth:`admin`}),stats:V(oj,sj,{auth:`admin`})}};z([`queue-full`,`camera-backoff`,`sleeping`,`camera-refused`,`no-keyframe`,`decode-failed`,`no-catalog-row`,`unsupported`,`unknown-device`,`uid-missing`]),z([`deferred`,`final`]);var lj=F({id:k(),source:k(),kind:z([`motion`,`object`,`audio`,`native`]),timeRange:F({startMs:A(),endMs:A()}),labels:P(k()).max(3).optional(),thumbnail:k().optional(),stillAtMs:A().optional(),eventIds:P(k()).optional(),eventCount:A().int().nonnegative().optional(),holes:P(F({startMs:A(),endMs:A()})).optional(),thumbnailMint:k().optional(),thumbnailUnavailable:F({reason:z([`sleeping`,`camera-refused`,`no-keyframe`,`unsupported`])}).optional(),catalogAsOf:A().optional(),nativeTypes:P(k()).optional(),behaviours:P(k()).optional(),streams:F({sub:F({id:k(),bytes:A().optional()}).optional(),main:F({id:k(),bytes:A().optional()}).optional()}).optional(),supportSub:j().optional(),playable:j().optional(),unplayableReason:k().optional(),inProgress:j().optional()}),uj=F({playbackUrl:k(),format:z([`hls`,`mp4`]).optional(),served:Al.optional(),playbackEndpoints:P(k()).optional(),token:k().optional()}),dj=z([`authorised`]),fj=F({base64:k(),contentType:k(),name:k(),bytes:A().int().nonnegative(),served:Al,durationMs:A().positive().optional()}),pj=F({ticket:kl,contentType:k(),name:k(),served:Al,durationMs:A().positive().optional()}),mj=z([`opus`,`pcmu`,`none`]),hj=z([`not-requested`,`unsupported-ask`]),gj=F({url:k().min(1),expiresAtMs:A(),transport:B(`forward-only`),served:Al,servedAudio:mj,audioReason:hj.optional()}),_j=F({transport:z([`stream`,`file`]),seek:z([`forward`,`free`]),stepBack:j(),scrub:j(),rates:P(A().positive()).min(1).readonly()}),vj=F({state:z([`ok`,`sleeping`,`unreachable`,`no-storage`,`index-empty`]),reason:k().optional(),catalogAsOf:A().optional()}),yj=F({source:k(),label:k(),addonId:k().optional(),availability:vj}),bj={name:`videoclips`,scope:`device`,mode:`collection`,kind:`wrapper`,defaultActive:!0,deviceTypes:[U.Camera],deviceConfig:{ui:{kind:`widget`,widgetId:`host/clips-browser`,tab:`recording`,topTab:!0,label:`Clips`,order:100}},methods:{listClips:V(F({deviceId:A(),since:A(),until:A(),limit:A().int().positive().optional(),provider:k().min(1)}),P(lj).readonly(),{kind:`query`,auth:`protected`}),listSources:V(F({deviceId:A()}),P(yj).readonly(),{kind:`query`,auth:`protected`}),getClipPlayback:V(F({deviceId:A(),clipId:k(),profile:Al.optional()}),uj,{kind:`query`,auth:`protected`}),readClipBytes:Jl(F({deviceId:A(),clipId:k().min(1),provider:k().min(1),profile:Al.optional(),maxBytes:A().int().positive().optional(),wake:dj.optional()}),fj,{kind:`query`,auth:`protected`}),offerClipBytes:Jl(F({deviceId:A(),clipId:k().min(1),provider:k().min(1),profile:Al.optional(),maxBytes:A().int().positive().optional(),wake:dj.optional()}),pj,{kind:`query`,auth:`protected`}),dialClipStream:Jl(F({deviceId:A(),clipId:k().min(1),provider:k().min(1),profile:Al.optional(),audio:mj.optional()}),gj,{kind:`query`,auth:`protected`}),getPlaybackOptions:Jl(F({deviceId:A(),provider:k().min(1)}),_j,{kind:`query`,auth:`protected`})}},xj=F({viewportWidth:A().int().positive().optional(),viewportHeight:A().int().positive().optional(),devicePixelRatio:A().positive().optional(),downlinkMbps:A().nonnegative().optional(),prefersTier:k().optional()}).partial(),Sj=L(`kind`,[F({kind:B(`adaptive`)}),F({kind:B(`profile`),profile:Al}),F({kind:B(`cam-stream`),camStreamId:k().min(1)})]),Cj=F({id:k(),label:k(),target:Sj,codec:k().nullable(),resolution:F({width:A(),height:A()}).nullable(),status:z([`idle`,`connecting`,`streaming`,`error`,`stopped`]).nullable(),inputFps:A().nullable(),bitrateKbps:A().nullable()}),wj=F({cause:z([`loss`,`stall`,`healthy`]),tier:Al.nullable(),forcedTranscodeDown:j(),lossRatio:A().nullable(),clientKbps:A().nullable(),stalledForMs:A().nullable(),serverSending:j().nullable(),at:A(),causeDetail:k().optional()}),Tj=F({code:k(),nextTier:Al,deliveryRatio:A().nullable(),deliveryWindowMs:A().nullable(),climbDeliveryRatio:A(),capacityKbps:A().nullable(),probeKbps:A().nullable(),nextTierKbps:A().nullable(),capacityMargin:A(),neededKbps:A().nullable(),tryBlockedBy:k().nullable(),tryDeliveryRatio:A().optional(),tryMaxLossRatio:A().optional(),retryInMs:A().nullable(),lastRevert:F({tier:Al,deliveryRatio:A().nullable(),stalled:j(),at:A()}).nullable(),trialForMs:A().nullable(),trialMs:A().nullable(),healthyForMs:A().nullable(),requiredHealthyMs:A().nullable(),since:A(),summary:k()}),Ej=F({tier:Al,failures:A().int().nonnegative()}),Dj=F({sessionId:k(),alive:j(),observedAt:A(),brokerId:k().nullable(),camStreamId:k().nullable(),sourceKind:z([`native`,`derived`,`unknown`]),adaptive:j(),servedTier:Al.nullable(),ingestNodeId:k().nullable(),ingestIsRemote:j().nullable(),sourceCodec:k().nullable(),negotiatedCodec:k().nullable(),egressLeg:z([`copy`,`transcode`,`unknown`]),brokerStatus:k().nullable(),brokerCodec:k().nullable(),brokerBitrateKbps:A().nullable(),brokerInputFps:A().nullable(),brokerUptimeMs:A().nullable(),rtpPacketsSent:A().nullable(),trackMode:z([`live`,`recorded`]).nullable(),lastDecision:wj.nullable(),tierFailures:P(Ej),upgradeCount:A().nullable(),climbHold:Tj.nullable().optional()}),Oj={name:`webrtc-session`,scope:`device`,mode:`singleton`,kind:`wrapper`,defaultActive:!0,preferredProvider:`stream-broker`,deviceTypes:[U.Camera],methods:{listStreams:V(F({deviceId:A().int().nonnegative()}),P(Cj)),createSession:V(F({deviceId:A().int().nonnegative(),target:Sj,hints:xj.optional(),relayOnly:j().optional(),consumerAttribution:Zh.optional()}),F({sessionId:k(),sdpOffer:k()}),{kind:`mutation`}),handleOffer:V(F({deviceId:A().int().nonnegative(),target:Sj.optional(),sdpOffer:k(),sessionId:k().optional(),relayOnly:j().optional(),nonTrickle:j().optional(),disableTurn:j().optional(),disableIpv6:j().optional(),consumerAttribution:Zh.optional(),hints:xj.optional(),talkback:j().optional()}),F({sessionId:k(),sdpAnswer:k()}),{kind:`mutation`}),handleAnswer:V(F({deviceId:A().int().nonnegative(),sessionId:k(),sdpAnswer:k()}),N(),{kind:`mutation`}),addIceCandidate:V(F({deviceId:A().int().nonnegative(),sessionId:k(),candidate:k(),sdpMid:k().nullable().optional(),sdpMLineIndex:A().int().nullable().optional()}),N(),{kind:`mutation`}),getIceCandidates:V(F({deviceId:A().int().nonnegative(),sessionId:k()}),F({candidates:P(F({candidate:k(),sdpMid:k().nullable(),sdpMLineIndex:A().int().nullable()})),done:j()}),{kind:`query`}),closeSession:V(F({deviceId:A().int().nonnegative(),sessionId:k()}),N(),{kind:`mutation`}),hasAdaptiveBitrate:V(F({deviceId:A().int().nonnegative(),profile:Al}),j()),getSessionState:V(F({deviceId:A().int().nonnegative(),sessionId:k()}),F({pendingRenegotiation:F({target:Sj,epoch:A()}).nullable(),alive:j()})),applyDownlinkProbe:V(F({deviceId:A().int().nonnegative(),sessionId:k(),downlinkMbps:A().nonnegative()}),F({outcome:z([`switching`,`held`]),tier:Al.nullable(),reason:k()}),{kind:`mutation`}),getSessionDebug:V(F({deviceId:A().int().nonnegative(),sessionId:k()}),Dj,{kind:`query`})},mount:{kind:`server-provided`}},kj=F({childDeviceIds:P(A()).readonly(),hiddenChildIds:P(A()).readonly()}),Aj={name:`accessories`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Camera,U.Hub,U.Switch,U.Light,U.Sensor,U.Thermostat,U.Cover,U.Lock,U.Fan,U.MediaPlayer,U.AlarmPanel,U.Generic],methods:{setChildHidden:V(F({deviceId:A().int().nonnegative(),childDeviceId:A().int().nonnegative(),hidden:j()}),N(),{kind:`mutation`,auth:`admin`})},events:{onAccessoriesChanged:{data:F({deviceId:A(),childDeviceIds:P(A()).readonly(),hiddenChildIds:P(A()).readonly()})},onChildVisibilityChanged:{data:F({deviceId:A(),childDeviceId:A(),hidden:j()})}},status:{schema:kj,kind:`command-driven`}},jj=z([`install`,`update`,`uninstall`,`restart`]),Mj=z([`queued`,`fetching`,`staged`,`validating`,`applying`,`restarting`,`applied`,`done`,`failed`,`skipped`]),Nj=z([`framework`,`addon`]),Pj=F({tsMs:A(),nodeId:k(),packageName:k(),phase:Mj,message:k()}),Fj=F({taskId:k(),nodeId:k(),packageName:k(),fromVersion:k().nullable(),toVersion:k(),target:Nj,phase:Mj,stagedPath:k().nullable(),attempts:A(),steps:P(Pj),error:k().nullable(),startedAtMs:A().nullable(),finishedAtMs:A().nullable()}),Ij=z([`running`,`completed`,`failed`,`partially-failed`,`cancelled`]),Lj=z([`single`,`bulk`,`cluster`]),Rj=F({jobId:k(),kind:jj,createdAtMs:A(),createdBy:k(),scope:Lj,tasks:P(Fj),state:Ij,schemaVersion:B(1)}),zj=z([`debug`,`info`,`warn`,`error`]),Bj=z([`off`,`latest`,`beta`]),Vj=z([`off`,`latest`,`beta`,`inherit`]),Hj=F({id:k(),name:k().optional(),version:k().optional(),description:k().optional(),icon:k().optional(),color:k().optional(),capabilities:P(M()).readonly().optional(),packageName:k(),packageVersion:k(),packageDisplayName:k().optional(),bundle:F({displayName:k(),description:k().optional(),icon:k().optional()}).optional(),protected:j().optional(),removable:j().optional()}),Uj=F({pid:A().optional(),mode:k(),state:k()}),Wj=F({phase:z([`pending`,`healthy`,`failed`]),retryCount:A(),firstFailureAt:A().nullable(),lastAttemptAt:A().nullable(),lastError:F({message:k(),stack:k().optional()}).nullable(),nextRetryAt:A().nullable(),alertEmitted:j(),retrying:j(),inGracePeriod:j()}),Gj=F({manifest:Hj,declaration:M().optional(),source:k(),installSource:k().optional(),process:Uj.optional(),hasBackup:j().optional(),health:Wj.nullable().optional()}),Kj=F({name:k(),version:k(),dir:k(),installSource:k().optional()}),qj=F({name:k(),currentVersion:k(),latestVersion:k(),category:z([`addon`,`core`]),requiresRestart:j(),isSystem:j()}),Jj=F({version:k(),publishedAt:k(),deprecated:k().optional(),distTags:P(k()).readonly()}),Yj=F({name:k(),version:k(),description:k(),keywords:P(k()).readonly(),publishedAt:k(),author:k(),installed:j(),installedVersion:k().optional(),capabilities:P(k()).readonly().nullable()}),Xj=F({channel:Bj,intervalSeconds:A(),updateCheckIntervalSeconds:A()}),Zj=Vj,Qj=M(),$j=M(),eM=M(),tM=z([`uninstalled`,`not-installed`,`refused`,`failed`,`pending-reconnect`]),nM=F({nodeId:k(),outcome:tM,error:k().optional(),addonIds:P(k()).readonly(),runnersStopped:P(k()).readonly(),warnings:P(k()).readonly()}),rM=F({success:j(),packageName:k(),results:P(nM).readonly()}),iM=F({installations:P(F({packageName:k(),nodeId:k(),nodeName:k(),isHub:j(),isOnline:j(),version:k().nullable(),addonIds:P(k()).readonly(),source:z([`live`,`recorded`]),onHub:j()})).readonly(),unreachable:P(F({nodeId:k(),error:k()})).readonly()}),aM=z([`queued`,`updating`,`done`,`done-pending-restart`,`failed`]),oM=F({name:k(),isSystem:j(),fromVersion:k(),toVersion:k(),status:aM,error:k().optional(),startedAtMs:A().optional(),completedAtMs:A().optional()}),sM=z([`regular`,`system`,`restarting`,`finalizing`]);F({id:k(),nodeId:k(),startedAtMs:A(),completedAtMs:A().optional(),total:A(),completed:A(),failed:A(),current:k().nullable(),phase:sM,cancelled:j(),items:P(oM).readonly()});var cM=F({packageName:k(),currentVersion:k(),latestVersion:k().nullable(),hasUpdate:j(),description:k().optional(),buildId:k().nullable()}),lM=F({timestamp:k(),level:k(),message:k(),scope:k().optional()}),uM=M(),dM=F({addonId:k().min(1),action:k().min(1),input:M()}),fM={name:`addons`,scope:`system`,mode:`singleton`,nodeIdMode:`data`,methods:{list:V(F({nodeId:k().optional()}).optional(),P(Gj).readonly()),getLogs:V(F({addonId:k(),limit:A().min(1).max(500).default(100),level:zj.optional()}),P(uM)),listPackages:V(N(),P(Kj).readonly()),installPackage:V(F({packageName:k(),version:k().optional()}),$j,{kind:`mutation`,auth:`admin`}),installFromWorkspace:V(F({packageName:k()}),$j,{kind:`mutation`,auth:`admin`}),isWorkspaceAvailable:V(N(),j()),listWorkspacePackages:V(N(),P(M()).readonly()),uninstallPackage:V(F({packageName:k().min(1),nodeId:k().optional(),everywhere:j().optional()}),rM,{kind:`mutation`,auth:`admin`}),listInstallations:V(F({packageName:k().optional()}),iM,{auth:`admin`}),reloadPackages:V(N(),eM,{kind:`mutation`,auth:`admin`}),searchAvailable:V(F({query:k().optional(),capability:k().optional()}),P(Yj)),listUpdates:V(F({nodeId:k().optional()}),P(qj).readonly(),{auth:`admin`}),updatePackage:V(F({name:k().min(1),version:k().optional(),nodeId:k().optional()}),M(),{kind:`mutation`,auth:`admin`}),rollbackPackage:V(F({name:k().min(1)}),F({rolledBackTo:k().nullable()}),{kind:`mutation`,auth:`admin`}),forceRefresh:V(F({nodeId:k().optional()}),M(),{kind:`mutation`,auth:`admin`}),restartServer:V(F({confirm:B(!0)}),M(),{kind:`mutation`,auth:`admin`}),getLastRestart:V(N(),F({kind:z([`framework-update`,`manual`,`system`,`framework-bulk-update`]),packageName:k().optional(),fromVersion:k().optional(),toVersion:k().optional(),requestedBy:k().optional(),requestedAt:A()}).nullable(),{auth:`admin`}),listFrameworkPackages:V(N(),P(cM).readonly(),{auth:`admin`}),listCapabilityProviders:V(F({capName:k().min(1)}),P(F({addonId:k(),mode:z([`singleton`,`collection`]),isActive:j()})).readonly()),setCapabilityProviderEnabled:V(F({capName:k().min(1),addonId:k().min(1),enabled:j()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),getVersions:V(F({name:k()}),P(Jj).readonly()),restartAddon:V(F({addonId:k()}),Qj,{kind:`mutation`,auth:`admin`}),retryLoad:V(F({packageName:k()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),getAutoUpdateSettings:V(N(),Xj,{auth:`admin`}),setAutoUpdateSettings:V(F({channel:Bj,intervalSeconds:A().min(300).max(86400).optional(),updateCheckIntervalSeconds:A().min(900).max(604800).optional()}),M(),{kind:`mutation`,auth:`admin`}),getAddonAutoUpdate:V(F({addonId:k()}),Zj,{auth:`admin`}),setAddonAutoUpdate:V(F({addonId:k(),channel:Vj}),M(),{kind:`mutation`,auth:`admin`}),applyAutoUpdateToAll:V(F({channel:Bj}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),custom:V(dM,M(),{kind:`mutation`}),startJob:V(F({kind:z([`install`,`update`,`uninstall`,`restart`]),targets:P(F({name:k().min(1),version:k().min(1)})).min(1),nodeIds:P(k()).optional()}),F({jobId:k()}),{kind:`mutation`,auth:`admin`}),getJob:V(F({jobId:k()}),Rj.nullable(),{auth:`admin`}),listJobs:V(F({activeOnly:j().optional()}),P(Rj),{auth:`admin`}),cancelJob:V(F({jobId:k()}),F({cancelled:j()}),{kind:`mutation`,auth:`admin`}),onAddonLogs:V(F({addonId:k(),level:zj.optional()}),lM,{kind:`subscription`})},mount:{kind:`server-provided`}},pM=F({co2Ppm:A().min(0).optional(),vocPpb:A().min(0).optional(),pm25:A().min(0).optional(),pm10:A().min(0).optional(),aqi:A().optional(),lastFetchedAt:A(),unit:k().optional(),precision:A().int().min(0).max(10).optional()}),mM={name:`air-quality-sensor`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Sensor],methods:{},status:{schema:pM,kind:`push`},runtimeState:pM,durability:`restored`,history:{fields:{co2Ppm:{kind:`gauge`,unit:`ppm`,deadband:5},vocPpb:{kind:`gauge`,unit:`ppb`,deadband:5},pm25:{kind:`gauge`,unit:`ug/m3`,deadband:1},pm10:{kind:`gauge`,unit:`ug/m3`,deadband:1},aqi:{kind:`gauge`,unit:`count`,deadband:1}}},volatileStateFields:[`lastFetchedAt`]},hM=F({lux:A().min(0),lastFetchedAt:A(),unit:k().optional(),precision:A().int().min(0).max(10).optional()}),gM={name:`ambient-light-sensor`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Sensor],methods:{},status:{schema:hM,kind:`push`},runtimeState:hM,durability:`restored`,history:{fields:{lux:{kind:`gauge`,unit:`lx`,deadbandPct:10,minIntervalMs:6e4}}},volatileStateFields:[`lastFetchedAt`]},_M=F({className:k(),hits:A().int().nonnegative(),avgScore:A().min(0).max(1),peakScore:A().min(0).max(1)}),vM=F({ts:A().int(),windowSec:A().int().positive(),level:F({rms:A(),dbfs:A()}),peakDbfs:A(),avgDbfs:A(),current:F({className:k(),score:A().min(0).max(1),timestamp:A().int()}).nullable(),byClass:P(_M).readonly()}),yM=F({points:P(F({ts:A().int(),dbfs:A().nullable(),peakDbfs:A(),avgDbfs:A(),topClass:k().nullable(),topScore:A().min(0).max(1).nullable()})).readonly(),effectiveSampleEveryMs:A().int().positive(),windowMsActual:A().int().nonnegative()}),bM={name:`audio-metrics`,scope:`device`,mode:`singleton`,deviceTypes:[U.Camera],methods:{getCurrentSnapshot:V(F({deviceId:A()}),vM.nullable()),getHistory:V(F({deviceId:A(),windowSec:A().int().positive().optional(),sampleEveryMs:A().int().positive().optional()}),yM)},runtimeState:vM,durability:`session`,history:`none`},xM=F({enabled:j(),isRunning:j(),lastTriggeredAt:A(),lastError:k().nullable(),lastChangedAt:A()}),SM={name:`automation-control`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Automation],methods:{enable:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`admin`}),disable:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`admin`}),trigger:V(F({deviceId:A().int().nonnegative(),skipCondition:j().optional()}),N(),{kind:`mutation`,auth:`admin`})},status:{schema:xM,kind:`push`},runtimeState:xM,durability:`session`,history:`none`},CM=F({percentage:A().min(0).max(100).nullable(),charging:z([`dc`,`solar`,`none`,`unknown`]),sleeping:j(),lastUpdated:A(),lastContactAt:A().optional(),lastFullRefreshAt:A().optional(),binary:j().optional()}),wM={name:`battery`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Camera,U.Sensor,U.Button,U.Switch,U.PetFeeder,U.Container],methods:{wakeForStream:V(F({deviceId:A(),timeoutMs:A().int().min(500).max(3e4).default(8e3)}),F({awoke:j(),durationMs:A()}),{kind:`mutation`})},composedMethods:{wakeForStream:{kind:`answer`,value:{awoke:!1,durationMs:0}}},events:{onStatusChanged:{data:F({deviceId:A(),status:CM})}},status:{schema:CM,kind:`push`,empty:{percentage:null,charging:`unknown`,sleeping:!1,lastUpdated:0}},runtimeState:CM,durability:`restored`,history:{fields:{percentage:{kind:`gauge`,unit:`%`}}},volatileStateFields:[`lastUpdated`]},TM=F({on:j(),lastChangedAt:A()}),EM={name:`binary`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Sensor],methods:{},status:{schema:TM,kind:`push`},runtimeState:TM,durability:`restored`,history:{fields:{on:{kind:`boolean`}}},volatileStateFields:[`lastChangedAt`]},DM=F({percentage:A().min(0).max(100),lastChangedAt:A()}),Vee={name:`brightness`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Light],methods:{setBrightness:V(F({deviceId:A().int().nonnegative(),percentage:A().min(0).max(100)}),N(),{kind:`mutation`,auth:`protected`})},events:{onBrightnessChanged:{data:F({deviceId:A(),percentage:A().min(0).max(100),lastChangedAt:A()})}},status:{schema:DM,kind:`command-driven`},runtimeState:DM,durability:`session`,history:{fields:{percentage:{kind:`gauge`,unit:`%`,minIntervalMs:0}}}},Hee={name:`button`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Button],methods:{press:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`})}},Uee=z([`ha`,`addon`]),OM=F({id:k().min(1),name:k().min(1),source:Uee,enabled:j()}),kM=F({id:k().min(1),calendarId:k().min(1),title:k(),startMs:A().int(),endMs:A().int(),allDay:j().optional(),description:k().optional(),location:k().optional()}),AM=F({calendarIds:P(k().min(1)).max(64).optional(),startMs:A().int(),endMs:A().int()}),Wee={name:`calendar-source`,scope:`system`,mode:`collection`,internal:!0,providerKind:`calendar`,methods:{listCalendars:V(N(),P(OM).readonly(),{auth:`admin`}),listEvents:V(AM,P(kM).readonly(),{auth:`admin`})}},jM=k().regex(/^#[0-9A-Fa-f]{6}$/,`expected #RRGGBB`),Gee=OM.extend({id:k().min(1),providerAddonId:k().min(1).optional(),defaultColor:jM,color:jM,visible:j()}),Kee=F({visible:j().optional(),color:jM.optional()}),MM=F({calendars:R(k(),Kee)}),qee=F({calendarId:k().min(1),visible:j().optional(),color:jM.nullable().optional()}),Jee={name:`calendars`,scope:`system`,mode:`singleton`,methods:{listCalendars:V(N(),P(Gee).readonly(),{auth:`admin`}),listEvents:V(AM,P(kM).readonly(),{auth:`admin`}),getPreferences:V(F({}),MM,{auth:`admin`,caller:`required`}),setCalendarPreference:V(qee,MM,{auth:`admin`,kind:`mutation`,caller:`required`})}},Yee=F({host:k(),port:A().int().positive().optional(),onvifPort:A().int().positive().optional(),rtspPort:A().int().positive().optional(),https:j().optional(),username:k().optional(),password:k().optional(),onvifProfile:k().optional()}),Xee=F({host:k(),port:A().int().positive().nullable(),onvifPort:A().int().positive().nullable(),rtspPort:A().int().positive().nullable(),https:j().nullable(),hasUsername:j(),hasPassword:j(),onvifProfile:k().nullable()}),Zee={name:`camera-credentials`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Camera],methods:{getCredentials:V(F({deviceId:A()}),Yee.nullable(),{kind:`query`,auth:`admin`})},status:{schema:Xee,kind:`command-driven`}},NM=F({x:A().min(0).max(1),y:A().min(0).max(1),width:A().gt(0).max(1),height:A().gt(0).max(1)}),PM=F({deviceId:A().int().positive(),source:NM,cell:NM}),Qee=F({profile:z([`high`,`mid`,`low`]),offered:j(),missingSources:P(A().int().positive()),canvas:k(),published:j()}),FM=F({instanceId:k(),deviceId:A().int().nonnegative(),name:k(),fps:A().int(),cells:P(PM),profiles:P(Qee)}),$ee=F({deviceId:A().int().nonnegative(),name:k().min(1).max(160).optional(),fps:A().int().min(1).max(60).optional(),publishedProfiles:P(z([`high`,`mid`,`low`])).max(3).optional(),cells:P(PM).max(16)}),ete={name:`camera-grid-layout`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Camera],exposesDeviceSettings:!0,methods:{getLayout:V(F({deviceId:A().int().nonnegative()}),FM.nullable(),{auth:`admin`}),saveLayout:V($ee,FM,{kind:`mutation`,auth:`admin`})}},IM=F({detected:j(),lastChangedAt:A()}),tte={name:`carbon-monoxide`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Sensor],methods:{},status:{schema:IM,kind:`push`},runtimeState:IM,durability:`restored`,history:{fields:{detected:{kind:`boolean`}}},volatileStateFields:[`lastChangedAt`]},LM=z([`off`,`heat`,`cool`,`auto`,`heat_cool`,`fan_only`,`dry`]),RM=F({mode:LM,availableModes:P(LM),fanMode:k(),availableFanModes:P(k()),preset:k(),availablePresets:P(k()),target:A().nullable(),targetHigh:A().nullable(),targetLow:A().nullable(),targetHumidity:A().min(0).max(100).nullable(),currentTemp:A().nullable(),currentHumidity:A().min(0).max(100).nullable(),swingVertical:j().nullable(),swingHorizontal:j().nullable(),lastFetchedAt:A()}),nte={name:`climate-control`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Thermostat,U.Climate],methods:{setMode:V(F({deviceId:A().int().nonnegative(),mode:LM}),N(),{kind:`mutation`,auth:`protected`}),setFanMode:V(F({deviceId:A().int().nonnegative(),fanMode:k().min(1)}),N(),{kind:`mutation`,auth:`protected`}),setPreset:V(F({deviceId:A().int().nonnegative(),preset:k().min(1)}),N(),{kind:`mutation`,auth:`protected`}),setTarget:V(F({deviceId:A().int().nonnegative(),target:A()}),N(),{kind:`mutation`,auth:`protected`}),setTargetRange:V(F({deviceId:A().int().nonnegative(),targetLow:A(),targetHigh:A()}),N(),{kind:`mutation`,auth:`protected`}),setTargetHumidity:V(F({deviceId:A().int().nonnegative(),targetHumidity:A().min(0).max(100)}),N(),{kind:`mutation`,auth:`protected`}),setSwingVertical:V(F({deviceId:A().int().nonnegative(),on:j()}),N(),{kind:`mutation`,auth:`protected`}),setSwingHorizontal:V(F({deviceId:A().int().nonnegative(),on:j()}),N(),{kind:`mutation`,auth:`protected`})},status:{schema:RM,kind:`push`},runtimeState:RM,durability:`session`,history:{fields:{currentTemp:{kind:`gauge`,unit:`°C`,deadband:.1},currentHumidity:{kind:`gauge`,unit:`%`,deadband:.5},target:{kind:`gauge`,unit:`°C`,minIntervalMs:0},targetHigh:{kind:`gauge`,unit:`°C`,minIntervalMs:0},targetLow:{kind:`gauge`,unit:`°C`,minIntervalMs:0}}}},zM=F({r:A().int().min(0).max(255),g:A().int().min(0).max(255),b:A().int().min(0).max(255)}),BM=F({h:A().min(0).max(360),s:A().min(0).max(100),v:A().min(0).max(100)}),rte=L(`mode`,[F({mode:B(`rgb`),rgb:zM}),F({mode:B(`hsv`),hsv:BM}),F({mode:B(`mired`),mireds:A().int().min(50).max(1e3)})]),VM=F({mode:z([`rgb`,`hsv`,`mired`]),rgb:zM.optional(),hsv:BM.optional(),mireds:A().int().optional(),lastChangedAt:A()}),ite={name:`color`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Light],methods:{setColor:V(F({deviceId:A().int().nonnegative(),color:rte}),N(),{kind:`mutation`,auth:`protected`})},events:{onColorChanged:{data:F({deviceId:A(),mode:z([`rgb`,`hsv`,`mired`]),rgb:zM.optional(),hsv:BM.optional(),mireds:A().int().optional(),lastChangedAt:A()})}},status:{schema:VM,kind:`command-driven`},runtimeState:VM,durability:`session`,history:`none`},ate=L(`outcome`,[F({outcome:B(`validated`),latencyMs:A().nonnegative().optional(),detail:k().optional()}).strict(),F({outcome:B(`rejected`),error:k()}).strict(),F({outcome:B(`inconclusive`),error:k()}).strict()]),ote=F({settings:R(k(),M())}),ste=F({label:k()}),cte={name:`connection-test`,scope:`system`,mode:`collection`,methods:{testSettings:V(ote,ate,{kind:`mutation`,auth:`admin`}),describeTest:V(N(),ste,{auth:`admin`})}},HM=F({connected:j(),lastChangedAt:A()}),lte={name:`connectivity`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Sensor],methods:{},status:{schema:HM,kind:`push`},runtimeState:HM,durability:`restored`,history:`none`,volatileStateFields:[`lastChangedAt`]},ute=z([`days`,`hours`,`cycles`]),dte=F({value:A().min(0).nullable(),unit:ute}),UM=F({key:k().min(1),label:k().min(1),level:A().min(0).max(100).nullable(),status:z([`ok`,`replace`]).nullable(),lastResetAt:A().nullable(),resettable:j(),remaining:dte.optional()}),WM=F({items:P(UM),lastChangedAt:A()}),fte={name:`consumables`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:Object.values(U),deviceConfig:{ui:{kind:`widget`,widgetId:`host/consumables-panel`,tab:`consumables`,topTab:!0,label:`Consumables`,order:5}},methods:{reset:V(F({deviceId:A().int().nonnegative(),key:k().min(1)}),N(),{kind:`mutation`,auth:`admin`})},composedMethods:{reset:{kind:`refuse`,reason:`a composed consumable is not resettable until commands (forward) arrive — slice 3`}},status:{schema:WM,kind:`push`,empty:{items:[],lastChangedAt:0},itemArray:{path:`items`,keyField:`key`,labelField:`label`,itemSchema:UM,emptyItem:{key:``,label:``,level:null,status:null,lastResetAt:null,resettable:!1}}},runtimeState:WM.extend({lastFetchedAt:A()}),durability:`restored`,history:`none`,volatileStateFields:[`lastChangedAt`,`lastFetchedAt`]},GM=F({entryOpen:j(),lastChangedAt:A()}),pte={name:`contact`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Sensor],methods:{},status:{schema:GM,kind:`push`},runtimeState:GM,durability:`restored`,history:{fields:{entryOpen:{kind:`boolean`}}},volatileStateFields:[`lastChangedAt`]},KM=F({kind:z([`numeric`,`select`,`text`,`datetime`]),value:I([A(),k()]),options:P(k()),lastChangedAt:A(),unit:k().optional(),min:A().optional(),max:A().optional(),step:A().optional(),precision:A().int().min(0).max(10).optional(),format:z([`date`,`time`,`datetime`]).optional()}),mte=L(`kind`,[F({kind:B(`numeric`),value:A()}),F({kind:B(`select`),value:k().min(1)}),F({kind:B(`text`),value:k()}),F({kind:B(`datetime`),value:k().min(1)})]),hte={name:`control`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Control],methods:{setValue:V(F({deviceId:A().int().nonnegative(),control:mte}),N(),{kind:`mutation`,auth:`protected`})},status:{schema:KM,kind:`push`},runtimeState:KM,durability:`session`,history:`none`},qM=F({state:z([`open`,`opening`,`closing`,`closed`,`stopped`]),position:A().min(0).max(100).nullable(),tiltPosition:A().min(0).max(100).nullable(),lastChangedAt:A()}),gte={name:`cover`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Cover],methods:{open:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`}),close:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`}),stop:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`}),setPosition:V(F({deviceId:A().int().nonnegative(),position:A().min(0).max(100)}),N(),{kind:`mutation`,auth:`protected`}),setTiltPosition:V(F({deviceId:A().int().nonnegative(),tiltPosition:A().min(0).max(100)}),N(),{kind:`mutation`,auth:`protected`})},status:{schema:qM,kind:`push`},runtimeState:qM,durability:`restored`,history:{fields:{position:{kind:`gauge`,unit:`%`,minIntervalMs:0}}},volatileStateFields:[`lastChangedAt`]},JM=z([`auto`,`day`,`night`,`schedule`]),YM=F({min:A(),max:A(),step:A()}),XM=F({mode:JM,sensitivity:A().optional(),switchDelaySec:A().optional(),lastFetchedAt:A()}),_te=F({modes:P(JM),supportsSensitivity:j(),sensitivity:YM.optional(),supportsSwitchDelay:j(),switchDelaySec:YM.optional()}),vte=F({mode:JM.optional(),sensitivity:A().optional(),switchDelaySec:A().optional()}),yte={name:`day-night`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Camera],deviceConfig:{ui:{kind:`derived-form`,builderId:`day-night`,tab:`image`}},methods:{getOptions:V(F({deviceId:A()}),_te),setSettings:V(F({deviceId:A(),settings:vte}),N(),{kind:`mutation`,auth:`admin`})},status:{schema:XM,kind:`poll`},runtimeState:XM,durability:`restored`,history:`none`,volatileStateFields:[`lastFetchedAt`]},ZM=F({online:j(),lastChangedAt:A()}),bte={name:`device-status`,scope:`device`,deviceNative:!0,mode:`singleton`,methods:{},events:{onStatusChanged:{data:F({deviceId:A(),status:ZM})}},status:{schema:ZM,kind:`push`},runtimeState:ZM,durability:`restored`,history:{fields:{online:{kind:`boolean`}}},volatileStateFields:[`lastChangedAt`]},QM=F({lastPressedAt:A().nullable(),pressCountSinceStart:A()}),xte=F({deviceId:A(),timestamp:A()}),Ste={name:`doorbell`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Button,U.Camera],methods:{},events:{onPressed:{data:xte,fromState:{field:`lastPressedAt`,on:`advance`}}},status:{schema:QM,kind:`push`},runtimeState:QM,durability:`restored`,history:`none`},Cte=z([`date`,`time`,`datetime`]),$M=F({value:k(),format:Cte.optional(),lastFetchedAt:A()}),wte={name:`enum-sensor`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Sensor],methods:{},status:{schema:$M,kind:`push`},runtimeState:$M,durability:`restored`,history:`none`,volatileStateFields:[`lastFetchedAt`]},eN=F({deviceId:A(),eventType:k(),data:R(k(),M()).nullable(),timestamp:A(),seq:A()}),tN=F({eventTypes:P(k()),lastEvent:eN.nullable(),eventCountSinceStart:A()}),Tte={name:`event-emitter`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.EventEmitter],methods:{},events:{onEvent:{data:eN}},status:{schema:tN,kind:`push`},runtimeState:tN,durability:`session`,history:`none`},nN=F({id:k(),name:k(),sampleCount:A().int().nonnegative(),coverMediaId:A().int().optional(),coverBase64:k().optional()}),Ete=F({id:k(),source:z([`detected`,`photo`]),addedAt:A().int(),deviceId:A().int().optional(),base64:k().optional()}),Dte=F({sampleId:k(),enrolledAt:A().int(),deviceId:A().int().optional(),source:z([`detected`,`photo`]),mediaId:A().int().optional(),comparable:j(),selfMean:A().nullable(),bestForeign:F({identityId:k(),name:k(),score:A()}).optional(),suspicion:A()}),Ote=F({identityId:k(),name:k(),modelId:k(),totalSamples:A().int(),comparableSamples:A().int(),flagged:A().int(),flagThreshold:A(),rows:P(Dte).readonly()}),rN=F({faceId:k(),deviceId:A().int(),trackId:k(),timestamp:A().int(),recognizedIdentityId:k().optional(),identityName:k().optional(),assigned:j(),base64:k().optional(),cropUrl:k().optional(),faceBbox:Nm.optional(),keyFrameMediaId:A().int().optional(),bestMatchScore:A().optional(),nativeFaceShortSidePx:A().optional(),suggestedIdentityId:k().optional(),suggestedMatchScore:A().optional()}),kte=z([`unassigned`,`recognized`,`identified`,`all`]),Ate=z([`timestamp`,`suggestionConfidence`]),jte=z([`asc`,`desc`]),Mte=F({faceIds:P(k()).readonly(),representativeFaceId:k(),size:A().int(),cohesion:A()}),Nte=F({mediaId:A().int(),kind:k(),url:k(),sizeBytes:A(),timestamp:A()}),Pte={name:`face-gallery`,scope:`system`,mode:`singleton`,methods:{listIdentities:V(F({includeCrops:j().optional()}).optional(),P(nN).readonly()),createIdentity:V(F({name:k().min(1)}),nN,{kind:`mutation`,auth:`admin`}),renameIdentity:V(F({id:k(),name:k().min(1)}),N(),{kind:`mutation`,auth:`admin`}),deleteIdentity:V(F({id:k()}),N(),{kind:`mutation`,auth:`admin`}),listIdentitySamples:V(F({identityId:k()}),P(Ete).readonly()),auditIdentitySamples:V(F({identityId:k().min(1)}),Ote,{auth:`admin`}),removeSample:V(F({identityId:k(),sampleId:k()}),N(),{kind:`mutation`,auth:`admin`}),listRecentFaces:V(F({deviceId:A().int().optional(),deviceIds:P(A().int()).optional(),limit:A().int().positive().optional(),filter:kte.optional(),since:A().int().optional(),until:A().int().optional(),sortBy:Ate.optional(),sortDirection:jte.optional(),includeCrops:j().optional()}).optional(),P(rN).readonly()),getFaceByTrack:V(F({deviceId:A().int(),trackId:k()}),rN.nullable()),getFaceMedia:V(F({faceId:k()}),P(Nte).readonly()),assignFace:V(F({faceId:k(),identityId:k()}),N(),{kind:`mutation`,auth:`admin`}),unassignFace:V(F({faceId:k()}),N(),{kind:`mutation`,auth:`admin`}),deleteFace:V(F({faceId:k()}),N(),{kind:`mutation`,auth:`admin`}),assignFaces:V(F({faceIds:P(k()).min(1),identityId:k()}),F({assigned:A().int(),failed:P(k()).readonly()}),{kind:`mutation`,auth:`admin`}),unassignFaces:V(F({faceIds:P(k()).min(1)}),F({unassigned:A().int(),failed:P(k()).readonly()}),{kind:`mutation`,auth:`admin`}),suggestFaceClusters:V(F({threshold:A().min(0).max(1).optional(),minClusterSize:A().int().min(2).optional(),maxClusters:A().int().positive().optional(),limit:A().int().positive().optional(),maxFacesScanned:A().int().positive().optional()}).optional(),P(Mte).readonly())}},iN=z([`forward`,`reverse`]),aN=F({percentage:A().min(0).max(100).nullable(),percentageStep:A().positive().optional(),preset:k(),availablePresets:P(k()),direction:iN.nullable(),oscillating:j().nullable(),lastChangedAt:A()}),Fte={name:`fan-control`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Fan],methods:{setPercentage:V(F({deviceId:A().int().nonnegative(),percentage:A().min(0).max(100)}),N(),{kind:`mutation`,auth:`protected`}),setPreset:V(F({deviceId:A().int().nonnegative(),preset:k().min(1)}),N(),{kind:`mutation`,auth:`protected`}),setDirection:V(F({deviceId:A().int().nonnegative(),direction:iN}),N(),{kind:`mutation`,auth:`protected`}),setOscillating:V(F({deviceId:A().int().nonnegative(),oscillating:j()}),N(),{kind:`mutation`,auth:`protected`})},status:{schema:aN,kind:`push`},runtimeState:aN,durability:`session`,history:{fields:{percentage:{kind:`gauge`,unit:`%`,minIntervalMs:0},oscillating:{kind:`boolean`}}}},oN=F({flags:R(k(),M()),deviceType:k().nullable(),model:k().nullable(),channelCount:A().nullable(),lastProbedAt:A(),lastFetchedAt:A()}),Ite={name:`feature-probe`,scope:`device`,deviceNative:!0,mode:`singleton`,methods:{},events:{onProbeChanged:{data:F({deviceId:A(),status:oN})}},status:{schema:oN,kind:`push`},runtimeState:oN,durability:`session`,history:`none`},sN=F({flooded:j(),lastChangedAt:A()}),Lte={name:`flood`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Sensor],methods:{},status:{schema:sN,kind:`push`},runtimeState:sN,durability:`restored`,history:{fields:{flooded:{kind:`boolean`}}},volatileStateFields:[`lastChangedAt`]},cN=F({detected:j(),lastChangedAt:A()}),Rte={name:`gas`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Sensor],methods:{},status:{schema:cN,kind:`push`},runtimeState:cN,durability:`restored`,history:{fields:{detected:{kind:`boolean`}}},volatileStateFields:[`lastChangedAt`]},lN=F({on:j(),currentHumidity:A().min(0).max(100).nullable(),targetHumidity:A().min(0).max(100).nullable(),mode:k().nullable(),availableModes:P(k()),action:k().nullable(),minHumidity:A().nullable(),maxHumidity:A().nullable(),lastChangedAt:A()}),zte={name:`humidifier`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Humidifier],methods:{setOn:V(F({deviceId:A().int().nonnegative(),on:j()}),N(),{kind:`mutation`,auth:`protected`}),setTargetHumidity:V(F({deviceId:A().int().nonnegative(),humidity:A().min(0).max(100)}),N(),{kind:`mutation`,auth:`protected`}),setMode:V(F({deviceId:A().int().nonnegative(),mode:k().min(1)}),N(),{kind:`mutation`,auth:`protected`})},status:{schema:lN,kind:`push`},runtimeState:lN,durability:`session`,history:{fields:{currentHumidity:{kind:`gauge`,unit:`%`,deadband:.5},on:{kind:`boolean`}}}},uN=F({percent:A().min(0).max(100),lastFetchedAt:A(),unit:k().optional(),precision:A().int().min(0).max(10).optional()}),Bte={name:`humidity-sensor`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Sensor,U.Thermostat],methods:{},status:{schema:uN,kind:`push`},runtimeState:uN,durability:`restored`,history:{fields:{percent:{kind:`gauge`,unit:`%`,deadband:.5}}},volatileStateFields:[`lastFetchedAt`]},dN=F({url:k().nullable(),lastUpdated:A().nullable()}),Vte={name:`image`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Image],methods:{},status:{schema:dN,kind:`push`},runtimeState:dN,durability:`session`,history:`none`},fN=z([`0`,`90`,`180`,`270`]),pN=z([`auto`,`manual`]),mN=z([`auto`,`manual`]),hN=z([`off`,`blc`,`wdr`,`hlc`]),gN=F({min:A(),max:A(),step:A()}),_N=F({brightness:A().optional(),contrast:A().optional(),saturation:A().optional(),sharpness:A().optional(),mirror:j().optional(),flip:j().optional(),rotate:fN.optional(),whiteBalance:pN.optional(),warmth:A().optional(),exposureMode:mN.optional(),backlightMode:hN.optional(),lastFetchedAt:A()}),vN=F({supportsBrightness:j(),brightness:gN.optional(),supportsContrast:j(),contrast:gN.optional(),supportsSaturation:j(),saturation:gN.optional(),supportsSharpness:j(),sharpness:gN.optional(),supportsMirror:j(),supportsFlip:j(),rotateOptions:P(fN),whiteBalanceModes:P(pN),supportsWarmth:j(),warmth:gN.optional(),exposureModes:P(mN),backlightModes:P(hN)}),yN=F({brightness:A().optional(),contrast:A().optional(),saturation:A().optional(),sharpness:A().optional(),mirror:j().optional(),flip:j().optional(),rotate:fN.optional(),whiteBalance:pN.optional(),warmth:A().optional(),exposureMode:mN.optional(),backlightMode:hN.optional()}),bN={name:`image-settings`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Camera],deviceConfig:{ui:{kind:`derived-form`,builderId:`image-settings`,tab:`image`}},methods:{getOptions:V(F({deviceId:A()}),vN),setSettings:V(F({deviceId:A(),settings:yN}),N(),{kind:`mutation`,auth:`admin`})},status:{schema:_N,kind:`poll`},runtimeState:_N,durability:`restored`,history:`none`,volatileStateFields:[`lastFetchedAt`]},xN=F({id:k(),addonId:k(),name:k(),enabled:j(),info:R(k(),M()).readonly(),createdAt:A(),updatedAt:A(),processState:k()}),SN=F({id:k(),addonId:k(),name:k(),enabled:j(),info:R(k(),M()).readonly(),createdAt:A(),updatedAt:A()}),CN=F({addonId:k(),name:k(),description:k(),iconUrl:k().nullable(),color:k(),instanceMode:k(),mode:z([`standalone`,`account`,`broker`]),discoveryMode:k(),kind:z([`device-adoption`,`device-provider`]),brokerKind:k().nullable(),supportsLocationImport:j(),canTest:j(),existingInstances:P(F({id:k(),name:k()})),canAdd:j()}),wN=z([`validated`,`rejected`,`inconclusive`,`unsupported`]),TN=F({success:j(),error:k().optional(),status:wN.optional(),testedBy:k().nullable().optional(),latencyMs:A().nonnegative().optional(),detail:k().optional()}),EN=F({addonId:k(),name:k(),enabled:j().optional(),info:R(k(),M()).optional(),settings:R(k(),M()).optional(),secretKeys:P(k()).optional(),skipRestart:j().optional()}),DN=F({id:k(),name:k().optional(),enabled:j().optional(),info:R(k(),M()).optional()}),ON=F({success:j(),deletedId:k()}),kN={name:`integrations`,scope:`system`,mode:`singleton`,methods:{list:V(N(),P(xN)),get:V(F({id:k()}),xN),getByAddonId:V(F({addonId:k()}),SN.nullable()),create:V(EN,SN,{kind:`mutation`,auth:`admin`}),update:V(DN,SN,{kind:`mutation`,auth:`admin`}),delete:V(F({id:k()}),ON,{kind:`mutation`,auth:`admin`}),getSettings:V(F({id:k()}),R(k(),M()),{auth:`admin`}),setSettings:V(F({id:k(),settings:R(k(),M()),secretKeys:P(k()).optional()}),F({success:j()}),{kind:`mutation`,auth:`admin`}),getAvailableTypes:V(N(),P(CN),{auth:`admin`}),testConnection:V(F({addonId:k(),settings:R(k(),M())}),TN,{kind:`mutation`,auth:`admin`})},mount:{kind:`server-provided`}},AN=F({codecs:P(k()),sampleRate:A(),duplex:z([`half`,`full`]),maxBacklogMs:A()}),jN=F({talking:j(),lastSessionAt:A().nullable(),ability:AN.nullable()}),MN=z([`opus`,`s16le`,`g711ulaw`,`g711alaw`]),NN={name:`intercom`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Camera],methods:{startSession:V(F({deviceId:A()}),F({sessionId:k(),sdpOffer:k()}),{kind:`mutation`,auth:`protected`}),handleAnswer:V(F({deviceId:A(),sessionId:k(),sdpAnswer:k()}),N(),{kind:`mutation`,auth:`protected`}),stopSession:V(F({deviceId:A(),sessionId:k()}),N(),{kind:`mutation`,auth:`protected`}),startTalkSession:V(F({deviceId:A()}),F({sessionId:k()}),{kind:`mutation`,auth:`protected`}),pushTalkAudio:V(F({deviceId:A(),audioBase64:k(),codec:MN.optional(),sampleRate:A().int().positive().optional(),channels:A().int().positive().optional(),sequenceNumber:A().int()}),F({accepted:j()}),{kind:`mutation`,auth:`protected`}),endTalkSession:V(F({deviceId:A()}),N(),{kind:`mutation`,auth:`protected`})},events:{onStatusChanged:{data:F({deviceId:A(),status:jN})}},status:{schema:jN,kind:`command-driven`},runtimeState:jN,durability:`session`,history:`none`},PN=z([`idle`,`mowing`,`paused`,`docked`,`error`]),FN=z([`info`,`warning`,`error`]),IN=F({activity:PN,batteryLevel:A().min(0).max(100).nullable(),progressPercent:A().min(0).max(100).nullable(),currentCode:A().nullable(),currentCodeLabel:k().nullable(),severity:FN,lastChangedAt:A()}),LN={name:`lawn-mower-control`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.LawnMower],methods:{startMowing:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`}),pause:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`}),dock:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`})},status:{schema:IN,kind:`push`},runtimeState:IN,durability:`session`,history:{fields:{batteryLevel:{kind:`gauge`,unit:`%`,deadband:2}}}},RN=z([`lan`,`wifi`,`docker`,`vpn`,`loopback`,`other`]),zN=F({name:k(),family:z([`IPv4`,`IPv6`]),address:k(),cidr:k(),netmask:k(),internal:j(),mac:k(),kind:RN,preferred:j(),plausible:j(),plausibleReason:k()}),BN=F({interfaces:P(zN).readonly(),probedAt:A()}),VN=zN.nullable(),HN=F({label:k(),baseUrl:k(),kind:z([`lan-ipv4`,`lan-ipv6`,`public`,`loopback`,`app-link`,`custom`]),interfaceKind:z([`lan`,`wifi`,`docker`,`vpn`,`other`,`loopback`,`public`]),plausible:j(),plausibleReason:k(),priority:A(),stable:j().optional()}),UN=z([`server-config`,`server-env`,`caller-hint`,`default`]),WN=F({port:A().int().min(1).max(65535),source:UN}),GN=F({endpoints:P(HN).readonly(),localPort:WN}),KN=F({baseUrl:k().nullable(),resolved:k().nullable(),appLinkHub:k().nullable()}),qN=F({baseUrls:P(k()).readonly(),resolved:P(k()).readonly()}),JN=F({override:k().nullable(),resolved:k().nullable(),source:z([`override`,`auto`,`none`])}),YN=F({cluster:JN,browser:JN}),XN=z(Eee),ZN=z([`flagged`,`auto`,`none`]),QN=F({flagged:k().nullable(),resolved:k().nullable(),source:ZN}),$N=F({flagged:P(k()).readonly(),resolved:P(k()).readonly(),source:ZN}),eP=F({rows:P(HN.extend({detected:j(),custom:j(),flags:P(XN).readonly(),inUse:P(XN).readonly(),eligible:P(XN).readonly()})).readonly(),roles:F({appConnections:$N,notificationTaps:QN,internal:QN,publicEndpoint:QN}),appLinkHub:k().nullable(),listenerOrigins:P(k()).readonly().optional()}),tP=F({addresses:P(k()).readonly()}),nP=F({mode:z([`generated`,`uploaded`,`disabled`]),leafFingerprintSha256:k().nullable(),caFingerprintSha256:k().nullable(),validTo:k().nullable(),sans:P(k()),caCertPem:k().nullable(),reissueError:k().nullable(),restartRequired:j()}),rP={name:`local-network`,scope:`system`,mode:`singleton`,methods:{list:V(N(),BN),getPreferred:V(N(),VN),getConnectionEndpoints:V(F({port:A().int().min(1).max(65535).optional(),includeLoopback:j().optional(),ipv4Only:j().optional(),scheme:z([`http`,`https`]).optional(),includeAppLink:j().optional()}),GN),getNotificationEndpoint:V(N(),KN),setNotificationEndpoint:V(F({baseUrl:k().nullable()}),KN,{kind:`mutation`}),getViewerEndpoints:V(N(),qN),setViewerEndpoints:V(F({baseUrls:P(k()).readonly()}),qN,{kind:`mutation`}),getAddresses:V(F({scheme:z([`http`,`https`]).optional()}).optional(),eP),addCustomAddress:V(F({baseUrl:k(),label:k().max(80)}),eP,{kind:`mutation`,auth:`admin`}),removeCustomAddress:V(F({baseUrl:k()}),eP,{kind:`mutation`,auth:`admin`}),setAddressRole:V(F({role:XN,baseUrl:k().nullable(),enabled:j(),acceptInsecureHttp:j().optional()}),eP,{kind:`mutation`,auth:`admin`}),getHubAddresses:V(N(),YN),getAllowedAddresses:V(N(),tP),setAllowedAddresses:V(tP,F({success:B(!0)}),{kind:`mutation`}),resetAllowlistToBestMatch:V(N(),tP,{kind:`mutation`}),getTlsStatus:V(N(),nP),regenerateCertificate:V(F({reason:k().optional()}),nP,{kind:`mutation`,auth:`admin`}),uploadCertificate:V(F({certPem:k().min(1),keyPem:k().min(1),caPem:k().optional()}),nP,{kind:`mutation`,auth:`admin`}),downloadCa:V(N(),F({pem:k()})),revertToGeneratedCertificate:V(N(),nP,{kind:`mutation`,auth:`admin`})},mount:{kind:`hub-only`}},iP=F({state:z([`locked`,`unlocked`,`locking`,`unlocking`,`jammed`]),lastChangedAt:A()}),aP={name:`lock-control`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Lock],methods:{lock:V(F({deviceId:A().int().nonnegative(),code:k().min(1).optional()}),N(),{kind:`mutation`,auth:`protected`}),unlock:V(F({deviceId:A().int().nonnegative(),code:k().min(1).optional()}),N(),{kind:`mutation`,auth:`protected`}),open:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`})},status:{schema:iP,kind:`push`},runtimeState:iP,durability:`restored`,history:`none`,volatileStateFields:[`lastChangedAt`]},oP=z([`off`,`on`,`idle`,`playing`,`paused`,`buffering`,`standby`]),sP=z([`off`,`all`,`one`]),cP=F({type:k(),title:k(),artist:k().optional(),album:k().optional(),imageUrl:k().optional()}),lP=F({state:oP,volumeLevel:A().min(0).max(100).nullable(),isMuted:j().nullable(),source:k(),availableSources:P(k()),currentMedia:cP.nullable(),positionMs:A().int().nonnegative().nullable(),durationMs:A().int().nonnegative().nullable(),shuffle:j().nullable(),repeat:sP.nullable(),lastChangedAt:A()}),uP={name:`media-player`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.MediaPlayer],methods:{play:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`}),pause:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`}),stop:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`}),next:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`}),previous:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`}),seek:V(F({deviceId:A().int().nonnegative(),positionMs:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`}),setVolume:V(F({deviceId:A().int().nonnegative(),volumeLevel:A().min(0).max(100)}),N(),{kind:`mutation`,auth:`protected`}),setMute:V(F({deviceId:A().int().nonnegative(),muted:j()}),N(),{kind:`mutation`,auth:`protected`}),setShuffle:V(F({deviceId:A().int().nonnegative(),shuffle:j()}),N(),{kind:`mutation`,auth:`protected`}),setRepeat:V(F({deviceId:A().int().nonnegative(),repeat:sP}),N(),{kind:`mutation`,auth:`protected`}),selectSource:V(F({deviceId:A().int().nonnegative(),source:k().min(1)}),N(),{kind:`mutation`,auth:`protected`}),playMedia:V(F({deviceId:A().int().nonnegative(),mediaId:k().min(1),mediaType:k().min(1)}),N(),{kind:`mutation`,auth:`protected`})},status:{schema:lP,kind:`push`},runtimeState:lP,durability:`session`,history:`none`},dP=F({id:k(),label:k(),scope:z([`mesh`,`public`]),url:k(),hostname:k(),port:A(),protocol:z([`http`,`https`])}),fP=F({id:k(),hostname:k(),magicDns:k(),addresses:P(k()).readonly(),os:k().optional(),online:j(),lastSeenMs:A(),isSelf:j(),connection:z([`direct`,`relay`,`idle`]),relay:k().nullable(),lastHandshakeMs:A(),rxBytes:A(),txBytes:A(),tags:P(k()).readonly(),exitNodeOption:j(),advertisedRoutes:P(k()).readonly(),userLogin:k().nullable(),keyExpiry:A().nullable()}),pP=F({joined:j(),meshIp:k(),magicDnsHostname:k(),peerCount:A(),endpoints:P(dP).readonly(),error:k().optional(),tenantName:k(),magicDnsSuffix:k(),userLogin:k().nullable(),controlPlaneUrl:k(),keyExpiry:A().nullable(),daemonSocket:k().optional(),daemonCliPath:k().optional()}),mP={name:`mesh-network`,scope:`system`,mode:`collection`,providerKind:`mesh`,methods:{getStatus:V(N(),pP),join:V(F({authKey:k().min(8),hostname:k().optional()}),F({joined:B(!0)}),{kind:`mutation`}),startLogin:V(F({hostname:k().optional()}),F({loginUrl:k()}),{kind:`mutation`}),leave:V(N(),F({left:B(!0)}),{kind:`mutation`}),logout:V(N(),F({loggedOut:B(!0)}),{kind:`mutation`}),listPeers:V(N(),F({peers:P(fP).readonly()})),testConnection:V(F({authKey:k().optional()}),F({ok:j(),tenant:k().optional(),daemonVersion:k().optional(),error:k().optional()}),{kind:`mutation`})}},hP=F({detected:j(),lastDetectedAt:A().nullable(),autoClearAfterMs:A().nullable()}),gP=F({deviceId:A(),detected:j(),timestamp:A(),source:RO,regions:P(Bb).readonly().optional(),triggeredBy:iw.optional()}),_P={name:`motion`,scope:`device`,mode:`singleton`,deviceNative:!0,deviceTypes:[U.Camera,U.Sensor],methods:{isDetected:V(F({deviceId:A()}),j())},events:{onMotionChanged:{data:gP}},status:{schema:hP,kind:`push`},runtimeState:hP,durability:`session`,history:{fields:{detected:{kind:`boolean`,excludeDeviceTypes:[U.Camera]}}}},vP=F({enabled:j(),lastChangedAt:A()}),yP=vP.extend({lastFetchedAt:A()}),bP={name:`motion-trigger`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Light,U.Siren,U.Switch],methods:{setMotionTrigger:V(F({deviceId:A().int().nonnegative(),enabled:j()}),N(),{kind:`mutation`,auth:`admin`})},events:{onMotionTriggerChanged:{data:F({deviceId:A(),enabled:j(),lastChangedAt:A()})}},status:{schema:vP,kind:`command-driven`},runtimeState:yP,durability:`session`,history:`none`},xP=F({id:A(),enabled:j(),shape:Gx}),SP=F({enabled:j(),sensitivity:A(),regions:P(xP),lastFetchedAt:A()}),CP=F({maxRegions:A(),supportedShapes:P(Kx),grid:Jx,sensitivity:F({min:A(),max:A(),step:A()})}),wP=F({enabled:j().optional(),sensitivity:A().optional(),regions:P(xP).optional()}),TP={name:`motion-zones`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Camera],deviceConfig:{ui:{kind:`widget`,widgetId:`host/motion-zones-grid`,tab:`motion`,label:`Motion Zones`}},methods:{getOptions:V(F({deviceId:A()}),CP),setZone:V(F({deviceId:A(),patch:wP}),N(),{kind:`mutation`,auth:`admin`})},status:{schema:SP,kind:`poll`},runtimeState:SP,durability:`restored`,history:`none`,volatileStateFields:[`lastFetchedAt`]},EP=z([`person`,`vehicle`,`animal`,`face`,`package`,`other`]),DP=F({class:EP,timestamp:A(),confidence:A().min(0).max(1).optional()}),OP=F({lastByClass:Hc(EP,DP.nullable()),supportedClasses:P(EP).readonly(),enabled:j()}),kP=z([`boxed`,`while-streaming`,`flag-only`]),AP=F({supportedClasses:P(EP).readonly(),geometry:kP}),jP=F({enabled:j().optional()}),MP=OP.extend({lastFetchedAt:A()}),NP={name:`native-object-detection`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Camera],methods:{getOptions:V(F({deviceId:A()}),AP),setSettings:V(F({deviceId:A(),settings:jP}),N(),{kind:`mutation`,auth:`admin`}),setEnabled:V(F({deviceId:A(),enabled:j()}),N(),{kind:`mutation`,auth:`admin`})},events:{onDetected:{data:F({deviceId:A(),detection:DP})}},status:{schema:OP,kind:`push`},runtimeState:MP,durability:`restored`,history:`none`,volatileStateFields:[`lastFetchedAt`]},PP=F({pan:A().min(-1).max(1).optional(),tilt:A().min(-1).max(1).optional(),speed:A().min(0).max(1).optional()}),FP=z([`goHome`,`locate`,`spotClean`,`findPet`,`personFollow`,`stop`,`startClean`,`pauseClean`,`dockWash`,`autoEmpty`,`flashOn`,`flashOff`]),IP=z([`action`,`sound`]),LP=F({id:k(),kind:IP,label:k(),icon:k(),soundId:A().int().optional(),enabled:j()}),RP=F({x:A(),y:A()}),zP=F({move:j(),stop:j(),goToPoint:j(),runAction:j(),playSound:j(),light:j(),lightMode:j()}),BP=z([`auto`,`manual`]),VP=F({mode:z([`idle`,`cleaning`,`spot`,`following`,`goto`,`returning`,`paused`,`unknown`]),following:j(),flash:j(),lightMode:BP,lightLevel:A().min(40).max(100),lastChangedAt:A()}),HP=VP.extend({lastFetchedAt:A()}),UP={name:`navigation`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Camera],deviceConfig:{ui:{kind:`widget`,widgetId:`host/navigation-panel`,tab:`navigation`,topTab:!0,label:`Navigation`,order:0}},methods:{move:V(PP.extend({deviceId:A()}),N(),{kind:`mutation`}),stop:V(F({deviceId:A()}),N(),{kind:`mutation`}),goToPoint:V(RP.extend({deviceId:A()}),N(),{kind:`mutation`}),listActions:V(F({deviceId:A()}),P(LP)),runAction:V(F({deviceId:A(),actionId:FP}),N(),{kind:`mutation`}),playSound:V(F({deviceId:A(),soundId:A().int()}),N(),{kind:`mutation`}),setLightOn:V(F({deviceId:A(),on:j()}),N(),{kind:`mutation`}),setLightMode:V(F({deviceId:A(),mode:BP,level:A().min(40).max(100).optional()}),N(),{kind:`mutation`}),setLightLevel:V(F({deviceId:A(),level:A().min(40).max(100)}),N(),{kind:`mutation`}),getFeatures:V(F({deviceId:A()}),zP)},events:{onStatusChanged:{data:F({deviceId:A(),status:VP})}},status:{schema:VP,kind:`push`},runtimeState:HP,durability:`session`,history:`none`},WP=F({type:z([`wifi`,`ethernet`,`cellular`,`unknown`]),signalPercent:A().min(0).max(100).nullable(),rssiDbm:A().optional(),ssid:k().optional(),lastUpdated:A()}),GP={name:`network-link`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Camera,U.Sensor,U.Button,U.Switch,U.Light,U.Lock,U.Siren],methods:{},events:{onStatusChanged:{data:F({deviceId:A(),status:WP})}},status:{schema:WP,kind:`push`,empty:{type:`unknown`,signalPercent:null,lastUpdated:0}},runtimeState:WP,durability:`restored`,history:{fields:{signalPercent:{kind:`gauge`,unit:`%`,deadband:3,minIntervalMs:6e4},rssiDbm:{kind:`gauge`,unit:`dBm`,deadband:2,minIntervalMs:6e4}}},volatileStateFields:[`lastUpdated`]},KP=F({nominalBitrateKbps:A(),observedBitrateKbps:A(),peakBitrateKbps:A(),packetLossPercent:A(),lastUpdated:A()}),qP=F({rttMs:A(),jitterMs:A(),estimatedBandwidthKbps:A(),packetLossPercent:A().min(0).max(100),downlinkMbps:A().optional(),downlinkAgeMs:A().optional(),lastUpdated:A()}),JP=F({deviceId:A(),streams:R(k(),KP),client:qP.optional()}),YP={name:`network-quality`,scope:`system`,mode:`singleton`,methods:{getDeviceStats:V(F({deviceId:A()}),JP.nullable()),getAllStats:V(N(),P(JP).readonly()),reportClientStats:V(F({deviceId:A(),rttMs:A().min(0).max(6e4),jitterMs:A().min(0).max(1e4),estimatedBandwidthKbps:A().min(0).max(1e6),packetLossPercent:A().min(0).max(100),downlinkMbps:A().min(0).max(1e5).optional(),downlinkAgeMs:A().min(0).max(864e5).optional()}),N(),{kind:`mutation`})},mount:{kind:`server-provided`}},XP=F({addonId:k(),capabilities:P(k()).readonly(),status:k()}),ZP=F({pid:A(),name:k(),state:k(),cpuPercent:A(),memoryRss:A(),uptimeSeconds:A(),services:P(XP).readonly(),groupId:k().optional()}),QP=F({id:k(),status:k(),cpuPercent:A(),memoryRss:A()}),$P=F({category:k(),total:A(),healthy:A(),addons:P(QP).readonly()}),eF=F({name:k(),version:k()}),tF=F({id:k(),name:k(),hostname:k(),platform:k(),arch:k(),cpuModel:k().nullable(),cpuCores:A(),memoryMB:A(),engines:P(k()).readonly(),isHub:j(),isOnline:j(),cpuPercent:A(),memoryPercent:A(),uptime:A(),lastSeen:k(),localIps:P(k()).readonly(),addons:P(F({id:k(),capabilities:P(k()).readonly(),status:k()})).readonly(),processes:P(ZP).readonly(),categories:P($P).readonly(),rootPackage:eF.nullable(),meshTransport:z([`tls`,`clear`]).optional(),capabilitiesRegistered:j().optional()}),nF=F({callerAddonId:k(),providerAddonId:k(),capName:k(),callsPerMin:A(),lastCallAtMs:A()}),rF=F({nodeId:k(),name:k(),version:k(),status:k(),synced:j()}),iF=F({hubVersion:k(),nodes:P(rF)}),aF=F({nodeId:k(),addonId:k()}),oF=F({id:k(),status:k(),version:k().optional(),packageName:k().optional()}),sF=F({success:j()}),cF=F({success:j(),reason:k().optional()}),lF=F({restarted:P(k()).readonly(),failed:P(k()).readonly()}),uF=F({nodeId:k(),name:k()}),dF=F({nodes:P(F({id:k(),name:k(),isHub:j(),isOnline:j()})).readonly(),complete:j()}),fF={name:`nodes`,scope:`system`,mode:`singleton`,nodeIdMode:`data`,methods:{topology:V(N(),P(tF).readonly(),{auth:`admin`}),directory:V(N(),dF,{auth:`admin`}),deployAddon:V(aF,sF,{kind:`mutation`,auth:`admin`}),undeployAddon:V(aF,sF,{kind:`mutation`,auth:`admin`}),restartAddon:V(aF,sF,{kind:`mutation`,auth:`admin`}),restartProcess:V(F({nodeId:k(),processName:k()}),cF,{kind:`mutation`,auth:`admin`}),restartNode:V(F({nodeId:k()}),lF,{kind:`mutation`,auth:`admin`}),shutdownNode:V(F({nodeId:k()}),sF,{kind:`mutation`,auth:`admin`}),renameNode:V(F({nodeId:k(),name:k().min(1).max(64)}),uF,{kind:`mutation`,auth:`admin`}),clusterAddonStatus:V(N(),R(k(),iF),{auth:`admin`}),getCapUsageGraph:V(F({windowSeconds:A().int().positive().max(300).default(60)}),P(nF).readonly(),{auth:`admin`}),getNodeAddons:V(F({nodeId:k()}),P(oF).readonly(),{auth:`admin`}),setProcessLogLevel:V(F({nodeId:k(),level:k()}),sF,{kind:`mutation`,auth:`admin`}),executeQuery:V(F({nodeId:k(),addonId:k(),queryName:k(),params:R(k(),M()).optional()}),M(),{kind:`mutation`,auth:`admin`})},mount:{kind:`server-provided`}},pF=z([`min`,`low`,`normal`,`high`]),mF=F({id:k().min(1),title:k().min(1),uri:nc().optional(),destructive:j().optional()}),hF=F({image:j(),priority:j(),data:j(),actions:j(),recipients:j()}),gF=F({lastSentAt:A(),lastError:k().nullable(),queueDepth:A().int().nonnegative(),supports:hF}),_F=F({deviceId:A().int().nonnegative(),title:k().optional(),body:k().min(1),image:k().optional(),priority:pF.optional(),channel:k().optional(),recipients:P(k()).optional(),actions:P(mF).optional(),data:R(k(),M()).optional()}),vF=F({notificationId:k(),acceptedAt:A()}),yF={name:`notifier`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Notifier],methods:{send:V(_F,vF,{kind:`mutation`,auth:`admin`}),cancel:V(F({deviceId:A().int().nonnegative(),notificationId:k().min(1)}),N(),{kind:`mutation`,auth:`admin`})},events:{onSent:{data:F({deviceId:A(),notificationId:k(),success:j(),error:k().nullable(),acceptedAt:A()})}},status:{schema:gF,kind:`command-driven`},runtimeState:gF,durability:`session`,history:`none`},bF=F({value:A(),unit:k().optional(),precision:A().int().min(0).max(10).optional(),lastFetchedAt:A()}),xF={name:`numeric-sensor`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Sensor],methods:{},status:{schema:bF,kind:`push`},runtimeState:bF,durability:`restored`,history:{fields:{value:{kind:`gauge`,unitFrom:`unit`,minIntervalMs:3e4}}},volatileStateFields:[`lastFetchedAt`]},SF=z([`text`,`timestamp`,`watermark`]),CF=z([`top-left`,`top-center`,`top-right`,`bottom-left`,`bottom-center`,`bottom-right`,`custom`]),wF=F({overlays:P(F({id:k(),kind:SF,enabled:j(),text:k().optional(),position:CF.optional(),availablePositions:P(CF).readonly(),readOnly:j().optional(),maxCharacters:A().int().positive().optional()})).readonly()}),TF=F({enabled:j().optional(),text:k().optional(),position:CF.optional()}).partial(),EF={name:`osd`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Camera],methods:{setOverlay:V(F({deviceId:A(),overlayId:k(),patch:TF}),N(),{kind:`mutation`,auth:`admin`})},events:{onStatusChanged:{data:F({deviceId:A(),status:wF})}},status:{schema:wF,kind:`command-driven`},settings:{bindings:[{kind:`array`,statusPath:`overlays`,idField:`id`,method:`setOverlay`,idArg:`overlayId`,patchArg:`patch`,sectionId:`osd`,sectionTitle:`Video overlays`,itemFields:{enabled:{label:e=>`${String(e.id)} enabled`,kind:`boolean`},text:{label:e=>`${String(e.id)} text`,kind:`text`,when:e=>e.kind!==`timestamp`&&!e.readOnly},position:{label:e=>`${String(e.id)} position`,kind:`select`,options:e=>e.availablePositions??[],when:e=>Array.isArray(e.availablePositions)&&e.availablePositions.length>0}}}]}};z([`value`,`unit`,`full`]),z([`value+unit`,`value`,`unit`]);var DF=F({containerId:A().int().optional(),deviceId:A().int()}),OF=F({alias:k().min(1).max(32).regex(/^[A-Za-z][A-Za-z0-9_-]*$/,`alias must start with a letter`),pick:DF,capName:k().min(1).max(64),valuePath:k().min(1).max(64),displayUnit:k().max(16).optional(),maxDecimals:A().int().min(0).max(4).default(1),valueMap:R(k(),k()).optional()}),kF=F({id:k().min(1).max(64),name:k().min(1).max(64),bindings:P(OF).max(32).default([]),parser:k().max(256).default(``)}),AF=L(`kind`,[F({kind:B(`none`)}),F({kind:B(`static`),text:k().max(64)}),F({kind:B(`clock`),pattern:k().min(1).max(32).default(`HH:mm`),timezone:k().min(1).max(64).optional()}),F({kind:B(`device-state`),deviceId:A().int().optional(),capName:k().min(1).max(64),valuePath:k().min(1).max(64),displayUnit:k().max(16).optional()}),F({kind:B(`latest-recognition`),recognition:z([`person`,`plate`])}),F({kind:B(`template`),templateId:k().min(1).max(64)})]),jF=F({enabled:j().default(!0),source:AF,template:k().max(96).default("${value}"),maxDecimals:A().int().min(0).max(4).default(1),valueMap:R(k(),k()).optional(),schedule:tS.optional(),conditions:yS.optional()}),MF=F({slotId:k(),kind:SF,readOnly:j(),cameraEnabled:j(),cameraText:k().optional(),binding:jF.nullable()}),NF=z([`written`,`unchanged`,`gated`,`unreadable`,`disabled`,`unbound`,`failed`]),PF=F({slotId:k(),outcome:NF,text:k(),reason:k().optional()}),FF=z([`number`,`boolean`,`string`,`enum`]),IF=F({deviceId:A().int(),deviceName:k(),capName:k(),valuePath:k(),label:k(),valueType:FF,enumValues:P(k()).readonly().optional()}),LF={name:`osd-manager`,scope:`system`,mode:`singleton`,methods:{getDeviceOsd:V(F({deviceId:A().int()}),F({supported:j(),slots:P(MF)}),{auth:`admin`}),getSourceCatalog:V(F({deviceId:A().int()}),F({sources:P(IF)}),{auth:`admin`}),getConditionSupport:V(F({}),F({supported:P(k()),catalog:P(YS)}),{auth:`admin`}),setSlotBinding:V(F({deviceId:A().int(),slotId:k().min(1),binding:jF}),F({slot:MF,render:PF}),{kind:`mutation`,auth:`admin`}),clearSlotBinding:V(F({deviceId:A().int(),slotId:k().min(1)}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),setSlotCameraEnabled:V(F({deviceId:A().int(),slotId:k().min(1),enabled:j()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),copyDeviceConfiguration:V(F({sourceDeviceId:A().int(),targetDeviceId:A().int()}),F({copied:A().int().nonnegative(),skipped:A().int().nonnegative()}),{kind:`mutation`,auth:`admin`}),previewSlot:V(F({deviceId:A().int(),slotId:k().min(1),binding:jF.optional()}),PF,{kind:`mutation`,auth:`admin`}),renderDevice:V(F({deviceId:A().int()}),F({results:P(PF)}),{kind:`mutation`,auth:`admin`}),listTemplates:V(F({}),F({templates:P(kF)}),{auth:`admin`}),upsertTemplate:V(F({template:kF}),F({template:kF}),{kind:`mutation`,auth:`admin`}),deleteTemplate:V(F({templateId:k().min(1).max(64)}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`})}},RF=z([`normal`,`offline`,`on_batteries`]),zF=A().int().min(4).max(200),BF=F({foodLevel:A().nullable(),food1:A().nullable(),food2:A().nullable(),lowFood:j(),batteryPower:A().min(0).max(100).nullable(),desiccantLeftDays:A().nullable(),feeding:j(),status:RF.nullable(),error:k().nullable(),errorCode:A().nullable(),isDualHopper:j(),childLock:j(),indicatorLight:j(),feedSound:j(),volume:A(),lastFetchedAt:A()}),VF={name:`pet-feeder`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.PetFeeder],methods:{feed:V(F({deviceId:A().int().nonnegative(),grams:zF.optional(),hopper1:zF.optional(),hopper2:zF.optional()}),N(),{kind:`mutation`,auth:`protected`}),cancelFeed:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`}),resetDesiccant:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`}),markFoodReplenished:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`}),callPet:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`}),playSound:V(F({deviceId:A().int().nonnegative(),soundId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`}),setChildLock:V(F({deviceId:A().int().nonnegative(),on:j()}),N(),{kind:`mutation`,auth:`protected`}),setIndicatorLight:V(F({deviceId:A().int().nonnegative(),on:j()}),N(),{kind:`mutation`,auth:`protected`}),setFeedSound:V(F({deviceId:A().int().nonnegative(),on:j()}),N(),{kind:`mutation`,auth:`protected`}),setVolume:V(F({deviceId:A().int().nonnegative(),level:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`})},status:{schema:BF,kind:`poll`},runtimeState:BF,durability:`session`,history:{fields:{foodLevel:{kind:`gauge`},food1:{kind:`gauge`},food2:{kind:`gauge`},batteryPower:{kind:`gauge`,unit:`%`,deadband:2},desiccantLeftDays:{kind:`gauge`,unit:`days`}}}},HF=F({id:k(),name:k(),sampleCount:A().int().nonnegative(),coverMediaId:A().int().optional(),coverBase64:k().optional()}),UF=F({id:k(),text:k(),score:A(),addedAt:A().int(),deviceId:A().int().optional(),base64:k().optional()}),WF=F({plateId:k(),deviceId:A().int(),trackId:k(),timestamp:A().int(),text:k(),score:A(),corrected:j(),recognizedVehicleId:k().optional(),vehicleName:k().optional(),assigned:j(),plateBbox:Nm.optional(),keyFrameMediaId:A().int().optional(),base64:k().optional(),cropUrl:k().optional()}),GF=F({mediaId:A().int(),kind:k(),url:k(),sizeBytes:A(),timestamp:A()}),KF=F({plateIds:P(k()).readonly(),representativePlateId:k(),representativeText:k(),size:A().int(),cohesion:A()}),qF={name:`plate-gallery`,scope:`system`,mode:`singleton`,methods:{listPlates:V(F({deviceId:A().int().optional(),limit:A().int().positive().optional(),includeCrops:j().optional()}).optional(),P(WF).readonly()),getPlateByTrack:V(F({deviceId:A().int(),trackId:k()}),WF.nullable()),getPlateMedia:V(F({plateId:k()}),P(GF).readonly()),searchPlates:V(F({text:k().min(1),maxDistance:A().int().min(0).optional(),limit:A().int().positive().optional(),includeCrops:j().optional()}),P(WF).readonly()),suggestPlateClusters:V(F({maxDistance:A().int().min(0).optional(),minClusterSize:A().int().min(2).optional(),limit:A().int().positive().optional()}).optional(),P(KF).readonly()),correctPlateText:V(F({plateId:k(),text:k().min(1)}),N(),{kind:`mutation`,auth:`admin`}),deletePlate:V(F({plateId:k()}),N(),{kind:`mutation`,auth:`admin`}),listVehicles:V(F({includeCrops:j().optional()}).optional(),P(HF).readonly()),createVehicle:V(F({name:k().min(1)}),HF,{kind:`mutation`,auth:`admin`}),renameVehicle:V(F({id:k(),name:k().min(1)}),N(),{kind:`mutation`,auth:`admin`}),deleteVehicle:V(F({id:k()}),N(),{kind:`mutation`,auth:`admin`}),listVehicleSamples:V(F({vehicleId:k()}),P(UF).readonly()),removeVehicleSample:V(F({vehicleId:k(),sampleId:k()}),N(),{kind:`mutation`,auth:`admin`}),assignPlate:V(F({plateId:k(),vehicleId:k()}),N(),{kind:`mutation`,auth:`admin`}),unassignPlate:V(F({plateId:k()}),N(),{kind:`mutation`,auth:`admin`}),assignPlates:V(F({plateIds:P(k()).min(1),vehicleId:k()}),F({assigned:A().int(),failed:P(k()).readonly()}),{kind:`mutation`,auth:`admin`}),unassignPlates:V(F({plateIds:P(k()).min(1)}),F({unassigned:A().int(),failed:P(k()).readonly()}),{kind:`mutation`,auth:`admin`})}},JF=z(Gl),YF=z([`videotoolbox`,`cuda`,`nvdec`,`vaapi`,`qsv`,`d3d11va`,`dxva2`,`amf`,`vdpau`,`drm`,`coreml`,`tensorrt`,`openvino`,`directml`,`webgpu`,`none`]).nullable().optional(),XF=F({preferred:P(k()).readonly(),rationale:k()}),ZF=z([`h264_videotoolbox`,`hevc_videotoolbox`,`h264_vaapi`,`hevc_vaapi`,`h264_nvenc`,`hevc_nvenc`,`h264_qsv`,`hevc_qsv`,`h264_amf`,`hevc_amf`,`libx264`,`libx265`]);F({encoders:P(F({encoder:ZF,codec:z([`H264`,`H265`]),family:z([`videotoolbox`,`vaapi`,`nvenc`,`qsv`,`amf`,`software`]),available:j(),reason:k().optional()})).readonly(),defaultH264:ZF,defaultH265:ZF,probedAt:A()}),F({methods:P(k()).readonly(),probedAt:A()});var QF=z([`darwin`,`linux`,`win32`]),$F=z([`arm64`,`x64`]),eI=F({type:z([`nvidia`,`amd`,`intel`,`apple`]),name:k(),memoryMB:A().optional()}),tI=F({type:z([`apple-ane`,`intel-npu`,`amd-xdna`]),name:k().optional(),generation:z([`xdna1`,`xdna2`]).optional()}),nI=F({type:B(`coral-edgetpu`),bus:k().optional()}),rI=F({platform:QF,arch:$F,cpuModel:k(),cpuCores:A(),totalRAM_MB:A(),availableRAM_MB:A(),gpu:eI.nullable(),npu:tI.nullable(),coral:nI.nullable().optional()}),iI=F({runtime:B(`python`),backend:k(),format:z([`onnx`,`coreml`,`openvino`,`tflite`]),score:A(),reason:k(),available:j()}),aI=F({key:k(),backend:k(),device:k(),format:JF,runtime:B(`python`),score:A(),available:j()}),oI=F({hardware:rI,scores:P(iI).readonly(),bestScore:iI,pythonPath:k().nullable(),devices:P(aI).readonly()}),sI=F({modelId:k(),name:k(),minRAM_MB:A(),accuracyScore:A(),formats:P(k()).readonly()}),cI=F({modelId:k(),runtime:B(`python`),backend:k(),format:JF,reason:k()}),lI={name:`platform-probe`,scope:`system`,mode:`singleton`,methods:{getCapabilities:V(N(),oI),getHardware:V(N(),rI),resolveInferenceConfig:V(F({requirements:P(sI).readonly()}),cI),resolveHwAccel:V(F({prefer:YF}),XF)}},uI=F({watts:A().optional(),kwhTotal:A().optional(),volts:A().optional(),amps:A().optional(),va:A().optional(),powerFactor:A().min(0).max(1).optional(),lastFetchedAt:A(),unit:k().optional(),precision:A().int().min(0).max(10).optional()}),dI={name:`power-meter`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Sensor],methods:{},status:{schema:uI,kind:`push`},runtimeState:uI,durability:`restored`,history:{fields:{watts:{kind:`gauge`,unit:`W`,deadband:1,minIntervalMs:3e4},kwhTotal:{kind:`counter`,unit:`kWh`,deadband:.01,minIntervalMs:6e4},volts:{kind:`gauge`,unit:`V`,deadband:1,minIntervalMs:3e4},amps:{kind:`gauge`,unit:`A`,deadband:.05,minIntervalMs:3e4},va:{kind:`gauge`,unit:`VA`,deadband:1,minIntervalMs:3e4},powerFactor:{kind:`gauge`,unit:`ratio`,deadband:.01,minIntervalMs:6e4}}},volatileStateFields:[`lastFetchedAt`]},fI=F({latitude:A().min(-90).max(90),longitude:A().min(-180).max(180),accuracyMeters:A().nonnegative()}),pI=F({state:k(),location:k().nullable(),gps:fI.nullable(),batteryPercent:A().min(0).max(100).nullable(),lastChangedAt:A()}),mI={name:`presence`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Presence],methods:{},status:{schema:pI,kind:`push`},runtimeState:pI,durability:`restored`,history:{fields:{batteryPercent:{kind:`gauge`,unit:`%`,deadband:1}}},volatileStateFields:[`lastChangedAt`]},hI=F({hpa:A(),lastFetchedAt:A(),unit:k().optional(),precision:A().int().min(0).max(10).optional()}),gI={name:`pressure-sensor`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Sensor],methods:{},status:{schema:hI,kind:`push`},runtimeState:hI,durability:`restored`,history:{fields:{hpa:{kind:`gauge`,unit:`hPa`,deadband:.1}}},volatileStateFields:[`lastFetchedAt`]},_I=L(`kind`,[Ux,Wx]),vI=F({id:A(),enabled:j(),shape:_I}),yI=F({enabled:j(),regions:P(vI).nullable(),audioEnabled:j().nullable(),lastFetchedAt:A()}),bI=F({maxRegions:A(),supportedShapes:P(Kx),polygonVertices:qx.optional(),supportsAudioMute:j()}),xI=F({enabled:j().optional(),regions:P(vI).optional()}),SI={name:`privacy-mask`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Camera],deviceConfig:{ui:{kind:`widget`,widgetId:`host/privacy-mask-grid`,tab:`image`,label:`Privacy Mask`}},methods:{getOptions:V(F({deviceId:A()}),bI),setMask:V(F({deviceId:A(),patch:xI}),N(),{kind:`mutation`,auth:`admin`}),setAudioEnabled:V(F({deviceId:A(),enabled:j()}),N(),{kind:`mutation`,auth:`admin`})},status:{schema:yI,kind:`poll`},runtimeState:yI,durability:`restored`,history:`none`,volatileStateFields:[`lastFetchedAt`]},CI=z([`home`,`day-mode`,`night-mode`,`day-night-auto`,`set-limits`,`save-limits`,`reboot`,`osd-menu`]),wI=F({id:k(),name:k(),fn:CI.nullable(),writable:j()}),TI=F({pan:A().nullable(),tilt:A().nullable(),zoom:A().nullable()}),EI=F({pan:A().optional(),tilt:A().optional(),zoom:A().optional(),speed:A().optional()}),DI=TI.extend({autofocus:j()}),OI=F({hasPan:j(),hasTilt:j(),hasZoom:j(),supportsPresets:j(),maxPresets:A().optional(),hasAutofocus:j(),speedSteps:A().int().positive().nullable(),moveImpulseMs:A().int().positive().nullable()}),kI=F({presetId:k().nullable(),source:z([`operator`,`firmware`,`native`,`none`])}),AI=F({enabled:j(),seconds:A().int()}),jI={name:`ptz`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Camera],deviceConfig:{ui:{kind:`widget`,widgetId:`host/ptz-panel`,tab:`ptz`,topTab:!0,label:`PTZ`,order:0}},methods:{move:V(EI.extend({deviceId:A()}),N(),{kind:`mutation`}),continuousMove:V(EI.extend({deviceId:A()}),N(),{kind:`mutation`}),stop:V(F({deviceId:A()}),N(),{kind:`mutation`}),getPresets:V(F({deviceId:A()}),P(wI)),goToPreset:V(F({deviceId:A(),presetId:k()}),N(),{kind:`mutation`}),savePreset:V(F({deviceId:A(),presetId:k(),name:k()}),N(),{kind:`mutation`,auth:`admin`}),deletePreset:V(F({deviceId:A(),presetId:k()}),N(),{kind:`mutation`,auth:`admin`}),getOptions:V(F({deviceId:A()}),OI),goHome:V(F({deviceId:A()}),N(),{kind:`mutation`}),getHomePreset:V(F({deviceId:A()}),kI),setHomePreset:V(F({deviceId:A(),presetId:k().nullable()}),N(),{kind:`mutation`,auth:`admin`}),captureHomeHere:V(F({deviceId:A()}),N(),{kind:`mutation`,auth:`admin`}),getHomeReturn:V(F({deviceId:A()}),AI.nullable()),setHomeReturn:V(F({deviceId:A(),enabled:j(),seconds:A().int().min(0).max(3600)}),N(),{kind:`mutation`,auth:`admin`}),getPosition:V(F({deviceId:A()}),TI),setAutofocus:V(F({deviceId:A(),enabled:j()}),N(),{kind:`mutation`})},status:{schema:DI,kind:`command-driven`}},MI=F({targetType:k().describe(`Vendor target string (people/vehicle/pet); empty = camera default`),stopDelaySeconds:A().int().min(0).max(300),disappearDelaySeconds:A().int().min(0).max(300)}),NI=F({value:k(),label:k()}),PI=F({enabled:j(),lastChangedAt:A(),currentSettings:MI.nullable(),supportedTargetTypes:P(NI)}),FI=PI.extend({lastFetchedAt:A()}),II={name:`ptz-autotrack`,scope:`device`,deviceNative:!0,mode:`singleton`,kind:`wrapper`,defaultActive:!1,deviceTypes:[U.Camera],deviceConfig:{ui:{kind:`widget`,widgetId:`host/ptz-autotrack`,tab:`ptz`,topTab:!0,label:`Auto-Tracking`,order:5}},methods:{getStatus:V(F({deviceId:A()}),PI),setEnabled:V(F({deviceId:A(),enabled:j()}),N(),{kind:`mutation`}),getSettings:V(F({deviceId:A()}),MI.nullable()),setSettings:V(F({deviceId:A(),settings:MI.partial()}),N(),{kind:`mutation`})},events:{onStatusChanged:{data:F({deviceId:A(),status:PI})}},status:{schema:PI,kind:`command-driven`},runtimeState:FI,durability:`session`,history:`none`},LI={name:`reboot`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Camera,U.Sensor,U.Switch],methods:{reboot:V(F({deviceId:A().int().nonnegative()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`})}},RI=F({profile:k(),startMs:A(),endMs:A()}),zI=z([`read`,`unreadable`]),BI=F({deviceId:A(),read:zI,ranges:P(RI),profilesWithFootage:P(k())}),VI=F({deviceId:A(),read:zI,days:P(A())}),HI=F({deviceId:A(),localMasterPath:k().nullable(),playbackUrl:k().nullable(),playbackEndpoints:P(k())}),UI=F({state:z([`ok`,`sleeping`,`unreachable`,`no-storage`,`index-empty`]),reason:k().optional(),coverageAsOf:A().optional()}),WI=F({source:k(),label:k(),addonId:k().optional(),availability:UI}),GI=F({transport:z([`archive`,`stream`,`realtime`]),coverage:z([`continuous`,`sparse`]),seek:z([`free`,`forward`,`segment`]),stepBack:j(),scrub:j(),rates:P(A().positive()).min(1).readonly(),exclusive:j()}),KI=L(`kind`,[F({kind:B(`hls`),manifest:HI}),F({kind:B(`clip`),source:k(),clipId:k(),startsAtMs:A()}),F({kind:B(`none`),reason:k()})]),qI={name:`recording`,scope:`device`,mode:`collection`,kind:`wrapper`,defaultActive:!0,deviceTypes:[U.Camera],methods:{listSources:V(F({deviceId:A()}),P(WI).readonly(),{kind:`query`,auth:`protected`}),getAvailability:V(F({deviceId:A(),provider:k().min(1),fromMs:A(),toMs:A(),profile:k().optional()}),BI,{kind:`query`,auth:`protected`}),getDaysWithRecordings:V(F({deviceId:A(),provider:k().min(1),fromMs:A(),toMs:A(),tzOffsetMinutes:A()}),VI,{kind:`query`,auth:`protected`}),getPlayback:V(F({deviceId:A(),provider:k().min(1),fromMs:A(),toMs:A(),profile:Al.optional()}),KI,{kind:`query`,auth:`protected`}),getPlaybackOptions:V(F({deviceId:A(),provider:k().min(1)}),GI,{kind:`query`,auth:`protected`})}},JI=F({deviceId:A(),enabled:j(),activeMode:gf,nodeId:k(),storageBytes:A()}),YI=F({deviceId:A(),read:z([`read`,`unreadable`]),ranges:P(RI).readonly(),profilesWithFootage:P(k()).readonly()}),XI=F({deviceId:A(),read:z([`read`,`unreadable`]),days:P(A()).readonly()}),ZI=F({deviceId:A(),usedBytes:A(),oldestMs:A().nullable().optional(),segments:A().optional(),residentBytes:A().optional(),residentOldestMs:A().nullable().optional()}),QI=F({locationId:k().nullable(),locationIds:P(k()).optional(),root:k().optional(),usedBytes:A(),availableBytes:A().nullable(),totalBytes:A().nullable()}),$I=F({nodeId:k(),totalUsedBytes:A(),devices:P(ZI),devicesRead:z([`archive`,`unavailable`]).optional(),complete:j().optional(),locations:P(QI).optional()}),eL=F({deviceId:A(),profile:k(),fromLocationId:k(),toLocationId:k(),bytes:A(),files:A().int()}),tL=z([`unassigned`,`target-not-writable`,`below-threshold`,`no-headroom`]),nL=F({deviceId:A(),profile:k(),fromLocationId:k(),toLocationId:k().nullable(),bytes:A(),reason:tL}),rL=F({moves:P(eL),skipped:P(nL),bytesToMove:A(),jobIds:P(k())}),iL=F({throttleMbps:A().min(1).max(1e3).optional(),minMoveGb:A().min(0).optional()}),aL=F({deviceId:A().int(),profile:k(),locationId:k()}),oL=F({deviceId:A().int(),locationId:k()}),sL=F({assignments:P(aL),pins:P(oL),defaultLocations:R(k(),k())}),cL=F({deviceId:A().int(),locationId:k().nullable()}),lL=L(`kind`,[F({kind:B(`segment`),startMs:A(),durMs:A(),bytes:A()}),F({kind:B(`gap`),nearestEdgeMs:A().nullable(),prevEndMs:A().nullable().optional()})]),uL=F({data:vl(Uint8Array)}),dL=F({data:vl(Uint8Array),gopStartMs:A(),gopDurMs:A()}),fL=L(`kind`,[F({kind:B(`ok`),data:vl(Uint8Array),gopStartMs:A(),gopDurMs:A(),reachesRequestedEnd:j()}),F({kind:B(`spans-multiple-segments`),segmentEndMs:A()})]),pL={name:`recording-archive`,scope:`system`,mode:`singleton`,exposesDeviceSettings:!0,status:{schema:JI,kind:`command-driven`},methods:{getAvailabilityBatch:V(F({deviceIds:P(A()).min(1).max(200),fromMs:A(),toMs:A()}),P(YI).readonly(),{kind:`query`,auth:`protected`}),getDaysWithRecordingsBatch:V(F({deviceIds:P(A()).min(1).max(200),fromMs:A(),toMs:A(),tzOffsetMinutes:A()}),P(XI).readonly(),{kind:`query`,auth:`protected`}),getStorageUsage:V(F({}),$I,{kind:`query`,auth:`admin`}),getDeviceConfig:V(F({deviceId:A()}),Tf,{kind:`query`,auth:`protected`}),locateSegment:V(F({deviceId:A(),profile:k(),epochMs:A()}),lL,{kind:`query`,auth:`admin`}),readSegmentBytes:V(F({deviceId:A(),profile:k(),startMs:A()}),uL,{kind:`query`,auth:`admin`}),readGopBytes:V(F({deviceId:A(),profile:k(),startMs:A(),epochMs:A()}),dL,{kind:`query`,auth:`admin`}),readWindowBytes:V(F({deviceId:A(),profile:k(),startMs:A(),fromMs:A(),toMs:A()}),fL,{kind:`query`,auth:`admin`}),setDeviceConfig:V(F({deviceId:A(),config:Tf}),Tf,{kind:`mutation`,auth:`admin`}),rescanStorage:V(F({deviceId:A()}),JI,{kind:`mutation`,auth:`admin`}),pruneFootage:V(F({deviceId:A(),reason:sf.optional()}),F({floorMs:A().nullable(),deletedBuckets:A().int(),reclaimedBytes:A().int()}),{kind:`mutation`,auth:`admin`}),deleteFootprint:V(F({deviceId:A(),fromMs:A().optional(),toMs:A().optional()}),F({deletedBuckets:A().int(),reclaimedBytes:A().int()}),{kind:`mutation`,auth:`admin`}),listOpsLog:V(lf,P(cf).readonly(),{kind:`query`,auth:`admin`}),renderGif:V(F({deviceId:A(),aroundMs:A(),preRollSec:A().min(0).max(30).default(2),postRollSec:A().min(0).max(30).default(5),maxWidth:A().int().min(120).max(1280).default(480),fps:A().int().min(1).max(15).default(5)}),F({gifBase64:k(),fromMs:A(),toMs:A()}),{kind:`mutation`,auth:`admin`}),renderClip:V(F({deviceId:A(),aroundMs:A(),preRollSec:A().min(0).max(30).default(3),postRollSec:A().min(0).max(30).default(7),maxWidth:A().int().min(160).max(1920).default(640)}),F({clipBase64:k(),mime:k(),fromMs:A(),toMs:A(),bytes:A().int()}),{kind:`mutation`,auth:`admin`}),pauseForStorageMigration:V(Af,F({paused:B(!0)}),{kind:`mutation`,auth:`admin`}),resumeForStorageMigration:V(Af,F({resumed:B(!0)}),{kind:`mutation`,auth:`admin`}),refreshStorageLocationsForMigration:V(Af,F({refreshed:B(!0)}),{kind:`mutation`,auth:`admin`}),startStorageMigrationMove:V(jf,F({jobId:k()}),{kind:`mutation`,auth:`admin`}),getStorageMigrationMoveStatus:V(F({jobId:k()}),Df.nullable(),{auth:`admin`}),cancelStorageMigrationMove:V(F({jobId:k()}),F({cancelled:j()}),{kind:`mutation`,auth:`admin`}),relocateFootage:V(kf,F({jobId:k()}),{kind:`mutation`,auth:`admin`}),listRelocateJobs:V(F({}),P(Df).readonly(),{kind:`query`,auth:`admin`}),getRelocateResidue:V(Qf,$f,{kind:`query`,auth:`admin`}),reconcileLedgerAgainstDisk:V(ep,ip,{kind:`mutation`,auth:`admin`}),cancelRelocateJob:V(F({jobId:k()}),F({cancelled:j()}),{kind:`mutation`,auth:`admin`}),planStorageRebalance:V(iL,rL,{kind:`query`,auth:`admin`}),startStorageRebalance:V(iL,rL,{kind:`mutation`,auth:`admin`}),getPlacement:V(F({}),sL,{kind:`query`,auth:`admin`}),setDevicePlacement:V(cL,F({ok:B(!0)}),{kind:`mutation`,auth:`admin`})}},mL=A().min(.25).max(32),hL=F({fromSec:A().nonnegative(),toSec:A().nonnegative()}).refine(e=>e.toSec>e.fromSec,{message:`dense range must have toSec > fromSec`}),gL=F({everyMs:A().int().positive(),ranges:P(hL).min(1).max(200)}),_L=F({everyMs:A().int().positive(),outputFps:A().int().min(1).max(60).optional(),dense:gL.optional()}).superRefine((e,t)=>{e.dense!==void 0&&e.dense.everyMs>=e.everyMs&&t.addIssue({code:bl.custom,message:`dense.everyMs must be strictly smaller than the base everyMs`,path:[`dense`,`everyMs`]})}),vL=F({speed:mL.optional(),timelapse:_L.optional(),includeAudio:j(),maxLifeMs:A().int().positive(),deleteAfterDownload:j(),title:k().max(200).optional(),notifyTargetIds:P(k().min(1)).max(20).optional()}).superRefine((e,t)=>{e.speed!==void 0&&e.timelapse!==void 0&&t.addIssue({code:bl.custom,message:`speed and timelapse are mutually exclusive`,path:[`timelapse`]})}),yL=z([`queued`,`rendering`,`ready`,`failed`,`expired`,`deleted`]),bL=L(`kind`,[F({kind:B(`footage`),deviceId:A(),profiles:P(k()).min(1),fromMs:A(),toMs:A()}),F({kind:B(`clip`),deviceId:A(),provider:k().min(1),source:k().min(1),sourceLabel:k().min(1),clipId:k().min(1),catalogWindow:F({sinceMs:A(),untilMs:A()}),profile:z([`high`,`mid`,`low`]),wake:dj.optional()})]),xL=F({id:k(),deviceId:A(),profile:k(),fromMs:A(),toMs:A(),subject:bL.optional(),options:vL,state:yL,progressPct:A().nullable(),fileBytes:A().nullable(),expiresAt:A(),deleteAfterDownload:j(),downloadedAt:A().nullable(),createdAt:A(),createdBy:k(),error:k().nullable()});z([`catalog-miss`,`catalog-unreachable`,`no-file-for-window`,`clip-in-progress`,`unsupported-option`,`sleeping`,`camera-refused`,`fetch-failed`,`too-large-to-transfer`,`wake-expired`]);var SL=F({url:k(),endpoints:P(k())}),CL=F({base64:k(),contentType:k(),name:k(),bytes:A().int().nonnegative()});function wL(e){return e.profiles!==void 0&&e.profiles.length>0?[...e.profiles]:typeof e.profile==`string`&&e.profile.length>0?[e.profile]:[]}var TL={name:`recording-export`,scope:`system`,mode:`singleton`,methods:{createExport:V(F({deviceId:A(),profile:k().optional(),profiles:P(k()).min(1).optional(),fromMs:A().optional(),toMs:A().optional(),subject:bL.optional(),options:vL}).superRefine((e,t)=>{if(e.subject?.kind===`clip`){e.subject.deviceId!==e.deviceId&&t.addIssue({code:bl.custom,message:`subject.deviceId (${e.subject.deviceId}) must equal deviceId (${e.deviceId}) — the top-level field is what per-device scope enforcement reads`,path:[`subject`,`deviceId`]}),(e.fromMs!==void 0||e.toMs!==void 0)&&t.addIssue({code:bl.custom,message:`a clip export asks for no time range: the camera chose the boundaries and they are read from the catalog row`,path:[`fromMs`]});return}e.subject?.kind===`footage`&&e.subject.deviceId!==e.deviceId&&t.addIssue({code:bl.custom,message:`subject.deviceId (${e.subject.deviceId}) must equal deviceId (${e.deviceId})`,path:[`subject`,`deviceId`]});let n=e.subject?.kind===`footage`?e.subject.fromMs:e.fromMs,r=e.subject?.kind===`footage`?e.subject.toMs:e.toMs;(typeof n!=`number`||typeof r!=`number`)&&t.addIssue({code:bl.custom,message:`a footage export needs fromMs and toMs`,path:[`fromMs`]}),(e.subject?.kind===`footage`?[...e.subject.profiles]:wL(e)).length<1&&t.addIssue({code:bl.custom,message:`pass profiles[] (min 1) or legacy profile`,path:[`profiles`]})}),xL,{kind:`mutation`,auth:`protected`}),listExports:V(F({deviceId:A().optional()}),P(xL),{kind:`query`,auth:`protected`}),getExport:V(F({exportId:k()}),xL,{kind:`query`,auth:`protected`}),cancelExport:V(F({exportId:k()}),xL,{kind:`mutation`,auth:`protected`}),deleteExport:V(F({exportId:k()}),xL,{kind:`mutation`,auth:`protected`}),getDownloadUrl:V(F({exportId:k()}),SL,{kind:`query`,auth:`protected`}),readExportBytes:V(F({exportId:k()}),CL,{kind:`query`,auth:`protected`})}},EL=z([`continuous`,`motion`,`person`,`vehicle`,`animal`,`lineCrossing`,`intrusion`,`loitering`,`alarmInput`]),DL=F({trigger:EL,day:A().int().min(0).max(6),startMinute:A().int().min(0).max(1439),endMinute:A().int().min(1).max(1440)}),OL=F({id:k(),label:k().optional(),status:z([`ok`,`unformatted`,`error`,`offline`,`unknown`]),capacityMb:A().nullable(),freeMb:A().nullable(),writable:j().optional()}),kL=F({storage:L(`kind`,[F({kind:B(`present`),volumes:P(OL)}),F({kind:B(`absent`),reason:k()}),F({kind:B(`unknown`),reason:k()})]),tracks:P(F({id:k(),enabled:j(),isVideo:j(),codec:k().nullable(),resolution:k().nullable(),overwriteWhenFull:j().nullable()})),primaryTrackId:k().nullable(),enabled:j().nullable(),overwriteWhenFull:j().nullable(),preRecordSec:A().nullable(),postRecordSec:A().nullable(),segmentMinutes:A().nullable(),windows:P(DL),unreadableWindows:A(),recordingToNowhere:j(),lastFetchedAt:A()}),AL=F({min:A(),max:A(),step:A()}),jL=F({values:P(A()).min(1),sentinel:F({value:A(),meaning:z([`no-limit`,`disabled`])}).optional()}),ML=F({readable:j(),writable:j(),reason:k().optional()}),NL=F({support:ML,granularityMinutes:A(),triggers:P(EL),supportsOverlappingTriggers:j()}),PL=F({enabled:ML,overwriteWhenFull:ML,preRecordSec:ML,preRecordSecRange:AL.optional(),preRecordSecAllowed:jL.optional(),postRecordSec:ML,postRecordSecRange:AL.optional(),postRecordSecAllowed:jL.optional(),segmentMinutes:ML,segmentMinutesRange:AL.optional(),segmentMinutesAllowed:jL.optional(),schedule:NL}),FL=F({enabled:j().optional(),overwriteWhenFull:j().optional(),preRecordSec:A().optional(),postRecordSec:A().optional(),segmentMinutes:A().optional(),windows:P(DL).optional()}),IL={name:`recording-onboard`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Camera],deviceConfig:{ui:{kind:`derived-form`,builderId:`recording-onboard`,tab:`recording`}},methods:{getOptions:V(F({deviceId:A()}),PL),setSettings:V(F({deviceId:A(),settings:FL}),N(),{kind:`mutation`,auth:`admin`})},status:{schema:kL,kind:`poll`},runtimeState:kL,durability:`restored`,history:`none`,volatileStateFields:[`lastFetchedAt`]},LL=F({active:j(),reason:k(),lastChangedAt:A()}),RL=LL.extend({lastFetchedAt:A()}),zL={name:`recording-signal`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Camera],methods:{getStatus:V(F({deviceId:A()}),LL)},status:{schema:LL,kind:`push`,empty:{active:!1,reason:`unknown`,lastChangedAt:0}},runtimeState:RL,durability:`session`,history:`none`},BL=k(),VL=z([`skip`,`judge-anyway`]),HL=z([`matched`,`diverged`,`unknown`]),UL=z([`no-reference-for-condition`,`view-shifted`,`no-vision-profile`,`encoder-model-changed`,`no-snapshot`]),WL=F({embedding:P(A()),modelId:k(),condition:BL,capturedAt:A(),thumbnailMediaId:A().int().optional(),anchorEmbedding:P(A()).optional()}),GL=F({id:k(),label:k(),references:P(WL),textPrompts:P(k()).optional(),referenceCount:A(),currentlyMatched:j()}),KL=L(`mode`,[F({mode:B(`similarity`),threshold:A().min(0).max(1),hysteresisCount:A().int().positive()}),F({mode:B(`llm`),prompt:k(),profileId:k().optional(),hysteresisCount:A().int().positive()})]),qL=.85,JL=`skip`,YL=F({enabled:j().default(!1),prompt:k().min(1).max(1e3),profileId:k().optional(),timeoutMs:A().int().min(1e3).max(2e4).default(8e3),maxImagePx:A().int().min(64).max(2048).default(448),onTimeout:z([`flip`,`hold`]).default(`hold`)}),XL=F({id:k(),label:k(),roi:Ux,enabled:j(),triggerMode:z([`periodic`,`on-motion`,`both`]),checkIntervalSec:A().optional(),check:KL,states:P(GL),currentStateId:k().nullable(),lastCheckedAt:A().nullable(),lastConfidence:A().nullable(),currentCondition:BL.nullable(),availability:z([`ok`,`unavailable`]),unavailableReason:k().nullable(),baselineStateId:k().nullable(),emit:z([`latched`,`live`]).default(`latched`),verdict:HL,latched:j(),armedAt:A(),divergedAt:A().nullable(),restoredAt:A().nullable(),quietSeconds:A().int().min(0).max(3600).default(60),minObservationSpacingSec:A().int().min(0).max(3600).default(120),confirm:YL.optional(),anchorThreshold:A().min(0).max(1).default(qL),autoRestore:j().default(!1),onUncoveredCondition:VL.default(JL),suspendedCondition:BL.nullable().default(null),unavailable:UL.nullable(),coveredConditions:P(BL)}),ZL=F({monitors:P(XL),lastFetchedAt:A()}),QL=F({deviceId:A(),status:ZL.nullable()}),$L={name:`scene-monitor`,scope:`device`,mode:`singleton`,kind:`wrapper`,defaultActive:!0,deviceTypes:[U.Camera],methods:{listScenes:V(F({deviceId:A()}),ZL),listScenesBatch:V(F({deviceIds:P(A()).min(1).max(200)}),P(QL).readonly()),createScene:V(F({deviceId:A(),label:k(),roi:Ux,check:KL,triggerMode:z([`periodic`,`on-motion`,`both`]).optional(),checkIntervalSec:A().optional()}),XL,{kind:`mutation`,auth:`admin`}),updateScene:V(F({deviceId:A(),monitorId:k(),patch:F({label:k().optional(),roi:Ux.optional(),enabled:j().optional(),triggerMode:z([`periodic`,`on-motion`,`both`]).optional(),checkIntervalSec:A().optional(),check:KL.optional(),emit:z([`latched`,`live`]).optional(),quietSeconds:A().int().min(0).max(3600).optional(),minObservationSpacingSec:A().int().min(0).max(3600).optional(),anchorThreshold:A().min(0).max(1).optional(),autoRestore:j().optional(),onUncoveredCondition:VL.optional(),confirm:YL.nullable().optional()})}),N(),{kind:`mutation`,auth:`admin`}),deleteScene:V(F({deviceId:A(),monitorId:k()}),N(),{kind:`mutation`,auth:`admin`}),captureReference:V(F({deviceId:A(),monitorId:k(),stateId:k().optional(),label:k().optional(),condition:BL.optional()}),F({stateId:k(),referenceCount:A()}),{kind:`mutation`,auth:`admin`}),deleteReference:V(F({deviceId:A(),monitorId:k(),stateId:k(),index:A()}),N(),{kind:`mutation`,auth:`admin`}),recheckNow:V(F({deviceId:A(),monitorId:k()}),N(),{kind:`mutation`,auth:`admin`}),resetScene:V(F({deviceId:A(),monitorId:k(),recapture:j().optional()}),N(),{kind:`mutation`,auth:`admin`})},status:{schema:ZL,kind:`push`},runtimeState:ZL,durability:`session`,history:`none`},eR=z([`include`,`exclude`]),tR=F({id:k(),name:k().optional(),zoneIds:P(k()).min(1).readonly(),mode:eR,classFilter:P(k()).readonly().optional(),overlapThreshold:A().min(0).max(1).optional(),bboxInclusionPct:A().min(0).max(100).optional(),preferMask:j().optional(),enabled:j().default(!0)});P(tR).readonly();var nR=F({isRunning:j(),lastRunAt:A(),lastRunSuccess:j().nullable(),lastError:k().nullable(),lastChangedAt:A()}),rR={name:`script-runner`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Script],methods:{run:V(F({deviceId:A().int().nonnegative(),variables:R(k(),M()).optional()}),N(),{kind:`mutation`,auth:`admin`}),stop:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`admin`})},status:{schema:nR,kind:`push`},runtimeState:nR,durability:`session`,history:`none`},iR=F({detected:j(),lastChangedAt:A()}),aR={name:`smoke`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Sensor],methods:{},status:{schema:iR,kind:`push`},runtimeState:iR,durability:`restored`,history:{fields:{detected:{kind:`boolean`}}},volatileStateFields:[`lastChangedAt`]},oR=F({camStreamId:k().min(1),kind:Ml,url:k().optional(),codec:k().optional(),resolution:Nl.optional(),fps:A().positive().optional(),label:k().optional(),deviceFeatures:P(k()).optional(),autoEligible:j().optional(),profileHint:Al.optional(),metadata:R(k(),M()).optional()}),sR=F({descriptors:P(oR),lastFetchedAt:A()}),cR={name:`stream-catalog`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Camera],methods:{getCatalog:V(F({deviceId:A().int().nonnegative()}),P(oR).readonly())},runtimeState:sR,durability:`restored`,history:`none`,volatileStateFields:[`lastFetchedAt`]},lR=z([`main`,`sub`,`ext`]),uR=F({width:A(),height:A(),codec:z([`h264`,`h265`]),framerate:A(),bitrate:A(),bitrateMode:z([`vbr`,`cbr`]).optional(),encoderProfile:z([`high`,`main`,`baseline`]).optional(),gop:A().optional(),audio:j().optional()}),dR=F({main:uR.optional(),sub:uR.optional(),ext:uR.optional(),lastFetchedAt:A()}),fR=F({resolutions:P(F({width:A(),height:A()})),codecs:P(z([`h264`,`h265`])),framerates:P(A()),bitrates:P(A()),bitrateRange:Bc([A(),A()]).optional(),supportsBitrateMode:j(),supportsEncoderProfile:j(),supportsGop:j(),gop:F({min:A(),max:A(),step:A()}).optional()}),pR=F({main:fR.optional(),sub:fR.optional(),ext:fR.optional()}),mR=F({width:A().optional(),height:A().optional(),codec:z([`h264`,`h265`]).optional(),framerate:A().optional(),bitrate:A().optional(),bitrateMode:z([`vbr`,`cbr`]).optional(),encoderProfile:z([`high`,`main`,`baseline`]).optional(),gop:A().optional()}),hR={name:`stream-params`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Camera],deviceConfig:{ui:{kind:`derived-form`,builderId:`stream-params`,tab:`streaming`}},methods:{getOptions:V(F({deviceId:A()}),pR),setProfile:V(F({deviceId:A(),profile:lR,patch:mR}),N(),{kind:`mutation`,auth:`admin`}),getConfigSchema:V(F({deviceId:A()}),M().nullable())},status:{schema:dR,kind:`poll`},runtimeState:dR,durability:`restored`,history:`none`,volatileStateFields:[`lastFetchedAt`]},gR=F({on:j(),lastChangedAt:A()}),_R={name:`switch`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Switch,U.Siren,U.Light],methods:{setState:V(F({deviceId:A(),on:j()}),N(),{kind:`mutation`,auth:`protected`})},events:{onStateChanged:{data:F({deviceId:A(),on:j(),lastChangedAt:A()})}},status:{schema:gR,kind:`command-driven`},runtimeState:gR,durability:`restored`,history:{fields:{on:{kind:`boolean`}}},volatileStateFields:[`lastChangedAt`],settings:{bindings:[{kind:`scalar`,statusPath:`on`,method:`setState`,valueArg:`on`,field:{label:`On`,kind:`boolean`}}]}},vR=F({streaming:j(),notifications:j(),objectDetection:j(),remoteAccess:j(),agentCluster:j(),smartHome:j(),recordings:j(),backup:j(),repl:j()}),yR=F({status:B(`ok`),uptime:A()}),bR=F({name:k(),address:k(),family:k(),internal:j()}),xR=z([`operator-set`,`derived-from-ip`]),SR=F({location:F({latitude:A().min(-90).max(90),longitude:A().min(-180).max(180),source:xR,updatedAt:A(),label:k().optional()}).nullable(),derivationAttemptedAt:A().nullable(),derivationError:k().nullable()}),CR=F({latitude:A().min(-90).max(90),longitude:A().min(-180).max(180)}).nullable(),wR=z([`http`,`ws`,`mesh`,`unknown`]),TR=F({http:A(),ws:A(),mesh:A(),unknown:A()}),ER=F({plane:wR,procedure:k(),userAgent:k(),ip:k(),principal:k(),calls:A(),subscriptions:A(),perMin:A()}),DR=F({procedure:k(),calls:A(),planes:TR,subscriptions:A(),perMin:A()}),OR=F({armed:j(),elapsedMs:A(),windowMs:A(),armedUntilMs:A(),httpRequests:A(),batchedRequests:A(),procedureCalls:A(),planes:TR,planesExplainTotal:j(),wsConnections:A(),wsMessages:A(),subscriptions:A(),subscriptionStops:A(),distinctGroups:A(),unattributedCalls:A(),procedures:P(DR).readonly(),groups:P(ER).readonly()}).extend({persisted:j()}),kR=z([`debug`,`info`,`warn`,`error`]),AR=z([`request-census`]),jR=z([`cluster`,`node`,`component`]),MR=z([`default`,`cluster`,`node`,`component`]),NR=F({scope:jR,nodeId:k().nullable(),component:k().nullable(),level:kR.nullable()}),PR=F({level:kR,levelSource:MR}),FR=F({layers:P(NR).readonly()}),IR=F({id:AR,armed:j(),armedUntilMs:A(),remainingMs:A(),persisted:j()}),LR=F({id:AR,armMs:A().int().min(0),reportEveryMs:A().int().positive().optional()}),RR=F({channel:k(),armed:j(),armedUntilMs:A(),remainingMs:A(),deviceIds:P(A().int()).readonly().nullable()}),zR=F({channel:k().min(1),armMs:A().int().min(0),deviceIds:P(A().int()).readonly().nullable().optional()}),BR=F({level:kR.nullable().optional(),diagnostics:P(LR).readonly().optional(),channels:P(zR).readonly().optional(),opsLogRetentionDays:A().int().min(0).max(3650).optional()}),VR=cb.extend({addonId:k()}),HR=Ry.extend({addonId:k()}),UR=F({scopeNodeId:k().optional(),scopeComponent:k().optional()}),WR=F({scopeNodeId:k().optional(),scopeComponent:k().optional(),patch:BR}),GR=F({scopeNodeId:k().nullable(),scopeComponent:k().nullable(),effective:PR,explicit:FR,activeWindows:P(IR).readonly(),channels:P(yp).readonly(),activeChannels:P(RR).readonly(),opsLogRetentionDays:A().int().min(0),persisted:j()}),KR={name:`system`,scope:`system`,mode:`singleton`,methods:{info:V(N(),vR),health:V(N(),yR),featureFlags:V(N(),vR),networkAddresses:V(N(),P(bR).readonly()),getRetentionConfig:V(N(),M().nullable(),{auth:`admin`}),setRetentionConfig:V(R(k(),M()),Cc(),{kind:`mutation`,auth:`admin`}),forceRetentionCleanup:V(N(),N(),{kind:`mutation`,auth:`admin`}),getSiteLocation:V(N(),SR),setSiteLocation:V(CR,SR,{kind:`mutation`,auth:`admin`}),detectSiteLocation:V(N(),SR,{kind:`mutation`,auth:`admin`}),getRequestCensus:V(N(),OR,{auth:`admin`}),getLoadContributions:V(N(),P(VR).readonly(),{auth:`admin`}),getFailureContributions:V(N(),P(HR).readonly(),{auth:`admin`}),getLoggingSettings:V(UR,GR,{auth:`admin`}),setLoggingSettings:V(WR,GR,{kind:`mutation`,auth:`admin`})},mount:{kind:`server-provided`}},qR=F({tampered:j(),lastChangedAt:A()}),JR={name:`tamper`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Sensor],methods:{},status:{schema:qR,kind:`push`},runtimeState:qR,durability:`restored`,history:{fields:{tampered:{kind:`boolean`}}},volatileStateFields:[`lastChangedAt`]},YR=F({celsius:A(),lastFetchedAt:A(),unit:k().optional(),precision:A().int().min(0).max(10).optional()}),XR={name:`temperature-sensor`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Sensor,U.Thermostat],methods:{},status:{schema:YR,kind:`push`},runtimeState:YR,durability:`restored`,history:{fields:{celsius:{kind:`gauge`,unit:`°C`,deadband:.1}}},volatileStateFields:[`lastFetchedAt`]},ZR=F({title:k(),message:k(),severity:z([`info`,`warning`,`critical`]),duration:A().optional(),action:F({label:k(),url:k()}).optional()}),QR={name:`toast`,scope:`system`,mode:`singleton`,methods:{onToast:V(N(),ZR,{kind:`subscription`})},mount:{kind:`server-provided`}},$R=F({currentVersion:k().nullable(),availableVersion:k().nullable(),updatable:j(),state:k().nullable(),inProgress:j()}),ez={name:`update`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Update],methods:{installUpdate:V(N(),N(),{kind:`mutation`,auth:`admin`})},status:{schema:$R,kind:`poll`},runtimeState:$R,durability:`session`,history:`none`},tz=F({id:k(),username:k(),isAdmin:j().default(!1),allowedProviders:I([P(k()),B(`*`)]),allowedDevices:R(k(),I([P(k()),B(`*`)])),scopes:P(ZC).default([]),totpEnabled:j().default(!1),createdAt:A(),updatedAt:A()}),nz=F({username:k(),password:k().min(6),isAdmin:j().default(!1),allowedProviders:I([P(k()),B(`*`)]).optional(),allowedDevices:R(k(),I([P(k()),B(`*`)])).optional(),scopes:P(ZC).optional()}),rz=F({id:k(),isAdmin:j().optional(),allowedProviders:I([P(k()),B(`*`)]).optional(),allowedDevices:R(k(),I([P(k()),B(`*`)])).optional(),scopes:P(ZC).optional()}),iz=F({id:k(),label:k(),isAdmin:j().default(!1),allowedProviders:I([P(k()),B(`*`)]).optional(),allowedDevices:R(k(),I([P(k()),B(`*`)])).optional(),tokenPrefix:k(),createdAt:A(),lastUsedAt:A().optional()}),az=F({id:k(),userId:k(),name:k(),tokenPrefix:k(),scopes:P(ZC),expiresAt:A().nullish(),lastUsedAt:A().nullish(),createdAt:A()}),oz=F({userId:k(),name:k(),scopes:P(ZC),expiresAt:A().optional()}),sz=F({token:k(),record:az}),cz=F({id:k(),userId:k(),username:k(),integrationId:k(),scopes:P(ZC),createdAt:A(),lastUsedAt:A(),revokedAt:A().nullable()}),lz=F({secret:k(),otpauthUrl:k()}),uz=F({enabled:j(),confirmedAt:A().nullable()}),dz=F({provider:k(),subject:k(),issuer:k(),userId:k(),label:k().optional(),linkedAt:A()}),fz=F({provider:k().min(1),subject:k().min(1)}),pz={name:`user-management`,scope:`system`,mode:`singleton`,methods:{listUsers:V(N(),P(tz),{auth:`admin`}),createUser:V(nz,tz,{kind:`mutation`,auth:`admin`,access:`create`}),updateUser:V(rz,F({success:B(!0)}),{kind:`mutation`,auth:`admin`,access:`create`}),deleteUser:V(F({id:k()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`,access:`delete`}),resetPassword:V(F({id:k(),newPassword:k().min(6)}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`,access:`create`}),setUserScopes:V(F({userId:k(),scopes:P(ZC)}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`,access:`create`}),validateCredentials:V(F({username:k(),password:k()}),tz.extend({passwordHash:k()}).nullable(),{kind:`mutation`,access:`view`}),listApiKeys:V(N(),P(iz),{auth:`admin`}),revokeApiKey:V(F({id:k()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`,access:`delete`}),createScopedToken:V(oz,sz,{kind:`mutation`,auth:`admin`,access:`create`}),revokeScopedToken:V(F({id:k()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`,access:`delete`}),validateScopedToken:V(F({token:k()}),az.nullable(),{access:`view`}),listScopedTokens:V(F({userId:k()}),P(az),{auth:`admin`}),setupTotp:V(F({userId:k()}),lz,{kind:`mutation`,auth:`admin`,access:`create`}),confirmTotp:V(F({userId:k(),code:k()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`,access:`create`}),disableTotp:V(F({userId:k()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`,access:`delete`}),getTotpStatus:V(F({userId:k()}),uz,{auth:`admin`}),verifyTotp:V(F({userId:k(),code:k()}),F({valid:j()}),{kind:`mutation`,access:`view`}),oauthIssueCode:V(F({integrationId:k(),userId:k(),username:k(),scopes:P(ZC),redirectUri:k(),hubUrl:k(),codeChallenge:k().optional(),refreshTtlSec:I([A().int().positive(),B(`never`)]).optional()}),F({code:k()}),{kind:`mutation`,access:`create`}),oauthExchangeCode:V(F({code:k(),redirectUri:k(),codeVerifier:k().optional()}),F({accessToken:k(),refreshToken:k(),expiresIn:A()}).nullable(),{kind:`mutation`,access:`view`}),oauthRefresh:V(F({refreshToken:k()}),F({accessToken:k(),refreshToken:k(),expiresIn:A()}).nullable(),{kind:`mutation`,access:`view`}),oauthVerifyAccessToken:V(F({token:k()}),F({userId:k(),username:k(),scopes:P(ZC)}).nullable(),{access:`view`}),listExternalIdentities:V(F({userId:k()}),P(dz),{auth:`admin`}),findUserByExternalIdentity:V(fz,F({userId:k(),issuer:k()}).nullable(),{auth:`admin`}),unlinkExternalIdentity:V(fz.extend({userId:k()}),F({success:j()}),{kind:`mutation`,auth:`admin`,access:`delete`}),listOauthSessions:V(N(),P(cz),{auth:`admin`}),revokeOauthSession:V(F({id:k()}),F({success:j()}),{kind:`mutation`,auth:`admin`,access:`delete`})}},mz=z([`idle`,`cleaning`,`paused`,`returning`,`docked`,`drying`,`error`]),hz=F({level:A().min(0).max(100).nullable(),status:z([`ok`,`low`,`full`]).nullable()}),gz=F({state:mz,batteryLevel:A().min(0).max(100).nullable(),fanSpeed:k().nullable(),availableFanSpeeds:P(k()),cleanWater:hz.nullable(),dirtyWater:hz.nullable(),detergent:hz.nullable(),dustBin:hz.nullable(),progressPercent:A().min(0).max(100).nullable(),errorCode:A().nullable(),errorLabel:k().nullable(),lastChangedAt:A()}),_z={name:`vacuum-control`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Vacuum],methods:{start:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`}),pause:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`}),stop:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`}),returnToBase:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`}),locate:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`}),setFanSpeed:V(F({deviceId:A().int().nonnegative(),speed:k().min(1)}),N(),{kind:`mutation`,auth:`protected`})},status:{schema:gz,kind:`push`},runtimeState:gz,durability:`session`,history:{fields:{batteryLevel:{kind:`gauge`,unit:`%`,deadband:2},"cleanWater.level":{kind:`gauge`,unit:`%`,deadband:2},"dirtyWater.level":{kind:`gauge`,unit:`%`,deadband:2},"detergent.level":{kind:`gauge`,unit:`%`,deadband:2},"dustBin.level":{kind:`gauge`,unit:`%`,deadband:2}}}},vz=F({state:z([`open`,`opening`,`closing`,`closed`,`stopped`]),position:A().min(0).max(100).nullable(),lastChangedAt:A()}),yz={name:`valve`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Valve],methods:{open:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`}),close:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`}),stop:V(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`}),setPosition:V(F({deviceId:A().int().nonnegative(),position:A().min(0).max(100)}),N(),{kind:`mutation`,auth:`protected`})},status:{schema:vz,kind:`push`},runtimeState:vz,durability:`session`,history:{fields:{position:{kind:`gauge`,unit:`%`,minIntervalMs:0}}}},bz=F({detected:j(),lastChangedAt:A()}),xz={name:`vibration`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Sensor],methods:{},status:{schema:bz,kind:`push`},runtimeState:bz,durability:`restored`,history:{fields:{detected:{kind:`boolean`}}},volatileStateFields:[`lastChangedAt`]},Sz=F({currentTemp:A().nullable(),targetTemp:A().nullable(),operationMode:k().nullable(),availableModes:P(k()),away:j().nullable(),minTemp:A().nullable(),maxTemp:A().nullable(),lastChangedAt:A()}),Cz={name:`water-heater`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.WaterHeater],methods:{setTargetTemp:V(F({deviceId:A().int().nonnegative(),temp:A().finite()}),N(),{kind:`mutation`,auth:`protected`}),setOperationMode:V(F({deviceId:A().int().nonnegative(),mode:k().min(1)}),N(),{kind:`mutation`,auth:`protected`}),setAway:V(F({deviceId:A().int().nonnegative(),on:j()}),N(),{kind:`mutation`,auth:`protected`})},status:{schema:Sz,kind:`push`},runtimeState:Sz,durability:`session`,history:{fields:{currentTemp:{kind:`gauge`,unit:`°C`,deadband:.5},targetTemp:{kind:`gauge`,unit:`°C`,minIntervalMs:0}}}},wz=F({condition:k().nullable(),temperature:A().nullable(),temperatureUnit:k().nullable(),humidity:A().min(0).max(100).nullable(),pressure:A().nullable(),pressureUnit:k().nullable(),windSpeed:A().nullable(),windSpeedUnit:k().nullable(),windBearing:A().nullable(),lastFetchedAt:A()}),Tz={name:`weather`,scope:`device`,deviceNative:!0,mode:`singleton`,deviceTypes:[U.Weather],methods:{},status:{schema:wz,kind:`push`},runtimeState:wz,durability:`session`,history:{fields:{temperature:{kind:`gauge`,unitFrom:`temperatureUnit`,deadband:.2},humidity:{kind:`gauge`,unit:`%`,deadband:1},pressure:{kind:`gauge`,unitFrom:`pressureUnit`,deadband:.5},windSpeed:{kind:`gauge`,unitFrom:`windSpeedUnit`,deadband:.5}}}},Ez=F({totalObjects:A().int().nonnegative(),byClass:R(k(),A().int().nonnegative()),standingObjects:A().int().nonnegative().optional(),transientObjects:A().int().nonnegative().optional()}),Dz=Ez.extend({zoneId:k(),zoneName:k(),trackIds:P(k()).readonly()}),Oz=F({id:k(),className:k(),bbox:F({x:A(),y:A(),w:A(),h:A()}),frameWidth:A().int().nonnegative(),frameHeight:A().int().nonnegative(),firstSeenAt:A().int(),becameStationaryAt:A().int(),lastConfirmedAt:A().int(),label:k().optional(),keyFrameMediaId:A().int().optional()}),kz=F({ts:A().int(),frameWidth:A().int().nonnegative(),frameHeight:A().int().nonnegative(),zones:P(Dz).readonly(),frame:Ez,unzoned:Ez,stationaryObjects:P(Oz).readonly().optional()}),Az=F({deviceId:A(),read:z([`read`,`unreadable`]),snapshot:kz.nullable()}),jz=z([`minute`,`5min`,`hour`]),Mz=F({from:A().int(),to:A().int(),resolution:jz}),Nz=F({ts:A().int(),count:A().int().nonnegative()}),Pz={name:`zone-analytics`,scope:`device`,mode:`singleton`,deviceTypes:[U.Camera],methods:{getCurrentSnapshot:V(F({deviceId:A()}),kz.nullable()),getCurrentSnapshotBatch:V(F({deviceIds:P(A()).min(1).max(200)}),P(Az).readonly()),getZoneHistory:V(F({deviceId:A(),zoneId:k(),className:k().optional()}).extend(Mz.shape),P(Nz).readonly()),getCameraHistory:V(F({deviceId:A(),className:k().optional()}).extend(Mz.shape),P(Nz).readonly()),getUnzonedHistory:V(F({deviceId:A(),className:k().optional()}).extend(Mz.shape),P(Nz).readonly())},runtimeState:kz,durability:`session`,history:`none`},Fz=z([`motion`,`detection`,`package`]),Iz={name:`zone-rules`,scope:`device`,mode:`singleton`,deviceTypes:[U.Camera],methods:{listRules:V(F({deviceId:A(),stage:Fz}),P(tR).readonly()),setRules:V(F({deviceId:A(),stage:Fz,rules:P(tR).readonly()}),N(),{kind:`mutation`,auth:`admin`})},runtimeState:F({motion:P(tR).readonly(),detection:P(tR).readonly(),package:P(tR).readonly()}),durability:`restored`,history:`none`},Lz=F({id:k(),label:k(),usdPerHour:A().nonnegative(),vramGb:A().nonnegative()}),Rz=F({id:k(),label:k(),priceMultiplier:A().positive()}),zz=F({gpuType:k(),region:k(),costCapUsd:A().nonnegative(),maxRuntimeSec:A().int().positive(),failedDatasetGraceHours:A().nonnegative()}),Bz=M(),Vz=F({typeId:k(),label:k(),iconAsset:k(),addonId:k(),configSchema:Bz.optional()}),Hz=F({entryId:k(),typeId:k(),name:k(),addonId:k(),configured:j()}),Uz=F({addonId:k(),entryId:k(),typeId:k(),name:k(),iconAsset:k(),kind:k(),label:k(),gpuTypes:P(Lz).readonly(),regions:P(Rz).readonly(),maxDatasetBytes:A().int().positive(),maxRuntimeSec:A().int().positive(),freeTierNote:k().optional(),dataResidencyNote:k(),configured:j(),defaults:zz,formValues:R(k(),M()).optional()}),Wz=F({entryId:k().min(1),name:k().min(1),tokenId:k().optional(),tokenSecret:I([k(),F({$secretClear:B(!0)})]).optional(),environment:k().optional(),gpuType:k().optional(),region:k().optional(),costCapUsd:A().nonnegative().optional(),maxRuntimeSec:A().int().positive().optional(),failedDatasetGraceHours:A().nonnegative().optional()}),Gz=F({ok:j(),account:k().optional(),reason:z([`missing`,`invalid`,`forbidden`,`network`,`quota`]).optional(),detail:k().optional()}),Kz=z([`pending`,`starting`,`running`,`succeeded`,`failed`,`cancelled`,`lost`]),qz=F({jobKey:k(),providerJobId:k().optional(),state:Kz,startedAt:A().optional(),endedAt:A().optional(),exitCode:A().int().optional(),failureReason:k().optional(),gpuType:k(),region:k().optional(),billedSeconds:A().nonnegative(),costUsd:A().nonnegative(),costIsEstimate:j(),lastFetchedAt:A()}),Jz=F({repo:k().min(1),revision:k().regex(/^[0-9a-f]{7,64}$/)}),Yz={entryId:k().min(1),jobKey:k().uuid()},Xz=F({ts:A(),text:k()}),Zz={name:`training-provider`,scope:`system`,mode:`collection`,internal:!0,methods:{describe:V(F({}),P(Uz).readonly(),{auth:`admin`}),describeTypes:V(F({}),P(Vz).readonly(),{auth:`admin`}),listEntries:V(F({}),P(Hz).readonly(),{auth:`admin`}),createEntry:V(F({typeId:k().min(1),name:k().min(1)}),F({entryId:k()}),{kind:`mutation`,auth:`admin`}),deleteEntry:V(F({entryId:k().min(1)}),F({ok:B(!0)}),{kind:`mutation`,auth:`admin`}),updateEntry:V(Wz,F({ok:B(!0)}),{kind:`mutation`,auth:`admin`}),validateCredentials:V(F({entryId:k().min(1)}),Gz,{kind:`mutation`,auth:`admin`,timeoutMs:3e4}),estimateJob:V(F({entryId:k().min(1),gpuType:k(),region:k(),datasetBytes:A().int().nonnegative(),gpuSecondsLow:A().nonnegative(),gpuSecondsHigh:A().nonnegative()}),F({usdLow:A().nonnegative(),usdHigh:A().nonnegative(),notes:P(k()).readonly()}),{auth:`admin`}),uploadDataset:V(F({...Yz,ticket:kl}),F({bytes:A().int().nonnegative(),sha256:k()}),{kind:`mutation`,auth:`admin`,timeoutMs:120*6e4}),submitJob:V(F({...Yz,trainer:Jz,jobSpecJson:k().min(2).max(64e3),gpuType:k(),region:k(),maxRuntimeSec:A().int().positive()}),qz,{kind:`mutation`,auth:`admin`,timeoutMs:30*6e4}),getJob:V(F(Yz),qz,{auth:`admin`,timeoutMs:6e4}),listJobEvents:V(F({...Yz,cursor:k().optional(),max:A().int().min(1).max(500)}),F({lines:P(Xz).readonly(),cursor:k()}),{auth:`admin`,timeoutMs:6e4}),cancelJob:V(F(Yz),F({ok:B(!0)}),{kind:`mutation`,auth:`admin`,timeoutMs:6e4}),readResult:V(F(Yz),F({found:j(),text:k().optional()}),{kind:`mutation`,auth:`admin`,timeoutMs:5*6e4}),offerArtifact:V(F({...Yz,path:z([`bundle.tar`])}),F({ticket:kl}),{kind:`mutation`,auth:`admin`,timeoutMs:5*6e4}),cleanupJob:V(F(Yz),F({deleted:P(k()).readonly()}),{kind:`mutation`,auth:`admin`,timeoutMs:5*6e4}),listJobs:V(F({entryId:k().min(1).optional()}),P(qz).readonly(),{auth:`admin`,timeoutMs:2*6e4})}},Qz=F({collectionIds:P(k()).min(1),workState:z([`complete`,`annotated_or_complete`,`any_annotated`]).default(`complete`)}),$z=F({modelId:k(),label:k(),weights:k(),imgsz:A().int(),baselineOnnxUrl:k(),baselineFloors:R(k(),A()),recommended:j()}),eB=z([`quick`,`standard`,`thorough`]),tB=F({selection:Qz,entryId:k().min(1),gpuType:k().min(1),region:k(),baseModelId:k().min(1),preset:eB,freeze:A().int().nonnegative().nullable(),holdoutCameras:P(A().int()).nullable()}),nB=F({holdoutCameras:P(A().int()).readonly(),holdoutLastDays:A().int().nonnegative(),holdoutSupport:R(k(),A().int()).nullable(),trainSubjects:A().int()}),rB=z([`unknown-dataset`,`unknown-provider`,`provider-not-configured`,`unknown-base-model`,`unknown-gpu`,`dataset-too-large`,`no-training-subjects`,`job-already-running`]),iB=F({refusal:F({reason:rB,detail:k()}).nullable(),warnings:P(k()).readonly(),split:nB.nullable(),estimate:F({datasetBytes:A().int(),uploadMinutesAt20Mbps:A(),gpuSecondsLow:A(),gpuSecondsHigh:A(),usdLow:A(),usdHigh:A(),notes:P(k()).readonly()}).nullable(),defaults:F({maxCostUsd:A(),maxRuntimeSec:A().int()}).nullable(),dataNotice:k()}),aB=z([`queued`,`uploading`,`submitted`,`starting`,`running`,`collecting`,`ready`,`registered`,`canary`,`failed`,`cancelling`,`cancelled`,`lost`,`expired`,`discarded`]),oB=z([`cost-cap`,`runtime-cap`,`upload-failed`,`submit-failed`,`trainer-failed`,`result-invalid`,`checksum-mismatch`,`fetch-failed`,`provider-error`,`hub-restart-during-upload`]),sB=F({epoch:A().int(),map50:A().nullable(),map50_95:A().nullable()}),cB=F({deviceIds:P(A().int()).readonly(),since:A(),previous:P(F({deviceId:A().int(),nodeId:k(),deviceKey:k(),patch:F({modelId:k().optional(),settings:R(k(),M()).readonly().optional()}).nullable()})).readonly()}),lB=F({id:k(),idempotencyKey:k(),name:k(),createdAt:A(),updatedAt:A(),state:aB,batchId:k().nullable().default(null),stage:Rd.nullable(),failure:F({reason:oB,stage:k().nullable(),detail:k()}).nullable(),request:tB,maxCostUsd:A().nonnegative(),maxRuntimeSec:A().int().positive(),trainer:Jz,datasetLayout:DT,frameCount:A().int().nonnegative(),frameIds:P(k()).max(2e4).readonly(),annotationHash:k(),dataset:F({bytes:A().int(),sha256:k(),uploadedAt:A()}).nullable(),split:nB,provider:F({state:Kz.nullable(),providerJobId:k().nullable(),startedAt:A().nullable(),endedAt:A().nullable(),billedSeconds:A(),costUsd:A(),costIsEstimate:j(),lastPolledAt:A().nullable()}),progress:F({epoch:A().int().nullable(),epochs:A().int().nullable(),etaSec:A().nullable(),series:P(sB).readonly()}),logTail:P(k()).readonly(),logCursor:k().nullable(),artifacts:F({bundleBytes:A().int(),bundleSha256:k(),fetchedAt:A(),expiresAt:A()}).nullable(),cloudDatasetDeletedAt:A().nullable(),cloudCleanupDueAt:A().nullable(),registeredModelIds:P(k()).readonly(),canary:cB.nullable()}),uB=F({id:k().min(1)}),dB={name:`training`,scope:`system`,mode:`singleton`,mount:{kind:`hub-only`},methods:{listBaseModels:V(F({}),P($z).readonly(),{auth:`admin`}),planJob:V(tB,iB,{auth:`admin`,timeoutMs:6e4}),startJob:V(tB.extend({name:k().min(1).max(120),maxCostUsd:A().positive(),maxRuntimeSec:A().int().positive(),idempotencyKey:k().min(8).max(80)}),L(`kind`,[F({kind:B(`started`),job:lB}),F({kind:B(`refused`),reason:rB,detail:k()})]),{kind:`mutation`,auth:`admin`,timeoutMs:12e4}),startJobBatch:V(tB.omit({baseModelId:!0}).extend({baseModelIds:P(k().min(1)).min(1),name:k().min(1).max(120),maxCostUsd:A().positive(),maxRuntimeSec:A().int().positive(),idempotencyKey:k().min(8).max(80)}),L(`kind`,[F({kind:B(`started`),batchId:k(),jobs:P(lB).min(1).readonly()}),F({kind:B(`refused`),reason:rB,detail:k()})]),{kind:`mutation`,auth:`admin`,timeoutMs:12e4}),listJobs:V(F({}),P(lB).readonly(),{auth:`admin`}),getJob:V(uB,lB.nullable(),{auth:`admin`}),cancelJob:V(uB,lB,{kind:`mutation`,auth:`admin`,timeoutMs:12e4}),getJobResult:V(uB,Ld.nullable(),{auth:`admin`}),registerResult:V(uB.extend({canaryDeviceIds:P(A().int()).readonly()}),lB,{kind:`mutation`,auth:`admin`,timeoutMs:30*6e4}),canaryResult:V(uB.extend({deviceIds:P(A().int()).min(1).readonly()}),lB,{kind:`mutation`,auth:`admin`,timeoutMs:12e4}),rollbackCanary:V(uB,lB,{kind:`mutation`,auth:`admin`,timeoutMs:12e4}),discardResult:V(uB,lB,{kind:`mutation`,auth:`admin`})}},fB={"°C":{dimension:`temperature`,factor:1,offset:0},"°F":{dimension:`temperature`,factor:5/9,offset:-160/9},K:{dimension:`temperature`,factor:1,offset:-273.15},hPa:{dimension:`pressure`,factor:1,offset:0},kPa:{dimension:`pressure`,factor:10,offset:0},Pa:{dimension:`pressure`,factor:.01,offset:0},mbar:{dimension:`pressure`,factor:1,offset:0},bar:{dimension:`pressure`,factor:1e3,offset:0},inHg:{dimension:`pressure`,factor:33.8639,offset:0},mmHg:{dimension:`pressure`,factor:1.33322,offset:0},psi:{dimension:`pressure`,factor:68.9476,offset:0},"m/s":{dimension:`speed`,factor:1,offset:0},"km/h":{dimension:`speed`,factor:1/3.6,offset:0},mph:{dimension:`speed`,factor:.44704,offset:0},kn:{dimension:`speed`,factor:.514444,offset:0},"mm/h":{dimension:`precipitation-rate`,factor:1,offset:0},"in/h":{dimension:`precipitation-rate`,factor:25.4,offset:0},m:{dimension:`length`,factor:1,offset:0},mm:{dimension:`length`,factor:.001,offset:0},cm:{dimension:`length`,factor:.01,offset:0},km:{dimension:`length`,factor:1e3,offset:0},in:{dimension:`length`,factor:.0254,offset:0},ft:{dimension:`length`,factor:.3048,offset:0},mi:{dimension:`length`,factor:1609.344,offset:0},lx:{dimension:`illuminance`,factor:1,offset:0},"W/m²":{dimension:`irradiance`,factor:1,offset:0},W:{dimension:`power`,factor:1,offset:0},kW:{dimension:`power`,factor:1e3,offset:0},VA:{dimension:`apparent-power`,factor:1,offset:0},Wh:{dimension:`energy`,factor:1,offset:0},kWh:{dimension:`energy`,factor:1e3,offset:0},MWh:{dimension:`energy`,factor:1e6,offset:0},V:{dimension:`voltage`,factor:1,offset:0},mV:{dimension:`voltage`,factor:.001,offset:0},A:{dimension:`current`,factor:1,offset:0},mA:{dimension:`current`,factor:.001,offset:0},ppm:{dimension:`concentration-volume`,factor:1,offset:0},ppb:{dimension:`concentration-volume`,factor:.001,offset:0},"µg/m³":{dimension:`concentration-mass`,factor:1,offset:0},"mg/m³":{dimension:`concentration-mass`,factor:1e3,offset:0},kg:{dimension:`mass`,factor:1,offset:0},g:{dimension:`mass`,factor:.001,offset:0},lb:{dimension:`mass`,factor:.453592,offset:0},oz:{dimension:`mass`,factor:.0283495,offset:0},"%":{dimension:`percentage`,factor:1,offset:0}};function pB(e){return Object.hasOwn(fB,e)?fB[e]:void 0}function mB(e){return pB(e)?.dimension}function hB(e,t){return e*t.factor+t.offset}function gB(e,t){return(e-t.offset)/t.factor}function _B(e,t,n){if(t===n)return e;let r=pB(t);if(!r)return;let i=pB(n);if(i&&r.dimension===i.dimension)return gB(hB(e,r),i)}function vB(e,t){if(e===t)return!0;let n=mB(e);return n===void 0?!1:n===mB(t)}hu.filter(e=>e!==`switch`&&e!==`motion`),Object.freeze({person:.5,vehicle:.5,animal:.5}),Object.freeze({person:.65,vehicle:.65,animal:.65});var yB={Siren:W.Siren,Floodlight:W.Floodlight,Spotlight:W.Spotlight,PirSensor:W.PirSensor,Chime:W.Chime,Autotrack:W.Autotrack,Nightvision:W.Nightvision,PrivacyMask:W.PrivacyMask};yB.Siren,yB.Floodlight,yB.Spotlight,yB.PirSensor,yB.Chime,yB.Autotrack,yB.Nightvision,yB.PrivacyMask;var bB={[U.Cover]:`cover`,[U.Valve]:`valve`,[U.Humidifier]:`humidifier`,[U.WaterHeater]:`water-heater`,[U.Camera]:`dummy`,[U.Hub]:`dummy`,[U.Switch]:`switch`,[U.Siren]:`switch`,[U.Light]:`light`,[U.Fan]:`fan`,[U.Sensor]:`sensor`,[U.Thermostat]:`thermostat`,[U.Climate]:`climate`,[U.Button]:`button`,[U.EventEmitter]:`dummy`,[U.Update]:`update`,[U.Generic]:`dummy`,[U.Notifier]:`dummy`,[U.Script]:`script`,[U.Automation]:`automation`,[U.Lock]:`lock`,[U.MediaPlayer]:`media-player`,[U.AlarmPanel]:`alarm`,[U.Control]:`control`,[U.Presence]:`sensor`,[U.Weather]:`weather`,[U.Vacuum]:`vacuum`,[U.LawnMower]:`lawn-mower`,[U.Container]:`dummy`,[U.Image]:`image`,[U.PetFeeder]:`pet-feeder`};new Set(Object.values(U)),Object.freeze({"accessories.getStatus":{capName:`accessories`,capScope:`device`,addonId:null,access:`view`},"accessories.setChildHidden":{capName:`accessories`,capScope:`device`,addonId:null,access:`create`},"addonPages.listPages":{capName:`addon-pages`,capScope:`system`,addonId:null,access:`view`},"addonPagesSource.listPages":{capName:`addon-pages-source`,capScope:`system`,addonId:null,access:`view`},"addonRoutes.getRoutes":{capName:`addon-routes`,capScope:`system`,addonId:null,access:`view`},"addonRoutes.invoke":{capName:`addon-routes`,capScope:`system`,addonId:null,access:`create`},"addons.applyAutoUpdateToAll":{capName:`addons`,capScope:`system`,addonId:null,access:`create`},"addons.cancelJob":{capName:`addons`,capScope:`system`,addonId:null,access:`create`},"addons.custom":{capName:`addons`,capScope:`system`,addonId:null,access:`create`},"addons.forceRefresh":{capName:`addons`,capScope:`system`,addonId:null,access:`create`},"addons.getAddonAutoUpdate":{capName:`addons`,capScope:`system`,addonId:null,access:`view`},"addons.getAutoUpdateSettings":{capName:`addons`,capScope:`system`,addonId:null,access:`view`},"addons.getJob":{capName:`addons`,capScope:`system`,addonId:null,access:`view`},"addons.getLastRestart":{capName:`addons`,capScope:`system`,addonId:null,access:`view`},"addons.getLogs":{capName:`addons`,capScope:`system`,addonId:null,access:`view`},"addons.getVersions":{capName:`addons`,capScope:`system`,addonId:null,access:`view`},"addons.installFromWorkspace":{capName:`addons`,capScope:`system`,addonId:null,access:`create`},"addons.installPackage":{capName:`addons`,capScope:`system`,addonId:null,access:`create`},"addons.isWorkspaceAvailable":{capName:`addons`,capScope:`system`,addonId:null,access:`view`},"addons.list":{capName:`addons`,capScope:`system`,addonId:null,access:`view`},"addons.listCapabilityProviders":{capName:`addons`,capScope:`system`,addonId:null,access:`view`},"addons.listFrameworkPackages":{capName:`addons`,capScope:`system`,addonId:null,access:`view`},"addons.listInstallations":{capName:`addons`,capScope:`system`,addonId:null,access:`view`},"addons.listJobs":{capName:`addons`,capScope:`system`,addonId:null,access:`view`},"addons.listPackages":{capName:`addons`,capScope:`system`,addonId:null,access:`view`},"addons.listUpdates":{capName:`addons`,capScope:`system`,addonId:null,access:`view`},"addons.listWorkspacePackages":{capName:`addons`,capScope:`system`,addonId:null,access:`view`},"addons.onAddonLogs":{capName:`addons`,capScope:`system`,addonId:null,access:`view`},"addons.reloadPackages":{capName:`addons`,capScope:`system`,addonId:null,access:`create`},"addons.restartAddon":{capName:`addons`,capScope:`system`,addonId:null,access:`create`},"addons.restartServer":{capName:`addons`,capScope:`system`,addonId:null,access:`create`},"addons.retryLoad":{capName:`addons`,capScope:`system`,addonId:null,access:`create`},"addons.rollbackPackage":{capName:`addons`,capScope:`system`,addonId:null,access:`create`},"addons.searchAvailable":{capName:`addons`,capScope:`system`,addonId:null,access:`view`},"addons.setAddonAutoUpdate":{capName:`addons`,capScope:`system`,addonId:null,access:`create`},"addons.setAutoUpdateSettings":{capName:`addons`,capScope:`system`,addonId:null,access:`create`},"addons.setCapabilityProviderEnabled":{capName:`addons`,capScope:`system`,addonId:null,access:`create`},"addons.startJob":{capName:`addons`,capScope:`system`,addonId:null,access:`create`},"addons.uninstallPackage":{capName:`addons`,capScope:`system`,addonId:null,access:`delete`},"addons.updatePackage":{capName:`addons`,capScope:`system`,addonId:null,access:`create`},"addonSettings.getDeviceSettings":{capName:`addon-settings`,capScope:`system`,addonId:null,access:`view`},"addonSettings.getGlobalSettings":{capName:`addon-settings`,capScope:`system`,addonId:null,access:`view`},"addonSettings.getIntegrationSettings":{capName:`addon-settings`,capScope:`system`,addonId:null,access:`view`},"addonSettings.updateDeviceSettings":{capName:`addon-settings`,capScope:`system`,addonId:null,access:`create`},"addonSettings.updateGlobalSettings":{capName:`addon-settings`,capScope:`system`,addonId:null,access:`create`},"addonWidgets.listWidgets":{capName:`addon-widgets`,capScope:`system`,addonId:null,access:`view`},"addonWidgetsSource.listWidgets":{capName:`addon-widgets-source`,capScope:`system`,addonId:null,access:`view`},"adminUi.getStaticDir":{capName:`admin-ui`,capScope:`system`,addonId:null,access:`view`},"adminUi.getVersion":{capName:`admin-ui`,capScope:`system`,addonId:null,access:`view`},"airQualitySensor.getStatus":{capName:`air-quality-sensor`,capScope:`device`,addonId:null,access:`view`},"alarmPanel.arm":{capName:`alarm-panel`,capScope:`device`,addonId:null,access:`create`},"alarmPanel.disarm":{capName:`alarm-panel`,capScope:`device`,addonId:null,access:`create`},"alarmPanel.getStatus":{capName:`alarm-panel`,capScope:`device`,addonId:null,access:`view`},"alarmPanel.trigger":{capName:`alarm-panel`,capScope:`device`,addonId:null,access:`create`},"alerts.dismiss":{capName:`alerts`,capScope:`system`,addonId:null,access:`create`},"alerts.emit":{capName:`alerts`,capScope:`system`,addonId:null,access:`create`},"alerts.getUnreadCount":{capName:`alerts`,capScope:`system`,addonId:null,access:`view`},"alerts.list":{capName:`alerts`,capScope:`system`,addonId:null,access:`view`},"alerts.markAllRead":{capName:`alerts`,capScope:`system`,addonId:null,access:`create`},"alerts.markRead":{capName:`alerts`,capScope:`system`,addonId:null,access:`create`},"alerts.update":{capName:`alerts`,capScope:`system`,addonId:null,access:`create`},"ambientLightSensor.getStatus":{capName:`ambient-light-sensor`,capScope:`device`,addonId:null,access:`view`},"audioAnalysis.applyDeviceSettingsPatch":{capName:`audio-analysis`,capScope:`device`,addonId:null,access:`create`},"audioAnalysis.getDeviceLiveContribution":{capName:`audio-analysis`,capScope:`device`,addonId:null,access:`view`},"audioAnalysis.getDeviceSettingsContribution":{capName:`audio-analysis`,capScope:`device`,addonId:null,access:`view`},"audioAnalysis.resolveDeviceSettings":{capName:`audio-analysis`,capScope:`device`,addonId:null,access:`view`},"audioAnalyzer.analyseChunk":{capName:`audio-analyzer`,capScope:`system`,addonId:null,access:`create`},"audioAnalyzer.attachDevice":{capName:`audio-analyzer`,capScope:`system`,addonId:null,access:`create`},"audioAnalyzer.classify":{capName:`audio-analyzer`,capScope:`system`,addonId:null,access:`view`},"audioAnalyzer.detachDevice":{capName:`audio-analyzer`,capScope:`system`,addonId:null,access:`create`},"audioAnalyzer.dispose":{capName:`audio-analyzer`,capScope:`system`,addonId:null,access:`create`},"audioAnalyzer.isReady":{capName:`audio-analyzer`,capScope:`system`,addonId:null,access:`view`},"audioAnalyzer.reprobeAudioEngine":{capName:`audio-analyzer`,capScope:`system`,addonId:null,access:`create`},"audioCodec.canHandle":{capName:`audio-codec`,capScope:`system`,addonId:null,access:`view`},"audioCodec.closeSession":{capName:`audio-codec`,capScope:`system`,addonId:null,access:`create`},"audioCodec.createDecodeSession":{capName:`audio-codec`,capScope:`system`,addonId:null,access:`create`},"audioCodec.createEncodeSession":{capName:`audio-codec`,capScope:`system`,addonId:null,access:`create`},"audioCodec.flushEncode":{capName:`audio-codec`,capScope:`system`,addonId:null,access:`create`},"audioCodec.listActiveSessions":{capName:`audio-codec`,capScope:`system`,addonId:null,access:`view`},"audioCodec.listSupportedCodecs":{capName:`audio-codec`,capScope:`system`,addonId:null,access:`view`},"audioCodec.pullEncoded":{capName:`audio-codec`,capScope:`system`,addonId:null,access:`view`},"audioCodec.pullPcm":{capName:`audio-codec`,capScope:`system`,addonId:null,access:`view`},"audioCodec.pushEncodedFrame":{capName:`audio-codec`,capScope:`system`,addonId:null,access:`create`},"audioCodec.pushPcm":{capName:`audio-codec`,capScope:`system`,addonId:null,access:`create`},"audioMetrics.getCurrentSnapshot":{capName:`audio-metrics`,capScope:`device`,addonId:null,access:`view`},"audioMetrics.getHistory":{capName:`audio-metrics`,capScope:`device`,addonId:null,access:`view`},"authProvider.getLoginUrl":{capName:`auth-provider`,capScope:`system`,addonId:null,access:`view`},"authProvider.handleCallback":{capName:`auth-provider`,capScope:`system`,addonId:null,access:`create`},"authProvider.validateCredentials":{capName:`auth-provider`,capScope:`system`,addonId:null,access:`create`},"authProvider.validateToken":{capName:`auth-provider`,capScope:`system`,addonId:null,access:`view`},"automationControl.disable":{capName:`automation-control`,capScope:`device`,addonId:null,access:`create`},"automationControl.enable":{capName:`automation-control`,capScope:`device`,addonId:null,access:`create`},"automationControl.getStatus":{capName:`automation-control`,capScope:`device`,addonId:null,access:`view`},"automationControl.trigger":{capName:`automation-control`,capScope:`device`,addonId:null,access:`create`},"backup.cancel":{capName:`backup`,capScope:`system`,addonId:null,access:`create`},"backup.checkBackupKey":{capName:`backup`,capScope:`system`,addonId:null,access:`create`},"backup.delete":{capName:`backup`,capScope:`system`,addonId:null,access:`delete`},"backup.deleteSchedule":{capName:`backup`,capScope:`system`,addonId:null,access:`delete`},"backup.disableEncryption":{capName:`backup`,capScope:`system`,addonId:null,access:`create`},"backup.getEncryption":{capName:`backup`,capScope:`system`,addonId:null,access:`view`},"backup.getEntries":{capName:`backup`,capScope:`system`,addonId:null,access:`view`},"backup.list":{capName:`backup`,capScope:`system`,addonId:null,access:`view`},"backup.listArchives":{capName:`backup`,capScope:`system`,addonId:null,access:`view`},"backup.listAvailableDatabases":{capName:`backup`,capScope:`system`,addonId:null,access:`view`},"backup.listDestinations":{capName:`backup`,capScope:`system`,addonId:null,access:`view`},"backup.listLocations":{capName:`backup`,capScope:`system`,addonId:null,access:`view`},"backup.listRuns":{capName:`backup`,capScope:`system`,addonId:null,access:`view`},"backup.listSchedules":{capName:`backup`,capScope:`system`,addonId:null,access:`view`},"backup.previewSchedule":{capName:`backup`,capScope:`system`,addonId:null,access:`view`},"backup.restore":{capName:`backup`,capScope:`system`,addonId:null,access:`create`},"backup.setupEncryption":{capName:`backup`,capScope:`system`,addonId:null,access:`create`},"backup.trigger":{capName:`backup`,capScope:`system`,addonId:null,access:`create`},"backup.upsertDestinationPolicy":{capName:`backup`,capScope:`system`,addonId:null,access:`create`},"backup.upsertSchedule":{capName:`backup`,capScope:`system`,addonId:null,access:`create`},"battery.getStatus":{capName:`battery`,capScope:`device`,addonId:null,access:`view`},"battery.wakeForStream":{capName:`battery`,capScope:`device`,addonId:null,access:`create`},"binary.getStatus":{capName:`binary`,capScope:`device`,addonId:null,access:`view`},"brightness.getStatus":{capName:`brightness`,capScope:`device`,addonId:null,access:`view`},"brightness.setBrightness":{capName:`brightness`,capScope:`device`,addonId:null,access:`create`},"broker.add":{capName:`broker`,capScope:`system`,addonId:null,access:`create`},"broker.get":{capName:`broker`,capScope:`system`,addonId:null,access:`view`},"broker.getBrokerConfig":{capName:`broker`,capScope:`system`,addonId:null,access:`view`},"broker.getSettings":{capName:`broker`,capScope:`system`,addonId:null,access:`view`},"broker.getSettingsSchema":{capName:`broker`,capScope:`system`,addonId:null,access:`view`},"broker.getState":{capName:`broker`,capScope:`system`,addonId:null,access:`view`},"broker.getStatus":{capName:`broker`,capScope:`system`,addonId:null,access:`view`},"broker.list":{capName:`broker`,capScope:`system`,addonId:null,access:`view`},"broker.listProviders":{capName:`broker`,capScope:`system`,addonId:null,access:`view`},"broker.publish":{capName:`broker`,capScope:`system`,addonId:null,access:`create`},"broker.remove":{capName:`broker`,capScope:`system`,addonId:null,access:`delete`},"broker.setSettings":{capName:`broker`,capScope:`system`,addonId:null,access:`create`},"broker.subscribe":{capName:`broker`,capScope:`system`,addonId:null,access:`create`},"broker.testConnection":{capName:`broker`,capScope:`system`,addonId:null,access:`create`},"broker.testSettings":{capName:`broker`,capScope:`system`,addonId:null,access:`create`},"broker.unsubscribe":{capName:`broker`,capScope:`system`,addonId:null,access:`create`},"button.press":{capName:`button`,capScope:`device`,addonId:null,access:`create`},"calendars.getPreferences":{capName:`calendars`,capScope:`system`,addonId:null,access:`view`},"calendars.listCalendars":{capName:`calendars`,capScope:`system`,addonId:null,access:`view`},"calendars.listEvents":{capName:`calendars`,capScope:`system`,addonId:null,access:`view`},"calendars.setCalendarPreference":{capName:`calendars`,capScope:`system`,addonId:null,access:`create`},"calendarSource.listCalendars":{capName:`calendar-source`,capScope:`system`,addonId:null,access:`view`},"calendarSource.listEvents":{capName:`calendar-source`,capScope:`system`,addonId:null,access:`view`},"cameraCredentials.getCredentials":{capName:`camera-credentials`,capScope:`device`,addonId:null,access:`view`},"cameraCredentials.getStatus":{capName:`camera-credentials`,capScope:`device`,addonId:null,access:`view`},"cameraGridLayout.applyDeviceSettingsPatch":{capName:`camera-grid-layout`,capScope:`device`,addonId:null,access:`create`},"cameraGridLayout.getDeviceLiveContribution":{capName:`camera-grid-layout`,capScope:`device`,addonId:null,access:`view`},"cameraGridLayout.getDeviceSettingsContribution":{capName:`camera-grid-layout`,capScope:`device`,addonId:null,access:`view`},"cameraGridLayout.getLayout":{capName:`camera-grid-layout`,capScope:`device`,addonId:null,access:`view`},"cameraGridLayout.saveLayout":{capName:`camera-grid-layout`,capScope:`device`,addonId:null,access:`create`},"cameraPipelineConfig.applyDeviceSettingsPatch":{capName:`camera-pipeline-config`,capScope:`device`,addonId:null,access:`create`},"cameraPipelineConfig.getDeviceLiveContribution":{capName:`camera-pipeline-config`,capScope:`device`,addonId:null,access:`view`},"cameraPipelineConfig.getDeviceSettingsContribution":{capName:`camera-pipeline-config`,capScope:`device`,addonId:null,access:`view`},"cameraStreams.getBrokerStreams":{capName:`camera-streams`,capScope:`device`,addonId:null,access:`view`},"cameraStreams.getCameraStreams":{capName:`camera-streams`,capScope:`device`,addonId:null,access:`view`},"cameraStreams.getProfileRtspEntries":{capName:`camera-streams`,capScope:`device`,addonId:null,access:`view`},"cameraStreams.getRtspEntries":{capName:`camera-streams`,capScope:`device`,addonId:null,access:`view`},"cameraStreams.pickStream":{capName:`camera-streams`,capScope:`device`,addonId:null,access:`view`},"carbonMonoxide.getStatus":{capName:`carbon-monoxide`,capScope:`device`,addonId:null,access:`view`},"climateControl.getStatus":{capName:`climate-control`,capScope:`device`,addonId:null,access:`view`},"climateControl.setFanMode":{capName:`climate-control`,capScope:`device`,addonId:null,access:`create`},"climateControl.setMode":{capName:`climate-control`,capScope:`device`,addonId:null,access:`create`},"climateControl.setPreset":{capName:`climate-control`,capScope:`device`,addonId:null,access:`create`},"climateControl.setSwingHorizontal":{capName:`climate-control`,capScope:`device`,addonId:null,access:`create`},"climateControl.setSwingVertical":{capName:`climate-control`,capScope:`device`,addonId:null,access:`create`},"climateControl.setTarget":{capName:`climate-control`,capScope:`device`,addonId:null,access:`create`},"climateControl.setTargetHumidity":{capName:`climate-control`,capScope:`device`,addonId:null,access:`create`},"climateControl.setTargetRange":{capName:`climate-control`,capScope:`device`,addonId:null,access:`create`},"color.getStatus":{capName:`color`,capScope:`device`,addonId:null,access:`view`},"color.setColor":{capName:`color`,capScope:`device`,addonId:null,access:`create`},"composer.applyBlocks":{capName:`composer`,capScope:`system`,addonId:null,access:`create`},"composer.getStates":{capName:`composer`,capScope:`system`,addonId:null,access:`view`},"connectionTest.describeTest":{capName:`connection-test`,capScope:`system`,addonId:null,access:`view`},"connectionTest.testSettings":{capName:`connection-test`,capScope:`system`,addonId:null,access:`create`},"connectivity.getStatus":{capName:`connectivity`,capScope:`device`,addonId:null,access:`view`},"consumables.getStatus":{capName:`consumables`,capScope:`device`,addonId:null,access:`view`},"consumables.reset":{capName:`consumables`,capScope:`device`,addonId:null,access:`delete`},"contact.getStatus":{capName:`contact`,capScope:`device`,addonId:null,access:`view`},"control.getStatus":{capName:`control`,capScope:`device`,addonId:null,access:`view`},"control.setValue":{capName:`control`,capScope:`device`,addonId:null,access:`create`},"coreBlocks.compile":{capName:`core-blocks`,capScope:`system`,addonId:null,access:`create`},"coreBlocks.create":{capName:`core-blocks`,capScope:`system`,addonId:null,access:`create`},"coreBlocks.createComposition":{capName:`core-blocks`,capScope:`system`,addonId:null,access:`create`},"coreBlocks.delete":{capName:`core-blocks`,capScope:`system`,addonId:null,access:`delete`},"coreBlocks.get":{capName:`core-blocks`,capScope:`system`,addonId:null,access:`view`},"coreBlocks.getBlockSettings":{capName:`core-blocks`,capScope:`system`,addonId:null,access:`view`},"coreBlocks.getComposition":{capName:`core-blocks`,capScope:`system`,addonId:null,access:`view`},"coreBlocks.getCustomization":{capName:`core-blocks`,capScope:`system`,addonId:null,access:`view`},"coreBlocks.getTypeDefs":{capName:`core-blocks`,capScope:`system`,addonId:null,access:`view`},"coreBlocks.list":{capName:`core-blocks`,capScope:`system`,addonId:null,access:`view`},"coreBlocks.listComposableCaps":{capName:`core-blocks`,capScope:`system`,addonId:null,access:`view`},"coreBlocks.listCompositions":{capName:`core-blocks`,capScope:`system`,addonId:null,access:`view`},"coreBlocks.restart":{capName:`core-blocks`,capScope:`system`,addonId:null,access:`create`},"coreBlocks.setEnabled":{capName:`core-blocks`,capScope:`system`,addonId:null,access:`create`},"coreBlocks.update":{capName:`core-blocks`,capScope:`system`,addonId:null,access:`create`},"coreBlocks.updateBlockSettings":{capName:`core-blocks`,capScope:`system`,addonId:null,access:`create`},"coreBlocks.updateComposition":{capName:`core-blocks`,capScope:`system`,addonId:null,access:`create`},"coreBlocks.validateComposition":{capName:`core-blocks`,capScope:`system`,addonId:null,access:`view`},"cover.close":{capName:`cover`,capScope:`device`,addonId:null,access:`create`},"cover.getStatus":{capName:`cover`,capScope:`device`,addonId:null,access:`view`},"cover.open":{capName:`cover`,capScope:`device`,addonId:null,access:`create`},"cover.setPosition":{capName:`cover`,capScope:`device`,addonId:null,access:`create`},"cover.setTiltPosition":{capName:`cover`,capScope:`device`,addonId:null,access:`create`},"cover.stop":{capName:`cover`,capScope:`device`,addonId:null,access:`create`},"customModelRegistry.importModelBundle":{capName:`custom-model-registry`,capScope:`system`,addonId:null,access:`create`},"customModelRegistry.listModels":{capName:`custom-model-registry`,capScope:`system`,addonId:null,access:`view`},"databaseSnapshot.listDatabases":{capName:`database-snapshot`,capScope:`system`,addonId:null,access:`view`},"databaseSnapshot.writeSnapshot":{capName:`database-snapshot`,capScope:`system`,addonId:null,access:`create`},"dataStoreProvider.aggregate":{capName:`data-store-provider`,capScope:`system`,addonId:null,access:`view`},"dataStoreProvider.count":{capName:`data-store-provider`,capScope:`system`,addonId:null,access:`view`},"dataStoreProvider.declareCollection":{capName:`data-store-provider`,capScope:`system`,addonId:null,access:`create`},"dataStoreProvider.delete":{capName:`data-store-provider`,capScope:`system`,addonId:null,access:`delete`},"dataStoreProvider.deleteWhere":{capName:`data-store-provider`,capScope:`system`,addonId:null,access:`delete`},"dataStoreProvider.get":{capName:`data-store-provider`,capScope:`system`,addonId:null,access:`view`},"dataStoreProvider.getEngineInfo":{capName:`data-store-provider`,capScope:`system`,addonId:null,access:`view`},"dataStoreProvider.histogram":{capName:`data-store-provider`,capScope:`system`,addonId:null,access:`view`},"dataStoreProvider.insert":{capName:`data-store-provider`,capScope:`system`,addonId:null,access:`create`},"dataStoreProvider.insertMany":{capName:`data-store-provider`,capScope:`system`,addonId:null,access:`create`},"dataStoreProvider.isEmpty":{capName:`data-store-provider`,capScope:`system`,addonId:null,access:`view`},"dataStoreProvider.query":{capName:`data-store-provider`,capScope:`system`,addonId:null,access:`view`},"dataStoreProvider.set":{capName:`data-store-provider`,capScope:`system`,addonId:null,access:`create`},"dataStoreProvider.transact":{capName:`data-store-provider`,capScope:`system`,addonId:null,access:`create`},"dataStoreProvider.update":{capName:`data-store-provider`,capScope:`system`,addonId:null,access:`create`},"dataStoreProvider.updateWhere":{capName:`data-store-provider`,capScope:`system`,addonId:null,access:`create`},"dataStoreProvider.upsert":{capName:`data-store-provider`,capScope:`system`,addonId:null,access:`create`},"dataStoreProvider.upsertMany":{capName:`data-store-provider`,capScope:`system`,addonId:null,access:`create`},"dayNight.getOptions":{capName:`day-night`,capScope:`device`,addonId:null,access:`view`},"dayNight.getStatus":{capName:`day-night`,capScope:`device`,addonId:null,access:`view`},"dayNight.setSettings":{capName:`day-night`,capScope:`device`,addonId:null,access:`create`},"decoder.getInfo":{capName:`decoder`,capScope:`system`,addonId:null,access:`view`},"decoder.reprobeHwaccel":{capName:`decoder`,capScope:`system`,addonId:null,access:`create`},"detectionPipeline.applyDeviceSettingsPatch":{capName:`detection-pipeline`,capScope:`device`,addonId:null,access:`create`},"detectionPipeline.getDeviceLiveContribution":{capName:`detection-pipeline`,capScope:`device`,addonId:null,access:`view`},"detectionPipeline.getDeviceSettingsContribution":{capName:`detection-pipeline`,capScope:`device`,addonId:null,access:`view`},"deviceAdminLink.getAdminLink":{capName:`device-admin-link`,capScope:`device`,addonId:null,access:`view`},"deviceAdoption.adopt":{capName:`device-adoption`,capScope:`system`,addonId:null,access:`create`},"deviceAdoption.getCandidate":{capName:`device-adoption`,capScope:`system`,addonId:null,access:`view`},"deviceAdoption.getStatus":{capName:`device-adoption`,capScope:`system`,addonId:null,access:`view`},"deviceAdoption.listCandidateFilters":{capName:`device-adoption`,capScope:`system`,addonId:null,access:`view`},"deviceAdoption.listCandidates":{capName:`device-adoption`,capScope:`system`,addonId:null,access:`view`},"deviceAdoption.refresh":{capName:`device-adoption`,capScope:`system`,addonId:null,access:`create`},"deviceAdoption.release":{capName:`device-adoption`,capScope:`system`,addonId:null,access:`create`},"deviceAdoption.resync":{capName:`device-adoption`,capScope:`system`,addonId:null,access:`create`},"deviceCredentials.deleteDeviceCredential":{capName:`device-credentials`,capScope:`system`,addonId:null,access:`delete`},"deviceCredentials.getDeviceCaStatus":{capName:`device-credentials`,capScope:`system`,addonId:null,access:`view`},"deviceCredentials.getDeviceCertificateSettings":{capName:`device-credentials`,capScope:`system`,addonId:null,access:`view`},"deviceCredentials.listDeviceCredentials":{capName:`device-credentials`,capScope:`system`,addonId:null,access:`view`},"deviceCredentials.renameDeviceCredential":{capName:`device-credentials`,capScope:`system`,addonId:null,access:`create`},"deviceCredentials.revokeDeviceCredential":{capName:`device-credentials`,capScope:`system`,addonId:null,access:`delete`},"deviceCredentials.setDeviceCertificateSettings":{capName:`device-credentials`,capScope:`system`,addonId:null,access:`create`},"deviceCredentials.startEnrollment":{capName:`device-credentials`,capScope:`system`,addonId:null,access:`create`},"deviceDiscovery.adoptDevice":{capName:`device-discovery`,capScope:`device`,addonId:null,access:`create`},"deviceDiscovery.getStatus":{capName:`device-discovery`,capScope:`device`,addonId:null,access:`view`},"deviceDiscovery.listDiscovered":{capName:`device-discovery`,capScope:`device`,addonId:null,access:`view`},"deviceDiscovery.refreshDiscovery":{capName:`device-discovery`,capScope:`device`,addonId:null,access:`create`},"deviceDiscovery.releaseDevice":{capName:`device-discovery`,capScope:`device`,addonId:null,access:`create`},"deviceExport.applyDeviceSettingsPatch":{capName:`device-export`,capScope:`system`,addonId:null,access:`create`},"deviceExport.exposeDevice":{capName:`device-export`,capScope:`system`,addonId:null,access:`create`},"deviceExport.getDeviceLiveContribution":{capName:`device-export`,capScope:`system`,addonId:null,access:`view`},"deviceExport.getDeviceSettingsContribution":{capName:`device-export`,capScope:`system`,addonId:null,access:`view`},"deviceExport.getStatus":{capName:`device-export`,capScope:`system`,addonId:null,access:`view`},"deviceExport.listExposedDevices":{capName:`device-export`,capScope:`system`,addonId:null,access:`view`},"deviceExport.listSupportedDeviceKinds":{capName:`device-export`,capScope:`system`,addonId:null,access:`view`},"deviceExport.unexposeDevice":{capName:`device-export`,capScope:`system`,addonId:null,access:`create`},"deviceExtension.listCandidates":{capName:`device-extension`,capScope:`device`,addonId:null,access:`view`},"deviceExtension.listSlots":{capName:`device-extension`,capScope:`device`,addonId:null,access:`view`},"deviceExtension.listSources":{capName:`device-extension`,capScope:`device`,addonId:null,access:`view`},"deviceExtension.setSlot":{capName:`device-extension`,capScope:`device`,addonId:null,access:`create`},"deviceHistory.declareSeries":{capName:`device-history`,capScope:`system`,addonId:null,access:`create`},"deviceHistory.getDeviceEnabled":{capName:`device-history`,capScope:`system`,addonId:null,access:`view`},"deviceHistory.getStatus":{capName:`device-history`,capScope:`system`,addonId:null,access:`view`},"deviceHistory.listNodeSeries":{capName:`device-history`,capScope:`system`,addonId:null,access:`view`},"deviceHistory.listSeries":{capName:`device-history`,capScope:`system`,addonId:null,access:`view`},"deviceHistory.query":{capName:`device-history`,capScope:`system`,addonId:null,access:`view`},"deviceHistory.queryNode":{capName:`device-history`,capScope:`system`,addonId:null,access:`view`},"deviceHistory.record":{capName:`device-history`,capScope:`system`,addonId:null,access:`create`},"deviceHistory.recordBuckets":{capName:`device-history`,capScope:`system`,addonId:null,access:`create`},"deviceHistory.setDeviceEnabled":{capName:`device-history`,capScope:`system`,addonId:null,access:`create`},"deviceManager.addLocation":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.adoptDevice":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.adoptionAdopt":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.adoptionCancelJob":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.adoptionListCandidateFilters":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.adoptionListCandidates":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.adoptionListJobs":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.adoptionRefresh":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.adoptionRelease":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.adoptionResync":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.adoptionStartJob":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.allocateDeviceId":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.applyInitialMeta":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.createDevice":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.disable":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.discoverAllProviders":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.discoverDevices":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.discoverProvider":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.discoveryProviders":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.enable":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.getAllBindings":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.getBindings":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.getBindingsBatch":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.getChildren":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.getChildrenBatch":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.getConfigSchema":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.getCreationSchema":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.getDevice":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.getDeviceAggregate":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.getDeviceLiveInfoAggregate":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.getDeviceSettingsAggregate":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.getDeviceStatusAggregate":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.getDeviceStatusAggregateBatch":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.getLinkedDevices":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.getLinkedDevicesBatch":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.getRoleDisplayDefaults":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.getSettingsSchema":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.getStreamProfileMap":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.getStreamSources":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.getWireableFields":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.getWrapperActivation":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.listAll":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.listBindableCapsForDeviceType":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.listDeviceIdsByCaps":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.listLocationDescriptions":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.listLocationIcons":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.listLocations":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.listPersistedByAddon":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.listSiteZones":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.listWrappersForCap":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.loadConfig":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.loadMeta":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.loadRuntimeState":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.migrateDevice":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.persistConfig":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.probeStreams":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.providerCreationType":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.providerDiscoveryParamsSchema":{capName:`device-manager`,capScope:`system`,addonId:null,access:`view`},"deviceManager.registerDevice":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.remove":{capName:`device-manager`,capScope:`system`,addonId:null,access:`delete`},"deviceManager.removeByIntegration":{capName:`device-manager`,capScope:`system`,addonId:null,access:`delete`},"deviceManager.removeDevice":{capName:`device-manager`,capScope:`system`,addonId:null,access:`delete`},"deviceManager.removeLocation":{capName:`device-manager`,capScope:`system`,addonId:null,access:`delete`},"deviceManager.removeSiteZone":{capName:`device-manager`,capScope:`system`,addonId:null,access:`delete`},"deviceManager.renameLocation":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.renameSiteZone":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.runDeviceAction":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.setChildLayout":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.setDisabled":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.setDisplay":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.setIntegrationId":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.setLinkDeviceId":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.setLocation":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.setLocationDescription":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.setLocationIcon":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.setLocationZone":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.setMetadata":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.setName":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.setPrimaryChildEntityId":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.setRole":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.setRoleDisplayDefaults":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.setSiteZone":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.setStreamProfileMap":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.setType":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.setWrapperActive":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.testCreationField":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.testField":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.updateConfig":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.updateDeviceField":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceManager.updateDeviceFieldsBatch":{capName:`device-manager`,capScope:`system`,addonId:null,access:`create`},"deviceOps.getConfigEntries":{capName:`device-ops`,capScope:`device`,addonId:null,access:`view`},"deviceOps.getRawState":{capName:`device-ops`,capScope:`device`,addonId:null,access:`view`},"deviceOps.getSettingsSchema":{capName:`device-ops`,capScope:`device`,addonId:null,access:`view`},"deviceOps.getStreamSources":{capName:`device-ops`,capScope:`device`,addonId:null,access:`view`},"deviceOps.removeDevice":{capName:`device-ops`,capScope:`device`,addonId:null,access:`delete`},"deviceOps.runAction":{capName:`device-ops`,capScope:`device`,addonId:null,access:`create`},"deviceOps.setConfig":{capName:`device-ops`,capScope:`device`,addonId:null,access:`create`},"deviceProvider.adoptDiscoveredDevice":{capName:`device-provider`,capScope:`system`,addonId:null,access:`create`},"deviceProvider.createDevice":{capName:`device-provider`,capScope:`system`,addonId:null,access:`create`},"deviceProvider.discoverDevices":{capName:`device-provider`,capScope:`system`,addonId:null,access:`create`},"deviceProvider.getChildCreationSchema":{capName:`device-provider`,capScope:`system`,addonId:null,access:`view`},"deviceProvider.getDevices":{capName:`device-provider`,capScope:`system`,addonId:null,access:`view`},"deviceProvider.getDiscoveryParamsSchema":{capName:`device-provider`,capScope:`system`,addonId:null,access:`view`},"deviceProvider.getManualCreationType":{capName:`device-provider`,capScope:`system`,addonId:null,access:`view`},"deviceProvider.getStatus":{capName:`device-provider`,capScope:`system`,addonId:null,access:`view`},"deviceProvider.reloadDevice":{capName:`device-provider`,capScope:`system`,addonId:null,access:`create`},"deviceProvider.start":{capName:`device-provider`,capScope:`system`,addonId:null,access:`create`},"deviceProvider.stop":{capName:`device-provider`,capScope:`system`,addonId:null,access:`create`},"deviceProvider.supportsDiscovery":{capName:`device-provider`,capScope:`system`,addonId:null,access:`view`},"deviceProvider.supportsManualCreation":{capName:`device-provider`,capScope:`system`,addonId:null,access:`view`},"deviceProvider.testCreationField":{capName:`device-provider`,capScope:`system`,addonId:null,access:`create`},"deviceState.claimFields":{capName:`device-state`,capScope:`system`,addonId:null,access:`create`},"deviceState.getAllSnapshots":{capName:`device-state`,capScope:`system`,addonId:null,access:`view`},"deviceState.getCapSlice":{capName:`device-state`,capScope:`system`,addonId:null,access:`view`},"deviceState.getNativeCapSlice":{capName:`device-state`,capScope:`system`,addonId:null,access:`view`},"deviceState.getSnapshot":{capName:`device-state`,capScope:`system`,addonId:null,access:`view`},"deviceState.listClaims":{capName:`device-state`,capScope:`system`,addonId:null,access:`view`},"deviceState.patchOwnedFields":{capName:`device-state`,capScope:`system`,addonId:null,access:`create`},"deviceState.releaseClaim":{capName:`device-state`,capScope:`system`,addonId:null,access:`create`},"deviceState.setCapSlice":{capName:`device-state`,capScope:`system`,addonId:null,access:`create`},"deviceStatus.getStatus":{capName:`device-status`,capScope:`device`,addonId:null,access:`view`},"doorbell.getStatus":{capName:`doorbell`,capScope:`device`,addonId:null,access:`view`},"embeddingEncoder.encode":{capName:`embedding-encoder`,capScope:`system`,addonId:null,access:`view`},"embeddingEncoder.encodeText":{capName:`embedding-encoder`,capScope:`system`,addonId:null,access:`view`},"embeddingEncoder.getInfo":{capName:`embedding-encoder`,capScope:`system`,addonId:null,access:`view`},"embeddingEncoder.resetFailedModels":{capName:`embedding-encoder`,capScope:`system`,addonId:null,access:`delete`},"enumSensor.getStatus":{capName:`enum-sensor`,capScope:`device`,addonId:null,access:`view`},"eventEmitter.getStatus":{capName:`event-emitter`,capScope:`device`,addonId:null,access:`view`},"faceGallery.assignFace":{capName:`face-gallery`,capScope:`system`,addonId:null,access:`create`},"faceGallery.assignFaces":{capName:`face-gallery`,capScope:`system`,addonId:null,access:`create`},"faceGallery.auditIdentitySamples":{capName:`face-gallery`,capScope:`system`,addonId:null,access:`view`},"faceGallery.createIdentity":{capName:`face-gallery`,capScope:`system`,addonId:null,access:`create`},"faceGallery.deleteFace":{capName:`face-gallery`,capScope:`system`,addonId:null,access:`delete`},"faceGallery.deleteIdentity":{capName:`face-gallery`,capScope:`system`,addonId:null,access:`delete`},"faceGallery.getFaceByTrack":{capName:`face-gallery`,capScope:`system`,addonId:null,access:`view`},"faceGallery.getFaceMedia":{capName:`face-gallery`,capScope:`system`,addonId:null,access:`view`},"faceGallery.listIdentities":{capName:`face-gallery`,capScope:`system`,addonId:null,access:`view`},"faceGallery.listIdentitySamples":{capName:`face-gallery`,capScope:`system`,addonId:null,access:`view`},"faceGallery.listRecentFaces":{capName:`face-gallery`,capScope:`system`,addonId:null,access:`view`},"faceGallery.removeSample":{capName:`face-gallery`,capScope:`system`,addonId:null,access:`delete`},"faceGallery.renameIdentity":{capName:`face-gallery`,capScope:`system`,addonId:null,access:`create`},"faceGallery.suggestFaceClusters":{capName:`face-gallery`,capScope:`system`,addonId:null,access:`view`},"faceGallery.unassignFace":{capName:`face-gallery`,capScope:`system`,addonId:null,access:`create`},"faceGallery.unassignFaces":{capName:`face-gallery`,capScope:`system`,addonId:null,access:`create`},"failureContribution.list":{capName:`failure-contribution`,capScope:`system`,addonId:null,access:`view`},"fanControl.getStatus":{capName:`fan-control`,capScope:`device`,addonId:null,access:`view`},"fanControl.setDirection":{capName:`fan-control`,capScope:`device`,addonId:null,access:`create`},"fanControl.setOscillating":{capName:`fan-control`,capScope:`device`,addonId:null,access:`create`},"fanControl.setPercentage":{capName:`fan-control`,capScope:`device`,addonId:null,access:`create`},"fanControl.setPreset":{capName:`fan-control`,capScope:`device`,addonId:null,access:`create`},"featureProbe.getStatus":{capName:`feature-probe`,capScope:`device`,addonId:null,access:`view`},"filesystemBrowse.browse":{capName:`filesystem-browse`,capScope:`system`,addonId:null,access:`view`},"filesystemBrowse.createDir":{capName:`filesystem-browse`,capScope:`system`,addonId:null,access:`create`},"filesystemBrowse.listAllowedRoots":{capName:`filesystem-browse`,capScope:`system`,addonId:null,access:`view`},"flood.getStatus":{capName:`flood`,capScope:`device`,addonId:null,access:`view`},"gas.getStatus":{capName:`gas`,capScope:`device`,addonId:null,access:`view`},"humidifier.getStatus":{capName:`humidifier`,capScope:`device`,addonId:null,access:`view`},"humidifier.setMode":{capName:`humidifier`,capScope:`device`,addonId:null,access:`create`},"humidifier.setOn":{capName:`humidifier`,capScope:`device`,addonId:null,access:`create`},"humidifier.setTargetHumidity":{capName:`humidifier`,capScope:`device`,addonId:null,access:`create`},"humiditySensor.getStatus":{capName:`humidity-sensor`,capScope:`device`,addonId:null,access:`view`},"image.getStatus":{capName:`image`,capScope:`device`,addonId:null,access:`view`},"imageSettings.getOptions":{capName:`image-settings`,capScope:`device`,addonId:null,access:`view`},"imageSettings.getStatus":{capName:`image-settings`,capScope:`device`,addonId:null,access:`view`},"imageSettings.setSettings":{capName:`image-settings`,capScope:`device`,addonId:null,access:`create`},"integrations.create":{capName:`integrations`,capScope:`system`,addonId:null,access:`create`},"integrations.delete":{capName:`integrations`,capScope:`system`,addonId:null,access:`delete`},"integrations.get":{capName:`integrations`,capScope:`system`,addonId:null,access:`view`},"integrations.getAvailableTypes":{capName:`integrations`,capScope:`system`,addonId:null,access:`view`},"integrations.getByAddonId":{capName:`integrations`,capScope:`system`,addonId:null,access:`view`},"integrations.getSettings":{capName:`integrations`,capScope:`system`,addonId:null,access:`view`},"integrations.list":{capName:`integrations`,capScope:`system`,addonId:null,access:`view`},"integrations.setSettings":{capName:`integrations`,capScope:`system`,addonId:null,access:`create`},"integrations.testConnection":{capName:`integrations`,capScope:`system`,addonId:null,access:`create`},"integrations.update":{capName:`integrations`,capScope:`system`,addonId:null,access:`create`},"intercom.endTalkSession":{capName:`intercom`,capScope:`device`,addonId:null,access:`create`},"intercom.getStatus":{capName:`intercom`,capScope:`device`,addonId:null,access:`view`},"intercom.handleAnswer":{capName:`intercom`,capScope:`device`,addonId:null,access:`create`},"intercom.pushTalkAudio":{capName:`intercom`,capScope:`device`,addonId:null,access:`create`},"intercom.startSession":{capName:`intercom`,capScope:`device`,addonId:null,access:`create`},"intercom.startTalkSession":{capName:`intercom`,capScope:`device`,addonId:null,access:`create`},"intercom.stopSession":{capName:`intercom`,capScope:`device`,addonId:null,access:`create`},"keychain.delete":{capName:`keychain`,capScope:`system`,addonId:null,access:`delete`},"keychain.getState":{capName:`keychain`,capScope:`system`,addonId:null,access:`view`},"keychain.listMeta":{capName:`keychain`,capScope:`system`,addonId:null,access:`view`},"keychain.put":{capName:`keychain`,capScope:`system`,addonId:null,access:`create`},"keychain.resolve":{capName:`keychain`,capScope:`system`,addonId:null,access:`view`},"keychainAdmin.acknowledgeReset":{capName:`keychain-admin`,capScope:`system`,addonId:null,access:`create`},"keychainAdmin.deleteOrphans":{capName:`keychain-admin`,capScope:`system`,addonId:null,access:`delete`},"keychainAdmin.downloadRecoveryKey":{capName:`keychain-admin`,capScope:`system`,addonId:null,access:`create`},"keychainAdmin.listAudit":{capName:`keychain-admin`,capScope:`system`,addonId:null,access:`view`},"keychainAdmin.listSecrets":{capName:`keychain-admin`,capScope:`system`,addonId:null,access:`view`},"keychainAdmin.purgeRetiredKeys":{capName:`keychain-admin`,capScope:`system`,addonId:null,access:`delete`},"keychainAdmin.resetKeychain":{capName:`keychain-admin`,capScope:`system`,addonId:null,access:`delete`},"keychainAdmin.resetReport":{capName:`keychain-admin`,capScope:`system`,addonId:null,access:`delete`},"keychainAdmin.reveal":{capName:`keychain-admin`,capScope:`system`,addonId:null,access:`create`},"keychainAdmin.rotateMasterKey":{capName:`keychain-admin`,capScope:`system`,addonId:null,access:`create`},"keychainAdmin.setSystemSecret":{capName:`keychain-admin`,capScope:`system`,addonId:null,access:`create`},"keychainAdmin.status":{capName:`keychain-admin`,capScope:`system`,addonId:null,access:`view`},"lawnMowerControl.dock":{capName:`lawn-mower-control`,capScope:`device`,addonId:null,access:`create`},"lawnMowerControl.getStatus":{capName:`lawn-mower-control`,capScope:`device`,addonId:null,access:`view`},"lawnMowerControl.pause":{capName:`lawn-mower-control`,capScope:`device`,addonId:null,access:`create`},"lawnMowerControl.startMowing":{capName:`lawn-mower-control`,capScope:`device`,addonId:null,access:`create`},"llm.cancel":{capName:`llm`,capScope:`system`,addonId:null,access:`create`},"llm.deleteModel":{capName:`llm`,capScope:`system`,addonId:null,access:`delete`},"llm.deleteProfile":{capName:`llm`,capScope:`system`,addonId:null,access:`delete`},"llm.generate":{capName:`llm`,capScope:`system`,addonId:null,access:`create`},"llm.generateVision":{capName:`llm`,capScope:`system`,addonId:null,access:`create`},"llm.getDefaults":{capName:`llm`,capScope:`system`,addonId:null,access:`view`},"llm.getRuntimeStatus":{capName:`llm`,capScope:`system`,addonId:null,access:`view`},"llm.getUsage":{capName:`llm`,capScope:`system`,addonId:null,access:`view`},"llm.installModel":{capName:`llm`,capScope:`system`,addonId:null,access:`create`},"llm.listModelCatalog":{capName:`llm`,capScope:`system`,addonId:null,access:`view`},"llm.listModels":{capName:`llm`,capScope:`system`,addonId:null,access:`view`},"llm.listNodeModels":{capName:`llm`,capScope:`system`,addonId:null,access:`view`},"llm.listProfileKinds":{capName:`llm`,capScope:`system`,addonId:null,access:`view`},"llm.listProfiles":{capName:`llm`,capScope:`system`,addonId:null,access:`view`},"llm.listRuntimeNodes":{capName:`llm`,capScope:`system`,addonId:null,access:`view`},"llm.resolveModelRef":{capName:`llm`,capScope:`system`,addonId:null,access:`create`},"llm.setDefault":{capName:`llm`,capScope:`system`,addonId:null,access:`create`},"llm.startRuntime":{capName:`llm`,capScope:`system`,addonId:null,access:`create`},"llm.stopRuntime":{capName:`llm`,capScope:`system`,addonId:null,access:`create`},"llm.testProfile":{capName:`llm`,capScope:`system`,addonId:null,access:`create`},"llm.upsertProfile":{capName:`llm`,capScope:`system`,addonId:null,access:`create`},"llmRuntime.appleAvailability":{capName:`llm-runtime`,capScope:`system`,addonId:null,access:`view`},"llmRuntime.cancel":{capName:`llm-runtime`,capScope:`system`,addonId:null,access:`create`},"llmRuntime.complete":{capName:`llm-runtime`,capScope:`system`,addonId:null,access:`create`},"llmRuntime.completeApple":{capName:`llm-runtime`,capScope:`system`,addonId:null,access:`create`},"llmRuntime.deleteModel":{capName:`llm-runtime`,capScope:`system`,addonId:null,access:`delete`},"llmRuntime.ensureStarted":{capName:`llm-runtime`,capScope:`system`,addonId:null,access:`create`},"llmRuntime.getDiskUsage":{capName:`llm-runtime`,capScope:`system`,addonId:null,access:`view`},"llmRuntime.installModel":{capName:`llm-runtime`,capScope:`system`,addonId:null,access:`create`},"llmRuntime.listLocalModels":{capName:`llm-runtime`,capScope:`system`,addonId:null,access:`view`},"llmRuntime.status":{capName:`llm-runtime`,capScope:`system`,addonId:null,access:`view`},"llmRuntime.stop":{capName:`llm-runtime`,capScope:`system`,addonId:null,access:`create`},"loadContribution.list":{capName:`load-contribution`,capScope:`system`,addonId:null,access:`view`},"localNetwork.addCustomAddress":{capName:`local-network`,capScope:`system`,addonId:null,access:`create`},"localNetwork.downloadCa":{capName:`local-network`,capScope:`system`,addonId:null,access:`view`},"localNetwork.getAddresses":{capName:`local-network`,capScope:`system`,addonId:null,access:`view`},"localNetwork.getAllowedAddresses":{capName:`local-network`,capScope:`system`,addonId:null,access:`view`},"localNetwork.getConnectionEndpoints":{capName:`local-network`,capScope:`system`,addonId:null,access:`view`},"localNetwork.getHubAddresses":{capName:`local-network`,capScope:`system`,addonId:null,access:`view`},"localNetwork.getNotificationEndpoint":{capName:`local-network`,capScope:`system`,addonId:null,access:`view`},"localNetwork.getPreferred":{capName:`local-network`,capScope:`system`,addonId:null,access:`view`},"localNetwork.getTlsStatus":{capName:`local-network`,capScope:`system`,addonId:null,access:`view`},"localNetwork.getViewerEndpoints":{capName:`local-network`,capScope:`system`,addonId:null,access:`view`},"localNetwork.list":{capName:`local-network`,capScope:`system`,addonId:null,access:`view`},"localNetwork.regenerateCertificate":{capName:`local-network`,capScope:`system`,addonId:null,access:`create`},"localNetwork.removeCustomAddress":{capName:`local-network`,capScope:`system`,addonId:null,access:`delete`},"localNetwork.resetAllowlistToBestMatch":{capName:`local-network`,capScope:`system`,addonId:null,access:`delete`},"localNetwork.revertToGeneratedCertificate":{capName:`local-network`,capScope:`system`,addonId:null,access:`create`},"localNetwork.setAddressRole":{capName:`local-network`,capScope:`system`,addonId:null,access:`create`},"localNetwork.setAllowedAddresses":{capName:`local-network`,capScope:`system`,addonId:null,access:`create`},"localNetwork.setNotificationEndpoint":{capName:`local-network`,capScope:`system`,addonId:null,access:`create`},"localNetwork.setViewerEndpoints":{capName:`local-network`,capScope:`system`,addonId:null,access:`create`},"localNetwork.uploadCertificate":{capName:`local-network`,capScope:`system`,addonId:null,access:`create`},"lockControl.getStatus":{capName:`lock-control`,capScope:`device`,addonId:null,access:`view`},"lockControl.lock":{capName:`lock-control`,capScope:`device`,addonId:null,access:`create`},"lockControl.open":{capName:`lock-control`,capScope:`device`,addonId:null,access:`create`},"lockControl.unlock":{capName:`lock-control`,capScope:`device`,addonId:null,access:`create`},"logChannels.apply":{capName:`log-channels`,capScope:`system`,addonId:null,access:`create`},"logChannels.list":{capName:`log-channels`,capScope:`system`,addonId:null,access:`view`},"logDestination.query":{capName:`log-destination`,capScope:`system`,addonId:null,access:`view`},"logDestination.write":{capName:`log-destination`,capScope:`system`,addonId:null,access:`create`},"loginMethod.getLoginMethods":{capName:`login-method`,capScope:`system`,addonId:null,access:`view`},"mediaPlayer.getStatus":{capName:`media-player`,capScope:`device`,addonId:null,access:`view`},"mediaPlayer.next":{capName:`media-player`,capScope:`device`,addonId:null,access:`create`},"mediaPlayer.pause":{capName:`media-player`,capScope:`device`,addonId:null,access:`create`},"mediaPlayer.play":{capName:`media-player`,capScope:`device`,addonId:null,access:`create`},"mediaPlayer.playMedia":{capName:`media-player`,capScope:`device`,addonId:null,access:`create`},"mediaPlayer.previous":{capName:`media-player`,capScope:`device`,addonId:null,access:`create`},"mediaPlayer.seek":{capName:`media-player`,capScope:`device`,addonId:null,access:`create`},"mediaPlayer.selectSource":{capName:`media-player`,capScope:`device`,addonId:null,access:`create`},"mediaPlayer.setMute":{capName:`media-player`,capScope:`device`,addonId:null,access:`create`},"mediaPlayer.setRepeat":{capName:`media-player`,capScope:`device`,addonId:null,access:`create`},"mediaPlayer.setShuffle":{capName:`media-player`,capScope:`device`,addonId:null,access:`create`},"mediaPlayer.setVolume":{capName:`media-player`,capScope:`device`,addonId:null,access:`create`},"mediaPlayer.stop":{capName:`media-player`,capScope:`device`,addonId:null,access:`create`},"meshNetwork.getStatus":{capName:`mesh-network`,capScope:`system`,addonId:null,access:`view`},"meshNetwork.join":{capName:`mesh-network`,capScope:`system`,addonId:null,access:`create`},"meshNetwork.leave":{capName:`mesh-network`,capScope:`system`,addonId:null,access:`create`},"meshNetwork.listPeers":{capName:`mesh-network`,capScope:`system`,addonId:null,access:`view`},"meshNetwork.logout":{capName:`mesh-network`,capScope:`system`,addonId:null,access:`create`},"meshNetwork.startLogin":{capName:`mesh-network`,capScope:`system`,addonId:null,access:`create`},"meshNetwork.testConnection":{capName:`mesh-network`,capScope:`system`,addonId:null,access:`create`},"metricsProvider.collectSnapshot":{capName:`metrics-provider`,capScope:`system`,addonId:null,access:`view`},"metricsProvider.getAddonStats":{capName:`metrics-provider`,capScope:`system`,addonId:null,access:`view`},"metricsProvider.getCached":{capName:`metrics-provider`,capScope:`system`,addonId:null,access:`view`},"metricsProvider.getCpuTemperature":{capName:`metrics-provider`,capScope:`system`,addonId:null,access:`view`},"metricsProvider.getCurrent":{capName:`metrics-provider`,capScope:`system`,addonId:null,access:`view`},"metricsProvider.getDiskSpace":{capName:`metrics-provider`,capScope:`system`,addonId:null,access:`view`},"metricsProvider.getGpuInfo":{capName:`metrics-provider`,capScope:`system`,addonId:null,access:`view`},"metricsProvider.getLoadSeries":{capName:`metrics-provider`,capScope:`system`,addonId:null,access:`view`},"metricsProvider.getProcessStats":{capName:`metrics-provider`,capScope:`system`,addonId:null,access:`view`},"metricsProvider.listAddonInstances":{capName:`metrics-provider`,capScope:`system`,addonId:null,access:`view`},"metricsProvider.listNodeProcesses":{capName:`metrics-provider`,capScope:`system`,addonId:null,access:`view`},"modelConvert.convert":{capName:`model-convert`,capScope:`system`,addonId:null,access:`create`},"modelDistributor.distributeModel":{capName:`model-distributor`,capScope:`system`,addonId:null,access:`create`},"motion.getStatus":{capName:`motion`,capScope:`device`,addonId:null,access:`view`},"motion.isDetected":{capName:`motion`,capScope:`device`,addonId:null,access:`view`},"motionDetection.analyze":{capName:`motion-detection`,capScope:`device`,addonId:null,access:`create`},"motionDetection.applyDeviceSettingsPatch":{capName:`motion-detection`,capScope:`device`,addonId:null,access:`create`},"motionDetection.getDeviceLiveContribution":{capName:`motion-detection`,capScope:`device`,addonId:null,access:`view`},"motionDetection.getDeviceSettingsContribution":{capName:`motion-detection`,capScope:`device`,addonId:null,access:`view`},"motionDetection.removeCamera":{capName:`motion-detection`,capScope:`device`,addonId:null,access:`delete`},"motionDetection.reset":{capName:`motion-detection`,capScope:`device`,addonId:null,access:`delete`},"motionTrigger.getStatus":{capName:`motion-trigger`,capScope:`device`,addonId:null,access:`view`},"motionTrigger.setMotionTrigger":{capName:`motion-trigger`,capScope:`device`,addonId:null,access:`create`},"motionZones.getOptions":{capName:`motion-zones`,capScope:`device`,addonId:null,access:`view`},"motionZones.getStatus":{capName:`motion-zones`,capScope:`device`,addonId:null,access:`view`},"motionZones.setZone":{capName:`motion-zones`,capScope:`device`,addonId:null,access:`create`},"mqttBroker.addBroker":{capName:`mqtt-broker`,capScope:`system`,addonId:null,access:`create`},"mqttBroker.getBrokerConfig":{capName:`mqtt-broker`,capScope:`system`,addonId:null,access:`view`},"mqttBroker.getStatus":{capName:`mqtt-broker`,capScope:`system`,addonId:null,access:`view`},"mqttBroker.listBrokers":{capName:`mqtt-broker`,capScope:`system`,addonId:null,access:`view`},"mqttBroker.removeBroker":{capName:`mqtt-broker`,capScope:`system`,addonId:null,access:`delete`},"mqttBroker.startEmbeddedBroker":{capName:`mqtt-broker`,capScope:`system`,addonId:null,access:`create`},"mqttBroker.stopEmbeddedBroker":{capName:`mqtt-broker`,capScope:`system`,addonId:null,access:`create`},"mqttBroker.testConnection":{capName:`mqtt-broker`,capScope:`system`,addonId:null,access:`create`},"nativeObjectDetection.getOptions":{capName:`native-object-detection`,capScope:`device`,addonId:null,access:`view`},"nativeObjectDetection.getStatus":{capName:`native-object-detection`,capScope:`device`,addonId:null,access:`view`},"nativeObjectDetection.setEnabled":{capName:`native-object-detection`,capScope:`device`,addonId:null,access:`create`},"nativeObjectDetection.setSettings":{capName:`native-object-detection`,capScope:`device`,addonId:null,access:`create`},"navigation.getFeatures":{capName:`navigation`,capScope:`device`,addonId:null,access:`view`},"navigation.getStatus":{capName:`navigation`,capScope:`device`,addonId:null,access:`view`},"navigation.goToPoint":{capName:`navigation`,capScope:`device`,addonId:null,access:`create`},"navigation.listActions":{capName:`navigation`,capScope:`device`,addonId:null,access:`view`},"navigation.move":{capName:`navigation`,capScope:`device`,addonId:null,access:`create`},"navigation.playSound":{capName:`navigation`,capScope:`device`,addonId:null,access:`create`},"navigation.runAction":{capName:`navigation`,capScope:`device`,addonId:null,access:`create`},"navigation.setLightLevel":{capName:`navigation`,capScope:`device`,addonId:null,access:`create`},"navigation.setLightMode":{capName:`navigation`,capScope:`device`,addonId:null,access:`create`},"navigation.setLightOn":{capName:`navigation`,capScope:`device`,addonId:null,access:`create`},"navigation.stop":{capName:`navigation`,capScope:`device`,addonId:null,access:`create`},"networkAccess.getEndpoint":{capName:`network-access`,capScope:`system`,addonId:null,access:`view`},"networkAccess.getStatus":{capName:`network-access`,capScope:`system`,addonId:null,access:`view`},"networkAccess.listEndpoints":{capName:`network-access`,capScope:`system`,addonId:null,access:`view`},"networkAccess.start":{capName:`network-access`,capScope:`system`,addonId:null,access:`create`},"networkAccess.stop":{capName:`network-access`,capScope:`system`,addonId:null,access:`create`},"networkLink.getStatus":{capName:`network-link`,capScope:`device`,addonId:null,access:`view`},"networkQuality.getAllStats":{capName:`network-quality`,capScope:`system`,addonId:null,access:`view`},"networkQuality.getDeviceStats":{capName:`network-quality`,capScope:`system`,addonId:null,access:`view`},"networkQuality.reportClientStats":{capName:`network-quality`,capScope:`system`,addonId:null,access:`create`},"nodeCertificates.confirmMeshLeaf":{capName:`node-certificates`,capScope:`system`,addonId:null,access:`create`},"nodeCertificates.forgetHub":{capName:`node-certificates`,capScope:`system`,addonId:null,access:`delete`},"nodeCertificates.getCertificates":{capName:`node-certificates`,capScope:`system`,addonId:null,access:`view`},"nodeCertificates.installHttpsCertificate":{capName:`node-certificates`,capScope:`system`,addonId:null,access:`create`},"nodeCertificates.installMeshLeaf":{capName:`node-certificates`,capScope:`system`,addonId:null,access:`create`},"nodeCertificates.prepareHttpsCertificate":{capName:`node-certificates`,capScope:`system`,addonId:null,access:`create`},"nodeCertificates.prepareMeshRenewal":{capName:`node-certificates`,capScope:`system`,addonId:null,access:`create`},"nodeCertificates.rollbackMeshLeaf":{capName:`node-certificates`,capScope:`system`,addonId:null,access:`create`},"nodes.clusterAddonStatus":{capName:`nodes`,capScope:`system`,addonId:null,access:`view`},"nodes.deployAddon":{capName:`nodes`,capScope:`system`,addonId:null,access:`create`},"nodes.directory":{capName:`nodes`,capScope:`system`,addonId:null,access:`view`},"nodes.executeQuery":{capName:`nodes`,capScope:`system`,addonId:null,access:`create`},"nodes.getCapUsageGraph":{capName:`nodes`,capScope:`system`,addonId:null,access:`view`},"nodes.getNodeAddons":{capName:`nodes`,capScope:`system`,addonId:null,access:`view`},"nodes.renameNode":{capName:`nodes`,capScope:`system`,addonId:null,access:`create`},"nodes.restartAddon":{capName:`nodes`,capScope:`system`,addonId:null,access:`create`},"nodes.restartNode":{capName:`nodes`,capScope:`system`,addonId:null,access:`create`},"nodes.restartProcess":{capName:`nodes`,capScope:`system`,addonId:null,access:`create`},"nodes.setProcessLogLevel":{capName:`nodes`,capScope:`system`,addonId:null,access:`create`},"nodes.shutdownNode":{capName:`nodes`,capScope:`system`,addonId:null,access:`create`},"nodes.topology":{capName:`nodes`,capScope:`system`,addonId:null,access:`view`},"nodes.undeployAddon":{capName:`nodes`,capScope:`system`,addonId:null,access:`create`},"notificationOutput.deleteTarget":{capName:`notification-output`,capScope:`system`,addonId:null,access:`delete`},"notificationOutput.discoverTargets":{capName:`notification-output`,capScope:`system`,addonId:null,access:`view`},"notificationOutput.getTarget":{capName:`notification-output`,capScope:`system`,addonId:null,access:`view`},"notificationOutput.listTargetKinds":{capName:`notification-output`,capScope:`system`,addonId:null,access:`view`},"notificationOutput.listTargets":{capName:`notification-output`,capScope:`system`,addonId:null,access:`view`},"notificationOutput.probeTargetConfig":{capName:`notification-output`,capScope:`system`,addonId:null,access:`create`},"notificationOutput.send":{capName:`notification-output`,capScope:`system`,addonId:null,access:`create`},"notificationOutput.setTargetEnabled":{capName:`notification-output`,capScope:`system`,addonId:null,access:`create`},"notificationOutput.testTarget":{capName:`notification-output`,capScope:`system`,addonId:null,access:`create`},"notificationOutput.upsertTarget":{capName:`notification-output`,capScope:`system`,addonId:null,access:`create`},"notificationRules.activateAlarmProfile":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`create`},"notificationRules.cancelSnooze":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`create`},"notificationRules.createAlarmProfile":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`create`},"notificationRules.createRule":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`create`},"notificationRules.createSequence":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`create`},"notificationRules.createSnooze":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`create`},"notificationRules.deleteAlarmProfile":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`delete`},"notificationRules.deleteRule":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`delete`},"notificationRules.deleteSequence":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`delete`},"notificationRules.getAlarmConfig":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`view`},"notificationRules.getAlarmSensors":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`view`},"notificationRules.getClipRetentionAsks":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`view`},"notificationRules.getConditionCatalog":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`view`},"notificationRules.getHistory":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`view`},"notificationRules.getRule":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`view`},"notificationRules.getRuleLastRuns":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`view`},"notificationRules.getSequence":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`view`},"notificationRules.getTemplateCatalog":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`view`},"notificationRules.listDeviceMutes":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`view`},"notificationRules.listRules":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`view`},"notificationRules.listSequences":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`view`},"notificationRules.listSnoozes":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`view`},"notificationRules.previewStateSummary":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`view`},"notificationRules.previewTemplate":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`view`},"notificationRules.renameAlarmProfile":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`create`},"notificationRules.resolveArtifactUrl":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`view`},"notificationRules.setAlarmConfig":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`create`},"notificationRules.setDeviceMuted":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`create`},"notificationRules.setRuleEnabled":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`create`},"notificationRules.testRule":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`create`},"notificationRules.updateRule":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`create`},"notificationRules.updateSequence":{capName:`notification-rules`,capScope:`system`,addonId:null,access:`create`},"notifier.cancel":{capName:`notifier`,capScope:`device`,addonId:null,access:`create`},"notifier.getStatus":{capName:`notifier`,capScope:`device`,addonId:null,access:`view`},"notifier.send":{capName:`notifier`,capScope:`device`,addonId:null,access:`create`},"numericSensor.getStatus":{capName:`numeric-sensor`,capScope:`device`,addonId:null,access:`view`},"oauthIntegration.getDescriptor":{capName:`oauth-integration`,capScope:`system`,addonId:null,access:`view`},"oidcConnections.connectionFormSchema":{capName:`oidc-connections`,capScope:`system`,addonId:null,access:`view`},"oidcConnections.createConnection":{capName:`oidc-connections`,capScope:`system`,addonId:null,access:`create`},"oidcConnections.deleteConnection":{capName:`oidc-connections`,capScope:`system`,addonId:null,access:`delete`},"oidcConnections.listConnections":{capName:`oidc-connections`,capScope:`system`,addonId:null,access:`view`},"oidcConnections.updateConnection":{capName:`oidc-connections`,capScope:`system`,addonId:null,access:`create`},"osd.getStatus":{capName:`osd`,capScope:`device`,addonId:null,access:`view`},"osd.setOverlay":{capName:`osd`,capScope:`device`,addonId:null,access:`create`},"osdManager.clearSlotBinding":{capName:`osd-manager`,capScope:`system`,addonId:null,access:`delete`},"osdManager.copyDeviceConfiguration":{capName:`osd-manager`,capScope:`system`,addonId:null,access:`create`},"osdManager.deleteTemplate":{capName:`osd-manager`,capScope:`system`,addonId:null,access:`delete`},"osdManager.getConditionSupport":{capName:`osd-manager`,capScope:`system`,addonId:null,access:`view`},"osdManager.getDeviceOsd":{capName:`osd-manager`,capScope:`system`,addonId:null,access:`view`},"osdManager.getSourceCatalog":{capName:`osd-manager`,capScope:`system`,addonId:null,access:`view`},"osdManager.listTemplates":{capName:`osd-manager`,capScope:`system`,addonId:null,access:`view`},"osdManager.previewSlot":{capName:`osd-manager`,capScope:`system`,addonId:null,access:`create`},"osdManager.renderDevice":{capName:`osd-manager`,capScope:`system`,addonId:null,access:`create`},"osdManager.setSlotBinding":{capName:`osd-manager`,capScope:`system`,addonId:null,access:`create`},"osdManager.setSlotCameraEnabled":{capName:`osd-manager`,capScope:`system`,addonId:null,access:`create`},"osdManager.upsertTemplate":{capName:`osd-manager`,capScope:`system`,addonId:null,access:`create`},"petFeeder.callPet":{capName:`pet-feeder`,capScope:`device`,addonId:null,access:`create`},"petFeeder.cancelFeed":{capName:`pet-feeder`,capScope:`device`,addonId:null,access:`create`},"petFeeder.feed":{capName:`pet-feeder`,capScope:`device`,addonId:null,access:`create`},"petFeeder.getStatus":{capName:`pet-feeder`,capScope:`device`,addonId:null,access:`view`},"petFeeder.markFoodReplenished":{capName:`pet-feeder`,capScope:`device`,addonId:null,access:`create`},"petFeeder.playSound":{capName:`pet-feeder`,capScope:`device`,addonId:null,access:`create`},"petFeeder.resetDesiccant":{capName:`pet-feeder`,capScope:`device`,addonId:null,access:`delete`},"petFeeder.setChildLock":{capName:`pet-feeder`,capScope:`device`,addonId:null,access:`create`},"petFeeder.setFeedSound":{capName:`pet-feeder`,capScope:`device`,addonId:null,access:`create`},"petFeeder.setIndicatorLight":{capName:`pet-feeder`,capScope:`device`,addonId:null,access:`create`},"petFeeder.setVolume":{capName:`pet-feeder`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.addRetrainFrameFromRecording":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.addRetrainFramesToCollection":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.applyDeviceSettingsPatch":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.backfillRetrainOrigins":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.cancelRelocateMedia":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.cancelStorageMigrationMove":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.clearTrackRelation":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`delete`},"pipelineAnalytics.clearTracks":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`delete`},"pipelineAnalytics.completeRetrainTrack":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.countRelocatableMedia":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.countUnstampedEventMedia":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.createRetrainCollection":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.deleteDeviceEvents":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`delete`},"pipelineAnalytics.deleteRetrainCollection":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`delete`},"pipelineAnalytics.deleteTracks":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`delete`},"pipelineAnalytics.deselectRetrainFrame":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.getActiveTracks":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getAudioEvents":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getDeviceLiveContribution":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getDeviceSettingsContribution":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getEventDensity":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getEventDensityBatch":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getEventMedia":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getEventMediaFootprintByKind":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getEventStoreFootprint":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getKeyEvents":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getKeyEventsBatch":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getMediaReclaimStatus":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getMotionEvents":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getObjectEmbeddingRebuildStatus":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getObjectEvents":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getRetrainCorpusKpi":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getRetrainExportUrl":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getRetrainFrameImage":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getSensorEvents":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getStorageMigrationMoveStatus":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getTrack":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getTrackMedia":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getTrainingExportSummary":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.getTrainingExportUrl":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.listArchivedDebugNotes":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.listBirthDecisions":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.listEventKinds":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.listEventKindsBatch":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.listEventMedia":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.listOpsLog":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.listRecentTracks":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.listRelocateMediaJobs":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.listRetrainAnnotations":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.listRetrainAssistProfiles":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.listRetrainCollectionFrames":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.listRetrainCollections":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.listRetrainCorpusPage":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.listRetrainFrames":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.listRetrainStaging":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.listTrackMedia":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.listTrackRelations":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.listTracks":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.offerRetrainArchive":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.ownersWithMedia":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.pauseForStorageMigration":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.proposeRetrainAnnotations":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.proposeRetrainAnnotationsWithLlm":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.pruneEvents":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.pruneEventsBefore":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.pruneTracksBefore":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.readLongTermSeries":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.rebuildObjectEmbeddings":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.reclaimDebugMedia":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.reconcileFromDisk":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.refreshStorageLocationsForMigration":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.relocateMedia":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.removeRetrainFrameFromCollection":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`delete`},"pipelineAnalytics.renameRetrainCollection":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.resolveRetrainTrainingCorpus":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.restageRetrainTrack":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.resumeForStorageMigration":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.saveRetrainAnnotations":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.searchObjectEvents":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`view`},"pipelineAnalytics.selectRetrainFrames":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.setRetrainFrameComplete":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.setTrackFlags":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.setTrackPurity":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.setTrackRelation":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.startStorageMigrationMove":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineAnalytics.wipeAllAnalytics":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`delete`},"pipelineAnalytics.wipeObjectEmbeddings":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`delete`},"pipelineAnalytics.writeRetrainArchive":{capName:`pipeline-analytics`,capScope:`device`,addonId:null,access:`create`},"pipelineExecutor.cacheFrameInPool":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`create`},"pipelineExecutor.clearDeviceOverrides":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`delete`},"pipelineExecutor.clearModelBoundDeviceOverrides":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`delete`},"pipelineExecutor.deleteModel":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`delete`},"pipelineExecutor.downloadModel":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`create`},"pipelineExecutor.getAddonModels":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`view`},"pipelineExecutor.getAudioCapabilities":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`view`},"pipelineExecutor.getAvailableEngines":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`view`},"pipelineExecutor.getCapabilities":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`view`},"pipelineExecutor.getDefaultSteps":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`view`},"pipelineExecutor.getDetectionConfigSchema":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`view`},"pipelineExecutor.getEffectiveTuning":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`view`},"pipelineExecutor.getEngineProvisioning":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`view`},"pipelineExecutor.getGlobalPipelineConfig":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`view`},"pipelineExecutor.getGlobalSteps":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`view`},"pipelineExecutor.getInferenceDeviceHealth":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`view`},"pipelineExecutor.getOrchestratorConfigSchema":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`view`},"pipelineExecutor.getReferenceAudio":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`view`},"pipelineExecutor.getReferenceAudioFiles":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`view`},"pipelineExecutor.getReferenceImage":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`view`},"pipelineExecutor.getSchema":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`view`},"pipelineExecutor.getSelectedEngine":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`view`},"pipelineExecutor.getVideoPipelineSteps":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`view`},"pipelineExecutor.inferCached":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`create`},"pipelineExecutor.killEngine":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`create`},"pipelineExecutor.listLoadedEngines":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`view`},"pipelineExecutor.listReferenceImages":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`view`},"pipelineExecutor.rearmInferenceDevice":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`create`},"pipelineExecutor.runAudioTest":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`create`},"pipelineExecutor.runPipeline":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`create`},"pipelineExecutor.runPipelineBatch":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`create`},"pipelineExecutor.setVideoPipelineSteps":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`create`},"pipelineExecutor.spinEngine":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`create`},"pipelineExecutor.uncacheFrame":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`create`},"pipelineExecutor.validatePipeline":{capName:`pipeline-executor`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.abortNodeBenchmark":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.applyAutoTune":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.applyDeviceSettingsPatch":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.assignAudio":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.assignPipeline":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.deleteNodeBenchmarkResult":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`delete`},"pipelineOrchestrator.getAgentLoad":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getAgentSettings":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getAudioAssignment":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getAudioAssignments":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getAudioNodeLoad":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getCameraDetectionSource":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getCameraMetrics":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getCameraSettings":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getCameraStatus":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getCameraStatuses":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getCameraStepOverrides":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getCameraSwitches":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getCapabilityBindings":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getClusterModelChoice":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getDeviceLiveContribution":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getDeviceSettingsContribution":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getEffectiveShares":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getGlobalMetrics":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getIngestOwner":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getNodeBenchmarkCandidates":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getNodeBenchmarkPreflight":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getNodeBenchmarkStatus":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getNodeInferenceDevices":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getPipelineAssignment":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getPipelineAssignments":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getPipelineDevicePin":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getPlacementStats":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.getReconcileFromDiskStatus":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.listAgentSettings":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.listNodeBenchmarkResults":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.pauseForStorageMigration":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.planAutoTune":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.rebalance":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.reconcileFromDisk":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.removeAgentSettings":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`delete`},"pipelineOrchestrator.requestOccupancyLook":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.resetNodePipelineDefaults":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`delete`},"pipelineOrchestrator.resolvePipeline":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.resumeForStorageMigration":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setAgentCapabilities":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setAgentDecodeLimits":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setAgentInferenceDevices":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setAgentMaxCameras":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setAgentReachableHost":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setCameraDetectionSource":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setCameraPipelineForAgent":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setCameraSensors":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setCameraStepOverride":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setCameraStepSettings":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setCameraStepToggle":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setCameraSwitch":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setCapabilityBinding":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setLoadBalancingShares":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setPipelineDevicePin":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.setShareSource":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.startNodeBenchmark":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.suggestShares":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`view`},"pipelineOrchestrator.unassignAudio":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineOrchestrator.unassignPipeline":{capName:`pipeline-orchestrator`,capScope:`system`,addonId:null,access:`create`},"pipelineRunner.abortNodeBench":{capName:`pipeline-runner`,capScope:`system`,addonId:null,access:`create`},"pipelineRunner.attachCamera":{capName:`pipeline-runner`,capScope:`system`,addonId:null,access:`create`},"pipelineRunner.detachCamera":{capName:`pipeline-runner`,capScope:`system`,addonId:null,access:`create`},"pipelineRunner.getAllCameraMetrics":{capName:`pipeline-runner`,capScope:`system`,addonId:null,access:`view`},"pipelineRunner.getCameraMetrics":{capName:`pipeline-runner`,capScope:`system`,addonId:null,access:`view`},"pipelineRunner.getLocalCameras":{capName:`pipeline-runner`,capScope:`system`,addonId:null,access:`view`},"pipelineRunner.getLocalLoad":{capName:`pipeline-runner`,capScope:`system`,addonId:null,access:`view`},"pipelineRunner.getLocalMetrics":{capName:`pipeline-runner`,capScope:`system`,addonId:null,access:`view`},"pipelineRunner.getNativeCrop":{capName:`pipeline-runner`,capScope:`system`,addonId:null,access:`view`},"pipelineRunner.getNodeBenchStatus":{capName:`pipeline-runner`,capScope:`system`,addonId:null,access:`view`},"pipelineRunner.getParkedTrackFrame":{capName:`pipeline-runner`,capScope:`system`,addonId:null,access:`view`},"pipelineRunner.parkTrackFrame":{capName:`pipeline-runner`,capScope:`system`,addonId:null,access:`create`},"pipelineRunner.releaseParkedTrackFrames":{capName:`pipeline-runner`,capScope:`system`,addonId:null,access:`create`},"pipelineRunner.reportMotion":{capName:`pipeline-runner`,capScope:`system`,addonId:null,access:`create`},"pipelineRunner.requestOccupancyBurst":{capName:`pipeline-runner`,capScope:`system`,addonId:null,access:`create`},"pipelineRunner.runDetailSubtree":{capName:`pipeline-runner`,capScope:`system`,addonId:null,access:`create`},"pipelineRunner.runStatelessStep":{capName:`pipeline-runner`,capScope:`system`,addonId:null,access:`create`},"pipelineRunner.startNodeBench":{capName:`pipeline-runner`,capScope:`system`,addonId:null,access:`create`},"plateGallery.assignPlate":{capName:`plate-gallery`,capScope:`system`,addonId:null,access:`create`},"plateGallery.assignPlates":{capName:`plate-gallery`,capScope:`system`,addonId:null,access:`create`},"plateGallery.correctPlateText":{capName:`plate-gallery`,capScope:`system`,addonId:null,access:`create`},"plateGallery.createVehicle":{capName:`plate-gallery`,capScope:`system`,addonId:null,access:`create`},"plateGallery.deletePlate":{capName:`plate-gallery`,capScope:`system`,addonId:null,access:`delete`},"plateGallery.deleteVehicle":{capName:`plate-gallery`,capScope:`system`,addonId:null,access:`delete`},"plateGallery.getPlateByTrack":{capName:`plate-gallery`,capScope:`system`,addonId:null,access:`view`},"plateGallery.getPlateMedia":{capName:`plate-gallery`,capScope:`system`,addonId:null,access:`view`},"plateGallery.listPlates":{capName:`plate-gallery`,capScope:`system`,addonId:null,access:`view`},"plateGallery.listVehicles":{capName:`plate-gallery`,capScope:`system`,addonId:null,access:`view`},"plateGallery.listVehicleSamples":{capName:`plate-gallery`,capScope:`system`,addonId:null,access:`view`},"plateGallery.removeVehicleSample":{capName:`plate-gallery`,capScope:`system`,addonId:null,access:`delete`},"plateGallery.renameVehicle":{capName:`plate-gallery`,capScope:`system`,addonId:null,access:`create`},"plateGallery.searchPlates":{capName:`plate-gallery`,capScope:`system`,addonId:null,access:`view`},"plateGallery.suggestPlateClusters":{capName:`plate-gallery`,capScope:`system`,addonId:null,access:`view`},"plateGallery.unassignPlate":{capName:`plate-gallery`,capScope:`system`,addonId:null,access:`create`},"plateGallery.unassignPlates":{capName:`plate-gallery`,capScope:`system`,addonId:null,access:`create`},"platformProbe.getCapabilities":{capName:`platform-probe`,capScope:`system`,addonId:null,access:`view`},"platformProbe.getHardware":{capName:`platform-probe`,capScope:`system`,addonId:null,access:`view`},"platformProbe.resolveHwAccel":{capName:`platform-probe`,capScope:`system`,addonId:null,access:`view`},"platformProbe.resolveInferenceConfig":{capName:`platform-probe`,capScope:`system`,addonId:null,access:`view`},"powerMeter.getStatus":{capName:`power-meter`,capScope:`device`,addonId:null,access:`view`},"presence.getStatus":{capName:`presence`,capScope:`device`,addonId:null,access:`view`},"pressureSensor.getStatus":{capName:`pressure-sensor`,capScope:`device`,addonId:null,access:`view`},"privacyMask.getOptions":{capName:`privacy-mask`,capScope:`device`,addonId:null,access:`view`},"privacyMask.getStatus":{capName:`privacy-mask`,capScope:`device`,addonId:null,access:`view`},"privacyMask.setAudioEnabled":{capName:`privacy-mask`,capScope:`device`,addonId:null,access:`create`},"privacyMask.setMask":{capName:`privacy-mask`,capScope:`device`,addonId:null,access:`create`},"ptz.captureHomeHere":{capName:`ptz`,capScope:`device`,addonId:null,access:`create`},"ptz.continuousMove":{capName:`ptz`,capScope:`device`,addonId:null,access:`create`},"ptz.deletePreset":{capName:`ptz`,capScope:`device`,addonId:null,access:`delete`},"ptz.getHomePreset":{capName:`ptz`,capScope:`device`,addonId:null,access:`view`},"ptz.getHomeReturn":{capName:`ptz`,capScope:`device`,addonId:null,access:`view`},"ptz.getOptions":{capName:`ptz`,capScope:`device`,addonId:null,access:`view`},"ptz.getPosition":{capName:`ptz`,capScope:`device`,addonId:null,access:`view`},"ptz.getPresets":{capName:`ptz`,capScope:`device`,addonId:null,access:`view`},"ptz.getStatus":{capName:`ptz`,capScope:`device`,addonId:null,access:`view`},"ptz.goHome":{capName:`ptz`,capScope:`device`,addonId:null,access:`create`},"ptz.goToPreset":{capName:`ptz`,capScope:`device`,addonId:null,access:`create`},"ptz.move":{capName:`ptz`,capScope:`device`,addonId:null,access:`create`},"ptz.savePreset":{capName:`ptz`,capScope:`device`,addonId:null,access:`create`},"ptz.setAutofocus":{capName:`ptz`,capScope:`device`,addonId:null,access:`create`},"ptz.setHomePreset":{capName:`ptz`,capScope:`device`,addonId:null,access:`create`},"ptz.setHomeReturn":{capName:`ptz`,capScope:`device`,addonId:null,access:`create`},"ptz.stop":{capName:`ptz`,capScope:`device`,addonId:null,access:`create`},"ptzAutotrack.getSettings":{capName:`ptz-autotrack`,capScope:`device`,addonId:null,access:`view`},"ptzAutotrack.getStatus":{capName:`ptz-autotrack`,capScope:`device`,addonId:null,access:`view`},"ptzAutotrack.setEnabled":{capName:`ptz-autotrack`,capScope:`device`,addonId:null,access:`create`},"ptzAutotrack.setSettings":{capName:`ptz-autotrack`,capScope:`device`,addonId:null,access:`create`},"reboot.reboot":{capName:`reboot`,capScope:`device`,addonId:null,access:`create`},"recording.getAvailability":{capName:`recording`,capScope:`device`,addonId:null,access:`view`},"recording.getDaysWithRecordings":{capName:`recording`,capScope:`device`,addonId:null,access:`view`},"recording.getPlayback":{capName:`recording`,capScope:`device`,addonId:null,access:`view`},"recording.getPlaybackOptions":{capName:`recording`,capScope:`device`,addonId:null,access:`view`},"recording.listSources":{capName:`recording`,capScope:`device`,addonId:null,access:`view`},"recordingArchive.applyDeviceSettingsPatch":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`create`},"recordingArchive.cancelRelocateJob":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`create`},"recordingArchive.cancelStorageMigrationMove":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`create`},"recordingArchive.deleteFootprint":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`delete`},"recordingArchive.getAvailabilityBatch":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`view`},"recordingArchive.getDaysWithRecordingsBatch":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`view`},"recordingArchive.getDeviceConfig":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`view`},"recordingArchive.getDeviceLiveContribution":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`view`},"recordingArchive.getDeviceSettingsContribution":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`view`},"recordingArchive.getPlacement":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`view`},"recordingArchive.getRelocateResidue":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`view`},"recordingArchive.getStatus":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`view`},"recordingArchive.getStorageMigrationMoveStatus":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`view`},"recordingArchive.getStorageUsage":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`view`},"recordingArchive.listOpsLog":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`view`},"recordingArchive.listRelocateJobs":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`view`},"recordingArchive.locateSegment":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`view`},"recordingArchive.pauseForStorageMigration":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`create`},"recordingArchive.planStorageRebalance":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`view`},"recordingArchive.pruneFootage":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`create`},"recordingArchive.readGopBytes":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`view`},"recordingArchive.readSegmentBytes":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`view`},"recordingArchive.readWindowBytes":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`view`},"recordingArchive.reconcileLedgerAgainstDisk":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`create`},"recordingArchive.refreshStorageLocationsForMigration":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`create`},"recordingArchive.relocateFootage":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`create`},"recordingArchive.renderClip":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`create`},"recordingArchive.renderGif":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`create`},"recordingArchive.rescanStorage":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`create`},"recordingArchive.resumeForStorageMigration":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`create`},"recordingArchive.setDeviceConfig":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`create`},"recordingArchive.setDevicePlacement":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`create`},"recordingArchive.startStorageMigrationMove":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`create`},"recordingArchive.startStorageRebalance":{capName:`recording-archive`,capScope:`system`,addonId:null,access:`create`},"recordingExport.cancelExport":{capName:`recording-export`,capScope:`system`,addonId:null,access:`create`},"recordingExport.createExport":{capName:`recording-export`,capScope:`system`,addonId:null,access:`create`},"recordingExport.deleteExport":{capName:`recording-export`,capScope:`system`,addonId:null,access:`delete`},"recordingExport.getDownloadUrl":{capName:`recording-export`,capScope:`system`,addonId:null,access:`view`},"recordingExport.getExport":{capName:`recording-export`,capScope:`system`,addonId:null,access:`view`},"recordingExport.listExports":{capName:`recording-export`,capScope:`system`,addonId:null,access:`view`},"recordingExport.readExportBytes":{capName:`recording-export`,capScope:`system`,addonId:null,access:`view`},"recordingOnboard.getOptions":{capName:`recording-onboard`,capScope:`device`,addonId:null,access:`view`},"recordingOnboard.getStatus":{capName:`recording-onboard`,capScope:`device`,addonId:null,access:`view`},"recordingOnboard.setSettings":{capName:`recording-onboard`,capScope:`device`,addonId:null,access:`create`},"recordingSignal.getStatus":{capName:`recording-signal`,capScope:`device`,addonId:null,access:`view`},"sceneMonitor.captureReference":{capName:`scene-monitor`,capScope:`device`,addonId:null,access:`create`},"sceneMonitor.createScene":{capName:`scene-monitor`,capScope:`device`,addonId:null,access:`create`},"sceneMonitor.deleteReference":{capName:`scene-monitor`,capScope:`device`,addonId:null,access:`delete`},"sceneMonitor.deleteScene":{capName:`scene-monitor`,capScope:`device`,addonId:null,access:`delete`},"sceneMonitor.getStatus":{capName:`scene-monitor`,capScope:`device`,addonId:null,access:`view`},"sceneMonitor.listScenes":{capName:`scene-monitor`,capScope:`device`,addonId:null,access:`view`},"sceneMonitor.listScenesBatch":{capName:`scene-monitor`,capScope:`device`,addonId:null,access:`view`},"sceneMonitor.recheckNow":{capName:`scene-monitor`,capScope:`device`,addonId:null,access:`create`},"sceneMonitor.resetScene":{capName:`scene-monitor`,capScope:`device`,addonId:null,access:`delete`},"sceneMonitor.updateScene":{capName:`scene-monitor`,capScope:`device`,addonId:null,access:`create`},"scriptRunner.getStatus":{capName:`script-runner`,capScope:`device`,addonId:null,access:`view`},"scriptRunner.run":{capName:`script-runner`,capScope:`device`,addonId:null,access:`create`},"scriptRunner.stop":{capName:`script-runner`,capScope:`device`,addonId:null,access:`create`},"serverManagement.applyServerUpdate":{capName:`server-management`,capScope:`system`,addonId:null,access:`create`},"serverManagement.checkServerUpdate":{capName:`server-management`,capScope:`system`,addonId:null,access:`create`},"serverManagement.getServerPackageStatus":{capName:`server-management`,capScope:`system`,addonId:null,access:`view`},"serverManagement.restartServer":{capName:`server-management`,capScope:`system`,addonId:null,access:`create`},"serverManagement.rollbackServerUpdate":{capName:`server-management`,capScope:`system`,addonId:null,access:`create`},"settingsStore.aggregate":{capName:`settings-store`,capScope:`system`,addonId:null,access:`view`},"settingsStore.count":{capName:`settings-store`,capScope:`system`,addonId:null,access:`view`},"settingsStore.declareCollection":{capName:`settings-store`,capScope:`system`,addonId:null,access:`create`},"settingsStore.delete":{capName:`settings-store`,capScope:`system`,addonId:null,access:`delete`},"settingsStore.deleteWhere":{capName:`settings-store`,capScope:`system`,addonId:null,access:`delete`},"settingsStore.get":{capName:`settings-store`,capScope:`system`,addonId:null,access:`view`},"settingsStore.histogram":{capName:`settings-store`,capScope:`system`,addonId:null,access:`view`},"settingsStore.insert":{capName:`settings-store`,capScope:`system`,addonId:null,access:`create`},"settingsStore.insertMany":{capName:`settings-store`,capScope:`system`,addonId:null,access:`create`},"settingsStore.isEmpty":{capName:`settings-store`,capScope:`system`,addonId:null,access:`view`},"settingsStore.query":{capName:`settings-store`,capScope:`system`,addonId:null,access:`view`},"settingsStore.set":{capName:`settings-store`,capScope:`system`,addonId:null,access:`create`},"settingsStore.transact":{capName:`settings-store`,capScope:`system`,addonId:null,access:`create`},"settingsStore.update":{capName:`settings-store`,capScope:`system`,addonId:null,access:`create`},"settingsStore.updateWhere":{capName:`settings-store`,capScope:`system`,addonId:null,access:`create`},"settingsStore.upsert":{capName:`settings-store`,capScope:`system`,addonId:null,access:`create`},"settingsStore.upsertMany":{capName:`settings-store`,capScope:`system`,addonId:null,access:`create`},"smoke.getStatus":{capName:`smoke`,capScope:`device`,addonId:null,access:`view`},"smtpProvider.getStatus":{capName:`smtp-provider`,capScope:`system`,addonId:null,access:`view`},"smtpProvider.sendEmail":{capName:`smtp-provider`,capScope:`system`,addonId:null,access:`create`},"smtpProvider.verify":{capName:`smtp-provider`,capScope:`system`,addonId:null,access:`view`},"snapshot.applyDeviceSettingsPatch":{capName:`snapshot`,capScope:`device`,addonId:null,access:`create`},"snapshot.getDebugState":{capName:`snapshot`,capScope:`device`,addonId:null,access:`view`},"snapshot.getDeviceLiveContribution":{capName:`snapshot`,capScope:`device`,addonId:null,access:`view`},"snapshot.getDeviceSettingsContribution":{capName:`snapshot`,capScope:`device`,addonId:null,access:`view`},"snapshot.getSnapshot":{capName:`snapshot`,capScope:`device`,addonId:null,access:`view`},"snapshot.getSnapshotLinks":{capName:`snapshot`,capScope:`device`,addonId:null,access:`view`},"snapshot.getSnapshotOverview":{capName:`snapshot`,capScope:`device`,addonId:null,access:`view`},"snapshot.getStatus":{capName:`snapshot`,capScope:`device`,addonId:null,access:`view`},"snapshot.invalidateCache":{capName:`snapshot`,capScope:`device`,addonId:null,access:`create`},"ssoBridge.signBridgeToken":{capName:`sso-bridge`,capScope:`system`,addonId:null,access:`view`},"ssoBridge.verifyBridgeToken":{capName:`sso-bridge`,capScope:`system`,addonId:null,access:`view`},"storage.abortUpload":{capName:`storage`,capScope:`system`,addonId:null,access:`create`},"storage.beginDownload":{capName:`storage`,capScope:`system`,addonId:null,access:`create`},"storage.beginUpload":{capName:`storage`,capScope:`system`,addonId:null,access:`create`},"storage.delete":{capName:`storage`,capScope:`system`,addonId:null,access:`delete`},"storage.deleteLocation":{capName:`storage`,capScope:`system`,addonId:null,access:`delete`},"storage.endDownload":{capName:`storage`,capScope:`system`,addonId:null,access:`create`},"storage.exists":{capName:`storage`,capScope:`system`,addonId:null,access:`view`},"storage.finalizeUpload":{capName:`storage`,capScope:`system`,addonId:null,access:`create`},"storage.getAvailableSpace":{capName:`storage`,capScope:`system`,addonId:null,access:`view`},"storage.list":{capName:`storage`,capScope:`system`,addonId:null,access:`view`},"storage.listDrainProgress":{capName:`storage`,capScope:`system`,addonId:null,access:`view`},"storage.listLocationDeclarations":{capName:`storage`,capScope:`system`,addonId:null,access:`view`},"storage.listLocations":{capName:`storage`,capScope:`system`,addonId:null,access:`view`},"storage.listProviders":{capName:`storage`,capScope:`system`,addonId:null,access:`view`},"storage.read":{capName:`storage`,capScope:`system`,addonId:null,access:`view`},"storage.readChunk":{capName:`storage`,capScope:`system`,addonId:null,access:`view`},"storage.resolve":{capName:`storage`,capScope:`system`,addonId:null,access:`view`},"storage.testConfig":{capName:`storage`,capScope:`system`,addonId:null,access:`view`},"storage.testLocation":{capName:`storage`,capScope:`system`,addonId:null,access:`view`},"storage.upsertLocation":{capName:`storage`,capScope:`system`,addonId:null,access:`create`},"storage.write":{capName:`storage`,capScope:`system`,addonId:null,access:`create`},"storage.writeChunk":{capName:`storage`,capScope:`system`,addonId:null,access:`create`},"storageEvictable.evict":{capName:`storage-evictable`,capScope:`system`,addonId:null,access:`create`},"storageEvictable.getEvictableUsage":{capName:`storage-evictable`,capScope:`system`,addonId:null,access:`view`},"storageMigration.cancel":{capName:`storage-migration`,capScope:`system`,addonId:null,access:`create`},"storageMigration.cleanupCancel":{capName:`storage-migration`,capScope:`system`,addonId:null,access:`create`},"storageMigration.cleanupStart":{capName:`storage-migration`,capScope:`system`,addonId:null,access:`create`},"storageMigration.cleanupStatus":{capName:`storage-migration`,capScope:`system`,addonId:null,access:`view`},"storageMigration.drain":{capName:`storage-migration`,capScope:`system`,addonId:null,access:`create`},"storageMigration.history":{capName:`storage-migration`,capScope:`system`,addonId:null,access:`view`},"storageMigration.movers":{capName:`storage-migration`,capScope:`system`,addonId:null,access:`view`},"storageMigration.plan":{capName:`storage-migration`,capScope:`system`,addonId:null,access:`view`},"storageMigration.residue":{capName:`storage-migration`,capScope:`system`,addonId:null,access:`view`},"storageMigration.start":{capName:`storage-migration`,capScope:`system`,addonId:null,access:`create`},"storageMigration.status":{capName:`storage-migration`,capScope:`system`,addonId:null,access:`view`},"storageOccupancy.getOccupancy":{capName:`storage-occupancy`,capScope:`system`,addonId:null,access:`view`},"storageProvider.abortUpload":{capName:`storage-provider`,capScope:`system`,addonId:null,access:`create`},"storageProvider.beginDownload":{capName:`storage-provider`,capScope:`system`,addonId:null,access:`create`},"storageProvider.beginUpload":{capName:`storage-provider`,capScope:`system`,addonId:null,access:`create`},"storageProvider.delete":{capName:`storage-provider`,capScope:`system`,addonId:null,access:`delete`},"storageProvider.endDownload":{capName:`storage-provider`,capScope:`system`,addonId:null,access:`create`},"storageProvider.exists":{capName:`storage-provider`,capScope:`system`,addonId:null,access:`view`},"storageProvider.finalizeUpload":{capName:`storage-provider`,capScope:`system`,addonId:null,access:`create`},"storageProvider.getAvailableSpace":{capName:`storage-provider`,capScope:`system`,addonId:null,access:`view`},"storageProvider.getProviderInfo":{capName:`storage-provider`,capScope:`system`,addonId:null,access:`view`},"storageProvider.list":{capName:`storage-provider`,capScope:`system`,addonId:null,access:`view`},"storageProvider.read":{capName:`storage-provider`,capScope:`system`,addonId:null,access:`view`},"storageProvider.readChunk":{capName:`storage-provider`,capScope:`system`,addonId:null,access:`view`},"storageProvider.resolve":{capName:`storage-provider`,capScope:`system`,addonId:null,access:`view`},"storageProvider.testLocation":{capName:`storage-provider`,capScope:`system`,addonId:null,access:`view`},"storageProvider.write":{capName:`storage-provider`,capScope:`system`,addonId:null,access:`create`},"storageProvider.writeChunk":{capName:`storage-provider`,capScope:`system`,addonId:null,access:`create`},"streamBroker.acquireEgressTranscode":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.applyDeviceSettingsPatch":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.assignProfile":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.fetchEventMedia":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.forgetDeviceHardware":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`delete`},"streamBroker.getAllRtspEntries":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`view`},"streamBroker.getBrokerStats":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`view`},"streamBroker.getDeviceAudioMute":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`view`},"streamBroker.getDeviceLiveContribution":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`view`},"streamBroker.getDeviceSettingsContribution":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`view`},"streamBroker.getLiveViewerCounts":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`view`},"streamBroker.getPreBufferInfo":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`view`},"streamBroker.getRtspEntry":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`view`},"streamBroker.getRtspPort":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`view`},"streamBroker.getStreamUrl":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`view`},"streamBroker.getStreamWithCodec":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.isRtspEnabled":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`view`},"streamBroker.killClient":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.listAllCameraStreams":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`view`},"streamBroker.listAllProfileSlots":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`view`},"streamBroker.listClients":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`view`},"streamBroker.probeStream":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.produceEventMedia":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.publishCameraStream":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.pullAudioChunks":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`view`},"streamBroker.regenerateRtspToken":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.releaseEgressTranscode":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.releaseStreamWithCodec":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.renderPreBufferClip":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.reportStreamSignal":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.restartProfile":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.retractCameraStream":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.setDeviceAudioMute":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.setPreBufferDuration":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.setRtspEnabled":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.subscribeAudioChunks":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.unassignProfile":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamBroker.unsubscribeAudioChunks":{capName:`stream-broker`,capScope:`system`,addonId:null,access:`create`},"streamCatalog.getCatalog":{capName:`stream-catalog`,capScope:`device`,addonId:null,access:`view`},"streamParams.getConfigSchema":{capName:`stream-params`,capScope:`device`,addonId:null,access:`view`},"streamParams.getOptions":{capName:`stream-params`,capScope:`device`,addonId:null,access:`view`},"streamParams.getStatus":{capName:`stream-params`,capScope:`device`,addonId:null,access:`view`},"streamParams.setProfile":{capName:`stream-params`,capScope:`device`,addonId:null,access:`create`},"streamSignals.listSignals":{capName:`stream-signals`,capScope:`device`,addonId:null,access:`view`},"switch.getStatus":{capName:`switch`,capScope:`device`,addonId:null,access:`view`},"switch.setState":{capName:`switch`,capScope:`device`,addonId:null,access:`create`},"system.detectSiteLocation":{capName:`system`,capScope:`system`,addonId:null,access:`create`},"system.featureFlags":{capName:`system`,capScope:`system`,addonId:null,access:`view`},"system.forceRetentionCleanup":{capName:`system`,capScope:`system`,addonId:null,access:`create`},"system.getFailureContributions":{capName:`system`,capScope:`system`,addonId:null,access:`view`},"system.getLoadContributions":{capName:`system`,capScope:`system`,addonId:null,access:`view`},"system.getLoggingSettings":{capName:`system`,capScope:`system`,addonId:null,access:`view`},"system.getRequestCensus":{capName:`system`,capScope:`system`,addonId:null,access:`view`},"system.getRetentionConfig":{capName:`system`,capScope:`system`,addonId:null,access:`view`},"system.getSiteLocation":{capName:`system`,capScope:`system`,addonId:null,access:`view`},"system.health":{capName:`system`,capScope:`system`,addonId:null,access:`view`},"system.info":{capName:`system`,capScope:`system`,addonId:null,access:`view`},"system.networkAddresses":{capName:`system`,capScope:`system`,addonId:null,access:`view`},"system.setLoggingSettings":{capName:`system`,capScope:`system`,addonId:null,access:`create`},"system.setRetentionConfig":{capName:`system`,capScope:`system`,addonId:null,access:`create`},"system.setSiteLocation":{capName:`system`,capScope:`system`,addonId:null,access:`create`},"tamper.getStatus":{capName:`tamper`,capScope:`device`,addonId:null,access:`view`},"temperatureSensor.getStatus":{capName:`temperature-sensor`,capScope:`device`,addonId:null,access:`view`},"terminalSession.adoptLegacyMonitor":{capName:`terminal-session`,capScope:`system`,addonId:null,access:`create`},"terminalSession.close":{capName:`terminal-session`,capScope:`system`,addonId:null,access:`create`},"terminalSession.createInstance":{capName:`terminal-session`,capScope:`system`,addonId:null,access:`create`},"terminalSession.deleteInstance":{capName:`terminal-session`,capScope:`system`,addonId:null,access:`delete`},"terminalSession.listInstances":{capName:`terminal-session`,capScope:`system`,addonId:null,access:`view`},"terminalSession.listLegacyCameras":{capName:`terminal-session`,capScope:`system`,addonId:null,access:`view`},"terminalSession.listProfiles":{capName:`terminal-session`,capScope:`system`,addonId:null,access:`view`},"terminalSession.listSessions":{capName:`terminal-session`,capScope:`system`,addonId:null,access:`view`},"terminalSession.openSession":{capName:`terminal-session`,capScope:`system`,addonId:null,access:`create`},"terminalSession.pullOutput":{capName:`terminal-session`,capScope:`system`,addonId:null,access:`create`},"terminalSession.resize":{capName:`terminal-session`,capScope:`system`,addonId:null,access:`create`},"terminalSession.setInstanceEnabled":{capName:`terminal-session`,capScope:`system`,addonId:null,access:`create`},"terminalSession.updateInstance":{capName:`terminal-session`,capScope:`system`,addonId:null,access:`create`},"terminalSession.writeInput":{capName:`terminal-session`,capScope:`system`,addonId:null,access:`create`},"toast.onToast":{capName:`toast`,capScope:`system`,addonId:null,access:`view`},"training.canaryResult":{capName:`training`,capScope:`system`,addonId:null,access:`create`},"training.cancelJob":{capName:`training`,capScope:`system`,addonId:null,access:`create`},"training.discardResult":{capName:`training`,capScope:`system`,addonId:null,access:`create`},"training.getJob":{capName:`training`,capScope:`system`,addonId:null,access:`view`},"training.getJobResult":{capName:`training`,capScope:`system`,addonId:null,access:`view`},"training.listBaseModels":{capName:`training`,capScope:`system`,addonId:null,access:`view`},"training.listJobs":{capName:`training`,capScope:`system`,addonId:null,access:`view`},"training.planJob":{capName:`training`,capScope:`system`,addonId:null,access:`view`},"training.registerResult":{capName:`training`,capScope:`system`,addonId:null,access:`create`},"training.rollbackCanary":{capName:`training`,capScope:`system`,addonId:null,access:`create`},"training.startJob":{capName:`training`,capScope:`system`,addonId:null,access:`create`},"training.startJobBatch":{capName:`training`,capScope:`system`,addonId:null,access:`create`},"trainingProvider.cancelJob":{capName:`training-provider`,capScope:`system`,addonId:null,access:`create`},"trainingProvider.cleanupJob":{capName:`training-provider`,capScope:`system`,addonId:null,access:`create`},"trainingProvider.createEntry":{capName:`training-provider`,capScope:`system`,addonId:null,access:`create`},"trainingProvider.deleteEntry":{capName:`training-provider`,capScope:`system`,addonId:null,access:`delete`},"trainingProvider.describe":{capName:`training-provider`,capScope:`system`,addonId:null,access:`view`},"trainingProvider.describeTypes":{capName:`training-provider`,capScope:`system`,addonId:null,access:`view`},"trainingProvider.estimateJob":{capName:`training-provider`,capScope:`system`,addonId:null,access:`view`},"trainingProvider.getJob":{capName:`training-provider`,capScope:`system`,addonId:null,access:`view`},"trainingProvider.listEntries":{capName:`training-provider`,capScope:`system`,addonId:null,access:`view`},"trainingProvider.listJobEvents":{capName:`training-provider`,capScope:`system`,addonId:null,access:`view`},"trainingProvider.listJobs":{capName:`training-provider`,capScope:`system`,addonId:null,access:`view`},"trainingProvider.offerArtifact":{capName:`training-provider`,capScope:`system`,addonId:null,access:`create`},"trainingProvider.readResult":{capName:`training-provider`,capScope:`system`,addonId:null,access:`create`},"trainingProvider.submitJob":{capName:`training-provider`,capScope:`system`,addonId:null,access:`create`},"trainingProvider.updateEntry":{capName:`training-provider`,capScope:`system`,addonId:null,access:`create`},"trainingProvider.uploadDataset":{capName:`training-provider`,capScope:`system`,addonId:null,access:`create`},"trainingProvider.validateCredentials":{capName:`training-provider`,capScope:`system`,addonId:null,access:`create`},"turnProvider.getTurnServers":{capName:`turn-provider`,capScope:`system`,addonId:null,access:`view`},"update.getStatus":{capName:`update`,capScope:`device`,addonId:null,access:`view`},"update.installUpdate":{capName:`update`,capScope:`device`,addonId:null,access:`create`},"userManagement.confirmTotp":{capName:`user-management`,capScope:`system`,addonId:null,access:`create`},"userManagement.createScopedToken":{capName:`user-management`,capScope:`system`,addonId:null,access:`create`},"userManagement.createUser":{capName:`user-management`,capScope:`system`,addonId:null,access:`create`},"userManagement.deleteUser":{capName:`user-management`,capScope:`system`,addonId:null,access:`delete`},"userManagement.disableTotp":{capName:`user-management`,capScope:`system`,addonId:null,access:`delete`},"userManagement.findUserByExternalIdentity":{capName:`user-management`,capScope:`system`,addonId:null,access:`view`},"userManagement.getTotpStatus":{capName:`user-management`,capScope:`system`,addonId:null,access:`view`},"userManagement.listApiKeys":{capName:`user-management`,capScope:`system`,addonId:null,access:`view`},"userManagement.listExternalIdentities":{capName:`user-management`,capScope:`system`,addonId:null,access:`view`},"userManagement.listOauthSessions":{capName:`user-management`,capScope:`system`,addonId:null,access:`view`},"userManagement.listScopedTokens":{capName:`user-management`,capScope:`system`,addonId:null,access:`view`},"userManagement.listUsers":{capName:`user-management`,capScope:`system`,addonId:null,access:`view`},"userManagement.oauthExchangeCode":{capName:`user-management`,capScope:`system`,addonId:null,access:`view`},"userManagement.oauthIssueCode":{capName:`user-management`,capScope:`system`,addonId:null,access:`create`},"userManagement.oauthRefresh":{capName:`user-management`,capScope:`system`,addonId:null,access:`view`},"userManagement.oauthVerifyAccessToken":{capName:`user-management`,capScope:`system`,addonId:null,access:`view`},"userManagement.resetPassword":{capName:`user-management`,capScope:`system`,addonId:null,access:`create`},"userManagement.revokeApiKey":{capName:`user-management`,capScope:`system`,addonId:null,access:`delete`},"userManagement.revokeOauthSession":{capName:`user-management`,capScope:`system`,addonId:null,access:`delete`},"userManagement.revokeScopedToken":{capName:`user-management`,capScope:`system`,addonId:null,access:`delete`},"userManagement.setupTotp":{capName:`user-management`,capScope:`system`,addonId:null,access:`create`},"userManagement.setUserScopes":{capName:`user-management`,capScope:`system`,addonId:null,access:`create`},"userManagement.unlinkExternalIdentity":{capName:`user-management`,capScope:`system`,addonId:null,access:`delete`},"userManagement.updateUser":{capName:`user-management`,capScope:`system`,addonId:null,access:`create`},"userManagement.validateCredentials":{capName:`user-management`,capScope:`system`,addonId:null,access:`view`},"userManagement.validateScopedToken":{capName:`user-management`,capScope:`system`,addonId:null,access:`view`},"userManagement.verifyTotp":{capName:`user-management`,capScope:`system`,addonId:null,access:`view`},"userPasskeys.beginAuthentication":{capName:`user-passkeys`,capScope:`system`,addonId:null,access:`view`},"userPasskeys.beginDiscoverableAuthentication":{capName:`user-passkeys`,capScope:`system`,addonId:null,access:`view`},"userPasskeys.beginRegistration":{capName:`user-passkeys`,capScope:`system`,addonId:null,access:`create`},"userPasskeys.finishAuthentication":{capName:`user-passkeys`,capScope:`system`,addonId:null,access:`view`},"userPasskeys.finishDiscoverableAuthentication":{capName:`user-passkeys`,capScope:`system`,addonId:null,access:`view`},"userPasskeys.finishRegistration":{capName:`user-passkeys`,capScope:`system`,addonId:null,access:`create`},"userPasskeys.getSecondFactorPreference":{capName:`user-passkeys`,capScope:`system`,addonId:null,access:`view`},"userPasskeys.listPasskeys":{capName:`user-passkeys`,capScope:`system`,addonId:null,access:`view`},"userPasskeys.removePasskey":{capName:`user-passkeys`,capScope:`system`,addonId:null,access:`delete`},"userPasskeys.setSecondFactorPreference":{capName:`user-passkeys`,capScope:`system`,addonId:null,access:`create`},"vacuumControl.getStatus":{capName:`vacuum-control`,capScope:`device`,addonId:null,access:`view`},"vacuumControl.locate":{capName:`vacuum-control`,capScope:`device`,addonId:null,access:`create`},"vacuumControl.pause":{capName:`vacuum-control`,capScope:`device`,addonId:null,access:`create`},"vacuumControl.returnToBase":{capName:`vacuum-control`,capScope:`device`,addonId:null,access:`create`},"vacuumControl.setFanSpeed":{capName:`vacuum-control`,capScope:`device`,addonId:null,access:`create`},"vacuumControl.start":{capName:`vacuum-control`,capScope:`device`,addonId:null,access:`create`},"vacuumControl.stop":{capName:`vacuum-control`,capScope:`device`,addonId:null,access:`create`},"valve.close":{capName:`valve`,capScope:`device`,addonId:null,access:`create`},"valve.getStatus":{capName:`valve`,capScope:`device`,addonId:null,access:`view`},"valve.open":{capName:`valve`,capScope:`device`,addonId:null,access:`create`},"valve.setPosition":{capName:`valve`,capScope:`device`,addonId:null,access:`create`},"valve.stop":{capName:`valve`,capScope:`device`,addonId:null,access:`create`},"vectorStore.declareIndex":{capName:`vector-store`,capScope:`system`,addonId:null,access:`create`},"vectorStore.deleteByFilter":{capName:`vector-store`,capScope:`system`,addonId:null,access:`delete`},"vectorStore.deleteByIds":{capName:`vector-store`,capScope:`system`,addonId:null,access:`delete`},"vectorStore.fetchByIds":{capName:`vector-store`,capScope:`system`,addonId:null,access:`view`},"vectorStore.getByIds":{capName:`vector-store`,capScope:`system`,addonId:null,access:`view`},"vectorStore.query":{capName:`vector-store`,capScope:`system`,addonId:null,access:`view`},"vectorStore.scan":{capName:`vector-store`,capScope:`system`,addonId:null,access:`view`},"vectorStore.stats":{capName:`vector-store`,capScope:`system`,addonId:null,access:`view`},"vectorStore.upsert":{capName:`vector-store`,capScope:`system`,addonId:null,access:`create`},"vibration.getStatus":{capName:`vibration`,capScope:`device`,addonId:null,access:`view`},"videoclips.dialClipStream":{capName:`videoclips`,capScope:`device`,addonId:null,access:`view`},"videoclips.getClipPlayback":{capName:`videoclips`,capScope:`device`,addonId:null,access:`view`},"videoclips.getPlaybackOptions":{capName:`videoclips`,capScope:`device`,addonId:null,access:`view`},"videoclips.listClips":{capName:`videoclips`,capScope:`device`,addonId:null,access:`view`},"videoclips.listSources":{capName:`videoclips`,capScope:`device`,addonId:null,access:`view`},"videoclips.offerClipBytes":{capName:`videoclips`,capScope:`device`,addonId:null,access:`view`},"videoclips.readClipBytes":{capName:`videoclips`,capScope:`device`,addonId:null,access:`view`},"viewerUi.getStaticDir":{capName:`viewer-ui`,capScope:`system`,addonId:null,access:`view`},"viewerUi.getVersion":{capName:`viewer-ui`,capScope:`system`,addonId:null,access:`view`},"waterHeater.getStatus":{capName:`water-heater`,capScope:`device`,addonId:null,access:`view`},"waterHeater.setAway":{capName:`water-heater`,capScope:`device`,addonId:null,access:`create`},"waterHeater.setOperationMode":{capName:`water-heater`,capScope:`device`,addonId:null,access:`create`},"waterHeater.setTargetTemp":{capName:`water-heater`,capScope:`device`,addonId:null,access:`create`},"weather.getStatus":{capName:`weather`,capScope:`device`,addonId:null,access:`view`},"webrtcSession.addIceCandidate":{capName:`webrtc-session`,capScope:`device`,addonId:null,access:`create`},"webrtcSession.applyDownlinkProbe":{capName:`webrtc-session`,capScope:`device`,addonId:null,access:`create`},"webrtcSession.closeSession":{capName:`webrtc-session`,capScope:`device`,addonId:null,access:`create`},"webrtcSession.createSession":{capName:`webrtc-session`,capScope:`device`,addonId:null,access:`create`},"webrtcSession.getIceCandidates":{capName:`webrtc-session`,capScope:`device`,addonId:null,access:`view`},"webrtcSession.getSessionDebug":{capName:`webrtc-session`,capScope:`device`,addonId:null,access:`view`},"webrtcSession.getSessionState":{capName:`webrtc-session`,capScope:`device`,addonId:null,access:`view`},"webrtcSession.handleAnswer":{capName:`webrtc-session`,capScope:`device`,addonId:null,access:`create`},"webrtcSession.handleOffer":{capName:`webrtc-session`,capScope:`device`,addonId:null,access:`create`},"webrtcSession.hasAdaptiveBitrate":{capName:`webrtc-session`,capScope:`device`,addonId:null,access:`view`},"webrtcSession.listStreams":{capName:`webrtc-session`,capScope:`device`,addonId:null,access:`view`},"zoneAnalytics.getCameraHistory":{capName:`zone-analytics`,capScope:`device`,addonId:null,access:`view`},"zoneAnalytics.getCurrentSnapshot":{capName:`zone-analytics`,capScope:`device`,addonId:null,access:`view`},"zoneAnalytics.getCurrentSnapshotBatch":{capName:`zone-analytics`,capScope:`device`,addonId:null,access:`view`},"zoneAnalytics.getUnzonedHistory":{capName:`zone-analytics`,capScope:`device`,addonId:null,access:`view`},"zoneAnalytics.getZoneHistory":{capName:`zone-analytics`,capScope:`device`,addonId:null,access:`view`},"zoneRules.listRules":{capName:`zone-rules`,capScope:`device`,addonId:null,access:`view`},"zoneRules.setRules":{capName:`zone-rules`,capScope:`device`,addonId:null,access:`create`},"zones.addZone":{capName:`zones`,capScope:`device`,addonId:null,access:`create`},"zones.listZones":{capName:`zones`,capScope:`device`,addonId:null,access:`view`},"zones.removeZone":{capName:`zones`,capScope:`device`,addonId:null,access:`delete`},"zones.updateZone":{capName:`zones`,capScope:`device`,addonId:null,access:`create`}}),U.Camera,U.Hub,U.Light,U.Siren,U.Switch,U.Sensor,U.Thermostat,U.Climate,U.Button,U.EventEmitter,U.Update,U.Generic,U.Notifier,U.Script,U.Automation,U.Lock,U.Cover,U.Valve,U.Humidifier,U.WaterHeater,U.Fan,U.MediaPlayer,U.AlarmPanel,U.Control,U.Presence,U.Weather,U.Vacuum,U.LawnMower,U.Container,U.Image,U.PetFeeder,uu.BatteryOperated;var xB=[Aj,om,cm,fm,vm,Tm,Cm,fM,Ql,mM,Vx,tee,gM,Am,Wm,Qm,bM,eh,SM,Fh,wM,EM,Vee,dee,Hee,Wee,Jee,Zee,ete,fee,mg,tte,nte,ite,jg,cte,lte,fte,pte,hte,Qg,gte,r_,a_,xh,yte,W_,G_,J_,pv,k_,ev,Sv,Dy,E_,py,au,Uv,My,bte,Ste,bee,wte,Tte,Pte,See,Fte,Ite,Tee,Lte,Rte,zte,Bte,Vte,bN,kN,NN,f_,U_,LN,sb,Ree,lb,rP,aP,db,mb,_b,uP,mP,Lb,Rb,zb,_P,Hb,bP,TP,ex,NP,UP,ix,GP,YP,N_,fF,xx,UC,yF,xF,$C,rw,EF,LF,VF,TE,aD,Nk,ek,qF,lI,dI,mI,gI,SI,jI,II,LI,qI,pL,TL,IL,zL,$L,rR,Jk,ph,aR,$k,nA,iA,oA,lA,uA,fA,wA,lg,cR,hR,DA,_R,KR,JR,XR,IA,QR,dB,Zz,RA,ez,pz,BA,_z,yz,cj,xz,bj,tu,Cz,Tz,Oj,Pz,Iz,bO];Object.freeze({"accessories.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"accessories.setChildHidden":[{name:`childDeviceId`,form:`single`,optional:!1},{name:`deviceId`,form:`single`,optional:!1}],"addonSettings.getDeviceSettings":[{name:`deviceId`,form:`single`,optional:!1}],"addonSettings.updateDeviceSettings":[{name:`deviceId`,form:`single`,optional:!1}],"airQualitySensor.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"alarmPanel.arm":[{name:`deviceId`,form:`single`,optional:!1}],"alarmPanel.disarm":[{name:`deviceId`,form:`single`,optional:!1}],"alarmPanel.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"alarmPanel.trigger":[{name:`deviceId`,form:`single`,optional:!1}],"ambientLightSensor.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"audioAnalysis.applyDeviceSettingsPatch":[{name:`deviceId`,form:`single`,optional:!1}],"audioAnalysis.getDeviceLiveContribution":[{name:`deviceId`,form:`single`,optional:!1}],"audioAnalysis.getDeviceSettingsContribution":[{name:`deviceId`,form:`single`,optional:!1}],"audioAnalysis.resolveDeviceSettings":[{name:`deviceId`,form:`single`,optional:!1}],"audioAnalyzer.attachDevice":[{name:`deviceId`,form:`single`,optional:!1}],"audioAnalyzer.classify":[{name:`deviceId`,form:`single`,optional:!0}],"audioAnalyzer.detachDevice":[{name:`deviceId`,form:`single`,optional:!1}],"audioMetrics.getCurrentSnapshot":[{name:`deviceId`,form:`single`,optional:!1}],"audioMetrics.getHistory":[{name:`deviceId`,form:`single`,optional:!1}],"automationControl.disable":[{name:`deviceId`,form:`single`,optional:!1}],"automationControl.enable":[{name:`deviceId`,form:`single`,optional:!1}],"automationControl.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"automationControl.trigger":[{name:`deviceId`,form:`single`,optional:!1}],"battery.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"battery.wakeForStream":[{name:`deviceId`,form:`single`,optional:!1}],"binary.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"brightness.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"brightness.setBrightness":[{name:`deviceId`,form:`single`,optional:!1}],"button.press":[{name:`deviceId`,form:`single`,optional:!1}],"cameraCredentials.getCredentials":[{name:`deviceId`,form:`single`,optional:!1}],"cameraCredentials.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"cameraGridLayout.applyDeviceSettingsPatch":[{name:`deviceId`,form:`single`,optional:!1}],"cameraGridLayout.getDeviceLiveContribution":[{name:`deviceId`,form:`single`,optional:!1}],"cameraGridLayout.getDeviceSettingsContribution":[{name:`deviceId`,form:`single`,optional:!1}],"cameraGridLayout.getLayout":[{name:`deviceId`,form:`single`,optional:!1}],"cameraGridLayout.saveLayout":[{name:`cells`,form:`object-array`,optional:!1,itemField:`deviceId`},{name:`deviceId`,form:`single`,optional:!1}],"cameraPipelineConfig.applyDeviceSettingsPatch":[{name:`deviceId`,form:`single`,optional:!1}],"cameraPipelineConfig.getDeviceLiveContribution":[{name:`deviceId`,form:`single`,optional:!1}],"cameraPipelineConfig.getDeviceSettingsContribution":[{name:`deviceId`,form:`single`,optional:!1}],"cameraStreams.getBrokerStreams":[{name:`deviceId`,form:`single`,optional:!1}],"cameraStreams.getCameraStreams":[{name:`deviceId`,form:`single`,optional:!1}],"cameraStreams.getProfileRtspEntries":[{name:`deviceId`,form:`single`,optional:!1}],"cameraStreams.getRtspEntries":[{name:`deviceId`,form:`single`,optional:!1}],"cameraStreams.pickStream":[{name:`deviceId`,form:`single`,optional:!1}],"carbonMonoxide.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"climateControl.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"climateControl.setFanMode":[{name:`deviceId`,form:`single`,optional:!1}],"climateControl.setMode":[{name:`deviceId`,form:`single`,optional:!1}],"climateControl.setPreset":[{name:`deviceId`,form:`single`,optional:!1}],"climateControl.setSwingHorizontal":[{name:`deviceId`,form:`single`,optional:!1}],"climateControl.setSwingVertical":[{name:`deviceId`,form:`single`,optional:!1}],"climateControl.setTarget":[{name:`deviceId`,form:`single`,optional:!1}],"climateControl.setTargetHumidity":[{name:`deviceId`,form:`single`,optional:!1}],"climateControl.setTargetRange":[{name:`deviceId`,form:`single`,optional:!1}],"color.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"color.setColor":[{name:`deviceId`,form:`single`,optional:!1}],"connectivity.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"consumables.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"consumables.reset":[{name:`deviceId`,form:`single`,optional:!1}],"contact.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"control.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"control.setValue":[{name:`deviceId`,form:`single`,optional:!1}],"cover.close":[{name:`deviceId`,form:`single`,optional:!1}],"cover.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"cover.open":[{name:`deviceId`,form:`single`,optional:!1}],"cover.setPosition":[{name:`deviceId`,form:`single`,optional:!1}],"cover.setTiltPosition":[{name:`deviceId`,form:`single`,optional:!1}],"cover.stop":[{name:`deviceId`,form:`single`,optional:!1}],"dayNight.getOptions":[{name:`deviceId`,form:`single`,optional:!1}],"dayNight.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"dayNight.setSettings":[{name:`deviceId`,form:`single`,optional:!1}],"detectionPipeline.applyDeviceSettingsPatch":[{name:`deviceId`,form:`single`,optional:!1}],"detectionPipeline.getDeviceLiveContribution":[{name:`deviceId`,form:`single`,optional:!1}],"detectionPipeline.getDeviceSettingsContribution":[{name:`deviceId`,form:`single`,optional:!1}],"deviceAdminLink.getAdminLink":[{name:`deviceId`,form:`single`,optional:!1}],"deviceAdoption.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"deviceAdoption.release":[{name:`camDeviceId`,form:`single`,optional:!1}],"deviceAdoption.resync":[{name:`camDeviceId`,form:`single`,optional:!1}],"deviceDiscovery.adoptDevice":[{name:`deviceId`,form:`single`,optional:!1}],"deviceDiscovery.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"deviceDiscovery.listDiscovered":[{name:`deviceId`,form:`single`,optional:!1}],"deviceDiscovery.refreshDiscovery":[{name:`deviceId`,form:`single`,optional:!1}],"deviceDiscovery.releaseDevice":[{name:`childDeviceId`,form:`single`,optional:!1},{name:`deviceId`,form:`single`,optional:!1}],"deviceExport.applyDeviceSettingsPatch":[{name:`deviceId`,form:`single`,optional:!1}],"deviceExport.getDeviceLiveContribution":[{name:`deviceId`,form:`single`,optional:!1}],"deviceExport.getDeviceSettingsContribution":[{name:`deviceId`,form:`single`,optional:!1}],"deviceExtension.listCandidates":[{name:`deviceId`,form:`single`,optional:!1}],"deviceExtension.listSlots":[{name:`deviceId`,form:`single`,optional:!1}],"deviceExtension.listSources":[{name:`deviceId`,form:`single`,optional:!1}],"deviceExtension.setSlot":[{name:`deviceId`,form:`single`,optional:!1}],"deviceHistory.getDeviceEnabled":[{name:`deviceId`,form:`single`,optional:!1}],"deviceHistory.listSeries":[{name:`deviceId`,form:`single`,optional:!1}],"deviceHistory.query":[{name:`deviceId`,form:`single`,optional:!1}],"deviceHistory.setDeviceEnabled":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.adoptionRelease":[{name:`camDeviceId`,form:`single`,optional:!1}],"deviceManager.adoptionResync":[{name:`camDeviceId`,form:`single`,optional:!1}],"deviceManager.applyInitialMeta":[{name:`deviceId`,form:`single`,optional:!1},{name:`linkDeviceId`,form:`single`,optional:!0}],"deviceManager.disable":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.enable":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.getBindings":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.getBindingsBatch":[{name:`deviceIds`,form:`array`,optional:!1}],"deviceManager.getChildren":[{name:`parentDeviceId`,form:`single`,optional:!1}],"deviceManager.getChildrenBatch":[{name:`parentDeviceIds`,form:`array`,optional:!1}],"deviceManager.getConfigSchema":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.getDevice":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.getDeviceAggregate":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.getDeviceLiveInfoAggregate":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.getDeviceSettingsAggregate":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.getDeviceStatusAggregate":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.getDeviceStatusAggregateBatch":[{name:`deviceIds`,form:`array`,optional:!1}],"deviceManager.getLinkedDevices":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.getLinkedDevicesBatch":[{name:`deviceIds`,form:`array`,optional:!1}],"deviceManager.getSettingsSchema":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.getStreamProfileMap":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.getStreamSources":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.getWireableFields":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.getWrapperActivation":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.listAll":[{name:`deviceIds`,form:`array`,optional:!0}],"deviceManager.loadConfig":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.loadMeta":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.loadRuntimeState":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.persistConfig":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.probeStreams":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.registerDevice":[{name:`parentDeviceId`,form:`single`,optional:!0}],"deviceManager.remove":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.removeDevice":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.runDeviceAction":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.setChildLayout":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.setDisabled":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.setDisplay":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.setIntegrationId":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.setLinkDeviceId":[{name:`deviceId`,form:`single`,optional:!1},{name:`linkDeviceId`,form:`single`,optional:!0}],"deviceManager.setLocation":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.setMetadata":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.setName":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.setPrimaryChildEntityId":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.setRole":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.setStreamProfileMap":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.setType":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.setWrapperActive":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.testField":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.updateConfig":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.updateDeviceField":[{name:`deviceId`,form:`single`,optional:!1}],"deviceManager.updateDeviceFieldsBatch":[{name:`deviceId`,form:`single`,optional:!1}],"deviceOps.getConfigEntries":[{name:`deviceId`,form:`single`,optional:!1}],"deviceOps.getRawState":[{name:`deviceId`,form:`single`,optional:!1}],"deviceOps.getSettingsSchema":[{name:`deviceId`,form:`single`,optional:!1}],"deviceOps.getStreamSources":[{name:`deviceId`,form:`single`,optional:!1}],"deviceOps.removeDevice":[{name:`deviceId`,form:`single`,optional:!1}],"deviceOps.runAction":[{name:`deviceId`,form:`single`,optional:!1}],"deviceOps.setConfig":[{name:`deviceId`,form:`single`,optional:!1}],"deviceState.claimFields":[{name:`deviceId`,form:`single`,optional:!1}],"deviceState.getCapSlice":[{name:`deviceId`,form:`single`,optional:!1}],"deviceState.getNativeCapSlice":[{name:`deviceId`,form:`single`,optional:!1}],"deviceState.getSnapshot":[{name:`deviceId`,form:`single`,optional:!1}],"deviceState.patchOwnedFields":[{name:`deviceId`,form:`single`,optional:!1}],"deviceState.releaseClaim":[{name:`deviceId`,form:`single`,optional:!1}],"deviceState.setCapSlice":[{name:`deviceId`,form:`single`,optional:!1}],"deviceStatus.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"doorbell.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"enumSensor.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"eventEmitter.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"faceGallery.getFaceByTrack":[{name:`deviceId`,form:`single`,optional:!1}],"faceGallery.listRecentFaces":[{name:`deviceId`,form:`single`,optional:!0},{name:`deviceIds`,form:`array`,optional:!0}],"fanControl.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"fanControl.setDirection":[{name:`deviceId`,form:`single`,optional:!1}],"fanControl.setOscillating":[{name:`deviceId`,form:`single`,optional:!1}],"fanControl.setPercentage":[{name:`deviceId`,form:`single`,optional:!1}],"fanControl.setPreset":[{name:`deviceId`,form:`single`,optional:!1}],"featureProbe.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"flood.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"gas.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"humidifier.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"humidifier.setMode":[{name:`deviceId`,form:`single`,optional:!1}],"humidifier.setOn":[{name:`deviceId`,form:`single`,optional:!1}],"humidifier.setTargetHumidity":[{name:`deviceId`,form:`single`,optional:!1}],"humiditySensor.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"image.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"imageSettings.getOptions":[{name:`deviceId`,form:`single`,optional:!1}],"imageSettings.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"imageSettings.setSettings":[{name:`deviceId`,form:`single`,optional:!1}],"intercom.endTalkSession":[{name:`deviceId`,form:`single`,optional:!1}],"intercom.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"intercom.handleAnswer":[{name:`deviceId`,form:`single`,optional:!1}],"intercom.pushTalkAudio":[{name:`deviceId`,form:`single`,optional:!1}],"intercom.startSession":[{name:`deviceId`,form:`single`,optional:!1}],"intercom.startTalkSession":[{name:`deviceId`,form:`single`,optional:!1}],"intercom.stopSession":[{name:`deviceId`,form:`single`,optional:!1}],"lawnMowerControl.dock":[{name:`deviceId`,form:`single`,optional:!1}],"lawnMowerControl.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"lawnMowerControl.pause":[{name:`deviceId`,form:`single`,optional:!1}],"lawnMowerControl.startMowing":[{name:`deviceId`,form:`single`,optional:!1}],"lockControl.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"lockControl.lock":[{name:`deviceId`,form:`single`,optional:!1}],"lockControl.open":[{name:`deviceId`,form:`single`,optional:!1}],"lockControl.unlock":[{name:`deviceId`,form:`single`,optional:!1}],"mediaPlayer.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"mediaPlayer.next":[{name:`deviceId`,form:`single`,optional:!1}],"mediaPlayer.pause":[{name:`deviceId`,form:`single`,optional:!1}],"mediaPlayer.play":[{name:`deviceId`,form:`single`,optional:!1}],"mediaPlayer.playMedia":[{name:`deviceId`,form:`single`,optional:!1}],"mediaPlayer.previous":[{name:`deviceId`,form:`single`,optional:!1}],"mediaPlayer.seek":[{name:`deviceId`,form:`single`,optional:!1}],"mediaPlayer.selectSource":[{name:`deviceId`,form:`single`,optional:!1}],"mediaPlayer.setMute":[{name:`deviceId`,form:`single`,optional:!1}],"mediaPlayer.setRepeat":[{name:`deviceId`,form:`single`,optional:!1}],"mediaPlayer.setShuffle":[{name:`deviceId`,form:`single`,optional:!1}],"mediaPlayer.setVolume":[{name:`deviceId`,form:`single`,optional:!1}],"mediaPlayer.stop":[{name:`deviceId`,form:`single`,optional:!1}],"motion.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"motion.isDetected":[{name:`deviceId`,form:`single`,optional:!1}],"motionDetection.analyze":[{name:`deviceId`,form:`single`,optional:!1}],"motionDetection.applyDeviceSettingsPatch":[{name:`deviceId`,form:`single`,optional:!1}],"motionDetection.getDeviceLiveContribution":[{name:`deviceId`,form:`single`,optional:!1}],"motionDetection.getDeviceSettingsContribution":[{name:`deviceId`,form:`single`,optional:!1}],"motionDetection.removeCamera":[{name:`deviceId`,form:`single`,optional:!1}],"motionTrigger.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"motionTrigger.setMotionTrigger":[{name:`deviceId`,form:`single`,optional:!1}],"motionZones.getOptions":[{name:`deviceId`,form:`single`,optional:!1}],"motionZones.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"motionZones.setZone":[{name:`deviceId`,form:`single`,optional:!1}],"nativeObjectDetection.getOptions":[{name:`deviceId`,form:`single`,optional:!1}],"nativeObjectDetection.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"nativeObjectDetection.setEnabled":[{name:`deviceId`,form:`single`,optional:!1}],"nativeObjectDetection.setSettings":[{name:`deviceId`,form:`single`,optional:!1}],"navigation.getFeatures":[{name:`deviceId`,form:`single`,optional:!1}],"navigation.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"navigation.goToPoint":[{name:`deviceId`,form:`single`,optional:!1}],"navigation.listActions":[{name:`deviceId`,form:`single`,optional:!1}],"navigation.move":[{name:`deviceId`,form:`single`,optional:!1}],"navigation.playSound":[{name:`deviceId`,form:`single`,optional:!1}],"navigation.runAction":[{name:`deviceId`,form:`single`,optional:!1}],"navigation.setLightLevel":[{name:`deviceId`,form:`single`,optional:!1}],"navigation.setLightMode":[{name:`deviceId`,form:`single`,optional:!1}],"navigation.setLightOn":[{name:`deviceId`,form:`single`,optional:!1}],"navigation.stop":[{name:`deviceId`,form:`single`,optional:!1}],"networkLink.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"networkQuality.getDeviceStats":[{name:`deviceId`,form:`single`,optional:!1}],"networkQuality.reportClientStats":[{name:`deviceId`,form:`single`,optional:!1}],"notificationRules.getAlarmSensors":[{name:`deviceIds`,form:`array`,optional:!1}],"notificationRules.setDeviceMuted":[{name:`deviceId`,form:`single`,optional:!1}],"notifier.cancel":[{name:`deviceId`,form:`single`,optional:!1}],"notifier.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"notifier.send":[{name:`deviceId`,form:`single`,optional:!1}],"numericSensor.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"osd.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"osd.setOverlay":[{name:`deviceId`,form:`single`,optional:!1}],"osdManager.clearSlotBinding":[{name:`deviceId`,form:`single`,optional:!1}],"osdManager.copyDeviceConfiguration":[{name:`sourceDeviceId`,form:`single`,optional:!1},{name:`targetDeviceId`,form:`single`,optional:!1}],"osdManager.getDeviceOsd":[{name:`deviceId`,form:`single`,optional:!1}],"osdManager.getSourceCatalog":[{name:`deviceId`,form:`single`,optional:!1}],"osdManager.previewSlot":[{name:`deviceId`,form:`single`,optional:!1}],"osdManager.renderDevice":[{name:`deviceId`,form:`single`,optional:!1}],"osdManager.setSlotBinding":[{name:`deviceId`,form:`single`,optional:!1}],"osdManager.setSlotCameraEnabled":[{name:`deviceId`,form:`single`,optional:!1}],"petFeeder.callPet":[{name:`deviceId`,form:`single`,optional:!1}],"petFeeder.cancelFeed":[{name:`deviceId`,form:`single`,optional:!1}],"petFeeder.feed":[{name:`deviceId`,form:`single`,optional:!1}],"petFeeder.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"petFeeder.markFoodReplenished":[{name:`deviceId`,form:`single`,optional:!1}],"petFeeder.playSound":[{name:`deviceId`,form:`single`,optional:!1}],"petFeeder.resetDesiccant":[{name:`deviceId`,form:`single`,optional:!1}],"petFeeder.setChildLock":[{name:`deviceId`,form:`single`,optional:!1}],"petFeeder.setFeedSound":[{name:`deviceId`,form:`single`,optional:!1}],"petFeeder.setIndicatorLight":[{name:`deviceId`,form:`single`,optional:!1}],"petFeeder.setVolume":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.addRetrainFrameFromRecording":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.applyDeviceSettingsPatch":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.backfillRetrainOrigins":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.clearTrackRelation":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.clearTracks":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.completeRetrainTrack":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.deleteDeviceEvents":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.deleteTracks":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.deselectRetrainFrame":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.getActiveTracks":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.getAudioEvents":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.getDeviceLiveContribution":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.getDeviceSettingsContribution":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.getEventDensity":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.getEventDensityBatch":[{name:`deviceIds`,form:`array`,optional:!1}],"pipelineAnalytics.getEventMedia":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.getEventMediaFootprintByKind":[{name:`deviceId`,form:`single`,optional:!0}],"pipelineAnalytics.getKeyEvents":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.getKeyEventsBatch":[{name:`deviceIds`,form:`array`,optional:!1}],"pipelineAnalytics.getMotionEvents":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.getObjectEvents":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.getRetrainExportUrl":[{name:`deviceIds`,form:`array`,optional:!0}],"pipelineAnalytics.getSensorEvents":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.getTrack":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.getTrackMedia":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.getTrainingExportSummary":[{name:`deviceIds`,form:`array`,optional:!0}],"pipelineAnalytics.getTrainingExportUrl":[{name:`deviceIds`,form:`array`,optional:!0}],"pipelineAnalytics.listArchivedDebugNotes":[{name:`deviceId`,form:`single`,optional:!0}],"pipelineAnalytics.listBirthDecisions":[{name:`deviceId`,form:`single`,optional:!0}],"pipelineAnalytics.listEventKinds":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.listEventKindsBatch":[{name:`deviceIds`,form:`array`,optional:!1}],"pipelineAnalytics.listEventMedia":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.listOpsLog":[{name:`deviceId`,form:`single`,optional:!0}],"pipelineAnalytics.listRecentTracks":[{name:`deviceIds`,form:`array`,optional:!1}],"pipelineAnalytics.listRetrainCorpusPage":[{name:`deviceIds`,form:`array`,optional:!0}],"pipelineAnalytics.listRetrainStaging":[{name:`deviceIds`,form:`array`,optional:!0}],"pipelineAnalytics.listTrackMedia":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.listTrackRelations":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.listTracks":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.ownersWithMedia":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.proposeRetrainAnnotations":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.proposeRetrainAnnotationsWithLlm":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.pruneEventsBefore":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.pruneTracksBefore":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.readLongTermSeries":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.rebuildObjectEmbeddings":[{name:`deviceId`,form:`single`,optional:!0}],"pipelineAnalytics.reclaimDebugMedia":[{name:`deviceIds`,form:`array`,optional:!0}],"pipelineAnalytics.reconcileFromDisk":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.restageRetrainTrack":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.saveRetrainAnnotations":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.searchObjectEvents":[{name:`deviceId`,form:`single`,optional:!0}],"pipelineAnalytics.selectRetrainFrames":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.setRetrainFrameComplete":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.setTrackFlags":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.setTrackPurity":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.setTrackRelation":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineAnalytics.wipeAllAnalytics":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineExecutor.clearModelBoundDeviceOverrides":[{name:`deviceIds`,form:`array`,optional:!0}],"pipelineExecutor.runPipeline":[{name:`deviceId`,form:`single`,optional:!0}],"pipelineExecutor.runPipelineBatch":[{name:`deviceId`,form:`single`,optional:!0}],"pipelineOrchestrator.applyDeviceSettingsPatch":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineOrchestrator.assignAudio":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineOrchestrator.assignPipeline":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineOrchestrator.getAudioAssignment":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineOrchestrator.getCameraDetectionSource":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineOrchestrator.getCameraMetrics":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineOrchestrator.getCameraSettings":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineOrchestrator.getCameraStatus":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineOrchestrator.getCameraStatuses":[{name:`deviceIds`,form:`array`,optional:!0}],"pipelineOrchestrator.getCameraStepOverrides":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineOrchestrator.getCameraSwitches":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineOrchestrator.getDeviceLiveContribution":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineOrchestrator.getDeviceSettingsContribution":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineOrchestrator.getPipelineAssignment":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineOrchestrator.getPipelineDevicePin":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineOrchestrator.requestOccupancyLook":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineOrchestrator.resolvePipeline":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineOrchestrator.setCameraDetectionSource":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineOrchestrator.setCameraPipelineForAgent":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineOrchestrator.setCameraSensors":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineOrchestrator.setCameraStepOverride":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineOrchestrator.setCameraStepSettings":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineOrchestrator.setCameraStepToggle":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineOrchestrator.setCameraSwitch":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineOrchestrator.setPipelineDevicePin":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineOrchestrator.unassignAudio":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineOrchestrator.unassignPipeline":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineRunner.attachCamera":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineRunner.detachCamera":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineRunner.getCameraMetrics":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineRunner.getParkedTrackFrame":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineRunner.parkTrackFrame":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineRunner.releaseParkedTrackFrames":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineRunner.reportMotion":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineRunner.requestOccupancyBurst":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineRunner.runDetailSubtree":[{name:`deviceId`,form:`single`,optional:!1}],"pipelineRunner.runStatelessStep":[{name:`sourceDeviceId`,form:`single`,optional:!1}],"plateGallery.getPlateByTrack":[{name:`deviceId`,form:`single`,optional:!1}],"plateGallery.listPlates":[{name:`deviceId`,form:`single`,optional:!0}],"powerMeter.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"presence.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"pressureSensor.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"privacyMask.getOptions":[{name:`deviceId`,form:`single`,optional:!1}],"privacyMask.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"privacyMask.setAudioEnabled":[{name:`deviceId`,form:`single`,optional:!1}],"privacyMask.setMask":[{name:`deviceId`,form:`single`,optional:!1}],"ptz.captureHomeHere":[{name:`deviceId`,form:`single`,optional:!1}],"ptz.continuousMove":[{name:`deviceId`,form:`single`,optional:!1}],"ptz.deletePreset":[{name:`deviceId`,form:`single`,optional:!1}],"ptz.getHomePreset":[{name:`deviceId`,form:`single`,optional:!1}],"ptz.getHomeReturn":[{name:`deviceId`,form:`single`,optional:!1}],"ptz.getOptions":[{name:`deviceId`,form:`single`,optional:!1}],"ptz.getPosition":[{name:`deviceId`,form:`single`,optional:!1}],"ptz.getPresets":[{name:`deviceId`,form:`single`,optional:!1}],"ptz.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"ptz.goHome":[{name:`deviceId`,form:`single`,optional:!1}],"ptz.goToPreset":[{name:`deviceId`,form:`single`,optional:!1}],"ptz.move":[{name:`deviceId`,form:`single`,optional:!1}],"ptz.savePreset":[{name:`deviceId`,form:`single`,optional:!1}],"ptz.setAutofocus":[{name:`deviceId`,form:`single`,optional:!1}],"ptz.setHomePreset":[{name:`deviceId`,form:`single`,optional:!1}],"ptz.setHomeReturn":[{name:`deviceId`,form:`single`,optional:!1}],"ptz.stop":[{name:`deviceId`,form:`single`,optional:!1}],"ptzAutotrack.getSettings":[{name:`deviceId`,form:`single`,optional:!1}],"ptzAutotrack.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"ptzAutotrack.setEnabled":[{name:`deviceId`,form:`single`,optional:!1}],"ptzAutotrack.setSettings":[{name:`deviceId`,form:`single`,optional:!1}],"reboot.reboot":[{name:`deviceId`,form:`single`,optional:!1}],"recording.getAvailability":[{name:`deviceId`,form:`single`,optional:!1}],"recording.getDaysWithRecordings":[{name:`deviceId`,form:`single`,optional:!1}],"recording.getPlayback":[{name:`deviceId`,form:`single`,optional:!1}],"recording.getPlaybackOptions":[{name:`deviceId`,form:`single`,optional:!1}],"recording.listSources":[{name:`deviceId`,form:`single`,optional:!1}],"recordingArchive.applyDeviceSettingsPatch":[{name:`deviceId`,form:`single`,optional:!1}],"recordingArchive.deleteFootprint":[{name:`deviceId`,form:`single`,optional:!1}],"recordingArchive.getAvailabilityBatch":[{name:`deviceIds`,form:`array`,optional:!1}],"recordingArchive.getDaysWithRecordingsBatch":[{name:`deviceIds`,form:`array`,optional:!1}],"recordingArchive.getDeviceConfig":[{name:`deviceId`,form:`single`,optional:!1}],"recordingArchive.getDeviceLiveContribution":[{name:`deviceId`,form:`single`,optional:!1}],"recordingArchive.getDeviceSettingsContribution":[{name:`deviceId`,form:`single`,optional:!1}],"recordingArchive.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"recordingArchive.listOpsLog":[{name:`deviceId`,form:`single`,optional:!0}],"recordingArchive.locateSegment":[{name:`deviceId`,form:`single`,optional:!1}],"recordingArchive.pruneFootage":[{name:`deviceId`,form:`single`,optional:!1}],"recordingArchive.readGopBytes":[{name:`deviceId`,form:`single`,optional:!1}],"recordingArchive.readSegmentBytes":[{name:`deviceId`,form:`single`,optional:!1}],"recordingArchive.readWindowBytes":[{name:`deviceId`,form:`single`,optional:!1}],"recordingArchive.reconcileLedgerAgainstDisk":[{name:`deviceId`,form:`single`,optional:!0}],"recordingArchive.relocateFootage":[{name:`deviceId`,form:`single`,optional:!0}],"recordingArchive.renderClip":[{name:`deviceId`,form:`single`,optional:!1}],"recordingArchive.renderGif":[{name:`deviceId`,form:`single`,optional:!1}],"recordingArchive.rescanStorage":[{name:`deviceId`,form:`single`,optional:!1}],"recordingArchive.setDeviceConfig":[{name:`deviceId`,form:`single`,optional:!1}],"recordingArchive.setDevicePlacement":[{name:`deviceId`,form:`single`,optional:!1}],"recordingArchive.startStorageMigrationMove":[{name:`deviceId`,form:`single`,optional:!0}],"recordingExport.createExport":[{name:`deviceId`,form:`single`,optional:!1}],"recordingExport.listExports":[{name:`deviceId`,form:`single`,optional:!0}],"recordingOnboard.getOptions":[{name:`deviceId`,form:`single`,optional:!1}],"recordingOnboard.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"recordingOnboard.setSettings":[{name:`deviceId`,form:`single`,optional:!1}],"recordingSignal.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"sceneMonitor.captureReference":[{name:`deviceId`,form:`single`,optional:!1}],"sceneMonitor.createScene":[{name:`deviceId`,form:`single`,optional:!1}],"sceneMonitor.deleteReference":[{name:`deviceId`,form:`single`,optional:!1}],"sceneMonitor.deleteScene":[{name:`deviceId`,form:`single`,optional:!1}],"sceneMonitor.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"sceneMonitor.listScenes":[{name:`deviceId`,form:`single`,optional:!1}],"sceneMonitor.listScenesBatch":[{name:`deviceIds`,form:`array`,optional:!1}],"sceneMonitor.recheckNow":[{name:`deviceId`,form:`single`,optional:!1}],"sceneMonitor.resetScene":[{name:`deviceId`,form:`single`,optional:!1}],"sceneMonitor.updateScene":[{name:`deviceId`,form:`single`,optional:!1}],"scriptRunner.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"scriptRunner.run":[{name:`deviceId`,form:`single`,optional:!1}],"scriptRunner.stop":[{name:`deviceId`,form:`single`,optional:!1}],"smoke.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"snapshot.applyDeviceSettingsPatch":[{name:`deviceId`,form:`single`,optional:!1}],"snapshot.getDebugState":[{name:`deviceId`,form:`single`,optional:!1}],"snapshot.getDeviceLiveContribution":[{name:`deviceId`,form:`single`,optional:!1}],"snapshot.getDeviceSettingsContribution":[{name:`deviceId`,form:`single`,optional:!1}],"snapshot.getSnapshot":[{name:`deviceId`,form:`single`,optional:!1}],"snapshot.getSnapshotLinks":[{name:`targets`,form:`object-array`,optional:!1,itemField:`deviceId`}],"snapshot.getSnapshotOverview":[{name:`deviceIds`,form:`array`,optional:!1}],"snapshot.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"snapshot.invalidateCache":[{name:`deviceId`,form:`single`,optional:!1}],"streamBroker.acquireEgressTranscode":[{name:`deviceId`,form:`single`,optional:!1}],"streamBroker.applyDeviceSettingsPatch":[{name:`deviceId`,form:`single`,optional:!1}],"streamBroker.assignProfile":[{name:`deviceId`,form:`single`,optional:!1}],"streamBroker.forgetDeviceHardware":[{name:`deviceId`,form:`single`,optional:!1}],"streamBroker.getDeviceAudioMute":[{name:`deviceId`,form:`single`,optional:!1}],"streamBroker.getDeviceLiveContribution":[{name:`deviceId`,form:`single`,optional:!1}],"streamBroker.getDeviceSettingsContribution":[{name:`deviceId`,form:`single`,optional:!1}],"streamBroker.getStreamWithCodec":[{name:`deviceId`,form:`single`,optional:!1}],"streamBroker.produceEventMedia":[{name:`deviceId`,form:`single`,optional:!1}],"streamBroker.publishCameraStream":[{name:`deviceId`,form:`single`,optional:!1}],"streamBroker.renderPreBufferClip":[{name:`deviceId`,form:`single`,optional:!1}],"streamBroker.reportStreamSignal":[{name:`deviceId`,form:`single`,optional:!1}],"streamBroker.restartProfile":[{name:`deviceId`,form:`single`,optional:!1}],"streamBroker.retractCameraStream":[{name:`deviceId`,form:`single`,optional:!1}],"streamBroker.setDeviceAudioMute":[{name:`deviceId`,form:`single`,optional:!1}],"streamBroker.unassignProfile":[{name:`deviceId`,form:`single`,optional:!1}],"streamCatalog.getCatalog":[{name:`deviceId`,form:`single`,optional:!1}],"streamParams.getConfigSchema":[{name:`deviceId`,form:`single`,optional:!1}],"streamParams.getOptions":[{name:`deviceId`,form:`single`,optional:!1}],"streamParams.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"streamParams.setProfile":[{name:`deviceId`,form:`single`,optional:!1}],"switch.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"switch.setState":[{name:`deviceId`,form:`single`,optional:!1}],"tamper.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"temperatureSensor.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"training.canaryResult":[{name:`deviceIds`,form:`array`,optional:!1}],"update.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"vacuumControl.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"vacuumControl.locate":[{name:`deviceId`,form:`single`,optional:!1}],"vacuumControl.pause":[{name:`deviceId`,form:`single`,optional:!1}],"vacuumControl.returnToBase":[{name:`deviceId`,form:`single`,optional:!1}],"vacuumControl.setFanSpeed":[{name:`deviceId`,form:`single`,optional:!1}],"vacuumControl.start":[{name:`deviceId`,form:`single`,optional:!1}],"vacuumControl.stop":[{name:`deviceId`,form:`single`,optional:!1}],"valve.close":[{name:`deviceId`,form:`single`,optional:!1}],"valve.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"valve.open":[{name:`deviceId`,form:`single`,optional:!1}],"valve.setPosition":[{name:`deviceId`,form:`single`,optional:!1}],"valve.stop":[{name:`deviceId`,form:`single`,optional:!1}],"vibration.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"videoclips.dialClipStream":[{name:`deviceId`,form:`single`,optional:!1}],"videoclips.getClipPlayback":[{name:`deviceId`,form:`single`,optional:!1}],"videoclips.getPlaybackOptions":[{name:`deviceId`,form:`single`,optional:!1}],"videoclips.listClips":[{name:`deviceId`,form:`single`,optional:!1}],"videoclips.listSources":[{name:`deviceId`,form:`single`,optional:!1}],"videoclips.offerClipBytes":[{name:`deviceId`,form:`single`,optional:!1}],"videoclips.readClipBytes":[{name:`deviceId`,form:`single`,optional:!1}],"waterHeater.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"waterHeater.setAway":[{name:`deviceId`,form:`single`,optional:!1}],"waterHeater.setOperationMode":[{name:`deviceId`,form:`single`,optional:!1}],"waterHeater.setTargetTemp":[{name:`deviceId`,form:`single`,optional:!1}],"weather.getStatus":[{name:`deviceId`,form:`single`,optional:!1}],"webrtcSession.addIceCandidate":[{name:`deviceId`,form:`single`,optional:!1}],"webrtcSession.applyDownlinkProbe":[{name:`deviceId`,form:`single`,optional:!1}],"webrtcSession.closeSession":[{name:`deviceId`,form:`single`,optional:!1}],"webrtcSession.createSession":[{name:`deviceId`,form:`single`,optional:!1}],"webrtcSession.getIceCandidates":[{name:`deviceId`,form:`single`,optional:!1}],"webrtcSession.getSessionDebug":[{name:`deviceId`,form:`single`,optional:!1}],"webrtcSession.getSessionState":[{name:`deviceId`,form:`single`,optional:!1}],"webrtcSession.handleAnswer":[{name:`deviceId`,form:`single`,optional:!1}],"webrtcSession.handleOffer":[{name:`deviceId`,form:`single`,optional:!1}],"webrtcSession.hasAdaptiveBitrate":[{name:`deviceId`,form:`single`,optional:!1}],"webrtcSession.listStreams":[{name:`deviceId`,form:`single`,optional:!1}],"zoneAnalytics.getCameraHistory":[{name:`deviceId`,form:`single`,optional:!1}],"zoneAnalytics.getCurrentSnapshot":[{name:`deviceId`,form:`single`,optional:!1}],"zoneAnalytics.getCurrentSnapshotBatch":[{name:`deviceIds`,form:`array`,optional:!1}],"zoneAnalytics.getUnzonedHistory":[{name:`deviceId`,form:`single`,optional:!1}],"zoneAnalytics.getZoneHistory":[{name:`deviceId`,form:`single`,optional:!1}],"zoneRules.listRules":[{name:`deviceId`,form:`single`,optional:!1}],"zoneRules.setRules":[{name:`deviceId`,form:`single`,optional:!1}],"zones.addZone":[{name:`deviceId`,form:`single`,optional:!1}],"zones.listZones":[{name:`deviceId`,form:`single`,optional:!1}],"zones.removeZone":[{name:`deviceId`,form:`single`,optional:!1}],"zones.updateZone":[{name:`deviceId`,form:`single`,optional:!1}]}),Object.freeze({broker:`broker`,"calendar-source":`calendar`,"device-export":`device-export`,llm:`ai`,"mesh-network":`mesh`,"mqtt-broker":`broker`,"network-access":`ingress`,"smtp-provider":`email`}),U.Camera;var SB={PCMU:20*Math.log10(4),PCMA:20*Math.log10(8)};function CB(e,t){return t+SB[e]}Math.round(CB(`PCMU`,-55));var wB={hitPercent:60,samplingSeconds:10};new Set([`devices`,`classes`]),new Map(Object.entries({"device-online":`device-events`,"device-offline":`device-events`,"device-disabled":`device-events`,"device-enabled":`device-events`,"device-battery-low":`device-events`,"device-battery-normal":`device-events`,"device-consumable-low":`device-events`,"device-consumable-normal":`device-events`,"device-tank-low":`device-events`,"device-tank-full":`device-events`,"device-tank-normal":`device-events`,"stream-online":`device-events`,"stream-offline":`device-events`,"detection-blind":`device-events`,"recording-stalled":`device-events`,"recording-healthy":`device-events`,"recording-degraded":`device-events`,"node-online":`system`,"node-offline":`system`,"node-restarting":`system`,"node-updating":`system`,"node-inference-unavailable":`system`,"addon-crash-loop":`system`,"addon-update-available":`system`,"addon-updated":`system`,"server-update-available":`system`,"server-updated":`system`,"wrapper-update-available":`system`,"backup-completed":`system`,"export-completed":`system`,"storage-location-low":`system`,"storage-location-critical":`system`,"storage-location-ok":`system`,"alarm-triggered":`alarm`,"alarm-armed":`alarm`,"alarm-disarmed":`alarm`,"alarm-arming":`alarm`,"alarm-arm-refused":`alarm`,"alarm-pending":`alarm`,"alarm-rearmed":`alarm`,"alarm-sensor-bypass":`alarm`,"alarm-check-failed":`alarm`,"camera-online":null,"camera-offline":null,"camera-disabled":null,"camera-enabled":null}));var TB=[{id:`device-state`,family:`device-events`,label:`Device state`,kinds:[`device-offline`,`device-online`,`device-disabled`,`device-enabled`]},{id:`streams`,family:`device-events`,label:`Streams`,kinds:[`stream-offline`,`stream-online`]},{id:`battery`,family:`device-events`,label:`Battery`,kinds:[`device-battery-low`,`device-battery-normal`]},{id:`consumables`,family:`device-events`,label:`Consumables`,kinds:[`device-consumable-low`,`device-consumable-normal`]},{id:`tanks`,family:`device-events`,label:`Tanks`,kinds:[`device-tank-low`,`device-tank-full`,`device-tank-normal`]},{id:`detection-blind`,family:`device-events`,label:`Detecting nothing`,kinds:[`detection-blind`]},{id:`recording`,family:`device-events`,label:`Recording`,kinds:[`recording-stalled`,`recording-healthy`,`recording-degraded`]},{id:`nodes`,family:`system`,label:`Nodes`,kinds:[`node-offline`,`node-online`,`node-restarting`,`node-inference-unavailable`]},{id:`addons`,family:`system`,label:`Addons stopped`,kinds:[`addon-crash-loop`]},{id:`addon-updates`,family:`system`,label:`Addon updates`,kinds:[`addon-update-available`,`addon-updated`]},{id:`updates`,family:`system`,label:`Server & container updates`,kinds:[`server-update-available`,`node-updating`,`server-updated`,`wrapper-update-available`]},{id:`backups-exports`,family:`system`,label:`Backups & exports`,kinds:[`backup-completed`,`export-completed`]},{id:`storage`,family:`system`,label:`Storage locations`,kinds:[`storage-location-low`,`storage-location-critical`,`storage-location-ok`]},{id:`alarm`,family:`alarm`,label:`Alarm`,kinds:Qx}];function EB(e){return TB.filter(t=>t.family===e).flatMap(e=>e.kinds)}wB.hitPercent,wB.samplingSeconds;var DB=Object.freeze(Object.fromEntries(Object.entries(Rk).flatMap(([e,t])=>{let n=mu[e];return n===void 0||t.category!==`sensor`?[]:[[t.kind,n]]})));Object.freeze(Object.keys(DB));var OB=[`body`],G=[`title`,`body`],kB=[`device-battery-low`,`device-battery-normal`],AB=[`device-consumable-low`,`device-consumable-normal`],jB=[`device-tank-low`,`device-tank-full`,`device-tank-normal`],MB=[`addon-update-available`,`server-update-available`,`wrapper-update-available`],NB=[`addon-update-available`,`server-update-available`],PB=[`alarm-triggered`,`alarm-armed`,`alarm-disarmed`,`alarm-arming`,`alarm-arm-refused`,`alarm-pending`,`alarm-rearmed`,`alarm-sensor-bypass`,`alarm-check-failed`],FB=[`alarm-triggered`],IB=[`device-online`,`device-offline`,`device-disabled`,`device-enabled`,...kB,...AB,...jB,`stream-online`,`stream-offline`,`detection-blind`,`recording-stalled`,`recording-healthy`,`recording-degraded`,...PB],LB=[...EB(`device-events`),...EB(`system`)],RB=[{name:`summaryDevices`,label:`Summary: devices offline / switched off`,example:`Garage — offline since 07:12`,kinds:[`device-offline`,`device-online`,`device-disabled`,`device-enabled`]},{name:`summaryStreams`,label:`Summary: streams offline`,example:`Ingresso (high) — since 06:40`,kinds:[`stream-offline`,`stream-online`]},{name:`summaryBattery`,label:`Summary: low batteries`,example:`Sensore porta — 8 %`,kinds:kB},{name:`summaryConsumables`,label:`Summary: consumables`,example:`Robot — filter 10 %`,kinds:AB},{name:`summaryTanks`,label:`Summary: tanks`,example:`Robot — clean water low`,kinds:jB},{name:`summaryDetection`,label:`Summary: cameras detecting nothing`,example:`Ingresso — since 05:10`,kinds:[`detection-blind`]},{name:`summaryNodes`,label:`Summary: nodes`,example:`little-unraid — offline since 03:00`,kinds:[`node-offline`,`node-online`,`node-restarting`,`node-inference-unavailable`]},{name:`summaryAddons`,label:`Summary: addons stopped`,example:`hub — recorder stopped after repeated crashes`,kinds:[`addon-crash-loop`]},{name:`summaryAddonUpdates`,label:`Summary: addon updates`,example:`hub:
|
|
67
|
+
• @camstack/addon-recorder 1.2.3 → 1.2.4`,kinds:[`addon-update-available`,`addon-updated`]},{name:`summaryUpdates`,label:`Summary: server & container updates`,example:`server 1.2.377 → 1.2.378`,kinds:[`server-update-available`,`node-updating`,`server-updated`,`wrapper-update-available`]}],zB=[{name:`summaryText`,label:`Summary: every section`,description:`One block per section with something to report, one line per item.`,example:`Batterie scariche: Sensore porta — 8 %`,group:`system`,families:[`rule`],fields:[...G],kinds:[`system`],systemEventKinds:[...LB],systemEventDeliveries:[`summary`]},{name:`summaryCount`,label:`Summary: items reported`,example:`3`,group:`system`,families:[`rule`],fields:[...G],kinds:[`system`],systemEventKinds:[...LB],systemEventDeliveries:[`summary`]},{name:`summarySection`,label:`Summary: this section`,description:`The section a per-section summary row is about; on a summary sent as one message, every section it reports, comma-separated.`,example:`Batterie scariche`,group:`system`,families:[`rule`],fields:[...G],kinds:[`system`],systemEventKinds:[...LB],systemEventDeliveries:[`summary`]},...RB.map(e=>({name:e.name,label:e.label,example:e.example,group:`system`,families:[`rule`],fields:[...G],kinds:[`system`],systemEventKinds:[...e.kinds],systemEventDeliveries:[`summary`]}))];[[...IB],([...G],[...FB]),([...G],[...FB]),([...G],[...FB]),[...G],([...G],[...FB]),([...G],[...NB]),[...G],([...G],[...FB]),([...G],[...FB]),([...G],[...FB]),[...G],[...G],[...G],[...G],[...G],[...G],[...G],[...G],[...OB],[...G],([...G],[...IB]),([...G],[...FB]),([...G],[...IB]),([...G],[...kB,...AB]),([...G],[...AB]),([...G],[...jB]),[...G],([...G],[...MB]),([...G],[...MB]),[...G],[...G],[...G],[...G],[...G],[...G],[...G],[...G],[...G],[...G],([...G],[...MB]),([...G],[...NB]),([...G],[...NB]),([...G],[...MB]),([...G],[...MB]),([...G],[...NB]),[...G],[...G],[...G],[...G],[...G],[...G],[...G],[...G],[...G],[...G],[...G],[...G],[...G],[...G],[...G],[...G],[...G],[...G],[...G],[...G],[...G],[...G],[...G],[...G],[...G],[...G],...zB],new Set(`disarmed.armed_home.armed_away.armed_night.armed_vacation.armed_custom_bypass.arming.disarming.pending.triggered.open.opening.closing.closed.stopped.locked.unlocked.locking.unlocking.jammed.on.off.home.not_home.matched.diverged.unknown.latched.live`.split(`.`)),new Set(`motion.audio.person.vehicle.animal.package.sensor.control.car.truck.bus.motorcycle.bicycle.airplane.boat.train.bird.cat.dog.horse.sheep.cow.elephant.bear.zebra.giraffe.package-delivered.package-picked-up.contact.motion-sensor.smoke.flood.gas.carbon-monoxide.vibration.tamper.presence.enum-sensor.device-event.lock.cover.switch.siren.button.doorbell.audio-speech.audio-scream.audio-crying.audio-laughter.audio-music.audio-dog.audio-cat.audio-bird.audio-animal.audio-alarm.audio-doorbell.audio-glass_breaking.audio-gunshot.audio-vehicle.audio-siren.audio-fire.audio-water.audio-wind.audio-door.audio-footsteps.audio-crowd.audio-telephone.audio-engine.audio-tools.audio-silence`.split(`.`));var BB=F({title:k().max(500).optional(),body:k().max(2e3).optional()}),VB=k().min(1).max(200),HB=P(A()).min(1),UB=A().int().min(2).max(3600),WB=A().int().min(1).max(60),GB=P(bS).min(1),KB=A().int().min(1).max(5),qB=A().min(.1).max(3600),JB=A().min(0).max(60),YB=k().max(200),XB=z([`image`,`gif`]),ZB=P(k().min(1).max(40)).max(20),QB=F({name:VB,enabled:j().default(!0),deviceIds:HB,schedule:tS,cadenceSec:UB.default(15),framerate:WB.default(10),denseCadenceSec:qB.optional(),minDwellSec:JB.optional(),targets:GB,template:BB.optional(),previewText:YB.optional(),previewMode:XB.default(`image`),reportClasses:ZB.optional(),priority:KB.default(3)});F({name:VB.optional(),enabled:j().optional(),deviceIds:HB.optional(),schedule:tS.optional(),cadenceSec:UB.optional(),framerate:WB.optional(),denseCadenceSec:qB.optional(),minDwellSec:JB.optional(),targets:GB.optional(),template:BB.nullable().optional(),previewText:YB.optional(),previewMode:XB.optional(),reportClasses:ZB.optional(),priority:KB.optional()}),QB.extend({id:k(),ownerUserId:k().optional(),lastGeneratedAt:A().optional(),generatedByDevice:R(k(),A()).optional(),createdBy:k(),createdAt:A(),updatedAt:A()}),gP.omit({triggeredBy:!0}),F({paddingRatio:A().min(0).max(4),square:j()}),Object.freeze({x:0,y:0,w:1,h:1}),{paddingRatio:.15,square:!1}.paddingRatio;var $B=z([`all`,`inferred`]);F({holdFrames:A().int().min(1).max(64),budgetMb:A().int().min(0).max(4096),activityMs:A().int().min(0).max(12e4),admission:$B,tileBudgetMb:A().int().min(0).max(1024),sceneBudgetMb:A().int().min(0).max(1024)});var eV={holdFrames:8,budgetMb:1024,activityMs:15e3,tileBudgetMb:64,sceneBudgetMb:48,admission:`inferred`};eV.holdFrames,eV.budgetMb,eV.activityMs,eV.tileBudgetMb,eV.sceneBudgetMb,eV.admission;var tV=1024*1024;1024*tV,3072*tV;var nV=class{constructor(){this.listeners=new Set,this.subscribe=this.subscribe.bind(this)}subscribe(e){return this.listeners.add(e),this.onSubscribe(),()=>{this.listeners.delete(e),this.onUnsubscribe()}}hasListeners(){return this.listeners.size>0}onSubscribe(){}onUnsubscribe(){}},rV=new class extends nV{#e;#t;#n;constructor(){super(),this.#n=e=>{if(typeof window<`u`&&window.addEventListener){let t=()=>e();return window.addEventListener(`visibilitychange`,t,!1),()=>{window.removeEventListener(`visibilitychange`,t)}}}}onSubscribe(){this.#t||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#n=e,this.#t?.(),this.#t=e(e=>{typeof e==`boolean`?this.setFocused(e):this.onFocus()})}setFocused(e){this.#e!==e&&(this.#e=e,this.onFocus())}onFocus(){let e=this.isFocused();this.listeners.forEach(t=>{t(e)})}isFocused(){return typeof this.#e==`boolean`?this.#e:globalThis.document?.visibilityState!==`hidden`}},iV={setTimeout:(e,t)=>setTimeout(e,t),clearTimeout:e=>clearTimeout(e),setInterval:(e,t)=>setInterval(e,t),clearInterval:e=>clearInterval(e)},aV=new class{#e=iV;setTimeoutProvider(e){this.#e=e}setTimeout(e,t){return this.#e.setTimeout(e,t)}clearTimeout(e){this.#e.clearTimeout(e)}setInterval(e,t){return this.#e.setInterval(e,t)}clearInterval(e){this.#e.clearInterval(e)}};function oV(e){setTimeout(e,0)}var sV=typeof window>`u`||`Deno`in globalThis;function cV(){}function lV(e){return typeof e==`number`&&e>=0&&e!==1/0}function uV(e,t){return Math.max(e+(t||0)-Date.now(),0)}function dV(e,t){return typeof e==`function`?e(t):e}function fV(e,t){return typeof e==`function`?e(t):e}function pV(e){return JSON.stringify(e,(e,t)=>vV(t)?Object.keys(t).sort().reduce((e,n)=>(e[n]=t[n],e),{}):t)}var mV=Object.prototype.hasOwnProperty;function hV(e,t,n=0){if(e===t)return e;if(n>500)return t;let r=_V(e)&&_V(t);if(!r&&!(vV(e)&&vV(t)))return t;let i=(r?e:Object.keys(e)).length,a=r?t:Object.keys(t),o=a.length,s=r?Array(o):{},c=0;for(let l=0;l<o;l++){let o=r?l:a[l],u=e[o],d=t[o];if(u===d){s[o]=u,(r?l<i:mV.call(e,o))&&c++;continue}if(u===null||d===null||typeof u!=`object`||typeof d!=`object`){s[o]=d;continue}let f=hV(u,d,n+1);s[o]=f,f===u&&c++}return i===o&&c===i?e:s}function gV(e,t){if(!t||Object.keys(e).length!==Object.keys(t).length)return!1;for(let n in e)if(e[n]!==t[n])return!1;return!0}function _V(e){return Array.isArray(e)&&e.length===Object.keys(e).length}function vV(e){if(!yV(e))return!1;let t=e.constructor;if(t===void 0)return!0;let n=t.prototype;return!(!yV(n)||!n.hasOwnProperty(`isPrototypeOf`)||Object.getPrototypeOf(e)!==Object.prototype)}function yV(e){return Object.prototype.toString.call(e)===`[object Object]`}function bV(e,t,n){return typeof n.structuralSharing==`function`?n.structuralSharing(e,t):n.structuralSharing===!1?t:hV(e,t)}var xV=Symbol();function SV(e,t){return typeof e==`function`?e(...t):!!e}var CV=(()=>{let e=()=>sV;return{isServer(){return e()},setIsServer(t){e=t}}})();function wV(){let e,t,n=new Promise((n,r)=>{e=n,t=r});n.status=`pending`,n.catch(()=>{});function r(e){Object.assign(n,e),delete n.resolve,delete n.reject}return n.resolve=t=>{r({status:`fulfilled`,value:t}),e(t)},n.reject=e=>{r({status:`rejected`,reason:e}),t(e)},n}var TV=oV;function EV(){let e=[],t=0,n=e=>{e()},r=e=>{e()},i=TV,a=r=>{t?e.push(r):i(()=>{n(r)})},o=()=>{let t=e;e=[],t.length&&i(()=>{r(()=>{t.forEach(e=>{n(e)})})})};return{batch:e=>{let n;t++;try{n=e()}finally{t--,t||o()}return n},batchCalls:e=>(...t)=>{a(()=>{e(...t)})},schedule:a,setNotifyFunction:e=>{n=e},setBatchNotifyFunction:e=>{r=e},setScheduler:e=>{i=e}}}var DV=EV(),OV=new class extends nV{#e=!0;#t;#n;constructor(){super(),this.#n=e=>{if(typeof window<`u`&&window.addEventListener){let t=()=>e(!0),n=()=>e(!1);return window.addEventListener(`online`,t,!1),window.addEventListener(`offline`,n,!1),()=>{window.removeEventListener(`online`,t),window.removeEventListener(`offline`,n)}}}}onSubscribe(){this.#t||this.setEventListener(this.#n)}onUnsubscribe(){this.hasListeners()||(this.#t?.(),this.#t=void 0)}setEventListener(e){this.#n=e,this.#t?.(),this.#t=e(this.setOnline.bind(this))}setOnline(e){this.#e!==e&&(this.#e=e,this.listeners.forEach(t=>{t(e)}))}isOnline(){return this.#e}};function kV(e){return(e??`online`)===`online`?OV.isOnline():!0}function AV(e,{pages:t,pageParams:n}){let r=t.length-1;return t.length>0?e.getNextPageParam(t[r],t,n[r],n):void 0}function jV(e,{pages:t,pageParams:n}){return t.length>0?e.getPreviousPageParam?.(t[0],t,n[0],n):void 0}function MV(e,t){return t?AV(e,t)!=null:!1}function NV(e,t){return!t||!e.getPreviousPageParam?!1:jV(e,t)!=null}function PV(e,t){return{fetchFailureCount:0,fetchFailureReason:null,fetchStatus:kV(t.networkMode)?`fetching`:`paused`,...e===void 0&&{error:null,status:`pending`}}}var FV=class extends nV{constructor(e,t){super(),this.options=t,this.#e=e,this.#s=null,this.#o=wV(),this.bindMethods(),this.setOptions(t)}#e;#t=void 0;#n=void 0;#r=void 0;#i;#a;#o;#s;#c;#l;#u;#d;#f;#p;#m=new Set;bindMethods(){this.refetch=this.refetch.bind(this)}onSubscribe(){this.listeners.size===1&&(this.#t.addObserver(this),LV(this.#t,this.options)?this.#h():this.updateResult(),this.#y())}onUnsubscribe(){this.hasListeners()||this.destroy()}shouldFetchOnReconnect(){return RV(this.#t,this.options,this.options.refetchOnReconnect)}shouldFetchOnWindowFocus(){return RV(this.#t,this.options,this.options.refetchOnWindowFocus)}destroy(){this.listeners=new Set,this.#b(),this.#x(),this.#t.removeObserver(this)}setOptions(e){let t=this.options,n=this.#t;if(this.options=this.#e.defaultQueryOptions(e),this.options.enabled!==void 0&&typeof this.options.enabled!=`boolean`&&typeof this.options.enabled!=`function`&&typeof fV(this.options.enabled,this.#t)!=`boolean`)throw Error(`Expected enabled to be a boolean or a callback that returns a boolean`);this.#S(),this.#t.setOptions(this.options),t._defaulted&&!gV(this.options,t)&&this.#e.getQueryCache().notify({type:`observerOptionsUpdated`,query:this.#t,observer:this});let r=this.hasListeners();r&&zV(this.#t,n,this.options,t)&&this.#h(),this.updateResult(),r&&(this.#t!==n||fV(this.options.enabled,this.#t)!==fV(t.enabled,this.#t)||dV(this.options.staleTime,this.#t)!==dV(t.staleTime,this.#t))&&this.#g();let i=this.#_();r&&(this.#t!==n||fV(this.options.enabled,this.#t)!==fV(t.enabled,this.#t)||i!==this.#p)&&this.#v(i)}getOptimisticResult(e){let t=this.#e.getQueryCache().build(this.#e,e),n=this.createResult(t,e);return VV(this,n)&&(this.#r=n,this.#a=this.options,this.#i=this.#t.state),n}getCurrentResult(){return this.#r}trackResult(e,t){return new Proxy(e,{get:(e,n)=>(this.trackProp(n),t?.(n),n===`promise`&&(this.trackProp(`data`),!this.options.experimental_prefetchInRender&&this.#o.status===`pending`&&this.#o.reject(Error(`experimental_prefetchInRender feature flag is not enabled`))),Reflect.get(e,n))})}trackProp(e){this.#m.add(e)}getCurrentQuery(){return this.#t}refetch({...e}={}){return this.fetch({...e})}fetchOptimistic(e){let t=this.#e.defaultQueryOptions(e),n=this.#e.getQueryCache().build(this.#e,t);return n.fetch().then(()=>this.createResult(n,t))}fetch(e){return this.#h({...e,cancelRefetch:e.cancelRefetch??!0}).then(()=>(this.updateResult(),this.#r))}#h(e){this.#S();let t=this.#t.fetch(this.options,e);return e?.throwOnError||(t=t.catch(cV)),t}#g(){this.#b();let e=dV(this.options.staleTime,this.#t);if(CV.isServer()||this.#r.isStale||!lV(e))return;let t=uV(this.#r.dataUpdatedAt,e)+1;this.#d=aV.setTimeout(()=>{this.#r.isStale||this.updateResult()},t)}#_(){return(typeof this.options.refetchInterval==`function`?this.options.refetchInterval(this.#t):this.options.refetchInterval)??!1}#v(e){this.#x(),this.#p=e,!(CV.isServer()||fV(this.options.enabled,this.#t)===!1||!lV(this.#p)||this.#p===0)&&(this.#f=aV.setInterval(()=>{(this.options.refetchIntervalInBackground||rV.isFocused())&&this.#h()},this.#p))}#y(){this.#g(),this.#v(this.#_())}#b(){this.#d!==void 0&&(aV.clearTimeout(this.#d),this.#d=void 0)}#x(){this.#f!==void 0&&(aV.clearInterval(this.#f),this.#f=void 0)}createResult(e,t){let n=this.#t,r=this.options,i=this.#r,a=this.#i,o=this.#a,s=e===n?this.#n:e.state,{state:c}=e,l={...c},u=!1,d;if(t._optimisticResults){let i=this.hasListeners(),a=!i&&LV(e,t),o=i&&zV(e,n,t,r);(a||o)&&(l={...l,...PV(c.data,e.options)}),t._optimisticResults===`isRestoring`&&(l.fetchStatus=`idle`)}let{error:f,errorUpdatedAt:p,status:m}=l;d=l.data;let h=!1;if(t.placeholderData!==void 0&&d===void 0&&m===`pending`){let e;i?.isPlaceholderData&&t.placeholderData===o?.placeholderData?(e=i.data,h=!0):e=typeof t.placeholderData==`function`?t.placeholderData(this.#u?.state.data,this.#u):t.placeholderData,e!==void 0&&(m=`success`,d=bV(i?.data,e,t),u=!0)}if(t.select&&d!==void 0&&!h)if(i&&d===a?.data&&t.select===this.#c)d=this.#l;else try{this.#c=t.select,d=t.select(d),d=bV(i?.data,d,t),this.#l=d,this.#s=null}catch(e){this.#s=e}this.#s&&(f=this.#s,d=this.#l,p=Date.now(),m=`error`);let g=l.fetchStatus===`fetching`,_=m===`pending`,v=m===`error`,y=_&&g,b=d!==void 0,x={status:m,fetchStatus:l.fetchStatus,isPending:_,isSuccess:m===`success`,isError:v,isInitialLoading:y,isLoading:y,data:d,dataUpdatedAt:l.dataUpdatedAt,error:f,errorUpdatedAt:p,failureCount:l.fetchFailureCount,failureReason:l.fetchFailureReason,errorUpdateCount:l.errorUpdateCount,isFetched:e.isFetched(),isFetchedAfterMount:l.dataUpdateCount>s.dataUpdateCount||l.errorUpdateCount>s.errorUpdateCount,isFetching:g,isRefetching:g&&!_,isLoadingError:v&&!b,isPaused:l.fetchStatus===`paused`,isPlaceholderData:u,isRefetchError:v&&b,isStale:BV(e,t),refetch:this.refetch,promise:this.#o,isEnabled:fV(t.enabled,e)!==!1};if(this.options.experimental_prefetchInRender){let t=x.data!==void 0,r=x.status===`error`&&!t,i=e=>{r?e.reject(x.error):t&&e.resolve(x.data)},a=()=>{i(this.#o=x.promise=wV())},o=this.#o;switch(o.status){case`pending`:e.queryHash===n.queryHash&&i(o);break;case`fulfilled`:(r||x.data!==o.value)&&a();break;case`rejected`:(!r||x.error!==o.reason)&&a();break}}return x}updateResult(){let e=this.#r,t=this.createResult(this.#t,this.options);this.#i=this.#t.state,this.#a=this.options,this.#i.data!==void 0&&(this.#u=this.#t),!gV(t,e)&&(this.#r=t,this.#C({listeners:(()=>{if(!e)return!0;let{notifyOnChangeProps:t}=this.options,n=typeof t==`function`?t():t;if(n===`all`||!n&&!this.#m.size)return!0;let r=new Set(n??this.#m);return this.options.throwOnError&&r.add(`error`),Object.keys(this.#r).some(t=>{let n=t;return this.#r[n]!==e[n]&&r.has(n)})})()}))}#S(){let e=this.#e.getQueryCache().build(this.#e,this.options);if(e===this.#t)return;let t=this.#t;this.#t=e,this.#n=e.state,this.hasListeners()&&(t?.removeObserver(this),e.addObserver(this))}onQueryUpdate(){this.updateResult(),this.hasListeners()&&this.#y()}#C(e){DV.batch(()=>{e.listeners&&this.listeners.forEach(e=>{e(this.#r)}),this.#e.getQueryCache().notify({query:this.#t,type:`observerResultsUpdated`})})}};function IV(e,t){return fV(t.enabled,e)!==!1&&e.state.data===void 0&&!(e.state.status===`error`&&fV(t.retryOnMount,e)===!1)}function LV(e,t){return IV(e,t)||e.state.data!==void 0&&RV(e,t,t.refetchOnMount)}function RV(e,t,n){if(fV(t.enabled,e)!==!1&&dV(t.staleTime,e)!==`static`){let r=typeof n==`function`?n(e):n;return r===`always`||r!==!1&&BV(e,t)}return!1}function zV(e,t,n,r){return(e!==t||fV(r.enabled,e)===!1)&&(!n.suspense||e.state.status!==`error`)&&BV(e,n)}function BV(e,t){return fV(t.enabled,e)!==!1&&e.isStaleByTime(dV(t.staleTime,e))}function VV(e,t){return!gV(e.getCurrentResult(),t)}var HV=class extends FV{constructor(e,t){super(e,t)}bindMethods(){super.bindMethods(),this.fetchNextPage=this.fetchNextPage.bind(this),this.fetchPreviousPage=this.fetchPreviousPage.bind(this)}setOptions(e){e._type=`infinite`,super.setOptions(e)}getOptimisticResult(e){return e._type=`infinite`,super.getOptimisticResult(e)}fetchNextPage(e){return this.fetch({...e,meta:{fetchMore:{direction:`forward`}}})}fetchPreviousPage(e){return this.fetch({...e,meta:{fetchMore:{direction:`backward`}}})}createResult(e,t){let{state:n}=e,r=super.createResult(e,t),{isFetching:i,isRefetching:a,isError:o,isRefetchError:s}=r,c=n.fetchMeta?.fetchMore?.direction,l=o&&c===`forward`,u=i&&c===`forward`,d=o&&c===`backward`,f=i&&c===`backward`;return{...r,fetchNextPage:this.fetchNextPage,fetchPreviousPage:this.fetchPreviousPage,hasNextPage:MV(t,n.data),hasPreviousPage:NV(t,n.data),isFetchNextPageError:l,isFetchingNextPage:u,isFetchPreviousPageError:d,isFetchingPreviousPage:f,isRefetchError:s&&!l&&!d,isRefetching:a&&!u&&!f}}};function UV(){return{context:void 0,data:void 0,error:null,failureCount:0,failureReason:null,isPaused:!1,status:`idle`,variables:void 0,submittedAt:0}}var WV=class extends nV{#e;#t=void 0;#n;#r;constructor(e,t){super(),this.#e=e,this.setOptions(t),this.bindMethods(),this.#i()}bindMethods(){this.mutate=this.mutate.bind(this),this.reset=this.reset.bind(this)}setOptions(e){let t=this.options;this.options=this.#e.defaultMutationOptions(e),gV(this.options,t)||this.#e.getMutationCache().notify({type:`observerOptionsUpdated`,mutation:this.#n,observer:this}),t?.mutationKey&&this.options.mutationKey&&pV(t.mutationKey)!==pV(this.options.mutationKey)?this.reset():this.#n?.state.status===`pending`&&this.#n.setOptions(this.options)}onUnsubscribe(){this.hasListeners()||this.#n?.removeObserver(this)}onMutationUpdate(e){this.#i(),this.#a(e)}getCurrentResult(){return this.#t}reset(){this.#n?.removeObserver(this),this.#n=void 0,this.#i(),this.#a()}mutate(e,t){return this.#r=t,this.#n?.removeObserver(this),this.#n=this.#e.getMutationCache().build(this.#e,this.options),this.#n.addObserver(this),this.#n.execute(e)}#i(){let e=this.#n?.state??UV();this.#t={...e,isPending:e.status===`pending`,isSuccess:e.status===`success`,isError:e.status===`error`,isIdle:e.status===`idle`,mutate:this.mutate,reset:this.reset}}#a(e){DV.batch(()=>{if(this.#r&&this.hasListeners()){let t=this.#t.variables,n=this.#t.context,r={client:this.#e,meta:this.options.meta,mutationKey:this.options.mutationKey};if(e?.type===`success`){try{this.#r.onSuccess?.(e.data,t,n,r)}catch(e){Promise.reject(e)}try{this.#r.onSettled?.(e.data,null,t,n,r)}catch(e){Promise.reject(e)}}else if(e?.type===`error`){try{this.#r.onError?.(e.error,t,n,r)}catch(e){Promise.reject(e)}try{this.#r.onSettled?.(void 0,e.error,t,n,r)}catch(e){Promise.reject(e)}}}this.listeners.forEach(e=>{e(this.#t)})})}};function GV(e,t){let n=new Set(t);return e.filter(e=>!n.has(e))}function KV(e,t,n){let r=e.slice(0);return r[t]=n,r}var qV=class extends nV{#e;#t;#n;#r;#i;#a;#o;#s;#c;#l=[];constructor(e,t,n){super(),this.#e=e,this.#r=n,this.#n=[],this.#i=[],this.#t=[],this.setQueries(t)}onSubscribe(){this.listeners.size===1&&this.#i.forEach(e=>{e.subscribe(t=>{this.#m(e,t)})})}onUnsubscribe(){this.listeners.size||this.destroy()}destroy(){this.listeners=new Set,this.#i.forEach(e=>{e.destroy()})}setQueries(e,t){this.#n=e,this.#r=t,DV.batch(()=>{let e=this.#i,t=this.#p(this.#n);t.forEach(e=>e.observer.setOptions(e.defaultedQueryOptions));let n=t.map(e=>e.observer),r=n.map(e=>e.getCurrentResult()),i=e.length!==n.length,a=n.some((t,n)=>t!==e[n]),o=i||a,s=o?!0:r.some((e,t)=>{let n=this.#t[t];return!n||!gV(e,n)});!o&&!s||(o&&(this.#l=t,this.#i=n),this.#t=r,this.hasListeners()&&(o&&(GV(e,n).forEach(e=>{e.destroy()}),GV(n,e).forEach(e=>{e.subscribe(t=>{this.#m(e,t)})})),this.#h()))})}getCurrentResult(){return this.#t}getQueries(){return this.#i.map(e=>e.getCurrentQuery())}getObservers(){return this.#i}getOptimisticResult(e,t){let n=this.#p(e),r=n.map(e=>e.observer.getOptimisticResult(e.defaultedQueryOptions)),i=n.map(e=>e.defaultedQueryOptions.queryHash);return[r,e=>this.#d(e??r,t,i),()=>this.#u(r,n)]}#u(e,t){return t.map((n,r)=>{let i=e[r];return n.defaultedQueryOptions.notifyOnChangeProps?i:n.observer.trackResult(i,e=>{t.forEach(t=>{t.observer.trackProp(e)})})})}#d(e,t,n){if(t){let r=this.#c,i=n!==void 0&&r!==void 0&&(r.length!==n.length||n.some((e,t)=>e!==r[t]));return(!this.#a||this.#t!==this.#s||i||t!==this.#o)&&(this.#o=t,this.#s=this.#t,n!==void 0&&(this.#c=n),this.#a=hV(this.#a,t(e))),this.#a}return e}#f(){return this.#r?.combine!==void 0&&this.#i.some((e,t)=>e.options.suspense&&this.#t[t]?.data===void 0)}#p(e){let t=new Map;this.#i.forEach(e=>{let n=e.options.queryHash;if(!n)return;let r=t.get(n);r?r.push(e):t.set(n,[e])});let n=[];return e.forEach(e=>{let r=this.#e.defaultQueryOptions(e),i=t.get(r.queryHash)?.shift()??new FV(this.#e,r);n.push({defaultedQueryOptions:r,observer:i})}),n}#m(e,t){let n=this.#i.indexOf(e);n!==-1&&(this.#t=KV(this.#t,n,t),this.#h())}#h(){if(this.hasListeners()){let e=this.#u(this.#t,this.#l),t=this.#f(),n=this.#a,r=t?n:this.#d(e,this.#r?.combine);(t||n!==r)&&DV.batch(()=>{this.listeners.forEach(e=>{e(this.#t)})})}}},K=n(t(),1),JV=d.createContext(void 0),YV=e=>{let t=d.useContext(JV);if(e)return e;if(!t)throw Error(`No QueryClient set, use QueryClientProvider to set one`);return t},XV=d.createContext(!1),ZV=()=>d.useContext(XV);XV.Provider;function QV(){let e=!1;return{clearReset:()=>{e=!1},reset:()=>{e=!0},isReset:()=>e}}var $V=d.createContext(QV()),eH=()=>d.useContext($V),tH=(e,t,n)=>{let r=n?.state.error&&typeof e.throwOnError==`function`?SV(e.throwOnError,[n.state.error,n]):e.throwOnError;(e.suspense||e.experimental_prefetchInRender||r)&&(t.isReset()||(e.retryOnMount=!1))},nH=e=>{d.useEffect(()=>{e.clearReset()},[e])},rH=({result:e,errorResetBoundary:t,throwOnError:n,query:r,suspense:i})=>e.isError&&!t.isReset()&&!e.isFetching&&r&&(i&&e.data===void 0||SV(n,[e.error,r])),iH=(e,t)=>t.state.data===void 0,aH=e=>{if(e.suspense){let t=1e3,n=e=>e===`static`?e:Math.max(e??t,t),r=e.staleTime;e.staleTime=typeof r==`function`?(...e)=>n(r(...e)):n(r),typeof e.gcTime==`number`&&(e.gcTime=Math.max(e.gcTime,t))}},oH=(e,t)=>e.isLoading&&e.isFetching&&!t,sH=(e,t)=>e?.suspense&&t.isPending,cH=(e,t,n)=>t.fetchOptimistic(e).catch(()=>{n.clearReset()});function lH({queries:e,...t},n){let r=YV(n),i=ZV(),a=eH(),o=d.useMemo(()=>e.map(e=>{let t=r.defaultQueryOptions(e);return t._optimisticResults=i?`isRestoring`:`optimistic`,t}),[e,r,i]);o.forEach(e=>{aH(e),tH(e,a,r.getQueryCache().get(e.queryHash))}),nH(a);let[s]=d.useState(()=>new qV(r,o,t)),[c,l,u]=s.getOptimisticResult(o,t.combine),f=!i&&t.subscribed!==!1;d.useSyncExternalStore(d.useCallback(e=>f?s.subscribe(DV.batchCalls(e)):cV,[s,f]),()=>s.getCurrentResult(),()=>s.getCurrentResult()),d.useEffect(()=>{s.setQueries(o,t)},[o,t,s]);let p=c.some((e,t)=>sH(o[t],e))?c.flatMap((e,t)=>{let n=o[t];return n&&sH(n,e)?cH(n,new FV(r,n),a):[]}):[];if(p.length>0)throw Promise.all(p);let m=c.find((e,t)=>{let n=o[t];return n&&rH({result:e,errorResetBoundary:a,throwOnError:n.throwOnError,query:r.getQueryCache().get(n.queryHash),suspense:n.suspense})});if(m?.error)throw m.error;return l(u())}function uH(e,t,n){let r=ZV(),i=eH(),a=YV(n),o=a.defaultQueryOptions(e);a.getDefaultOptions().queries?._experimental_beforeQuery?.(o);let s=a.getQueryCache().get(o.queryHash),c=e.subscribed!==!1;o._optimisticResults=r?`isRestoring`:c?`optimistic`:void 0,aH(o),tH(o,i,s),nH(i);let l=!a.getQueryCache().get(o.queryHash),[u]=d.useState(()=>new t(a,o)),f=u.getOptimisticResult(o),p=!r&&c;if(d.useSyncExternalStore(d.useCallback(e=>{let t=p?u.subscribe(DV.batchCalls(e)):cV;return u.updateResult(),t},[u,p]),()=>u.getCurrentResult(),()=>u.getCurrentResult()),d.useEffect(()=>{u.setOptions(o)},[o,u]),sH(o,f))throw cH(o,u,i);if(rH({result:f,errorResetBoundary:i,throwOnError:o.throwOnError,query:s,suspense:o.suspense}))throw f.error;return a.getDefaultOptions().queries?._experimental_afterQuery?.(o,f),o.experimental_prefetchInRender&&!CV.isServer()&&oH(f,r)&&(l?cH(o,u,i):s?.promise)?.catch(cV).finally(()=>{u.updateResult()}),o.notifyOnChangeProps?f:u.trackResult(f)}function dH(e,t){return uH(e,FV,t)}function fH(e,t){return uH({...e,enabled:!0,suspense:!0,throwOnError:iH,placeholderData:void 0},FV,t)}function pH(e,t){return uH({...e,enabled:!0,suspense:!0,throwOnError:iH},HV,t)}function mH(e,t){return lH({...e,queries:e.queries.map(e=>({...e,suspense:!0,throwOnError:iH,enabled:!0,placeholderData:void 0}))},t)}function hH(e,t){let n=YV(t);n.getQueryState(e.queryKey)||n.prefetchQuery(e)}function gH(e,t){let n=YV(t);n.getQueryState(e.queryKey)||n.prefetchInfiniteQuery(e)}function _H(e){return e}function vH(e){return e}function yH(e,t){let n=YV(t),[r]=d.useState(()=>new WV(n,e));d.useEffect(()=>{r.setOptions(e)},[r,e]);let i=d.useSyncExternalStore(d.useCallback(e=>r.subscribe(DV.batchCalls(e)),[r]),()=>r.getCurrentResult(),()=>r.getCurrentResult()),a=d.useCallback((e,t)=>{r.mutate(e,t).catch(cV)},[r]);if(i.error&&SV(r.options.throwOnError,[i.error]))throw i.error;return{...i,mutate:a,mutateAsync:i.mutate}}function bH(e,t){return uH(e,HV,t)}function xH(e){return!!e&&!Array.isArray(e)&&typeof e==`object`}function SH(){return Object.create(null)}var CH=typeof Symbol==`function`&&!!Symbol.asyncIterator;function wH(e){return CH&&xH(e)&&Symbol.asyncIterator in e}var TH={PARSE_ERROR:-32700,BAD_REQUEST:-32600,INTERNAL_SERVER_ERROR:-32603,NOT_IMPLEMENTED:-32603,BAD_GATEWAY:-32603,SERVICE_UNAVAILABLE:-32603,GATEWAY_TIMEOUT:-32603,UNAUTHORIZED:-32001,PAYMENT_REQUIRED:-32002,FORBIDDEN:-32003,NOT_FOUND:-32004,METHOD_NOT_SUPPORTED:-32005,TIMEOUT:-32008,CONFLICT:-32009,PRECONDITION_FAILED:-32012,PAYLOAD_TOO_LARGE:-32013,UNSUPPORTED_MEDIA_TYPE:-32015,UNPROCESSABLE_CONTENT:-32022,PRECONDITION_REQUIRED:-32028,TOO_MANY_REQUESTS:-32029,CLIENT_CLOSED_REQUEST:-32099};TH.BAD_GATEWAY,TH.SERVICE_UNAVAILABLE,TH.GATEWAY_TIMEOUT,TH.INTERNAL_SERVER_ERROR;var EH=Object.create,DH=Object.defineProperty,OH=Object.getOwnPropertyDescriptor,kH=Object.getOwnPropertyNames,AH=Object.getPrototypeOf,jH=Object.prototype.hasOwnProperty,MH=(e,t)=>function(){return t||(0,e[kH(e)[0]])((t={exports:{}}).exports,t),t.exports},NH=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var i=kH(t),a=0,o=i.length,s;a<o;a++)s=i[a],!jH.call(e,s)&&s!==n&&DH(e,s,{get:(e=>t[e]).bind(null,s),enumerable:!(r=OH(t,s))||r.enumerable});return e},PH=(e,t,n)=>(n=e==null?{}:EH(AH(e)),NH(t||!e||!e.__esModule?DH(n,`default`,{value:e,enumerable:!0}):n,e)),FH=()=>{},IH=e=>{Object.freeze&&Object.freeze(e)};function LH(e,t,n){let r=t.join(`.`);return n[r]??(n[r]=new Proxy(FH,{get(r,i){if(!(typeof i!=`string`||i===`then`))return LH(e,[...t,i],n)},apply(n,r,i){let a=t[t.length-1];if(a===`valueOf`||a===`toString`||a===`toJSON`)return`tRPC.proxy(${t.slice(0,-1).join(`.`)})`;let o={args:i,path:t};return a===`call`?o={args:i.length>=2?[i[1]]:[],path:t.slice(0,-1)}:a===`apply`&&(o={args:i.length>=2?i[1]:[],path:t.slice(0,-1)}),IH(o.args),IH(o.path),e(o)}})),n[r]}var RH=e=>LH(e,[],SH()),zH=e=>new Proxy(FH,{get(t,n){if(n!==`then`)return e(n)}}),BH=MH({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/typeof.js"(e,t){function n(e){"@babel/helpers - typeof";return t.exports=n=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},t.exports.__esModule=!0,t.exports.default=t.exports,n(e)}t.exports=n,t.exports.__esModule=!0,t.exports.default=t.exports}}),VH=MH({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/toPrimitive.js"(e,t){var n=BH().default;function r(e,t){if(n(e)!=`object`||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,t||`default`);if(n(i)!=`object`)return i;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}t.exports=r,t.exports.__esModule=!0,t.exports.default=t.exports}}),HH=MH({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/toPropertyKey.js"(e,t){var n=BH().default,r=VH();function i(e){var t=r(e,`string`);return n(t)==`symbol`?t:t+``}t.exports=i,t.exports.__esModule=!0,t.exports.default=t.exports}}),UH=MH({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/defineProperty.js"(e,t){var n=HH();function r(e,t,r){return(t=n(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}t.exports=r,t.exports.__esModule=!0,t.exports.default=t.exports}});PH(MH({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/objectSpread2.js"(e,t){var n=UH();function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function i(e){for(var t=1;t<arguments.length;t++){var i=arguments[t]==null?{}:arguments[t];t%2?r(Object(i),!0).forEach(function(t){n(e,t,i[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):r(Object(i)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(i,t))})}return e}t.exports=i,t.exports.__esModule=!0,t.exports.default=t.exports}})(),1);function WH(e){let t={subscribe(t){let n=null,r=!1,i=!1,a=!1;function o(){if(n===null){a=!0;return}i||(i=!0,typeof n==`function`?n():n&&n.unsubscribe())}return n=e({next(e){var n;r||(n=t.next)==null||n.call(t,e)},error(e){var n;r||(r=!0,(n=t.error)==null||n.call(t,e),o())},complete(){var e;r||(r=!0,(e=t.complete)==null||e.call(t),o())}}),a&&o(),{unsubscribe:o}},pipe(...e){return e.reduce(GH,t)}};return t}function GH(e,t){return t(e)}function KH(e){let t=new AbortController;return new Promise((n,r)=>{let i=!1;function a(){i||(i=!0,o.unsubscribe())}t.signal.addEventListener(`abort`,()=>{r(t.signal.reason)});let o=e.subscribe({next(e){i=!0,n(e),a()},error(e){r(e)},complete(){t.abort(),a()}})})}var qH=Object.create,JH=Object.defineProperty,YH=Object.getOwnPropertyDescriptor,XH=Object.getOwnPropertyNames,ZH=Object.getPrototypeOf,QH=Object.prototype.hasOwnProperty,$H=(e,t)=>function(){return t||(0,e[XH(e)[0]])((t={exports:{}}).exports,t),t.exports},eU=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var i=XH(t),a=0,o=i.length,s;a<o;a++)s=i[a],!QH.call(e,s)&&s!==n&&JH(e,s,{get:(e=>t[e]).bind(null,s),enumerable:!(r=YH(t,s))||r.enumerable});return e},tU=(e,t,n)=>(n=e==null?{}:qH(ZH(e)),eU(t||!e||!e.__esModule?JH(n,`default`,{value:e,enumerable:!0}):n,e)),nU=$H({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/objectWithoutPropertiesLoose.js"(e,t){function n(e,t){if(e==null)return{};var n={};for(var r in e)if({}.hasOwnProperty.call(e,r)){if(t.includes(r))continue;n[r]=e[r]}return n}t.exports=n,t.exports.__esModule=!0,t.exports.default=t.exports}}),rU=$H({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/objectWithoutProperties.js"(e,t){var n=nU();function r(e,t){if(e==null)return{};var r,i,a=n(e,t);if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(e);for(i=0;i<o.length;i++)r=o[i],t.includes(r)||{}.propertyIsEnumerable.call(e,r)&&(a[r]=e[r])}return a}t.exports=r,t.exports.__esModule=!0,t.exports.default=t.exports}}),iU=$H({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/typeof.js"(e,t){function n(e){"@babel/helpers - typeof";return t.exports=n=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},t.exports.__esModule=!0,t.exports.default=t.exports,n(e)}t.exports=n,t.exports.__esModule=!0,t.exports.default=t.exports}}),aU=$H({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/toPrimitive.js"(e,t){var n=iU().default;function r(e,t){if(n(e)!=`object`||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,t||`default`);if(n(i)!=`object`)return i;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}t.exports=r,t.exports.__esModule=!0,t.exports.default=t.exports}}),oU=$H({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/toPropertyKey.js"(e,t){var n=iU().default,r=aU();function i(e){var t=r(e,`string`);return n(t)==`symbol`?t:t+``}t.exports=i,t.exports.__esModule=!0,t.exports.default=t.exports}}),sU=$H({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/defineProperty.js"(e,t){var n=oU();function r(e,t,r){return(t=n(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}t.exports=r,t.exports.__esModule=!0,t.exports.default=t.exports}}),cU=$H({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/objectSpread2.js"(e,t){var n=sU();function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function i(e){for(var t=1;t<arguments.length;t++){var i=arguments[t]==null?{}:arguments[t];t%2?r(Object(i),!0).forEach(function(t){n(e,t,i[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):r(Object(i)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(i,t))})}return e}t.exports=i,t.exports.__esModule=!0,t.exports.default=t.exports}}),lU=tU(rU(),1),uU=tU(cU(),1),dU=[`cursor`,`direction`];function fU(e,t,n){let r=e.flatMap(e=>e.split(`.`));if(!t&&(!n||n===`any`))return r.length?[r]:[];if(n===`infinite`&&xH(t)&&(`direction`in t||`cursor`in t)){let{cursor:e,direction:n}=t;return[r,{input:(0,lU.default)(t,dU),type:`infinite`}]}return[r,(0,uU.default)((0,uU.default)({},t!==void 0&&t!==xV&&{input:t}),n&&n!==`any`&&{type:n})]}function pU(e){return fU(e,void 0,`any`)}var mU=Object.create,hU=Object.defineProperty,gU=Object.getOwnPropertyDescriptor,_U=Object.getOwnPropertyNames,vU=Object.getPrototypeOf,yU=Object.prototype.hasOwnProperty,bU=(e,t)=>function(){return t||(0,e[_U(e)[0]])((t={exports:{}}).exports,t),t.exports},xU=(e,t,n,r)=>{if(t&&typeof t==`object`||typeof t==`function`)for(var i=_U(t),a=0,o=i.length,s;a<o;a++)s=i[a],!yU.call(e,s)&&s!==n&&hU(e,s,{get:(e=>t[e]).bind(null,s),enumerable:!(r=gU(t,s))||r.enumerable});return e},SU=(e,t,n)=>(n=e==null?{}:mU(vU(e)),xU(t||!e||!e.__esModule?hU(n,`default`,{value:e,enumerable:!0}):n,e)),CU=bU({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/typeof.js"(e,t){function n(e){"@babel/helpers - typeof";return t.exports=n=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},t.exports.__esModule=!0,t.exports.default=t.exports,n(e)}t.exports=n,t.exports.__esModule=!0,t.exports.default=t.exports}}),wU=bU({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/toPrimitive.js"(e,t){var n=CU().default;function r(e,t){if(n(e)!=`object`||!e)return e;var r=e[Symbol.toPrimitive];if(r!==void 0){var i=r.call(e,t||`default`);if(n(i)!=`object`)return i;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}t.exports=r,t.exports.__esModule=!0,t.exports.default=t.exports}}),TU=bU({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/toPropertyKey.js"(e,t){var n=CU().default,r=wU();function i(e){var t=r(e,`string`);return n(t)==`symbol`?t:t+``}t.exports=i,t.exports.__esModule=!0,t.exports.default=t.exports}}),EU=bU({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/defineProperty.js"(e,t){var n=TU();function r(e,t,r){return(t=n(t))in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}t.exports=r,t.exports.__esModule=!0,t.exports.default=t.exports}}),DU=bU({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/objectSpread2.js"(e,t){var n=EU();function r(e,t){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var r=Object.getOwnPropertySymbols(e);t&&(r=r.filter(function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable})),n.push.apply(n,r)}return n}function i(e){for(var t=1;t<arguments.length;t++){var i=arguments[t]==null?{}:arguments[t];t%2?r(Object(i),!0).forEach(function(t){n(e,t,i[t])}):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(i)):r(Object(i)).forEach(function(t){Object.defineProperty(e,t,Object.getOwnPropertyDescriptor(i,t))})}return e}t.exports=i,t.exports.__esModule=!0,t.exports.default=t.exports}});function OU(e){return e=>{let t=0,n=null,r=[];function i(){n||=e.subscribe({next(e){for(let n of r){var t;(t=n.next)==null||t.call(n,e)}},error(e){for(let n of r){var t;(t=n.error)==null||t.call(n,e)}},complete(){for(let t of r){var e;(e=t.complete)==null||e.call(t)}}})}function a(){if(t===0&&n){let e=n;n=null,e.unsubscribe()}}return WH(e=>(t++,r.push(e),i(),{unsubscribe(){t--,a();let n=r.findIndex(t=>t===e);n>-1&&r.splice(n,1)}}))}}function kU(e){let t=e,n=[],r=e=>{t!==void 0&&e.next(t),n.push(e)},i=e=>{n.splice(n.indexOf(e),1)},a=WH(e=>(r(e),()=>{i(e)}));return a.next=e=>{if(t!==e){t=e;for(let t of n)t.next(e)}},a.get=()=>t,a}function AU(e){return WH(t=>{function n(t=0,r=e.op){let i=e.links[t];if(!i)throw Error(`No more links to execute - did you forget to add an ending link?`);return i({op:r,next(e){return n(t+1,e)}})}return n().subscribe(t)})}var jU=SU(EU(),1),MU=SU(DU(),1);function NU(e){return e instanceof IU}function PU(e){return xH(e)&&xH(e.error)&&typeof e.error.code==`number`&&typeof e.error.message==`string`}function FU(e,t){return typeof e==`string`?e:xH(e)&&typeof e.message==`string`?e.message:t}var IU=class e extends Error{constructor(t,n){var r,i;let a=n?.cause;super(t,{cause:a}),(0,jU.default)(this,`cause`,void 0),(0,jU.default)(this,`shape`,void 0),(0,jU.default)(this,`data`,void 0),(0,jU.default)(this,`meta`,void 0),this.meta=n?.meta,this.cause=a,this.shape=n==null||(r=n.result)==null?void 0:r.error,this.data=n==null||(i=n.result)==null?void 0:i.error.data,this.name=`TRPCClientError`,Object.setPrototypeOf(this,e.prototype)}static from(t,n={}){let r=t;return NU(r)?(n.meta&&(r.meta=(0,MU.default)((0,MU.default)({},r.meta),n.meta)),r):PU(r)?new e(r.error.message,(0,MU.default)((0,MU.default)({},n),{},{result:r,cause:n.cause})):new e(FU(r,`Unknown error`),(0,MU.default)((0,MU.default)({},n),{},{cause:r}))}};SU(DU()),SU(DU(),1),SU(DU(),1),SU(DU(),1);var LU=(e,...t)=>typeof e==`function`?e(...t):e;SU(EU(),1);function RU(){let e,t;return{promise:new Promise((n,r)=>{e=n,t=r}),resolve:e,reject:t}}async function zU(e){let t=await LU(e.url);return e.connectionParams?t+`${t.includes(`?`)?`&`:`?`}connectionParams=1`:t}async function BU(e,t){let n={method:`connectionParams`,data:await LU(e)};return t.encode(n)}SU(EU(),1);var VU=SU(EU(),1);function HU(e){let{promise:t,resolve:n,reject:r}=RU();return e.addEventListener(`open`,()=>{e.removeEventListener(`error`,r),n()}),e.addEventListener(`error`,r),t}function UU(e,{intervalMs:t,pongTimeoutMs:n}){let r,i;function a(){r=setTimeout(()=>{e.send(`PING`),i=setTimeout(()=>{e.close()},n)},t)}function o(){clearTimeout(r),a()}function s(){clearTimeout(i),o()}e.addEventListener(`open`,a),e.addEventListener(`message`,({data:e})=>{clearTimeout(r),a(),e===`PONG`&&s()}),e.addEventListener(`close`,()=>{clearTimeout(r),clearTimeout(i)})}var WU=class e{constructor(t){if((0,VU.default)(this,`id`,++e.connectCount),(0,VU.default)(this,`WebSocketPonyfill`,void 0),(0,VU.default)(this,`urlOptions`,void 0),(0,VU.default)(this,`keepAliveOpts`,void 0),(0,VU.default)(this,`encoder`,void 0),(0,VU.default)(this,`wsObservable`,kU(null)),(0,VU.default)(this,`openPromise`,null),this.WebSocketPonyfill=t.WebSocketPonyfill??WebSocket,!this.WebSocketPonyfill)throw Error("No WebSocket implementation found - you probably don't want to use this on the server, but if you do you need to pass a `WebSocket`-ponyfill");this.urlOptions=t.urlOptions,this.keepAliveOpts=t.keepAlive,this.encoder=t.encoder}get ws(){return this.wsObservable.get()}set ws(e){this.wsObservable.next(e)}isOpen(){return!!this.ws&&this.ws.readyState===this.WebSocketPonyfill.OPEN&&!this.openPromise}isClosed(){return!!this.ws&&(this.ws.readyState===this.WebSocketPonyfill.CLOSING||this.ws.readyState===this.WebSocketPonyfill.CLOSED)}async open(){var t=this;if(t.openPromise)return t.openPromise;t.id=++e.connectCount,t.openPromise=zU(t.urlOptions).then(e=>new t.WebSocketPonyfill(e)).then(async e=>{t.ws=e,e.binaryType=`arraybuffer`,e.addEventListener(`message`,function({data:e}){e===`PING`&&this.send(`PONG`)}),t.keepAliveOpts.enabled&&UU(e,t.keepAliveOpts),e.addEventListener(`close`,()=>{t.ws===e&&(t.ws=null)}),await HU(e),t.urlOptions.connectionParams&&e.send(await BU(t.urlOptions.connectionParams,t.encoder))});try{await t.openPromise}finally{t.openPromise=null}}async close(){var e=this;try{await e.openPromise}finally{var t;(t=e.ws)==null||t.close()}}};(0,VU.default)(WU,`connectCount`,0),SU(EU(),1),SU(DU(),1);var GU=SU(EU(),1),KU=SU(DU(),1),qU=class{constructor(e){(0,GU.default)(this,`links`,void 0),(0,GU.default)(this,`runtime`,void 0),(0,GU.default)(this,`requestId`,void 0),this.requestId=0,this.runtime={},this.links=e.links.map(e=>e(this.runtime))}$request(e){return AU({links:this.links,op:(0,KU.default)((0,KU.default)({},e),{},{context:e.context??{},id:++this.requestId})}).pipe(OU())}async requestAsPromise(e){var t=this;try{return(await KH(t.$request(e))).result.data}catch(e){throw IU.from(e)}}query(e,t,n){return this.requestAsPromise({type:`query`,path:e,input:t,context:n?.context,signal:n?.signal})}mutation(e,t,n){return this.requestAsPromise({type:`mutation`,path:e,input:t,context:n?.context,signal:n?.signal})}subscription(e,t,n){return this.$request({type:`subscription`,path:e,input:t,context:n.context,signal:n.signal}).subscribe({next(e){switch(e.result.type){case`state`:var t;(t=n.onConnectionStateChange)==null||t.call(n,e.result);break;case`started`:var r;(r=n.onStarted)==null||r.call(n,{context:e.context});break;case`stopped`:var i;(i=n.onStopped)==null||i.call(n);break;case`data`:case void 0:var a;(a=n.onData)==null||a.call(n,e.result.data);break}},error(e){var t;(t=n.onError)==null||t.call(n,e)},complete(){var e;(e=n.onComplete)==null||e.call(n)}})}},JU=Symbol.for(`trpc_untypedClient`),YU={query:`query`,mutate:`mutation`,subscribe:`subscription`},XU=e=>YU[e];function ZU(e){let t=RH(({path:t,args:n})=>{let r=[...t],i=XU(r.pop()),a=r.join(`.`);return e[i](a,...n)});return zH(n=>n===JU?e:t[n])}function QU(e){return ZU(new qU(e))}function $U(e){return e[JU]}SU(DU(),1),SU(DU(),1),SU(bU({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/asyncIterator.js"(e,t){function n(e){var t,n,i,a=2;for(typeof Symbol<`u`&&(n=Symbol.asyncIterator,i=Symbol.iterator);a--;){if(n&&(t=e[n])!=null)return t.call(e);if(i&&(t=e[i])!=null)return new r(t.call(e));n=`@@asyncIterator`,i=`@@iterator`}throw TypeError(`Object is not async iterable`)}function r(e){function t(e){if(Object(e)!==e)return Promise.reject(TypeError(e+` is not an object.`));var t=e.done;return Promise.resolve(e.value).then(function(e){return{value:e,done:t}})}return r=function(e){this.s=e,this.n=e.next},r.prototype={s:null,n:null,next:function(){return t(this.n.apply(this.s,arguments))},return:function(e){var n=this.s.return;return n===void 0?Promise.resolve({value:e,done:!0}):t(n.apply(this.s,arguments))},throw:function(e){var n=this.s.return;return n===void 0?Promise.reject(e):t(n.apply(this.s,arguments))}},new r(e)}t.exports=n,t.exports.__esModule=!0,t.exports.default=t.exports}})(),1),SU(DU(),1);var eW=bU({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/usingCtx.js"(e,t){function n(){var e=typeof SuppressedError==`function`?SuppressedError:function(e,t){var n=Error();return n.name=`SuppressedError`,n.error=e,n.suppressed=t,n},t={},n=[];function r(e,t){if(t!=null){if(Object(t)!==t)throw TypeError(`using declarations can only be used with objects, functions, null, or undefined.`);if(e)var r=t[Symbol.asyncDispose||Symbol.for(`Symbol.asyncDispose`)];if(r===void 0&&(r=t[Symbol.dispose||Symbol.for(`Symbol.dispose`)],e))var i=r;if(typeof r!=`function`)throw TypeError(`Object is not disposable.`);i&&(r=function(){try{i.call(t)}catch(e){return Promise.reject(e)}}),n.push({v:t,d:r,a:e})}else e&&n.push({d:t,a:e});return t}return{e:t,u:r.bind(null,!1),a:r.bind(null,!0),d:function(){var r,i=this.e,a=0;function o(){for(;r=n.pop();)try{if(!r.a&&a===1)return a=0,n.push(r),Promise.resolve().then(o);if(r.d){var e=r.d.call(r.v);if(r.a)return a|=2,Promise.resolve(e).then(o,s)}else a|=1}catch(e){return s(e)}if(a===1)return i===t?Promise.resolve():Promise.reject(i);if(i!==t)throw i}function s(n){return i=i===t?n:new e(n,i),o()}return o()}}}t.exports=n,t.exports.__esModule=!0,t.exports.default=t.exports}}),tW=bU({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/OverloadYield.js"(e,t){function n(e,t){this.v=e,this.k=t}t.exports=n,t.exports.__esModule=!0,t.exports.default=t.exports}}),nW=bU({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/awaitAsyncGenerator.js"(e,t){var n=tW();function r(e){return new n(e,0)}t.exports=r,t.exports.__esModule=!0,t.exports.default=t.exports}}),rW=bU({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/wrapAsyncGenerator.js"(e,t){var n=tW();function r(e){return function(){return new i(e.apply(this,arguments))}}function i(e){var t,r;function i(t,r){try{var o=e[t](r),s=o.value,c=s instanceof n;Promise.resolve(c?s.v:s).then(function(n){if(c){var r=t===`return`?`return`:`next`;if(!s.k||n.done)return i(r,n);n=e[r](n).value}a(o.done?`return`:`normal`,n)},function(e){i(`throw`,e)})}catch(e){a(`throw`,e)}}function a(e,n){switch(e){case`return`:t.resolve({value:n,done:!0});break;case`throw`:t.reject(n);break;default:t.resolve({value:n,done:!1})}(t=t.next)?i(t.key,t.arg):r=null}this._invoke=function(e,n){return new Promise(function(a,o){var s={key:e,arg:n,resolve:a,reject:o,next:null};r?r=r.next=s:(t=r=s,i(e,n))})},typeof e.return!=`function`&&(this.return=void 0)}i.prototype[typeof Symbol==`function`&&Symbol.asyncIterator||`@@asyncIterator`]=function(){return this},i.prototype.next=function(e){return this._invoke(`next`,e)},i.prototype.throw=function(e){return this._invoke(`throw`,e)},i.prototype.return=function(e){return this._invoke(`return`,e)},t.exports=r,t.exports.__esModule=!0,t.exports.default=t.exports}});SU(eW(),1),SU(nW(),1),SU(rW(),1),SU(DU(),1);function iW(e){return RH(({path:t,args:n})=>{let r=[...t],i=r.pop();if(i===`useMutation`)return e[i](r,...n);if(i===`_def`)return{path:r};let[a,...o]=n,s=o[0]??{};return e[i](r,a,s)})}var aW=[`client`,`ssrContext`,`ssrState`,`abortOnUnmount`],oW=d.createContext?.call(d,null),sW=e=>{switch(e){case`queryOptions`:case`fetch`:case`ensureData`:case`prefetch`:case`getData`:case`setData`:case`setQueriesData`:return`query`;case`infiniteQueryOptions`:case`fetchInfinite`:case`prefetchInfinite`:case`getInfiniteData`:case`setInfiniteData`:return`infinite`;case`setMutationDefaults`:case`getMutationDefaults`:case`isMutating`:case`cancel`:case`invalidate`:case`refetch`:case`reset`:return`any`}};function cW(e){return RH(t=>{let n=[...t.path],r=n.pop(),i=[...t.args],a=i.shift(),o=fU(n,a,sW(r));return{infiniteQueryOptions:()=>e.infiniteQueryOptions(n,o,i[0]),queryOptions:()=>e.queryOptions(n,o,...i),fetch:()=>e.fetchQuery(o,...i),fetchInfinite:()=>e.fetchInfiniteQuery(o,i[0]),prefetch:()=>e.prefetchQuery(o,...i),prefetchInfinite:()=>e.prefetchInfiniteQuery(o,i[0]),ensureData:()=>e.ensureQueryData(o,...i),invalidate:()=>e.invalidateQueries(o,...i),reset:()=>e.resetQueries(o,...i),refetch:()=>e.refetchQueries(o,...i),cancel:()=>e.cancelQuery(o,...i),setData:()=>{e.setQueryData(o,i[0],i[1])},setQueriesData:()=>e.setQueriesData(o,i[0],i[1],i[2]),setInfiniteData:()=>{e.setInfiniteQueryData(o,i[0],i[1])},getData:()=>e.getQueryData(o),getInfiniteData:()=>e.getInfiniteQueryData(o),setMutationDefaults:()=>e.setMutationDefaults(pU(n),a),getMutationDefaults:()=>e.getMutationDefaults(pU(n)),isMutating:()=>e.isMutating({mutationKey:pU(n)})}[r]()})}function lW(e){let t=ZU(e.client),n=cW(e);return zH(r=>{let i=r;return i===`client`?t:aW.includes(i)?e[i]:n[r]})}var uW=tU(cU(),1);function dW(e){let t=e instanceof qU?e:$U(e);return RH(e=>{let n=e.path,r=n.join(`.`),[i,a]=e.args;return(0,uW.default)({queryKey:fU(n,i,`query`),queryFn:()=>t.query(r,i,a?.trpc)},a)})}var fW=tU(cU(),1);function pW(e,t,n){let r=e[0],i=e[1]?.input;return n&&(i=(0,fW.default)((0,fW.default)((0,fW.default)({},i??{}),n.pageParam?{cursor:n.pageParam}:{}),{},{direction:n.direction})),[r.join(`.`),i,t?.trpc]}var mW=tU($H({"../../node_modules/.pnpm/@oxc-project+runtime@0.72.2/node_modules/@oxc-project/runtime/src/helpers/asyncIterator.js"(e,t){function n(e){var t,n,i,a=2;for(typeof Symbol<`u`&&(n=Symbol.asyncIterator,i=Symbol.iterator);a--;){if(n&&(t=e[n])!=null)return t.call(e);if(i&&(t=e[i])!=null)return new r(t.call(e));n=`@@asyncIterator`,i=`@@iterator`}throw TypeError(`Object is not async iterable`)}function r(e){function t(e){if(Object(e)!==e)return Promise.reject(TypeError(e+` is not an object.`));var t=e.done;return Promise.resolve(e.value).then(function(e){return{value:e,done:t}})}return r=function(e){this.s=e,this.n=e.next},r.prototype={s:null,n:null,next:function(){return t(this.n.apply(this.s,arguments))},return:function(e){var n=this.s.return;return n===void 0?Promise.resolve({value:e,done:!0}):t(n.apply(this.s,arguments))},throw:function(e){var n=this.s.return;return n===void 0?Promise.reject(e):t(n.apply(this.s,arguments))}},new r(e)}t.exports=n,t.exports.__esModule=!0,t.exports.default=t.exports}})(),1);function hW(e){return{path:e.path.join(`.`)}}function gW(e){let t=hW(e);return d.useMemo(()=>t,[t])}async function _W(e,t,n){let r=t.getQueryCache().build(t,{queryKey:n});r.setState({data:[],status:`success`});let i=[];var a=!1,o=!1,s;try{for(var c=(0,mW.default)(e),l;a=!(l=await c.next()).done;a=!1){let e=l.value;i.push(e),r.setState({data:[...i]})}}catch(e){o=!0,s=e}finally{try{a&&c.return!=null&&await c.return()}finally{if(o)throw s}}return i}var vW=tU(cU(),1);function yW(e){let{client:t,queryClient:n}=e,r=t instanceof qU?t:$U(t);return{infiniteQueryOptions:(e,t,n)=>{let i=t[1]?.input===xV;return Object.assign(vH((0,vW.default)((0,vW.default)({},n),{},{initialData:n?.initialData,queryKey:t,queryFn:i?xV:async e=>{var i;let a=(0,vW.default)((0,vW.default)({},n),{},{trpc:(0,vW.default)((0,vW.default)({},n?.trpc),!(n==null||(i=n.trpc)==null)&&i.abortOnUnmount?{signal:e.signal}:{signal:null})});return await r.query(...pW(t,a,{direction:e.direction,pageParam:e.pageParam}))},initialPageParam:n?.initialCursor??null})),{trpc:hW({path:e})})},queryOptions:(e,t,i)=>{let a=t[1]?.input===xV;return Object.assign(_H((0,vW.default)((0,vW.default)({},i),{},{initialData:i?.initialData,queryKey:t,queryFn:a?xV:async e=>{var a;let o=(0,vW.default)((0,vW.default)({},i),{},{trpc:(0,vW.default)((0,vW.default)({},i?.trpc),!(i==null||(a=i.trpc)==null)&&a.abortOnUnmount?{signal:e.signal}:{signal:null})}),s=await r.query(...pW(t,o));return wH(s)?_W(s,n,t):s}})),{trpc:hW({path:e})})},fetchQuery:(e,t)=>n.fetchQuery((0,vW.default)((0,vW.default)({},t),{},{queryKey:e,queryFn:()=>r.query(...pW(e,t))})),fetchInfiniteQuery:(e,t)=>n.fetchInfiniteQuery((0,vW.default)((0,vW.default)({},t),{},{queryKey:e,queryFn:({pageParam:n,direction:i})=>r.query(...pW(e,t,{pageParam:n,direction:i})),initialPageParam:t?.initialCursor??null})),prefetchQuery:(e,t)=>n.prefetchQuery((0,vW.default)((0,vW.default)({},t),{},{queryKey:e,queryFn:()=>r.query(...pW(e,t))})),prefetchInfiniteQuery:(e,t)=>n.prefetchInfiniteQuery((0,vW.default)((0,vW.default)({},t),{},{queryKey:e,queryFn:({pageParam:n,direction:i})=>r.query(...pW(e,t,{pageParam:n,direction:i})),initialPageParam:t?.initialCursor??null})),ensureQueryData:(e,t)=>n.ensureQueryData((0,vW.default)((0,vW.default)({},t),{},{queryKey:e,queryFn:()=>r.query(...pW(e,t))})),invalidateQueries:(e,t,r)=>n.invalidateQueries((0,vW.default)((0,vW.default)({},t),{},{queryKey:e}),r),resetQueries:(e,t,r)=>n.resetQueries((0,vW.default)((0,vW.default)({},t),{},{queryKey:e}),r),refetchQueries:(e,t,r)=>n.refetchQueries((0,vW.default)((0,vW.default)({},t),{},{queryKey:e}),r),cancelQuery:(e,t)=>n.cancelQueries({queryKey:e},t),setQueryData:(e,t,r)=>n.setQueryData(e,t,r),setQueriesData:(e,t,r,i)=>n.setQueriesData((0,vW.default)((0,vW.default)({},t),{},{queryKey:e}),r,i),getQueryData:e=>n.getQueryData(e),setInfiniteQueryData:(e,t,r)=>n.setQueryData(e,t,r),getInfiniteQueryData:e=>n.getQueryData(e),setMutationDefaults:(t,i)=>{let a=t[0];return n.setMutationDefaults(t,typeof i==`function`?i({canonicalMutationFn:t=>r.mutation(...pW([a,{input:t}],e))}):i)},getMutationDefaults:e=>n.getMutationDefaults(e),isMutating:e=>n.isMutating((0,vW.default)((0,vW.default)({},e),{},{exact:!0}))}}var q=tU(cU()),bW=(e,t)=>new Proxy(e,{get(e,n){return t(n),e[n]}});function xW(e){var t;let n=(e==null||(t=e.overrides)==null||(t=t.useMutation)==null?void 0:t.onSuccess)??(e=>e.originalFn()),r=e?.context??oW,i=QU,a=e=>{let{abortOnUnmount:t=!1,queryClient:n,ssrContext:i}=e,[a,o]=d.useState(e.ssrState??!1),s=e.client instanceof qU?e.client:$U(e.client),c=d.useMemo(()=>yW({client:s,queryClient:n}),[s,n]),l=d.useMemo(()=>(0,q.default)({abortOnUnmount:t,queryClient:n,client:s,ssrContext:i??null,ssrState:a},c),[t,s,c,n,i,a]);return d.useEffect(()=>{o(e=>e?`mounted`:!1)},[]),(0,K.jsx)(r.Provider,{value:l,children:e.children})};function o(){let e=d.useContext(r);if(!e)throw Error("Unable to find tRPC Context. Did you forget to wrap your App inside `withTRPC` HoC?");return e}function s(e,t){let{queryClient:n,ssrState:r}=o();return r&&r!==`mounted`&&n.getQueryCache().find({queryKey:e})?.state.status===`error`?(0,q.default)({retryOnMount:!1},t):t}function c(t,n,r){var i,a;let{abortOnUnmount:c,client:l,ssrState:u,queryClient:d,prefetchQuery:f}=o(),p=fU(t,n,`query`),m=d.getQueryDefaults(p),h=n===xV;typeof window>`u`&&u===`prepass`&&(r==null||(i=r.trpc)==null?void 0:i.ssr)!==!1&&(r?.enabled??m?.enabled)!==!1&&!h&&!d.getQueryCache().find({queryKey:p})&&f(p,r);let g=s(p,(0,q.default)((0,q.default)({},m),r)),_=(r==null||(a=r.trpc)==null?void 0:a.abortOnUnmount)??e?.abortOnUnmount??c,v=dH((0,q.default)((0,q.default)({},g),{},{queryKey:p,queryFn:h?n:async e=>{let t=(0,q.default)((0,q.default)({},g),{},{trpc:(0,q.default)((0,q.default)({},g?.trpc),_?{signal:e.signal}:{signal:null})}),n=await l.query(...pW(p,t));return wH(n)?_W(n,d,p):n}}),d);return v.trpc=gW({path:t}),v}function l(t,n,r){var i;let a=o(),s=fU(t,n,`query`),c=n===xV,l=(r==null||(i=r.trpc)==null?void 0:i.abortOnUnmount)??e?.abortOnUnmount??a.abortOnUnmount;hH((0,q.default)((0,q.default)({},r),{},{queryKey:s,queryFn:c?n:e=>{let t={trpc:(0,q.default)((0,q.default)({},r?.trpc),l?{signal:e.signal}:{})};return a.client.query(...pW(s,t))}}))}function u(t,n,r){var i;let a=o(),s=fU(t,n,`query`),c=(r==null||(i=r.trpc)==null?void 0:i.abortOnUnmount)??e?.abortOnUnmount??a.abortOnUnmount,l=fH((0,q.default)((0,q.default)({},r),{},{queryKey:s,queryFn:e=>{let t=(0,q.default)((0,q.default)({},r),{},{trpc:(0,q.default)((0,q.default)({},r?.trpc),c?{signal:e.signal}:{signal:null})});return a.client.query(...pW(s,t))}}),a.queryClient);return l.trpc=gW({path:t}),[l.data,l]}function f(e,t){let{client:r,queryClient:i}=o(),a=pU(e),s=i.defaultMutationOptions(i.getMutationDefaults(a)),c=yH((0,q.default)((0,q.default)({},t),{},{mutationKey:a,mutationFn:n=>r.mutation(...pW([e,{input:n}],t)),onSuccess(...e){return n({originalFn:()=>{var n,r;return(t==null||(n=t.onSuccess)==null?void 0:n.call(t,...e))??(s==null||(r=s.onSuccess)==null?void 0:r.call(s,...e))},queryClient:i,meta:t?.meta??s?.meta??{}})}}),i);return c.trpc=gW({path:e}),c}let p={data:void 0,error:null,status:`idle`},m={data:void 0,error:null,status:`connecting`};function h(e,t,n){let r=n?.enabled??t!==xV,i=pV(fU(e,t,`any`)),{client:a}=o(),s=d.useRef(n);d.useEffect(()=>{s.current=n});let[c]=d.useState(new Set([])),l=d.useCallback(e=>{c.add(e)},[c]),u=d.useRef(null),f=d.useCallback(e=>{let t=g.current,n=g.current=e(t),r=!1;for(let e of c)if(t[e]!==n[e]){r=!0;break}r&&v(bW(n,l))},[l,c]),h=d.useCallback(()=>{var n;if((n=u.current)==null||n.unsubscribe(),!r){f(()=>(0,q.default)((0,q.default)({},p),{},{reset:h}));return}f(()=>(0,q.default)((0,q.default)({},m),{},{reset:h})),u.current=a.subscription(e.join(`.`),t??void 0,{onStarted:()=>{var e,t;(e=(t=s.current).onStarted)==null||e.call(t),f(e=>(0,q.default)((0,q.default)({},e),{},{status:`pending`,error:null}))},onData:e=>{var t,n;(t=(n=s.current).onData)==null||t.call(n,e),f(t=>(0,q.default)((0,q.default)({},t),{},{status:`pending`,data:e,error:null}))},onError:e=>{var t,n;(t=(n=s.current).onError)==null||t.call(n,e),f(t=>(0,q.default)((0,q.default)({},t),{},{status:`error`,error:e}))},onConnectionStateChange:e=>{f(t=>{switch(e.state){case`idle`:return(0,q.default)((0,q.default)({},t),{},{status:e.state,error:null,data:void 0});case`connecting`:return(0,q.default)((0,q.default)({},t),{},{error:e.error,status:e.state});case`pending`:return t}})},onComplete:()=>{var e,t;(e=(t=s.current).onComplete)==null||e.call(t),f(e=>(0,q.default)((0,q.default)({},e),{},{status:`idle`,error:null,data:void 0}))}})},[a,i,r,f]);d.useEffect(()=>(h(),()=>{var e;(e=u.current)==null||e.unsubscribe()}),[h]);let g=d.useRef(r?(0,q.default)((0,q.default)({},m),{},{reset:h}):(0,q.default)((0,q.default)({},p),{},{reset:h})),[_,v]=d.useState(bW(g.current,l));return _}function g(e,t,n){var r,i;let{client:a,ssrState:c,prefetchInfiniteQuery:l,queryClient:u,abortOnUnmount:d}=o(),f=fU(e,t,`infinite`),p=u.getQueryDefaults(f),m=t===xV;typeof window>`u`&&c===`prepass`&&(n==null||(r=n.trpc)==null?void 0:r.ssr)!==!1&&(n?.enabled??p?.enabled)!==!1&&!m&&!u.getQueryCache().find({queryKey:f})&&l(f,(0,q.default)((0,q.default)({},p),n));let h=s(f,(0,q.default)((0,q.default)({},p),n)),g=(n==null||(i=n.trpc)==null?void 0:i.abortOnUnmount)??d,_=bH((0,q.default)((0,q.default)({},h),{},{initialPageParam:n.initialCursor??null,persister:n.persister,queryKey:f,queryFn:m?t:e=>{let t=(0,q.default)((0,q.default)({},h),{},{trpc:(0,q.default)((0,q.default)({},h?.trpc),g?{signal:e.signal}:{signal:null})});return a.query(...pW(f,t,{pageParam:e.pageParam??n.initialCursor,direction:e.direction}))}}),u);return _.trpc=gW({path:e}),_}function _(e,t,n){var r;let i=o(),a=fU(e,t,`infinite`),c=i.queryClient.getQueryDefaults(a),l=t===xV,u=s(a,(0,q.default)((0,q.default)({},c),n)),d=(n==null||(r=n.trpc)==null?void 0:r.abortOnUnmount)??i.abortOnUnmount;gH((0,q.default)((0,q.default)({},n),{},{initialPageParam:n.initialCursor??null,queryKey:a,queryFn:l?t:e=>{let t=(0,q.default)((0,q.default)({},u),{},{trpc:(0,q.default)((0,q.default)({},u?.trpc),d?{signal:e.signal}:{})});return i.client.query(...pW(a,t,{pageParam:e.pageParam??n.initialCursor,direction:e.direction}))}}))}function v(e,t,n){var r;let i=o(),a=fU(e,t,`infinite`),c=i.queryClient.getQueryDefaults(a),l=s(a,(0,q.default)((0,q.default)({},c),n)),u=(n==null||(r=n.trpc)==null?void 0:r.abortOnUnmount)??i.abortOnUnmount,d=pH((0,q.default)((0,q.default)({},n),{},{initialPageParam:n.initialCursor??null,queryKey:a,queryFn:e=>{let t=(0,q.default)((0,q.default)({},l),{},{trpc:(0,q.default)((0,q.default)({},l?.trpc),u?{signal:e.signal}:{})});return i.client.query(...pW(a,t,{pageParam:e.pageParam??n.initialCursor,direction:e.direction}))}}),i.queryClient);return d.trpc=gW({path:e}),[d.data,d]}return{Provider:a,createClient:i,useContext:o,useUtils:o,useQuery:c,usePrefetchQuery:l,useSuspenseQuery:u,useQueries:(e,t)=>{let{ssrState:n,queryClient:r,prefetchQuery:i,client:a}=o(),s=e(dW(a));if(typeof window>`u`&&n===`prepass`)for(let e of s){let t=e;t.trpc?.ssr!==!1&&!r.getQueryCache().find({queryKey:t.queryKey})&&i(t.queryKey,t)}return lH({queries:s.map(e=>(0,q.default)((0,q.default)({},e),{},{queryKey:e.queryKey})),combine:t?.combine},r)},useSuspenseQueries:e=>{let{queryClient:t,client:n}=o(),r=mH({queries:e(dW(n)).map(e=>(0,q.default)((0,q.default)({},e),{},{queryFn:e.queryFn,queryKey:e.queryKey}))},t);return[r.map(e=>e.data),r]},useMutation:f,useSubscription:h,useInfiniteQuery:g,usePrefetchInfiniteQuery:_,useSuspenseInfiniteQuery:v}}function SW(e){let t=iW(e);return zH(n=>n===`useContext`||n===`useUtils`?()=>{let t=e.useUtils();return d.useMemo(()=>lW(t),[t])}:e.hasOwnProperty(n)?e[n]:t[n])}function CW(e){return SW(xW(e))}var wW=typeof globalThis<`u`?globalThis.__camstackTrpcReact:void 0,J=wW??CW();typeof globalThis<`u`&&!wW&&(globalThis.__camstackTrpcReact=J);function TW(e,t){if(typeof globalThis>`u`)return(0,d.createContext)(t);let n=globalThis.__camstackSharedContexts,r=n??new Map;n||(globalThis.__camstackSharedContexts=r);let i=r.get(e);if(i)return i;let a=(0,d.createContext)(t);return r.set(e,a),a}var EW=TW(`camstack:system`,null);function DW(){let e=(0,d.useContext)(EW);if(!e)throw Error(`useSystem(): no <SystemProvider> in tree`);return e}var OW={[U.Camera]:{icon:re,label:`Camera`},[U.Hub]:{icon:ot,label:`Hub`},[U.Light]:{icon:Ve,label:`Light`},[U.Siren]:{icon:Tt,label:`Siren`},[U.Switch]:{icon:Rt,label:`Switch`},[U.Sensor]:{icon:m,label:`Sensor`},[U.Thermostat]:{icon:Lt,label:`Thermostat`},[U.Climate]:{icon:h,label:`Air conditioner`},[U.Button]:{icon:de,label:`Button`},[U.EventEmitter]:{icon:en,label:`Event Emitter`},[U.Update]:{icon:mt,label:`Update`},[U.Generic]:{icon:ne,label:`Generic`},[U.Notifier]:{icon:x,label:`Notifier`},[U.Script]:{icon:_t,label:`Script`},[U.Automation]:{icon:Qt,label:`Automation`},[U.Lock]:{icon:Ke,label:`Lock`},[U.Cover]:{icon:ee,label:`Cover`},[U.Valve]:{icon:ut,label:`Valve`},[U.Humidifier]:{icon:Jt,label:`Humidifier`},[U.WaterHeater]:{icon:v,label:`Water heater`},[U.Fan]:{icon:Oe,label:`Fan`},[U.MediaPlayer]:{icon:$e,label:`Media player`},[U.AlarmPanel]:{icon:bt,label:`Alarm panel`},[U.Control]:{icon:Ot,label:`Control`},[U.Presence]:{icon:Je,label:`Presence`},[U.Weather]:{icon:ge,label:`Weather`},[U.Vacuum]:{icon:S,label:`Vacuum`},[U.LawnMower]:{icon:zt,label:`Lawn mower`},[U.Container]:{icon:ne,label:`Container`},[U.Image]:{icon:Re,label:`Image`},[U.PetFeeder]:{icon:te,label:`Pet feeder`}},kW={[W.Siren]:{icon:Tt,label:`Siren`},[W.Floodlight]:{icon:Ve,label:`Floodlight`},[W.Spotlight]:{icon:je,label:`Spotlight`},[W.PirSensor]:{icon:pt,label:`PIR sensor`},[W.Chime]:{icon:x,label:`Chime`},[W.Autotrack]:{icon:be,label:`Auto-track`},[W.Nightvision]:{icon:et,label:`Night vision`},[W.PrivacyMask]:{icon:Ee,label:`Privacy mask`},[W.Doorbell]:{icon:xe,label:`Doorbell`},[W.BinaryHelper]:{icon:Rt,label:`Binary helper`},[W.MotionSensor]:{icon:Ne,label:`Motion sensor`},[W.ContactSensor]:{icon:Se,label:`Contact sensor`},[W.LeakSensor]:{icon:we,label:`Leak sensor`},[W.SmokeSensor]:{icon:g,label:`Smoke sensor`},[W.COSensor]:{icon:Zt,label:`CO sensor`},[W.GasSensor]:{icon:Ae,label:`Gas sensor`},[W.TamperSensor]:{icon:bt,label:`Tamper sensor`},[W.VibrationSensor]:{icon:Gt,label:`Vibration sensor`},[W.ConnectivitySensor]:{icon:Xt,label:`Connectivity`},[W.SoundSensor]:{icon:Kt,label:`Sound sensor`},[W.BinarySensor]:{icon:Rt,label:`Binary sensor`},[W.TemperatureSensor]:{icon:Lt,label:`Temperature`},[W.HumiditySensor]:{icon:Te,label:`Humidity`},[W.AmbientLightSensor]:{icon:Ft,label:`Ambient light`},[W.PressureSensor]:{icon:Pe,label:`Pressure`},[W.WindSensor]:{icon:Zt,label:`Wind`},[W.RainSensor]:{icon:me,label:`Rain`},[W.UvSensor]:{icon:Pt,label:`UV index`},[W.SolarRadiationSensor]:{icon:It,label:`Solar radiation`},[W.SoilMoistureSensor]:{icon:Mt,label:`Soil moisture`},[W.PowerSensor]:{icon:en,label:`Power`},[W.EnergySensor]:{icon:en,label:`Energy`},[W.VoltageSensor]:{icon:en,label:`Voltage`},[W.CurrentSensor]:{icon:en,label:`Current`},[W.AirQualitySensor]:{icon:Zt,label:`Air quality`},[W.BatterySensor]:{icon:Pe,label:`Battery`},[W.NumericSensor]:{icon:Fe,label:`Numeric sensor`},[W.EnumSensor]:{icon:Ue,label:`Enum sensor`},[W.DateTimeSensor]:{icon:w,label:`Date / time`},[W.GenericSensor]:{icon:Pe,label:`Sensor`},[W.NumericControl]:{icon:Ot,label:`Numeric control`},[W.SelectControl]:{icon:He,label:`Select control`},[W.TextControl]:{icon:Ht,label:`Text control`},[W.DateTimeControl]:{icon:w,label:`Date / time control`},[W.MobilePushNotifier]:{icon:kt,label:`Mobile push`},[W.MessagingNotifier]:{icon:Ze,label:`Messaging`},[W.EmailNotifier]:{icon:qe,label:`Email`},[W.GenericNotifier]:{icon:x,label:`Notifier`}},AW=new Set(Object.values(U));new Set(Object.values(W));function jW(e){return AW.has(e)}var MW=OW[U.Generic];kW[W.GenericSensor];function NW(e){return jW(e)?OW[e]??MW:MW}Object.values(U).map(e=>{let t=NW(e);return{id:e,label:t.label,icon:t.icon}});var PW=e((e=>{var t=r();function n(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function i(){}var a={d:{f:i,r:function(){throw Error(n(522))},D:i,C:i,L:i,m:i,X:i,S:i,M:i},p:0,findDOMNode:null},o=Symbol.for(`react.portal`);function s(e,t,n){var r=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:o,key:r==null?null:``+r,children:e,containerInfo:t,implementation:n}}var c=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function l(e,t){if(e===`font`)return``;if(typeof t==`string`)return t===`use-credentials`?t:``}e.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=a,e.createPortal=function(e,t){var r=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!t||t.nodeType!==1&&t.nodeType!==9&&t.nodeType!==11)throw Error(n(299));return s(e,t,null,r)},e.flushSync=function(e){var t=c.T,n=a.p;try{if(c.T=null,a.p=2,e)return e()}finally{c.T=t,a.p=n,a.d.f()}},e.preconnect=function(e,t){typeof e==`string`&&(t?(t=t.crossOrigin,t=typeof t==`string`?t===`use-credentials`?t:``:void 0):t=null,a.d.C(e,t))},e.prefetchDNS=function(e){typeof e==`string`&&a.d.D(e)},e.preinit=function(e,t){if(typeof e==`string`&&t&&typeof t.as==`string`){var n=t.as,r=l(n,t.crossOrigin),i=typeof t.integrity==`string`?t.integrity:void 0,o=typeof t.fetchPriority==`string`?t.fetchPriority:void 0;n===`style`?a.d.S(e,typeof t.precedence==`string`?t.precedence:void 0,{crossOrigin:r,integrity:i,fetchPriority:o}):n===`script`&&a.d.X(e,{crossOrigin:r,integrity:i,fetchPriority:o,nonce:typeof t.nonce==`string`?t.nonce:void 0})}},e.preinitModule=function(e,t){if(typeof e==`string`)if(typeof t==`object`&&t){if(t.as==null||t.as===`script`){var n=l(t.as,t.crossOrigin);a.d.M(e,{crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0})}}else t??a.d.M(e)},e.preload=function(e,t){if(typeof e==`string`&&typeof t==`object`&&t&&typeof t.as==`string`){var n=t.as,r=l(n,t.crossOrigin);a.d.L(e,n,{crossOrigin:r,integrity:typeof t.integrity==`string`?t.integrity:void 0,nonce:typeof t.nonce==`string`?t.nonce:void 0,type:typeof t.type==`string`?t.type:void 0,fetchPriority:typeof t.fetchPriority==`string`?t.fetchPriority:void 0,referrerPolicy:typeof t.referrerPolicy==`string`?t.referrerPolicy:void 0,imageSrcSet:typeof t.imageSrcSet==`string`?t.imageSrcSet:void 0,imageSizes:typeof t.imageSizes==`string`?t.imageSizes:void 0,media:typeof t.media==`string`?t.media:void 0})}},e.preloadModule=function(e,t){if(typeof e==`string`)if(t){var n=l(t.as,t.crossOrigin);a.d.m(e,{as:typeof t.as==`string`&&t.as!==`script`?t.as:void 0,crossOrigin:n,integrity:typeof t.integrity==`string`?t.integrity:void 0})}else a.d.m(e)},e.requestFormReset=function(e){a.d.r(e)},e.unstable_batchedUpdates=function(e,t){return e(t)},e.useFormState=function(e,t,n){return c.H.useFormState(e,t,n)},e.useFormStatus=function(){return c.H.useHostTransitionStatus()},e.version=`19.2.7`})),FW=e(((e,t)=>{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=PW()}));FW();function IW(e){var t,n,r=``;if(typeof e==`string`||typeof e==`number`)r+=e;else if(typeof e==`object`)if(Array.isArray(e)){var i=e.length;for(t=0;t<i;t++)e[t]&&(n=IW(e[t]))&&(r&&(r+=` `),r+=n)}else for(n in e)e[n]&&(r&&(r+=` `),r+=n);return r}function LW(){for(var e,t,n=0,r=``,i=arguments.length;n<i;n++)(e=arguments[n])&&(t=IW(e))&&(r&&(r+=` `),r+=t);return r}var RW=(e,t)=>{let n=Array(e.length+t.length);for(let t=0;t<e.length;t++)n[t]=e[t];for(let r=0;r<t.length;r++)n[e.length+r]=t[r];return n},zW=(e,t)=>({classGroupId:e,validator:t}),BW=(e=new Map,t=null,n)=>({nextPart:e,validators:t,classGroupId:n}),VW=`-`,HW=[],UW=`arbitrary..`,WW=e=>{let t=qW(e),{conflictingClassGroups:n,conflictingClassGroupModifiers:r}=e;return{getClassGroupId:e=>{if(e.startsWith(`[`)&&e.endsWith(`]`))return KW(e);let n=e.split(VW);return GW(n,+(n[0]===``&&n.length>1),t)},getConflictingClassGroupIds:(e,t)=>{if(t){let t=r[e],i=n[e];return t?i?RW(i,t):t:i||HW}return n[e]||HW}}},GW=(e,t,n)=>{if(e.length-t===0)return n.classGroupId;let r=e[t],i=n.nextPart.get(r);if(i){let n=GW(e,t+1,i);if(n)return n}let a=n.validators;if(a===null)return;let o=t===0?e.join(VW):e.slice(t).join(VW),s=a.length;for(let e=0;e<s;e++){let t=a[e];if(t.validator(o))return t.classGroupId}},KW=e=>e.slice(1,-1).indexOf(`:`)===-1?void 0:(()=>{let t=e.slice(1,-1),n=t.indexOf(`:`),r=t.slice(0,n);return r?UW+r:void 0})(),qW=e=>{let{theme:t,classGroups:n}=e;return JW(n,t)},JW=(e,t)=>{let n=BW();for(let r in e){let i=e[r];YW(i,n,r,t)}return n},YW=(e,t,n,r)=>{let i=e.length;for(let a=0;a<i;a++){let i=e[a];XW(i,t,n,r)}},XW=(e,t,n,r)=>{if(typeof e==`string`){ZW(e,t,n);return}if(typeof e==`function`){QW(e,t,n,r);return}$W(e,t,n,r)},ZW=(e,t,n)=>{let r=e===``?t:eG(t,e);r.classGroupId=n},QW=(e,t,n,r)=>{if(tG(e)){YW(e(r),t,n,r);return}t.validators===null&&(t.validators=[]),t.validators.push(zW(n,e))},$W=(e,t,n,r)=>{let i=Object.entries(e),a=i.length;for(let e=0;e<a;e++){let[a,o]=i[e];YW(o,eG(t,a),n,r)}},eG=(e,t)=>{let n=e,r=t.split(VW),i=r.length;for(let e=0;e<i;e++){let t=r[e],i=n.nextPart.get(t);i||(i=BW(),n.nextPart.set(t,i)),n=i}return n},tG=e=>`isThemeGetter`in e&&e.isThemeGetter===!0,nG=e=>{if(e<1)return{get:()=>void 0,set:()=>{}};let t=0,n=Object.create(null),r=Object.create(null),i=(i,a)=>{n[i]=a,t++,t>e&&(t=0,r=n,n=Object.create(null))};return{get(e){let t=n[e];if(t!==void 0)return t;if((t=r[e])!==void 0)return i(e,t),t},set(e,t){e in n?n[e]=t:i(e,t)}}},rG=`!`,iG=`:`,aG=[],oG=(e,t,n,r,i)=>({modifiers:e,hasImportantModifier:t,baseClassName:n,maybePostfixModifierPosition:r,isExternal:i}),sG=e=>{let{prefix:t,experimentalParseClassName:n}=e,r=e=>{let t=[],n=0,r=0,i=0,a,o=e.length;for(let s=0;s<o;s++){let o=e[s];if(n===0&&r===0){if(o===iG){t.push(e.slice(i,s)),i=s+1;continue}if(o===`/`){a=s;continue}}o===`[`?n++:o===`]`?n--:o===`(`?r++:o===`)`&&r--}let s=t.length===0?e:e.slice(i),c=s,l=!1;s.endsWith(rG)?(c=s.slice(0,-1),l=!0):s.startsWith(rG)&&(c=s.slice(1),l=!0);let u=a&&a>i?a-i:void 0;return oG(t,l,c,u)};if(t){let e=t+iG,n=r;r=t=>t.startsWith(e)?n(t.slice(e.length)):oG(aG,!1,t,void 0,!0)}if(n){let e=r;r=t=>n({className:t,parseClassName:e})}return r},cG=e=>{let t=new Map;return e.orderSensitiveModifiers.forEach((e,n)=>{t.set(e,1e6+n)}),e=>{let n=[],r=[];for(let i=0;i<e.length;i++){let a=e[i],o=a[0]===`[`,s=t.has(a);o||s?(r.length>0&&(r.sort(),n.push(...r),r=[]),n.push(a)):r.push(a)}return r.length>0&&(r.sort(),n.push(...r)),n}},lG=e=>({cache:nG(e.cacheSize),parseClassName:sG(e),sortModifiers:cG(e),postfixLookupClassGroupIds:uG(e),...WW(e)}),uG=e=>{let t=Object.create(null),n=e.postfixLookupClassGroups;if(n)for(let e=0;e<n.length;e++)t[n[e]]=!0;return t},dG=/\s+/,fG=(e,t)=>{let{parseClassName:n,getClassGroupId:r,getConflictingClassGroupIds:i,sortModifiers:a,postfixLookupClassGroupIds:o}=t,s=[],c=e.trim().split(dG),l=``;for(let e=c.length-1;e>=0;--e){let t=c[e],{isExternal:u,modifiers:d,hasImportantModifier:f,baseClassName:p,maybePostfixModifierPosition:m}=n(t);if(u){l=t+(l.length>0?` `+l:l);continue}let h=!!m,g;if(h){g=r(p.substring(0,m));let e=g&&o[g]?r(p):void 0;e&&e!==g&&(g=e,h=!1)}else g=r(p);if(!g){if(!h){l=t+(l.length>0?` `+l:l);continue}if(g=r(p),!g){l=t+(l.length>0?` `+l:l);continue}h=!1}let _=d.length===0?``:d.length===1?d[0]:a(d).join(`:`),v=f?_+rG:_,y=v+g;if(s.indexOf(y)>-1)continue;s.push(y);let b=i(g,h);for(let e=0;e<b.length;++e){let t=b[e];s.push(v+t)}l=t+(l.length>0?` `+l:l)}return l},pG=(...e)=>{let t=0,n,r,i=``;for(;t<e.length;)(n=e[t++])&&(r=mG(n))&&(i&&(i+=` `),i+=r);return i},mG=e=>{if(typeof e==`string`)return e;let t,n=``;for(let r=0;r<e.length;r++)e[r]&&(t=mG(e[r]))&&(n&&(n+=` `),n+=t);return n},hG=(e,...t)=>{let n,r,i,a,o=o=>(n=lG(t.reduce((e,t)=>t(e),e())),r=n.cache.get,i=n.cache.set,a=s,s(o)),s=e=>{let t=r(e);if(t)return t;let a=fG(e,n);return i(e,a),a};return a=o,(...e)=>a(pG(...e))},gG=[],_G=e=>{let t=t=>t[e]||gG;return t.isThemeGetter=!0,t},vG=/^\[(?:(\w[\w-]*):)?(.+)\]$/i,yG=/^\((?:(\w[\w-]*):)?(.+)\)$/i,bG=/^\d+(?:\.\d+)?\/\d+(?:\.\d+)?$/,xG=/^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/,SG=/\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/,CG=/^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/,wG=/^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/,TG=/^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/,EG=e=>bG.test(e),DG=e=>!!e&&!Number.isNaN(Number(e)),OG=e=>!!e&&Number.isInteger(Number(e)),kG=e=>e.endsWith(`%`)&&DG(e.slice(0,-1)),AG=e=>xG.test(e),jG=()=>!0,MG=e=>SG.test(e)&&!CG.test(e),NG=()=>!1,PG=e=>wG.test(e),FG=e=>TG.test(e),IG=e=>!Y(e)&&!X(e),LG=e=>e.startsWith(`@container`)&&(e[10]===`/`&&e[11]!==void 0||e[11]===`s`&&e[16]!==void 0&&e.startsWith(`-size/`,10)||e[11]===`n`&&e[18]!==void 0&&e.startsWith(`-normal/`,10)),RG=e=>$G(e,rK,NG),Y=e=>vG.test(e),zG=e=>$G(e,iK,MG),BG=e=>$G(e,aK,DG),VG=e=>$G(e,sK,jG),HG=e=>$G(e,oK,NG),UG=e=>$G(e,tK,NG),WG=e=>$G(e,nK,FG),GG=e=>$G(e,cK,PG),X=e=>yG.test(e),KG=e=>eK(e,iK),qG=e=>eK(e,oK),JG=e=>eK(e,tK),YG=e=>eK(e,rK),XG=e=>eK(e,nK),ZG=e=>eK(e,cK,!0),QG=e=>eK(e,sK,!0),$G=(e,t,n)=>{let r=vG.exec(e);return r?r[1]?t(r[1]):n(r[2]):!1},eK=(e,t,n=!1)=>{let r=yG.exec(e);return r?r[1]?t(r[1]):n:!1},tK=e=>e===`position`||e===`percentage`,nK=e=>e===`image`||e===`url`,rK=e=>e===`length`||e===`size`||e===`bg-size`,iK=e=>e===`length`,aK=e=>e===`number`,oK=e=>e===`family-name`,sK=e=>e===`number`||e===`weight`,cK=e=>e===`shadow`,lK=hG(()=>{let e=_G(`color`),t=_G(`font`),n=_G(`text`),r=_G(`font-weight`),i=_G(`tracking`),a=_G(`leading`),o=_G(`breakpoint`),s=_G(`container`),c=_G(`spacing`),l=_G(`radius`),u=_G(`shadow`),d=_G(`inset-shadow`),f=_G(`text-shadow`),p=_G(`drop-shadow`),m=_G(`blur`),h=_G(`perspective`),g=_G(`aspect`),_=_G(`ease`),v=_G(`animate`),y=()=>[`auto`,`avoid`,`all`,`avoid-page`,`page`,`left`,`right`,`column`],b=()=>[`center`,`top`,`bottom`,`left`,`right`,`top-left`,`left-top`,`top-right`,`right-top`,`bottom-right`,`right-bottom`,`bottom-left`,`left-bottom`],x=()=>[...b(),X,Y],ee=()=>[`auto`,`hidden`,`clip`,`visible`,`scroll`],te=()=>[`auto`,`contain`,`none`],S=()=>[X,Y,c],ne=()=>[EG,`full`,`auto`,...S()],re=()=>[OG,`none`,`subgrid`,X,Y],ie=()=>[`auto`,{span:[`full`,OG,X,Y]},OG,X,Y],ae=()=>[OG,`auto`,X,Y],oe=()=>[`auto`,`min`,`max`,`fr`,X,Y],se=()=>[`start`,`end`,`center`,`between`,`around`,`evenly`,`stretch`,`baseline`,`center-safe`,`end-safe`],ce=()=>[`start`,`end`,`center`,`stretch`,`center-safe`,`end-safe`],le=()=>[`auto`,...S()],ue=()=>[EG,`auto`,`full`,`dvw`,`dvh`,`lvw`,`lvh`,`svw`,`svh`,`min`,`max`,`fit`,...S()],de=()=>[EG,`screen`,`full`,`dvw`,`lvw`,`svw`,`min`,`max`,`fit`,...S()],C=()=>[EG,`screen`,`full`,`lh`,`dvh`,`lvh`,`svh`,`min`,`max`,`fit`,...S()],w=()=>[e,X,Y],fe=()=>[...b(),JG,UG,{position:[X,Y]}],pe=()=>[`no-repeat`,{repeat:[``,`x`,`y`,`space`,`round`]}],me=()=>[`auto`,`cover`,`contain`,YG,RG,{size:[X,Y]}],he=()=>[kG,KG,zG],ge=()=>[``,`none`,`full`,l,X,Y],_e=()=>[``,DG,KG,zG],ve=()=>[`solid`,`dashed`,`dotted`,`double`],ye=()=>[`normal`,`multiply`,`screen`,`overlay`,`darken`,`lighten`,`color-dodge`,`color-burn`,`hard-light`,`soft-light`,`difference`,`exclusion`,`hue`,`saturation`,`color`,`luminosity`],be=()=>[DG,kG,JG,UG],xe=()=>[``,`none`,m,X,Y],Se=()=>[`none`,DG,X,Y],Ce=()=>[`none`,DG,X,Y],we=()=>[DG,X,Y],Te=()=>[EG,`full`,...S()];return{cacheSize:500,theme:{animate:[`spin`,`ping`,`pulse`,`bounce`],aspect:[`video`],blur:[AG],breakpoint:[AG],color:[jG],container:[AG],"drop-shadow":[AG],ease:[`in`,`out`,`in-out`],font:[IG],"font-weight":[`thin`,`extralight`,`light`,`normal`,`medium`,`semibold`,`bold`,`extrabold`,`black`],"inset-shadow":[AG],leading:[`none`,`tight`,`snug`,`normal`,`relaxed`,`loose`],perspective:[`dramatic`,`near`,`normal`,`midrange`,`distant`,`none`],radius:[AG],shadow:[AG],spacing:[`px`,DG],text:[AG],"text-shadow":[AG],tracking:[`tighter`,`tight`,`normal`,`wide`,`wider`,`widest`]},classGroups:{aspect:[{aspect:[`auto`,`square`,EG,Y,X,g]}],container:[`container`],"container-type":[{"@container":[``,`normal`,`size`,X,Y]}],"container-named":[LG],columns:[{columns:[DG,Y,X,s]}],"break-after":[{"break-after":y()}],"break-before":[{"break-before":y()}],"break-inside":[{"break-inside":[`auto`,`avoid`,`avoid-page`,`avoid-column`]}],"box-decoration":[{"box-decoration":[`slice`,`clone`]}],box:[{box:[`border`,`content`]}],display:[`block`,`inline-block`,`inline`,`flex`,`inline-flex`,`table`,`inline-table`,`table-caption`,`table-cell`,`table-column`,`table-column-group`,`table-footer-group`,`table-header-group`,`table-row-group`,`table-row`,`flow-root`,`grid`,`inline-grid`,`contents`,`list-item`,`hidden`],sr:[`sr-only`,`not-sr-only`],float:[{float:[`right`,`left`,`none`,`start`,`end`]}],clear:[{clear:[`left`,`right`,`both`,`none`,`start`,`end`]}],isolation:[`isolate`,`isolation-auto`],"object-fit":[{object:[`contain`,`cover`,`fill`,`none`,`scale-down`]}],"object-position":[{object:x()}],overflow:[{overflow:ee()}],"overflow-x":[{"overflow-x":ee()}],"overflow-y":[{"overflow-y":ee()}],overscroll:[{overscroll:te()}],"overscroll-x":[{"overscroll-x":te()}],"overscroll-y":[{"overscroll-y":te()}],position:[`static`,`fixed`,`absolute`,`relative`,`sticky`],inset:[{inset:ne()}],"inset-x":[{"inset-x":ne()}],"inset-y":[{"inset-y":ne()}],start:[{"inset-s":ne(),start:ne()}],end:[{"inset-e":ne(),end:ne()}],"inset-bs":[{"inset-bs":ne()}],"inset-be":[{"inset-be":ne()}],top:[{top:ne()}],right:[{right:ne()}],bottom:[{bottom:ne()}],left:[{left:ne()}],visibility:[`visible`,`invisible`,`collapse`],z:[{z:[OG,`auto`,X,Y]}],basis:[{basis:[EG,`full`,`auto`,s,...S()]}],"flex-direction":[{flex:[`row`,`row-reverse`,`col`,`col-reverse`]}],"flex-wrap":[{flex:[`nowrap`,`wrap`,`wrap-reverse`]}],flex:[{flex:[DG,EG,`auto`,`initial`,`none`,Y]}],grow:[{grow:[``,DG,X,Y]}],shrink:[{shrink:[``,DG,X,Y]}],order:[{order:[OG,`first`,`last`,`none`,X,Y]}],"grid-cols":[{"grid-cols":re()}],"col-start-end":[{col:ie()}],"col-start":[{"col-start":ae()}],"col-end":[{"col-end":ae()}],"grid-rows":[{"grid-rows":re()}],"row-start-end":[{row:ie()}],"row-start":[{"row-start":ae()}],"row-end":[{"row-end":ae()}],"grid-flow":[{"grid-flow":[`row`,`col`,`dense`,`row-dense`,`col-dense`]}],"auto-cols":[{"auto-cols":oe()}],"auto-rows":[{"auto-rows":oe()}],gap:[{gap:S()}],"gap-x":[{"gap-x":S()}],"gap-y":[{"gap-y":S()}],"justify-content":[{justify:[...se(),`normal`]}],"justify-items":[{"justify-items":[...ce(),`normal`]}],"justify-self":[{"justify-self":[`auto`,...ce()]}],"align-content":[{content:[`normal`,...se()]}],"align-items":[{items:[...ce(),{baseline:[``,`last`]}]}],"align-self":[{self:[`auto`,...ce(),{baseline:[``,`last`]}]}],"place-content":[{"place-content":se()}],"place-items":[{"place-items":[...ce(),`baseline`]}],"place-self":[{"place-self":[`auto`,...ce()]}],p:[{p:S()}],px:[{px:S()}],py:[{py:S()}],ps:[{ps:S()}],pe:[{pe:S()}],pbs:[{pbs:S()}],pbe:[{pbe:S()}],pt:[{pt:S()}],pr:[{pr:S()}],pb:[{pb:S()}],pl:[{pl:S()}],m:[{m:le()}],mx:[{mx:le()}],my:[{my:le()}],ms:[{ms:le()}],me:[{me:le()}],mbs:[{mbs:le()}],mbe:[{mbe:le()}],mt:[{mt:le()}],mr:[{mr:le()}],mb:[{mb:le()}],ml:[{ml:le()}],"space-x":[{"space-x":S()}],"space-x-reverse":[`space-x-reverse`],"space-y":[{"space-y":S()}],"space-y-reverse":[`space-y-reverse`],size:[{size:ue()}],"inline-size":[{inline:[`auto`,...de()]}],"min-inline-size":[{"min-inline":[`auto`,...de()]}],"max-inline-size":[{"max-inline":[`none`,...de()]}],"block-size":[{block:[`auto`,...C()]}],"min-block-size":[{"min-block":[`auto`,...C()]}],"max-block-size":[{"max-block":[`none`,...C()]}],w:[{w:[s,`screen`,...ue()]}],"min-w":[{"min-w":[s,`screen`,`none`,...ue()]}],"max-w":[{"max-w":[s,`screen`,`none`,`prose`,{screen:[o]},...ue()]}],h:[{h:[`screen`,`lh`,...ue()]}],"min-h":[{"min-h":[`screen`,`lh`,`none`,...ue()]}],"max-h":[{"max-h":[`screen`,`lh`,...ue()]}],"font-size":[{text:[`base`,n,KG,zG]}],"font-smoothing":[`antialiased`,`subpixel-antialiased`],"font-style":[`italic`,`not-italic`],"font-weight":[{font:[r,QG,VG]}],"font-stretch":[{"font-stretch":[`ultra-condensed`,`extra-condensed`,`condensed`,`semi-condensed`,`normal`,`semi-expanded`,`expanded`,`extra-expanded`,`ultra-expanded`,kG,Y]}],"font-family":[{font:[qG,HG,t]}],"font-features":[{"font-features":[Y]}],"fvn-normal":[`normal-nums`],"fvn-ordinal":[`ordinal`],"fvn-slashed-zero":[`slashed-zero`],"fvn-figure":[`lining-nums`,`oldstyle-nums`],"fvn-spacing":[`proportional-nums`,`tabular-nums`],"fvn-fraction":[`diagonal-fractions`,`stacked-fractions`],tracking:[{tracking:[i,X,Y]}],"line-clamp":[{"line-clamp":[DG,`none`,X,BG]}],leading:[{leading:[a,...S()]}],"list-image":[{"list-image":[`none`,X,Y]}],"list-style-position":[{list:[`inside`,`outside`]}],"list-style-type":[{list:[`disc`,`decimal`,`none`,X,Y]}],"text-alignment":[{text:[`left`,`center`,`right`,`justify`,`start`,`end`]}],"placeholder-color":[{placeholder:w()}],"text-color":[{text:w()}],"text-decoration":[`underline`,`overline`,`line-through`,`no-underline`],"text-decoration-style":[{decoration:[...ve(),`wavy`]}],"text-decoration-thickness":[{decoration:[DG,`from-font`,`auto`,X,zG]}],"text-decoration-color":[{decoration:w()}],"underline-offset":[{"underline-offset":[DG,`auto`,X,Y]}],"text-transform":[`uppercase`,`lowercase`,`capitalize`,`normal-case`],"text-overflow":[`truncate`,`text-ellipsis`,`text-clip`],"text-wrap":[{text:[`wrap`,`nowrap`,`balance`,`pretty`]}],indent:[{indent:S()}],"tab-size":[{tab:[OG,X,Y]}],"vertical-align":[{align:[`baseline`,`top`,`middle`,`bottom`,`text-top`,`text-bottom`,`sub`,`super`,X,Y]}],whitespace:[{whitespace:[`normal`,`nowrap`,`pre`,`pre-line`,`pre-wrap`,`break-spaces`]}],break:[{break:[`normal`,`words`,`all`,`keep`]}],wrap:[{wrap:[`break-word`,`anywhere`,`normal`]}],hyphens:[{hyphens:[`none`,`manual`,`auto`]}],content:[{content:[`none`,X,Y]}],"bg-attachment":[{bg:[`fixed`,`local`,`scroll`]}],"bg-clip":[{"bg-clip":[`border`,`padding`,`content`,`text`]}],"bg-origin":[{"bg-origin":[`border`,`padding`,`content`]}],"bg-position":[{bg:fe()}],"bg-repeat":[{bg:pe()}],"bg-size":[{bg:me()}],"bg-image":[{bg:[`none`,{linear:[{to:[`t`,`tr`,`r`,`br`,`b`,`bl`,`l`,`tl`]},OG,X,Y],radial:[``,X,Y],conic:[OG,X,Y]},XG,WG]}],"bg-color":[{bg:w()}],"gradient-from-pos":[{from:he()}],"gradient-via-pos":[{via:he()}],"gradient-to-pos":[{to:he()}],"gradient-from":[{from:w()}],"gradient-via":[{via:w()}],"gradient-to":[{to:w()}],rounded:[{rounded:ge()}],"rounded-s":[{"rounded-s":ge()}],"rounded-e":[{"rounded-e":ge()}],"rounded-t":[{"rounded-t":ge()}],"rounded-r":[{"rounded-r":ge()}],"rounded-b":[{"rounded-b":ge()}],"rounded-l":[{"rounded-l":ge()}],"rounded-ss":[{"rounded-ss":ge()}],"rounded-se":[{"rounded-se":ge()}],"rounded-ee":[{"rounded-ee":ge()}],"rounded-es":[{"rounded-es":ge()}],"rounded-tl":[{"rounded-tl":ge()}],"rounded-tr":[{"rounded-tr":ge()}],"rounded-br":[{"rounded-br":ge()}],"rounded-bl":[{"rounded-bl":ge()}],"border-w":[{border:_e()}],"border-w-x":[{"border-x":_e()}],"border-w-y":[{"border-y":_e()}],"border-w-s":[{"border-s":_e()}],"border-w-e":[{"border-e":_e()}],"border-w-bs":[{"border-bs":_e()}],"border-w-be":[{"border-be":_e()}],"border-w-t":[{"border-t":_e()}],"border-w-r":[{"border-r":_e()}],"border-w-b":[{"border-b":_e()}],"border-w-l":[{"border-l":_e()}],"divide-x":[{"divide-x":_e()}],"divide-x-reverse":[`divide-x-reverse`],"divide-y":[{"divide-y":_e()}],"divide-y-reverse":[`divide-y-reverse`],"border-style":[{border:[...ve(),`hidden`,`none`]}],"divide-style":[{divide:[...ve(),`hidden`,`none`]}],"border-color":[{border:w()}],"border-color-x":[{"border-x":w()}],"border-color-y":[{"border-y":w()}],"border-color-s":[{"border-s":w()}],"border-color-e":[{"border-e":w()}],"border-color-bs":[{"border-bs":w()}],"border-color-be":[{"border-be":w()}],"border-color-t":[{"border-t":w()}],"border-color-r":[{"border-r":w()}],"border-color-b":[{"border-b":w()}],"border-color-l":[{"border-l":w()}],"divide-color":[{divide:w()}],"outline-style":[{outline:[...ve(),`none`,`hidden`]}],"outline-offset":[{"outline-offset":[DG,X,Y]}],"outline-w":[{outline:[``,DG,KG,zG]}],"outline-color":[{outline:w()}],shadow:[{shadow:[``,`none`,u,ZG,GG]}],"shadow-color":[{shadow:w()}],"inset-shadow":[{"inset-shadow":[`none`,d,ZG,GG]}],"inset-shadow-color":[{"inset-shadow":w()}],"ring-w":[{ring:_e()}],"ring-w-inset":[`ring-inset`],"ring-color":[{ring:w()}],"ring-offset-w":[{"ring-offset":[DG,zG]}],"ring-offset-color":[{"ring-offset":w()}],"inset-ring-w":[{"inset-ring":_e()}],"inset-ring-color":[{"inset-ring":w()}],"text-shadow":[{"text-shadow":[`none`,f,ZG,GG]}],"text-shadow-color":[{"text-shadow":w()}],opacity:[{opacity:[DG,X,Y]}],"mix-blend":[{"mix-blend":[...ye(),`plus-darker`,`plus-lighter`]}],"bg-blend":[{"bg-blend":ye()}],"mask-clip":[{"mask-clip":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]},`mask-no-clip`],"mask-composite":[{mask:[`add`,`subtract`,`intersect`,`exclude`]}],"mask-image-linear-pos":[{"mask-linear":[DG]}],"mask-image-linear-from-pos":[{"mask-linear-from":be()}],"mask-image-linear-to-pos":[{"mask-linear-to":be()}],"mask-image-linear-from-color":[{"mask-linear-from":w()}],"mask-image-linear-to-color":[{"mask-linear-to":w()}],"mask-image-t-from-pos":[{"mask-t-from":be()}],"mask-image-t-to-pos":[{"mask-t-to":be()}],"mask-image-t-from-color":[{"mask-t-from":w()}],"mask-image-t-to-color":[{"mask-t-to":w()}],"mask-image-r-from-pos":[{"mask-r-from":be()}],"mask-image-r-to-pos":[{"mask-r-to":be()}],"mask-image-r-from-color":[{"mask-r-from":w()}],"mask-image-r-to-color":[{"mask-r-to":w()}],"mask-image-b-from-pos":[{"mask-b-from":be()}],"mask-image-b-to-pos":[{"mask-b-to":be()}],"mask-image-b-from-color":[{"mask-b-from":w()}],"mask-image-b-to-color":[{"mask-b-to":w()}],"mask-image-l-from-pos":[{"mask-l-from":be()}],"mask-image-l-to-pos":[{"mask-l-to":be()}],"mask-image-l-from-color":[{"mask-l-from":w()}],"mask-image-l-to-color":[{"mask-l-to":w()}],"mask-image-x-from-pos":[{"mask-x-from":be()}],"mask-image-x-to-pos":[{"mask-x-to":be()}],"mask-image-x-from-color":[{"mask-x-from":w()}],"mask-image-x-to-color":[{"mask-x-to":w()}],"mask-image-y-from-pos":[{"mask-y-from":be()}],"mask-image-y-to-pos":[{"mask-y-to":be()}],"mask-image-y-from-color":[{"mask-y-from":w()}],"mask-image-y-to-color":[{"mask-y-to":w()}],"mask-image-radial":[{"mask-radial":[X,Y]}],"mask-image-radial-from-pos":[{"mask-radial-from":be()}],"mask-image-radial-to-pos":[{"mask-radial-to":be()}],"mask-image-radial-from-color":[{"mask-radial-from":w()}],"mask-image-radial-to-color":[{"mask-radial-to":w()}],"mask-image-radial-shape":[{"mask-radial":[`circle`,`ellipse`]}],"mask-image-radial-size":[{"mask-radial":[{closest:[`side`,`corner`],farthest:[`side`,`corner`]}]}],"mask-image-radial-pos":[{"mask-radial-at":b()}],"mask-image-conic-pos":[{"mask-conic":[DG]}],"mask-image-conic-from-pos":[{"mask-conic-from":be()}],"mask-image-conic-to-pos":[{"mask-conic-to":be()}],"mask-image-conic-from-color":[{"mask-conic-from":w()}],"mask-image-conic-to-color":[{"mask-conic-to":w()}],"mask-mode":[{mask:[`alpha`,`luminance`,`match`]}],"mask-origin":[{"mask-origin":[`border`,`padding`,`content`,`fill`,`stroke`,`view`]}],"mask-position":[{mask:fe()}],"mask-repeat":[{mask:pe()}],"mask-size":[{mask:me()}],"mask-type":[{"mask-type":[`alpha`,`luminance`]}],"mask-image":[{mask:[`none`,X,Y]}],filter:[{filter:[``,`none`,X,Y]}],blur:[{blur:xe()}],brightness:[{brightness:[DG,X,Y]}],contrast:[{contrast:[DG,X,Y]}],"drop-shadow":[{"drop-shadow":[``,`none`,p,ZG,GG]}],"drop-shadow-color":[{"drop-shadow":w()}],grayscale:[{grayscale:[``,DG,X,Y]}],"hue-rotate":[{"hue-rotate":[DG,X,Y]}],invert:[{invert:[``,DG,X,Y]}],saturate:[{saturate:[DG,X,Y]}],sepia:[{sepia:[``,DG,X,Y]}],"backdrop-filter":[{"backdrop-filter":[``,`none`,X,Y]}],"backdrop-blur":[{"backdrop-blur":xe()}],"backdrop-brightness":[{"backdrop-brightness":[DG,X,Y]}],"backdrop-contrast":[{"backdrop-contrast":[DG,X,Y]}],"backdrop-grayscale":[{"backdrop-grayscale":[``,DG,X,Y]}],"backdrop-hue-rotate":[{"backdrop-hue-rotate":[DG,X,Y]}],"backdrop-invert":[{"backdrop-invert":[``,DG,X,Y]}],"backdrop-opacity":[{"backdrop-opacity":[DG,X,Y]}],"backdrop-saturate":[{"backdrop-saturate":[DG,X,Y]}],"backdrop-sepia":[{"backdrop-sepia":[``,DG,X,Y]}],"border-collapse":[{border:[`collapse`,`separate`]}],"border-spacing":[{"border-spacing":S()}],"border-spacing-x":[{"border-spacing-x":S()}],"border-spacing-y":[{"border-spacing-y":S()}],"table-layout":[{table:[`auto`,`fixed`]}],caption:[{caption:[`top`,`bottom`]}],transition:[{transition:[``,`all`,`colors`,`opacity`,`shadow`,`transform`,`none`,X,Y]}],"transition-behavior":[{transition:[`normal`,`discrete`]}],duration:[{duration:[DG,`initial`,X,Y]}],ease:[{ease:[`linear`,`initial`,_,X,Y]}],delay:[{delay:[DG,X,Y]}],animate:[{animate:[`none`,v,X,Y]}],backface:[{backface:[`hidden`,`visible`]}],perspective:[{perspective:[h,X,Y]}],"perspective-origin":[{"perspective-origin":x()}],rotate:[{rotate:Se()}],"rotate-x":[{"rotate-x":Se()}],"rotate-y":[{"rotate-y":Se()}],"rotate-z":[{"rotate-z":Se()}],scale:[{scale:Ce()}],"scale-x":[{"scale-x":Ce()}],"scale-y":[{"scale-y":Ce()}],"scale-z":[{"scale-z":Ce()}],"scale-3d":[`scale-3d`],skew:[{skew:we()}],"skew-x":[{"skew-x":we()}],"skew-y":[{"skew-y":we()}],transform:[{transform:[X,Y,``,`none`,`gpu`,`cpu`]}],"transform-origin":[{origin:x()}],"transform-style":[{transform:[`3d`,`flat`]}],translate:[{translate:Te()}],"translate-x":[{"translate-x":Te()}],"translate-y":[{"translate-y":Te()}],"translate-z":[{"translate-z":Te()}],"translate-none":[`translate-none`],zoom:[{zoom:[OG,X,Y]}],accent:[{accent:w()}],appearance:[{appearance:[`none`,`auto`]}],"caret-color":[{caret:w()}],"color-scheme":[{scheme:[`normal`,`dark`,`light`,`light-dark`,`only-dark`,`only-light`]}],cursor:[{cursor:[`auto`,`default`,`pointer`,`wait`,`text`,`move`,`help`,`not-allowed`,`none`,`context-menu`,`progress`,`cell`,`crosshair`,`vertical-text`,`alias`,`copy`,`no-drop`,`grab`,`grabbing`,`all-scroll`,`col-resize`,`row-resize`,`n-resize`,`e-resize`,`s-resize`,`w-resize`,`ne-resize`,`nw-resize`,`se-resize`,`sw-resize`,`ew-resize`,`ns-resize`,`nesw-resize`,`nwse-resize`,`zoom-in`,`zoom-out`,X,Y]}],"field-sizing":[{"field-sizing":[`fixed`,`content`]}],"pointer-events":[{"pointer-events":[`auto`,`none`]}],resize:[{resize:[`none`,``,`y`,`x`]}],"scroll-behavior":[{scroll:[`auto`,`smooth`]}],"scrollbar-thumb-color":[{"scrollbar-thumb":w()}],"scrollbar-track-color":[{"scrollbar-track":w()}],"scrollbar-gutter":[{"scrollbar-gutter":[`auto`,`stable`,`both`]}],"scrollbar-w":[{scrollbar:[`auto`,`thin`,`none`]}],"scroll-m":[{"scroll-m":S()}],"scroll-mx":[{"scroll-mx":S()}],"scroll-my":[{"scroll-my":S()}],"scroll-ms":[{"scroll-ms":S()}],"scroll-me":[{"scroll-me":S()}],"scroll-mbs":[{"scroll-mbs":S()}],"scroll-mbe":[{"scroll-mbe":S()}],"scroll-mt":[{"scroll-mt":S()}],"scroll-mr":[{"scroll-mr":S()}],"scroll-mb":[{"scroll-mb":S()}],"scroll-ml":[{"scroll-ml":S()}],"scroll-p":[{"scroll-p":S()}],"scroll-px":[{"scroll-px":S()}],"scroll-py":[{"scroll-py":S()}],"scroll-ps":[{"scroll-ps":S()}],"scroll-pe":[{"scroll-pe":S()}],"scroll-pbs":[{"scroll-pbs":S()}],"scroll-pbe":[{"scroll-pbe":S()}],"scroll-pt":[{"scroll-pt":S()}],"scroll-pr":[{"scroll-pr":S()}],"scroll-pb":[{"scroll-pb":S()}],"scroll-pl":[{"scroll-pl":S()}],"snap-align":[{snap:[`start`,`end`,`center`,`align-none`]}],"snap-stop":[{snap:[`normal`,`always`]}],"snap-type":[{snap:[`none`,`x`,`y`,`both`]}],"snap-strictness":[{snap:[`mandatory`,`proximity`]}],touch:[{touch:[`auto`,`none`,`manipulation`]}],"touch-x":[{"touch-pan":[`x`,`left`,`right`]}],"touch-y":[{"touch-pan":[`y`,`up`,`down`]}],"touch-pz":[`touch-pinch-zoom`],select:[{select:[`none`,`text`,`all`,`auto`]}],"will-change":[{"will-change":[`auto`,`scroll`,`contents`,`transform`,X,Y]}],fill:[{fill:[`none`,...w()]}],"stroke-w":[{stroke:[DG,KG,zG,BG]}],stroke:[{stroke:[`none`,...w()]}],"forced-color-adjust":[{"forced-color-adjust":[`auto`,`none`]}]},conflictingClassGroups:{"container-named":[`container-type`],overflow:[`overflow-x`,`overflow-y`],overscroll:[`overscroll-x`,`overscroll-y`],inset:[`inset-x`,`inset-y`,`inset-bs`,`inset-be`,`start`,`end`,`top`,`right`,`bottom`,`left`],"inset-x":[`right`,`left`],"inset-y":[`top`,`bottom`],flex:[`basis`,`grow`,`shrink`],gap:[`gap-x`,`gap-y`],p:[`px`,`py`,`ps`,`pe`,`pbs`,`pbe`,`pt`,`pr`,`pb`,`pl`],px:[`pr`,`pl`],py:[`pt`,`pb`],m:[`mx`,`my`,`ms`,`me`,`mbs`,`mbe`,`mt`,`mr`,`mb`,`ml`],mx:[`mr`,`ml`],my:[`mt`,`mb`],size:[`w`,`h`],"font-size":[`leading`],"fvn-normal":[`fvn-ordinal`,`fvn-slashed-zero`,`fvn-figure`,`fvn-spacing`,`fvn-fraction`],"fvn-ordinal":[`fvn-normal`],"fvn-slashed-zero":[`fvn-normal`],"fvn-figure":[`fvn-normal`],"fvn-spacing":[`fvn-normal`],"fvn-fraction":[`fvn-normal`],"line-clamp":[`display`,`overflow`],rounded:[`rounded-s`,`rounded-e`,`rounded-t`,`rounded-r`,`rounded-b`,`rounded-l`,`rounded-ss`,`rounded-se`,`rounded-ee`,`rounded-es`,`rounded-tl`,`rounded-tr`,`rounded-br`,`rounded-bl`],"rounded-s":[`rounded-ss`,`rounded-es`],"rounded-e":[`rounded-se`,`rounded-ee`],"rounded-t":[`rounded-tl`,`rounded-tr`],"rounded-r":[`rounded-tr`,`rounded-br`],"rounded-b":[`rounded-br`,`rounded-bl`],"rounded-l":[`rounded-tl`,`rounded-bl`],"border-spacing":[`border-spacing-x`,`border-spacing-y`],"border-w":[`border-w-x`,`border-w-y`,`border-w-s`,`border-w-e`,`border-w-bs`,`border-w-be`,`border-w-t`,`border-w-r`,`border-w-b`,`border-w-l`],"border-w-x":[`border-w-r`,`border-w-l`],"border-w-y":[`border-w-t`,`border-w-b`],"border-color":[`border-color-x`,`border-color-y`,`border-color-s`,`border-color-e`,`border-color-bs`,`border-color-be`,`border-color-t`,`border-color-r`,`border-color-b`,`border-color-l`],"border-color-x":[`border-color-r`,`border-color-l`],"border-color-y":[`border-color-t`,`border-color-b`],translate:[`translate-x`,`translate-y`,`translate-none`],"translate-none":[`translate`,`translate-x`,`translate-y`,`translate-z`],"scroll-m":[`scroll-mx`,`scroll-my`,`scroll-ms`,`scroll-me`,`scroll-mbs`,`scroll-mbe`,`scroll-mt`,`scroll-mr`,`scroll-mb`,`scroll-ml`],"scroll-mx":[`scroll-mr`,`scroll-ml`],"scroll-my":[`scroll-mt`,`scroll-mb`],"scroll-p":[`scroll-px`,`scroll-py`,`scroll-ps`,`scroll-pe`,`scroll-pbs`,`scroll-pbe`,`scroll-pt`,`scroll-pr`,`scroll-pb`,`scroll-pl`],"scroll-px":[`scroll-pr`,`scroll-pl`],"scroll-py":[`scroll-pt`,`scroll-pb`],touch:[`touch-x`,`touch-y`,`touch-pz`],"touch-x":[`touch`],"touch-y":[`touch`],"touch-pz":[`touch`]},conflictingClassGroupModifiers:{"font-size":[`leading`]},postfixLookupClassGroups:[`container-type`],orderSensitiveModifiers:[`*`,`**`,`after`,`backdrop`,`before`,`details-content`,`file`,`first-letter`,`first-line`,`marker`,`placeholder`,`selection`]}});function Z(...e){return lK(LW(e))}var uK=`(max-width: 767px)`;function dK(e){return typeof window.matchMedia==`function`?window.matchMedia(e):null}function fK(e){return t=>{let n=dK(e);return n===null?()=>{}:(n.addEventListener(`change`,t),()=>n.removeEventListener(`change`,t))}}function pK(e){return()=>dK(e)?.matches??!1}function mK(){return!1}function hK(){return(0,d.useSyncExternalStore)(fK(uK),pK(uK),mK)}(0,d.createContext)(null);var gK=e=>typeof e==`boolean`?`${e}`:e===0?`0`:e,_K=LW,vK=(e,t)=>n=>{if(t?.variants==null)return _K(e,n?.class,n?.className);let{variants:r,defaultVariants:i}=t,a=Object.keys(r).map(e=>{let t=n?.[e],a=i?.[e];if(t===null)return null;let o=gK(t)||gK(a);return r[e][o]}),o=n&&Object.entries(n).reduce((e,t)=>{let[n,r]=t;return r===void 0||(e[n]=r),e},{});return _K(e,a,t?.compoundVariants?.reduce((e,t)=>{let{class:n,className:r,...a}=t;return Object.entries(a).every(e=>{let[t,n]=e;return Array.isArray(n)?n.includes({...i,...o}[t]):{...i,...o}[t]===n})?[...e,n,r]:e},[]),n?.class,n?.className)},yK=vK(`inline-flex items-center justify-center rounded-md font-medium transition-colors cursor-pointer disabled:opacity-50 disabled:pointer-events-none`,{variants:{variant:{primary:`bg-primary text-primary-foreground hover:bg-primary/90`,secondary:`bg-surface text-foreground hover:bg-surface-hover`,ghost:`hover:bg-surface-hover text-foreground-muted`,danger:`bg-danger text-white hover:bg-danger/90`,outline:`border border-border bg-transparent hover:bg-surface-hover`},size:{sm:`h-7 w-7`,md:`h-8 w-8`,lg:`h-9 w-9`}},defaultVariants:{variant:`primary`,size:`sm`}}),bK=(0,d.forwardRef)(({className:e,variant:t,size:n,icon:r,...i},a)=>(0,K.jsx)(`button`,{ref:a,className:Z(yK({variant:t,size:n}),e),...i,children:(0,K.jsx)(r,{className:`h-4 w-4`,"aria-hidden":`true`})}));bK.displayName=`IconButton`;var xK=vK(`h-7 w-full px-2.5 text-xs bg-surface border rounded-md text-foreground placeholder:text-foreground-subtle focus:outline-none focus:ring-1 focus:ring-inset focus:ring-primary transition-colors disabled:opacity-50 disabled:cursor-not-allowed`,{variants:{state:{default:`border-border`,error:`border-danger`}},defaultVariants:{state:`default`}}),SK=(0,d.forwardRef)(({className:e,state:t,leftSlot:n,rightSlot:r,...i},a)=>n||r?(0,K.jsxs)(`div`,{className:Z(`relative flex items-center`,e),children:[n&&(0,K.jsx)(`div`,{className:`absolute left-2.5 flex items-center text-foreground-subtle pointer-events-none`,children:n}),(0,K.jsx)(`input`,{ref:a,className:Z(xK({state:t}),n&&`pl-8`,r&&`pr-8`,e),...i}),r&&(0,K.jsx)(`div`,{className:`absolute right-2.5 flex items-center text-foreground-subtle`,children:r})]}):(0,K.jsx)(`input`,{ref:a,className:Z(xK({state:t}),e),...i}));SK.displayName=`Input`;var CK=(0,d.createContext)(null);function wK(){let e=(0,d.useContext)(CK);if(!e)throw Error(`Tooltip compound components must be used within <Tooltip>`);return e}function TK({children:e,className:t,open:n}){let[r,i]=(0,d.useState)(!1),a=n??r,o=(0,d.useRef)(null),s=(0,d.useId)();return(0,K.jsx)(CK.Provider,{value:{open:a,show:()=>{o.current=setTimeout(()=>i(!0),300)},hide:()=>{o.current&&clearTimeout(o.current),i(!1)},tooltipId:s},children:(0,K.jsx)(`div`,{className:Z(`relative`,t??`inline-block`),children:e})})}function EK({className:e,children:t,...n}){let{open:r,tooltipId:i}=wK();return(0,K.jsx)(`div`,{id:i,role:`tooltip`,className:Z(`absolute bottom-full left-1/2 -translate-x-1/2 mb-2 bg-foreground text-background text-xs px-2 py-1 rounded-md shadow-md whitespace-nowrap pointer-events-none transition-opacity duration-150`,r?`opacity-100`:`opacity-0`,e),...n,children:t})}var DK=`w-full min-h-[60px] rounded-md border border-border bg-background px-2.5 py-1.5 pr-9 font-mono text-xs text-foreground placeholder:text-foreground-subtle focus:outline-none focus:ring-1 focus:ring-primary disabled:opacity-50 disabled:cursor-not-allowed`,OK={WebkitTextSecurity:`disc`},kK=(0,d.forwardRef)(({value:e,onValueChange:t,shown:n,onToggleShown:r,busy:i=!1,error:a=null,toggleBlockedReason:o=null,hideToggle:s=!1,multiline:c=!1,className:l,disabled:u,...d},f)=>{let p=n?`Hide password`:`Show password`;return(0,K.jsxs)(`div`,{className:`relative w-full`,children:[c?(0,K.jsx)(`textarea`,{className:Z(DK,l),style:n?void 0:OK,value:e,disabled:u,spellCheck:!1,autoComplete:`off`,"aria-label":d[`aria-label`],placeholder:d.placeholder,onChange:e=>t(e.target.value)}):(0,K.jsx)(SK,{ref:f,...d,type:n?`text`:`password`,className:Z(`h-auto bg-background py-1.5`,!s&&`pr-9`,l),value:e,disabled:u,spellCheck:!1,autoComplete:`new-password`,onChange:e=>t(e.target.value)}),!s&&(0,K.jsxs)(TK,{open:a!==null,className:`absolute right-0.5 top-0.5`,children:[(0,K.jsx)(`span`,{className:`inline-flex`,title:o??void 0,children:(0,K.jsx)(bK,{type:`button`,variant:`ghost`,icon:i?We:n?Ee:De,"aria-label":p,"aria-pressed":n,"aria-busy":i||void 0,disabled:u||i||o!==null,className:Z(`h-6 w-6 text-foreground-subtle`,i&&`[&>svg]:animate-spin`),onClick:r})}),a!==null&&(0,K.jsx)(EK,{role:`alert`,className:`left-auto right-0 w-max max-w-[16rem] translate-x-0 whitespace-normal bg-danger text-white`,children:a})]})]})});kK.displayName=`PasswordInput`;var AK=(0,d.forwardRef)(({className:e,options:t,disabled:n,...r},i)=>(0,K.jsxs)(`div`,{className:`relative w-full`,children:[(0,K.jsx)(`select`,{ref:i,disabled:n,className:Z(`h-7 w-full px-2.5 text-xs bg-surface border border-border rounded-md text-foreground appearance-none pr-7 focus:outline-none focus:ring-1 focus:ring-primary`,`disabled:opacity-50 disabled:cursor-not-allowed`,e),...r,children:t.map(e=>(0,K.jsx)(`option`,{value:e.value,children:e.label},e.value))}),(0,K.jsx)(`div`,{className:Z(`absolute right-2 top-1/2 -translate-y-1/2 pointer-events-none text-foreground-muted`,n===!0?`opacity-50`:``),children:(0,K.jsx)(ae,{className:`h-3.5 w-3.5`})})]}));AK.displayName=`Select`,TW(`camstack:secret-reveal`,null),J.accessories.setChildHidden.useMutation,J.accessories.getStatus.useQuery,J.addonPages.listPages.useQuery,J.addons.list.useQuery,J.addons.getLogs.useQuery,J.addons.listPackages.useQuery,J.addons.installPackage.useMutation,J.addons.installFromWorkspace.useMutation,J.addons.isWorkspaceAvailable.useQuery,J.addons.listWorkspacePackages.useQuery,J.addons.uninstallPackage.useMutation,J.addons.listInstallations.useQuery,J.addons.reloadPackages.useMutation,J.addons.searchAvailable.useQuery,J.addons.listUpdates.useQuery,J.addons.updatePackage.useMutation,J.addons.rollbackPackage.useMutation,J.addons.forceRefresh.useMutation,J.addons.restartServer.useMutation,J.addons.getLastRestart.useQuery,J.addons.listFrameworkPackages.useQuery,J.addons.listCapabilityProviders.useQuery,J.addons.setCapabilityProviderEnabled.useMutation,J.addons.getVersions.useQuery,J.addons.restartAddon.useMutation,J.addons.retryLoad.useMutation,J.addons.getAutoUpdateSettings.useQuery,J.addons.setAutoUpdateSettings.useMutation,J.addons.getAddonAutoUpdate.useQuery,J.addons.setAddonAutoUpdate.useMutation,J.addons.applyAutoUpdateToAll.useMutation,J.addons.custom.useMutation,J.addons.startJob.useMutation,J.addons.getJob.useQuery,J.addons.listJobs.useQuery,J.addons.cancelJob.useMutation,J.addons.onAddonLogs.useSubscription,J.addonSettings.getGlobalSettings.useQuery,J.addonSettings.updateGlobalSettings.useMutation,J.addonSettings.getIntegrationSettings.useQuery,J.addonSettings.getDeviceSettings.useQuery,J.addonSettings.updateDeviceSettings.useMutation,J.addonWidgets.listWidgets.useQuery,J.airQualitySensor.getStatus.useQuery,J.alarmPanel.arm.useMutation,J.alarmPanel.disarm.useMutation,J.alarmPanel.trigger.useMutation,J.alarmPanel.getStatus.useQuery,J.alerts.emit.useMutation,J.alerts.update.useMutation,J.alerts.list.useQuery,J.alerts.getUnreadCount.useQuery,J.alerts.markRead.useMutation,J.alerts.markAllRead.useMutation,J.alerts.dismiss.useMutation,J.ambientLightSensor.getStatus.useQuery,J.audioAnalysis.resolveDeviceSettings.useQuery,J.audioAnalysis.getDeviceSettingsContribution.useQuery,J.audioAnalysis.getDeviceLiveContribution.useQuery,J.audioAnalysis.applyDeviceSettingsPatch.useMutation,J.audioAnalyzer.analyseChunk.useMutation,J.audioAnalyzer.classify.useQuery,J.audioAnalyzer.attachDevice.useMutation,J.audioAnalyzer.detachDevice.useMutation,J.audioAnalyzer.isReady.useQuery,J.audioAnalyzer.dispose.useMutation,J.audioAnalyzer.reprobeAudioEngine.useMutation,J.audioCodec.listSupportedCodecs.useQuery,J.audioCodec.canHandle.useQuery,J.audioCodec.createDecodeSession.useMutation,J.audioCodec.createEncodeSession.useMutation,J.audioCodec.closeSession.useMutation,J.audioCodec.pushEncodedFrame.useMutation,J.audioCodec.pullPcm.useQuery,J.audioCodec.pushPcm.useMutation,J.audioCodec.pullEncoded.useQuery,J.audioCodec.flushEncode.useMutation,J.audioCodec.listActiveSessions.useQuery,J.audioMetrics.getCurrentSnapshot.useQuery,J.audioMetrics.getHistory.useQuery,J.automationControl.enable.useMutation,J.automationControl.disable.useMutation,J.automationControl.trigger.useMutation,J.automationControl.getStatus.useQuery,J.backup.listDestinations.useQuery,J.backup.trigger.useMutation,J.backup.listRuns.useQuery,J.backup.cancel.useMutation,J.backup.list.useQuery,J.backup.listLocations.useQuery,J.backup.getEntries.useQuery,J.backup.restore.useMutation,J.backup.getEncryption.useQuery,J.backup.setupEncryption.useMutation,J.backup.disableEncryption.useMutation,J.backup.checkBackupKey.useMutation,J.backup.delete.useMutation,J.backup.listArchives.useQuery,J.backup.upsertDestinationPolicy.useMutation,J.backup.previewSchedule.useQuery,J.backup.listSchedules.useQuery,J.backup.listAvailableDatabases.useQuery,J.backup.upsertSchedule.useMutation,J.backup.deleteSchedule.useMutation,J.battery.wakeForStream.useMutation,J.battery.getStatus.useQuery,J.binary.getStatus.useQuery,J.brightness.setBrightness.useMutation,J.brightness.getStatus.useQuery,J.broker.list.useQuery,J.broker.get.useQuery,J.broker.listProviders.useQuery,J.broker.add.useMutation,J.broker.remove.useMutation,J.broker.testConnection.useMutation,J.broker.getSettings.useQuery,J.broker.setSettings.useMutation,J.broker.getBrokerConfig.useQuery,J.broker.getSettingsSchema.useQuery,J.broker.testSettings.useMutation,J.broker.publish.useMutation,J.broker.subscribe.useMutation,J.broker.unsubscribe.useMutation,J.broker.getState.useQuery,J.broker.getStatus.useQuery,J.button.press.useMutation,J.calendars.listCalendars.useQuery,J.calendars.listEvents.useQuery,J.calendars.getPreferences.useQuery,J.calendars.setCalendarPreference.useMutation,J.cameraCredentials.getCredentials.useQuery,J.cameraCredentials.getStatus.useQuery,J.cameraGridLayout.getLayout.useQuery,J.cameraGridLayout.saveLayout.useMutation,J.cameraGridLayout.getDeviceSettingsContribution.useQuery,J.cameraGridLayout.getDeviceLiveContribution.useQuery,J.cameraGridLayout.applyDeviceSettingsPatch.useMutation,J.cameraPipelineConfig.getDeviceSettingsContribution.useQuery,J.cameraPipelineConfig.getDeviceLiveContribution.useQuery,J.cameraPipelineConfig.applyDeviceSettingsPatch.useMutation,J.cameraStreams.getCameraStreams.useQuery,J.cameraStreams.getBrokerStreams.useQuery,J.cameraStreams.getRtspEntries.useQuery,J.cameraStreams.getProfileRtspEntries.useQuery,J.cameraStreams.pickStream.useQuery,J.carbonMonoxide.getStatus.useQuery,J.climateControl.setMode.useMutation,J.climateControl.setFanMode.useMutation,J.climateControl.setPreset.useMutation,J.climateControl.setTarget.useMutation,J.climateControl.setTargetRange.useMutation,J.climateControl.setTargetHumidity.useMutation,J.climateControl.setSwingVertical.useMutation,J.climateControl.setSwingHorizontal.useMutation,J.climateControl.getStatus.useQuery,J.color.setColor.useMutation,J.color.getStatus.useQuery,J.connectionTest.testSettings.useMutation,J.connectionTest.describeTest.useQuery,J.connectivity.getStatus.useQuery,J.consumables.reset.useMutation,J.consumables.getStatus.useQuery,J.contact.getStatus.useQuery,J.control.setValue.useMutation,J.control.getStatus.useQuery,J.coreBlocks.list.useQuery,J.coreBlocks.get.useQuery,J.coreBlocks.create.useMutation,J.coreBlocks.update.useMutation,J.coreBlocks.delete.useMutation,J.coreBlocks.setEnabled.useMutation,J.coreBlocks.restart.useMutation,J.coreBlocks.compile.useMutation,J.coreBlocks.getBlockSettings.useQuery,J.coreBlocks.updateBlockSettings.useMutation,J.coreBlocks.getTypeDefs.useQuery,J.coreBlocks.createComposition.useMutation,J.coreBlocks.updateComposition.useMutation,J.coreBlocks.getComposition.useQuery,J.coreBlocks.listCompositions.useQuery,J.coreBlocks.getCustomization.useQuery,J.coreBlocks.listComposableCaps.useQuery,J.coreBlocks.validateComposition.useMutation,J.cover.open.useMutation,J.cover.close.useMutation,J.cover.stop.useMutation,J.cover.setPosition.useMutation,J.cover.setTiltPosition.useMutation,J.cover.getStatus.useQuery,J.dayNight.getOptions.useQuery,J.dayNight.setSettings.useMutation,J.dayNight.getStatus.useQuery,J.decoder.getInfo.useQuery,J.decoder.reprobeHwaccel.useMutation,J.detectionPipeline.getDeviceSettingsContribution.useQuery,J.detectionPipeline.getDeviceLiveContribution.useQuery,J.detectionPipeline.applyDeviceSettingsPatch.useMutation,J.deviceAdminLink.getAdminLink.useQuery,J.deviceAdoption.listCandidateFilters.useQuery,J.deviceAdoption.listCandidates.useQuery,J.deviceAdoption.getCandidate.useQuery,J.deviceAdoption.refresh.useMutation,J.deviceAdoption.adopt.useMutation,J.deviceAdoption.release.useMutation,J.deviceAdoption.resync.useMutation,J.deviceAdoption.getStatus.useQuery,J.deviceCredentials.listDeviceCredentials.useQuery,J.deviceCredentials.startEnrollment.useMutation,J.deviceCredentials.revokeDeviceCredential.useMutation,J.deviceCredentials.getDeviceCertificateSettings.useQuery,J.deviceCredentials.setDeviceCertificateSettings.useMutation,J.deviceCredentials.deleteDeviceCredential.useMutation,J.deviceCredentials.getDeviceCaStatus.useQuery,J.deviceCredentials.renameDeviceCredential.useMutation,J.deviceDiscovery.listDiscovered.useQuery,J.deviceDiscovery.refreshDiscovery.useMutation,J.deviceDiscovery.adoptDevice.useMutation,J.deviceDiscovery.releaseDevice.useMutation,J.deviceDiscovery.getStatus.useQuery,J.deviceExport.getStatus.useQuery,J.deviceExport.listSupportedDeviceKinds.useQuery,J.deviceExport.listExposedDevices.useQuery,J.deviceExport.exposeDevice.useMutation,J.deviceExport.unexposeDevice.useMutation,J.deviceExport.getDeviceSettingsContribution.useQuery,J.deviceExport.getDeviceLiveContribution.useQuery,J.deviceExport.applyDeviceSettingsPatch.useMutation,J.deviceExtension.listSources.useQuery,J.deviceExtension.listSlots.useQuery,J.deviceExtension.listCandidates.useQuery,J.deviceExtension.setSlot.useMutation,J.deviceHistory.listSeries.useQuery,J.deviceHistory.listNodeSeries.useQuery,J.deviceHistory.query.useQuery,J.deviceHistory.queryNode.useQuery,J.deviceHistory.declareSeries.useMutation,J.deviceHistory.record.useMutation,J.deviceHistory.recordBuckets.useMutation,J.deviceHistory.getDeviceEnabled.useQuery,J.deviceHistory.setDeviceEnabled.useMutation,J.deviceHistory.getStatus.useQuery,J.deviceManager.allocateDeviceId.useMutation,J.deviceManager.migrateDevice.useMutation,J.deviceManager.registerDevice.useMutation,J.deviceManager.removeDevice.useMutation,J.deviceManager.persistConfig.useMutation,J.deviceManager.loadConfig.useQuery,J.deviceManager.loadRuntimeState.useQuery,J.deviceManager.loadMeta.useQuery,J.deviceManager.setName.useMutation,J.deviceManager.setLocation.useMutation,J.deviceManager.setType.useMutation,J.deviceManager.setIntegrationId.useMutation,J.deviceManager.setLinkDeviceId.useMutation,J.deviceManager.setPrimaryChildEntityId.useMutation,J.deviceManager.setChildLayout.useMutation,J.deviceManager.setDisplay.useMutation;var jK=J.deviceManager.getRoleDisplayDefaults.useQuery;J.deviceManager.setRoleDisplayDefaults.useMutation,J.deviceManager.getWireableFields.useQuery,J.deviceManager.setRole.useMutation,J.deviceManager.applyInitialMeta.useMutation,J.deviceManager.setMetadata.useMutation,J.deviceManager.listLocations.useQuery,J.deviceManager.addLocation.useMutation,J.deviceManager.removeLocation.useMutation,J.deviceManager.renameLocation.useMutation,J.deviceManager.listLocationIcons.useQuery,J.deviceManager.setLocationIcon.useMutation,J.deviceManager.listLocationDescriptions.useQuery,J.deviceManager.setLocationDescription.useMutation,J.deviceManager.listSiteZones.useQuery,J.deviceManager.setSiteZone.useMutation,J.deviceManager.removeSiteZone.useMutation,J.deviceManager.renameSiteZone.useMutation,J.deviceManager.setLocationZone.useMutation,J.deviceManager.setDisabled.useMutation,J.deviceManager.listPersistedByAddon.useQuery,J.deviceManager.listAll.useQuery;var MK=J.deviceManager.getDevice.useQuery;J.deviceManager.getChildren.useQuery,J.deviceManager.getChildrenBatch.useQuery,J.deviceManager.getLinkedDevices.useQuery,J.deviceManager.getLinkedDevicesBatch.useQuery,J.deviceManager.getStreamSources.useQuery,J.deviceManager.getConfigSchema.useQuery,J.deviceManager.getSettingsSchema.useQuery,J.deviceManager.updateConfig.useMutation,J.deviceManager.enable.useMutation,J.deviceManager.disable.useMutation,J.deviceManager.remove.useMutation,J.deviceManager.removeByIntegration.useMutation,J.deviceManager.getStreamProfileMap.useQuery,J.deviceManager.setStreamProfileMap.useMutation,J.deviceManager.probeStreams.useMutation,J.deviceManager.getBindings.useQuery,J.deviceManager.getBindingsBatch.useQuery,J.deviceManager.getAllBindings.useQuery,J.deviceManager.listDeviceIdsByCaps.useQuery,J.deviceManager.setWrapperActive.useMutation,J.deviceManager.getWrapperActivation.useQuery,J.deviceManager.listWrappersForCap.useQuery,J.deviceManager.listBindableCapsForDeviceType.useQuery,J.deviceManager.getDeviceSettingsAggregate.useQuery,J.deviceManager.getDeviceLiveInfoAggregate.useQuery,J.deviceManager.getDeviceAggregate.useQuery,J.deviceManager.runDeviceAction.useMutation,J.deviceManager.updateDeviceField.useMutation,J.deviceManager.updateDeviceFieldsBatch.useMutation,J.deviceManager.discoverDevices.useMutation,J.deviceManager.adoptDevice.useMutation,J.deviceManager.getCreationSchema.useQuery,J.deviceManager.createDevice.useMutation,J.deviceManager.testCreationField.useMutation,J.deviceManager.adoptionListCandidateFilters.useQuery,J.deviceManager.adoptionListCandidates.useQuery,J.deviceManager.adoptionRefresh.useMutation,J.deviceManager.adoptionAdopt.useMutation,J.deviceManager.adoptionRelease.useMutation,J.deviceManager.adoptionStartJob.useMutation,J.deviceManager.adoptionListJobs.useQuery,J.deviceManager.adoptionCancelJob.useMutation,J.deviceManager.adoptionResync.useMutation,J.deviceManager.discoveryProviders.useQuery,J.deviceManager.discoverAllProviders.useMutation,J.deviceManager.discoverProvider.useMutation,J.deviceManager.providerCreationType.useQuery,J.deviceManager.providerDiscoveryParamsSchema.useQuery,J.deviceManager.testField.useMutation,J.deviceManager.getDeviceStatusAggregate.useQuery,J.deviceManager.getDeviceStatusAggregateBatch.useQuery,J.deviceOps.getStreamSources.useQuery,J.deviceOps.getConfigEntries.useQuery,J.deviceOps.setConfig.useMutation,J.deviceOps.runAction.useMutation,J.deviceOps.removeDevice.useMutation,J.deviceOps.getSettingsSchema.useQuery,J.deviceOps.getRawState.useQuery,J.deviceProvider.start.useMutation,J.deviceProvider.stop.useMutation,J.deviceProvider.getStatus.useQuery,J.deviceProvider.getDevices.useQuery,J.deviceProvider.reloadDevice.useMutation,J.deviceProvider.supportsDiscovery.useQuery,J.deviceProvider.discoverDevices.useMutation,J.deviceProvider.getDiscoveryParamsSchema.useQuery,J.deviceProvider.getManualCreationType.useQuery,J.deviceProvider.adoptDiscoveredDevice.useMutation,J.deviceProvider.supportsManualCreation.useQuery,J.deviceProvider.getChildCreationSchema.useQuery,J.deviceProvider.createDevice.useMutation,J.deviceProvider.testCreationField.useMutation,J.deviceState.getSnapshot.useQuery,J.deviceState.getCapSlice.useQuery,J.deviceState.getAllSnapshots.useQuery,J.deviceState.setCapSlice.useMutation,J.deviceState.claimFields.useMutation,J.deviceState.patchOwnedFields.useMutation,J.deviceState.releaseClaim.useMutation,J.deviceState.listClaims.useQuery,J.deviceState.getNativeCapSlice.useQuery,J.deviceStatus.getStatus.useQuery,J.doorbell.getStatus.useQuery,J.enumSensor.getStatus.useQuery,J.eventEmitter.getStatus.useQuery,J.faceGallery.listIdentities.useQuery,J.faceGallery.createIdentity.useMutation,J.faceGallery.renameIdentity.useMutation,J.faceGallery.deleteIdentity.useMutation,J.faceGallery.listIdentitySamples.useQuery,J.faceGallery.auditIdentitySamples.useQuery,J.faceGallery.removeSample.useMutation,J.faceGallery.listRecentFaces.useQuery,J.faceGallery.getFaceByTrack.useQuery,J.faceGallery.getFaceMedia.useQuery,J.faceGallery.assignFace.useMutation,J.faceGallery.unassignFace.useMutation,J.faceGallery.deleteFace.useMutation,J.faceGallery.assignFaces.useMutation,J.faceGallery.unassignFaces.useMutation,J.faceGallery.suggestFaceClusters.useQuery,J.fanControl.setPercentage.useMutation,J.fanControl.setPreset.useMutation,J.fanControl.setDirection.useMutation,J.fanControl.setOscillating.useMutation,J.fanControl.getStatus.useQuery,J.featureProbe.getStatus.useQuery,J.flood.getStatus.useQuery,J.gas.getStatus.useQuery,J.humidifier.setOn.useMutation,J.humidifier.setTargetHumidity.useMutation,J.humidifier.setMode.useMutation,J.humidifier.getStatus.useQuery,J.humiditySensor.getStatus.useQuery,J.image.getStatus.useQuery,J.imageSettings.getOptions.useQuery,J.imageSettings.setSettings.useMutation,J.imageSettings.getStatus.useQuery,J.integrations.list.useQuery,J.integrations.get.useQuery,J.integrations.getByAddonId.useQuery,J.integrations.create.useMutation,J.integrations.update.useMutation,J.integrations.delete.useMutation,J.integrations.getSettings.useQuery,J.integrations.setSettings.useMutation,J.integrations.getAvailableTypes.useQuery,J.integrations.testConnection.useMutation,J.intercom.startSession.useMutation,J.intercom.handleAnswer.useMutation,J.intercom.stopSession.useMutation,J.intercom.startTalkSession.useMutation,J.intercom.pushTalkAudio.useMutation,J.intercom.endTalkSession.useMutation,J.intercom.getStatus.useQuery,J.keychainAdmin.status.useQuery,J.keychainAdmin.listSecrets.useQuery,J.keychainAdmin.listAudit.useQuery,J.keychainAdmin.reveal.useMutation,J.keychainAdmin.setSystemSecret.useMutation,J.keychainAdmin.deleteOrphans.useMutation,J.keychainAdmin.rotateMasterKey.useMutation,J.keychainAdmin.purgeRetiredKeys.useMutation,J.keychainAdmin.downloadRecoveryKey.useMutation,J.keychainAdmin.resetKeychain.useMutation,J.keychainAdmin.resetReport.useQuery,J.keychainAdmin.acknowledgeReset.useMutation,J.lawnMowerControl.startMowing.useMutation,J.lawnMowerControl.pause.useMutation,J.lawnMowerControl.dock.useMutation,J.lawnMowerControl.getStatus.useQuery,J.llm.generate.useMutation,J.llm.generateVision.useMutation,J.llm.cancel.useMutation,J.llm.listProfileKinds.useQuery,J.llm.listProfiles.useQuery,J.llm.upsertProfile.useMutation,J.llm.deleteProfile.useMutation,J.llm.testProfile.useMutation,J.llm.listModels.useQuery,J.llm.getDefaults.useQuery,J.llm.setDefault.useMutation,J.llm.getUsage.useQuery,J.llm.listModelCatalog.useQuery,J.llm.listRuntimeNodes.useQuery,J.llm.listNodeModels.useQuery,J.llm.resolveModelRef.useMutation,J.llm.installModel.useMutation,J.llm.deleteModel.useMutation,J.llm.getRuntimeStatus.useQuery,J.llm.startRuntime.useMutation,J.llm.stopRuntime.useMutation,J.localNetwork.list.useQuery,J.localNetwork.getPreferred.useQuery,J.localNetwork.getConnectionEndpoints.useQuery,J.localNetwork.getNotificationEndpoint.useQuery,J.localNetwork.setNotificationEndpoint.useMutation,J.localNetwork.getViewerEndpoints.useQuery,J.localNetwork.setViewerEndpoints.useMutation,J.localNetwork.getAddresses.useQuery,J.localNetwork.addCustomAddress.useMutation,J.localNetwork.removeCustomAddress.useMutation,J.localNetwork.setAddressRole.useMutation,J.localNetwork.getHubAddresses.useQuery,J.localNetwork.getAllowedAddresses.useQuery,J.localNetwork.setAllowedAddresses.useMutation,J.localNetwork.resetAllowlistToBestMatch.useMutation,J.localNetwork.getTlsStatus.useQuery,J.localNetwork.regenerateCertificate.useMutation,J.localNetwork.uploadCertificate.useMutation,J.localNetwork.downloadCa.useQuery,J.localNetwork.revertToGeneratedCertificate.useMutation,J.lockControl.lock.useMutation,J.lockControl.unlock.useMutation,J.lockControl.open.useMutation,J.lockControl.getStatus.useQuery,J.mediaPlayer.play.useMutation,J.mediaPlayer.pause.useMutation,J.mediaPlayer.stop.useMutation,J.mediaPlayer.next.useMutation,J.mediaPlayer.previous.useMutation,J.mediaPlayer.seek.useMutation,J.mediaPlayer.setVolume.useMutation,J.mediaPlayer.setMute.useMutation,J.mediaPlayer.setShuffle.useMutation,J.mediaPlayer.setRepeat.useMutation,J.mediaPlayer.selectSource.useMutation,J.mediaPlayer.playMedia.useMutation,J.mediaPlayer.getStatus.useQuery,J.meshNetwork.getStatus.useQuery,J.meshNetwork.join.useMutation,J.meshNetwork.startLogin.useMutation,J.meshNetwork.leave.useMutation,J.meshNetwork.logout.useMutation,J.meshNetwork.listPeers.useQuery,J.meshNetwork.testConnection.useMutation,J.metricsProvider.collectSnapshot.useQuery,J.metricsProvider.getCached.useQuery,J.metricsProvider.getCurrent.useQuery,J.metricsProvider.getDiskSpace.useQuery,J.metricsProvider.getGpuInfo.useQuery,J.metricsProvider.getCpuTemperature.useQuery,J.metricsProvider.getProcessStats.useQuery,J.metricsProvider.listAddonInstances.useQuery,J.metricsProvider.getAddonStats.useQuery,J.metricsProvider.listNodeProcesses.useQuery,J.metricsProvider.getLoadSeries.useQuery,J.motion.isDetected.useQuery,J.motion.getStatus.useQuery,J.motionDetection.analyze.useMutation,J.motionDetection.removeCamera.useMutation,J.motionDetection.reset.useMutation,J.motionDetection.getDeviceSettingsContribution.useQuery,J.motionDetection.getDeviceLiveContribution.useQuery,J.motionDetection.applyDeviceSettingsPatch.useMutation,J.motionTrigger.setMotionTrigger.useMutation,J.motionTrigger.getStatus.useQuery,J.motionZones.getOptions.useQuery,J.motionZones.setZone.useMutation,J.motionZones.getStatus.useQuery,J.mqttBroker.listBrokers.useQuery,J.mqttBroker.getBrokerConfig.useQuery,J.mqttBroker.addBroker.useMutation,J.mqttBroker.removeBroker.useMutation,J.mqttBroker.testConnection.useMutation,J.mqttBroker.startEmbeddedBroker.useMutation,J.mqttBroker.stopEmbeddedBroker.useMutation,J.mqttBroker.getStatus.useQuery,J.nativeObjectDetection.getOptions.useQuery,J.nativeObjectDetection.setSettings.useMutation,J.nativeObjectDetection.setEnabled.useMutation,J.nativeObjectDetection.getStatus.useQuery,J.navigation.move.useMutation,J.navigation.stop.useMutation,J.navigation.goToPoint.useMutation,J.navigation.listActions.useQuery,J.navigation.runAction.useMutation,J.navigation.playSound.useMutation,J.navigation.setLightOn.useMutation,J.navigation.setLightMode.useMutation,J.navigation.setLightLevel.useMutation,J.navigation.getFeatures.useQuery,J.navigation.getStatus.useQuery,J.networkAccess.start.useMutation,J.networkAccess.stop.useMutation,J.networkAccess.getEndpoint.useQuery,J.networkAccess.getStatus.useQuery,J.networkAccess.listEndpoints.useQuery,J.networkLink.getStatus.useQuery,J.networkQuality.getDeviceStats.useQuery,J.networkQuality.getAllStats.useQuery,J.networkQuality.reportClientStats.useMutation,J.nodes.topology.useQuery,J.nodes.directory.useQuery,J.nodes.deployAddon.useMutation,J.nodes.undeployAddon.useMutation,J.nodes.restartAddon.useMutation,J.nodes.restartProcess.useMutation,J.nodes.restartNode.useMutation,J.nodes.shutdownNode.useMutation,J.nodes.renameNode.useMutation,J.nodes.clusterAddonStatus.useQuery,J.nodes.getCapUsageGraph.useQuery,J.nodes.getNodeAddons.useQuery,J.nodes.setProcessLogLevel.useMutation,J.nodes.executeQuery.useMutation,J.notificationOutput.listTargetKinds.useQuery,J.notificationOutput.listTargets.useQuery,J.notificationOutput.getTarget.useQuery,J.notificationOutput.discoverTargets.useQuery,J.notificationOutput.probeTargetConfig.useMutation,J.notificationOutput.send.useMutation,J.notificationOutput.testTarget.useMutation,J.notificationOutput.upsertTarget.useMutation,J.notificationOutput.deleteTarget.useMutation,J.notificationOutput.setTargetEnabled.useMutation,J.notificationRules.listRules.useQuery,J.notificationRules.getRule.useQuery,J.notificationRules.createRule.useMutation,J.notificationRules.updateRule.useMutation,J.notificationRules.deleteRule.useMutation,J.notificationRules.setRuleEnabled.useMutation,J.notificationRules.listSequences.useQuery,J.notificationRules.getSequence.useQuery,J.notificationRules.createSequence.useMutation,J.notificationRules.updateSequence.useMutation,J.notificationRules.deleteSequence.useMutation,J.notificationRules.getClipRetentionAsks.useQuery,J.notificationRules.listDeviceMutes.useQuery,J.notificationRules.setDeviceMuted.useMutation,J.notificationRules.testRule.useMutation,J.notificationRules.previewStateSummary.useMutation,J.notificationRules.getConditionCatalog.useQuery,J.notificationRules.getTemplateCatalog.useQuery,J.notificationRules.previewTemplate.useMutation,J.notificationRules.getHistory.useQuery,J.notificationRules.getRuleLastRuns.useQuery,J.notificationRules.resolveArtifactUrl.useQuery,J.notificationRules.listSnoozes.useQuery,J.notificationRules.createSnooze.useMutation,J.notificationRules.cancelSnooze.useMutation,J.notificationRules.getAlarmConfig.useQuery,J.notificationRules.setAlarmConfig.useMutation,J.notificationRules.createAlarmProfile.useMutation,J.notificationRules.renameAlarmProfile.useMutation,J.notificationRules.deleteAlarmProfile.useMutation,J.notificationRules.activateAlarmProfile.useMutation,J.notificationRules.getAlarmSensors.useQuery,J.notifier.send.useMutation,J.notifier.cancel.useMutation,J.notifier.getStatus.useQuery,J.numericSensor.getStatus.useQuery,J.oidcConnections.connectionFormSchema.useQuery,J.oidcConnections.listConnections.useQuery,J.oidcConnections.createConnection.useMutation,J.oidcConnections.updateConnection.useMutation,J.oidcConnections.deleteConnection.useMutation,J.osd.setOverlay.useMutation,J.osd.getStatus.useQuery,J.osdManager.getDeviceOsd.useQuery,J.osdManager.getSourceCatalog.useQuery,J.osdManager.getConditionSupport.useQuery,J.osdManager.setSlotBinding.useMutation,J.osdManager.clearSlotBinding.useMutation,J.osdManager.setSlotCameraEnabled.useMutation,J.osdManager.copyDeviceConfiguration.useMutation,J.osdManager.previewSlot.useMutation,J.osdManager.renderDevice.useMutation,J.osdManager.listTemplates.useQuery,J.osdManager.upsertTemplate.useMutation,J.osdManager.deleteTemplate.useMutation,J.petFeeder.feed.useMutation,J.petFeeder.cancelFeed.useMutation,J.petFeeder.resetDesiccant.useMutation,J.petFeeder.markFoodReplenished.useMutation,J.petFeeder.callPet.useMutation,J.petFeeder.playSound.useMutation,J.petFeeder.setChildLock.useMutation,J.petFeeder.setIndicatorLight.useMutation,J.petFeeder.setFeedSound.useMutation,J.petFeeder.setVolume.useMutation,J.petFeeder.getStatus.useQuery,J.pipelineAnalytics.getActiveTracks.useQuery,J.pipelineAnalytics.getTrack.useQuery,J.pipelineAnalytics.listTracks.useQuery,J.pipelineAnalytics.listRecentTracks.useQuery,J.pipelineAnalytics.clearTracks.useMutation,J.pipelineAnalytics.getMotionEvents.useQuery,J.pipelineAnalytics.getObjectEvents.useQuery,J.pipelineAnalytics.getAudioEvents.useQuery,J.pipelineAnalytics.listEventKinds.useQuery,J.pipelineAnalytics.listEventKindsBatch.useQuery,J.pipelineAnalytics.getSensorEvents.useQuery,J.pipelineAnalytics.getKeyEvents.useQuery,J.pipelineAnalytics.getKeyEventsBatch.useQuery,J.pipelineAnalytics.readLongTermSeries.useQuery,J.pipelineAnalytics.getEventDensity.useQuery,J.pipelineAnalytics.getEventDensityBatch.useQuery,J.pipelineAnalytics.pruneEventsBefore.useMutation,J.pipelineAnalytics.pruneTracksBefore.useMutation,J.pipelineAnalytics.wipeAllAnalytics.useMutation,J.pipelineAnalytics.reconcileFromDisk.useMutation,J.pipelineAnalytics.deleteTracks.useMutation,J.pipelineAnalytics.setTrackFlags.useMutation,J.pipelineAnalytics.listArchivedDebugNotes.useQuery,J.pipelineAnalytics.setTrackRelation.useMutation,J.pipelineAnalytics.clearTrackRelation.useMutation,J.pipelineAnalytics.setTrackPurity.useMutation,J.pipelineAnalytics.listTrackRelations.useQuery,J.pipelineAnalytics.listBirthDecisions.useQuery,J.pipelineAnalytics.getEventStoreFootprint.useQuery,J.pipelineAnalytics.getEventMediaFootprintByKind.useQuery,J.pipelineAnalytics.pruneEvents.useMutation,J.pipelineAnalytics.deleteDeviceEvents.useMutation,J.pipelineAnalytics.pauseForStorageMigration.useMutation,J.pipelineAnalytics.resumeForStorageMigration.useMutation,J.pipelineAnalytics.refreshStorageLocationsForMigration.useMutation,J.pipelineAnalytics.startStorageMigrationMove.useMutation,J.pipelineAnalytics.getStorageMigrationMoveStatus.useQuery,J.pipelineAnalytics.cancelStorageMigrationMove.useMutation,J.pipelineAnalytics.relocateMedia.useMutation,J.pipelineAnalytics.countUnstampedEventMedia.useQuery,J.pipelineAnalytics.countRelocatableMedia.useQuery,J.pipelineAnalytics.listRelocateMediaJobs.useQuery,J.pipelineAnalytics.cancelRelocateMedia.useMutation,J.pipelineAnalytics.listOpsLog.useQuery,J.pipelineAnalytics.reclaimDebugMedia.useMutation,J.pipelineAnalytics.getMediaReclaimStatus.useQuery,J.pipelineAnalytics.getTrainingExportSummary.useQuery,J.pipelineAnalytics.getTrainingExportUrl.useQuery,J.pipelineAnalytics.listRetrainStaging.useQuery,J.pipelineAnalytics.listRetrainCorpusPage.useQuery,J.pipelineAnalytics.getRetrainCorpusKpi.useQuery,J.pipelineAnalytics.listRetrainFrames.useQuery,J.pipelineAnalytics.selectRetrainFrames.useMutation,J.pipelineAnalytics.deselectRetrainFrame.useMutation,J.pipelineAnalytics.getRetrainFrameImage.useQuery,J.pipelineAnalytics.proposeRetrainAnnotations.useMutation,J.pipelineAnalytics.listRetrainAnnotations.useQuery,J.pipelineAnalytics.saveRetrainAnnotations.useMutation,J.pipelineAnalytics.backfillRetrainOrigins.useMutation,J.pipelineAnalytics.completeRetrainTrack.useMutation,J.pipelineAnalytics.restageRetrainTrack.useMutation,J.pipelineAnalytics.getRetrainExportUrl.useQuery,J.pipelineAnalytics.setRetrainFrameComplete.useMutation,J.pipelineAnalytics.writeRetrainArchive.useMutation,J.pipelineAnalytics.offerRetrainArchive.useMutation,J.pipelineAnalytics.listRetrainAssistProfiles.useQuery,J.pipelineAnalytics.proposeRetrainAnnotationsWithLlm.useMutation,J.pipelineAnalytics.createRetrainCollection.useMutation,J.pipelineAnalytics.listRetrainCollections.useQuery,J.pipelineAnalytics.resolveRetrainTrainingCorpus.useQuery,J.pipelineAnalytics.renameRetrainCollection.useMutation,J.pipelineAnalytics.deleteRetrainCollection.useMutation,J.pipelineAnalytics.addRetrainFrameFromRecording.useMutation,J.pipelineAnalytics.addRetrainFramesToCollection.useMutation,J.pipelineAnalytics.removeRetrainFrameFromCollection.useMutation,J.pipelineAnalytics.listRetrainCollectionFrames.useQuery,J.pipelineAnalytics.getEventMedia.useQuery,J.pipelineAnalytics.getTrackMedia.useQuery,J.pipelineAnalytics.listTrackMedia.useQuery,J.pipelineAnalytics.listEventMedia.useQuery,J.pipelineAnalytics.ownersWithMedia.useQuery,J.pipelineAnalytics.searchObjectEvents.useQuery,J.pipelineAnalytics.wipeObjectEmbeddings.useMutation,J.pipelineAnalytics.rebuildObjectEmbeddings.useMutation,J.pipelineAnalytics.getObjectEmbeddingRebuildStatus.useQuery,J.pipelineAnalytics.getDeviceSettingsContribution.useQuery,J.pipelineAnalytics.getDeviceLiveContribution.useQuery,J.pipelineAnalytics.applyDeviceSettingsPatch.useMutation,J.pipelineExecutor.getAvailableEngines.useQuery,J.pipelineExecutor.getSelectedEngine.useQuery,J.pipelineExecutor.getDefaultSteps.useQuery,J.pipelineExecutor.getEngineProvisioning.useQuery,J.pipelineExecutor.getVideoPipelineSteps.useQuery,J.pipelineExecutor.setVideoPipelineSteps.useMutation,J.pipelineExecutor.clearDeviceOverrides.useMutation,J.pipelineExecutor.clearModelBoundDeviceOverrides.useMutation,J.pipelineExecutor.getInferenceDeviceHealth.useQuery,J.pipelineExecutor.rearmInferenceDevice.useMutation,J.pipelineExecutor.getSchema.useQuery,J.pipelineExecutor.getGlobalSteps.useQuery,J.pipelineExecutor.getGlobalPipelineConfig.useQuery,J.pipelineExecutor.getOrchestratorConfigSchema.useQuery,J.pipelineExecutor.validatePipeline.useQuery,J.pipelineExecutor.getCapabilities.useQuery,J.pipelineExecutor.getAddonModels.useQuery,J.pipelineExecutor.downloadModel.useMutation,J.pipelineExecutor.deleteModel.useMutation,J.pipelineExecutor.runPipeline.useMutation,J.pipelineExecutor.runPipelineBatch.useMutation,J.pipelineExecutor.cacheFrameInPool.useMutation,J.pipelineExecutor.inferCached.useMutation,J.pipelineExecutor.uncacheFrame.useMutation,J.pipelineExecutor.getEffectiveTuning.useQuery,J.pipelineExecutor.listLoadedEngines.useQuery,J.pipelineExecutor.spinEngine.useMutation,J.pipelineExecutor.killEngine.useMutation,J.pipelineExecutor.listReferenceImages.useQuery,J.pipelineExecutor.getReferenceImage.useQuery,J.pipelineExecutor.getReferenceAudioFiles.useQuery,J.pipelineExecutor.getReferenceAudio.useQuery,J.pipelineExecutor.getAudioCapabilities.useQuery,J.pipelineExecutor.runAudioTest.useMutation,J.pipelineExecutor.getDetectionConfigSchema.useQuery,J.pipelineOrchestrator.requestOccupancyLook.useMutation,J.pipelineOrchestrator.pauseForStorageMigration.useMutation,J.pipelineOrchestrator.resumeForStorageMigration.useMutation,J.pipelineOrchestrator.assignPipeline.useMutation,J.pipelineOrchestrator.unassignPipeline.useMutation,J.pipelineOrchestrator.setPipelineDevicePin.useMutation,J.pipelineOrchestrator.getPipelineDevicePin.useQuery,J.pipelineOrchestrator.rebalance.useMutation,J.pipelineOrchestrator.getPipelineAssignments.useQuery,J.pipelineOrchestrator.getPipelineAssignment.useQuery,J.pipelineOrchestrator.getAgentLoad.useQuery,J.pipelineOrchestrator.getClusterModelChoice.useQuery,J.pipelineOrchestrator.getGlobalMetrics.useQuery,J.pipelineOrchestrator.getCameraMetrics.useQuery,J.pipelineOrchestrator.getCapabilityBindings.useQuery,J.pipelineOrchestrator.setCapabilityBinding.useMutation,J.pipelineOrchestrator.getIngestOwner.useQuery,J.pipelineOrchestrator.assignAudio.useMutation,J.pipelineOrchestrator.unassignAudio.useMutation,J.pipelineOrchestrator.getAudioAssignment.useQuery,J.pipelineOrchestrator.getAudioNodeLoad.useQuery,J.pipelineOrchestrator.getAudioAssignments.useQuery,J.pipelineOrchestrator.getAgentSettings.useQuery,J.pipelineOrchestrator.listAgentSettings.useQuery,J.pipelineOrchestrator.removeAgentSettings.useMutation,J.pipelineOrchestrator.setAgentMaxCameras.useMutation,J.pipelineOrchestrator.setAgentCapabilities.useMutation,J.pipelineOrchestrator.setAgentDecodeLimits.useMutation,J.pipelineOrchestrator.setAgentReachableHost.useMutation,J.pipelineOrchestrator.setAgentInferenceDevices.useMutation,J.pipelineOrchestrator.getNodeInferenceDevices.useQuery,J.pipelineOrchestrator.resetNodePipelineDefaults.useMutation,J.pipelineOrchestrator.planAutoTune.useQuery,J.pipelineOrchestrator.applyAutoTune.useMutation,J.pipelineOrchestrator.setLoadBalancingShares.useMutation,J.pipelineOrchestrator.getPlacementStats.useQuery,J.pipelineOrchestrator.suggestShares.useQuery,J.pipelineOrchestrator.getEffectiveShares.useQuery,J.pipelineOrchestrator.setShareSource.useMutation,J.pipelineOrchestrator.getNodeBenchmarkPreflight.useQuery,J.pipelineOrchestrator.startNodeBenchmark.useMutation,J.pipelineOrchestrator.getNodeBenchmarkStatus.useQuery,J.pipelineOrchestrator.abortNodeBenchmark.useMutation,J.pipelineOrchestrator.getNodeBenchmarkCandidates.useQuery,J.pipelineOrchestrator.listNodeBenchmarkResults.useQuery,J.pipelineOrchestrator.deleteNodeBenchmarkResult.useMutation,J.pipelineOrchestrator.getCameraSettings.useQuery,J.pipelineOrchestrator.setCameraStepToggle.useMutation,J.pipelineOrchestrator.getCameraDetectionSource.useQuery,J.pipelineOrchestrator.setCameraDetectionSource.useMutation,J.pipelineOrchestrator.getCameraStepOverrides.useQuery,J.pipelineOrchestrator.setCameraStepOverride.useMutation,J.pipelineOrchestrator.setCameraStepSettings.useMutation,J.pipelineOrchestrator.setCameraPipelineForAgent.useMutation,J.pipelineOrchestrator.resolvePipeline.useQuery,J.pipelineOrchestrator.getCameraSwitches.useQuery,J.pipelineOrchestrator.setCameraSwitch.useMutation,J.pipelineOrchestrator.getCameraStatus.useQuery,J.pipelineOrchestrator.getCameraStatuses.useQuery,J.pipelineOrchestrator.setCameraSensors.useMutation,J.pipelineOrchestrator.reconcileFromDisk.useMutation,J.pipelineOrchestrator.getReconcileFromDiskStatus.useQuery,J.pipelineOrchestrator.getDeviceSettingsContribution.useQuery,J.pipelineOrchestrator.getDeviceLiveContribution.useQuery,J.pipelineOrchestrator.applyDeviceSettingsPatch.useMutation,J.pipelineRunner.attachCamera.useMutation,J.pipelineRunner.detachCamera.useMutation,J.pipelineRunner.reportMotion.useMutation,J.pipelineRunner.getLocalLoad.useQuery,J.pipelineRunner.getLocalMetrics.useQuery,J.pipelineRunner.getCameraMetrics.useQuery,J.pipelineRunner.getAllCameraMetrics.useQuery,J.pipelineRunner.getLocalCameras.useQuery,J.pipelineRunner.requestOccupancyBurst.useMutation,J.pipelineRunner.getNativeCrop.useQuery,J.pipelineRunner.runDetailSubtree.useMutation,J.pipelineRunner.runStatelessStep.useMutation,J.pipelineRunner.parkTrackFrame.useMutation,J.pipelineRunner.getParkedTrackFrame.useQuery,J.pipelineRunner.releaseParkedTrackFrames.useMutation,J.pipelineRunner.startNodeBench.useMutation,J.pipelineRunner.getNodeBenchStatus.useQuery,J.pipelineRunner.abortNodeBench.useMutation,J.plateGallery.listPlates.useQuery,J.plateGallery.getPlateByTrack.useQuery,J.plateGallery.getPlateMedia.useQuery,J.plateGallery.searchPlates.useQuery,J.plateGallery.suggestPlateClusters.useQuery,J.plateGallery.correctPlateText.useMutation,J.plateGallery.deletePlate.useMutation,J.plateGallery.listVehicles.useQuery,J.plateGallery.createVehicle.useMutation,J.plateGallery.renameVehicle.useMutation,J.plateGallery.deleteVehicle.useMutation,J.plateGallery.listVehicleSamples.useQuery,J.plateGallery.removeVehicleSample.useMutation,J.plateGallery.assignPlate.useMutation,J.plateGallery.unassignPlate.useMutation,J.plateGallery.assignPlates.useMutation,J.plateGallery.unassignPlates.useMutation,J.powerMeter.getStatus.useQuery,J.presence.getStatus.useQuery,J.pressureSensor.getStatus.useQuery,J.privacyMask.getOptions.useQuery,J.privacyMask.setMask.useMutation,J.privacyMask.setAudioEnabled.useMutation,J.privacyMask.getStatus.useQuery,J.ptz.move.useMutation,J.ptz.continuousMove.useMutation,J.ptz.stop.useMutation,J.ptz.getPresets.useQuery,J.ptz.goToPreset.useMutation,J.ptz.savePreset.useMutation,J.ptz.deletePreset.useMutation,J.ptz.getOptions.useQuery,J.ptz.goHome.useMutation,J.ptz.getHomePreset.useQuery,J.ptz.setHomePreset.useMutation,J.ptz.captureHomeHere.useMutation,J.ptz.getHomeReturn.useQuery,J.ptz.setHomeReturn.useMutation,J.ptz.getPosition.useQuery,J.ptz.setAutofocus.useMutation,J.ptz.getStatus.useQuery,J.ptzAutotrack.getStatus.useQuery,J.ptzAutotrack.setEnabled.useMutation,J.ptzAutotrack.getSettings.useQuery,J.ptzAutotrack.setSettings.useMutation,J.reboot.reboot.useMutation,J.recording.listSources.useQuery,J.recording.getAvailability.useQuery,J.recording.getDaysWithRecordings.useQuery,J.recording.getPlayback.useQuery,J.recording.getPlaybackOptions.useQuery,J.recordingArchive.getAvailabilityBatch.useQuery,J.recordingArchive.getDaysWithRecordingsBatch.useQuery,J.recordingArchive.getStorageUsage.useQuery,J.recordingArchive.getDeviceConfig.useQuery,J.recordingArchive.locateSegment.useQuery,J.recordingArchive.readSegmentBytes.useQuery,J.recordingArchive.readGopBytes.useQuery,J.recordingArchive.readWindowBytes.useQuery,J.recordingArchive.setDeviceConfig.useMutation,J.recordingArchive.rescanStorage.useMutation,J.recordingArchive.pruneFootage.useMutation,J.recordingArchive.deleteFootprint.useMutation,J.recordingArchive.listOpsLog.useQuery,J.recordingArchive.renderGif.useMutation,J.recordingArchive.renderClip.useMutation,J.recordingArchive.pauseForStorageMigration.useMutation,J.recordingArchive.resumeForStorageMigration.useMutation,J.recordingArchive.refreshStorageLocationsForMigration.useMutation,J.recordingArchive.startStorageMigrationMove.useMutation,J.recordingArchive.getStorageMigrationMoveStatus.useQuery,J.recordingArchive.cancelStorageMigrationMove.useMutation,J.recordingArchive.relocateFootage.useMutation,J.recordingArchive.listRelocateJobs.useQuery,J.recordingArchive.getRelocateResidue.useQuery,J.recordingArchive.reconcileLedgerAgainstDisk.useMutation,J.recordingArchive.cancelRelocateJob.useMutation,J.recordingArchive.planStorageRebalance.useQuery,J.recordingArchive.startStorageRebalance.useMutation,J.recordingArchive.getPlacement.useQuery,J.recordingArchive.setDevicePlacement.useMutation,J.recordingArchive.getStatus.useQuery,J.recordingArchive.getDeviceSettingsContribution.useQuery,J.recordingArchive.getDeviceLiveContribution.useQuery,J.recordingArchive.applyDeviceSettingsPatch.useMutation,J.recordingExport.createExport.useMutation,J.recordingExport.listExports.useQuery,J.recordingExport.getExport.useQuery,J.recordingExport.cancelExport.useMutation,J.recordingExport.deleteExport.useMutation,J.recordingExport.getDownloadUrl.useQuery,J.recordingExport.readExportBytes.useQuery,J.recordingOnboard.getOptions.useQuery,J.recordingOnboard.setSettings.useMutation,J.recordingOnboard.getStatus.useQuery,J.recordingSignal.getStatus.useQuery,J.sceneMonitor.listScenes.useQuery,J.sceneMonitor.listScenesBatch.useQuery,J.sceneMonitor.createScene.useMutation,J.sceneMonitor.updateScene.useMutation,J.sceneMonitor.deleteScene.useMutation,J.sceneMonitor.captureReference.useMutation,J.sceneMonitor.deleteReference.useMutation,J.sceneMonitor.recheckNow.useMutation,J.sceneMonitor.resetScene.useMutation,J.sceneMonitor.getStatus.useQuery,J.scriptRunner.run.useMutation,J.scriptRunner.stop.useMutation,J.scriptRunner.getStatus.useQuery,J.serverManagement.getServerPackageStatus.useQuery,J.serverManagement.checkServerUpdate.useMutation,J.serverManagement.applyServerUpdate.useMutation,J.serverManagement.rollbackServerUpdate.useMutation,J.serverManagement.restartServer.useMutation,J.settingsStore.get.useQuery,J.settingsStore.set.useMutation,J.settingsStore.query.useQuery,J.settingsStore.upsert.useMutation,J.settingsStore.upsertMany.useMutation,J.settingsStore.insert.useMutation,J.settingsStore.insertMany.useMutation,J.settingsStore.transact.useMutation,J.settingsStore.update.useMutation,J.settingsStore.delete.useMutation,J.settingsStore.deleteWhere.useMutation,J.settingsStore.updateWhere.useMutation,J.settingsStore.count.useQuery,J.settingsStore.aggregate.useQuery,J.settingsStore.histogram.useQuery,J.settingsStore.isEmpty.useQuery,J.settingsStore.declareCollection.useMutation,J.smoke.getStatus.useQuery,J.snapshot.getSnapshot.useQuery,J.snapshot.invalidateCache.useMutation,J.snapshot.getSnapshotOverview.useQuery,J.snapshot.getDebugState.useQuery,J.snapshot.getSnapshotLinks.useQuery,J.snapshot.getStatus.useQuery,J.snapshot.getDeviceSettingsContribution.useQuery,J.snapshot.getDeviceLiveContribution.useQuery,J.snapshot.applyDeviceSettingsPatch.useMutation,J.storage.resolve.useQuery,J.storage.write.useMutation,J.storage.read.useQuery,J.storage.exists.useQuery,J.storage.list.useQuery,J.storage.delete.useMutation,J.storage.getAvailableSpace.useQuery,J.storage.beginUpload.useMutation,J.storage.writeChunk.useMutation,J.storage.finalizeUpload.useMutation,J.storage.abortUpload.useMutation,J.storage.beginDownload.useMutation,J.storage.readChunk.useQuery,J.storage.endDownload.useMutation,J.storage.listLocations.useQuery,J.storage.listLocationDeclarations.useQuery,J.storage.upsertLocation.useMutation,J.storage.deleteLocation.useMutation,J.storage.listDrainProgress.useQuery,J.storage.testLocation.useQuery,J.storage.listProviders.useQuery,J.storage.testConfig.useQuery,J.storageMigration.plan.useQuery,J.storageMigration.start.useMutation,J.storageMigration.status.useQuery,J.storageMigration.cancel.useMutation,J.storageMigration.movers.useQuery,J.storageMigration.residue.useQuery,J.storageMigration.drain.useMutation,J.storageMigration.cleanupStart.useMutation,J.storageMigration.cleanupStatus.useQuery,J.storageMigration.cleanupCancel.useMutation,J.storageMigration.history.useQuery,J.streamBroker.reportStreamSignal.useMutation,J.streamBroker.publishCameraStream.useMutation,J.streamBroker.retractCameraStream.useMutation,J.streamBroker.assignProfile.useMutation,J.streamBroker.unassignProfile.useMutation,J.streamBroker.forgetDeviceHardware.useMutation,J.streamBroker.renderPreBufferClip.useMutation,J.streamBroker.produceEventMedia.useMutation,J.streamBroker.fetchEventMedia.useMutation,J.streamBroker.listAllCameraStreams.useQuery,J.streamBroker.listAllProfileSlots.useQuery,J.streamBroker.getBrokerStats.useQuery,J.streamBroker.probeStream.useMutation,J.streamBroker.listClients.useQuery,J.streamBroker.getLiveViewerCounts.useQuery,J.streamBroker.killClient.useMutation,J.streamBroker.restartProfile.useMutation,J.streamBroker.getStreamUrl.useQuery,J.streamBroker.getStreamWithCodec.useMutation,J.streamBroker.releaseStreamWithCodec.useMutation,J.streamBroker.acquireEgressTranscode.useMutation,J.streamBroker.releaseEgressTranscode.useMutation,J.streamBroker.subscribeAudioChunks.useMutation,J.streamBroker.pullAudioChunks.useQuery,J.streamBroker.unsubscribeAudioChunks.useMutation,J.streamBroker.setPreBufferDuration.useMutation,J.streamBroker.getPreBufferInfo.useQuery,J.streamBroker.getRtspPort.useQuery,J.streamBroker.getAllRtspEntries.useQuery,J.streamBroker.getRtspEntry.useQuery,J.streamBroker.regenerateRtspToken.useMutation,J.streamBroker.setRtspEnabled.useMutation,J.streamBroker.isRtspEnabled.useQuery,J.streamBroker.getDeviceAudioMute.useQuery,J.streamBroker.setDeviceAudioMute.useMutation,J.streamBroker.getDeviceSettingsContribution.useQuery,J.streamBroker.getDeviceLiveContribution.useQuery,J.streamBroker.applyDeviceSettingsPatch.useMutation,J.streamCatalog.getCatalog.useQuery,J.streamParams.getOptions.useQuery,J.streamParams.setProfile.useMutation,J.streamParams.getConfigSchema.useQuery,J.streamParams.getStatus.useQuery,J.streamSignals.listSignals.useQuery,J.switch.setState.useMutation,J.switch.getStatus.useQuery,J.system.info.useQuery,J.system.health.useQuery,J.system.featureFlags.useQuery,J.system.networkAddresses.useQuery,J.system.getRetentionConfig.useQuery,J.system.setRetentionConfig.useMutation,J.system.forceRetentionCleanup.useMutation,J.system.getSiteLocation.useQuery,J.system.setSiteLocation.useMutation,J.system.detectSiteLocation.useMutation,J.system.getRequestCensus.useQuery,J.system.getLoadContributions.useQuery,J.system.getFailureContributions.useQuery,J.system.getLoggingSettings.useQuery,J.system.setLoggingSettings.useMutation,J.tamper.getStatus.useQuery,J.temperatureSensor.getStatus.useQuery,J.terminalSession.listProfiles.useQuery,J.terminalSession.listInstances.useQuery,J.terminalSession.createInstance.useMutation,J.terminalSession.updateInstance.useMutation,J.terminalSession.deleteInstance.useMutation,J.terminalSession.setInstanceEnabled.useMutation,J.terminalSession.listLegacyCameras.useQuery,J.terminalSession.adoptLegacyMonitor.useMutation,J.terminalSession.listSessions.useQuery,J.terminalSession.openSession.useMutation,J.terminalSession.resize.useMutation,J.terminalSession.pullOutput.useMutation,J.terminalSession.writeInput.useMutation,J.terminalSession.close.useMutation,J.toast.onToast.useSubscription,J.training.listBaseModels.useQuery,J.training.planJob.useQuery,J.training.startJob.useMutation,J.training.startJobBatch.useMutation,J.training.listJobs.useQuery,J.training.getJob.useQuery,J.training.cancelJob.useMutation,J.training.getJobResult.useQuery,J.training.registerResult.useMutation,J.training.canaryResult.useMutation,J.training.rollbackCanary.useMutation,J.training.discardResult.useMutation,J.turnProvider.getTurnServers.useQuery,J.update.installUpdate.useMutation,J.update.getStatus.useQuery,J.userManagement.listUsers.useQuery,J.userManagement.createUser.useMutation,J.userManagement.updateUser.useMutation,J.userManagement.deleteUser.useMutation,J.userManagement.resetPassword.useMutation,J.userManagement.setUserScopes.useMutation,J.userManagement.validateCredentials.useMutation,J.userManagement.listApiKeys.useQuery,J.userManagement.revokeApiKey.useMutation,J.userManagement.createScopedToken.useMutation,J.userManagement.revokeScopedToken.useMutation,J.userManagement.validateScopedToken.useQuery,J.userManagement.listScopedTokens.useQuery,J.userManagement.setupTotp.useMutation,J.userManagement.confirmTotp.useMutation,J.userManagement.disableTotp.useMutation,J.userManagement.getTotpStatus.useQuery,J.userManagement.verifyTotp.useMutation,J.userManagement.oauthIssueCode.useMutation,J.userManagement.oauthExchangeCode.useMutation,J.userManagement.oauthRefresh.useMutation,J.userManagement.oauthVerifyAccessToken.useQuery,J.userManagement.listExternalIdentities.useQuery,J.userManagement.findUserByExternalIdentity.useQuery,J.userManagement.unlinkExternalIdentity.useMutation,J.userManagement.listOauthSessions.useQuery,J.userManagement.revokeOauthSession.useMutation,J.vacuumControl.start.useMutation,J.vacuumControl.pause.useMutation,J.vacuumControl.stop.useMutation,J.vacuumControl.returnToBase.useMutation,J.vacuumControl.locate.useMutation,J.vacuumControl.setFanSpeed.useMutation,J.vacuumControl.getStatus.useQuery,J.valve.open.useMutation,J.valve.close.useMutation,J.valve.stop.useMutation,J.valve.setPosition.useMutation,J.valve.getStatus.useQuery,J.vibration.getStatus.useQuery,J.videoclips.listClips.useQuery,J.videoclips.listSources.useQuery,J.videoclips.getClipPlayback.useQuery,J.videoclips.readClipBytes.useQuery,J.videoclips.offerClipBytes.useQuery,J.videoclips.dialClipStream.useQuery,J.videoclips.getPlaybackOptions.useQuery,J.waterHeater.setTargetTemp.useMutation,J.waterHeater.setOperationMode.useMutation,J.waterHeater.setAway.useMutation,J.waterHeater.getStatus.useQuery,J.weather.getStatus.useQuery,J.webrtcSession.listStreams.useQuery,J.webrtcSession.createSession.useMutation,J.webrtcSession.handleOffer.useMutation,J.webrtcSession.handleAnswer.useMutation,J.webrtcSession.addIceCandidate.useMutation,J.webrtcSession.getIceCandidates.useQuery,J.webrtcSession.closeSession.useMutation,J.webrtcSession.hasAdaptiveBitrate.useQuery,J.webrtcSession.getSessionState.useQuery,J.webrtcSession.applyDownlinkProbe.useMutation,J.webrtcSession.getSessionDebug.useQuery,J.zoneAnalytics.getCurrentSnapshot.useQuery,J.zoneAnalytics.getCurrentSnapshotBatch.useQuery,J.zoneAnalytics.getZoneHistory.useQuery,J.zoneAnalytics.getCameraHistory.useQuery,J.zoneAnalytics.getUnzonedHistory.useQuery,J.zoneRules.listRules.useQuery,J.zoneRules.setRules.useMutation,J.zones.listZones.useQuery,J.zones.addZone.useMutation,J.zones.removeZone.useMutation,J.zones.updateZone.useMutation,(0,d.createContext)(null);var NK=vK(`inline-flex items-center rounded-full font-medium [&>svg]:shrink-0 [&>svg]:size-3`,{variants:{variant:{default:`bg-surface-hover text-foreground`,success:`bg-success/15 text-success`,warning:`bg-warning/15 text-warning`,danger:`bg-danger/15 text-danger`,info:`bg-info/15 text-info`,primary:`bg-primary/15 text-primary`,neutral:`bg-surface-hover text-foreground-muted`},styleVariant:{solid:``,fill:``,outline:`border bg-transparent`},size:{sm:`text-[10px] leading-4 px-1.5 py-0`,md:`text-xs px-2 py-0.5`},hasIcon:{true:`gap-1`,false:``},dashed:{true:`border-dashed`,false:``}},compoundVariants:[{variant:`default`,styleVariant:`fill`,class:`bg-neutral-fill text-neutral-on`},{variant:`neutral`,styleVariant:`fill`,class:`bg-neutral-fill text-neutral-on`},{variant:`success`,styleVariant:`fill`,class:`bg-success-fill text-success-on`},{variant:`warning`,styleVariant:`fill`,class:`bg-warning-fill text-warning-on`},{variant:`danger`,styleVariant:`fill`,class:`bg-danger-fill text-danger-on`},{variant:`info`,styleVariant:`fill`,class:`bg-info-fill text-info-on`},{variant:`primary`,styleVariant:`fill`,class:`bg-primary-fill text-primary-on`}],defaultVariants:{variant:`default`,styleVariant:`solid`,size:`md`,hasIcon:!1,dashed:!1}}),PK=(0,d.forwardRef)(({className:e,variant:t,style:n,size:r,icon:i,dashed:a,children:o,...s},c)=>(0,K.jsxs)(`span`,{ref:c,className:Z(NK({variant:t,styleVariant:n,size:r,hasIcon:i!=null,dashed:a===!0&&n===`outline`}),e),...s,children:[i,o]}));PK.displayName=`Badge`,TW(`camstack:custom-field-renderers`,{}),TW(`camstack:confirm-dialog`,null),TW(`camstack:device-context`,null);var FK=`FEDERATION_DEBUG`,IK={AT:`@`,HYPHEN:`-`,SLASH:`/`},LK={[IK.AT]:`scope_`,[IK.HYPHEN]:`_`,[IK.SLASH]:`__`};LK[IK.AT],IK.AT,LK[IK.HYPHEN],IK.HYPHEN,LK[IK.SLASH],IK.SLASH;var RK=function(e){return e[e.UNKNOWN=1]=`UNKNOWN`,e[e.CALCULATED=2]=`CALCULATED`,e[e.NO_USE=0]=`NO_USE`,e}({}),zK=typeof ENV_TARGET<`u`?ENV_TARGET===`web`:typeof window<`u`&&window.document!==void 0;function BK(){return zK}function VK(){return typeof navigator<`u`&&navigator?.product===`ReactNative`}function HK(){try{if(BK()&&window.localStorage)return!!localStorage.getItem(FK)}catch{return!1}return!1}function UK(){return typeof process<`u`&&{}.FEDERATION_DEBUG?!!{}.FEDERATION_DEBUG:typeof FEDERATION_DEBUG<`u`&&FEDERATION_DEBUG?!0:HK()}var WK=`[ Federation Runtime ]`,GK=function(...e){return e.length?e.reduce((e,t)=>t?e?`${e}:${t}`:t:e,``):``},KK=(e,t)=>{if(`getPublicPath`in e){let n;return n=e.getPublicPath.startsWith(`function`)?Function(`return `+e.getPublicPath)()():Function(e.getPublicPath)(),`${n}${t}`}else if(`publicPath`in e)return!BK()&&!VK()&&`ssrPublicPath`in e&&typeof e.ssrPublicPath==`string`?`${e.ssrPublicPath}${t}`:`${e.publicPath}${t}`;else return console.warn(`Cannot get resource URL. If in debug mode, please ignore.`,e,t),``},qK=e=>{console.warn(`${WK}: ${e}`)};function JK(e){try{return JSON.stringify(e,null,2)}catch{return``}}var YK=(e,t)=>{if(!e)return t;let n=(e=>{if(e===`.`)return``;if(e.startsWith(`./`))return e.replace(`./`,``);if(e.startsWith(`/`)){let t=e.slice(1);return t.endsWith(`/`)?t.slice(0,-1):t}return e})(e);return n?n.endsWith(`/`)?`${n}${t}`:`${n}/${t}`:t};function XK(e){return e.replace(/#.*$/,``).replace(/\?.*$/,``).replace(/\/[^\/]+$/,`/`)}function ZK(e,t={}){let{remotes:n={},overrides:r={},version:i}=t,a,o=()=>`publicPath`in e.metaData?(e.metaData.publicPath===`auto`||e.metaData.publicPath===``)&&i?XK(i):e.metaData.publicPath:e.metaData.getPublicPath,s=Object.keys(r),c={};Object.keys(n).length||(c=e.remotes?.reduce((e,t)=>{let n,i=t.federationContainerName;return n=s.includes(i)?r[i]:`version`in t?t.version:t.entry,e[i]={matchedVersion:n},e},{})||{}),Object.keys(n).forEach(e=>c[e]={matchedVersion:s.includes(e)?r[e]:n[e]});let{remoteEntry:{path:l,name:u,type:d},types:f={path:``,name:``,zip:``,api:``},buildInfo:{buildVersion:p},globalName:m,ssrRemoteEntry:h}=e.metaData,{exposes:g}=e,_={version:i||``,buildVersion:p,globalName:m,remoteEntry:YK(l,u),remoteEntryType:d,remoteTypes:YK(f.path,f.name),remoteTypesZip:f.zip||``,remoteTypesAPI:f.api||``,remotesInfo:c,shared:e?.shared.map(e=>({assets:e.assets,sharedName:e.name,version:e.version,usedExports:e.referenceExports||[]})),modules:g?.map(e=>({moduleName:e.name,modulePath:e.path,assets:e.assets}))};if(`publicPath`in e.metaData?(a={..._,publicPath:o()},typeof e.metaData.ssrPublicPath==`string`&&(a.ssrPublicPath=e.metaData.ssrPublicPath)):a={..._,getPublicPath:o()},h){let e=YK(h.path,h.name);a.ssrRemoteEntry=e,a.ssrRemoteEntryType=h.type||`commonjs-module`}return a}function QK(e){return!!(`remoteEntry`in e&&e.remoteEntry.includes(`.json`))}var $K=`[ Module Federation ]`,eq=console,tq=[`logger.ts`,`logger.js`,`captureStackTrace`,`Logger.emit`,`Logger.log`,`Logger.info`,`Logger.warn`,`Logger.error`,`Logger.debug`];function nq(){try{let e=Error().stack;if(!e)return;let[,...t]=e.split(`
|
|
68
|
+
`),n=t.filter(e=>!tq.some(t=>e.includes(t)));return n.length?`Stack trace:\n${n.slice(0,5).join(`
|
|
69
|
+
`)}`:void 0}catch{return}}var rq=class{constructor(e,t=eq){this.prefix=e,this.delegate=t??eq}setPrefix(e){this.prefix=e}setDelegate(e){this.delegate=e??eq}emit(e,t){let n=this.delegate,r=UK()?nq():void 0,i=r?[...t,r]:t,a=(()=>{switch(e){case`log`:return[`log`,`info`];case`info`:return[`info`,`log`];case`warn`:return[`warn`,`info`,`log`];case`error`:return[`error`,`warn`,`log`];default:return[`debug`,`log`]}})();for(let e of a){let t=n[e];if(typeof t==`function`){t.call(n,this.prefix,...i);return}}for(let e of a){let t=eq[e];if(typeof t==`function`){t.call(eq,this.prefix,...i);return}}}log(...e){this.emit(`log`,e)}warn(...e){this.emit(`warn`,e)}error(...e){this.emit(`error`,e)}success(...e){this.emit(`info`,e)}info(...e){this.emit(`info`,e)}ready(...e){this.emit(`info`,e)}debug(...e){UK()&&this.emit(`debug`,e)}};function iq(e){return new rq(e)}function aq(e){let t=new rq(e);return Object.defineProperty(t,"__mf_infrastructure_logger__",{value:!0,enumerable:!1,configurable:!1}),t}iq($K),aq($K);async function oq(e,t){try{return await e()}catch(e){!t&&qK(e);return}}function sq(e,t){let n=/^(https?:)?\/\//i;return e.replace(n,``).replace(/\/$/,``)===t.replace(n,``).replace(/\/$/,``)}function cq(e){let t=null,n=!0,r=2e4,i,a=document.getElementsByTagName(`script`);for(let r=0;r<a.length;r++){let i=a[r],o=i.getAttribute(`src`);if(o&&sq(o,e.url)){t=i,n=!1;break}}if(!t){let n=e.attrs;t=document.createElement(`script`),t.type=n?.type===`module`?`module`:`text/javascript`;let i;e.createScriptHook&&(i=e.createScriptHook(e.url,e.attrs),i instanceof HTMLScriptElement?t=i:typeof i==`object`&&(`script`in i&&i.script&&(t=i.script),`timeout`in i&&i.timeout&&(r=i.timeout))),t.src||=e.url,n&&!i&&Object.keys(n).forEach(e=>{t&&(e===`async`||e===`defer`?t[e]=n[e]:t.getAttribute(e)||t.setAttribute(e,n[e]))})}let o=null,s=typeof window<`u`?t=>{if(t.filename&&sq(t.filename,e.url)){let n=Error(`ScriptExecutionError: Script "${e.url}" loaded but threw a runtime error during execution: ${t.message} (${t.filename}:${t.lineno}:${t.colno})`);n.name=`ScriptExecutionError`,o=n}}:null;s&&window.addEventListener(`error`,s);let c=async(n,r)=>{clearTimeout(i),s&&window.removeEventListener(`error`,s);let a=()=>{if(r?.type===`error`){let t=Error(r?.isTimeout?`ScriptNetworkError: Script "${e.url}" timed out.`:`ScriptNetworkError: Failed to load script "${e.url}" - the script URL is unreachable or the server returned an error (network failure, 404, CORS, etc.)`);t.name=`ScriptNetworkError`,e?.onErrorCallback&&e?.onErrorCallback(t)}else o?e?.onErrorCallback&&e?.onErrorCallback(o):e?.cb&&e?.cb()};if(t&&(t.onerror=null,t.onload=null,oq(()=>{let{needDeleteScript:n=!0}=e;n&&t?.parentNode&&t.parentNode.removeChild(t)}),n&&typeof n==`function`)){let e=n(r);if(e instanceof Promise){let t=await e;return a(),t}return a(),e}a()};return t.onerror=c.bind(null,t.onerror),t.onload=c.bind(null,t.onload),i=setTimeout(()=>{c(null,{type:`error`,isTimeout:!0})},r),{script:t,needAttach:n}}function lq(e){let t=null,n=!0,r=2e4,i,a=document.getElementsByTagName(`link`);for(let r=0;r<a.length;r++){let i=a[r],o=i.getAttribute(`href`),s=i.getAttribute(`rel`);if(o&&sq(o,e.url)&&s===e.attrs.rel){t=i,n=!1;break}}if(!t){t=document.createElement(`link`),t.setAttribute(`href`,e.url);let n,i=!0,a=e.attrs;e.createLinkHook&&(n=e.createLinkHook(e.url,a),n instanceof HTMLLinkElement?(t=n,i=!1):typeof n==`object`&&(`link`in n&&n.link&&(t=n.link,i=!1),`timeout`in n&&n.timeout&&(r=n.timeout))),a&&i&&Object.keys(a).forEach(e=>{t&&!t.getAttribute(e)&&t.setAttribute(e,a[e])})}if(!n)return Promise.resolve().then(()=>{e?.cb&&e?.cb()}),{link:t,needAttach:n};let o=(n,r)=>{i&&clearTimeout(i);let a=()=>{if(r?.type===`error`){let t=Error(r?.isTimeout?`LinkNetworkError: Link "${e.url}" timed out.`:`LinkNetworkError: Failed to load link "${e.url}" - the URL is unreachable or the server returned an error.`);t.name=`LinkNetworkError`,e?.onErrorCallback&&e?.onErrorCallback(t)}else e?.cb&&e?.cb()};if(t&&(t.onerror=null,t.onload=null,oq(()=>{let{needDeleteLink:n=!0}=e;n&&t?.parentNode&&t.parentNode.removeChild(t)}),n)){let e=n(r);return a(),e}a()};return t.onerror=o.bind(null,t.onerror),t.onload=o.bind(null,t.onload),i=setTimeout(()=>{o(null,{type:`error`,isTimeout:!0})},r),{link:t,needAttach:n}}function uq(e,t){let{attrs:n={},createScriptHook:r}=t;return new Promise((t,i)=>{let{script:a,needAttach:o}=cq({url:e,cb:t,onErrorCallback:i,attrs:{fetchpriority:`high`,...n},createScriptHook:r,needDeleteScript:!0});o&&document.head.appendChild(a)})}var dq=new Map;function fq(e){if(!e)throw Error(`import specifier is required`);if(dq.has(e))return dq.get(e);let t=Function(`name`,`return import(name)`)(e).then(e=>e).catch(t=>{throw console.error(`Error importing module ${e}:`,t),dq.delete(e),t});return dq.set(e,t),t}var pq=async()=>{let e=await fq(`node-fetch`);return e.default||e},mq=async(e,t,n)=>{let r=await((e,t)=>n.lifecycle.fetch.emit(e,t))(e,t||{});return!r||!(r instanceof Response)?(typeof fetch>`u`?await pq():fetch)(e,t||{}):r},hq=typeof ENV_TARGET>`u`||ENV_TARGET!==`web`?(e,t,n,r)=>{if(r?.createScriptHook){let t=r.createScriptHook(e);t&&typeof t==`object`&&`url`in t&&(e=t.url)}let i;try{i=new URL(e)}catch(e){console.error(`Error constructing URL:`,e),t(Error(`Invalid URL: ${e}`));return}let a=async()=>r?.fetch?(e,t)=>mq(e,t,r):typeof fetch>`u`?pq():fetch,o=async(e,r)=>{try{let i=await(await e(r.href)).text(),[a,o]=await Promise.all([fq(`path`),fq(`vm`)]),s={exports:{},module:{exports:{}}},c=r.pathname.split(`/`).slice(0,-1).join(`/`),l=a.basename(r.pathname),u=new o.Script(`(function(exports, module, require, __dirname, __filename) {${i}\n})`,{filename:l,importModuleDynamically:o.constants?.USE_MAIN_CONTEXT_DEFAULT_LOADER??fq}),d;d=(await fq(`node:module`)).createRequire(r.protocol===`file:`||r.protocol===`node:`?r.href:a.join(process.cwd(),`__mf_require_base__.js`)),u.runInThisContext()(s.exports,s.module,d,c,l);let f=s.module.exports||s.exports;if(n&&f&&n.globalName){t(void 0,f[n.globalName]||f);return}t(void 0,f)}catch(e){t(e instanceof Error?e:Error(`Script execution error: ${e}`))}};a().then(async e=>{if(n?.type===`esm`||n?.type===`module`)return vq(i.href,{fetch:e,vm:await fq(`vm`)}).then(async e=>{await e.evaluate(),t(void 0,e.namespace)}).catch(e=>{t(e instanceof Error?e:Error(`Script execution error: ${e}`))});o(e,i)}).catch(e=>{t(e)})}:(e,t,n,r)=>{t(Error(`createScriptNode is disabled in non-Node.js environment`))},gq=typeof ENV_TARGET>`u`||ENV_TARGET!==`web`?(e,t)=>new Promise((n,r)=>{hq(e,(e,i)=>{if(e)r(e);else{let e=t?.attrs?.globalName||`__FEDERATION_${t?.attrs?.name}:custom__`;n(globalThis[e]=i)}},t.attrs,t.loaderHook)}):(e,t)=>{throw Error(`loadScriptNode is disabled in non-Node.js environment`)},_q=new Map;async function vq(e,t){if(_q.has(e))return _q.get(e);let{fetch:n,vm:r}=t,i=await(await n(e)).text(),a=new r.SourceTextModule(i,{importModuleDynamically:async(n,r)=>{let i=new URL(n,e).href;return vq(i,t)}});return _q.set(e,a),await a.link(async n=>{let r=new URL(n,e).href;return await vq(r,t)}),a}var yq=e=>`View the docs to see how to solve: https://module-federation.io/guide/troubleshooting/${e.split(`-`)[0].toLowerCase()}#${e.toLowerCase()}`,bq=(e,t,n,r)=>{let i=[`${[t[e]]} #${e}`];return n&&i.push(`args: ${JSON.stringify(n)}`),i.push(yq(e)),r&&i.push(`Original Error Message:\n ${r}`),i.join(`
|
|
70
|
+
`)};function xq(e,t,n,r,i,a){return r(bq(e,t,n,i))}var Sq=`[ Federation Runtime ]`,Cq=iq(Sq);function wq(e,t,n,r,i){e||(n===void 0?Tq(t):Tq(t,n,r,void 0,i))}function Tq(e,t,n,r,i){if(t!==void 0)return xq(e,t,n??{},e=>{throw Error(`${Sq}: ${e}`)},r,i);let a=e;throw a instanceof Error?(a.message.startsWith(Sq)||(a.message=`${Sq}: ${a.message}`),a):Error(`${Sq}: ${a}`)}function Eq(e){e instanceof Error&&(e.message.startsWith(Sq)||(e.message=`${Sq}: ${e.message}`)),Cq.warn(e)}function Dq(e,t){return e.findIndex(e=>e===t)===-1&&e.push(t),e}function Oq(e){return`version`in e&&e.version?`${e.name}:${e.version}`:`entry`in e&&e.entry?`${e.name}:${e.entry}`:`${e.name}`}function kq(e){return e.entry!==void 0}function Aq(e){return!e.entry.includes(`.json`)}function jq(e){return e&&typeof e==`object`}var Mq=Object.prototype.toString;function Nq(e){return Mq.call(e)===`[object Object]`}function Pq(e){return Array.isArray(e)?e:[e]}function Fq(e){let t={url:``,type:`global`,globalName:``};return zK||VK()||!(`ssrRemoteEntry`in e)?`remoteEntry`in e?{url:e.remoteEntry,type:e.remoteEntryType,globalName:e.globalName}:t:`ssrRemoteEntry`in e?{url:e.ssrRemoteEntry||t.url,type:e.ssrRemoteEntryType||t.type,globalName:e.globalName}:t}var Iq=(e,t)=>{let n;return n=e.endsWith(`/`)?e.slice(0,-1):e,t.startsWith(`.`)&&(t=t.slice(1)),n+=t,n},Lq=typeof globalThis==`object`?globalThis:window,Rq=(()=>{try{return document.defaultView}catch{return Lq}})(),zq=Rq;function Bq(e,t,n){Object.defineProperty(e,t,{value:n,configurable:!1,writable:!0})}function Vq(e,t){return Object.hasOwnProperty.call(e,t)}Vq(Lq,`__GLOBAL_LOADING_REMOTE_ENTRY__`)||Bq(Lq,`__GLOBAL_LOADING_REMOTE_ENTRY__`,{});var Hq=Lq.__GLOBAL_LOADING_REMOTE_ENTRY__;function Uq(e){Vq(e,`__VMOK__`)&&!Vq(e,`__FEDERATION__`)&&Bq(e,`__FEDERATION__`,e.__VMOK__),Vq(e,`__FEDERATION__`)||(Bq(e,`__FEDERATION__`,{__GLOBAL_PLUGIN__:[],__INSTANCES__:[],moduleInfo:{},__SHARE__:{},__MANIFEST_LOADING__:{},__PRELOADED_MAP__:new Map}),Bq(e,`__VMOK__`,e.__FEDERATION__)),e.__FEDERATION__.__GLOBAL_PLUGIN__??=[],e.__FEDERATION__.__INSTANCES__??=[],e.__FEDERATION__.moduleInfo??={},e.__FEDERATION__.__SHARE__??={},e.__FEDERATION__.__MANIFEST_LOADING__??={},e.__FEDERATION__.__PRELOADED_MAP__??=new Map}Uq(Lq),Uq(Rq);function Wq(e,t=UK()){t&&(Lq.__FEDERATION__.__DEBUG_CONSTRUCTOR__=e,Lq.__FEDERATION__.__DEBUG_CONSTRUCTOR_VERSION__=`2.5.1`)}function Gq(e,t){if(typeof t==`string`){if(e[t])return{value:e[t],key:t};{let n=Object.keys(e);for(let r of n){let[n,i]=r.split(`:`),a=`${n}:${t}`,o=e[a];if(o)return{value:o,key:a}}return{value:void 0,key:t}}}else Tq(`getInfoWithoutType: "key" must be a string, got ${typeof t} (${JSON.stringify(t)}).`)}var Kq=()=>Rq.__FEDERATION__.moduleInfo,qq=(e,t)=>{let n=Gq(t,Oq(e)).value;if(n&&!n.version&&`version`in e&&e.version&&(n.version=e.version),n)return n;if(`version`in e&&e.version){let{version:t,...n}=e,r=Oq(n),i=Gq(Rq.__FEDERATION__.moduleInfo,r).value;if(i?.version===t)return i}},Jq=e=>qq(e,Rq.__FEDERATION__.moduleInfo),Yq=(e,t)=>{let n=Oq(e);return Rq.__FEDERATION__.moduleInfo[n]=t,Rq.__FEDERATION__.moduleInfo},Xq=e=>(Rq.__FEDERATION__.moduleInfo={...Rq.__FEDERATION__.moduleInfo,...e},()=>{let t=Object.keys(e);for(let e of t)delete Rq.__FEDERATION__.moduleInfo[e]}),Zq=(e,t)=>{let n=t||`__FEDERATION_${e}:custom__`;return{remoteEntryKey:n,entryExports:Lq[n]}},Qq=()=>Rq.__FEDERATION__.__GLOBAL_PLUGIN__,$q=e=>Lq.__FEDERATION__.__PRELOADED_MAP__.get(e),eJ=e=>Lq.__FEDERATION__.__PRELOADED_MAP__.set(e,!0),tJ=`[0-9A-Za-z-]+`,nJ=`(?:\\+(${tJ}(?:\\.${tJ})*))`,rJ=`0|[1-9]\\d*`,iJ=`[0-9]+`,aJ=`\\d*[a-zA-Z-][a-zA-Z0-9-]*`,oJ=`(?:${iJ}|${aJ})`,sJ=`(?:-?(${oJ}(?:\\.${oJ})*))`,cJ=`(?:${rJ}|${aJ})`,lJ=`(?:-(${cJ}(?:\\.${cJ})*))`,uJ=`${rJ}|x|X|\\*`,dJ=`[v=\\s]*(${uJ})(?:\\.(${uJ})(?:\\.(${uJ})(?:${lJ})?${nJ}?)?)?`,fJ=`^\\s*(${dJ})\\s+-\\s+(${dJ})\\s*$`,pJ=`[v=\\s]*${`(${iJ})\\.(${iJ})\\.(${iJ})`}${sJ}?${nJ}?`,mJ=`((?:<|>)?=?)`,hJ=`(\\s*)${mJ}\\s*(${pJ}|${dJ})`,gJ=`(?:~>?)`,_J=`(\\s*)${gJ}\\s+`,vJ=`(?:\\^)`,yJ=`(\\s*)${vJ}\\s+`,bJ=`(<|>)?=?\\s*\\*`,xJ=`^${vJ}${dJ}$`,SJ=`v?${`(${rJ})\\.(${rJ})\\.(${rJ})`}${lJ}?${nJ}?`,CJ=`^${gJ}${dJ}$`,wJ=`^${mJ}\\s*${dJ}$`,TJ=`^${mJ}\\s*(${SJ})$|^$`,EJ=`^\\s*>=\\s*0.0.0\\s*$`;function DJ(e){return new RegExp(e)}function OJ(e){return!e||e.toLowerCase()===`x`||e===`*`}function kJ(...e){return t=>e.reduce((e,t)=>t(e),t)}function AJ(e){return e.match(DJ(TJ))}function jJ(e,t,n,r){let i=`${e}.${t}.${n}`;return r?`${i}-${r}`:i}function MJ(e){return e.replace(DJ(fJ),(e,t,n,r,i,a,o,s,c,l,u,d)=>(t=OJ(n)?``:OJ(r)?`>=${n}.0.0`:OJ(i)?`>=${n}.${r}.0`:`>=${t}`,s=OJ(c)?``:OJ(l)?`<${Number(c)+1}.0.0-0`:OJ(u)?`<${c}.${Number(l)+1}.0-0`:d?`<=${c}.${l}.${u}-${d}`:`<=${s}`,`${t} ${s}`.trim()))}function NJ(e){return e.replace(DJ(hJ),`$1$2$3`)}function PJ(e){return e.replace(DJ(_J),`$1~`)}function FJ(e){return e.replace(DJ(yJ),`$1^`)}function IJ(e){return e.trim().split(/\s+/).map(e=>e.replace(DJ(xJ),(e,t,n,r,i)=>OJ(t)?``:OJ(n)?`>=${t}.0.0 <${Number(t)+1}.0.0-0`:OJ(r)?t===`0`?`>=${t}.${n}.0 <${t}.${Number(n)+1}.0-0`:`>=${t}.${n}.0 <${Number(t)+1}.0.0-0`:i?t===`0`?n===`0`?`>=${t}.${n}.${r}-${i} <${t}.${n}.${Number(r)+1}-0`:`>=${t}.${n}.${r}-${i} <${t}.${Number(n)+1}.0-0`:`>=${t}.${n}.${r}-${i} <${Number(t)+1}.0.0-0`:t===`0`?n===`0`?`>=${t}.${n}.${r} <${t}.${n}.${Number(r)+1}-0`:`>=${t}.${n}.${r} <${t}.${Number(n)+1}.0-0`:`>=${t}.${n}.${r} <${Number(t)+1}.0.0-0`)).join(` `)}function LJ(e){return e.trim().split(/\s+/).map(e=>e.replace(DJ(CJ),(e,t,n,r,i)=>OJ(t)?``:OJ(n)?`>=${t}.0.0 <${Number(t)+1}.0.0-0`:OJ(r)?`>=${t}.${n}.0 <${t}.${Number(n)+1}.0-0`:i?`>=${t}.${n}.${r}-${i} <${t}.${Number(n)+1}.0-0`:`>=${t}.${n}.${r} <${t}.${Number(n)+1}.0-0`)).join(` `)}function RJ(e){return e.split(/\s+/).map(e=>e.trim().replace(DJ(wJ),(e,t,n,r,i,a)=>{let o=OJ(n),s=o||OJ(r),c=s||OJ(i);return t===`=`&&c&&(t=``),a=``,o?t===`>`||t===`<`?`<0.0.0-0`:`*`:t&&c?(s&&(r=0),i=0,t===`>`?(t=`>=`,s?(n=Number(n)+1,r=0,i=0):(r=Number(r)+1,i=0)):t===`<=`&&(t=`<`,s?n=Number(n)+1:r=Number(r)+1),t===`<`&&(a=`-0`),`${t+n}.${r}.${i}${a}`):s?`>=${n}.0.0${a} <${Number(n)+1}.0.0-0`:c?`>=${n}.${r}.0${a} <${n}.${Number(r)+1}.0-0`:e})).join(` `)}function zJ(e){return e.trim().replace(DJ(bJ),``)}function BJ(e){return e.trim().replace(DJ(EJ),``)}function VJ(e,t){return e=Number(e)||e,t=Number(t)||t,e>t?1:e===t?0:-1}function HJ(e,t){let{preRelease:n}=e,{preRelease:r}=t;if(n===void 0&&r)return 1;if(n&&r===void 0)return-1;if(n===void 0&&r===void 0)return 0;for(let e=0,t=n.length;e<=t;e++){let t=n[e],i=r[e];if(t!==i)return t===void 0&&i===void 0?0:t?i?VJ(t,i):-1:1}return 0}function UJ(e,t){return VJ(e.major,t.major)||VJ(e.minor,t.minor)||VJ(e.patch,t.patch)||HJ(e,t)}function WJ(e,t){return e.version===t.version}function GJ(e,t){switch(e.operator){case``:case`=`:return WJ(e,t);case`>`:return UJ(e,t)<0;case`>=`:return WJ(e,t)||UJ(e,t)<0;case`<`:return UJ(e,t)>0;case`<=`:return WJ(e,t)||UJ(e,t)>0;case void 0:return!0;default:return!1}}function KJ(e){return kJ(IJ,LJ,RJ,zJ)(e)}function qJ(e){return kJ(MJ,NJ,PJ,FJ)(e.trim()).split(/\s+/).join(` `)}function JJ(e,t){if(!e)return!1;let n=AJ(e);if(!n)return!1;let[,r,,i,a,o,s]=n,c={operator:r,version:jJ(i,a,o,s),major:i,minor:a,patch:o,preRelease:s?.split(`.`)},l=t.split(`||`);for(let e of l){let t=e.trim();if(!t||t===`*`||t===`x`)return!0;try{let e=qJ(t);if(!e.trim())return!0;let n=e.split(` `).map(e=>KJ(e)).join(` `);if(!n.trim())return!0;let r=n.split(/\s+/).map(e=>BJ(e)).filter(Boolean);if(r.length===0)continue;let i=!0;for(let e of r){let t=AJ(e);if(!t){i=!1;break}let[,n,,r,a,o,s]=t;if(!GJ({operator:n,version:jJ(r,a,o,s),major:r,minor:a,patch:o,preRelease:s?.split(`.`)},c)){i=!1;break}}if(i)return!0}catch(e){console.error(`[semver] Error processing range part "${t}":`,e);continue}}return!1}var YJ=`default`,XJ=`global`;function ZJ(e,t,n,r){let i;return i=`get`in e?e.get:`lib`in e?()=>Promise.resolve(e.lib):()=>Promise.resolve(()=>{Tq(`Cannot get shared "${n}" from "${t}": neither "get" nor "lib" is provided in the share config.`)}),e.shareConfig?.eager&&e.treeShaking?.mode&&Tq(`Invalid shared config for "${n}" from "${t}": cannot use both "eager: true" and "treeShaking.mode" simultaneously. Choose one strategy.`),{deps:[],useIn:[],from:t,loading:null,...e,shareConfig:{requiredVersion:`^${e.version}`,singleton:!1,eager:!1,strictVersion:!1,...e.shareConfig},get:i,loaded:e?.loaded||`lib`in e?!0:void 0,version:e.version??`0`,scope:Array.isArray(e.scope)?e.scope:[e.scope??`default`],strategy:(e.strategy??r)||`version-first`,treeShaking:e.treeShaking?{...e.treeShaking,mode:e.treeShaking.mode??`server-calc`,status:e.treeShaking.status??RK.UNKNOWN,useIn:[]}:void 0}}function QJ(e,t){let n=t.shared||{},r=t.name,i=Object.keys(n).reduce((e,i)=>{let a=Pq(n[i]);return e[i]=e[i]||[],a.forEach(n=>{e[i].push(ZJ(n,r,i,t.shareStrategy))}),e},{}),a={...e.shared};return Object.keys(i).forEach(e=>{a[e]?i[e].forEach(t=>{a[e].find(e=>e.version===t.version)||a[e].push(t)}):a[e]=i[e]}),{allShareInfos:a,newShareInfos:i}}function $J(e,t){if(!e)return!1;let{status:n,mode:r}=e;return n===RK.NO_USE?!1:n===RK.CALCULATED?!0:r===`runtime-infer`?t?iY(e,t):!0:!1}function eY(e,t){let n=e=>{if(!Number.isNaN(Number(e))){let t=e.split(`.`),n=e;for(let e=0;e<3-t.length;e++)n+=`.0`;return n}return e};return!!JJ(n(e),`<=${n(t)}`)}var tY=(e,t)=>{let n=t||function(e,t){return eY(e,t)};return Object.keys(e).reduce((e,t)=>!e||n(e,t)||e===`0`?t:e,0)},nY=e=>!!e.loaded||typeof e.lib==`function`,rY=e=>!!e.loading,iY=(e,t)=>{if(!e||!t)return!1;let{usedExports:n}=e;return n?!!t.every(e=>n.includes(e)):!1};function aY(e,t,n,r){let i=e[t][n],a=``,o=$J(r),s=function(e,t){return o?i[e].treeShaking?i[t].treeShaking?!nY(i[e].treeShaking)&&eY(e,t):!1:!0:!nY(i[e])&&eY(e,t)};if(o){if(a=tY(e[t][n],s),a)return{version:a,useTreesShaking:o};o=!1}return{version:tY(e[t][n],s),useTreesShaking:o}}var oY=e=>nY(e)||rY(e);function sY(e,t,n,r){let i=e[t][n],a=``,o=$J(r),s=function(e,t){if(o){if(!i[e].treeShaking)return!0;if(!i[t].treeShaking)return!1;if(oY(i[t].treeShaking))return oY(i[e].treeShaking)?!!eY(e,t):!0;if(oY(i[e].treeShaking))return!1}return oY(i[t])?oY(i[e])?!!eY(e,t):!0:oY(i[e])?!1:eY(e,t)};if(o){if(a=tY(e[t][n],s),a)return{version:a,useTreesShaking:o};o=!1}return{version:tY(e[t][n],s),useTreesShaking:o}}function cY(e){return e===`loaded-first`?sY:aY}function lY(e,t,n,r){if(!e)return;let{shareConfig:i,scope:a=YJ,strategy:o,treeShaking:s}=n,c=Array.isArray(a)?a:[a];for(let a of c)if(i&&e[a]&&e[a][t]){let{requiredVersion:c}=i,{version:l,useTreesShaking:u}=cY(o)(e,a,t,s),d={shareScopeMap:e,scope:a,pkgName:t,version:l,GlobalFederation:zq.__FEDERATION__,shareInfo:n,resolver:()=>{let r=e[a][t][l];if(i.singleton){if(typeof c==`string`&&!JJ(l,c)){let e=`Version ${l} from ${l&&r.from} of shared singleton module ${t} does not satisfy the requirement of ${n.from} which needs ${c})`;i.strictVersion?Tq(e):Eq(e)}return{shared:r,useTreesShaking:u}}else{if(c===!1||c===`*`||JJ(l,c))return{shared:r,useTreesShaking:u};let n=$J(s);if(n){for(let[r,i]of Object.entries(e[a][t]))if($J(i.treeShaking,s?.usedExports)&&JJ(r,c))return{shared:i,useTreesShaking:n}}for(let[n,r]of Object.entries(e[a][t]))if(JJ(n,c))return{shared:r,useTreesShaking:!1}}}};return(r.emit(d)||d).resolver()}}function uY(){return zq.__FEDERATION__.__SHARE__}function dY(e){let{pkgName:t,extraOptions:n,shareInfos:r}=e,i=n?.resolver??(e=>{if(!e)return;let t={};return e.forEach(e=>{t[e.version]=e}),t[tY(t,function(e,n){return!nY(t[e])&&eY(e,n)})]}),a=e=>typeof e==`object`&&!!e&&!Array.isArray(e),o=(...e)=>{let t={};for(let n of e)if(n)for(let[e,r]of Object.entries(n)){let n=t[e];a(n)&&a(r)?t[e]=o(n,r):r!==void 0&&(t[e]=r)}return t};return o(i(r[t]),n?.customShareInfo)}var fY=(e,t)=>{e.useIn||=[],Dq(e.useIn,t)};function pY(e,t){return t&&e.treeShaking?e.treeShaking:e}function mY(e,t){return!t||t===`.`?e:`${e}/${t.replace(/^\.\//,``)}`}function hY(e,t){for(let n of e){let e=t.startsWith(n.name),r=t.replace(n.name,``);if(e){if(r.startsWith(`/`)){let e=n.name;return r=`.${r}`,{pkgNameOrAlias:e,expose:r,remote:n}}else if(r===``)return{pkgNameOrAlias:n.name,expose:`.`,remote:n}}let i=n.alias&&t.startsWith(n.alias),a=n.alias&&t.replace(n.alias,``);if(n.alias&&i){if(a&&a.startsWith(`/`)){let e=n.alias;return a=`.${a}`,{pkgNameOrAlias:e,expose:a,remote:n}}else if(a===``)return{pkgNameOrAlias:n.alias,expose:`.`,remote:n}}}}function gY(e,t){for(let n of e)if(t===n.name||n.alias&&t===n.alias)return n}var _Y=`RUNTIME-001`,vY=`RUNTIME-002`,yY=`RUNTIME-003`,bY=`RUNTIME-004`,xY=`RUNTIME-005`,SY=`RUNTIME-006`,CY=`RUNTIME-007`,wY=`RUNTIME-008`,TY=`RUNTIME-009`,EY=`RUNTIME-010`,DY=`RUNTIME-011`,OY=`RUNTIME-012`,kY=`RUNTIME-013`,AY=`RUNTIME-014`,jY=`RUNTIME-015`,MY=`TYPE-001`,NY=`BUILD-001`,PY=`BUILD-002`,FY={[_Y]:`Failed to get remoteEntry exports.`,[vY]:`The remote entry interface does not contain "init"`,[yY]:`Failed to get manifest.`,[bY]:`Failed to locate remote.`,[xY]:`Invalid loadShareSync function call from bundler runtime`,[SY]:`Invalid loadShareSync function call from runtime`,[CY]:`Failed to get remote snapshot.`,[wY]:`Failed to load script resources.`,[TY]:`Please call createInstance first.`,[EY]:`The name option cannot be changed after initialization. If you want to create a new instance with a different name, please use "createInstance" api.`,[DY]:`The remoteEntry URL is missing from the remote snapshot.`,[OY]:`The getter for the shared module is not a function. This may be caused by setting "shared.import: false" without the host providing the corresponding lib.`,[kY]:`The manifest is not a valid Module Federation manifest.`,[AY]:`The remote does not expose the requested module.`,[jY]:`Remote container initialization failed.`},IY={[MY]:`Failed to generate type declaration. Execute the below cmd to reproduce and fix the error.`},LY={[NY]:`Failed to find expose module.`,[PY]:`PublicPath is required in prod mode.`};({...FY,...IY,...LY});var RY=`.then(callbacks[0]).catch(callbacks[1])`;async function zY({entry:e,remoteEntryExports:t}){return new Promise((n,r)=>{try{t?n(t):typeof FEDERATION_ALLOW_NEW_FUNCTION<`u`?Function(`callbacks`,`import("${e}")${RY}`)([n,r]):Tl(()=>import(e).then(n),[]).catch(r)}catch(t){Tq(`Failed to load ESM entry from "${e}". ${t instanceof Error?t.message:String(t)}`)}})}async function BY({entry:e,remoteEntryExports:t}){return new Promise((n,r)=>{try{t?n(t):typeof __system_context__>`u`?System.import(e).then(n).catch(r):Function(`callbacks`,`System.import("${e}")${RY}`)([n,r])}catch(t){Tq(`Failed to load SystemJS entry from "${e}". ${t instanceof Error?t.message:String(t)}`)}})}function VY(e,t,n){let{remoteEntryKey:r,entryExports:i}=Zq(e,t);return i||Tq(_Y,FY,{remoteName:e,remoteEntryUrl:n,remoteEntryKey:r}),i}async function HY({name:e,globalName:t,entry:n,remoteInfo:r,loaderHook:i,getEntryUrl:a,resourceContext:o}){let{entryExports:s}=Zq(e,t);if(s)return s;let c=a?a(n):n;return uq(c,{attrs:{},createScriptHook:(e,t)=>{let n=i.lifecycle.createScript.emit({url:e,attrs:t,remoteInfo:r,resourceContext:o?{...o,url:e}:void 0});if(n&&(n instanceof HTMLScriptElement||`script`in n||`timeout`in n))return n}}).then(()=>VY(e,t,n),t=>{let n=t instanceof Error?t.message:String(t);Tq(wY,FY,{remoteName:e,resourceUrl:c},n)})}async function UY({remoteInfo:e,remoteEntryExports:t,loaderHook:n,getEntryUrl:r,resourceContext:i}){let{entry:a,entryGlobalName:o,name:s,type:c}=e;switch(c){case`esm`:case`module`:return zY({entry:a,remoteEntryExports:t});case`system`:return BY({entry:a,remoteEntryExports:t});default:return HY({entry:a,globalName:o,name:s,remoteInfo:e,loaderHook:n,getEntryUrl:r,resourceContext:i})}}async function WY({remoteInfo:e,loaderHook:t,resourceContext:n}){let{entry:r,entryGlobalName:i,name:a,type:o}=e,{entryExports:s}=Zq(a,i);return s||gq(r,{attrs:{name:a,globalName:i,type:o},loaderHook:{createScriptHook:(r,i={})=>{let a=t.lifecycle.createScript.emit({url:r,attrs:i,remoteInfo:e,resourceContext:n?{...n,url:r}:void 0});if(a&&`url`in a)return a}}}).then(()=>VY(a,i,r)).catch(e=>{Tq(`Failed to load Node.js entry for remote "${a}" from "${r}". ${e instanceof Error?e.message:String(e)}`)})}function GY(e){let{entry:t,name:n}=e;return GK(n,t)}async function KY(e){let{origin:t,remoteEntryExports:n,remoteInfo:r,getEntryUrl:i,resourceContext:a,_inErrorHandling:o=!1}=e,s=GY(r);if(n)return n;if(!Hq[s]){let e=t.remoteHandler.hooks.lifecycle.loadEntry,c=t.loaderHook;Hq[s]=e.emit({origin:t,loaderHook:c,remoteInfo:r,remoteEntryExports:n}).then(e=>e||((typeof ENV_TARGET<`u`?ENV_TARGET===`web`:zK)?UY({remoteInfo:r,remoteEntryExports:n,loaderHook:c,getEntryUrl:i,resourceContext:a}):WY({remoteInfo:r,loaderHook:c,resourceContext:a}))).then(async e=>(await t.loaderHook.lifecycle.afterLoadEntry.emit({origin:t,remoteInfo:r,remoteEntryExports:e}),e)).catch(async e=>{let i=GY(r),a=e instanceof Error&&e.message.includes(`ScriptExecutionError`);if(e instanceof Error&&e.message.includes(`RUNTIME-008`)&&!a&&!o){let e=await t.loaderHook.lifecycle.loadEntryError.emit({getRemoteEntry:e=>KY({...e,_inErrorHandling:!0}),origin:t,remoteInfo:r,remoteEntryExports:n,globalLoading:Hq,uniqueKey:i});if(e)return await t.loaderHook.lifecycle.afterLoadEntry.emit({origin:t,remoteInfo:r,remoteEntryExports:e,recovered:!0}),e}throw await t.loaderHook.lifecycle.afterLoadEntry.emit({origin:t,remoteInfo:r,error:e}),e})}return Hq[s]}function qY(e){return{...e,entry:`entry`in e?e.entry:``,type:e.type||`global`,entryGlobalName:e.entryGlobalName||e.name,shareScope:e.shareScope||`default`}}function JY(){return typeof FEDERATION_BUILD_IDENTIFIER<`u`?FEDERATION_BUILD_IDENTIFIER:``}function YY(e,t){let n=Qq(),r=[t.hooks,t.remoteHandler.hooks,t.sharedHandler.hooks,t.snapshotHandler.hooks,t.loaderHook,t.bridgeHook];return n.length>0&&n.forEach(t=>{e?.find(e=>e.name!==t.name)&&e.push(t)}),e&&e.length>0&&e.forEach(e=>{r.forEach(n=>{n.applyPlugin(e,t)})}),e}function XY(e){return{name:e.name,alias:e.alias,entry:`entry`in e?e.entry:void 0,version:`version`in e?e.version:void 0,type:e.type,entryGlobalName:e.entryGlobalName,shareScope:e.shareScope}}function ZY(e){let t={};for(let[n,r]of Object.entries(e.shared)){let e=r[0];e&&(t[n]={version:e.version,singleton:e.shareConfig?.singleton,requiredVersion:e.shareConfig?.requiredVersion===!1?!1:e.shareConfig?.requiredVersion,eager:e.eager,strictVersion:e.shareConfig?.strictVersion})}return{project:{name:e.name,mfRole:e.remotes?.length>0?`host`:`unknown`},mfConfig:{name:e.name,remotes:e.remotes?.map(XY)??[],shared:t}}}function QY(e){return{resourceCategory:`sync`,share:!0,depsRemote:!0,...e}}function $Y(e,t){return t.map(t=>{let n=gY(e,t.nameOrAlias);return wq(n,`Unable to preload ${t.nameOrAlias} as it is not included in ${!n&&JK({remoteInfo:n,remotes:e})}`),{remote:n,preloadConfig:QY(t)}})}function eX(e){return e?e.map(e=>e===`.`?e:e.startsWith(`./`)?e.replace(`./`,``):e):[]}function tX(e){return e instanceof Error?e.message.includes(`timed out`)||e.name.includes(`Timeout`):!1}function nX(e,t,n,r){return{url:t,status:n,resourceType:e.resourceType,initiator:e.initiator,id:e.id,error:r}}async function rX(e,t,n,r){let i=e.moduleCache.get(n.name),a=n.entry;if(i?.remoteEntryExports)return nX(r,a,`cached`);try{if(!await KY({origin:e,remoteInfo:n,remoteEntryExports:i?.remoteEntryExports,resourceContext:{...r,url:a}}))throw Error(`Failed to load remoteEntry "${a}".`);return nX(r,a,`success`)}catch(e){return nX(r,a,tX(e)?`timeout`:`error`,e)}}function iX({host:e,remoteInfo:t,url:n,attrs:r,context:i,needDeleteLink:a}){return new Promise(o=>{let{link:s,needAttach:c}=lq({url:n,cb:()=>{o(nX(i,n,c?`success`:`cached`))},onErrorCallback:e=>{o(nX(i,n,tX(e)?`timeout`:`error`,e))},attrs:r,createLinkHook:(n,r)=>{let a=e.loaderHook.lifecycle.createLink.emit({url:n,attrs:r,remoteInfo:t,resourceContext:{...i,url:n}});return a instanceof HTMLLinkElement,a},needDeleteLink:a});c&&document.head.appendChild(s)})}function aX({host:e,remoteInfo:t,url:n,attrs:r,context:i}){return new Promise(a=>{let{script:o,needAttach:s}=cq({url:n,cb:()=>{a(nX(i,n,s?`success`:`cached`))},onErrorCallback:e=>{a(nX(i,n,tX(e)?`timeout`:`error`,e))},attrs:r,createScriptHook:(n,r)=>{let a=e.loaderHook.lifecycle.createScript.emit({url:n,attrs:r,remoteInfo:t,resourceContext:{...i,url:n}});return a instanceof HTMLScriptElement,a},needDeleteScript:!0});s&&document.head.appendChild(o)})}function oX(e,t){return{...e,resourceType:t}}function sX(e,t,n,r=!0,i={initiator:`preloadRemote`,id:e.name}){let{cssAssets:a,jsAssetsWithoutEntry:o,entryAssets:s}=n,c=[];if(t.options.inBrowser){if(s.forEach(n=>{let{moduleInfo:r}=n;c.push(rX(t,e,r,oX(i,`remoteEntry`)))}),r){let n={rel:`preload`,as:`style`};a.forEach(r=>{c.push(iX({host:t,remoteInfo:e,url:r,attrs:n,context:oX(i,`css`)}))})}else{let n={rel:`stylesheet`,type:`text/css`};a.forEach(r=>{c.push(iX({host:t,remoteInfo:e,url:r,attrs:n,needDeleteLink:!1,context:oX(i,`css`)}))})}if(r){let n={rel:`preload`,as:`script`};o.forEach(r=>{c.push(iX({host:t,remoteInfo:e,url:r,attrs:n,context:oX(i,`js`)}))})}else{let n={fetchpriority:`high`,type:e?.type===`module`?`module`:`text/javascript`};o.forEach(r=>{c.push(aX({host:t,remoteInfo:e,url:r,attrs:n,context:oX(i,`js`)}))})}}return Promise.all(c)}function cX(e){if(!e||!(`modules`in e)||!Array.isArray(e.modules))return;let t=e.modules.map(e=>e.moduleName).filter(Boolean);return t.length?t.join(`,`):void 0}function lX(e,t,n){let r=t,i=Array.isArray(e.shareScope)?e.shareScope:[e.shareScope];i.length||i.push(`default`),i.forEach(e=>{r[e]||(r[e]={})});let a={version:e.version||``,shareScopeKeys:Array.isArray(e.shareScope)?i:e.shareScope||`default`};return Object.defineProperty(a,"shareScopeMap",{value:r,enumerable:!1}),{remoteEntryInitOptions:a,shareScope:r[i[0]],initScope:n??[]}}var uX=class{constructor({remoteInfo:e,host:t}){this.inited=!1,this.initing=!1,this.lib=void 0,this.remoteInfo=e,this.host=t}async getEntry(e){if(this.remoteEntryExports)return this.remoteEntryExports;let t=await KY({origin:this.host,remoteInfo:this.remoteInfo,remoteEntryExports:this.remoteEntryExports,resourceContext:{initiator:`loadRemote`,id:mY(this.remoteInfo.name,e),resourceType:`remoteEntry`}});return wq(t,`remoteEntryExports is undefined \n ${JK(this.remoteInfo)}`),this.remoteEntryExports=t,this.remoteEntryExports}async init(e,t,n,r){let i=await this.getEntry(r);if(this.inited)return await this.host.loaderHook.lifecycle.afterInitRemote.emit({id:e,remoteInfo:this.remoteInfo,remoteSnapshot:t,remoteEntryExports:i,cached:!0,origin:this.host}),i;if(this.initPromise){try{await this.initPromise,await this.host.loaderHook.lifecycle.afterInitRemote.emit({id:e,remoteInfo:this.remoteInfo,remoteSnapshot:t,remoteEntryExports:i,cached:!0,origin:this.host})}catch(n){throw await this.host.loaderHook.lifecycle.afterInitRemote.emit({id:e,remoteInfo:this.remoteInfo,remoteSnapshot:t,remoteEntryExports:i,error:n,cached:!0,origin:this.host}),n}return i}this.initing=!0,this.initPromise=(async()=>{await this.host.loaderHook.lifecycle.beforeInitRemote.emit({id:e,remoteInfo:this.remoteInfo,remoteSnapshot:t,origin:this.host});let{remoteEntryInitOptions:r,shareScope:a,initScope:o}=lX(this.remoteInfo,this.host.shareScopeMap,n),s=await this.host.hooks.lifecycle.beforeInitContainer.emit({shareScope:a,remoteEntryInitOptions:r,initScope:o,remoteInfo:this.remoteInfo,origin:this.host});i?.init===void 0&&Tq(vY,FY,{hostName:this.host.name,remoteName:this.remoteInfo.name,remoteEntryUrl:this.remoteInfo.entry,remoteEntryKey:this.remoteInfo.entryGlobalName},void 0,ZY(this.host.options));try{await i.init(s.shareScope,s.initScope,s.remoteEntryInitOptions)}catch(e){Tq(jY,FY,{hostName:this.host.name,remoteName:this.remoteInfo.name,remoteEntryUrl:this.remoteInfo.entry,remoteEntryKey:this.remoteInfo.entryGlobalName,shareScope:this.remoteInfo.shareScope},`${e}`,ZY(this.host.options))}await this.host.hooks.lifecycle.initContainer.emit({...s,id:e,remoteSnapshot:t,remoteEntryExports:i}),this.inited=!0})();try{await this.initPromise,await this.host.loaderHook.lifecycle.afterInitRemote.emit({id:e,remoteInfo:this.remoteInfo,remoteSnapshot:t,remoteEntryExports:i,origin:this.host})}catch(n){throw await this.host.loaderHook.lifecycle.afterInitRemote.emit({id:e,remoteInfo:this.remoteInfo,remoteSnapshot:t,remoteEntryExports:i,error:n,origin:this.host}),n}finally{this.initing=!1,this.initPromise=void 0}return i}async get(e,t,n,r){let{loadFactory:i=!0}=n||{loadFactory:!0},a=await this.init(e,r,void 0,t);this.lib=a,await this.host.loaderHook.lifecycle.beforeGetExpose.emit({id:e,expose:t,moduleInfo:this.remoteInfo,remoteEntryExports:a,origin:this.host});let o;try{let n=await this.host.loaderHook.lifecycle.getModuleFactory.emit({remoteEntryExports:a,expose:t,moduleInfo:this.remoteInfo});o=typeof n==`function`?n:void 0,o||=await a.get(t),o||Tq(AY,FY,{hostName:this.host.name,remoteName:this.remoteInfo.name,remoteEntryUrl:this.remoteInfo.entry,expose:t,requestId:e,availableExposes:cX(r)},void 0,ZY(this.host.options)),await this.host.loaderHook.lifecycle.afterGetExpose.emit({id:e,expose:t,moduleInfo:this.remoteInfo,remoteEntryExports:a,moduleFactory:o,origin:this.host})}catch(n){throw await this.host.loaderHook.lifecycle.afterGetExpose.emit({id:e,expose:t,moduleInfo:this.remoteInfo,remoteEntryExports:a,error:n,origin:this.host}),n}let s=Iq(this.remoteInfo.name,t),c=this.wraperFactory(o,s);if(!i)return c;await this.host.loaderHook.lifecycle.beforeExecuteFactory.emit({id:e,expose:t,moduleInfo:this.remoteInfo,loadFactory:i,origin:this.host});try{let n=await c();return await this.host.loaderHook.lifecycle.afterExecuteFactory.emit({id:e,expose:t,moduleInfo:this.remoteInfo,loadFactory:i,exposeModule:n,origin:this.host}),n}catch(n){throw await this.host.loaderHook.lifecycle.afterExecuteFactory.emit({id:e,expose:t,moduleInfo:this.remoteInfo,loadFactory:i,error:n,origin:this.host}),n}}wraperFactory(e,t){function n(e,t){e&&typeof e==`object`&&Object.isExtensible(e)&&!Object.getOwnPropertyDescriptor(e,Symbol.for(`mf_module_id`))&&Object.defineProperty(e,Symbol.for(`mf_module_id`),{value:t,enumerable:!1})}return()=>{let r=e();return r instanceof Promise?r.then(e=>(n(e,t),e)):(n(r,t),r)}}},dX=class{constructor(e){this.type=``,this.listeners=new Set,e&&(this.type=e)}on(e){typeof e==`function`&&this.listeners.add(e)}once(e){let t=this;this.on(function n(...r){return t.remove(n),e.apply(null,r)})}emit(...e){let t;return this.listeners.size>0&&this.listeners.forEach(n=>{let r=n(...e);r!==void 0&&(t=r)}),t}remove(e){this.listeners.delete(e)}removeAll(){this.listeners.clear()}},fX=class extends dX{emit(...e){let t,n=Array.from(this.listeners);if(n.length>0){let r=0,i=t=>t===!1?!1:r<n.length?Promise.resolve(n[r++].apply(null,e)).then(n=>n===void 0||e.length===1&&n===e[0]?i(t):i(n)):t;t=i()}return Promise.resolve(t)}};function pX(e,t){if(!jq(t))return!1;if(e!==t){for(let n in e)if(!(n in t))return!1}return!0}var mX=class extends dX{constructor(e){super(),this.onerror=Tq,this.type=e}emit(e){jq(e)||Tq(`The data for the "${this.type}" hook should be an object.`);for(let t of this.listeners)try{let n=t(e);if(n===void 0)continue;if(pX(e,n))e=n;else{this.onerror(`A plugin returned an unacceptable value for the "${this.type}" type.`);break}}catch(e){Eq(e),this.onerror(e)}return e}},hX=class extends dX{constructor(e){super(),this.onerror=Tq,this.type=e}emit(e){jq(e)||Tq(`The response data for the "${this.type}" hook must be an object.`);let t=Array.from(this.listeners);if(t.length>0){let n=0,r=t=>(Eq(t),this.onerror(t),e),i=a=>{if(a!==void 0&&pX(e,a))e=a;else if(a!==void 0)return this.onerror(`A plugin returned an incorrect value for the "${this.type}" type.`),e;if(n<t.length)try{return Promise.resolve(t[n++](e)).then(i,r)}catch(e){return r(e)}return e};return Promise.resolve(i(e))}return Promise.resolve(e)}},gX=class{constructor(e){this.registerPlugins={},this.lifecycle=e,this.lifecycleKeys=Object.keys(e)}applyPlugin(e,t){wq(Nq(e),`Plugin configuration is invalid.`);let n=e.name;wq(n,`A name must be provided by the plugin.`),this.registerPlugins[n]||(this.registerPlugins[n]=e,e.apply?.(t),Object.keys(this.lifecycle).forEach(t=>{let n=e[t];n&&this.lifecycle[t].on(n)}))}removePlugin(e){wq(e,`A name is required.`);let t=this.registerPlugins[e];wq(t,`The plugin "${e}" is not registered.`),Object.keys(t).forEach(e=>{e!==`name`&&this.lifecycle[e].remove(t[e])})}};function _X(e,t){let n=Fq(t);n.url||Tq(DY,FY,{remoteName:e.name});let r=KK(t,n.url);!zK&&!r.startsWith(`http`)&&(r=`https:${r}`),e.type=n.type,e.entryGlobalName=n.globalName,e.entry=r,e.version=t.version,e.buildVersion=t.buildVersion}function vX(){return{name:`snapshot-plugin`,async afterResolve(e){let{remote:t,pkgNameOrAlias:n,expose:r,origin:i,remoteInfo:a,id:o}=e;if(!kq(t)||!Aq(t)){let{remoteSnapshot:s,globalSnapshot:c}=await i.snapshotHandler.loadRemoteSnapshotInfo({moduleInfo:t,id:mY(t.name,r)});_X(a,s);let l={remote:t,preloadConfig:{nameOrAlias:n,exposes:[r],resourceCategory:`sync`,share:!1,depsRemote:!1}},u=await i.remoteHandler.hooks.lifecycle.generatePreloadAssets.emit({origin:i,preloadOptions:l,remoteInfo:a,remote:t,remoteSnapshot:s,globalSnapshot:c});return u&&sX(a,i,u,!1,{initiator:`loadRemote`,id:o}).catch(()=>void 0),{...e,remoteSnapshot:s}}return e}}}function yX(e){let t=e.split(`:`);return t.length===1?{name:t[0],version:void 0}:t.length===2?{name:t[0],version:t[1]}:{name:t[1],version:t[2]}}function bX(e,t,n,r,i={},a){let{value:o}=Gq(e,Oq(t)),s=a||o;if(s&&!QK(s)&&(n(s,t,r),s.remotesInfo)){let t=Object.keys(s.remotesInfo);for(let r of t){if(i[r])continue;i[r]=!0;let t=yX(r),a=s.remotesInfo[r];bX(e,{name:t.name,version:a.matchedVersion},n,!1,i,void 0)}}}var xX=(e,t)=>document.querySelector(`${e}[${e===`link`?`href`:`src`}="${t}"]`);function SX(e,t,n,r,i){let a=[],o=[],s=[],c=new Set,l=new Set,{options:u}=e,{preloadConfig:d}=t,{depsRemote:f}=d;if(bX(r,n,(t,n,r)=>{let i;if(r)i=d;else if(Array.isArray(f)){let e=f.find(e=>e.nameOrAlias===n.name||e.nameOrAlias===n.alias);if(!e)return;i=QY(e)}else if(f===!0)i=d;else return;let c=KK(t,Fq(t).url);c&&s.push({name:n.name,moduleInfo:{name:n.name,entry:c,type:`remoteEntryType`in t?t.remoteEntryType:`global`,entryGlobalName:`globalName`in t?t.globalName:n.name,shareScope:``,version:`version`in t?t.version:void 0},url:c});let l=`modules`in t?t.modules:[],u=eX(i.exposes);u.length&&`modules`in t&&(l=t?.modules?.reduce((e,t)=>(u?.indexOf(t.moduleName)!==-1&&e.push(t),e),[]));function p(e){let n=e.map(e=>KK(t,e));return i.filter?n.filter(i.filter):n}if(l){let r=l.length;for(let s=0;s<r;s++){let r=l[s],c=`${n.name}/${r.moduleName}`;e.remoteHandler.hooks.lifecycle.handlePreloadModule.emit({id:r.moduleName===`.`?n.name:c,name:n.name,remoteSnapshot:t,preloadConfig:i,remote:n,origin:e}),!$q(c)&&(i.resourceCategory===`all`?(a.push(...p(r.assets.css.async)),a.push(...p(r.assets.css.sync)),o.push(...p(r.assets.js.async)),o.push(...p(r.assets.js.sync))):i.resourceCategory===`sync`&&(a.push(...p(r.assets.css.sync)),o.push(...p(r.assets.js.sync))),eJ(c))}}},!0,{},i),i.shared&&i.shared.length>0){let t=(t,n)=>{let{shared:r}=lY(e.shareScopeMap,n.sharedName,t,e.sharedHandler.hooks.lifecycle.resolveShare)||{};r&&typeof r.lib==`function`&&(n.assets.js.sync.forEach(e=>{c.add(e)}),n.assets.css.sync.forEach(e=>{l.add(e)}))};i.shared.forEach(e=>{let n=u.shared?.[e.sharedName];if(!n)return;let r=e.version?n.find(t=>t.version===e.version):n;r&&Pq(r).forEach(n=>{t(n,e)})})}let p=o.filter(e=>!c.has(e)&&!xX(`script`,e));return{cssAssets:a.filter(e=>!l.has(e)&&!xX(`link`,e)),jsAssetsWithoutEntry:p,entryAssets:s.filter(e=>!xX(`script`,e.url))}}var CX=function(){return{name:`generate-preload-assets-plugin`,async generatePreloadAssets(e){let{origin:t,preloadOptions:n,remoteInfo:r,remote:i,globalSnapshot:a,remoteSnapshot:o}=e;return zK?kq(i)&&Aq(i)?{cssAssets:[],jsAssetsWithoutEntry:[],entryAssets:[{name:i.name,url:i.entry,moduleInfo:{name:r.name,entry:i.entry,type:r.type||`global`,entryGlobalName:``,shareScope:``}}]}:(_X(r,o),SX(t,n,r,a,o)):{cssAssets:[],jsAssetsWithoutEntry:[],entryAssets:[]}}}};function wX(e,t){let n=Jq({name:t.name,version:t.options.version}),r=n&&`remotesInfo`in n&&n.remotesInfo&&Gq(n.remotesInfo,e.name).value;return r&&r.matchedVersion?{hostGlobalSnapshot:n,globalSnapshot:Kq(),remoteSnapshot:Jq({name:e.name,version:r.matchedVersion})}:{hostGlobalSnapshot:void 0,globalSnapshot:Kq(),remoteSnapshot:Jq({name:e.name,version:`version`in e?e.version:void 0})}}var TX=class{constructor(e){this.loadingHostSnapshot=null,this.manifestCache=new Map,this.hooks=new gX({beforeLoadRemoteSnapshot:new fX(`beforeLoadRemoteSnapshot`),loadSnapshot:new hX(`loadGlobalSnapshot`),loadRemoteSnapshot:new hX(`loadRemoteSnapshot`),afterLoadSnapshot:new hX(`afterLoadSnapshot`)}),this.manifestLoading=zq.__FEDERATION__.__MANIFEST_LOADING__,this.HostInstance=e,this.loaderHook=e.loaderHook}async loadRemoteSnapshotInfo({moduleInfo:e,id:t,initiator:n=`loadRemote`}){let{options:r}=this.HostInstance;await this.hooks.lifecycle.beforeLoadRemoteSnapshot.emit({options:r,moduleInfo:e,origin:this.HostInstance});let i=Jq({name:this.HostInstance.options.name,version:this.HostInstance.options.version});i||(i={version:this.HostInstance.options.version||``,remoteEntry:``,remotesInfo:{}},Xq({[this.HostInstance.options.name]:i})),i&&`remotesInfo`in i&&!Gq(i.remotesInfo,e.name).value&&(`version`in e||`entry`in e)&&(i.remotesInfo={...i?.remotesInfo,[e.name]:{matchedVersion:`version`in e?e.version:e.entry}});let{hostGlobalSnapshot:a,remoteSnapshot:o,globalSnapshot:s}=this.getGlobalRemoteInfo(e),{remoteSnapshot:c,globalSnapshot:l}=await this.hooks.lifecycle.loadSnapshot.emit({options:r,moduleInfo:e,hostGlobalSnapshot:a,remoteSnapshot:o,globalSnapshot:s}),u,d;if(c)if(QK(c)){let r=zK?c.remoteEntry:c.ssrRemoteEntry||c.remoteEntry||``,i=await this.loadManifestSnapshot(r,e,{},{initiator:n,id:t||e.name}),a=Yq({...e,entry:r},i);u=i,d=a}else{let{remoteSnapshot:t}=await this.hooks.lifecycle.loadRemoteSnapshot.emit({options:this.HostInstance.options,moduleInfo:e,remoteSnapshot:c,from:`global`});u=t,d=l}else if(kq(e)){let r=await this.loadManifestSnapshot(e.entry,e,{},{initiator:n,id:t||e.name}),i=Yq(e,r);u=r,d=i}else Tq(CY,FY,{remoteName:e.name,remoteVersion:e.version,hostName:this.HostInstance.options.name,globalSnapshot:JSON.stringify(l)},void 0,ZY(this.HostInstance.options));return await this.hooks.lifecycle.afterLoadSnapshot.emit({id:t,host:this.HostInstance,options:r,moduleInfo:e,remoteSnapshot:u}),{remoteSnapshot:u,globalSnapshot:d}}getGlobalRemoteInfo(e){return wX(e,this.HostInstance)}async getManifestJson(e,t,n,r){return(async()=>{let n=qY(t),i=this.manifestCache.get(e);if(i)return i;try{let t=await this.loaderHook.lifecycle.fetch.emit(e,{},n,r?{...r,url:e,resourceType:`manifest`}:void 0);(!t||!(t instanceof Response))&&(t=await fetch(e,{})),i=await t.json()}catch(r){i=await this.HostInstance.remoteHandler.hooks.lifecycle.errorLoadRemote.emit({id:e,error:r,from:`runtime`,lifecycle:`afterResolve`,remote:n,origin:this.HostInstance}),i||(delete this.manifestLoading[e],Tq(yY,FY,{manifestUrl:e,moduleName:t.name,hostName:this.HostInstance.options.name},`${r}`,ZY(this.HostInstance.options)))}let a=[!i.metaData&&`metaData`,!i.exposes&&`exposes`,!i.shared&&`shared`].filter(Boolean);return a.length>0&&await this.HostInstance.remoteHandler.hooks.lifecycle.errorLoadRemote.emit({id:e,error:Error(`"${e}" is not a valid federation manifest for remote "${t.name}". Missing required fields: ${a.join(`, `)}.`),from:`runtime`,lifecycle:`afterResolve`,remote:n,origin:this.HostInstance}),a.length>0&&Tq(kY,FY,{manifestUrl:e,moduleName:t.name,hostName:this.HostInstance.options.name,missingFields:a.join(`,`)},void 0,ZY(this.HostInstance.options)),this.manifestCache.set(e,i),i})()}async loadManifestSnapshot(e,t,n,r){let i=async()=>{let i=await this.getManifestJson(e,t,n,r),a=ZK(i,{version:e}),{remoteSnapshot:o}=await this.hooks.lifecycle.loadRemoteSnapshot.emit({options:this.HostInstance.options,moduleInfo:t,manifestJson:i,remoteSnapshot:a,manifestUrl:e,from:`manifest`});return o};return this.manifestLoading[e]||(this.manifestLoading[e]=i().then(e=>e)),this.manifestLoading[e]}},EX=class{constructor(e){this.hooks=new gX({beforeRegisterShare:new mX(`beforeRegisterShare`),afterResolve:new hX(`afterResolve`),beforeLoadShare:new hX(`beforeLoadShare`),loadShare:new fX,afterLoadShare:new dX(`afterLoadShare`),errorLoadShare:new dX(`errorLoadShare`),resolveShare:new mX(`resolveShare`),initContainerShareScopeMap:new mX(`initContainerShareScopeMap`)}),this.host=e,this.shareScopeMap={},this.initTokens={},this._setGlobalShareScopeMap(e.options)}emitAfterLoadShare({lifecycle:e,pkgName:t,shareInfo:n,selectedShared:r}){try{this.hooks.lifecycle.afterLoadShare.emit({pkgName:t,shareInfo:n,selectedShared:r,shared:this.host.options.shared,shareScopeMap:this.shareScopeMap,lifecycle:e,origin:this.host})}catch(e){Eq(e)}}emitErrorLoadShare({lifecycle:e,pkgName:t,shareInfo:n,error:r,recovered:i}){try{this.hooks.lifecycle.errorLoadShare.emit({pkgName:t,shareInfo:n,shared:this.host.options.shared,shareScopeMap:this.shareScopeMap,lifecycle:e,origin:this.host,error:r,recovered:i})}catch(e){Eq(e)}}registerShared(e,t){let{newShareInfos:n,allShareInfos:r}=QJ(e,t);return Object.keys(n).forEach(e=>{n[e].forEach(n=>{n.scope.forEach(r=>{this.hooks.lifecycle.beforeRegisterShare.emit({origin:this.host,pkgName:e,shared:n}),this.shareScopeMap[r]?.[e]||this.setShared({pkgName:e,lib:n.lib,get:n.get,loaded:n.loaded||!!n.lib,shared:n,from:t.name})})})}),{newShareInfos:n,allShareInfos:r}}async loadShare(e,t){let{host:n}=this,r=dY({pkgName:e,extraOptions:t,shareInfos:n.options.shared}),i=r;try{r?.scope&&await Promise.all(r.scope.map(async e=>{await Promise.all(this.initializeSharing(e,{strategy:r.strategy}))})),i=(await this.hooks.lifecycle.beforeLoadShare.emit({pkgName:e,shareInfo:r,shared:n.options.shared,origin:n})).shareInfo,wq(i,`Cannot find shared "${e}" in host "${n.options.name}". Ensure the shared config for "${e}" is declared in the federation plugin options and the host has been initialized before loading shares.`);let a=i,{shared:o,useTreesShaking:s}=lY(this.shareScopeMap,e,i,this.hooks.lifecycle.resolveShare)||{};if(o){let t=pY(o,s);if(t.lib)return fY(t,n.options.name),this.emitAfterLoadShare({lifecycle:`loadShare`,pkgName:e,shareInfo:a,selectedShared:o}),t.lib;if(t.loading&&!t.loaded){let r=await t.loading;return t.loaded=!0,t.lib||=r,fY(t,n.options.name),this.emitAfterLoadShare({lifecycle:`loadShare`,pkgName:e,shareInfo:a,selectedShared:o}),r}else{let r=(async()=>{let e=await t.get();return fY(t,n.options.name),t.loaded=!0,t.lib=e,e})();this.setShared({pkgName:e,loaded:!1,shared:o,from:n.options.name,lib:null,loading:r,treeShaking:s?t:void 0});let i=await r;return this.emitAfterLoadShare({lifecycle:`loadShare`,pkgName:e,shareInfo:a,selectedShared:o}),i}}else{if(t?.customShareInfo)return this.emitErrorLoadShare({lifecycle:`loadShare`,pkgName:e,shareInfo:a,recovered:!0}),!1;let r=$J(a.treeShaking),i=pY(a,r),o=(async()=>{let t=await i.get();i.lib=t,i.loaded=!0,fY(i,n.options.name);let{shared:r,useTreesShaking:o}=lY(this.shareScopeMap,e,a,this.hooks.lifecycle.resolveShare)||{};if(r){let e=pY(r,o);e.lib=t,e.loaded=!0,r.from=a.from}return t})();this.setShared({pkgName:e,loaded:!1,shared:a,from:n.options.name,lib:null,loading:o,treeShaking:r?i:void 0});let s=await o;return this.emitAfterLoadShare({lifecycle:`loadShare`,pkgName:e,shareInfo:a,selectedShared:a}),s}}catch(t){throw this.emitErrorLoadShare({lifecycle:`loadShare`,pkgName:e,shareInfo:i,error:t}),t}}initializeSharing(e=YJ,t){let{host:n}=this,r=t?.from,i=t?.strategy,a=t?.initScope,o=[];if(r!==`build`){let{initTokens:t}=this;a||=[];let n=t[e];if(n||=t[e]={from:this.host.name},a.indexOf(n)>=0)return o;a.push(n)}let s=this.shareScopeMap,c=n.options.name;s[e]||(s[e]={});let l=s[e],u=(e,t)=>{let{version:n,eager:r}=t;l[e]=l[e]||{};let i=l[e],a=i[n]&&pY(i[n]),o=!!(a&&(`eager`in a&&a.eager||`shareConfig`in a&&a.shareConfig?.eager));(!a||a.strategy!==`loaded-first`&&!a.loaded&&(!r==!o?c>i[n].from:r))&&(i[n]=t)},d=async e=>{let{module:t}=await n.remoteHandler.getRemoteModuleAndOptions({id:e}),r;try{r=await t.getEntry()}catch(i){if(r=await n.remoteHandler.hooks.lifecycle.errorLoadRemote.emit({id:e,error:i,from:`runtime`,lifecycle:`beforeLoadShare`,remote:t.remoteInfo,origin:n}),!r)return}finally{r?.init&&!t.initing&&(t.remoteEntryExports=r,await t.init(void 0,void 0,a))}};return Object.keys(n.options.shared).forEach(t=>{n.options.shared[t].forEach(n=>{n.scope.includes(e)&&u(t,n)})}),(n.options.shareStrategy===`version-first`||i===`version-first`)&&n.options.remotes.forEach(t=>{t.shareScope===e&&o.push(d(t.name))}),o}loadShareSync(e,t){let{host:n}=this,r=dY({pkgName:e,extraOptions:t,shareInfos:n.options.shared});try{r?.scope&&r.scope.forEach(e=>{this.initializeSharing(e,{strategy:r.strategy})});let{shared:i}=lY(this.shareScopeMap,e,r,this.hooks.lifecycle.resolveShare)||{};if(i){if(typeof i.lib==`function`)return fY(i,n.options.name),i.loaded||(i.loaded=!0,i.from===n.options.name&&(r.loaded=!0)),this.emitAfterLoadShare({lifecycle:`loadShareSync`,pkgName:e,shareInfo:r,selectedShared:i}),i.lib;if(typeof i.get==`function`){let t=i.get();if(!(t instanceof Promise))return fY(i,n.options.name),this.setShared({pkgName:e,loaded:!0,from:n.options.name,lib:t,shared:i}),this.emitAfterLoadShare({lifecycle:`loadShareSync`,pkgName:e,shareInfo:r,selectedShared:i}),t}}if(r.lib)return r.loaded||=!0,this.emitAfterLoadShare({lifecycle:`loadShareSync`,pkgName:e,shareInfo:r,selectedShared:r}),r.lib;if(r.get){let i=r.get();return i instanceof Promise&&Tq(t?.from===`build`?xY:SY,FY,{hostName:n.options.name,sharedPkgName:e},void 0,ZY(n.options)),r.lib=i,this.setShared({pkgName:e,loaded:!0,from:n.options.name,lib:r.lib,shared:r}),this.emitAfterLoadShare({lifecycle:`loadShareSync`,pkgName:e,shareInfo:r,selectedShared:r}),r.lib}Tq(SY,FY,{hostName:n.options.name,sharedPkgName:e},void 0,ZY(n.options))}catch(t){throw this.emitErrorLoadShare({lifecycle:`loadShareSync`,pkgName:e,shareInfo:r,error:t}),t}}initShareScopeMap(e,t,n={}){let{host:r}=this;this.shareScopeMap[e]=t,this.hooks.lifecycle.initContainerShareScopeMap.emit({shareScope:t,options:r.options,origin:r,scopeName:e,hostShareScopeMap:n.hostShareScopeMap})}setShared({pkgName:e,shared:t,from:n,lib:r,loading:i,loaded:a,get:o,treeShaking:s}){let{version:c,scope:l=`default`,...u}=t,d=Array.isArray(l)?l:[l],f=e=>{let t=(e,t,n)=>{n&&!e[t]&&(e[t]=n)},n=s?e.treeShaking:e;t(n,`loaded`,a),t(n,`loading`,i),t(n,`get`,o)};d.forEach(t=>{this.shareScopeMap[t]||(this.shareScopeMap[t]={}),this.shareScopeMap[t][e]||(this.shareScopeMap[t][e]={}),this.shareScopeMap[t][e][c]||(this.shareScopeMap[t][e][c]={version:c,scope:[t],...u,lib:r});let i=this.shareScopeMap[t][e][c];f(i),n&&i.from!==n&&(i.from=n)})}_setGlobalShareScopeMap(e){let t=uY(),n=e.id||e.name;n&&!t[n]&&(t[n]=this.shareScopeMap)}},DX=class{constructor(e){this.hooks=new gX({beforeRegisterRemote:new mX(`beforeRegisterRemote`),registerRemote:new mX(`registerRemote`),beforeRequest:new hX(`beforeRequest`),afterMatchRemote:new fX(`afterMatchRemote`),onLoad:new fX(`onLoad`),afterLoadRemote:new fX(`afterLoadRemote`),handlePreloadModule:new dX(`handlePreloadModule`),errorLoadRemote:new fX(`errorLoadRemote`),beforePreloadRemote:new fX(`beforePreloadRemote`),generatePreloadAssets:new fX(`generatePreloadAssets`),afterPreloadRemote:new fX(`afterPreloadRemote`),loadEntry:new fX}),this.host=e,this.idToRemoteMap={}}formatAndRegisterRemote(e,t){return(t.remotes||[]).reduce((e,t)=>(this.registerRemote(t,e,{force:!1}),e),e.remotes)}setIdToRemoteMap(e,t){let{remote:n,expose:r}=t,{name:i,alias:a}=n;if(this.idToRemoteMap[e]={name:n.name,expose:r},a&&e.startsWith(i)){let t=e.replace(i,a);this.idToRemoteMap[t]={name:n.name,expose:r};return}if(a&&e.startsWith(a)){let t=e.replace(a,i);this.idToRemoteMap[t]={name:n.name,expose:r}}}async loadRemote(e,t){let{host:n}=this,r=hY(n.options.remotes,e),i=e,a=r?.expose,o=r?qY(r.remote):void 0,s;try{let{loadFactory:r=!0}=t||{loadFactory:!0},{module:c,moduleOptions:l,remoteMatchInfo:u}=await this.getRemoteModuleAndOptions({id:e}),{pkgNameOrAlias:d,remote:f,expose:p,id:m,remoteSnapshot:h}=u;i=m,a=p,o=qY(f);let g=await c.get(m,p,t,h),_=await this.hooks.lifecycle.onLoad.emit({id:m,pkgNameOrAlias:d,expose:p,exposeModule:r?g:void 0,exposeModuleFactory:r?void 0:g,remote:f,options:l,moduleInstance:c,origin:n});return this.setIdToRemoteMap(e,u),s={id:i,expose:a,remote:o,options:t,origin:n},typeof _==`function`?_:g}catch(r){let{from:c=`runtime`}=t||{from:`runtime`},l;try{l=await this.hooks.lifecycle.errorLoadRemote.emit({id:e,error:r,from:c,lifecycle:`onLoad`,expose:a,remote:o,origin:n})}catch(e){throw s={id:i,expose:a,remote:o,options:t,error:e,origin:n},e}if(!l)throw s={id:i,expose:a,remote:o,options:t,error:r,origin:n},r;return s={id:i,expose:a,remote:o,options:t,error:r,origin:n,recovered:!0},l}finally{s&&await this.hooks.lifecycle.afterLoadRemote.emit(s)}}async preloadRemote(e){let{host:t}=this,n=[];await this.hooks.lifecycle.beforePreloadRemote.emit({preloadOps:e,options:t.options,origin:t});let r=$Y(t.options.remotes,e),i=e=>{let{preloadConfig:t,remote:n}=e,r=t.exposes||[];return r.length?r.map(r=>({ops:{...e,preloadConfig:{...t,exposes:[r]}},id:mY(n.name,r)})):[{ops:e,id:`${n.name}/*`}]},a;await Promise.all(r.flatMap(i).map(async e=>{let{ops:r,id:i}=e,{remote:a,preloadConfig:o}=r,s=qY(a);try{let{globalSnapshot:e,remoteSnapshot:c}=await t.snapshotHandler.loadRemoteSnapshotInfo({moduleInfo:a,id:i,initiator:`preloadRemote`}),l=await this.hooks.lifecycle.generatePreloadAssets.emit({origin:t,preloadOptions:r,remote:a,remoteInfo:s,globalSnapshot:e,remoteSnapshot:c});if(!l)return;let u=await sX(s,t,l,!0,{initiator:`preloadRemote`,id:i});n.push({remote:a,remoteInfo:s,preloadConfig:o,id:i,results:u})}catch(e){n.push({remote:a,remoteInfo:s,preloadConfig:o,id:i,results:[{url:s.entry,status:`error`,resourceType:/\.json(?:$|[?#])/i.test(s.entry)?`manifest`:`remoteEntry`,initiator:`preloadRemote`,id:i,error:e}]})}}));let o=n.flatMap(e=>e.results.filter(e=>e.status===`error`||e.status===`timeout`));if(o.length>0&&(a=Error(`preloadRemote failed to load ${o.length} resource(s).`),Object.assign(a,{results:n,failedResults:o})),await this.hooks.lifecycle.afterPreloadRemote.emit({preloadOps:e,options:t.options,origin:t,results:n,error:a}),a)throw a}registerRemotes(e,t){let{host:n}=this;e.forEach(e=>{this.registerRemote(e,n.options.remotes,{force:t?.force})})}async getRemoteModuleAndOptions(e){let{host:t}=this,{id:n}=e,r;try{r=await this.hooks.lifecycle.beforeRequest.emit({id:n,options:t.options,origin:t})}catch(e){if(r=await this.hooks.lifecycle.errorLoadRemote.emit({id:n,options:t.options,origin:t,from:`runtime`,error:e,lifecycle:`beforeRequest`}),!r)throw e}let{id:i}=r,a=hY(t.options.remotes,i);if(!a)try{Tq(bY,FY,{hostName:t.options.name,requestId:i},void 0,ZY(t.options))}catch(e){throw await this.hooks.lifecycle.afterMatchRemote.emit({id:i,options:t.options,error:e,origin:t}),e}let{remote:o}=a,s=qY(o);await this.hooks.lifecycle.afterMatchRemote.emit({id:i,...a,options:t.options,remoteInfo:s,origin:t});let c=await t.sharedHandler.hooks.lifecycle.afterResolve.emit({id:i,...a,options:t.options,origin:t,remoteInfo:s}),{remote:l,expose:u}=c;wq(l&&u,`The 'beforeRequest' hook was executed, but it failed to return the correct 'remote' and 'expose' values while loading ${i}.`);let d=t.moduleCache.get(l.name),f={host:t,remoteInfo:s};return d||(d=new uX(f),t.moduleCache.set(l.name,d)),{module:d,moduleOptions:f,remoteMatchInfo:c}}registerRemote(e,t,n){let{host:r}=this,i=()=>{if(e.alias){let n=t.find(t=>e.alias&&(t.name.startsWith(e.alias)||t.alias?.startsWith(e.alias)));wq(!n,`The alias ${e.alias} of remote ${e.name} is not allowed to be the prefix of ${n&&n.name} name or alias`)}`entry`in e&&zK&&typeof window<`u`&&!e.entry.startsWith(`http`)&&(e.entry=new URL(e.entry,window.location.origin).href),e.shareScope||=YJ,e.type||=XJ};this.hooks.lifecycle.beforeRegisterRemote.emit({remote:e,origin:r});let a=t.find(t=>t.name===e.name);if(!a)i(),t.push(e),this.hooks.lifecycle.registerRemote.emit({remote:e,origin:r});else{let o=[`The remote "${e.name}" is already registered.`,`Please note that overriding it may cause unexpected errors.`];n?.force&&(this.removeRemote(a),i(),t.push(e),this.hooks.lifecycle.registerRemote.emit({remote:e,origin:r}),qK(o.join(` `)))}}removeRemote(e){try{let{host:t}=this,{name:n}=e,r=t.options.remotes.findIndex(e=>e.name===n);r!==-1&&t.options.remotes.splice(r,1);let i=t.moduleCache.get(e.name);if(i){let n=i.remoteInfo,r=n.entryGlobalName;Lq[r]&&(Object.getOwnPropertyDescriptor(Lq,r)?.configurable?delete Lq[r]:Lq[r]=void 0);let a=GY(i.remoteInfo);Hq[a]&&delete Hq[a],t.snapshotHandler.manifestCache.delete(n.entry);let o=n.buildVersion?GK(n.name,n.buildVersion):n.name,s=Lq.__FEDERATION__.__INSTANCES__.findIndex(e=>n.buildVersion?e.options.id===o:e.name===o);if(s!==-1){let e=Lq.__FEDERATION__.__INSTANCES__[s];o=e.options.id||o;let t=uY(),r=!0,i=[];Object.keys(t).forEach(e=>{let a=t[e];a&&Object.keys(a).forEach(t=>{let o=a[t];o&&Object.keys(o).forEach(a=>{let s=o[a];s&&Object.keys(s).forEach(o=>{let c=s[o];c&&typeof c==`object`&&c.from===n.name&&(c.loaded||c.loading?(c.useIn=c.useIn.filter(e=>e!==n.name),c.useIn.length?r=!1:i.push([e,t,a,o])):i.push([e,t,a,o]))})})})}),r&&(e.shareScopeMap={},delete t[o]),i.forEach(([e,n,r,i])=>{delete t[e]?.[n]?.[r]?.[i]}),Lq.__FEDERATION__.__INSTANCES__.splice(s,1)}let{hostGlobalSnapshot:c}=wX(e,t);if(c){let t=c&&`remotesInfo`in c&&c.remotesInfo&&Gq(c.remotesInfo,e.name).key;t&&(delete c.remotesInfo[t],zq.__FEDERATION__.__MANIFEST_LOADING__[t]&&delete zq.__FEDERATION__.__MANIFEST_LOADING__[t])}t.moduleCache.delete(e.name)}}catch(e){Cq.error(`removeRemote failed: ${e instanceof Error?e.message:String(e)}`)}}},OX=typeof FEDERATION_OPTIMIZE_NO_SNAPSHOT_PLUGIN==`boolean`?!FEDERATION_OPTIMIZE_NO_SNAPSHOT_PLUGIN:!0;Wq(class{constructor(e){this.hooks=new gX({beforeInit:new mX(`beforeInit`),init:new dX,beforeInitContainer:new hX(`beforeInitContainer`),initContainer:new hX(`initContainer`)}),this.version=`2.5.1`,this.moduleCache=new Map,this.loaderHook=new gX({getModuleInfo:new dX,createScript:new dX,createLink:new dX,fetch:new fX,loadEntryError:new fX,afterLoadEntry:new fX(`afterLoadEntry`),beforeInitRemote:new fX(`beforeInitRemote`),afterInitRemote:new fX(`afterInitRemote`),beforeGetExpose:new fX(`beforeGetExpose`),afterGetExpose:new fX(`afterGetExpose`),beforeExecuteFactory:new fX(`beforeExecuteFactory`),afterExecuteFactory:new fX(`afterExecuteFactory`),getModuleFactory:new fX}),this.bridgeHook=new gX({beforeBridgeRender:new dX,afterBridgeRender:new dX,beforeBridgeDestroy:new dX,afterBridgeDestroy:new dX});let t=OX?[vX(),CX()]:[],n={id:JY(),name:e.name,plugins:t,remotes:[],shared:{},inBrowser:zK};this.name=e.name,this.options=n,this.snapshotHandler=new TX(this),this.sharedHandler=new EX(this),this.remoteHandler=new DX(this),this.shareScopeMap=this.sharedHandler.shareScopeMap,this.registerPlugins([...n.plugins,...e.plugins||[]]),this.options=this.formatOptions(n,e)}initOptions(e){e.name&&e.name!==this.options.name&&Tq(bq(EY,FY)),this.registerPlugins(e.plugins);let t=this.formatOptions(this.options,e);return this.options=t,t}async loadShare(e,t){return this.sharedHandler.loadShare(e,t)}loadShareSync(e,t){return this.sharedHandler.loadShareSync(e,t)}initializeSharing(e=YJ,t){return this.sharedHandler.initializeSharing(e,t)}initRawContainer(e,t,n){let r=qY({name:e,entry:t}),i=new uX({host:this,remoteInfo:r});return i.remoteEntryExports=n,this.moduleCache.set(e,i),i}async loadRemote(e,t){return this.remoteHandler.loadRemote(e,t)}async preloadRemote(e){return this.remoteHandler.preloadRemote(e)}initShareScopeMap(e,t,n={}){this.sharedHandler.initShareScopeMap(e,t,n)}formatOptions(e,t){let{allShareInfos:n}=QJ(e,t),{userOptions:r,options:i}=this.hooks.lifecycle.beforeInit.emit({origin:this,userOptions:t,options:e,shareInfo:n}),a=this.remoteHandler.formatAndRegisterRemote(i,r),{allShareInfos:o}=this.sharedHandler.registerShared(i,r),s=[...i.plugins];r.plugins&&r.plugins.forEach(e=>{s.includes(e)||s.push(e)});let c={...e,...t,plugins:s,remotes:a,shared:o,id:r.id||e.id};return this.hooks.lifecycle.init.emit({origin:this,options:c}),c}registerPlugins(e){let t=YY(e,this);this.options.plugins=this.options.plugins.reduce((e,t)=>(t&&e&&!e.find(e=>e.name===t.name)&&e.push(t),e),t||[])}registerRemotes(e,t){return this.remoteHandler.registerRemotes(e,t)}registerShared(e){this.sharedHandler.registerShared(this.options,{...this.options,shared:e})}});var kX=e((e=>{var t=i(),n=r(),a=FW();function o(e){var t=`https://react.dev/errors/`+e;if(1<arguments.length){t+=`?args[]=`+encodeURIComponent(arguments[1]);for(var n=2;n<arguments.length;n++)t+=`&args[]=`+encodeURIComponent(arguments[n])}return`Minified React error #`+e+`; visit `+t+` for the full message or use the non-minified dev environment for full errors and additional helpful warnings.`}function s(e){return!(!e||e.nodeType!==1&&e.nodeType!==9&&e.nodeType!==11)}function c(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do t=e,t.flags&4098&&(n=t.return),e=t.return;while(e)}return t.tag===3?n:null}function l(e){if(e.tag===13){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function u(e){if(e.tag===31){var t=e.memoizedState;if(t===null&&(e=e.alternate,e!==null&&(t=e.memoizedState)),t!==null)return t.dehydrated}return null}function d(e){if(c(e)!==e)throw Error(o(188))}function f(e){var t=e.alternate;if(!t){if(t=c(e),t===null)throw Error(o(188));return t===e?e:null}for(var n=e,r=t;;){var i=n.return;if(i===null)break;var a=i.alternate;if(a===null){if(r=i.return,r!==null){n=r;continue}break}if(i.child===a.child){for(a=i.child;a;){if(a===n)return d(i),e;if(a===r)return d(i),t;a=a.sibling}throw Error(o(188))}if(n.return!==r.return)n=i,r=a;else{for(var s=!1,l=i.child;l;){if(l===n){s=!0,n=i,r=a;break}if(l===r){s=!0,r=i,n=a;break}l=l.sibling}if(!s){for(l=a.child;l;){if(l===n){s=!0,n=a,r=i;break}if(l===r){s=!0,r=a,n=i;break}l=l.sibling}if(!s)throw Error(o(189))}}if(n.alternate!==r)throw Error(o(190))}if(n.tag!==3)throw Error(o(188));return n.stateNode.current===n?e:t}function p(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e;for(e=e.child;e!==null;){if(t=p(e),t!==null)return t;e=e.sibling}return null}var m=Object.assign,h=Symbol.for(`react.element`),g=Symbol.for(`react.transitional.element`),_=Symbol.for(`react.portal`),v=Symbol.for(`react.fragment`),y=Symbol.for(`react.strict_mode`),b=Symbol.for(`react.profiler`),x=Symbol.for(`react.consumer`),ee=Symbol.for(`react.context`),te=Symbol.for(`react.forward_ref`),S=Symbol.for(`react.suspense`),ne=Symbol.for(`react.suspense_list`),re=Symbol.for(`react.memo`),ie=Symbol.for(`react.lazy`),ae=Symbol.for(`react.activity`),oe=Symbol.for(`react.memo_cache_sentinel`),se=Symbol.iterator;function ce(e){return typeof e!=`object`||!e?null:(e=se&&e[se]||e[`@@iterator`],typeof e==`function`?e:null)}var le=Symbol.for(`react.client.reference`);function ue(e){if(e==null)return null;if(typeof e==`function`)return e.$$typeof===le?null:e.displayName||e.name||null;if(typeof e==`string`)return e;switch(e){case v:return`Fragment`;case b:return`Profiler`;case y:return`StrictMode`;case S:return`Suspense`;case ne:return`SuspenseList`;case ae:return`Activity`}if(typeof e==`object`)switch(e.$$typeof){case _:return`Portal`;case ee:return e.displayName||`Context`;case x:return(e._context.displayName||`Context`)+`.Consumer`;case te:var t=e.render;return e=e.displayName,e||=(e=t.displayName||t.name||``,e===``?`ForwardRef`:`ForwardRef(`+e+`)`),e;case re:return t=e.displayName||null,t===null?ue(e.type)||`Memo`:t;case ie:t=e._payload,e=e._init;try{return ue(e(t))}catch{}}return null}var de=Array.isArray,C=n.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,w=a.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,fe={pending:!1,data:null,method:null,action:null},pe=[],me=-1;function he(e){return{current:e}}function ge(e){0>me||(e.current=pe[me],pe[me]=null,me--)}function _e(e,t){me++,pe[me]=e.current,e.current=t}var ve=he(null),ye=he(null),be=he(null),xe=he(null);function Se(e,t){switch(_e(be,t),_e(ye,e),_e(ve,null),t.nodeType){case 9:case 11:e=(e=t.documentElement)&&(e=e.namespaceURI)?Yd(e):0;break;default:if(e=t.tagName,t=t.namespaceURI)t=Yd(t),e=Xd(t,e);else switch(e){case`svg`:e=1;break;case`math`:e=2;break;default:e=0}}ge(ve),_e(ve,e)}function Ce(){ge(ve),ge(ye),ge(be)}function we(e){e.memoizedState!==null&&_e(xe,e);var t=ve.current,n=Xd(t,e.type);t!==n&&(_e(ye,e),_e(ve,n))}function Te(e){ye.current===e&&(ge(ve),ge(ye)),xe.current===e&&(ge(xe),op._currentValue=fe)}var Ee,De;function Oe(e){if(Ee===void 0)try{throw Error()}catch(e){var t=e.stack.trim().match(/\n( *(at )?)/);Ee=t&&t[1]||``,De=-1<e.stack.indexOf(`
|
|
71
|
+
at`)?` (<anonymous>)`:-1<e.stack.indexOf(`@`)?`@unknown:0:0`:``}return`
|
|
72
|
+
`+Ee+e+De}var ke=!1;function Ae(e,t){if(!e||ke)return``;ke=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var r={DetermineComponentFrameRoot:function(){try{if(t){var n=function(){throw Error()};if(Object.defineProperty(n.prototype,"props",{set:function(){throw Error()}}),typeof Reflect==`object`&&Reflect.construct){try{Reflect.construct(n,[])}catch(e){var r=e}Reflect.construct(e,[],n)}else{try{n.call()}catch(e){r=e}e.call(n.prototype)}}else{try{throw Error()}catch(e){r=e}(n=e())&&typeof n.catch==`function`&&n.catch(function(){})}}catch(e){if(e&&r&&typeof e.stack==`string`)return[e.stack,r.stack]}return[null,null]}};r.DetermineComponentFrameRoot.displayName=`DetermineComponentFrameRoot`;var i=Object.getOwnPropertyDescriptor(r.DetermineComponentFrameRoot,`name`);i&&i.configurable&&Object.defineProperty(r.DetermineComponentFrameRoot,"name",{value:`DetermineComponentFrameRoot`});var a=r.DetermineComponentFrameRoot(),o=a[0],s=a[1];if(o&&s){var c=o.split(`
|
|
73
|
+
`),l=s.split(`
|
|
74
|
+
`);for(i=r=0;r<c.length&&!c[r].includes(`DetermineComponentFrameRoot`);)r++;for(;i<l.length&&!l[i].includes(`DetermineComponentFrameRoot`);)i++;if(r===c.length||i===l.length)for(r=c.length-1,i=l.length-1;1<=r&&0<=i&&c[r]!==l[i];)i--;for(;1<=r&&0<=i;r--,i--)if(c[r]!==l[i]){if(r!==1||i!==1)do if(r--,i--,0>i||c[r]!==l[i]){var u=`
|
|
75
|
+
`+c[r].replace(` at new `,` at `);return e.displayName&&u.includes(`<anonymous>`)&&(u=u.replace(`<anonymous>`,e.displayName)),u}while(1<=r&&0<=i);break}}}finally{ke=!1,Error.prepareStackTrace=n}return(n=e?e.displayName||e.name:``)?Oe(n):``}function je(e,t){switch(e.tag){case 26:case 27:case 5:return Oe(e.type);case 16:return Oe(`Lazy`);case 13:return e.child!==t&&t!==null?Oe(`Suspense Fallback`):Oe(`Suspense`);case 19:return Oe(`SuspenseList`);case 0:case 15:return Ae(e.type,!1);case 11:return Ae(e.type.render,!1);case 1:return Ae(e.type,!0);case 31:return Oe(`Activity`);default:return``}}function Me(e){try{var t=``,n=null;do t+=je(e,n),n=e,e=e.return;while(e);return t}catch(e){return`
|
|
76
|
+
Error generating stack: `+e.message+`
|
|
77
|
+
`+e.stack}}var Ne=Object.prototype.hasOwnProperty,Pe=t.unstable_scheduleCallback,Fe=t.unstable_cancelCallback,Ie=t.unstable_shouldYield,Le=t.unstable_requestPaint,Re=t.unstable_now,ze=t.unstable_getCurrentPriorityLevel,Be=t.unstable_ImmediatePriority,Ve=t.unstable_UserBlockingPriority,He=t.unstable_NormalPriority,Ue=t.unstable_LowPriority,We=t.unstable_IdlePriority,Ge=t.log,Ke=t.unstable_setDisableYieldValue,qe=null,Je=null;function Ye(e){if(typeof Ge==`function`&&Ke(e),Je&&typeof Je.setStrictMode==`function`)try{Je.setStrictMode(qe,e)}catch{}}var Xe=Math.clz32?Math.clz32:$e,Ze=Math.log,Qe=Math.LN2;function $e(e){return e>>>=0,e===0?32:31-(Ze(e)/Qe|0)|0}var et=256,tt=262144,nt=4194304;function rt(e){var t=e&42;if(t!==0)return t;switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return e&261888;case 262144:case 524288:case 1048576:case 2097152:return e&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return e&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return e}}function it(e,t,n){var r=e.pendingLanes;if(r===0)return 0;var i=0,a=e.suspendedLanes,o=e.pingedLanes;e=e.warmLanes;var s=r&134217727;return s===0?(s=r&~a,s===0?o===0?n||(n=r&~e,n!==0&&(i=rt(n))):i=rt(o):i=rt(s)):(r=s&~a,r===0?(o&=s,o===0?n||(n=s&~e,n!==0&&(i=rt(n))):i=rt(o)):i=rt(r)),i===0?0:t!==0&&t!==i&&(t&a)===0&&(a=i&-i,n=t&-t,a>=n||a===32&&n&4194048)?t:i}function at(e,t){return(e.pendingLanes&~(e.suspendedLanes&~e.pingedLanes)&t)===0}function ot(e,t){switch(e){case 1:case 2:case 4:case 8:case 64:return t+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return t+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function st(){var e=nt;return nt<<=1,!(nt&62914560)&&(nt=4194304),e}function ct(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function lt(e,t){e.pendingLanes|=t,t!==268435456&&(e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0)}function ut(e,t,n,r,i,a){var o=e.pendingLanes;e.pendingLanes=n,e.suspendedLanes=0,e.pingedLanes=0,e.warmLanes=0,e.expiredLanes&=n,e.entangledLanes&=n,e.errorRecoveryDisabledLanes&=n,e.shellSuspendCounter=0;var s=e.entanglements,c=e.expirationTimes,l=e.hiddenUpdates;for(n=o&~n;0<n;){var u=31-Xe(n),d=1<<u;s[u]=0,c[u]=-1;var f=l[u];if(f!==null)for(l[u]=null,u=0;u<f.length;u++){var p=f[u];p!==null&&(p.lane&=-536870913)}n&=~d}r!==0&&dt(e,r,0),a!==0&&i===0&&e.tag!==0&&(e.suspendedLanes|=a&~(o&~t))}function dt(e,t,n){e.pendingLanes|=t,e.suspendedLanes&=~t;var r=31-Xe(t);e.entangledLanes|=t,e.entanglements[r]=e.entanglements[r]|1073741824|n&261930}function ft(e,t){var n=e.entangledLanes|=t;for(e=e.entanglements;n;){var r=31-Xe(n),i=1<<r;i&t|e[r]&t&&(e[r]|=t),n&=~i}}function pt(e,t){var n=t&-t;return n=n&42?1:mt(n),(n&(e.suspendedLanes|t))===0?n:0}function mt(e){switch(e){case 2:e=1;break;case 8:e=4;break;case 32:e=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:e=128;break;case 268435456:e=134217728;break;default:e=0}return e}function ht(e){return e&=-e,2<e?8<e?e&134217727?32:268435456:8:2}function gt(){var e=w.p;return e===0?(e=window.event,e===void 0?32:Sp(e.type)):e}function _t(e,t){var n=w.p;try{return w.p=e,t()}finally{w.p=n}}var vt=Math.random().toString(36).slice(2),yt=`__reactFiber$`+vt,bt=`__reactProps$`+vt,xt=`__reactContainer$`+vt,St=`__reactEvents$`+vt,Ct=`__reactListeners$`+vt,wt=`__reactHandles$`+vt,Tt=`__reactResources$`+vt,Et=`__reactMarker$`+vt;function Dt(e){delete e[yt],delete e[bt],delete e[St],delete e[Ct],delete e[wt]}function Ot(e){var t=e[yt];if(t)return t;for(var n=e.parentNode;n;){if(t=n[xt]||n[yt]){if(n=t.alternate,t.child!==null||n!==null&&n.child!==null)for(e=yf(e);e!==null;){if(n=e[yt])return n;e=yf(e)}return t}e=n,n=e.parentNode}return null}function kt(e){if(e=e[yt]||e[xt]){var t=e.tag;if(t===5||t===6||t===13||t===31||t===26||t===27||t===3)return e}return null}function At(e){var t=e.tag;if(t===5||t===26||t===27||t===6)return e.stateNode;throw Error(o(33))}function jt(e){var t=e[Tt];return t||=e[Tt]={hoistableStyles:new Map,hoistableScripts:new Map},t}function Mt(e){e[Et]=!0}var Nt=new Set,Pt={};function Ft(e,t){It(e,t),It(e+`Capture`,t)}function It(e,t){for(Pt[e]=t,e=0;e<t.length;e++)Nt.add(t[e])}var Lt=RegExp(`^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$`),Rt={},zt={};function Bt(e){return Ne.call(zt,e)?!0:Ne.call(Rt,e)?!1:Lt.test(e)?zt[e]=!0:(Rt[e]=!0,!1)}function Vt(e,t,n){if(Bt(t))if(n===null)e.removeAttribute(t);else{switch(typeof n){case`undefined`:case`function`:case`symbol`:e.removeAttribute(t);return;case`boolean`:var r=t.toLowerCase().slice(0,5);if(r!==`data-`&&r!==`aria-`){e.removeAttribute(t);return}}e.setAttribute(t,``+n)}}function Ht(e,t,n){if(n===null)e.removeAttribute(t);else{switch(typeof n){case`undefined`:case`function`:case`symbol`:case`boolean`:e.removeAttribute(t);return}e.setAttribute(t,``+n)}}function Ut(e,t,n,r){if(r===null)e.removeAttribute(n);else{switch(typeof r){case`undefined`:case`function`:case`symbol`:case`boolean`:e.removeAttribute(n);return}e.setAttributeNS(t,n,``+r)}}function Wt(e){switch(typeof e){case`bigint`:case`boolean`:case`number`:case`string`:case`undefined`:return e;case`object`:return e;default:return``}}function Gt(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()===`input`&&(t===`checkbox`||t===`radio`)}function Kt(e,t,n){var r=Object.getOwnPropertyDescriptor(e.constructor.prototype,t);if(!e.hasOwnProperty(t)&&r!==void 0&&typeof r.get==`function`&&typeof r.set==`function`){var i=r.get,a=r.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return i.call(this)},set:function(e){n=``+e,a.call(this,e)}}),Object.defineProperty(e,t,{enumerable:r.enumerable}),{getValue:function(){return n},setValue:function(e){n=``+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function qt(e){if(!e._valueTracker){var t=Gt(e)?`checked`:`value`;e._valueTracker=Kt(e,t,``+e[t])}}function Jt(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r=``;return e&&(r=Gt(e)?e.checked?`true`:`false`:e.value),e=r,e===n?!1:(t.setValue(e),!0)}function Yt(e){if(e||=typeof document<`u`?document:void 0,e===void 0)return null;try{return e.activeElement||e.body}catch{return e.body}}var Xt=/[\n"\\]/g;function Zt(e){return e.replace(Xt,function(e){return`\\`+e.charCodeAt(0).toString(16)+` `})}function Qt(e,t,n,r,i,a,o,s){e.name=``,o!=null&&typeof o!=`function`&&typeof o!=`symbol`&&typeof o!=`boolean`?e.type=o:e.removeAttribute(`type`),t==null?o!==`submit`&&o!==`reset`||e.removeAttribute(`value`):o===`number`?(t===0&&e.value===``||e.value!=t)&&(e.value=``+Wt(t)):e.value!==``+Wt(t)&&(e.value=``+Wt(t)),t==null?n==null?r!=null&&e.removeAttribute(`value`):en(e,o,Wt(n)):en(e,o,Wt(t)),i==null&&a!=null&&(e.defaultChecked=!!a),i!=null&&(e.checked=i&&typeof i!=`function`&&typeof i!=`symbol`),s!=null&&typeof s!=`function`&&typeof s!=`symbol`&&typeof s!=`boolean`?e.name=``+Wt(s):e.removeAttribute(`name`)}function $t(e,t,n,r,i,a,o,s){if(a!=null&&typeof a!=`function`&&typeof a!=`symbol`&&typeof a!=`boolean`&&(e.type=a),t!=null||n!=null){if(!(a!==`submit`&&a!==`reset`||t!=null)){qt(e);return}n=n==null?``:``+Wt(n),t=t==null?n:``+Wt(t),s||t===e.value||(e.value=t),e.defaultValue=t}r??=i,r=typeof r!=`function`&&typeof r!=`symbol`&&!!r,e.checked=s?e.checked:!!r,e.defaultChecked=!!r,o!=null&&typeof o!=`function`&&typeof o!=`symbol`&&typeof o!=`boolean`&&(e.name=o),qt(e)}function en(e,t,n){t===`number`&&Yt(e.ownerDocument)===e||e.defaultValue===``+n||(e.defaultValue=``+n)}function tn(e,t,n,r){if(e=e.options,t){t={};for(var i=0;i<n.length;i++)t[`$`+n[i]]=!0;for(n=0;n<e.length;n++)i=t.hasOwnProperty(`$`+e[n].value),e[n].selected!==i&&(e[n].selected=i),i&&r&&(e[n].defaultSelected=!0)}else{for(n=``+Wt(n),t=null,i=0;i<e.length;i++){if(e[i].value===n){e[i].selected=!0,r&&(e[i].defaultSelected=!0);return}t!==null||e[i].disabled||(t=e[i])}t!==null&&(t.selected=!0)}}function nn(e,t,n){if(t!=null&&(t=``+Wt(t),t!==e.value&&(e.value=t),n==null)){e.defaultValue!==t&&(e.defaultValue=t);return}e.defaultValue=n==null?``:``+Wt(n)}function T(e,t,n,r){if(t==null){if(r!=null){if(n!=null)throw Error(o(92));if(de(r)){if(1<r.length)throw Error(o(93));r=r[0]}n=r}n??=``,t=n}n=Wt(t),e.defaultValue=n,r=e.textContent,r===n&&r!==``&&r!==null&&(e.value=r),qt(e)}function rn(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var an=new Set(`animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp`.split(` `));function on(e,t,n){var r=t.indexOf(`--`)===0;n==null||typeof n==`boolean`||n===``?r?e.setProperty(t,``):t===`float`?e.cssFloat=``:e[t]=``:r?e.setProperty(t,n):typeof n!=`number`||n===0||an.has(t)?t===`float`?e.cssFloat=n:e[t]=(``+n).trim():e[t]=n+`px`}function sn(e,t,n){if(t!=null&&typeof t!=`object`)throw Error(o(62));if(e=e.style,n!=null){for(var r in n)!n.hasOwnProperty(r)||t!=null&&t.hasOwnProperty(r)||(r.indexOf(`--`)===0?e.setProperty(r,``):r===`float`?e.cssFloat=``:e[r]=``);for(var i in t)r=t[i],t.hasOwnProperty(i)&&n[i]!==r&&on(e,i,r)}else for(var a in t)t.hasOwnProperty(a)&&on(e,a,t[a])}function E(e){if(e.indexOf(`-`)===-1)return!1;switch(e){case`annotation-xml`:case`color-profile`:case`font-face`:case`font-face-src`:case`font-face-uri`:case`font-face-format`:case`font-face-name`:case`missing-glyph`:return!1;default:return!0}}var cn=new Map([[`acceptCharset`,`accept-charset`],[`htmlFor`,`for`],[`httpEquiv`,`http-equiv`],[`crossOrigin`,`crossorigin`],[`accentHeight`,`accent-height`],[`alignmentBaseline`,`alignment-baseline`],[`arabicForm`,`arabic-form`],[`baselineShift`,`baseline-shift`],[`capHeight`,`cap-height`],[`clipPath`,`clip-path`],[`clipRule`,`clip-rule`],[`colorInterpolation`,`color-interpolation`],[`colorInterpolationFilters`,`color-interpolation-filters`],[`colorProfile`,`color-profile`],[`colorRendering`,`color-rendering`],[`dominantBaseline`,`dominant-baseline`],[`enableBackground`,`enable-background`],[`fillOpacity`,`fill-opacity`],[`fillRule`,`fill-rule`],[`floodColor`,`flood-color`],[`floodOpacity`,`flood-opacity`],[`fontFamily`,`font-family`],[`fontSize`,`font-size`],[`fontSizeAdjust`,`font-size-adjust`],[`fontStretch`,`font-stretch`],[`fontStyle`,`font-style`],[`fontVariant`,`font-variant`],[`fontWeight`,`font-weight`],[`glyphName`,`glyph-name`],[`glyphOrientationHorizontal`,`glyph-orientation-horizontal`],[`glyphOrientationVertical`,`glyph-orientation-vertical`],[`horizAdvX`,`horiz-adv-x`],[`horizOriginX`,`horiz-origin-x`],[`imageRendering`,`image-rendering`],[`letterSpacing`,`letter-spacing`],[`lightingColor`,`lighting-color`],[`markerEnd`,`marker-end`],[`markerMid`,`marker-mid`],[`markerStart`,`marker-start`],[`overlinePosition`,`overline-position`],[`overlineThickness`,`overline-thickness`],[`paintOrder`,`paint-order`],[`panose-1`,`panose-1`],[`pointerEvents`,`pointer-events`],[`renderingIntent`,`rendering-intent`],[`shapeRendering`,`shape-rendering`],[`stopColor`,`stop-color`],[`stopOpacity`,`stop-opacity`],[`strikethroughPosition`,`strikethrough-position`],[`strikethroughThickness`,`strikethrough-thickness`],[`strokeDasharray`,`stroke-dasharray`],[`strokeDashoffset`,`stroke-dashoffset`],[`strokeLinecap`,`stroke-linecap`],[`strokeLinejoin`,`stroke-linejoin`],[`strokeMiterlimit`,`stroke-miterlimit`],[`strokeOpacity`,`stroke-opacity`],[`strokeWidth`,`stroke-width`],[`textAnchor`,`text-anchor`],[`textDecoration`,`text-decoration`],[`textRendering`,`text-rendering`],[`transformOrigin`,`transform-origin`],[`underlinePosition`,`underline-position`],[`underlineThickness`,`underline-thickness`],[`unicodeBidi`,`unicode-bidi`],[`unicodeRange`,`unicode-range`],[`unitsPerEm`,`units-per-em`],[`vAlphabetic`,`v-alphabetic`],[`vHanging`,`v-hanging`],[`vIdeographic`,`v-ideographic`],[`vMathematical`,`v-mathematical`],[`vectorEffect`,`vector-effect`],[`vertAdvY`,`vert-adv-y`],[`vertOriginX`,`vert-origin-x`],[`vertOriginY`,`vert-origin-y`],[`wordSpacing`,`word-spacing`],[`writingMode`,`writing-mode`],[`xmlnsXlink`,`xmlns:xlink`],[`xHeight`,`x-height`]]),ln=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function un(e){return ln.test(``+e)?`javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')`:e}function dn(){}var fn=null;function pn(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var mn=null,hn=null;function gn(e){var t=kt(e);if(t&&(e=t.stateNode)){var n=e[bt]||null;a:switch(e=t.stateNode,t.type){case`input`:if(Qt(e,n.value,n.defaultValue,n.defaultValue,n.checked,n.defaultChecked,n.type,n.name),t=n.name,n.type===`radio`&&t!=null){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll(`input[name="`+Zt(``+t)+`"][type="radio"]`),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var i=r[bt]||null;if(!i)throw Error(o(90));Qt(r,i.value,i.defaultValue,i.defaultValue,i.checked,i.defaultChecked,i.type,i.name)}}for(t=0;t<n.length;t++)r=n[t],r.form===e.form&&Jt(r)}break a;case`textarea`:nn(e,n.value,n.defaultValue);break a;case`select`:t=n.value,t!=null&&tn(e,!!n.multiple,t,!1)}}}var _n=!1;function vn(e,t,n){if(_n)return e(t,n);_n=!0;try{return e(t)}finally{if(_n=!1,(mn!==null||hn!==null)&&(Tu(),mn&&(t=mn,e=hn,hn=mn=null,gn(t),e)))for(t=0;t<e.length;t++)gn(e[t])}}function yn(e,t){var n=e.stateNode;if(n===null)return null;var r=n[bt]||null;if(r===null)return null;n=r[t];a:switch(t){case`onClick`:case`onClickCapture`:case`onDoubleClick`:case`onDoubleClickCapture`:case`onMouseDown`:case`onMouseDownCapture`:case`onMouseMove`:case`onMouseMoveCapture`:case`onMouseUp`:case`onMouseUpCapture`:case`onMouseEnter`:(r=!r.disabled)||(e=e.type,r=!(e===`button`||e===`input`||e===`select`||e===`textarea`)),e=!r;break a;default:e=!1}if(e)return null;if(n&&typeof n!=`function`)throw Error(o(231,t,typeof n));return n}var bn=!(typeof window>`u`||window.document===void 0||window.document.createElement===void 0),xn=!1;if(bn)try{var Sn={};Object.defineProperty(Sn,"passive",{get:function(){xn=!0}}),window.addEventListener(`test`,Sn,Sn),window.removeEventListener(`test`,Sn,Sn)}catch{xn=!1}var Cn=null,wn=null,Tn=null;function En(){if(Tn)return Tn;var e,t=wn,n=t.length,r,i=`value`in Cn?Cn.value:Cn.textContent,a=i.length;for(e=0;e<n&&t[e]===i[e];e++);var o=n-e;for(r=1;r<=o&&t[n-r]===i[a-r];r++);return Tn=i.slice(e,1<r?1-r:void 0)}function Dn(e){var t=e.keyCode;return`charCode`in e?(e=e.charCode,e===0&&t===13&&(e=13)):e=t,e===10&&(e=13),32<=e||e===13?e:0}function On(){return!0}function kn(){return!1}function An(e){function t(t,n,r,i,a){for(var o in this._reactName=t,this._targetInst=r,this.type=n,this.nativeEvent=i,this.target=a,this.currentTarget=null,e)e.hasOwnProperty(o)&&(t=e[o],this[o]=t?t(i):i[o]);return this.isDefaultPrevented=(i.defaultPrevented==null?!1===i.returnValue:i.defaultPrevented)?On:kn,this.isPropagationStopped=kn,this}return m(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():typeof e.returnValue!=`unknown`&&(e.returnValue=!1),this.isDefaultPrevented=On)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():typeof e.cancelBubble!=`unknown`&&(e.cancelBubble=!0),this.isPropagationStopped=On)},persist:function(){},isPersistent:On}),t}var jn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},D=An(jn),Mn=m({},jn,{view:0,detail:0}),Nn=An(Mn),Pn,Fn,In,Ln=m({},Mn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Jn,button:0,buttons:0,relatedTarget:function(e){return e.relatedTarget===void 0?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return`movementX`in e?e.movementX:(e!==In&&(In&&e.type===`mousemove`?(Pn=e.screenX-In.screenX,Fn=e.screenY-In.screenY):Fn=Pn=0,In=e),Pn)},movementY:function(e){return`movementY`in e?e.movementY:Fn}}),Rn=An(Ln),zn=An(m({},Ln,{dataTransfer:0})),Bn=An(m({},Mn,{relatedTarget:0})),Vn=An(m({},jn,{animationName:0,elapsedTime:0,pseudoElement:0})),Hn=An(m({},jn,{clipboardData:function(e){return`clipboardData`in e?e.clipboardData:window.clipboardData}})),Un=An(m({},jn,{data:0})),Wn={Esc:`Escape`,Spacebar:` `,Left:`ArrowLeft`,Up:`ArrowUp`,Right:`ArrowRight`,Down:`ArrowDown`,Del:`Delete`,Win:`OS`,Menu:`ContextMenu`,Apps:`ContextMenu`,Scroll:`ScrollLock`,MozPrintableKey:`Unidentified`},Gn={8:`Backspace`,9:`Tab`,12:`Clear`,13:`Enter`,16:`Shift`,17:`Control`,18:`Alt`,19:`Pause`,20:`CapsLock`,27:`Escape`,32:` `,33:`PageUp`,34:`PageDown`,35:`End`,36:`Home`,37:`ArrowLeft`,38:`ArrowUp`,39:`ArrowRight`,40:`ArrowDown`,45:`Insert`,46:`Delete`,112:`F1`,113:`F2`,114:`F3`,115:`F4`,116:`F5`,117:`F6`,118:`F7`,119:`F8`,120:`F9`,121:`F10`,122:`F11`,123:`F12`,144:`NumLock`,145:`ScrollLock`,224:`Meta`},Kn={Alt:`altKey`,Control:`ctrlKey`,Meta:`metaKey`,Shift:`shiftKey`};function qn(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):(e=Kn[e])?!!t[e]:!1}function Jn(){return qn}var Yn=An(m({},Mn,{key:function(e){if(e.key){var t=Wn[e.key]||e.key;if(t!==`Unidentified`)return t}return e.type===`keypress`?(e=Dn(e),e===13?`Enter`:String.fromCharCode(e)):e.type===`keydown`||e.type===`keyup`?Gn[e.keyCode]||`Unidentified`:``},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Jn,charCode:function(e){return e.type===`keypress`?Dn(e):0},keyCode:function(e){return e.type===`keydown`||e.type===`keyup`?e.keyCode:0},which:function(e){return e.type===`keypress`?Dn(e):e.type===`keydown`||e.type===`keyup`?e.keyCode:0}})),Xn=An(m({},Ln,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),Zn=An(m({},Mn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Jn})),Qn=An(m({},jn,{propertyName:0,elapsedTime:0,pseudoElement:0})),$n=An(m({},Ln,{deltaX:function(e){return`deltaX`in e?e.deltaX:`wheelDeltaX`in e?-e.wheelDeltaX:0},deltaY:function(e){return`deltaY`in e?e.deltaY:`wheelDeltaY`in e?-e.wheelDeltaY:`wheelDelta`in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0})),er=An(m({},jn,{newState:0,oldState:0})),tr=[9,13,27,32],nr=bn&&`CompositionEvent`in window,rr=null;bn&&`documentMode`in document&&(rr=document.documentMode);var ir=bn&&`TextEvent`in window&&!rr,ar=bn&&(!nr||rr&&8<rr&&11>=rr),or=` `,sr=!1;function cr(e,t){switch(e){case`keyup`:return tr.indexOf(t.keyCode)!==-1;case`keydown`:return t.keyCode!==229;case`keypress`:case`mousedown`:case`focusout`:return!0;default:return!1}}function lr(e){return e=e.detail,typeof e==`object`&&`data`in e?e.data:null}var ur=!1;function dr(e,t){switch(e){case`compositionend`:return lr(t);case`keypress`:return t.which===32?(sr=!0,or):null;case`textInput`:return e=t.data,e===or&&sr?null:e;default:return null}}function fr(e,t){if(ur)return e===`compositionend`||!nr&&cr(e,t)?(e=En(),Tn=wn=Cn=null,ur=!1,e):null;switch(e){case`paste`:return null;case`keypress`:if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case`compositionend`:return ar&&t.locale!==`ko`?null:t.data;default:return null}}var pr={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function mr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t===`input`?!!pr[e.type]:t===`textarea`}function hr(e,t,n,r){mn?hn?hn.push(r):hn=[r]:mn=r,t=Nd(t,`onChange`),0<t.length&&(n=new D(`onChange`,`change`,null,n,r),e.push({event:n,listeners:t}))}var gr=null,_r=null;function vr(e){Td(e,0)}function yr(e){if(Jt(At(e)))return e}function br(e,t){if(e===`change`)return t}var xr=!1;if(bn){var Sr;if(bn){var Cr=`oninput`in document;if(!Cr){var wr=document.createElement(`div`);wr.setAttribute(`oninput`,`return;`),Cr=typeof wr.oninput==`function`}Sr=Cr}else Sr=!1;xr=Sr&&(!document.documentMode||9<document.documentMode)}function Tr(){gr&&(gr.detachEvent(`onpropertychange`,Er),_r=gr=null)}function Er(e){if(e.propertyName===`value`&&yr(_r)){var t=[];hr(t,_r,e,pn(e)),vn(vr,t)}}function Dr(e,t,n){e===`focusin`?(Tr(),gr=t,_r=n,gr.attachEvent(`onpropertychange`,Er)):e===`focusout`&&Tr()}function Or(e){if(e===`selectionchange`||e===`keyup`||e===`keydown`)return yr(_r)}function kr(e,t){if(e===`click`)return yr(t)}function Ar(e,t){if(e===`input`||e===`change`)return yr(t)}function jr(e,t){return e===t&&(e!==0||1/e==1/t)||e!==e&&t!==t}var Mr=typeof Object.is==`function`?Object.is:jr;function Nr(e,t){if(Mr(e,t))return!0;if(typeof e!=`object`||!e||typeof t!=`object`||!t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++){var i=n[r];if(!Ne.call(t,i)||!Mr(e[i],t[i]))return!1}return!0}function Pr(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function Fr(e,t){var n=Pr(e);e=0;for(var r;n;){if(n.nodeType===3){if(r=e+n.textContent.length,e<=t&&r>=t)return{node:n,offset:t-e};e=r}a:{for(;n;){if(n.nextSibling){n=n.nextSibling;break a}n=n.parentNode}n=void 0}n=Pr(n)}}function Ir(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Ir(e,t.parentNode):`contains`in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Lr(e){e=e!=null&&e.ownerDocument!=null&&e.ownerDocument.defaultView!=null?e.ownerDocument.defaultView:window;for(var t=Yt(e.document);t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href==`string`}catch{n=!1}if(n)e=t.contentWindow;else break;t=Yt(e.document)}return t}function Rr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t===`input`&&(e.type===`text`||e.type===`search`||e.type===`tel`||e.type===`url`||e.type===`password`)||t===`textarea`||e.contentEditable===`true`)}var zr=bn&&`documentMode`in document&&11>=document.documentMode,Br=null,Vr=null,Hr=null,Ur=!1;function Wr(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Ur||Br==null||Br!==Yt(r)||(r=Br,`selectionStart`in r&&Rr(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),Hr&&Nr(Hr,r)||(Hr=r,r=Nd(Vr,`onSelect`),0<r.length&&(t=new D(`onSelect`,`select`,null,t,n),e.push({event:t,listeners:r}),t.target=Br)))}function Gr(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n[`Webkit`+e]=`webkit`+t,n[`Moz`+e]=`moz`+t,n}var Kr={animationend:Gr(`Animation`,`AnimationEnd`),animationiteration:Gr(`Animation`,`AnimationIteration`),animationstart:Gr(`Animation`,`AnimationStart`),transitionrun:Gr(`Transition`,`TransitionRun`),transitionstart:Gr(`Transition`,`TransitionStart`),transitioncancel:Gr(`Transition`,`TransitionCancel`),transitionend:Gr(`Transition`,`TransitionEnd`)},qr={},Jr={};bn&&(Jr=document.createElement(`div`).style,`AnimationEvent`in window||(delete Kr.animationend.animation,delete Kr.animationiteration.animation,delete Kr.animationstart.animation),`TransitionEvent`in window||delete Kr.transitionend.transition);function Yr(e){if(qr[e])return qr[e];if(!Kr[e])return e;var t=Kr[e],n;for(n in t)if(t.hasOwnProperty(n)&&n in Jr)return qr[e]=t[n];return e}var Xr=Yr(`animationend`),Zr=Yr(`animationiteration`),Qr=Yr(`animationstart`),$r=Yr(`transitionrun`),ei=Yr(`transitionstart`),ti=Yr(`transitioncancel`),ni=Yr(`transitionend`),ri=new Map,ii=`abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel`.split(` `);ii.push(`scrollEnd`);function ai(e,t){ri.set(e,t),Ft(t,[e])}var oi=typeof reportError==`function`?reportError:function(e){if(typeof window==`object`&&typeof window.ErrorEvent==`function`){var t=new window.ErrorEvent(`error`,{bubbles:!0,cancelable:!0,message:typeof e==`object`&&e&&typeof e.message==`string`?String(e.message):String(e),error:e});if(!window.dispatchEvent(t))return}else if(typeof process==`object`&&typeof process.emit==`function`){process.emit(`uncaughtException`,e);return}console.error(e)},si=[],ci=0,li=0;function ui(){for(var e=ci,t=li=ci=0;t<e;){var n=si[t];si[t++]=null;var r=si[t];si[t++]=null;var i=si[t];si[t++]=null;var a=si[t];if(si[t++]=null,r!==null&&i!==null){var o=r.pending;o===null?i.next=i:(i.next=o.next,o.next=i),r.pending=i}a!==0&&mi(n,i,a)}}function di(e,t,n,r){si[ci++]=e,si[ci++]=t,si[ci++]=n,si[ci++]=r,li|=r,e.lanes|=r,e=e.alternate,e!==null&&(e.lanes|=r)}function fi(e,t,n,r){return di(e,t,n,r),hi(e)}function pi(e,t){return di(e,null,null,t),hi(e)}function mi(e,t,n){e.lanes|=n;var r=e.alternate;r!==null&&(r.lanes|=n);for(var i=!1,a=e.return;a!==null;)a.childLanes|=n,r=a.alternate,r!==null&&(r.childLanes|=n),a.tag===22&&(e=a.stateNode,e===null||e._visibility&1||(i=!0)),e=a,a=a.return;return e.tag===3?(a=e.stateNode,i&&t!==null&&(i=31-Xe(n),e=a.hiddenUpdates,r=e[i],r===null?e[i]=[t]:r.push(t),t.lane=n|536870912),a):null}function hi(e){if(50<gu)throw gu=0,_u=null,Error(o(185));for(var t=e.return;t!==null;)e=t,t=e.return;return e.tag===3?e.stateNode:null}var gi={};function _i(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function vi(e,t,n,r){return new _i(e,t,n,r)}function yi(e){return e=e.prototype,!(!e||!e.isReactComponent)}function bi(e,t){var n=e.alternate;return n===null?(n=vi(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&65011712,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n.refCleanup=e.refCleanup,n}function xi(e,t){e.flags&=65011714;var n=e.alternate;return n===null?(e.childLanes=0,e.lanes=t,e.child=null,e.subtreeFlags=0,e.memoizedProps=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null,e.stateNode=null):(e.childLanes=n.childLanes,e.lanes=n.lanes,e.child=n.child,e.subtreeFlags=0,e.deletions=null,e.memoizedProps=n.memoizedProps,e.memoizedState=n.memoizedState,e.updateQueue=n.updateQueue,e.type=n.type,t=n.dependencies,e.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext}),e}function Si(e,t,n,r,i,a){var s=0;if(r=e,typeof e==`function`)yi(e)&&(s=1);else if(typeof e==`string`)s=Zf(e,n,ve.current)?26:e===`html`||e===`head`||e===`body`?27:5;else a:switch(e){case ae:return e=vi(31,n,t,i),e.elementType=ae,e.lanes=a,e;case v:return Ci(n.children,i,a,t);case y:s=8,i|=24;break;case b:return e=vi(12,n,t,i|2),e.elementType=b,e.lanes=a,e;case S:return e=vi(13,n,t,i),e.elementType=S,e.lanes=a,e;case ne:return e=vi(19,n,t,i),e.elementType=ne,e.lanes=a,e;default:if(typeof e==`object`&&e)switch(e.$$typeof){case ee:s=10;break a;case x:s=9;break a;case te:s=11;break a;case re:s=14;break a;case ie:s=16,r=null;break a}s=29,n=Error(o(130,e===null?`null`:typeof e,``)),r=null}return t=vi(s,n,t,i),t.elementType=e,t.type=r,t.lanes=a,t}function Ci(e,t,n,r){return e=vi(7,e,r,t),e.lanes=n,e}function wi(e,t,n){return e=vi(6,e,null,t),e.lanes=n,e}function Ti(e){var t=vi(18,null,null,0);return t.stateNode=e,t}function Ei(e,t,n){return t=vi(4,e.children===null?[]:e.children,e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}var Di=new WeakMap;function Oi(e,t){if(typeof e==`object`&&e){var n=Di.get(e);return n===void 0?(t={value:e,source:t,stack:Me(t)},Di.set(e,t),t):n}return{value:e,source:t,stack:Me(t)}}var ki=[],Ai=0,ji=null,Mi=0,Ni=[],Pi=0,Fi=null,Ii=1,Li=``;function Ri(e,t){ki[Ai++]=Mi,ki[Ai++]=ji,ji=e,Mi=t}function zi(e,t,n){Ni[Pi++]=Ii,Ni[Pi++]=Li,Ni[Pi++]=Fi,Fi=e;var r=Ii;e=Li;var i=32-Xe(r)-1;r&=~(1<<i),n+=1;var a=32-Xe(t)+i;if(30<a){var o=i-i%5;a=(r&(1<<o)-1).toString(32),r>>=o,i-=o,Ii=1<<32-Xe(t)+i|n<<i|r,Li=a+e}else Ii=1<<a|n<<i|r,Li=e}function Bi(e){e.return!==null&&(Ri(e,1),zi(e,1,0))}function Vi(e){for(;e===ji;)ji=ki[--Ai],ki[Ai]=null,Mi=ki[--Ai],ki[Ai]=null;for(;e===Fi;)Fi=Ni[--Pi],Ni[Pi]=null,Li=Ni[--Pi],Ni[Pi]=null,Ii=Ni[--Pi],Ni[Pi]=null}function Hi(e,t){Ni[Pi++]=Ii,Ni[Pi++]=Li,Ni[Pi++]=Fi,Ii=t.id,Li=t.overflow,Fi=e}var Ui=null,Wi=null,Gi=!1,Ki=null,qi=!1,Ji=Error(o(519));function Yi(e){throw ta(Oi(Error(o(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?`text`:`HTML`,``)),e)),Ji}function Xi(e){var t=e.stateNode,n=e.type,r=e.memoizedProps;switch(t[yt]=e,t[bt]=r,n){case`dialog`:Ed(`cancel`,t),Ed(`close`,t);break;case`iframe`:case`object`:case`embed`:Ed(`load`,t);break;case`video`:case`audio`:for(n=0;n<Cd.length;n++)Ed(Cd[n],t);break;case`source`:Ed(`error`,t);break;case`img`:case`image`:case`link`:Ed(`error`,t),Ed(`load`,t);break;case`details`:Ed(`toggle`,t);break;case`input`:Ed(`invalid`,t),$t(t,r.value,r.defaultValue,r.checked,r.defaultChecked,r.type,r.name,!0);break;case`select`:Ed(`invalid`,t);break;case`textarea`:Ed(`invalid`,t),T(t,r.value,r.defaultValue,r.children)}n=r.children,typeof n!=`string`&&typeof n!=`number`&&typeof n!=`bigint`||t.textContent===``+n||!0===r.suppressHydrationWarning||zd(t.textContent,n)?(r.popover!=null&&(Ed(`beforetoggle`,t),Ed(`toggle`,t)),r.onScroll!=null&&Ed(`scroll`,t),r.onScrollEnd!=null&&Ed(`scrollend`,t),r.onClick!=null&&(t.onclick=dn),t=!0):t=!1,t||Yi(e,!0)}function Zi(e){for(Ui=e.return;Ui;)switch(Ui.tag){case 5:case 31:case 13:qi=!1;return;case 27:case 3:qi=!0;return;default:Ui=Ui.return}}function Qi(e){if(e!==Ui)return!1;if(!Gi)return Zi(e),Gi=!0,!1;var t=e.tag,n;if((n=t!==3&&t!==27)&&((n=t===5)&&(n=e.type,n=!(n!==`form`&&n!==`button`)||Zd(e.type,e.memoizedProps)),n=!n),n&&Wi&&Yi(e),Zi(e),t===13){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(o(317));Wi=vf(e)}else if(t===31){if(e=e.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(o(317));Wi=vf(e)}else t===27?(t=Wi,of(e.type)?(e=_f,_f=null,Wi=e):Wi=t):Wi=Ui?gf(e.stateNode.nextSibling):null;return!0}function $i(){Wi=Ui=null,Gi=!1}function ea(){var e=Ki;return e!==null&&(au===null?au=e:au.push.apply(au,e),Ki=null),e}function ta(e){Ki===null?Ki=[e]:Ki.push(e)}var na=he(null),ra=null,ia=null;function aa(e,t,n){_e(na,t._currentValue),t._currentValue=n}function oa(e){e._currentValue=na.current,ge(na)}function sa(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)===t?r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t):(e.childLanes|=t,r!==null&&(r.childLanes|=t)),e===n)break;e=e.return}}function ca(e,t,n,r){var i=e.child;for(i!==null&&(i.return=e);i!==null;){var a=i.dependencies;if(a!==null){var s=i.child;a=a.firstContext;a:for(;a!==null;){var c=a;a=i;for(var l=0;l<t.length;l++)if(c.context===t[l]){a.lanes|=n,c=a.alternate,c!==null&&(c.lanes|=n),sa(a.return,n,e),r||(s=null);break a}a=c.next}}else if(i.tag===18){if(s=i.return,s===null)throw Error(o(341));s.lanes|=n,a=s.alternate,a!==null&&(a.lanes|=n),sa(s,n,e),s=null}else s=i.child;if(s!==null)s.return=i;else for(s=i;s!==null;){if(s===e){s=null;break}if(i=s.sibling,i!==null){i.return=s.return,s=i;break}s=s.return}i=s}}function la(e,t,n,r){e=null;for(var i=t,a=!1;i!==null;){if(!a){if(i.flags&524288)a=!0;else if(i.flags&262144)break}if(i.tag===10){var s=i.alternate;if(s===null)throw Error(o(387));if(s=s.memoizedProps,s!==null){var c=i.type;Mr(i.pendingProps.value,s.value)||(e===null?e=[c]:e.push(c))}}else if(i===xe.current){if(s=i.alternate,s===null)throw Error(o(387));s.memoizedState.memoizedState!==i.memoizedState.memoizedState&&(e===null?e=[op]:e.push(op))}i=i.return}e!==null&&ca(t,e,n,r),t.flags|=262144}function ua(e){for(e=e.firstContext;e!==null;){if(!Mr(e.context._currentValue,e.memoizedValue))return!0;e=e.next}return!1}function da(e){ra=e,ia=null,e=e.dependencies,e!==null&&(e.firstContext=null)}function fa(e){return ma(ra,e)}function pa(e,t){return ra===null&&da(e),ma(e,t)}function ma(e,t){var n=t._currentValue;if(t={context:t,memoizedValue:n,next:null},ia===null){if(e===null)throw Error(o(308));ia=t,e.dependencies={lanes:0,firstContext:t},e.flags|=524288}else ia=ia.next=t;return n}var ha=typeof AbortController<`u`?AbortController:function(){var e=[],t=this.signal={aborted:!1,addEventListener:function(t,n){e.push(n)}};this.abort=function(){t.aborted=!0,e.forEach(function(e){return e()})}},ga=t.unstable_scheduleCallback,_a=t.unstable_NormalPriority,va={$$typeof:ee,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function ya(){return{controller:new ha,data:new Map,refCount:0}}function ba(e){e.refCount--,e.refCount===0&&ga(_a,function(){e.controller.abort()})}var xa=null,Sa=0,Ca=0,wa=null;function Ta(e,t){if(xa===null){var n=xa=[];Sa=0,Ca=_d(),wa={status:`pending`,value:void 0,then:function(e){n.push(e)}}}return Sa++,t.then(Ea,Ea),t}function Ea(){if(--Sa===0&&xa!==null){wa!==null&&(wa.status=`fulfilled`);var e=xa;xa=null,Ca=0,wa=null;for(var t=0;t<e.length;t++)(0,e[t])()}}function Da(e,t){var n=[],r={status:`pending`,value:null,reason:null,then:function(e){n.push(e)}};return e.then(function(){r.status=`fulfilled`,r.value=t;for(var e=0;e<n.length;e++)(0,n[e])(t)},function(e){for(r.status=`rejected`,r.reason=e,e=0;e<n.length;e++)(0,n[e])(void 0)}),r}var Oa=C.S;C.S=function(e,t){H=Re(),typeof t==`object`&&t&&typeof t.then==`function`&&Ta(e,t),Oa!==null&&Oa(e,t)};var ka=he(null);function Aa(){var e=ka.current;return e===null?Wl.pooledCache:e}function ja(e,t){t===null?_e(ka,ka.current):_e(ka,t.pool)}function Ma(){var e=Aa();return e===null?null:{parent:va._currentValue,pool:e}}var Na=Error(o(460)),Pa=Error(o(474)),Fa=Error(o(542)),Ia={then:function(){}};function La(e){return e=e.status,e===`fulfilled`||e===`rejected`}function Ra(e,t,n){switch(n=e[n],n===void 0?e.push(t):n!==t&&(t.then(dn,dn),t=n),t.status){case`fulfilled`:return t.value;case`rejected`:throw e=t.reason,Ha(e),e;default:if(typeof t.status==`string`)t.then(dn,dn);else{if(e=Wl,e!==null&&100<e.shellSuspendCounter)throw Error(o(482));e=t,e.status=`pending`,e.then(function(e){if(t.status===`pending`){var n=t;n.status=`fulfilled`,n.value=e}},function(e){if(t.status===`pending`){var n=t;n.status=`rejected`,n.reason=e}})}switch(t.status){case`fulfilled`:return t.value;case`rejected`:throw e=t.reason,Ha(e),e}throw Ba=t,Na}}function za(e){try{var t=e._init;return t(e._payload)}catch(e){throw typeof e==`object`&&e&&typeof e.then==`function`?(Ba=e,Na):e}}var Ba=null;function Va(){if(Ba===null)throw Error(o(459));var e=Ba;return Ba=null,e}function Ha(e){if(e===Na||e===Fa)throw Error(o(483))}var Ua=null,Wa=0;function Ga(e){var t=Wa;return Wa+=1,Ua===null&&(Ua=[]),Ra(Ua,e,t)}function Ka(e,t){t=t.props.ref,e.ref=t===void 0?null:t}function qa(e,t){throw t.$$typeof===h?Error(o(525)):(e=Object.prototype.toString.call(t),Error(o(31,e===`[object Object]`?`object with keys {`+Object.keys(t).join(`, `)+`}`:e)))}function Ja(e){function t(t,n){if(e){var r=t.deletions;r===null?(t.deletions=[n],t.flags|=16):r.push(n)}}function n(n,r){if(!e)return null;for(;r!==null;)t(n,r),r=r.sibling;return null}function r(e){for(var t=new Map;e!==null;)e.key===null?t.set(e.index,e):t.set(e.key,e),e=e.sibling;return t}function i(e,t){return e=bi(e,t),e.index=0,e.sibling=null,e}function a(t,n,r){return t.index=r,e?(r=t.alternate,r===null?(t.flags|=67108866,n):(r=r.index,r<n?(t.flags|=67108866,n):r)):(t.flags|=1048576,n)}function s(t){return e&&t.alternate===null&&(t.flags|=67108866),t}function c(e,t,n,r){return t===null||t.tag!==6?(t=wi(n,e.mode,r),t.return=e,t):(t=i(t,n),t.return=e,t)}function l(e,t,n,r){var a=n.type;return a===v?d(e,t,n.props.children,r,n.key):t!==null&&(t.elementType===a||typeof a==`object`&&a&&a.$$typeof===ie&&za(a)===t.type)?(t=i(t,n.props),Ka(t,n),t.return=e,t):(t=Si(n.type,n.key,n.props,null,e.mode,r),Ka(t,n),t.return=e,t)}function u(e,t,n,r){return t===null||t.tag!==4||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?(t=Ei(n,e.mode,r),t.return=e,t):(t=i(t,n.children||[]),t.return=e,t)}function d(e,t,n,r,a){return t===null||t.tag!==7?(t=Ci(n,e.mode,r,a),t.return=e,t):(t=i(t,n),t.return=e,t)}function f(e,t,n){if(typeof t==`string`&&t!==``||typeof t==`number`||typeof t==`bigint`)return t=wi(``+t,e.mode,n),t.return=e,t;if(typeof t==`object`&&t){switch(t.$$typeof){case g:return n=Si(t.type,t.key,t.props,null,e.mode,n),Ka(n,t),n.return=e,n;case _:return t=Ei(t,e.mode,n),t.return=e,t;case ie:return t=za(t),f(e,t,n)}if(de(t)||ce(t))return t=Ci(t,e.mode,n,null),t.return=e,t;if(typeof t.then==`function`)return f(e,Ga(t),n);if(t.$$typeof===ee)return f(e,pa(e,t),n);qa(e,t)}return null}function p(e,t,n,r){var i=t===null?null:t.key;if(typeof n==`string`&&n!==``||typeof n==`number`||typeof n==`bigint`)return i===null?c(e,t,``+n,r):null;if(typeof n==`object`&&n){switch(n.$$typeof){case g:return n.key===i?l(e,t,n,r):null;case _:return n.key===i?u(e,t,n,r):null;case ie:return n=za(n),p(e,t,n,r)}if(de(n)||ce(n))return i===null?d(e,t,n,r,null):null;if(typeof n.then==`function`)return p(e,t,Ga(n),r);if(n.$$typeof===ee)return p(e,t,pa(e,n),r);qa(e,n)}return null}function m(e,t,n,r,i){if(typeof r==`string`&&r!==``||typeof r==`number`||typeof r==`bigint`)return e=e.get(n)||null,c(t,e,``+r,i);if(typeof r==`object`&&r){switch(r.$$typeof){case g:return e=e.get(r.key===null?n:r.key)||null,l(t,e,r,i);case _:return e=e.get(r.key===null?n:r.key)||null,u(t,e,r,i);case ie:return r=za(r),m(e,t,n,r,i)}if(de(r)||ce(r))return e=e.get(n)||null,d(t,e,r,i,null);if(typeof r.then==`function`)return m(e,t,n,Ga(r),i);if(r.$$typeof===ee)return m(e,t,n,pa(t,r),i);qa(t,r)}return null}function h(i,o,s,c){for(var l=null,u=null,d=o,h=o=0,g=null;d!==null&&h<s.length;h++){d.index>h?(g=d,d=null):g=d.sibling;var _=p(i,d,s[h],c);if(_===null){d===null&&(d=g);break}e&&d&&_.alternate===null&&t(i,d),o=a(_,o,h),u===null?l=_:u.sibling=_,u=_,d=g}if(h===s.length)return n(i,d),Gi&&Ri(i,h),l;if(d===null){for(;h<s.length;h++)d=f(i,s[h],c),d!==null&&(o=a(d,o,h),u===null?l=d:u.sibling=d,u=d);return Gi&&Ri(i,h),l}for(d=r(d);h<s.length;h++)g=m(d,i,h,s[h],c),g!==null&&(e&&g.alternate!==null&&d.delete(g.key===null?h:g.key),o=a(g,o,h),u===null?l=g:u.sibling=g,u=g);return e&&d.forEach(function(e){return t(i,e)}),Gi&&Ri(i,h),l}function y(i,s,c,l){if(c==null)throw Error(o(151));for(var u=null,d=null,h=s,g=s=0,_=null,v=c.next();h!==null&&!v.done;g++,v=c.next()){h.index>g?(_=h,h=null):_=h.sibling;var y=p(i,h,v.value,l);if(y===null){h===null&&(h=_);break}e&&h&&y.alternate===null&&t(i,h),s=a(y,s,g),d===null?u=y:d.sibling=y,d=y,h=_}if(v.done)return n(i,h),Gi&&Ri(i,g),u;if(h===null){for(;!v.done;g++,v=c.next())v=f(i,v.value,l),v!==null&&(s=a(v,s,g),d===null?u=v:d.sibling=v,d=v);return Gi&&Ri(i,g),u}for(h=r(h);!v.done;g++,v=c.next())v=m(h,i,g,v.value,l),v!==null&&(e&&v.alternate!==null&&h.delete(v.key===null?g:v.key),s=a(v,s,g),d===null?u=v:d.sibling=v,d=v);return e&&h.forEach(function(e){return t(i,e)}),Gi&&Ri(i,g),u}function b(e,r,a,c){if(typeof a==`object`&&a&&a.type===v&&a.key===null&&(a=a.props.children),typeof a==`object`&&a){switch(a.$$typeof){case g:a:{for(var l=a.key;r!==null;){if(r.key===l){if(l=a.type,l===v){if(r.tag===7){n(e,r.sibling),c=i(r,a.props.children),c.return=e,e=c;break a}}else if(r.elementType===l||typeof l==`object`&&l&&l.$$typeof===ie&&za(l)===r.type){n(e,r.sibling),c=i(r,a.props),Ka(c,a),c.return=e,e=c;break a}n(e,r);break}else t(e,r);r=r.sibling}a.type===v?(c=Ci(a.props.children,e.mode,c,a.key),c.return=e,e=c):(c=Si(a.type,a.key,a.props,null,e.mode,c),Ka(c,a),c.return=e,e=c)}return s(e);case _:a:{for(l=a.key;r!==null;){if(r.key===l)if(r.tag===4&&r.stateNode.containerInfo===a.containerInfo&&r.stateNode.implementation===a.implementation){n(e,r.sibling),c=i(r,a.children||[]),c.return=e,e=c;break a}else{n(e,r);break}else t(e,r);r=r.sibling}c=Ei(a,e.mode,c),c.return=e,e=c}return s(e);case ie:return a=za(a),b(e,r,a,c)}if(de(a))return h(e,r,a,c);if(ce(a)){if(l=ce(a),typeof l!=`function`)throw Error(o(150));return a=l.call(a),y(e,r,a,c)}if(typeof a.then==`function`)return b(e,r,Ga(a),c);if(a.$$typeof===ee)return b(e,r,pa(e,a),c);qa(e,a)}return typeof a==`string`&&a!==``||typeof a==`number`||typeof a==`bigint`?(a=``+a,r!==null&&r.tag===6?(n(e,r.sibling),c=i(r,a),c.return=e,e=c):(n(e,r),c=wi(a,e.mode,c),c.return=e,e=c),s(e)):n(e,r)}return function(e,t,n,r){try{Wa=0;var i=b(e,t,n,r);return Ua=null,i}catch(t){if(t===Na||t===Fa)throw t;var a=vi(29,t,null,e.mode);return a.lanes=r,a.return=e,a}}}var Ya=Ja(!0),Xa=Ja(!1),Za=!1;function Qa(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function $a(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,callbacks:null})}function eo(e){return{lane:e,tag:0,payload:null,callback:null,next:null}}function to(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,Ul&2){var i=r.pending;return i===null?t.next=t:(t.next=i.next,i.next=t),r.pending=t,t=hi(e),mi(e,null,n),t}return di(e,r,t,n),hi(e)}function no(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,n&4194048)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,ft(e,n)}}function ro(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var i=null,a=null;if(n=n.firstBaseUpdate,n!==null){do{var o={lane:n.lane,tag:n.tag,payload:n.payload,callback:null,next:null};a===null?i=a=o:a=a.next=o,n=n.next}while(n!==null);a===null?i=a=t:a=a.next=t}else i=a=t;n={baseState:r.baseState,firstBaseUpdate:i,lastBaseUpdate:a,shared:r.shared,callbacks:r.callbacks},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}var io=!1;function ao(){if(io){var e=wa;if(e!==null)throw e}}function oo(e,t,n,r){io=!1;var i=e.updateQueue;Za=!1;var a=i.firstBaseUpdate,o=i.lastBaseUpdate,s=i.shared.pending;if(s!==null){i.shared.pending=null;var c=s,l=c.next;c.next=null,o===null?a=l:o.next=l,o=c;var u=e.alternate;u!==null&&(u=u.updateQueue,s=u.lastBaseUpdate,s!==o&&(s===null?u.firstBaseUpdate=l:s.next=l,u.lastBaseUpdate=c))}if(a!==null){var d=i.baseState;o=0,u=l=c=null,s=a;do{var f=s.lane&-536870913,p=f!==s.lane;if(p?(Kl&f)===f:(r&f)===f){f!==0&&f===Ca&&(io=!0),u!==null&&(u=u.next={lane:0,tag:s.tag,payload:s.payload,callback:null,next:null});a:{var h=e,g=s;f=t;var _=n;switch(g.tag){case 1:if(h=g.payload,typeof h==`function`){d=h.call(_,d,f);break a}d=h;break a;case 3:h.flags=h.flags&-65537|128;case 0:if(h=g.payload,f=typeof h==`function`?h.call(_,d,f):h,f==null)break a;d=m({},d,f);break a;case 2:Za=!0}}f=s.callback,f!==null&&(e.flags|=64,p&&(e.flags|=8192),p=i.callbacks,p===null?i.callbacks=[f]:p.push(f))}else p={lane:f,tag:s.tag,payload:s.payload,callback:s.callback,next:null},u===null?(l=u=p,c=d):u=u.next=p,o|=f;if(s=s.next,s===null){if(s=i.shared.pending,s===null)break;p=s,s=p.next,p.next=null,i.lastBaseUpdate=p,i.shared.pending=null}}while(1);u===null&&(c=d),i.baseState=c,i.firstBaseUpdate=l,i.lastBaseUpdate=u,a===null&&(i.shared.lanes=0),$l|=o,e.lanes=o,e.memoizedState=d}}function so(e,t){if(typeof e!=`function`)throw Error(o(191,e));e.call(t)}function co(e,t){var n=e.callbacks;if(n!==null)for(e.callbacks=null,e=0;e<n.length;e++)so(n[e],t)}var lo=he(null),uo=he(0);function fo(e,t){e=Zl,_e(uo,e),_e(lo,t),Zl=e|t.baseLanes}function po(){_e(uo,Zl),_e(lo,lo.current)}function mo(){Zl=uo.current,ge(lo),ge(uo)}var ho=he(null),go=null;function _o(e){var t=e.alternate;_e(So,So.current&1),_e(ho,e),go===null&&(t===null||lo.current!==null||t.memoizedState!==null)&&(go=e)}function vo(e){_e(So,So.current),_e(ho,e),go===null&&(go=e)}function yo(e){e.tag===22?(_e(So,So.current),_e(ho,e),go===null&&(go=e)):bo(e)}function bo(){_e(So,So.current),_e(ho,ho.current)}function xo(e){ge(ho),go===e&&(go=null),ge(So)}var So=he(0);function Co(e){for(var t=e;t!==null;){if(t.tag===13){var n=t.memoizedState;if(n!==null&&(n=n.dehydrated,n===null||pf(n)||mf(n)))return t}else if(t.tag===19&&(t.memoizedProps.revealOrder===`forwards`||t.memoizedProps.revealOrder===`backwards`||t.memoizedProps.revealOrder===`unstable_legacy-backwards`||t.memoizedProps.revealOrder===`together`)){if(t.flags&128)return t}else if(t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var wo=0,O=null,To=null,Eo=null,Do=!1,Oo=!1,ko=!1,Ao=0,jo=0,Mo=null,No=0;function Po(){throw Error(o(321))}function Fo(e,t){if(t===null)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!Mr(e[n],t[n]))return!1;return!0}function Io(e,t,n,r,i,a){return wo=a,O=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,C.H=e===null||e.memoizedState===null?Qs:$s,ko=!1,a=n(r,i),ko=!1,Oo&&(a=Ro(t,n,r,i)),Lo(e),a}function Lo(e){C.H=Zs;var t=To!==null&&To.next!==null;if(wo=0,Eo=To=O=null,Do=!1,jo=0,Mo=null,t)throw Error(o(300));e===null||gc||(e=e.dependencies,e!==null&&ua(e)&&(gc=!0))}function Ro(e,t,n,r){O=e;var i=0;do{if(Oo&&(Mo=null),jo=0,Oo=!1,25<=i)throw Error(o(301));if(i+=1,Eo=To=null,e.updateQueue!=null){var a=e.updateQueue;a.lastEffect=null,a.events=null,a.stores=null,a.memoCache!=null&&(a.memoCache.index=0)}C.H=ec,a=t(n,r)}while(Oo);return a}function zo(){var e=C.H,t=e.useState()[0];return t=typeof t.then==`function`?Ko(t):t,e=e.useState()[0],(To===null?null:To.memoizedState)!==e&&(O.flags|=1024),t}function Bo(){var e=Ao!==0;return Ao=0,e}function Vo(e,t,n){t.updateQueue=e.updateQueue,t.flags&=-2053,e.lanes&=~n}function Ho(e){if(Do){for(e=e.memoizedState;e!==null;){var t=e.queue;t!==null&&(t.pending=null),e=e.next}Do=!1}wo=0,Eo=To=O=null,Oo=!1,jo=Ao=0,Mo=null}function Uo(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return Eo===null?O.memoizedState=Eo=e:Eo=Eo.next=e,Eo}function Wo(){if(To===null){var e=O.alternate;e=e===null?null:e.memoizedState}else e=To.next;var t=Eo===null?O.memoizedState:Eo.next;if(t!==null)Eo=t,To=e;else{if(e===null)throw O.alternate===null?Error(o(467)):Error(o(310));To=e,e={memoizedState:To.memoizedState,baseState:To.baseState,baseQueue:To.baseQueue,queue:To.queue,next:null},Eo===null?O.memoizedState=Eo=e:Eo=Eo.next=e}return Eo}function Go(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function Ko(e){var t=jo;return jo+=1,Mo===null&&(Mo=[]),e=Ra(Mo,e,t),t=O,(Eo===null?t.memoizedState:Eo.next)===null&&(t=t.alternate,C.H=t===null||t.memoizedState===null?Qs:$s),e}function qo(e){if(typeof e==`object`&&e){if(typeof e.then==`function`)return Ko(e);if(e.$$typeof===ee)return fa(e)}throw Error(o(438,String(e)))}function Jo(e){var t=null,n=O.updateQueue;if(n!==null&&(t=n.memoCache),t==null){var r=O.alternate;r!==null&&(r=r.updateQueue,r!==null&&(r=r.memoCache,r!=null&&(t={data:r.data.map(function(e){return e.slice()}),index:0})))}if(t??={data:[],index:0},n===null&&(n=Go(),O.updateQueue=n),n.memoCache=t,n=t.data[t.index],n===void 0)for(n=t.data[t.index]=Array(e),r=0;r<e;r++)n[r]=oe;return t.index++,n}function Yo(e,t){return typeof t==`function`?t(e):t}function Xo(e){return Zo(Wo(),To,e)}function Zo(e,t,n){var r=e.queue;if(r===null)throw Error(o(311));r.lastRenderedReducer=n;var i=e.baseQueue,a=r.pending;if(a!==null){if(i!==null){var s=i.next;i.next=a.next,a.next=s}t.baseQueue=i=a,r.pending=null}if(a=e.baseState,i===null)e.memoizedState=a;else{t=i.next;var c=s=null,l=null,u=t,d=!1;do{var f=u.lane&-536870913;if(f===u.lane?(wo&f)===f:(Kl&f)===f){var p=u.revertLane;if(p===0)l!==null&&(l=l.next={lane:0,revertLane:0,gesture:null,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null}),f===Ca&&(d=!0);else if((wo&p)===p){u=u.next,p===Ca&&(d=!0);continue}else f={lane:0,revertLane:u.revertLane,gesture:null,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null},l===null?(c=l=f,s=a):l=l.next=f,O.lanes|=p,$l|=p;f=u.action,ko&&n(a,f),a=u.hasEagerState?u.eagerState:n(a,f)}else p={lane:f,revertLane:u.revertLane,gesture:u.gesture,action:u.action,hasEagerState:u.hasEagerState,eagerState:u.eagerState,next:null},l===null?(c=l=p,s=a):l=l.next=p,O.lanes|=f,$l|=f;u=u.next}while(u!==null&&u!==t);if(l===null?s=a:l.next=c,!Mr(a,e.memoizedState)&&(gc=!0,d&&(n=wa,n!==null)))throw n;e.memoizedState=a,e.baseState=s,e.baseQueue=l,r.lastRenderedState=a}return i===null&&(r.lanes=0),[e.memoizedState,r.dispatch]}function Qo(e){var t=Wo(),n=t.queue;if(n===null)throw Error(o(311));n.lastRenderedReducer=e;var r=n.dispatch,i=n.pending,a=t.memoizedState;if(i!==null){n.pending=null;var s=i=i.next;do a=e(a,s.action),s=s.next;while(s!==i);Mr(a,t.memoizedState)||(gc=!0),t.memoizedState=a,t.baseQueue===null&&(t.baseState=a),n.lastRenderedState=a}return[a,r]}function $o(e,t,n){var r=O,i=Wo(),a=Gi;if(a){if(n===void 0)throw Error(o(407));n=n()}else n=t();var s=!Mr((To||i).memoizedState,n);if(s&&(i.memoizedState=n,gc=!0),i=i.queue,ws(ns.bind(null,r,i,e),[e]),i.getSnapshot!==t||s||Eo!==null&&Eo.memoizedState.tag&1){if(r.flags|=2048,ys(9,{destroy:void 0},ts.bind(null,r,i,n,t),null),Wl===null)throw Error(o(349));a||wo&127||es(r,t,n)}return n}function es(e,t,n){e.flags|=16384,e={getSnapshot:t,value:n},t=O.updateQueue,t===null?(t=Go(),O.updateQueue=t,t.stores=[e]):(n=t.stores,n===null?t.stores=[e]:n.push(e))}function ts(e,t,n,r){t.value=n,t.getSnapshot=r,rs(t)&&is(e)}function ns(e,t,n){return n(function(){rs(t)&&is(e)})}function rs(e){var t=e.getSnapshot;e=e.value;try{var n=t();return!Mr(e,n)}catch{return!0}}function is(e){var t=pi(e,2);t!==null&&bu(t,e,2)}function as(e){var t=Uo();if(typeof e==`function`){var n=e;if(e=n(),ko){Ye(!0);try{n()}finally{Ye(!1)}}}return t.memoizedState=t.baseState=e,t.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:Yo,lastRenderedState:e},t}function os(e,t,n,r){return e.baseState=n,Zo(e,To,typeof r==`function`?r:Yo)}function ss(e,t,n,r,i){if(Ys(e))throw Error(o(485));if(e=t.action,e!==null){var a={payload:i,action:e,next:null,isTransition:!0,status:`pending`,value:null,reason:null,listeners:[],then:function(e){a.listeners.push(e)}};C.T===null?a.isTransition=!1:n(!0),r(a),n=t.pending,n===null?(a.next=t.pending=a,cs(t,a)):(a.next=n.next,t.pending=n.next=a)}}function cs(e,t){var n=t.action,r=t.payload,i=e.state;if(t.isTransition){var a=C.T,o={};C.T=o;try{var s=n(i,r),c=C.S;c!==null&&c(o,s),ls(e,t,s)}catch(n){ds(e,t,n)}finally{a!==null&&o.types!==null&&(a.types=o.types),C.T=a}}else try{a=n(i,r),ls(e,t,a)}catch(n){ds(e,t,n)}}function ls(e,t,n){typeof n==`object`&&n&&typeof n.then==`function`?n.then(function(n){us(e,t,n)},function(n){return ds(e,t,n)}):us(e,t,n)}function us(e,t,n){t.status=`fulfilled`,t.value=n,fs(t),e.state=n,t=e.pending,t!==null&&(n=t.next,n===t?e.pending=null:(n=n.next,t.next=n,cs(e,n)))}function ds(e,t,n){var r=e.pending;if(e.pending=null,r!==null){r=r.next;do t.status=`rejected`,t.reason=n,fs(t),t=t.next;while(t!==r)}e.action=null}function fs(e){e=e.listeners;for(var t=0;t<e.length;t++)(0,e[t])()}function ps(e,t){return t}function ms(e,t){if(Gi){var n=Wl.formState;if(n!==null){a:{var r=O;if(Gi){if(Wi){b:{for(var i=Wi,a=qi;i.nodeType!==8;){if(!a){i=null;break b}if(i=gf(i.nextSibling),i===null){i=null;break b}}a=i.data,i=a===`F!`||a===`F`?i:null}if(i){Wi=gf(i.nextSibling),r=i.data===`F!`;break a}}Yi(r)}r=!1}r&&(t=n[0])}}return n=Uo(),n.memoizedState=n.baseState=t,r={pending:null,lanes:0,dispatch:null,lastRenderedReducer:ps,lastRenderedState:t},n.queue=r,n=Ks.bind(null,O,r),r.dispatch=n,r=as(!1),a=Js.bind(null,O,!1,r.queue),r=Uo(),i={state:t,dispatch:null,action:e,pending:null},r.queue=i,n=ss.bind(null,O,i,a,n),i.dispatch=n,r.memoizedState=e,[t,n,!1]}function hs(e){return gs(Wo(),To,e)}function gs(e,t,n){if(t=Zo(e,t,ps)[0],e=Xo(Yo)[0],typeof t==`object`&&t&&typeof t.then==`function`)try{var r=Ko(t)}catch(e){throw e===Na?Fa:e}else r=t;t=Wo();var i=t.queue,a=i.dispatch;return n!==t.memoizedState&&(O.flags|=2048,ys(9,{destroy:void 0},_s.bind(null,i,n),null)),[r,a,e]}function _s(e,t){e.action=t}function vs(e){var t=Wo(),n=To;if(n!==null)return gs(t,n,e);Wo(),t=t.memoizedState,n=Wo();var r=n.queue.dispatch;return n.memoizedState=e,[t,r,!1]}function ys(e,t,n,r){return e={tag:e,create:n,deps:r,inst:t,next:null},t=O.updateQueue,t===null&&(t=Go(),O.updateQueue=t),n=t.lastEffect,n===null?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e),e}function bs(){return Wo().memoizedState}function xs(e,t,n,r){var i=Uo();O.flags|=e,i.memoizedState=ys(1|t,{destroy:void 0},n,r===void 0?null:r)}function Ss(e,t,n,r){var i=Wo();r=r===void 0?null:r;var a=i.memoizedState.inst;To!==null&&r!==null&&Fo(r,To.memoizedState.deps)?i.memoizedState=ys(t,a,n,r):(O.flags|=e,i.memoizedState=ys(1|t,a,n,r))}function Cs(e,t){xs(8390656,8,e,t)}function ws(e,t){Ss(2048,8,e,t)}function Ts(e){O.flags|=4;var t=O.updateQueue;if(t===null)t=Go(),O.updateQueue=t,t.events=[e];else{var n=t.events;n===null?t.events=[e]:n.push(e)}}function Es(e){var t=Wo().memoizedState;return Ts({ref:t,nextImpl:e}),function(){if(Ul&2)throw Error(o(440));return t.impl.apply(void 0,arguments)}}function Ds(e,t){return Ss(4,2,e,t)}function Os(e,t){return Ss(4,4,e,t)}function ks(e,t){if(typeof t==`function`){e=e();var n=t(e);return function(){typeof n==`function`?n():t(null)}}if(t!=null)return e=e(),t.current=e,function(){t.current=null}}function As(e,t,n){n=n==null?null:n.concat([e]),Ss(4,4,ks.bind(null,t,e),n)}function js(){}function Ms(e,t){var n=Wo();t=t===void 0?null:t;var r=n.memoizedState;return t!==null&&Fo(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function Ns(e,t){var n=Wo();t=t===void 0?null:t;var r=n.memoizedState;if(t!==null&&Fo(t,r[1]))return r[0];if(r=e(),ko){Ye(!0);try{e()}finally{Ye(!1)}}return n.memoizedState=[r,t],r}function Ps(e,t,n){return n===void 0||wo&1073741824&&!(Kl&261930)?e.memoizedState=t:(e.memoizedState=n,e=yu(),O.lanes|=e,$l|=e,n)}function Fs(e,t,n,r){return Mr(n,t)?n:lo.current===null?!(wo&42)||wo&1073741824&&!(Kl&261930)?(gc=!0,e.memoizedState=n):(e=yu(),O.lanes|=e,$l|=e,t):(e=Ps(e,n,r),Mr(e,t)||(gc=!0),e)}function Is(e,t,n,r,i){var a=w.p;w.p=a!==0&&8>a?a:8;var o=C.T,s={};C.T=s,Js(e,!1,t,n);try{var c=i(),l=C.S;l!==null&&l(s,c),typeof c==`object`&&c&&typeof c.then==`function`?qs(e,t,Da(c,r),vu(e)):qs(e,t,r,vu(e))}catch(n){qs(e,t,{then:function(){},status:`rejected`,reason:n},vu())}finally{w.p=a,o!==null&&s.types!==null&&(o.types=s.types),C.T=o}}function Ls(){}function Rs(e,t,n,r){if(e.tag!==5)throw Error(o(476));var i=zs(e).queue;Is(e,i,t,fe,n===null?Ls:function(){return Bs(e),n(r)})}function zs(e){var t=e.memoizedState;if(t!==null)return t;t={memoizedState:fe,baseState:fe,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Yo,lastRenderedState:fe},next:null};var n={};return t.next={memoizedState:n,baseState:n,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:Yo,lastRenderedState:n},next:null},e.memoizedState=t,e=e.alternate,e!==null&&(e.memoizedState=t),t}function Bs(e){var t=zs(e);t.next===null&&(t=e.alternate.memoizedState),qs(e,t.next.queue,{},vu())}function Vs(){return fa(op)}function Hs(){return Wo().memoizedState}function Us(){return Wo().memoizedState}function Ws(e){for(var t=e.return;t!==null;){switch(t.tag){case 24:case 3:var n=vu();e=eo(n);var r=to(t,e,n);r!==null&&(bu(r,t,n),no(r,t,n)),t={cache:ya()},e.payload=t;return}t=t.return}}function Gs(e,t,n){var r=vu();n={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null},Ys(e)?k(t,n):(n=fi(e,t,n,r),n!==null&&(bu(n,e,r),Xs(n,t,r)))}function Ks(e,t,n){qs(e,t,n,vu())}function qs(e,t,n,r){var i={lane:r,revertLane:0,gesture:null,action:n,hasEagerState:!1,eagerState:null,next:null};if(Ys(e))k(t,i);else{var a=e.alternate;if(e.lanes===0&&(a===null||a.lanes===0)&&(a=t.lastRenderedReducer,a!==null))try{var o=t.lastRenderedState,s=a(o,n);if(i.hasEagerState=!0,i.eagerState=s,Mr(s,o))return di(e,t,i,0),Wl===null&&ui(),!1}catch{}if(n=fi(e,t,i,r),n!==null)return bu(n,e,r),Xs(n,t,r),!0}return!1}function Js(e,t,n,r){if(r={lane:2,revertLane:_d(),gesture:null,action:r,hasEagerState:!1,eagerState:null,next:null},Ys(e)){if(t)throw Error(o(479))}else t=fi(e,n,r,2),t!==null&&bu(t,e,2)}function Ys(e){var t=e.alternate;return e===O||t!==null&&t===O}function k(e,t){Oo=Do=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Xs(e,t,n){if(n&4194048){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,ft(e,n)}}var Zs={readContext:fa,use:qo,useCallback:Po,useContext:Po,useEffect:Po,useImperativeHandle:Po,useLayoutEffect:Po,useInsertionEffect:Po,useMemo:Po,useReducer:Po,useRef:Po,useState:Po,useDebugValue:Po,useDeferredValue:Po,useTransition:Po,useSyncExternalStore:Po,useId:Po,useHostTransitionStatus:Po,useFormState:Po,useActionState:Po,useOptimistic:Po,useMemoCache:Po,useCacheRefresh:Po};Zs.useEffectEvent=Po;var Qs={readContext:fa,use:qo,useCallback:function(e,t){return Uo().memoizedState=[e,t===void 0?null:t],e},useContext:fa,useEffect:Cs,useImperativeHandle:function(e,t,n){n=n==null?null:n.concat([e]),xs(4194308,4,ks.bind(null,t,e),n)},useLayoutEffect:function(e,t){return xs(4194308,4,e,t)},useInsertionEffect:function(e,t){xs(4,2,e,t)},useMemo:function(e,t){var n=Uo();t=t===void 0?null:t;var r=e();if(ko){Ye(!0);try{e()}finally{Ye(!1)}}return n.memoizedState=[r,t],r},useReducer:function(e,t,n){var r=Uo();if(n!==void 0){var i=n(t);if(ko){Ye(!0);try{n(t)}finally{Ye(!1)}}}else i=t;return r.memoizedState=r.baseState=i,e={pending:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:i},r.queue=e,e=e.dispatch=Gs.bind(null,O,e),[r.memoizedState,e]},useRef:function(e){var t=Uo();return e={current:e},t.memoizedState=e},useState:function(e){e=as(e);var t=e.queue,n=Ks.bind(null,O,t);return t.dispatch=n,[e.memoizedState,n]},useDebugValue:js,useDeferredValue:function(e,t){return Ps(Uo(),e,t)},useTransition:function(){var e=as(!1);return e=Is.bind(null,O,e.queue,!0,!1),Uo().memoizedState=e,[!1,e]},useSyncExternalStore:function(e,t,n){var r=O,i=Uo();if(Gi){if(n===void 0)throw Error(o(407));n=n()}else{if(n=t(),Wl===null)throw Error(o(349));Kl&127||es(r,t,n)}i.memoizedState=n;var a={value:n,getSnapshot:t};return i.queue=a,Cs(ns.bind(null,r,a,e),[e]),r.flags|=2048,ys(9,{destroy:void 0},ts.bind(null,r,a,n,t),null),n},useId:function(){var e=Uo(),t=Wl.identifierPrefix;if(Gi){var n=Li,r=Ii;n=(r&~(1<<32-Xe(r)-1)).toString(32)+n,t=`_`+t+`R_`+n,n=Ao++,0<n&&(t+=`H`+n.toString(32)),t+=`_`}else n=No++,t=`_`+t+`r_`+n.toString(32)+`_`;return e.memoizedState=t},useHostTransitionStatus:Vs,useFormState:ms,useActionState:ms,useOptimistic:function(e){var t=Uo();t.memoizedState=t.baseState=e;var n={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return t.queue=n,t=Js.bind(null,O,!0,n),n.dispatch=t,[e,t]},useMemoCache:Jo,useCacheRefresh:function(){return Uo().memoizedState=Ws.bind(null,O)},useEffectEvent:function(e){var t=Uo(),n={impl:e};return t.memoizedState=n,function(){if(Ul&2)throw Error(o(440));return n.impl.apply(void 0,arguments)}}},$s={readContext:fa,use:qo,useCallback:Ms,useContext:fa,useEffect:ws,useImperativeHandle:As,useInsertionEffect:Ds,useLayoutEffect:Os,useMemo:Ns,useReducer:Xo,useRef:bs,useState:function(){return Xo(Yo)},useDebugValue:js,useDeferredValue:function(e,t){return Fs(Wo(),To.memoizedState,e,t)},useTransition:function(){var e=Xo(Yo)[0],t=Wo().memoizedState;return[typeof e==`boolean`?e:Ko(e),t]},useSyncExternalStore:$o,useId:Hs,useHostTransitionStatus:Vs,useFormState:hs,useActionState:hs,useOptimistic:function(e,t){return os(Wo(),To,e,t)},useMemoCache:Jo,useCacheRefresh:Us};$s.useEffectEvent=Es;var ec={readContext:fa,use:qo,useCallback:Ms,useContext:fa,useEffect:ws,useImperativeHandle:As,useInsertionEffect:Ds,useLayoutEffect:Os,useMemo:Ns,useReducer:Qo,useRef:bs,useState:function(){return Qo(Yo)},useDebugValue:js,useDeferredValue:function(e,t){var n=Wo();return To===null?Ps(n,e,t):Fs(n,To.memoizedState,e,t)},useTransition:function(){var e=Qo(Yo)[0],t=Wo().memoizedState;return[typeof e==`boolean`?e:Ko(e),t]},useSyncExternalStore:$o,useId:Hs,useHostTransitionStatus:Vs,useFormState:vs,useActionState:vs,useOptimistic:function(e,t){var n=Wo();return To===null?(n.baseState=e,[e,n.queue.dispatch]):os(n,To,e,t)},useMemoCache:Jo,useCacheRefresh:Us};ec.useEffectEvent=Es;function tc(e,t,n,r){t=e.memoizedState,n=n(r,t),n=n==null?t:m({},t,n),e.memoizedState=n,e.lanes===0&&(e.updateQueue.baseState=n)}var nc={enqueueSetState:function(e,t,n){e=e._reactInternals;var r=vu(),i=eo(r);i.payload=t,n!=null&&(i.callback=n),t=to(e,i,r),t!==null&&(bu(t,e,r),no(t,e,r))},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=vu(),i=eo(r);i.tag=1,i.payload=t,n!=null&&(i.callback=n),t=to(e,i,r),t!==null&&(bu(t,e,r),no(t,e,r))},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=vu(),r=eo(n);r.tag=2,t!=null&&(r.callback=t),t=to(e,r,n),t!==null&&(bu(t,e,n),no(t,e,n))}};function rc(e,t,n,r,i,a,o){return e=e.stateNode,typeof e.shouldComponentUpdate==`function`?e.shouldComponentUpdate(r,a,o):t.prototype&&t.prototype.isPureReactComponent?!Nr(n,r)||!Nr(i,a):!0}function ic(e,t,n,r){e=t.state,typeof t.componentWillReceiveProps==`function`&&t.componentWillReceiveProps(n,r),typeof t.UNSAFE_componentWillReceiveProps==`function`&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&nc.enqueueReplaceState(t,t.state,null)}function ac(e,t){var n=t;if(`ref`in t)for(var r in n={},t)r!==`ref`&&(n[r]=t[r]);if(e=e.defaultProps)for(var i in n===t&&(n=m({},n)),e)n[i]===void 0&&(n[i]=e[i]);return n}function oc(e){oi(e)}function sc(e){console.error(e)}function cc(e){oi(e)}function lc(e,t){try{var n=e.onUncaughtError;n(t.value,{componentStack:t.stack})}catch(e){setTimeout(function(){throw e})}}function uc(e,t,n){try{var r=e.onCaughtError;r(n.value,{componentStack:n.stack,errorBoundary:t.tag===1?t.stateNode:null})}catch(e){setTimeout(function(){throw e})}}function dc(e,t,n){return n=eo(n),n.tag=3,n.payload={element:null},n.callback=function(){lc(e,t)},n}function fc(e){return e=eo(e),e.tag=3,e}function pc(e,t,n,r){var i=n.type.getDerivedStateFromError;if(typeof i==`function`){var a=r.value;e.payload=function(){return i(a)},e.callback=function(){uc(t,n,r)}}var o=n.stateNode;o!==null&&typeof o.componentDidCatch==`function`&&(e.callback=function(){uc(t,n,r),typeof i!=`function`&&(U===null?U=new Set([this]):U.add(this));var e=r.stack;this.componentDidCatch(r.value,{componentStack:e===null?``:e})})}function mc(e,t,n,r,i){if(n.flags|=32768,typeof r==`object`&&r&&typeof r.then==`function`){if(t=n.alternate,t!==null&&la(t,n,i,!0),n=ho.current,n!==null){switch(n.tag){case 31:case 13:return go===null?Mu():n.alternate===null&&Ql===0&&(Ql=3),n.flags&=-257,n.flags|=65536,n.lanes=i,r===Ia?n.flags|=16384:(t=n.updateQueue,t===null?n.updateQueue=new Set([r]):t.add(r),Zu(e,r,i)),!1;case 22:return n.flags|=65536,r===Ia?n.flags|=16384:(t=n.updateQueue,t===null?(t={transitions:null,markerInstances:null,retryQueue:new Set([r])},n.updateQueue=t):(n=t.retryQueue,n===null?t.retryQueue=new Set([r]):n.add(r)),Zu(e,r,i)),!1}throw Error(o(435,n.tag))}return Zu(e,r,i),Mu(),!1}if(Gi)return t=ho.current,t===null?(r!==Ji&&(t=Error(o(423),{cause:r}),ta(Oi(t,n))),e=e.current.alternate,e.flags|=65536,i&=-i,e.lanes|=i,r=Oi(r,n),i=dc(e.stateNode,r,i),ro(e,i),Ql!==4&&(Ql=2)):(!(t.flags&65536)&&(t.flags|=256),t.flags|=65536,t.lanes=i,r!==Ji&&(e=Error(o(422),{cause:r}),ta(Oi(e,n)))),!1;var a=Error(o(520),{cause:r});if(a=Oi(a,n),iu===null?iu=[a]:iu.push(a),Ql!==4&&(Ql=2),t===null)return!0;r=Oi(r,n),n=t;do{switch(n.tag){case 3:return n.flags|=65536,e=i&-i,n.lanes|=e,e=dc(n.stateNode,r,e),ro(n,e),!1;case 1:if(t=n.type,a=n.stateNode,!(n.flags&128)&&(typeof t.getDerivedStateFromError==`function`||a!==null&&typeof a.componentDidCatch==`function`&&(U===null||!U.has(a))))return n.flags|=65536,i&=-i,n.lanes|=i,i=fc(i),pc(i,e,n,r),ro(n,i),!1}n=n.return}while(n!==null);return!1}var hc=Error(o(461)),gc=!1;function _c(e,t,n,r){t.child=e===null?Xa(t,null,n,r):Ya(t,e.child,n,r)}function vc(e,t,n,r,i){n=n.render;var a=t.ref;if(`ref`in r){var o={};for(var s in r)s!==`ref`&&(o[s]=r[s])}else o=r;return da(t),r=Io(e,t,n,o,a,i),s=Bo(),e!==null&&!gc?(Vo(e,t,i),I(e,t,i)):(Gi&&s&&Bi(t),t.flags|=1,_c(e,t,r,i),t.child)}function A(e,t,n,r,i){if(e===null){var a=n.type;return typeof a==`function`&&!yi(a)&&a.defaultProps===void 0&&n.compare===null?(t.tag=15,t.type=a,yc(e,t,a,r,i)):(e=Si(n.type,null,r,t,t.mode,i),e.ref=t.ref,e.return=t,t.child=e)}if(a=e.child,!Ic(e,i)){var o=a.memoizedProps;if(n=n.compare,n=n===null?Nr:n,n(o,r)&&e.ref===t.ref)return I(e,t,i)}return t.flags|=1,e=bi(a,r),e.ref=t.ref,e.return=t,t.child=e}function yc(e,t,n,r,i){if(e!==null){var a=e.memoizedProps;if(Nr(a,r)&&e.ref===t.ref)if(gc=!1,t.pendingProps=r=a,Ic(e,i))e.flags&131072&&(gc=!0);else return t.lanes=e.lanes,I(e,t,i)}return Ec(e,t,n,r,i)}function bc(e,t,n,r){var i=r.children,a=e===null?null:e.memoizedState;if(e===null&&t.stateNode===null&&(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),r.mode===`hidden`){if(t.flags&128){if(a=a===null?n:a.baseLanes|n,e!==null){for(r=t.child=e.child,i=0;r!==null;)i=i|r.lanes|r.childLanes,r=r.sibling;r=i&~a}else r=0,t.child=null;return j(e,t,a,n,r)}if(n&536870912)t.memoizedState={baseLanes:0,cachePool:null},e!==null&&ja(t,a===null?null:a.cachePool),a===null?po():fo(t,a),yo(t);else return r=t.lanes=536870912,j(e,t,a===null?n:a.baseLanes|n,n,r)}else a===null?(e!==null&&ja(t,null),po(),bo(t)):(ja(t,a.cachePool),fo(t,a),bo(t),t.memoizedState=null);return _c(e,t,i,n),t.child}function xc(e,t){return e!==null&&e.tag===22||t.stateNode!==null||(t.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),t.sibling}function j(e,t,n,r,i){var a=Aa();return a=a===null?null:{parent:va._currentValue,pool:a},t.memoizedState={baseLanes:n,cachePool:a},e!==null&&ja(t,null),po(),yo(t),e!==null&&la(e,t,r,!0),t.childLanes=i,null}function Sc(e,t){return t=P({mode:t.mode,children:t.children},e.mode),t.ref=e.ref,e.child=t,t.return=e,t}function Cc(e,t,n){return Ya(t,e.child,null,n),e=Sc(t,t.pendingProps),e.flags|=2,xo(t),t.memoizedState=null,e}function wc(e,t,n){var r=t.pendingProps,i=(t.flags&128)!=0;if(t.flags&=-129,e===null){if(Gi){if(r.mode===`hidden`)return e=Sc(t,r),t.lanes=536870912,xc(null,e);if(vo(t),(e=Wi)?(e=ff(e,qi),e=e!==null&&e.data===`&`?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:Fi===null?null:{id:Ii,overflow:Li},retryLane:536870912,hydrationErrors:null},n=Ti(e),n.return=t,t.child=n,Ui=t,Wi=null)):e=null,e===null)throw Yi(t);return t.lanes=536870912,null}return Sc(t,r)}var a=e.memoizedState;if(a!==null){var s=a.dehydrated;if(vo(t),i)if(t.flags&256)t.flags&=-257,t=Cc(e,t,n);else if(t.memoizedState!==null)t.child=e.child,t.flags|=128,t=null;else throw Error(o(558));else if(gc||la(e,t,n,!1),i=(n&e.childLanes)!==0,gc||i){if(r=Wl,r!==null&&(s=pt(r,n),s!==0&&s!==a.retryLane))throw a.retryLane=s,pi(e,s),bu(r,e,s),hc;Mu(),t=Cc(e,t,n)}else e=a.treeContext,Wi=gf(s.nextSibling),Ui=t,Gi=!0,Ki=null,qi=!1,e!==null&&Hi(t,e),t=Sc(t,r),t.flags|=4096;return t}return e=bi(e.child,{mode:r.mode,children:r.children}),e.ref=t.ref,t.child=e,e.return=t,e}function Tc(e,t){var n=t.ref;if(n===null)e!==null&&e.ref!==null&&(t.flags|=4194816);else{if(typeof n!=`function`&&typeof n!=`object`)throw Error(o(284));(e===null||e.ref!==n)&&(t.flags|=4194816)}}function Ec(e,t,n,r,i){return da(t),n=Io(e,t,n,r,void 0,i),r=Bo(),e!==null&&!gc?(Vo(e,t,i),I(e,t,i)):(Gi&&r&&Bi(t),t.flags|=1,_c(e,t,n,i),t.child)}function M(e,t,n,r,i,a){return da(t),t.updateQueue=null,n=Ro(t,r,n,i),Lo(e),r=Bo(),e!==null&&!gc?(Vo(e,t,a),I(e,t,a)):(Gi&&r&&Bi(t),t.flags|=1,_c(e,t,n,a),t.child)}function Dc(e,t,n,r,i){if(da(t),t.stateNode===null){var a=gi,o=n.contextType;typeof o==`object`&&o&&(a=fa(o)),a=new n(r,a),t.memoizedState=a.state!==null&&a.state!==void 0?a.state:null,a.updater=nc,t.stateNode=a,a._reactInternals=t,a=t.stateNode,a.props=r,a.state=t.memoizedState,a.refs={},Qa(t),o=n.contextType,a.context=typeof o==`object`&&o?fa(o):gi,a.state=t.memoizedState,o=n.getDerivedStateFromProps,typeof o==`function`&&(tc(t,n,o,r),a.state=t.memoizedState),typeof n.getDerivedStateFromProps==`function`||typeof a.getSnapshotBeforeUpdate==`function`||typeof a.UNSAFE_componentWillMount!=`function`&&typeof a.componentWillMount!=`function`||(o=a.state,typeof a.componentWillMount==`function`&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount==`function`&&a.UNSAFE_componentWillMount(),o!==a.state&&nc.enqueueReplaceState(a,a.state,null),oo(t,r,a,i),ao(),a.state=t.memoizedState),typeof a.componentDidMount==`function`&&(t.flags|=4194308),r=!0}else if(e===null){a=t.stateNode;var s=t.memoizedProps,c=ac(n,s);a.props=c;var l=a.context,u=n.contextType;o=gi,typeof u==`object`&&u&&(o=fa(u));var d=n.getDerivedStateFromProps;u=typeof d==`function`||typeof a.getSnapshotBeforeUpdate==`function`,s=t.pendingProps!==s,u||typeof a.UNSAFE_componentWillReceiveProps!=`function`&&typeof a.componentWillReceiveProps!=`function`||(s||l!==o)&&ic(t,a,r,o),Za=!1;var f=t.memoizedState;a.state=f,oo(t,r,a,i),ao(),l=t.memoizedState,s||f!==l||Za?(typeof d==`function`&&(tc(t,n,d,r),l=t.memoizedState),(c=Za||rc(t,n,c,r,f,l,o))?(u||typeof a.UNSAFE_componentWillMount!=`function`&&typeof a.componentWillMount!=`function`||(typeof a.componentWillMount==`function`&&a.componentWillMount(),typeof a.UNSAFE_componentWillMount==`function`&&a.UNSAFE_componentWillMount()),typeof a.componentDidMount==`function`&&(t.flags|=4194308)):(typeof a.componentDidMount==`function`&&(t.flags|=4194308),t.memoizedProps=r,t.memoizedState=l),a.props=r,a.state=l,a.context=o,r=c):(typeof a.componentDidMount==`function`&&(t.flags|=4194308),r=!1)}else{a=t.stateNode,$a(e,t),o=t.memoizedProps,u=ac(n,o),a.props=u,d=t.pendingProps,f=a.context,l=n.contextType,c=gi,typeof l==`object`&&l&&(c=fa(l)),s=n.getDerivedStateFromProps,(l=typeof s==`function`||typeof a.getSnapshotBeforeUpdate==`function`)||typeof a.UNSAFE_componentWillReceiveProps!=`function`&&typeof a.componentWillReceiveProps!=`function`||(o!==d||f!==c)&&ic(t,a,r,c),Za=!1,f=t.memoizedState,a.state=f,oo(t,r,a,i),ao();var p=t.memoizedState;o!==d||f!==p||Za||e!==null&&e.dependencies!==null&&ua(e.dependencies)?(typeof s==`function`&&(tc(t,n,s,r),p=t.memoizedState),(u=Za||rc(t,n,u,r,f,p,c)||e!==null&&e.dependencies!==null&&ua(e.dependencies))?(l||typeof a.UNSAFE_componentWillUpdate!=`function`&&typeof a.componentWillUpdate!=`function`||(typeof a.componentWillUpdate==`function`&&a.componentWillUpdate(r,p,c),typeof a.UNSAFE_componentWillUpdate==`function`&&a.UNSAFE_componentWillUpdate(r,p,c)),typeof a.componentDidUpdate==`function`&&(t.flags|=4),typeof a.getSnapshotBeforeUpdate==`function`&&(t.flags|=1024)):(typeof a.componentDidUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),t.memoizedProps=r,t.memoizedState=p),a.props=r,a.state=p,a.context=c,r=u):(typeof a.componentDidUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=4),typeof a.getSnapshotBeforeUpdate!=`function`||o===e.memoizedProps&&f===e.memoizedState||(t.flags|=1024),r=!1)}return a=r,Tc(e,t),r=(t.flags&128)!=0,a||r?(a=t.stateNode,n=r&&typeof n.getDerivedStateFromError!=`function`?null:a.render(),t.flags|=1,e!==null&&r?(t.child=Ya(t,e.child,null,i),t.child=Ya(t,null,n,i)):_c(e,t,n,i),t.memoizedState=a.state,e=t.child):e=I(e,t,i),e}function Oc(e,t,n,r){return $i(),t.flags|=256,_c(e,t,n,r),t.child}var kc={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function N(e){return{baseLanes:e,cachePool:Ma()}}function Ac(e,t,n){return e=e===null?0:e.childLanes&~n,t&&(e|=nu),e}function jc(e,t,n){var r=t.pendingProps,i=!1,a=(t.flags&128)!=0,s;if((s=a)||(s=e!==null&&e.memoizedState===null?!1:(So.current&2)!=0),s&&(i=!0,t.flags&=-129),s=(t.flags&32)!=0,t.flags&=-33,e===null){if(Gi){if(i?_o(t):bo(t),(e=Wi)?(e=ff(e,qi),e=e!==null&&e.data!==`&`?e:null,e!==null&&(t.memoizedState={dehydrated:e,treeContext:Fi===null?null:{id:Ii,overflow:Li},retryLane:536870912,hydrationErrors:null},n=Ti(e),n.return=t,t.child=n,Ui=t,Wi=null)):e=null,e===null)throw Yi(t);return mf(e)?t.lanes=32:t.lanes=536870912,null}var c=r.children;return r=r.fallback,i?(bo(t),i=t.mode,c=P({mode:`hidden`,children:c},i),r=Ci(r,i,n,null),c.return=t,r.return=t,c.sibling=r,t.child=c,r=t.child,r.memoizedState=N(n),r.childLanes=Ac(e,s,n),t.memoizedState=kc,xc(null,r)):(_o(t),Mc(t,c))}var l=e.memoizedState;if(l!==null&&(c=l.dehydrated,c!==null)){if(a)t.flags&256?(_o(t),t.flags&=-257,t=Nc(e,t,n)):t.memoizedState===null?(bo(t),c=r.fallback,i=t.mode,r=P({mode:`visible`,children:r.children},i),c=Ci(c,i,n,null),c.flags|=2,r.return=t,c.return=t,r.sibling=c,t.child=r,Ya(t,e.child,null,n),r=t.child,r.memoizedState=N(n),r.childLanes=Ac(e,s,n),t.memoizedState=kc,t=xc(null,r)):(bo(t),t.child=e.child,t.flags|=128,t=null);else if(_o(t),mf(c)){if(s=c.nextSibling&&c.nextSibling.dataset,s)var u=s.dgst;s=u,r=Error(o(419)),r.stack=``,r.digest=s,ta({value:r,source:null,stack:null}),t=Nc(e,t,n)}else if(gc||la(e,t,n,!1),s=(n&e.childLanes)!==0,gc||s){if(s=Wl,s!==null&&(r=pt(s,n),r!==0&&r!==l.retryLane))throw l.retryLane=r,pi(e,r),bu(s,e,r),hc;pf(c)||Mu(),t=Nc(e,t,n)}else pf(c)?(t.flags|=192,t.child=e.child,t=null):(e=l.treeContext,Wi=gf(c.nextSibling),Ui=t,Gi=!0,Ki=null,qi=!1,e!==null&&Hi(t,e),t=Mc(t,r.children),t.flags|=4096);return t}return i?(bo(t),c=r.fallback,i=t.mode,l=e.child,u=l.sibling,r=bi(l,{mode:`hidden`,children:r.children}),r.subtreeFlags=l.subtreeFlags&65011712,u===null?(c=Ci(c,i,n,null),c.flags|=2):c=bi(u,c),c.return=t,r.return=t,r.sibling=c,t.child=r,xc(null,r),r=t.child,c=e.child.memoizedState,c===null?c=N(n):(i=c.cachePool,i===null?i=Ma():(l=va._currentValue,i=i.parent===l?i:{parent:l,pool:l}),c={baseLanes:c.baseLanes|n,cachePool:i}),r.memoizedState=c,r.childLanes=Ac(e,s,n),t.memoizedState=kc,xc(e.child,r)):(_o(t),n=e.child,e=n.sibling,n=bi(n,{mode:`visible`,children:r.children}),n.return=t,n.sibling=null,e!==null&&(s=t.deletions,s===null?(t.deletions=[e],t.flags|=16):s.push(e)),t.child=n,t.memoizedState=null,n)}function Mc(e,t){return t=P({mode:`visible`,children:t},e.mode),t.return=e,e.child=t}function P(e,t){return e=vi(22,e,null,t),e.lanes=0,e}function Nc(e,t,n){return Ya(t,e.child,null,n),e=Mc(t,t.pendingProps.children),e.flags|=2,t.memoizedState=null,e}function F(e,t,n){e.lanes|=t;var r=e.alternate;r!==null&&(r.lanes|=t),sa(e.return,t,n)}function Pc(e,t,n,r,i,a){var o=e.memoizedState;o===null?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:i,treeForkCount:a}:(o.isBackwards=t,o.rendering=null,o.renderingStartTime=0,o.last=r,o.tail=n,o.tailMode=i,o.treeForkCount=a)}function Fc(e,t,n){var r=t.pendingProps,i=r.revealOrder,a=r.tail;r=r.children;var o=So.current,s=(o&2)!=0;if(s?(o=o&1|2,t.flags|=128):o&=1,_e(So,o),_c(e,t,r,n),r=Gi?Mi:0,!s&&e!==null&&e.flags&128)a:for(e=t.child;e!==null;){if(e.tag===13)e.memoizedState!==null&&F(e,n,t);else if(e.tag===19)F(e,n,t);else if(e.child!==null){e.child.return=e,e=e.child;continue}if(e===t)break a;for(;e.sibling===null;){if(e.return===null||e.return===t)break a;e=e.return}e.sibling.return=e.return,e=e.sibling}switch(i){case`forwards`:for(n=t.child,i=null;n!==null;)e=n.alternate,e!==null&&Co(e)===null&&(i=n),n=n.sibling;n=i,n===null?(i=t.child,t.child=null):(i=n.sibling,n.sibling=null),Pc(t,!1,i,n,a,r);break;case`backwards`:case`unstable_legacy-backwards`:for(n=null,i=t.child,t.child=null;i!==null;){if(e=i.alternate,e!==null&&Co(e)===null){t.child=i;break}e=i.sibling,i.sibling=n,n=i,i=e}Pc(t,!0,n,null,a,r);break;case`together`:Pc(t,!1,null,null,void 0,r);break;default:t.memoizedState=null}return t.child}function I(e,t,n){if(e!==null&&(t.dependencies=e.dependencies),$l|=t.lanes,(n&t.childLanes)===0)if(e!==null){if(la(e,t,n,!1),(n&t.childLanes)===0)return null}else return null;if(e!==null&&t.child!==e.child)throw Error(o(153));if(t.child!==null){for(e=t.child,n=bi(e,e.pendingProps),t.child=n,n.return=t;e.sibling!==null;)e=e.sibling,n=n.sibling=bi(e,e.pendingProps),n.return=t;n.sibling=null}return t.child}function Ic(e,t){return(e.lanes&t)===0?(e=e.dependencies,!!(e!==null&&ua(e))):!0}function L(e,t,n){switch(t.tag){case 3:Se(t,t.stateNode.containerInfo),aa(t,va,e.memoizedState.cache),$i();break;case 27:case 5:we(t);break;case 4:Se(t,t.stateNode.containerInfo);break;case 10:aa(t,t.type,t.memoizedProps.value);break;case 31:if(t.memoizedState!==null)return t.flags|=128,vo(t),null;break;case 13:var r=t.memoizedState;if(r!==null)return r.dehydrated===null?(n&t.child.childLanes)===0?(_o(t),e=I(e,t,n),e===null?null:e.sibling):jc(e,t,n):(_o(t),t.flags|=128,null);_o(t);break;case 19:var i=(e.flags&128)!=0;if(r=(n&t.childLanes)!==0,r||=(la(e,t,n,!1),(n&t.childLanes)!==0),i){if(r)return Fc(e,t,n);t.flags|=128}if(i=t.memoizedState,i!==null&&(i.rendering=null,i.tail=null,i.lastEffect=null),_e(So,So.current),r)break;return null;case 22:return t.lanes=0,bc(e,t,n,t.pendingProps);case 24:aa(t,va,e.memoizedState.cache)}return I(e,t,n)}function Lc(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps)gc=!0;else{if(!Ic(e,n)&&!(t.flags&128))return gc=!1,L(e,t,n);gc=!!(e.flags&131072)}else gc=!1,Gi&&t.flags&1048576&&zi(t,Mi,t.index);switch(t.lanes=0,t.tag){case 16:a:{var r=t.pendingProps;if(e=za(t.elementType),t.type=e,typeof e==`function`)yi(e)?(r=ac(e,r),t.tag=1,t=Dc(null,t,e,r,n)):(t.tag=0,t=Ec(null,t,e,r,n));else{if(e!=null){var i=e.$$typeof;if(i===te){t.tag=11,t=vc(null,t,e,r,n);break a}else if(i===re){t.tag=14,t=A(null,t,e,r,n);break a}}throw t=ue(e)||e,Error(o(306,t,``))}}return t;case 0:return Ec(e,t,t.type,t.pendingProps,n);case 1:return r=t.type,i=ac(r,t.pendingProps),Dc(e,t,r,i,n);case 3:a:{if(Se(t,t.stateNode.containerInfo),e===null)throw Error(o(387));r=t.pendingProps;var a=t.memoizedState;i=a.element,$a(e,t),oo(t,r,null,n);var s=t.memoizedState;if(r=s.cache,aa(t,va,r),r!==a.cache&&ca(t,[va],n,!0),ao(),r=s.element,a.isDehydrated)if(a={element:r,isDehydrated:!1,cache:s.cache},t.updateQueue.baseState=a,t.memoizedState=a,t.flags&256){t=Oc(e,t,r,n);break a}else if(r!==i){i=Oi(Error(o(424)),t),ta(i),t=Oc(e,t,r,n);break a}else{switch(e=t.stateNode.containerInfo,e.nodeType){case 9:e=e.body;break;default:e=e.nodeName===`HTML`?e.ownerDocument.body:e}for(Wi=gf(e.firstChild),Ui=t,Gi=!0,Ki=null,qi=!0,n=Xa(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling}else{if($i(),r===i){t=I(e,t,n);break a}_c(e,t,r,n)}t=t.child}return t;case 26:return Tc(e,t),e===null?(n=Lf(t.type,null,t.pendingProps,null))?t.memoizedState=n:Gi||(n=t.type,e=t.pendingProps,r=Jd(be.current).createElement(n),r[yt]=t,r[bt]=e,Hd(r,n,e),Mt(r),t.stateNode=r):t.memoizedState=Lf(t.type,e.memoizedProps,t.pendingProps,e.memoizedState),null;case 27:return we(t),e===null&&Gi&&(r=t.stateNode=bf(t.type,t.pendingProps,be.current),Ui=t,qi=!0,i=Wi,of(t.type)?(_f=i,Wi=gf(r.firstChild)):Wi=i),_c(e,t,t.pendingProps.children,n),Tc(e,t),e===null&&(t.flags|=4194304),t.child;case 5:return e===null&&Gi&&((i=r=Wi)&&(r=uf(r,t.type,t.pendingProps,qi),r===null?i=!1:(t.stateNode=r,Ui=t,Wi=gf(r.firstChild),qi=!1,i=!0)),i||Yi(t)),we(t),i=t.type,a=t.pendingProps,s=e===null?null:e.memoizedProps,r=a.children,Zd(i,a)?r=null:s!==null&&Zd(i,s)&&(t.flags|=32),t.memoizedState!==null&&(i=Io(e,t,zo,null,null,n),op._currentValue=i),Tc(e,t),_c(e,t,r,n),t.child;case 6:return e===null&&Gi&&((e=n=Wi)&&(n=df(n,t.pendingProps,qi),n===null?e=!1:(t.stateNode=n,Ui=t,Wi=null,e=!0)),e||Yi(t)),null;case 13:return jc(e,t,n);case 4:return Se(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=Ya(t,null,r,n):_c(e,t,r,n),t.child;case 11:return vc(e,t,t.type,t.pendingProps,n);case 7:return _c(e,t,t.pendingProps,n),t.child;case 8:return _c(e,t,t.pendingProps.children,n),t.child;case 12:return _c(e,t,t.pendingProps.children,n),t.child;case 10:return r=t.pendingProps,aa(t,t.type,r.value),_c(e,t,r.children,n),t.child;case 9:return i=t.type._context,r=t.pendingProps.children,da(t),i=fa(i),r=r(i),t.flags|=1,_c(e,t,r,n),t.child;case 14:return A(e,t,t.type,t.pendingProps,n);case 15:return yc(e,t,t.type,t.pendingProps,n);case 19:return Fc(e,t,n);case 31:return wc(e,t,n);case 22:return bc(e,t,n,t.pendingProps);case 24:return da(t),r=fa(va),e===null?(i=Aa(),i===null&&(i=Wl,a=ya(),i.pooledCache=a,a.refCount++,a!==null&&(i.pooledCacheLanes|=n),i=a),t.memoizedState={parent:r,cache:i},Qa(t),aa(t,va,i)):((e.lanes&n)!==0&&($a(e,t),oo(t,null,null,n),ao()),i=e.memoizedState,a=t.memoizedState,i.parent===r?(r=a.cache,aa(t,va,r),r!==i.cache&&ca(t,[va],n,!0)):(i={parent:r,cache:r},t.memoizedState=i,t.lanes===0&&(t.memoizedState=t.updateQueue.baseState=i),aa(t,va,r))),_c(e,t,t.pendingProps.children,n),t.child;case 29:throw t.pendingProps}throw Error(o(156,t.tag))}function Rc(e){e.flags|=4}function zc(e,t,n,r,i){if((t=(e.mode&32)!=0)&&(t=!1),t){if(e.flags|=16777216,(i&335544128)===i)if(e.stateNode.complete)e.flags|=8192;else if(ku())e.flags|=8192;else throw Ba=Ia,Pa}else e.flags&=-16777217}function Bc(e,t){if(t.type!==`stylesheet`||t.state.loading&4)e.flags&=-16777217;else if(e.flags|=16777216,!Qf(t))if(ku())e.flags|=8192;else throw Ba=Ia,Pa}function Vc(e,t){t!==null&&(e.flags|=4),e.flags&16384&&(t=e.tag===22?536870912:st(),e.lanes|=t,ru|=t)}function R(e,t){if(!Gi)switch(e.tailMode){case`hidden`:t=e.tail;for(var n=null;t!==null;)t.alternate!==null&&(n=t),t=t.sibling;n===null?e.tail=null:n.sibling=null;break;case`collapsed`:n=e.tail;for(var r=null;n!==null;)n.alternate!==null&&(r=n),n=n.sibling;r===null?t||e.tail===null?e.tail=null:e.tail.sibling=null:r.sibling=null}}function Hc(e){var t=e.alternate!==null&&e.alternate.child===e.child,n=0,r=0;if(t)for(var i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags&65011712,r|=i.flags&65011712,i.return=e,i=i.sibling;else for(i=e.child;i!==null;)n|=i.lanes|i.childLanes,r|=i.subtreeFlags,r|=i.flags,i.return=e,i=i.sibling;return e.subtreeFlags|=r,e.childLanes=n,t}function Uc(e,t,n){var r=t.pendingProps;switch(Vi(t),t.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return Hc(t),null;case 1:return Hc(t),null;case 3:return n=t.stateNode,r=null,e!==null&&(r=e.memoizedState.cache),t.memoizedState.cache!==r&&(t.flags|=2048),oa(va),Ce(),n.pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),(e===null||e.child===null)&&(Qi(t)?Rc(t):e===null||e.memoizedState.isDehydrated&&!(t.flags&256)||(t.flags|=1024,ea())),Hc(t),null;case 26:var i=t.type,a=t.memoizedState;return e===null?(Rc(t),a===null?(Hc(t),zc(t,i,null,r,n)):(Hc(t),Bc(t,a))):a?a===e.memoizedState?(Hc(t),t.flags&=-16777217):(Rc(t),Hc(t),Bc(t,a)):(e=e.memoizedProps,e!==r&&Rc(t),Hc(t),zc(t,i,e,r,n)),null;case 27:if(Te(t),n=be.current,i=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==r&&Rc(t);else{if(!r){if(t.stateNode===null)throw Error(o(166));return Hc(t),null}e=ve.current,Qi(t)?Xi(t,e):(e=bf(i,r,n),t.stateNode=e,Rc(t))}return Hc(t),null;case 5:if(Te(t),i=t.type,e!==null&&t.stateNode!=null)e.memoizedProps!==r&&Rc(t);else{if(!r){if(t.stateNode===null)throw Error(o(166));return Hc(t),null}if(a=ve.current,Qi(t))Xi(t,a);else{var s=Jd(be.current);switch(a){case 1:a=s.createElementNS(`http://www.w3.org/2000/svg`,i);break;case 2:a=s.createElementNS(`http://www.w3.org/1998/Math/MathML`,i);break;default:switch(i){case`svg`:a=s.createElementNS(`http://www.w3.org/2000/svg`,i);break;case`math`:a=s.createElementNS(`http://www.w3.org/1998/Math/MathML`,i);break;case`script`:a=s.createElement(`div`),a.innerHTML=`<script><\/script>`,a=a.removeChild(a.firstChild);break;case`select`:a=typeof r.is==`string`?s.createElement(`select`,{is:r.is}):s.createElement(`select`),r.multiple?a.multiple=!0:r.size&&(a.size=r.size);break;default:a=typeof r.is==`string`?s.createElement(i,{is:r.is}):s.createElement(i)}}a[yt]=t,a[bt]=r;a:for(s=t.child;s!==null;){if(s.tag===5||s.tag===6)a.appendChild(s.stateNode);else if(s.tag!==4&&s.tag!==27&&s.child!==null){s.child.return=s,s=s.child;continue}if(s===t)break a;for(;s.sibling===null;){if(s.return===null||s.return===t)break a;s=s.return}s.sibling.return=s.return,s=s.sibling}t.stateNode=a;a:switch(Hd(a,i,r),i){case`button`:case`input`:case`select`:case`textarea`:r=!!r.autoFocus;break a;case`img`:r=!0;break a;default:r=!1}r&&Rc(t)}}return Hc(t),zc(t,t.type,e===null?null:e.memoizedProps,t.pendingProps,n),null;case 6:if(e&&t.stateNode!=null)e.memoizedProps!==r&&Rc(t);else{if(typeof r!=`string`&&t.stateNode===null)throw Error(o(166));if(e=be.current,Qi(t)){if(e=t.stateNode,n=t.memoizedProps,r=null,i=Ui,i!==null)switch(i.tag){case 27:case 5:r=i.memoizedProps}e[yt]=t,e=!!(e.nodeValue===n||r!==null&&!0===r.suppressHydrationWarning||zd(e.nodeValue,n)),e||Yi(t,!0)}else e=Jd(e).createTextNode(r),e[yt]=t,t.stateNode=e}return Hc(t),null;case 31:if(n=t.memoizedState,e===null||e.memoizedState!==null){if(r=Qi(t),n!==null){if(e===null){if(!r)throw Error(o(318));if(e=t.memoizedState,e=e===null?null:e.dehydrated,!e)throw Error(o(557));e[yt]=t}else $i(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;Hc(t),e=!1}else n=ea(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=n),e=!0;if(!e)return t.flags&256?(xo(t),t):(xo(t),null);if(t.flags&128)throw Error(o(558))}return Hc(t),null;case 13:if(r=t.memoizedState,e===null||e.memoizedState!==null&&e.memoizedState.dehydrated!==null){if(i=Qi(t),r!==null&&r.dehydrated!==null){if(e===null){if(!i)throw Error(o(318));if(i=t.memoizedState,i=i===null?null:i.dehydrated,!i)throw Error(o(317));i[yt]=t}else $i(),!(t.flags&128)&&(t.memoizedState=null),t.flags|=4;Hc(t),i=!1}else i=ea(),e!==null&&e.memoizedState!==null&&(e.memoizedState.hydrationErrors=i),i=!0;if(!i)return t.flags&256?(xo(t),t):(xo(t),null)}return xo(t),t.flags&128?(t.lanes=n,t):(n=r!==null,e=e!==null&&e.memoizedState!==null,n&&(r=t.child,i=null,r.alternate!==null&&r.alternate.memoizedState!==null&&r.alternate.memoizedState.cachePool!==null&&(i=r.alternate.memoizedState.cachePool.pool),a=null,r.memoizedState!==null&&r.memoizedState.cachePool!==null&&(a=r.memoizedState.cachePool.pool),a!==i&&(r.flags|=2048)),n!==e&&n&&(t.child.flags|=8192),Vc(t,t.updateQueue),Hc(t),null);case 4:return Ce(),e===null&&kd(t.stateNode.containerInfo),Hc(t),null;case 10:return oa(t.type),Hc(t),null;case 19:if(ge(So),r=t.memoizedState,r===null)return Hc(t),null;if(i=(t.flags&128)!=0,a=r.rendering,a===null)if(i)R(r,!1);else{if(Ql!==0||e!==null&&e.flags&128)for(e=t.child;e!==null;){if(a=Co(e),a!==null){for(t.flags|=128,R(r,!1),e=a.updateQueue,t.updateQueue=e,Vc(t,e),t.subtreeFlags=0,e=n,n=t.child;n!==null;)xi(n,e),n=n.sibling;return _e(So,So.current&1|2),Gi&&Ri(t,r.treeForkCount),t.child}e=e.sibling}r.tail!==null&&Re()>cu&&(t.flags|=128,i=!0,R(r,!1),t.lanes=4194304)}else{if(!i)if(e=Co(a),e!==null){if(t.flags|=128,i=!0,e=e.updateQueue,t.updateQueue=e,Vc(t,e),R(r,!0),r.tail===null&&r.tailMode===`hidden`&&!a.alternate&&!Gi)return Hc(t),null}else 2*Re()-r.renderingStartTime>cu&&n!==536870912&&(t.flags|=128,i=!0,R(r,!1),t.lanes=4194304);r.isBackwards?(a.sibling=t.child,t.child=a):(e=r.last,e===null?t.child=a:e.sibling=a,r.last=a)}return r.tail===null?(Hc(t),null):(e=r.tail,r.rendering=e,r.tail=e.sibling,r.renderingStartTime=Re(),e.sibling=null,n=So.current,_e(So,i?n&1|2:n&1),Gi&&Ri(t,r.treeForkCount),e);case 22:case 23:return xo(t),mo(),r=t.memoizedState!==null,e===null?r&&(t.flags|=8192):e.memoizedState!==null!==r&&(t.flags|=8192),r?n&536870912&&!(t.flags&128)&&(Hc(t),t.subtreeFlags&6&&(t.flags|=8192)):Hc(t),n=t.updateQueue,n!==null&&Vc(t,n.retryQueue),n=null,e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),r=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(r=t.memoizedState.cachePool.pool),r!==n&&(t.flags|=2048),e!==null&&ge(ka),null;case 24:return n=null,e!==null&&(n=e.memoizedState.cache),t.memoizedState.cache!==n&&(t.flags|=2048),oa(va),Hc(t),null;case 25:return null;case 30:return null}throw Error(o(156,t.tag))}function z(e,t){switch(Vi(t),t.tag){case 1:return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return oa(va),Ce(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 26:case 27:case 5:return Te(t),null;case 31:if(t.memoizedState!==null){if(xo(t),t.alternate===null)throw Error(o(340));$i()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 13:if(xo(t),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(o(340));$i()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return ge(So),null;case 4:return Ce(),null;case 10:return oa(t.type),null;case 22:case 23:return xo(t),mo(),e!==null&&ge(ka),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 24:return oa(va),null;case 25:return null;default:return null}}function Wc(e,t){switch(Vi(t),t.tag){case 3:oa(va),Ce();break;case 26:case 27:case 5:Te(t);break;case 4:Ce();break;case 31:t.memoizedState!==null&&xo(t);break;case 13:xo(t);break;case 19:ge(So);break;case 10:oa(t.type);break;case 22:case 23:xo(t),mo(),e!==null&&ge(ka);break;case 24:oa(va)}}function B(e,t){try{var n=t.updateQueue,r=n===null?null:n.lastEffect;if(r!==null){var i=r.next;n=i;do{if((n.tag&e)===e){r=void 0;var a=n.create,o=n.inst;r=a(),o.destroy=r}n=n.next}while(n!==i)}}catch(e){Xu(t,t.return,e)}}function Gc(e,t,n){try{var r=t.updateQueue,i=r===null?null:r.lastEffect;if(i!==null){var a=i.next;r=a;do{if((r.tag&e)===e){var o=r.inst,s=o.destroy;if(s!==void 0){o.destroy=void 0,i=t;var c=n,l=s;try{l()}catch(e){Xu(i,c,e)}}}r=r.next}while(r!==a)}}catch(e){Xu(t,t.return,e)}}function Kc(e){var t=e.updateQueue;if(t!==null){var n=e.stateNode;try{co(t,n)}catch(t){Xu(e,e.return,t)}}}function qc(e,t,n){n.props=ac(e.type,e.memoizedProps),n.state=e.memoizedState;try{n.componentWillUnmount()}catch(n){Xu(e,t,n)}}function Jc(e,t){try{var n=e.ref;if(n!==null){switch(e.tag){case 26:case 27:case 5:var r=e.stateNode;break;case 30:r=e.stateNode;break;default:r=e.stateNode}typeof n==`function`?e.refCleanup=n(r):n.current=r}}catch(n){Xu(e,t,n)}}function Yc(e,t){var n=e.ref,r=e.refCleanup;if(n!==null)if(typeof r==`function`)try{r()}catch(n){Xu(e,t,n)}finally{e.refCleanup=null,e=e.alternate,e!=null&&(e.refCleanup=null)}else if(typeof n==`function`)try{n(null)}catch(n){Xu(e,t,n)}else n.current=null}function Xc(e){var t=e.type,n=e.memoizedProps,r=e.stateNode;try{a:switch(t){case`button`:case`input`:case`select`:case`textarea`:n.autoFocus&&r.focus();break a;case`img`:n.src?r.src=n.src:n.srcSet&&(r.srcset=n.srcSet)}}catch(t){Xu(e,e.return,t)}}function Zc(e,t,n){try{var r=e.stateNode;Ud(r,e.type,n,t),r[bt]=t}catch(t){Xu(e,e.return,t)}}function Qc(e){return e.tag===5||e.tag===3||e.tag===26||e.tag===27&&of(e.type)||e.tag===4}function $c(e){a:for(;;){for(;e.sibling===null;){if(e.return===null||Qc(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.tag===27&&of(e.type)||e.flags&2||e.child===null||e.tag===4)continue a;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function el(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?(n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n).insertBefore(e,t):(t=n.nodeType===9?n.body:n.nodeName===`HTML`?n.ownerDocument.body:n,t.appendChild(e),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=dn));else if(r!==4&&(r===27&&of(e.type)&&(n=e.stateNode,t=null),e=e.child,e!==null))for(el(e,t,n),e=e.sibling;e!==null;)el(e,t,n),e=e.sibling}function tl(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(r===27&&of(e.type)&&(n=e.stateNode),e=e.child,e!==null))for(tl(e,t,n),e=e.sibling;e!==null;)tl(e,t,n),e=e.sibling}function nl(e){var t=e.stateNode,n=e.memoizedProps;try{for(var r=e.type,i=t.attributes;i.length;)t.removeAttributeNode(i[0]);Hd(t,r,n),t[yt]=e,t[bt]=n}catch(t){Xu(e,e.return,t)}}var rl=!1,il=!1,al=!1,ol=typeof WeakSet==`function`?WeakSet:Set,sl=null;function cl(e,t){if(e=e.containerInfo,Kd=hp,e=Lr(e),Rr(e)){if(`selectionStart`in e)var n={start:e.selectionStart,end:e.selectionEnd};else a:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var i=r.anchorOffset,a=r.focusNode;r=r.focusOffset;try{n.nodeType,a.nodeType}catch{n=null;break a}var s=0,c=-1,l=-1,u=0,d=0,f=e,p=null;b:for(;;){for(var m;f!==n||i!==0&&f.nodeType!==3||(c=s+i),f!==a||r!==0&&f.nodeType!==3||(l=s+r),f.nodeType===3&&(s+=f.nodeValue.length),(m=f.firstChild)!==null;)p=f,f=m;for(;;){if(f===e)break b;if(p===n&&++u===i&&(c=s),p===a&&++d===r&&(l=s),(m=f.nextSibling)!==null)break;f=p,p=f.parentNode}f=m}n=c===-1||l===-1?null:{start:c,end:l}}else n=null}n||={start:0,end:0}}else n=null;for(qd={focusedElem:e,selectionRange:n},hp=!1,sl=t;sl!==null;)if(t=sl,e=t.child,t.subtreeFlags&1028&&e!==null)e.return=t,sl=e;else for(;sl!==null;){switch(t=sl,a=t.alternate,e=t.flags,t.tag){case 0:if(e&4&&(e=t.updateQueue,e=e===null?null:e.events,e!==null))for(n=0;n<e.length;n++)i=e[n],i.ref.impl=i.nextImpl;break;case 11:case 15:break;case 1:if(e&1024&&a!==null){e=void 0,n=t,i=a.memoizedProps,a=a.memoizedState,r=n.stateNode;try{var h=ac(n.type,i);e=r.getSnapshotBeforeUpdate(h,a),r.__reactInternalSnapshotBeforeUpdate=e}catch(e){Xu(n,n.return,e)}}break;case 3:if(e&1024){if(e=t.stateNode.containerInfo,n=e.nodeType,n===9)lf(e);else if(n===1)switch(e.nodeName){case`HEAD`:case`HTML`:case`BODY`:lf(e);break;default:e.textContent=``}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if(e&1024)throw Error(o(163))}if(e=t.sibling,e!==null){e.return=t.return,sl=e;break}sl=t.return}}function ll(e,t,n){var r=n.flags;switch(n.tag){case 0:case 11:case 15:wl(e,n),r&4&&B(5,n);break;case 1:if(wl(e,n),r&4)if(e=n.stateNode,t===null)try{e.componentDidMount()}catch(e){Xu(n,n.return,e)}else{var i=ac(n.type,t.memoizedProps);t=t.memoizedState;try{e.componentDidUpdate(i,t,e.__reactInternalSnapshotBeforeUpdate)}catch(e){Xu(n,n.return,e)}}r&64&&Kc(n),r&512&&Jc(n,n.return);break;case 3:if(wl(e,n),r&64&&(e=n.updateQueue,e!==null)){if(t=null,n.child!==null)switch(n.child.tag){case 27:case 5:t=n.child.stateNode;break;case 1:t=n.child.stateNode}try{co(e,t)}catch(e){Xu(n,n.return,e)}}break;case 27:t===null&&r&4&&nl(n);case 26:case 5:wl(e,n),t===null&&r&4&&Xc(n),r&512&&Jc(n,n.return);break;case 12:wl(e,n);break;case 31:wl(e,n),r&4&&hl(e,n);break;case 13:wl(e,n),r&4&&gl(e,n),r&64&&(e=n.memoizedState,e!==null&&(e=e.dehydrated,e!==null&&(n=ed.bind(null,n),hf(e,n))));break;case 22:if(r=n.memoizedState!==null||rl,!r){t=t!==null&&t.memoizedState!==null||il,i=rl;var a=il;rl=r,(il=t)&&!a?El(e,n,(n.subtreeFlags&8772)!=0):wl(e,n),rl=i,il=a}break;case 30:break;default:wl(e,n)}}function ul(e){var t=e.alternate;t!==null&&(e.alternate=null,ul(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&Dt(t)),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}var dl=null,fl=!1;function pl(e,t,n){for(n=n.child;n!==null;)ml(e,t,n),n=n.sibling}function ml(e,t,n){if(Je&&typeof Je.onCommitFiberUnmount==`function`)try{Je.onCommitFiberUnmount(qe,n)}catch{}switch(n.tag){case 26:il||Yc(n,t),pl(e,t,n),n.memoizedState?n.memoizedState.count--:n.stateNode&&(n=n.stateNode,n.parentNode.removeChild(n));break;case 27:il||Yc(n,t);var r=dl,i=fl;of(n.type)&&(dl=n.stateNode,fl=!1),pl(e,t,n),xf(n.stateNode),dl=r,fl=i;break;case 5:il||Yc(n,t);case 6:if(r=dl,i=fl,dl=null,pl(e,t,n),dl=r,fl=i,dl!==null)if(fl)try{(dl.nodeType===9?dl.body:dl.nodeName===`HTML`?dl.ownerDocument.body:dl).removeChild(n.stateNode)}catch(e){Xu(n,t,e)}else try{dl.removeChild(n.stateNode)}catch(e){Xu(n,t,e)}break;case 18:dl!==null&&(fl?(e=dl,sf(e.nodeType===9?e.body:e.nodeName===`HTML`?e.ownerDocument.body:e,n.stateNode),Vp(e)):sf(dl,n.stateNode));break;case 4:r=dl,i=fl,dl=n.stateNode.containerInfo,fl=!0,pl(e,t,n),dl=r,fl=i;break;case 0:case 11:case 14:case 15:Gc(2,n,t),il||Gc(4,n,t),pl(e,t,n);break;case 1:il||(Yc(n,t),r=n.stateNode,typeof r.componentWillUnmount==`function`&&qc(n,t,r)),pl(e,t,n);break;case 21:pl(e,t,n);break;case 22:il=(r=il)||n.memoizedState!==null,pl(e,t,n),il=r;break;default:pl(e,t,n)}}function hl(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null))){e=e.dehydrated;try{Vp(e)}catch(e){Xu(t,t.return,e)}}}function gl(e,t){if(t.memoizedState===null&&(e=t.alternate,e!==null&&(e=e.memoizedState,e!==null&&(e=e.dehydrated,e!==null))))try{Vp(e)}catch(e){Xu(t,t.return,e)}}function _l(e){switch(e.tag){case 31:case 13:case 19:var t=e.stateNode;return t===null&&(t=e.stateNode=new ol),t;case 22:return e=e.stateNode,t=e._retryCache,t===null&&(t=e._retryCache=new ol),t;default:throw Error(o(435,e.tag))}}function vl(e,t){var n=_l(e);t.forEach(function(t){if(!n.has(t)){n.add(t);var r=td.bind(null,e,t);t.then(r,r)}})}function yl(e,t){var n=t.deletions;if(n!==null)for(var r=0;r<n.length;r++){var i=n[r],a=e,s=t,c=s;a:for(;c!==null;){switch(c.tag){case 27:if(of(c.type)){dl=c.stateNode,fl=!1;break a}break;case 5:dl=c.stateNode,fl=!1;break a;case 3:case 4:dl=c.stateNode.containerInfo,fl=!0;break a}c=c.return}if(dl===null)throw Error(o(160));ml(a,s,i),dl=null,fl=!1,a=i.alternate,a!==null&&(a.return=null),i.return=null}if(t.subtreeFlags&13886)for(t=t.child;t!==null;)xl(t,e),t=t.sibling}var bl=null;function xl(e,t){var n=e.alternate,r=e.flags;switch(e.tag){case 0:case 11:case 14:case 15:yl(t,e),Sl(e),r&4&&(Gc(3,e,e.return),B(3,e),Gc(5,e,e.return));break;case 1:yl(t,e),Sl(e),r&512&&(il||n===null||Yc(n,n.return)),r&64&&rl&&(e=e.updateQueue,e!==null&&(r=e.callbacks,r!==null&&(n=e.shared.hiddenCallbacks,e.shared.hiddenCallbacks=n===null?r:n.concat(r))));break;case 26:var i=bl;if(yl(t,e),Sl(e),r&512&&(il||n===null||Yc(n,n.return)),r&4){var a=n===null?null:n.memoizedState;if(r=e.memoizedState,n===null)if(r===null)if(e.stateNode===null){a:{r=e.type,n=e.memoizedProps,i=i.ownerDocument||i;b:switch(r){case`title`:a=i.getElementsByTagName(`title`)[0],(!a||a[Et]||a[yt]||a.namespaceURI===`http://www.w3.org/2000/svg`||a.hasAttribute(`itemprop`))&&(a=i.createElement(r),i.head.insertBefore(a,i.querySelector(`head > title`))),Hd(a,r,n),a[yt]=e,Mt(a),r=a;break a;case`link`:var s=Yf(`link`,`href`,i).get(r+(n.href||``));if(s){for(var c=0;c<s.length;c++)if(a=s[c],a.getAttribute(`href`)===(n.href==null||n.href===``?null:n.href)&&a.getAttribute(`rel`)===(n.rel==null?null:n.rel)&&a.getAttribute(`title`)===(n.title==null?null:n.title)&&a.getAttribute(`crossorigin`)===(n.crossOrigin==null?null:n.crossOrigin)){s.splice(c,1);break b}}a=i.createElement(r),Hd(a,r,n),i.head.appendChild(a);break;case`meta`:if(s=Yf(`meta`,`content`,i).get(r+(n.content||``))){for(c=0;c<s.length;c++)if(a=s[c],a.getAttribute(`content`)===(n.content==null?null:``+n.content)&&a.getAttribute(`name`)===(n.name==null?null:n.name)&&a.getAttribute(`property`)===(n.property==null?null:n.property)&&a.getAttribute(`http-equiv`)===(n.httpEquiv==null?null:n.httpEquiv)&&a.getAttribute(`charset`)===(n.charSet==null?null:n.charSet)){s.splice(c,1);break b}}a=i.createElement(r),Hd(a,r,n),i.head.appendChild(a);break;default:throw Error(o(468,r))}a[yt]=e,Mt(a),r=a}e.stateNode=r}else Xf(i,e.type,e.stateNode);else e.stateNode=Wf(i,r,e.memoizedProps);else a===r?r===null&&e.stateNode!==null&&Zc(e,e.memoizedProps,n.memoizedProps):(a===null?n.stateNode!==null&&(n=n.stateNode,n.parentNode.removeChild(n)):a.count--,r===null?Xf(i,e.type,e.stateNode):Wf(i,r,e.memoizedProps))}break;case 27:yl(t,e),Sl(e),r&512&&(il||n===null||Yc(n,n.return)),n!==null&&r&4&&Zc(e,e.memoizedProps,n.memoizedProps);break;case 5:if(yl(t,e),Sl(e),r&512&&(il||n===null||Yc(n,n.return)),e.flags&32){i=e.stateNode;try{rn(i,``)}catch(t){Xu(e,e.return,t)}}r&4&&e.stateNode!=null&&(i=e.memoizedProps,Zc(e,i,n===null?i:n.memoizedProps)),r&1024&&(al=!0);break;case 6:if(yl(t,e),Sl(e),r&4){if(e.stateNode===null)throw Error(o(162));r=e.memoizedProps,n=e.stateNode;try{n.nodeValue=r}catch(t){Xu(e,e.return,t)}}break;case 3:if(Jf=null,i=bl,bl=wf(t.containerInfo),yl(t,e),bl=i,Sl(e),r&4&&n!==null&&n.memoizedState.isDehydrated)try{Vp(t.containerInfo)}catch(t){Xu(e,e.return,t)}al&&(al=!1,Cl(e));break;case 4:r=bl,bl=wf(e.stateNode.containerInfo),yl(t,e),Sl(e),bl=r;break;case 12:yl(t,e),Sl(e);break;case 31:yl(t,e),Sl(e),r&4&&(r=e.updateQueue,r!==null&&(e.updateQueue=null,vl(e,r)));break;case 13:yl(t,e),Sl(e),e.child.flags&8192&&e.memoizedState!==null!=(n!==null&&n.memoizedState!==null)&&(su=Re()),r&4&&(r=e.updateQueue,r!==null&&(e.updateQueue=null,vl(e,r)));break;case 22:i=e.memoizedState!==null;var l=n!==null&&n.memoizedState!==null,u=rl,d=il;if(rl=u||i,il=d||l,yl(t,e),il=d,rl=u,Sl(e),r&8192)a:for(t=e.stateNode,t._visibility=i?t._visibility&-2:t._visibility|1,i&&(n===null||l||rl||il||Tl(e)),n=null,t=e;;){if(t.tag===5||t.tag===26){if(n===null){l=n=t;try{if(a=l.stateNode,i)s=a.style,typeof s.setProperty==`function`?s.setProperty(`display`,`none`,`important`):s.display=`none`;else{c=l.stateNode;var f=l.memoizedProps.style,p=f!=null&&f.hasOwnProperty(`display`)?f.display:null;c.style.display=p==null||typeof p==`boolean`?``:(``+p).trim()}}catch(e){Xu(l,l.return,e)}}}else if(t.tag===6){if(n===null){l=t;try{l.stateNode.nodeValue=i?``:l.memoizedProps}catch(e){Xu(l,l.return,e)}}}else if(t.tag===18){if(n===null){l=t;try{var m=l.stateNode;i?cf(m,!0):cf(l.stateNode,!1)}catch(e){Xu(l,l.return,e)}}}else if((t.tag!==22&&t.tag!==23||t.memoizedState===null||t===e)&&t.child!==null){t.child.return=t,t=t.child;continue}if(t===e)break a;for(;t.sibling===null;){if(t.return===null||t.return===e)break a;n===t&&(n=null),t=t.return}n===t&&(n=null),t.sibling.return=t.return,t=t.sibling}r&4&&(r=e.updateQueue,r!==null&&(n=r.retryQueue,n!==null&&(r.retryQueue=null,vl(e,n))));break;case 19:yl(t,e),Sl(e),r&4&&(r=e.updateQueue,r!==null&&(e.updateQueue=null,vl(e,r)));break;case 30:break;case 21:break;default:yl(t,e),Sl(e)}}function Sl(e){var t=e.flags;if(t&2){try{for(var n,r=e.return;r!==null;){if(Qc(r)){n=r;break}r=r.return}if(n==null)throw Error(o(160));switch(n.tag){case 27:var i=n.stateNode;tl(e,$c(e),i);break;case 5:var a=n.stateNode;n.flags&32&&(rn(a,``),n.flags&=-33),tl(e,$c(e),a);break;case 3:case 4:var s=n.stateNode.containerInfo;el(e,$c(e),s);break;default:throw Error(o(161))}}catch(t){Xu(e,e.return,t)}e.flags&=-3}t&4096&&(e.flags&=-4097)}function Cl(e){if(e.subtreeFlags&1024)for(e=e.child;e!==null;){var t=e;Cl(t),t.tag===5&&t.flags&1024&&t.stateNode.reset(),e=e.sibling}}function wl(e,t){if(t.subtreeFlags&8772)for(t=t.child;t!==null;)ll(e,t.alternate,t),t=t.sibling}function Tl(e){for(e=e.child;e!==null;){var t=e;switch(t.tag){case 0:case 11:case 14:case 15:Gc(4,t,t.return),Tl(t);break;case 1:Yc(t,t.return);var n=t.stateNode;typeof n.componentWillUnmount==`function`&&qc(t,t.return,n),Tl(t);break;case 27:xf(t.stateNode);case 26:case 5:Yc(t,t.return),Tl(t);break;case 22:t.memoizedState===null&&Tl(t);break;case 30:Tl(t);break;default:Tl(t)}e=e.sibling}}function El(e,t,n){for(n&&=(t.subtreeFlags&8772)!=0,t=t.child;t!==null;){var r=t.alternate,i=e,a=t,o=a.flags;switch(a.tag){case 0:case 11:case 15:El(i,a,n),B(4,a);break;case 1:if(El(i,a,n),r=a,i=r.stateNode,typeof i.componentDidMount==`function`)try{i.componentDidMount()}catch(e){Xu(r,r.return,e)}if(r=a,i=r.updateQueue,i!==null){var s=r.stateNode;try{var c=i.shared.hiddenCallbacks;if(c!==null)for(i.shared.hiddenCallbacks=null,i=0;i<c.length;i++)so(c[i],s)}catch(e){Xu(r,r.return,e)}}n&&o&64&&Kc(a),Jc(a,a.return);break;case 27:nl(a);case 26:case 5:El(i,a,n),n&&r===null&&o&4&&Xc(a),Jc(a,a.return);break;case 12:El(i,a,n);break;case 31:El(i,a,n),n&&o&4&&hl(i,a);break;case 13:El(i,a,n),n&&o&4&&gl(i,a);break;case 22:a.memoizedState===null&&El(i,a,n),Jc(a,a.return);break;case 30:break;default:El(i,a,n)}t=t.sibling}}function Dl(e,t){var n=null;e!==null&&e.memoizedState!==null&&e.memoizedState.cachePool!==null&&(n=e.memoizedState.cachePool.pool),e=null,t.memoizedState!==null&&t.memoizedState.cachePool!==null&&(e=t.memoizedState.cachePool.pool),e!==n&&(e!=null&&e.refCount++,n!=null&&ba(n))}function Ol(e,t){e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&ba(e))}function kl(e,t,n,r){if(t.subtreeFlags&10256)for(t=t.child;t!==null;)Al(e,t,n,r),t=t.sibling}function Al(e,t,n,r){var i=t.flags;switch(t.tag){case 0:case 11:case 15:kl(e,t,n,r),i&2048&&B(9,t);break;case 1:kl(e,t,n,r);break;case 3:kl(e,t,n,r),i&2048&&(e=null,t.alternate!==null&&(e=t.alternate.memoizedState.cache),t=t.memoizedState.cache,t!==e&&(t.refCount++,e!=null&&ba(e)));break;case 12:if(i&2048){kl(e,t,n,r),e=t.stateNode;try{var a=t.memoizedProps,o=a.id,s=a.onPostCommit;typeof s==`function`&&s(o,t.alternate===null?`mount`:`update`,e.passiveEffectDuration,-0)}catch(e){Xu(t,t.return,e)}}else kl(e,t,n,r);break;case 31:kl(e,t,n,r);break;case 13:kl(e,t,n,r);break;case 23:break;case 22:a=t.stateNode,o=t.alternate,t.memoizedState===null?a._visibility&2?kl(e,t,n,r):(a._visibility|=2,jl(e,t,n,r,(t.subtreeFlags&10256)!=0||!1)):a._visibility&2?kl(e,t,n,r):Ml(e,t),i&2048&&Dl(o,t);break;case 24:kl(e,t,n,r),i&2048&&Ol(t.alternate,t);break;default:kl(e,t,n,r)}}function jl(e,t,n,r,i){for(i&&=(t.subtreeFlags&10256)!=0||!1,t=t.child;t!==null;){var a=e,o=t,s=n,c=r,l=o.flags;switch(o.tag){case 0:case 11:case 15:jl(a,o,s,c,i),B(8,o);break;case 23:break;case 22:var u=o.stateNode;o.memoizedState===null?(u._visibility|=2,jl(a,o,s,c,i)):u._visibility&2?jl(a,o,s,c,i):Ml(a,o),i&&l&2048&&Dl(o.alternate,o);break;case 24:jl(a,o,s,c,i),i&&l&2048&&Ol(o.alternate,o);break;default:jl(a,o,s,c,i)}t=t.sibling}}function Ml(e,t){if(t.subtreeFlags&10256)for(t=t.child;t!==null;){var n=e,r=t,i=r.flags;switch(r.tag){case 22:Ml(n,r),i&2048&&Dl(r.alternate,r);break;case 24:Ml(n,r),i&2048&&Ol(r.alternate,r);break;default:Ml(n,r)}t=t.sibling}}var Nl=8192;function Pl(e,t,n){if(e.subtreeFlags&Nl)for(e=e.child;e!==null;)Fl(e,t,n),e=e.sibling}function Fl(e,t,n){switch(e.tag){case 26:Pl(e,t,n),e.flags&Nl&&e.memoizedState!==null&&$f(n,bl,e.memoizedState,e.memoizedProps);break;case 5:Pl(e,t,n);break;case 3:case 4:var r=bl;bl=wf(e.stateNode.containerInfo),Pl(e,t,n),bl=r;break;case 22:e.memoizedState===null&&(r=e.alternate,r!==null&&r.memoizedState!==null?(r=Nl,Nl=16777216,Pl(e,t,n),Nl=r):Pl(e,t,n));break;default:Pl(e,t,n)}}function Il(e){var t=e.alternate;if(t!==null&&(e=t.child,e!==null)){t.child=null;do t=e.sibling,e.sibling=null,e=t;while(e!==null)}}function Ll(e){var t=e.deletions;if(e.flags&16){if(t!==null)for(var n=0;n<t.length;n++){var r=t[n];sl=r,Bl(r,e)}Il(e)}if(e.subtreeFlags&10256)for(e=e.child;e!==null;)Rl(e),e=e.sibling}function Rl(e){switch(e.tag){case 0:case 11:case 15:Ll(e),e.flags&2048&&Gc(9,e,e.return);break;case 3:Ll(e);break;case 12:Ll(e);break;case 22:var t=e.stateNode;e.memoizedState!==null&&t._visibility&2&&(e.return===null||e.return.tag!==13)?(t._visibility&=-3,zl(e)):Ll(e);break;default:Ll(e)}}function zl(e){var t=e.deletions;if(e.flags&16){if(t!==null)for(var n=0;n<t.length;n++){var r=t[n];sl=r,Bl(r,e)}Il(e)}for(e=e.child;e!==null;){switch(t=e,t.tag){case 0:case 11:case 15:Gc(8,t,t.return),zl(t);break;case 22:n=t.stateNode,n._visibility&2&&(n._visibility&=-3,zl(t));break;default:zl(t)}e=e.sibling}}function Bl(e,t){for(;sl!==null;){var n=sl;switch(n.tag){case 0:case 11:case 15:Gc(8,n,t);break;case 23:case 22:if(n.memoizedState!==null&&n.memoizedState.cachePool!==null){var r=n.memoizedState.cachePool.pool;r!=null&&r.refCount++}break;case 24:ba(n.memoizedState.cache)}if(r=n.child,r!==null)r.return=n,sl=r;else a:for(n=e;sl!==null;){r=sl;var i=r.sibling,a=r.return;if(ul(r),r===n){sl=null;break a}if(i!==null){i.return=a,sl=i;break a}sl=a}}}var Vl={getCacheForType:function(e){var t=fa(va),n=t.data.get(e);return n===void 0&&(n=e(),t.data.set(e,n)),n},cacheSignal:function(){return fa(va).controller.signal}},Hl=typeof WeakMap==`function`?WeakMap:Map,Ul=0,Wl=null,Gl=null,Kl=0,V=0,ql=null,Jl=!1,Yl=!1,Xl=!1,Zl=0,Ql=0,$l=0,eu=0,tu=0,nu=0,ru=0,iu=null,au=null,ou=!1,su=0,H=0,cu=1/0,lu=null,U=null,uu=0,W=null,du=null,fu=0,pu=0,mu=null,hu=null,gu=0,_u=null;function vu(){return Ul&2&&Kl!==0?Kl&-Kl:C.T===null?gt():_d()}function yu(){if(nu===0)if(!(Kl&536870912)||Gi){var e=tt;tt<<=1,!(tt&3932160)&&(tt=262144),nu=e}else nu=536870912;return e=ho.current,e!==null&&(e.flags|=32),nu}function bu(e,t,n){(e===Wl&&(V===2||V===9)||e.cancelPendingCommit!==null)&&(Du(e,0),wu(e,Kl,nu,!1)),lt(e,n),(!(Ul&2)||e!==Wl)&&(e===Wl&&(!(Ul&2)&&(eu|=n),Ql===4&&wu(e,Kl,nu,!1)),ld(e))}function xu(e,t,n){if(Ul&6)throw Error(o(327));var r=!n&&(t&127)==0&&(t&e.expiredLanes)===0||at(e,t),i=r?Fu(e,t):Nu(e,t,!0),a=r;do{if(i===0){Yl&&!r&&wu(e,t,0,!1);break}else{if(n=e.current.alternate,a&&!Cu(n)){i=Nu(e,t,!1),a=!1;continue}if(i===2){if(a=t,e.errorRecoveryDisabledLanes&a)var s=0;else s=e.pendingLanes&-536870913,s=s===0?s&536870912?536870912:0:s;if(s!==0){t=s;a:{var c=e;i=iu;var l=c.current.memoizedState.isDehydrated;if(l&&(Du(c,s).flags|=256),s=Nu(c,s,!1),s!==2){if(Xl&&!l){c.errorRecoveryDisabledLanes|=a,eu|=a,i=4;break a}a=au,au=i,a!==null&&(au===null?au=a:au.push.apply(au,a))}i=s}if(a=!1,i!==2)continue}}if(i===1){Du(e,0),wu(e,t,0,!0);break}a:{switch(r=e,a=i,a){case 0:case 1:throw Error(o(345));case 4:if((t&4194048)!==t)break;case 6:wu(r,t,nu,!Jl);break a;case 2:au=null;break;case 3:case 5:break;default:throw Error(o(329))}if((t&62914560)===t&&(i=su+300-Re(),10<i)){if(wu(r,t,nu,!Jl),it(r,0,!0)!==0)break a;fu=t,r.timeoutHandle=ef(Su.bind(null,r,n,au,lu,ou,t,nu,eu,ru,Jl,a,`Throttled`,-0,0),i);break a}Su(r,n,au,lu,ou,t,nu,eu,ru,Jl,a,null,-0,0)}}break}while(1);ld(e)}function Su(e,t,n,r,i,a,o,s,c,l,u,d,f,p){if(e.timeoutHandle=-1,d=t.subtreeFlags,d&8192||(d&16785408)==16785408){d={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:dn},Fl(t,a,d);var m=(a&62914560)===a?su-Re():(a&4194048)===a?H-Re():0;if(m=tp(d,m),m!==null){fu=a,e.cancelPendingCommit=m(Hu.bind(null,e,t,a,n,r,i,o,s,c,u,d,null,f,p)),wu(e,a,o,!l);return}}Hu(e,t,a,n,r,i,o,s,c)}function Cu(e){for(var t=e;;){var n=t.tag;if((n===0||n===11||n===15)&&t.flags&16384&&(n=t.updateQueue,n!==null&&(n=n.stores,n!==null)))for(var r=0;r<n.length;r++){var i=n[r],a=i.getSnapshot;i=i.value;try{if(!Mr(a(),i))return!1}catch{return!1}}if(n=t.child,t.subtreeFlags&16384&&n!==null)n.return=t,t=n;else{if(t===e)break;for(;t.sibling===null;){if(t.return===null||t.return===e)return!0;t=t.return}t.sibling.return=t.return,t=t.sibling}}return!0}function wu(e,t,n,r){t&=~tu,t&=~eu,e.suspendedLanes|=t,e.pingedLanes&=~t,r&&(e.warmLanes|=t),r=e.expirationTimes;for(var i=t;0<i;){var a=31-Xe(i),o=1<<a;r[a]=-1,i&=~o}n!==0&&dt(e,n,t)}function Tu(){return Ul&6?!0:(ud(0,!1),!1)}function Eu(){if(Gl!==null){if(V===0)var e=Gl.return;else e=Gl,ia=ra=null,Ho(e),Ua=null,Wa=0,e=Gl;for(;e!==null;)Wc(e.alternate,e),e=e.return;Gl=null}}function Du(e,t){var n=e.timeoutHandle;n!==-1&&(e.timeoutHandle=-1,tf(n)),n=e.cancelPendingCommit,n!==null&&(e.cancelPendingCommit=null,n()),fu=0,Eu(),Wl=e,Gl=n=bi(e.current,null),Kl=t,V=0,ql=null,Jl=!1,Yl=at(e,t),Xl=!1,ru=nu=tu=eu=$l=Ql=0,au=iu=null,ou=!1,t&8&&(t|=t&32);var r=e.entangledLanes;if(r!==0)for(e=e.entanglements,r&=t;0<r;){var i=31-Xe(r),a=1<<i;t|=e[i],r&=~a}return Zl=t,ui(),n}function Ou(e,t){O=null,C.H=Zs,t===Na||t===Fa?(t=Va(),V=3):t===Pa?(t=Va(),V=4):V=t===hc?8:typeof t==`object`&&t&&typeof t.then==`function`?6:1,ql=t,Gl===null&&(Ql=1,lc(e,Oi(t,e.current)))}function ku(){var e=ho.current;return e===null?!0:(Kl&4194048)===Kl?go===null:(Kl&62914560)===Kl||Kl&536870912?e===go:!1}function Au(){var e=C.H;return C.H=Zs,e===null?Zs:e}function ju(){var e=C.A;return C.A=Vl,e}function Mu(){Ql=4,Jl||(Kl&4194048)!==Kl&&ho.current!==null||(Yl=!0),!($l&134217727)&&!(eu&134217727)||Wl===null||wu(Wl,Kl,nu,!1)}function Nu(e,t,n){var r=Ul;Ul|=2;var i=Au(),a=ju();(Wl!==e||Kl!==t)&&(lu=null,Du(e,t)),t=!1;var o=Ql;a:do try{if(V!==0&&Gl!==null){var s=Gl,c=ql;switch(V){case 8:Eu(),o=6;break a;case 3:case 2:case 9:case 6:ho.current===null&&(t=!0);var l=V;if(V=0,ql=null,zu(e,s,c,l),n&&Yl){o=0;break a}break;default:l=V,V=0,ql=null,zu(e,s,c,l)}}Pu(),o=Ql;break}catch(t){Ou(e,t)}while(1);return t&&e.shellSuspendCounter++,ia=ra=null,Ul=r,C.H=i,C.A=a,Gl===null&&(Wl=null,Kl=0,ui()),o}function Pu(){for(;Gl!==null;)Lu(Gl)}function Fu(e,t){var n=Ul;Ul|=2;var r=Au(),i=ju();Wl!==e||Kl!==t?(lu=null,cu=Re()+500,Du(e,t)):Yl=at(e,t);a:do try{if(V!==0&&Gl!==null){t=Gl;var a=ql;b:switch(V){case 1:V=0,ql=null,zu(e,t,a,1);break;case 2:case 9:if(La(a)){V=0,ql=null,Ru(t);break}t=function(){V!==2&&V!==9||Wl!==e||(V=7),ld(e)},a.then(t,t);break a;case 3:V=7;break a;case 4:V=5;break a;case 7:La(a)?(V=0,ql=null,Ru(t)):(V=0,ql=null,zu(e,t,a,7));break;case 5:var s=null;switch(Gl.tag){case 26:s=Gl.memoizedState;case 5:case 27:var c=Gl;if(s?Qf(s):c.stateNode.complete){V=0,ql=null;var l=c.sibling;if(l!==null)Gl=l;else{var u=c.return;u===null?Gl=null:(Gl=u,Bu(u))}break b}}V=0,ql=null,zu(e,t,a,5);break;case 6:V=0,ql=null,zu(e,t,a,6);break;case 8:Eu(),Ql=6;break a;default:throw Error(o(462))}}Iu();break}catch(t){Ou(e,t)}while(1);return ia=ra=null,C.H=r,C.A=i,Ul=n,Gl===null?(Wl=null,Kl=0,ui(),Ql):0}function Iu(){for(;Gl!==null&&!Ie();)Lu(Gl)}function Lu(e){var t=Lc(e.alternate,e,Zl);e.memoizedProps=e.pendingProps,t===null?Bu(e):Gl=t}function Ru(e){var t=e,n=t.alternate;switch(t.tag){case 15:case 0:t=M(n,t,t.pendingProps,t.type,void 0,Kl);break;case 11:t=M(n,t,t.pendingProps,t.type.render,t.ref,Kl);break;case 5:Ho(t);default:Wc(n,t),t=Gl=xi(t,Zl),t=Lc(n,t,Zl)}e.memoizedProps=e.pendingProps,t===null?Bu(e):Gl=t}function zu(e,t,n,r){ia=ra=null,Ho(t),Ua=null,Wa=0;var i=t.return;try{if(mc(e,i,t,n,Kl)){Ql=1,lc(e,Oi(n,e.current)),Gl=null;return}}catch(t){if(i!==null)throw Gl=i,t;Ql=1,lc(e,Oi(n,e.current)),Gl=null;return}t.flags&32768?(Gi||r===1?e=!0:Yl||Kl&536870912?e=!1:(Jl=e=!0,(r===2||r===9||r===3||r===6)&&(r=ho.current,r!==null&&r.tag===13&&(r.flags|=16384))),Vu(t,e)):Bu(t)}function Bu(e){var t=e;do{if(t.flags&32768){Vu(t,Jl);return}e=t.return;var n=Uc(t.alternate,t,Zl);if(n!==null){Gl=n;return}if(t=t.sibling,t!==null){Gl=t;return}Gl=t=e}while(t!==null);Ql===0&&(Ql=5)}function Vu(e,t){do{var n=z(e.alternate,e);if(n!==null){n.flags&=32767,Gl=n;return}if(n=e.return,n!==null&&(n.flags|=32768,n.subtreeFlags=0,n.deletions=null),!t&&(e=e.sibling,e!==null)){Gl=e;return}Gl=e=n}while(e!==null);Ql=6,Gl=null}function Hu(e,t,n,r,i,a,s,c,l){e.cancelPendingCommit=null;do qu();while(uu!==0);if(Ul&6)throw Error(o(327));if(t!==null){if(t===e.current)throw Error(o(177));if(a=t.lanes|t.childLanes,a|=li,ut(e,n,a,s,c,l),e===Wl&&(Gl=Wl=null,Kl=0),du=t,W=e,fu=n,pu=a,mu=i,hu=r,t.subtreeFlags&10256||t.flags&10256?(e.callbackNode=null,e.callbackPriority=0,nd(He,function(){return Ju(),null})):(e.callbackNode=null,e.callbackPriority=0),r=(t.flags&13878)!=0,t.subtreeFlags&13878||r){r=C.T,C.T=null,i=w.p,w.p=2,s=Ul,Ul|=4;try{cl(e,t,n)}finally{Ul=s,w.p=i,C.T=r}}uu=1,Uu(),Wu(),Gu()}}function Uu(){if(uu===1){uu=0;var e=W,t=du,n=(t.flags&13878)!=0;if(t.subtreeFlags&13878||n){n=C.T,C.T=null;var r=w.p;w.p=2;var i=Ul;Ul|=4;try{xl(t,e);var a=qd,o=Lr(e.containerInfo),s=a.focusedElem,c=a.selectionRange;if(o!==s&&s&&s.ownerDocument&&Ir(s.ownerDocument.documentElement,s)){if(c!==null&&Rr(s)){var l=c.start,u=c.end;if(u===void 0&&(u=l),`selectionStart`in s)s.selectionStart=l,s.selectionEnd=Math.min(u,s.value.length);else{var d=s.ownerDocument||document,f=d&&d.defaultView||window;if(f.getSelection){var p=f.getSelection(),m=s.textContent.length,h=Math.min(c.start,m),g=c.end===void 0?h:Math.min(c.end,m);!p.extend&&h>g&&(o=g,g=h,h=o);var _=Fr(s,h),v=Fr(s,g);if(_&&v&&(p.rangeCount!==1||p.anchorNode!==_.node||p.anchorOffset!==_.offset||p.focusNode!==v.node||p.focusOffset!==v.offset)){var y=d.createRange();y.setStart(_.node,_.offset),p.removeAllRanges(),h>g?(p.addRange(y),p.extend(v.node,v.offset)):(y.setEnd(v.node,v.offset),p.addRange(y))}}}}for(d=[],p=s;p=p.parentNode;)p.nodeType===1&&d.push({element:p,left:p.scrollLeft,top:p.scrollTop});for(typeof s.focus==`function`&&s.focus(),s=0;s<d.length;s++){var b=d[s];b.element.scrollLeft=b.left,b.element.scrollTop=b.top}}hp=!!Kd,qd=Kd=null}finally{Ul=i,w.p=r,C.T=n}}e.current=t,uu=2}}function Wu(){if(uu===2){uu=0;var e=W,t=du,n=(t.flags&8772)!=0;if(t.subtreeFlags&8772||n){n=C.T,C.T=null;var r=w.p;w.p=2;var i=Ul;Ul|=4;try{ll(e,t.alternate,t)}finally{Ul=i,w.p=r,C.T=n}}uu=3}}function Gu(){if(uu===4||uu===3){uu=0,Le();var e=W,t=du,n=fu,r=hu;t.subtreeFlags&10256||t.flags&10256?uu=5:(uu=0,du=W=null,Ku(e,e.pendingLanes));var i=e.pendingLanes;if(i===0&&(U=null),ht(n),t=t.stateNode,Je&&typeof Je.onCommitFiberRoot==`function`)try{Je.onCommitFiberRoot(qe,t,void 0,(t.current.flags&128)==128)}catch{}if(r!==null){t=C.T,i=w.p,w.p=2,C.T=null;try{for(var a=e.onRecoverableError,o=0;o<r.length;o++){var s=r[o];a(s.value,{componentStack:s.stack})}}finally{C.T=t,w.p=i}}fu&3&&qu(),ld(e),i=e.pendingLanes,n&261930&&i&42?e===_u?gu++:(gu=0,_u=e):gu=0,ud(0,!1)}}function Ku(e,t){(e.pooledCacheLanes&=t)===0&&(t=e.pooledCache,t!=null&&(e.pooledCache=null,ba(t)))}function qu(){return Uu(),Wu(),Gu(),Ju()}function Ju(){if(uu!==5)return!1;var e=W,t=pu;pu=0;var n=ht(fu),r=C.T,i=w.p;try{w.p=32>n?32:n,C.T=null,n=mu,mu=null;var a=W,s=fu;if(uu=0,du=W=null,fu=0,Ul&6)throw Error(o(331));var c=Ul;if(Ul|=4,Rl(a.current),Al(a,a.current,s,n),Ul=c,ud(0,!1),Je&&typeof Je.onPostCommitFiberRoot==`function`)try{Je.onPostCommitFiberRoot(qe,a)}catch{}return!0}finally{w.p=i,C.T=r,Ku(e,t)}}function Yu(e,t,n){t=Oi(n,t),t=dc(e.stateNode,t,2),e=to(e,t,2),e!==null&&(lt(e,2),ld(e))}function Xu(e,t,n){if(e.tag===3)Yu(e,e,n);else for(;t!==null;){if(t.tag===3){Yu(t,e,n);break}else if(t.tag===1){var r=t.stateNode;if(typeof t.type.getDerivedStateFromError==`function`||typeof r.componentDidCatch==`function`&&(U===null||!U.has(r))){e=Oi(n,e),n=fc(2),r=to(t,n,2),r!==null&&(pc(n,r,t,e),lt(r,2),ld(r));break}}t=t.return}}function Zu(e,t,n){var r=e.pingCache;if(r===null){r=e.pingCache=new Hl;var i=new Set;r.set(t,i)}else i=r.get(t),i===void 0&&(i=new Set,r.set(t,i));i.has(n)||(Xl=!0,i.add(n),e=Qu.bind(null,e,t,n),t.then(e,e))}function Qu(e,t,n){var r=e.pingCache;r!==null&&r.delete(t),e.pingedLanes|=e.suspendedLanes&n,e.warmLanes&=~n,Wl===e&&(Kl&n)===n&&(Ql===4||Ql===3&&(Kl&62914560)===Kl&&300>Re()-su?!(Ul&2)&&Du(e,0):tu|=n,ru===Kl&&(ru=0)),ld(e)}function $u(e,t){t===0&&(t=st()),e=pi(e,t),e!==null&&(lt(e,t),ld(e))}function ed(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),$u(e,n)}function td(e,t){var n=0;switch(e.tag){case 31:case 13:var r=e.stateNode,i=e.memoizedState;i!==null&&(n=i.retryLane);break;case 19:r=e.stateNode;break;case 22:r=e.stateNode._retryCache;break;default:throw Error(o(314))}r!==null&&r.delete(t),$u(e,n)}function nd(e,t){return Pe(e,t)}var rd=null,id=null,ad=!1,od=!1,sd=!1,cd=0;function ld(e){e!==id&&e.next===null&&(id===null?rd=id=e:id=id.next=e),od=!0,ad||(ad=!0,gd())}function ud(e,t){if(!sd&&od){sd=!0;do for(var n=!1,r=rd;r!==null;){if(!t)if(e!==0){var i=r.pendingLanes;if(i===0)var a=0;else{var o=r.suspendedLanes,s=r.pingedLanes;a=(1<<31-Xe(42|e)+1)-1,a&=i&~(o&~s),a=a&201326741?a&201326741|1:a?a|2:0}a!==0&&(n=!0,hd(r,a))}else a=Kl,a=it(r,r===Wl?a:0,r.cancelPendingCommit!==null||r.timeoutHandle!==-1),!(a&3)||at(r,a)||(n=!0,hd(r,a));r=r.next}while(n);sd=!1}}function dd(){fd()}function fd(){od=ad=!1;var e=0;cd!==0&&$d()&&(e=cd);for(var t=Re(),n=null,r=rd;r!==null;){var i=r.next,a=pd(r,t);a===0?(r.next=null,n===null?rd=i:n.next=i,i===null&&(id=n)):(n=r,(e!==0||a&3)&&(od=!0)),r=i}uu!==0&&uu!==5||ud(e,!1),cd!==0&&(cd=0)}function pd(e,t){for(var n=e.suspendedLanes,r=e.pingedLanes,i=e.expirationTimes,a=e.pendingLanes&-62914561;0<a;){var o=31-Xe(a),s=1<<o,c=i[o];c===-1?((s&n)===0||(s&r)!==0)&&(i[o]=ot(s,t)):c<=t&&(e.expiredLanes|=s),a&=~s}if(t=Wl,n=Kl,n=it(e,e===t?n:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),r=e.callbackNode,n===0||e===t&&(V===2||V===9)||e.cancelPendingCommit!==null)return r!==null&&r!==null&&Fe(r),e.callbackNode=null,e.callbackPriority=0;if(!(n&3)||at(e,n)){if(t=n&-n,t===e.callbackPriority)return t;switch(r!==null&&Fe(r),ht(n)){case 2:case 8:n=Ve;break;case 32:n=He;break;case 268435456:n=We;break;default:n=He}return r=md.bind(null,e),n=Pe(n,r),e.callbackPriority=t,e.callbackNode=n,t}return r!==null&&r!==null&&Fe(r),e.callbackPriority=2,e.callbackNode=null,2}function md(e,t){if(uu!==0&&uu!==5)return e.callbackNode=null,e.callbackPriority=0,null;var n=e.callbackNode;if(qu()&&e.callbackNode!==n)return null;var r=Kl;return r=it(e,e===Wl?r:0,e.cancelPendingCommit!==null||e.timeoutHandle!==-1),r===0?null:(xu(e,r,t),pd(e,Re()),e.callbackNode!=null&&e.callbackNode===n?md.bind(null,e):null)}function hd(e,t){if(qu())return null;xu(e,t,!0)}function gd(){rf(function(){Ul&6?Pe(Be,dd):fd()})}function _d(){if(cd===0){var e=Ca;e===0&&(e=et,et<<=1,!(et&261888)&&(et=256)),cd=e}return cd}function vd(e){return e==null||typeof e==`symbol`||typeof e==`boolean`?null:typeof e==`function`?e:un(``+e)}function yd(e,t){var n=t.ownerDocument.createElement(`input`);return n.name=t.name,n.value=t.value,e.id&&n.setAttribute(`form`,e.id),t.parentNode.insertBefore(n,t),e=new FormData(e),n.parentNode.removeChild(n),e}function bd(e,t,n,r,i){if(t===`submit`&&n&&n.stateNode===i){var a=vd((i[bt]||null).action),o=r.submitter;o&&(t=(t=o[bt]||null)?vd(t.formAction):o.getAttribute(`formAction`),t!==null&&(a=t,o=null));var s=new D(`action`,`action`,null,r,i);e.push({event:s,listeners:[{instance:null,listener:function(){if(r.defaultPrevented){if(cd!==0){var e=o?yd(i,o):new FormData(i);Rs(n,{pending:!0,data:e,method:i.method,action:a},null,e)}}else typeof a==`function`&&(s.preventDefault(),e=o?yd(i,o):new FormData(i),Rs(n,{pending:!0,data:e,method:i.method,action:a},a,e))},currentTarget:i}]})}}for(var xd=0;xd<ii.length;xd++){var Sd=ii[xd];ai(Sd.toLowerCase(),`on`+(Sd[0].toUpperCase()+Sd.slice(1)))}ai(Xr,`onAnimationEnd`),ai(Zr,`onAnimationIteration`),ai(Qr,`onAnimationStart`),ai(`dblclick`,`onDoubleClick`),ai(`focusin`,`onFocus`),ai(`focusout`,`onBlur`),ai($r,`onTransitionRun`),ai(ei,`onTransitionStart`),ai(ti,`onTransitionCancel`),ai(ni,`onTransitionEnd`),It(`onMouseEnter`,[`mouseout`,`mouseover`]),It(`onMouseLeave`,[`mouseout`,`mouseover`]),It(`onPointerEnter`,[`pointerout`,`pointerover`]),It(`onPointerLeave`,[`pointerout`,`pointerover`]),Ft(`onChange`,`change click focusin focusout input keydown keyup selectionchange`.split(` `)),Ft(`onSelect`,`focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange`.split(` `)),Ft(`onBeforeInput`,[`compositionend`,`keypress`,`textInput`,`paste`]),Ft(`onCompositionEnd`,`compositionend focusout keydown keypress keyup mousedown`.split(` `)),Ft(`onCompositionStart`,`compositionstart focusout keydown keypress keyup mousedown`.split(` `)),Ft(`onCompositionUpdate`,`compositionupdate focusout keydown keypress keyup mousedown`.split(` `));var Cd=`abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting`.split(` `),wd=new Set(`beforetoggle cancel close invalid load scroll scrollend toggle`.split(` `).concat(Cd));function Td(e,t){t=(t&4)!=0;for(var n=0;n<e.length;n++){var r=e[n],i=r.event;r=r.listeners;a:{var a=void 0;if(t)for(var o=r.length-1;0<=o;o--){var s=r[o],c=s.instance,l=s.currentTarget;if(s=s.listener,c!==a&&i.isPropagationStopped())break a;a=s,i.currentTarget=l;try{a(i)}catch(e){oi(e)}i.currentTarget=null,a=c}else for(o=0;o<r.length;o++){if(s=r[o],c=s.instance,l=s.currentTarget,s=s.listener,c!==a&&i.isPropagationStopped())break a;a=s,i.currentTarget=l;try{a(i)}catch(e){oi(e)}i.currentTarget=null,a=c}}}}function Ed(e,t){var n=t[St];n===void 0&&(n=t[St]=new Set);var r=e+`__bubble`;n.has(r)||(Ad(t,e,2,!1),n.add(r))}function Dd(e,t,n){var r=0;t&&(r|=4),Ad(n,e,r,t)}var Od=`_reactListening`+Math.random().toString(36).slice(2);function kd(e){if(!e[Od]){e[Od]=!0,Nt.forEach(function(t){t!==`selectionchange`&&(wd.has(t)||Dd(t,!1,e),Dd(t,!0,e))});var t=e.nodeType===9?e:e.ownerDocument;t===null||t[Od]||(t[Od]=!0,Dd(`selectionchange`,!1,t))}}function Ad(e,t,n,r){switch(Sp(t)){case 2:var i=gp;break;case 8:i=_p;break;default:i=vp}n=i.bind(null,t,n,e),i=void 0,!xn||t!==`touchstart`&&t!==`touchmove`&&t!==`wheel`||(i=!0),r?i===void 0?e.addEventListener(t,n,!0):e.addEventListener(t,n,{capture:!0,passive:i}):i===void 0?e.addEventListener(t,n,!1):e.addEventListener(t,n,{passive:i})}function jd(e,t,n,r,i){var a=r;if(!(t&1)&&!(t&2)&&r!==null)a:for(;;){if(r===null)return;var o=r.tag;if(o===3||o===4){var s=r.stateNode.containerInfo;if(s===i)break;if(o===4)for(o=r.return;o!==null;){var l=o.tag;if((l===3||l===4)&&o.stateNode.containerInfo===i)return;o=o.return}for(;s!==null;){if(o=Ot(s),o===null)return;if(l=o.tag,l===5||l===6||l===26||l===27){r=a=o;continue a}s=s.parentNode}}r=r.return}vn(function(){var r=a,i=pn(n),o=[];a:{var s=ri.get(e);if(s!==void 0){var l=D,u=e;switch(e){case`keypress`:if(Dn(n)===0)break a;case`keydown`:case`keyup`:l=Yn;break;case`focusin`:u=`focus`,l=Bn;break;case`focusout`:u=`blur`,l=Bn;break;case`beforeblur`:case`afterblur`:l=Bn;break;case`click`:if(n.button===2)break a;case`auxclick`:case`dblclick`:case`mousedown`:case`mousemove`:case`mouseup`:case`mouseout`:case`mouseover`:case`contextmenu`:l=Rn;break;case`drag`:case`dragend`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`dragstart`:case`drop`:l=zn;break;case`touchcancel`:case`touchend`:case`touchmove`:case`touchstart`:l=Zn;break;case Xr:case Zr:case Qr:l=Vn;break;case ni:l=Qn;break;case`scroll`:case`scrollend`:l=Nn;break;case`wheel`:l=$n;break;case`copy`:case`cut`:case`paste`:l=Hn;break;case`gotpointercapture`:case`lostpointercapture`:case`pointercancel`:case`pointerdown`:case`pointermove`:case`pointerout`:case`pointerover`:case`pointerup`:l=Xn;break;case`toggle`:case`beforetoggle`:l=er}var d=(t&4)!=0,f=!d&&(e===`scroll`||e===`scrollend`),p=d?s===null?null:s+`Capture`:s;d=[];for(var m=r,h;m!==null;){var g=m;if(h=g.stateNode,g=g.tag,g!==5&&g!==26&&g!==27||h===null||p===null||(g=yn(m,p),g!=null&&d.push(Md(m,g,h))),f)break;m=m.return}0<d.length&&(s=new l(s,u,null,n,i),o.push({event:s,listeners:d}))}}if(!(t&7)){a:{if(s=e===`mouseover`||e===`pointerover`,l=e===`mouseout`||e===`pointerout`,s&&n!==fn&&(u=n.relatedTarget||n.fromElement)&&(Ot(u)||u[xt]))break a;if((l||s)&&(s=i.window===i?i:(s=i.ownerDocument)?s.defaultView||s.parentWindow:window,l?(u=n.relatedTarget||n.toElement,l=r,u=u?Ot(u):null,u!==null&&(f=c(u),d=u.tag,u!==f||d!==5&&d!==27&&d!==6)&&(u=null)):(l=null,u=r),l!==u)){if(d=Rn,g=`onMouseLeave`,p=`onMouseEnter`,m=`mouse`,(e===`pointerout`||e===`pointerover`)&&(d=Xn,g=`onPointerLeave`,p=`onPointerEnter`,m=`pointer`),f=l==null?s:At(l),h=u==null?s:At(u),s=new d(g,m+`leave`,l,n,i),s.target=f,s.relatedTarget=h,g=null,Ot(i)===r&&(d=new d(p,m+`enter`,u,n,i),d.target=h,d.relatedTarget=f,g=d),f=g,l&&u)b:{for(d=Pd,p=l,m=u,h=0,g=p;g;g=d(g))h++;g=0;for(var _=m;_;_=d(_))g++;for(;0<h-g;)p=d(p),h--;for(;0<g-h;)m=d(m),g--;for(;h--;){if(p===m||m!==null&&p===m.alternate){d=p;break b}p=d(p),m=d(m)}d=null}else d=null;l!==null&&Fd(o,s,l,d,!1),u!==null&&f!==null&&Fd(o,f,u,d,!0)}}a:{if(s=r?At(r):window,l=s.nodeName&&s.nodeName.toLowerCase(),l===`select`||l===`input`&&s.type===`file`)var v=br;else if(mr(s))if(xr)v=Ar;else{v=Or;var y=Dr}else l=s.nodeName,!l||l.toLowerCase()!==`input`||s.type!==`checkbox`&&s.type!==`radio`?r&&E(r.elementType)&&(v=br):v=kr;if(v&&=v(e,r)){hr(o,v,n,i);break a}y&&y(e,s,r),e===`focusout`&&r&&s.type===`number`&&r.memoizedProps.value!=null&&en(s,`number`,s.value)}switch(y=r?At(r):window,e){case`focusin`:(mr(y)||y.contentEditable===`true`)&&(Br=y,Vr=r,Hr=null);break;case`focusout`:Hr=Vr=Br=null;break;case`mousedown`:Ur=!0;break;case`contextmenu`:case`mouseup`:case`dragend`:Ur=!1,Wr(o,n,i);break;case`selectionchange`:if(zr)break;case`keydown`:case`keyup`:Wr(o,n,i)}var b;if(nr)b:{switch(e){case`compositionstart`:var x=`onCompositionStart`;break b;case`compositionend`:x=`onCompositionEnd`;break b;case`compositionupdate`:x=`onCompositionUpdate`;break b}x=void 0}else ur?cr(e,n)&&(x=`onCompositionEnd`):e===`keydown`&&n.keyCode===229&&(x=`onCompositionStart`);x&&(ar&&n.locale!==`ko`&&(ur||x!==`onCompositionStart`?x===`onCompositionEnd`&&ur&&(b=En()):(Cn=i,wn=`value`in Cn?Cn.value:Cn.textContent,ur=!0)),y=Nd(r,x),0<y.length&&(x=new Un(x,e,null,n,i),o.push({event:x,listeners:y}),b?x.data=b:(b=lr(n),b!==null&&(x.data=b)))),(b=ir?dr(e,n):fr(e,n))&&(x=Nd(r,`onBeforeInput`),0<x.length&&(y=new Un(`onBeforeInput`,`beforeinput`,null,n,i),o.push({event:y,listeners:x}),y.data=b)),bd(o,e,r,n,i)}Td(o,t)})}function Md(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Nd(e,t){for(var n=t+`Capture`,r=[];e!==null;){var i=e,a=i.stateNode;if(i=i.tag,i!==5&&i!==26&&i!==27||a===null||(i=yn(e,n),i!=null&&r.unshift(Md(e,i,a)),i=yn(e,t),i!=null&&r.push(Md(e,i,a))),e.tag===3)return r;e=e.return}return[]}function Pd(e){if(e===null)return null;do e=e.return;while(e&&e.tag!==5&&e.tag!==27);return e||null}function Fd(e,t,n,r,i){for(var a=t._reactName,o=[];n!==null&&n!==r;){var s=n,c=s.alternate,l=s.stateNode;if(s=s.tag,c!==null&&c===r)break;s!==5&&s!==26&&s!==27||l===null||(c=l,i?(l=yn(n,a),l!=null&&o.unshift(Md(n,l,c))):i||(l=yn(n,a),l!=null&&o.push(Md(n,l,c)))),n=n.return}o.length!==0&&e.push({event:t,listeners:o})}var Id=/\r\n?/g,Ld=/\u0000|\uFFFD/g;function Rd(e){return(typeof e==`string`?e:``+e).replace(Id,`
|
|
78
|
+
`).replace(Ld,``)}function zd(e,t){return t=Rd(t),Rd(e)===t}function Bd(e,t,n,r,i,a){switch(n){case`children`:typeof r==`string`?t===`body`||t===`textarea`&&r===``||rn(e,r):(typeof r==`number`||typeof r==`bigint`)&&t!==`body`&&rn(e,``+r);break;case`className`:Ht(e,`class`,r);break;case`tabIndex`:Ht(e,`tabindex`,r);break;case`dir`:case`role`:case`viewBox`:case`width`:case`height`:Ht(e,n,r);break;case`style`:sn(e,r,a);break;case`data`:if(t!==`object`){Ht(e,`data`,r);break}case`src`:case`href`:if(r===``&&(t!==`a`||n!==`href`)){e.removeAttribute(n);break}if(r==null||typeof r==`function`||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}r=un(``+r),e.setAttribute(n,r);break;case`action`:case`formAction`:if(typeof r==`function`){e.setAttribute(n,`javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')`);break}else typeof a==`function`&&(n===`formAction`?(t!==`input`&&Bd(e,t,`name`,i.name,i,null),Bd(e,t,`formEncType`,i.formEncType,i,null),Bd(e,t,`formMethod`,i.formMethod,i,null),Bd(e,t,`formTarget`,i.formTarget,i,null)):(Bd(e,t,`encType`,i.encType,i,null),Bd(e,t,`method`,i.method,i,null),Bd(e,t,`target`,i.target,i,null)));if(r==null||typeof r==`symbol`||typeof r==`boolean`){e.removeAttribute(n);break}r=un(``+r),e.setAttribute(n,r);break;case`onClick`:r!=null&&(e.onclick=dn);break;case`onScroll`:r!=null&&Ed(`scroll`,e);break;case`onScrollEnd`:r!=null&&Ed(`scrollend`,e);break;case`dangerouslySetInnerHTML`:if(r!=null){if(typeof r!=`object`||!(`__html`in r))throw Error(o(61));if(n=r.__html,n!=null){if(i.children!=null)throw Error(o(60));e.innerHTML=n}}break;case`multiple`:e.multiple=r&&typeof r!=`function`&&typeof r!=`symbol`;break;case`muted`:e.muted=r&&typeof r!=`function`&&typeof r!=`symbol`;break;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`defaultValue`:case`defaultChecked`:case`innerHTML`:case`ref`:break;case`autoFocus`:break;case`xlinkHref`:if(r==null||typeof r==`function`||typeof r==`boolean`||typeof r==`symbol`){e.removeAttribute(`xlink:href`);break}n=un(``+r),e.setAttributeNS(`http://www.w3.org/1999/xlink`,`xlink:href`,n);break;case`contentEditable`:case`spellCheck`:case`draggable`:case`value`:case`autoReverse`:case`externalResourcesRequired`:case`focusable`:case`preserveAlpha`:r!=null&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,``+r):e.removeAttribute(n);break;case`inert`:case`allowFullScreen`:case`async`:case`autoPlay`:case`controls`:case`default`:case`defer`:case`disabled`:case`disablePictureInPicture`:case`disableRemotePlayback`:case`formNoValidate`:case`hidden`:case`loop`:case`noModule`:case`noValidate`:case`open`:case`playsInline`:case`readOnly`:case`required`:case`reversed`:case`scoped`:case`seamless`:case`itemScope`:r&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,``):e.removeAttribute(n);break;case`capture`:case`download`:!0===r?e.setAttribute(n,``):!1!==r&&r!=null&&typeof r!=`function`&&typeof r!=`symbol`?e.setAttribute(n,r):e.removeAttribute(n);break;case`cols`:case`rows`:case`size`:case`span`:r!=null&&typeof r!=`function`&&typeof r!=`symbol`&&!isNaN(r)&&1<=r?e.setAttribute(n,r):e.removeAttribute(n);break;case`rowSpan`:case`start`:r==null||typeof r==`function`||typeof r==`symbol`||isNaN(r)?e.removeAttribute(n):e.setAttribute(n,r);break;case`popover`:Ed(`beforetoggle`,e),Ed(`toggle`,e),Vt(e,`popover`,r);break;case`xlinkActuate`:Ut(e,`http://www.w3.org/1999/xlink`,`xlink:actuate`,r);break;case`xlinkArcrole`:Ut(e,`http://www.w3.org/1999/xlink`,`xlink:arcrole`,r);break;case`xlinkRole`:Ut(e,`http://www.w3.org/1999/xlink`,`xlink:role`,r);break;case`xlinkShow`:Ut(e,`http://www.w3.org/1999/xlink`,`xlink:show`,r);break;case`xlinkTitle`:Ut(e,`http://www.w3.org/1999/xlink`,`xlink:title`,r);break;case`xlinkType`:Ut(e,`http://www.w3.org/1999/xlink`,`xlink:type`,r);break;case`xmlBase`:Ut(e,`http://www.w3.org/XML/1998/namespace`,`xml:base`,r);break;case`xmlLang`:Ut(e,`http://www.w3.org/XML/1998/namespace`,`xml:lang`,r);break;case`xmlSpace`:Ut(e,`http://www.w3.org/XML/1998/namespace`,`xml:space`,r);break;case`is`:Vt(e,`is`,r);break;case`innerText`:case`textContent`:break;default:(!(2<n.length)||n[0]!==`o`&&n[0]!==`O`||n[1]!==`n`&&n[1]!==`N`)&&(n=cn.get(n)||n,Vt(e,n,r))}}function Vd(e,t,n,r,i,a){switch(n){case`style`:sn(e,r,a);break;case`dangerouslySetInnerHTML`:if(r!=null){if(typeof r!=`object`||!(`__html`in r))throw Error(o(61));if(n=r.__html,n!=null){if(i.children!=null)throw Error(o(60));e.innerHTML=n}}break;case`children`:typeof r==`string`?rn(e,r):(typeof r==`number`||typeof r==`bigint`)&&rn(e,``+r);break;case`onScroll`:r!=null&&Ed(`scroll`,e);break;case`onScrollEnd`:r!=null&&Ed(`scrollend`,e);break;case`onClick`:r!=null&&(e.onclick=dn);break;case`suppressContentEditableWarning`:case`suppressHydrationWarning`:case`innerHTML`:case`ref`:break;case`innerText`:case`textContent`:break;default:if(!Pt.hasOwnProperty(n))a:{if(n[0]===`o`&&n[1]===`n`&&(i=n.endsWith(`Capture`),t=n.slice(2,i?n.length-7:void 0),a=e[bt]||null,a=a==null?null:a[n],typeof a==`function`&&e.removeEventListener(t,a,i),typeof r==`function`)){typeof a!=`function`&&a!==null&&(n in e?e[n]=null:e.hasAttribute(n)&&e.removeAttribute(n)),e.addEventListener(t,r,i);break a}n in e?e[n]=r:!0===r?e.setAttribute(n,``):Vt(e,n,r)}}}function Hd(e,t,n){switch(t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`img`:Ed(`error`,e),Ed(`load`,e);var r=!1,i=!1,a;for(a in n)if(n.hasOwnProperty(a)){var s=n[a];if(s!=null)switch(a){case`src`:r=!0;break;case`srcSet`:i=!0;break;case`children`:case`dangerouslySetInnerHTML`:throw Error(o(137,t));default:Bd(e,t,a,s,n,null)}}i&&Bd(e,t,`srcSet`,n.srcSet,n,null),r&&Bd(e,t,`src`,n.src,n,null);return;case`input`:Ed(`invalid`,e);var c=a=s=i=null,l=null,u=null;for(r in n)if(n.hasOwnProperty(r)){var d=n[r];if(d!=null)switch(r){case`name`:i=d;break;case`type`:s=d;break;case`checked`:l=d;break;case`defaultChecked`:u=d;break;case`value`:a=d;break;case`defaultValue`:c=d;break;case`children`:case`dangerouslySetInnerHTML`:if(d!=null)throw Error(o(137,t));break;default:Bd(e,t,r,d,n,null)}}$t(e,a,c,l,u,s,i,!1);return;case`select`:for(i in Ed(`invalid`,e),r=s=a=null,n)if(n.hasOwnProperty(i)&&(c=n[i],c!=null))switch(i){case`value`:a=c;break;case`defaultValue`:s=c;break;case`multiple`:r=c;default:Bd(e,t,i,c,n,null)}t=a,n=s,e.multiple=!!r,t==null?n!=null&&tn(e,!!r,n,!0):tn(e,!!r,t,!1);return;case`textarea`:for(s in Ed(`invalid`,e),a=i=r=null,n)if(n.hasOwnProperty(s)&&(c=n[s],c!=null))switch(s){case`value`:r=c;break;case`defaultValue`:i=c;break;case`children`:a=c;break;case`dangerouslySetInnerHTML`:if(c!=null)throw Error(o(91));break;default:Bd(e,t,s,c,n,null)}T(e,r,i,a);return;case`option`:for(l in n)if(n.hasOwnProperty(l)&&(r=n[l],r!=null))switch(l){case`selected`:e.selected=r&&typeof r!=`function`&&typeof r!=`symbol`;break;default:Bd(e,t,l,r,n,null)}return;case`dialog`:Ed(`beforetoggle`,e),Ed(`toggle`,e),Ed(`cancel`,e),Ed(`close`,e);break;case`iframe`:case`object`:Ed(`load`,e);break;case`video`:case`audio`:for(r=0;r<Cd.length;r++)Ed(Cd[r],e);break;case`image`:Ed(`error`,e),Ed(`load`,e);break;case`details`:Ed(`toggle`,e);break;case`embed`:case`source`:case`link`:Ed(`error`,e),Ed(`load`,e);case`area`:case`base`:case`br`:case`col`:case`hr`:case`keygen`:case`meta`:case`param`:case`track`:case`wbr`:case`menuitem`:for(u in n)if(n.hasOwnProperty(u)&&(r=n[u],r!=null))switch(u){case`children`:case`dangerouslySetInnerHTML`:throw Error(o(137,t));default:Bd(e,t,u,r,n,null)}return;default:if(E(t)){for(d in n)n.hasOwnProperty(d)&&(r=n[d],r!==void 0&&Vd(e,t,d,r,n,void 0));return}}for(c in n)n.hasOwnProperty(c)&&(r=n[c],r!=null&&Bd(e,t,c,r,n,null))}function Ud(e,t,n,r){switch(t){case`div`:case`span`:case`svg`:case`path`:case`a`:case`g`:case`p`:case`li`:break;case`input`:var i=null,a=null,s=null,c=null,l=null,u=null,d=null;for(m in n){var f=n[m];if(n.hasOwnProperty(m)&&f!=null)switch(m){case`checked`:break;case`value`:break;case`defaultValue`:l=f;default:r.hasOwnProperty(m)||Bd(e,t,m,null,r,f)}}for(var p in r){var m=r[p];if(f=n[p],r.hasOwnProperty(p)&&(m!=null||f!=null))switch(p){case`type`:a=m;break;case`name`:i=m;break;case`checked`:u=m;break;case`defaultChecked`:d=m;break;case`value`:s=m;break;case`defaultValue`:c=m;break;case`children`:case`dangerouslySetInnerHTML`:if(m!=null)throw Error(o(137,t));break;default:m!==f&&Bd(e,t,p,m,r,f)}}Qt(e,s,c,l,u,d,a,i);return;case`select`:for(a in m=s=c=p=null,n)if(l=n[a],n.hasOwnProperty(a)&&l!=null)switch(a){case`value`:break;case`multiple`:m=l;default:r.hasOwnProperty(a)||Bd(e,t,a,null,r,l)}for(i in r)if(a=r[i],l=n[i],r.hasOwnProperty(i)&&(a!=null||l!=null))switch(i){case`value`:p=a;break;case`defaultValue`:c=a;break;case`multiple`:s=a;default:a!==l&&Bd(e,t,i,a,r,l)}t=c,n=s,r=m,p==null?!!r!=!!n&&(t==null?tn(e,!!n,n?[]:``,!1):tn(e,!!n,t,!0)):tn(e,!!n,p,!1);return;case`textarea`:for(c in m=p=null,n)if(i=n[c],n.hasOwnProperty(c)&&i!=null&&!r.hasOwnProperty(c))switch(c){case`value`:break;case`children`:break;default:Bd(e,t,c,null,r,i)}for(s in r)if(i=r[s],a=n[s],r.hasOwnProperty(s)&&(i!=null||a!=null))switch(s){case`value`:p=i;break;case`defaultValue`:m=i;break;case`children`:break;case`dangerouslySetInnerHTML`:if(i!=null)throw Error(o(91));break;default:i!==a&&Bd(e,t,s,i,r,a)}nn(e,p,m);return;case`option`:for(var h in n)if(p=n[h],n.hasOwnProperty(h)&&p!=null&&!r.hasOwnProperty(h))switch(h){case`selected`:e.selected=!1;break;default:Bd(e,t,h,null,r,p)}for(l in r)if(p=r[l],m=n[l],r.hasOwnProperty(l)&&p!==m&&(p!=null||m!=null))switch(l){case`selected`:e.selected=p&&typeof p!=`function`&&typeof p!=`symbol`;break;default:Bd(e,t,l,p,r,m)}return;case`img`:case`link`:case`area`:case`base`:case`br`:case`col`:case`embed`:case`hr`:case`keygen`:case`meta`:case`param`:case`source`:case`track`:case`wbr`:case`menuitem`:for(var g in n)p=n[g],n.hasOwnProperty(g)&&p!=null&&!r.hasOwnProperty(g)&&Bd(e,t,g,null,r,p);for(u in r)if(p=r[u],m=n[u],r.hasOwnProperty(u)&&p!==m&&(p!=null||m!=null))switch(u){case`children`:case`dangerouslySetInnerHTML`:if(p!=null)throw Error(o(137,t));break;default:Bd(e,t,u,p,r,m)}return;default:if(E(t)){for(var _ in n)p=n[_],n.hasOwnProperty(_)&&p!==void 0&&!r.hasOwnProperty(_)&&Vd(e,t,_,void 0,r,p);for(d in r)p=r[d],m=n[d],!r.hasOwnProperty(d)||p===m||p===void 0&&m===void 0||Vd(e,t,d,p,r,m);return}}for(var v in n)p=n[v],n.hasOwnProperty(v)&&p!=null&&!r.hasOwnProperty(v)&&Bd(e,t,v,null,r,p);for(f in r)p=r[f],m=n[f],!r.hasOwnProperty(f)||p===m||p==null&&m==null||Bd(e,t,f,p,r,m)}function Wd(e){switch(e){case`css`:case`script`:case`font`:case`img`:case`image`:case`input`:case`link`:return!0;default:return!1}}function Gd(){if(typeof performance.getEntriesByType==`function`){for(var e=0,t=0,n=performance.getEntriesByType(`resource`),r=0;r<n.length;r++){var i=n[r],a=i.transferSize,o=i.initiatorType,s=i.duration;if(a&&s&&Wd(o)){for(o=0,s=i.responseEnd,r+=1;r<n.length;r++){var c=n[r],l=c.startTime;if(l>s)break;var u=c.transferSize,d=c.initiatorType;u&&Wd(d)&&(c=c.responseEnd,o+=u*(c<s?1:(s-l)/(c-l)))}if(--r,t+=8*(a+o)/(i.duration/1e3),e++,10<e)break}}if(0<e)return t/e/1e6}return navigator.connection&&(e=navigator.connection.downlink,typeof e==`number`)?e:5}var Kd=null,qd=null;function Jd(e){return e.nodeType===9?e:e.ownerDocument}function Yd(e){switch(e){case`http://www.w3.org/2000/svg`:return 1;case`http://www.w3.org/1998/Math/MathML`:return 2;default:return 0}}function Xd(e,t){if(e===0)switch(t){case`svg`:return 1;case`math`:return 2;default:return 0}return e===1&&t===`foreignObject`?0:e}function Zd(e,t){return e===`textarea`||e===`noscript`||typeof t.children==`string`||typeof t.children==`number`||typeof t.children==`bigint`||typeof t.dangerouslySetInnerHTML==`object`&&t.dangerouslySetInnerHTML!==null&&t.dangerouslySetInnerHTML.__html!=null}var Qd=null;function $d(){var e=window.event;return e&&e.type===`popstate`?e===Qd?!1:(Qd=e,!0):(Qd=null,!1)}var ef=typeof setTimeout==`function`?setTimeout:void 0,tf=typeof clearTimeout==`function`?clearTimeout:void 0,nf=typeof Promise==`function`?Promise:void 0,rf=typeof queueMicrotask==`function`?queueMicrotask:nf===void 0?ef:function(e){return nf.resolve(null).then(e).catch(af)};function af(e){setTimeout(function(){throw e})}function of(e){return e===`head`}function sf(e,t){var n=t,r=0;do{var i=n.nextSibling;if(e.removeChild(n),i&&i.nodeType===8)if(n=i.data,n===`/$`||n===`/&`){if(r===0){e.removeChild(i),Vp(t);return}r--}else if(n===`$`||n===`$?`||n===`$~`||n===`$!`||n===`&`)r++;else if(n===`html`)xf(e.ownerDocument.documentElement);else if(n===`head`){n=e.ownerDocument.head,xf(n);for(var a=n.firstChild;a;){var o=a.nextSibling,s=a.nodeName;a[Et]||s===`SCRIPT`||s===`STYLE`||s===`LINK`&&a.rel.toLowerCase()===`stylesheet`||n.removeChild(a),a=o}}else n===`body`&&xf(e.ownerDocument.body);n=i}while(n);Vp(t)}function cf(e,t){var n=e;e=0;do{var r=n.nextSibling;if(n.nodeType===1?t?(n._stashedDisplay=n.style.display,n.style.display=`none`):(n.style.display=n._stashedDisplay||``,n.getAttribute(`style`)===``&&n.removeAttribute(`style`)):n.nodeType===3&&(t?(n._stashedText=n.nodeValue,n.nodeValue=``):n.nodeValue=n._stashedText||``),r&&r.nodeType===8)if(n=r.data,n===`/$`){if(e===0)break;e--}else n!==`$`&&n!==`$?`&&n!==`$~`&&n!==`$!`||e++;n=r}while(n)}function lf(e){var t=e.firstChild;for(t&&t.nodeType===10&&(t=t.nextSibling);t;){var n=t;switch(t=t.nextSibling,n.nodeName){case`HTML`:case`HEAD`:case`BODY`:lf(n),Dt(n);continue;case`SCRIPT`:case`STYLE`:continue;case`LINK`:if(n.rel.toLowerCase()===`stylesheet`)continue}e.removeChild(n)}}function uf(e,t,n,r){for(;e.nodeType===1;){var i=n;if(e.nodeName.toLowerCase()!==t.toLowerCase()){if(!r&&(e.nodeName!==`INPUT`||e.type!==`hidden`))break}else if(!r)if(t===`input`&&e.type===`hidden`){var a=i.name==null?null:``+i.name;if(i.type===`hidden`&&e.getAttribute(`name`)===a)return e}else return e;else if(!e[Et])switch(t){case`meta`:if(!e.hasAttribute(`itemprop`))break;return e;case`link`:if(a=e.getAttribute(`rel`),a===`stylesheet`&&e.hasAttribute(`data-precedence`)||a!==i.rel||e.getAttribute(`href`)!==(i.href==null||i.href===``?null:i.href)||e.getAttribute(`crossorigin`)!==(i.crossOrigin==null?null:i.crossOrigin)||e.getAttribute(`title`)!==(i.title==null?null:i.title))break;return e;case`style`:if(e.hasAttribute(`data-precedence`))break;return e;case`script`:if(a=e.getAttribute(`src`),(a!==(i.src==null?null:i.src)||e.getAttribute(`type`)!==(i.type==null?null:i.type)||e.getAttribute(`crossorigin`)!==(i.crossOrigin==null?null:i.crossOrigin))&&a&&e.hasAttribute(`async`)&&!e.hasAttribute(`itemprop`))break;return e;default:return e}if(e=gf(e.nextSibling),e===null)break}return null}function df(e,t,n){if(t===``)return null;for(;e.nodeType!==3;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!n||(e=gf(e.nextSibling),e===null))return null;return e}function ff(e,t){for(;e.nodeType!==8;)if((e.nodeType!==1||e.nodeName!==`INPUT`||e.type!==`hidden`)&&!t||(e=gf(e.nextSibling),e===null))return null;return e}function pf(e){return e.data===`$?`||e.data===`$~`}function mf(e){return e.data===`$!`||e.data===`$?`&&e.ownerDocument.readyState!==`loading`}function hf(e,t){var n=e.ownerDocument;if(e.data===`$~`)e._reactRetry=t;else if(e.data!==`$?`||n.readyState!==`loading`)t();else{var r=function(){t(),n.removeEventListener(`DOMContentLoaded`,r)};n.addEventListener(`DOMContentLoaded`,r),e._reactRetry=r}}function gf(e){for(;e!=null;e=e.nextSibling){var t=e.nodeType;if(t===1||t===3)break;if(t===8){if(t=e.data,t===`$`||t===`$!`||t===`$?`||t===`$~`||t===`&`||t===`F!`||t===`F`)break;if(t===`/$`||t===`/&`)return null}}return e}var _f=null;function vf(e){e=e.nextSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`/$`||n===`/&`){if(t===0)return gf(e.nextSibling);t--}else n!==`$`&&n!==`$!`&&n!==`$?`&&n!==`$~`&&n!==`&`||t++}e=e.nextSibling}return null}function yf(e){e=e.previousSibling;for(var t=0;e;){if(e.nodeType===8){var n=e.data;if(n===`$`||n===`$!`||n===`$?`||n===`$~`||n===`&`){if(t===0)return e;t--}else n!==`/$`&&n!==`/&`||t++}e=e.previousSibling}return null}function bf(e,t,n){switch(t=Jd(n),e){case`html`:if(e=t.documentElement,!e)throw Error(o(452));return e;case`head`:if(e=t.head,!e)throw Error(o(453));return e;case`body`:if(e=t.body,!e)throw Error(o(454));return e;default:throw Error(o(451))}}function xf(e){for(var t=e.attributes;t.length;)e.removeAttributeNode(t[0]);Dt(e)}var Sf=new Map,Cf=new Set;function wf(e){return typeof e.getRootNode==`function`?e.getRootNode():e.nodeType===9?e:e.ownerDocument}var Tf=w.d;w.d={f:Ef,r:Df,D:Af,C:jf,L:Mf,m:Nf,X:Ff,S:Pf,M:If};function Ef(){var e=Tf.f(),t=Tu();return e||t}function Df(e){var t=kt(e);t!==null&&t.tag===5&&t.type===`form`?Bs(t):Tf.r(e)}var Of=typeof document>`u`?null:document;function kf(e,t,n){var r=Of;if(r&&typeof t==`string`&&t){var i=Zt(t);i=`link[rel="`+e+`"][href="`+i+`"]`,typeof n==`string`&&(i+=`[crossorigin="`+n+`"]`),Cf.has(i)||(Cf.add(i),e={rel:e,crossOrigin:n,href:t},r.querySelector(i)===null&&(t=r.createElement(`link`),Hd(t,`link`,e),Mt(t),r.head.appendChild(t)))}}function Af(e){Tf.D(e),kf(`dns-prefetch`,e,null)}function jf(e,t){Tf.C(e,t),kf(`preconnect`,e,t)}function Mf(e,t,n){Tf.L(e,t,n);var r=Of;if(r&&e&&t){var i=`link[rel="preload"][as="`+Zt(t)+`"]`;t===`image`&&n&&n.imageSrcSet?(i+=`[imagesrcset="`+Zt(n.imageSrcSet)+`"]`,typeof n.imageSizes==`string`&&(i+=`[imagesizes="`+Zt(n.imageSizes)+`"]`)):i+=`[href="`+Zt(e)+`"]`;var a=i;switch(t){case`style`:a=Rf(e);break;case`script`:a=Hf(e)}Sf.has(a)||(e=m({rel:`preload`,href:t===`image`&&n&&n.imageSrcSet?void 0:e,as:t},n),Sf.set(a,e),r.querySelector(i)!==null||t===`style`&&r.querySelector(zf(a))||t===`script`&&r.querySelector(Uf(a))||(t=r.createElement(`link`),Hd(t,`link`,e),Mt(t),r.head.appendChild(t)))}}function Nf(e,t){Tf.m(e,t);var n=Of;if(n&&e){var r=t&&typeof t.as==`string`?t.as:`script`,i=`link[rel="modulepreload"][as="`+Zt(r)+`"][href="`+Zt(e)+`"]`,a=i;switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:a=Hf(e)}if(!Sf.has(a)&&(e=m({rel:`modulepreload`,href:e},t),Sf.set(a,e),n.querySelector(i)===null)){switch(r){case`audioworklet`:case`paintworklet`:case`serviceworker`:case`sharedworker`:case`worker`:case`script`:if(n.querySelector(Uf(a)))return}r=n.createElement(`link`),Hd(r,`link`,e),Mt(r),n.head.appendChild(r)}}}function Pf(e,t,n){Tf.S(e,t,n);var r=Of;if(r&&e){var i=jt(r).hoistableStyles,a=Rf(e);t||=`default`;var o=i.get(a);if(!o){var s={loading:0,preload:null};if(o=r.querySelector(zf(a)))s.loading=5;else{e=m({rel:`stylesheet`,href:e,"data-precedence":t},n),(n=Sf.get(a))&&Kf(e,n);var c=o=r.createElement(`link`);Mt(c),Hd(c,`link`,e),c._p=new Promise(function(e,t){c.onload=e,c.onerror=t}),c.addEventListener(`load`,function(){s.loading|=1}),c.addEventListener(`error`,function(){s.loading|=2}),s.loading|=4,Gf(o,t,r)}o={type:`stylesheet`,instance:o,count:1,state:s},i.set(a,o)}}}function Ff(e,t){Tf.X(e,t);var n=Of;if(n&&e){var r=jt(n).hoistableScripts,i=Hf(e),a=r.get(i);a||(a=n.querySelector(Uf(i)),a||(e=m({src:e,async:!0},t),(t=Sf.get(i))&&qf(e,t),a=n.createElement(`script`),Mt(a),Hd(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function If(e,t){Tf.M(e,t);var n=Of;if(n&&e){var r=jt(n).hoistableScripts,i=Hf(e),a=r.get(i);a||(a=n.querySelector(Uf(i)),a||(e=m({src:e,async:!0,type:`module`},t),(t=Sf.get(i))&&qf(e,t),a=n.createElement(`script`),Mt(a),Hd(a,`link`,e),n.head.appendChild(a)),a={type:`script`,instance:a,count:1,state:null},r.set(i,a))}}function Lf(e,t,n,r){var i=(i=be.current)?wf(i):null;if(!i)throw Error(o(446));switch(e){case`meta`:case`title`:return null;case`style`:return typeof n.precedence==`string`&&typeof n.href==`string`?(t=Rf(n.href),n=jt(i).hoistableStyles,r=n.get(t),r||(r={type:`style`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};case`link`:if(n.rel===`stylesheet`&&typeof n.href==`string`&&typeof n.precedence==`string`){e=Rf(n.href);var a=jt(i).hoistableStyles,s=a.get(e);if(s||(i=i.ownerDocument||i,s={type:`stylesheet`,instance:null,count:0,state:{loading:0,preload:null}},a.set(e,s),(a=i.querySelector(zf(e)))&&!a._p&&(s.instance=a,s.state.loading=5),Sf.has(e)||(n={rel:`preload`,as:`style`,href:n.href,crossOrigin:n.crossOrigin,integrity:n.integrity,media:n.media,hrefLang:n.hrefLang,referrerPolicy:n.referrerPolicy},Sf.set(e,n),a||Vf(i,e,n,s.state))),t&&r===null)throw Error(o(528,``));return s}if(t&&r!==null)throw Error(o(529,``));return null;case`script`:return t=n.async,n=n.src,typeof n==`string`&&t&&typeof t!=`function`&&typeof t!=`symbol`?(t=Hf(n),n=jt(i).hoistableScripts,r=n.get(t),r||(r={type:`script`,instance:null,count:0,state:null},n.set(t,r)),r):{type:`void`,instance:null,count:0,state:null};default:throw Error(o(444,e))}}function Rf(e){return`href="`+Zt(e)+`"`}function zf(e){return`link[rel="stylesheet"][`+e+`]`}function Bf(e){return m({},e,{"data-precedence":e.precedence,precedence:null})}function Vf(e,t,n,r){e.querySelector(`link[rel="preload"][as="style"][`+t+`]`)?r.loading=1:(t=e.createElement(`link`),r.preload=t,t.addEventListener(`load`,function(){return r.loading|=1}),t.addEventListener(`error`,function(){return r.loading|=2}),Hd(t,`link`,n),Mt(t),e.head.appendChild(t))}function Hf(e){return`[src="`+Zt(e)+`"]`}function Uf(e){return`script[async]`+e}function Wf(e,t,n){if(t.count++,t.instance===null)switch(t.type){case`style`:var r=e.querySelector(`style[data-href~="`+Zt(n.href)+`"]`);if(r)return t.instance=r,Mt(r),r;var i=m({},n,{"data-href":n.href,"data-precedence":n.precedence,href:null,precedence:null});return r=(e.ownerDocument||e).createElement(`style`),Mt(r),Hd(r,`style`,i),Gf(r,n.precedence,e),t.instance=r;case`stylesheet`:i=Rf(n.href);var a=e.querySelector(zf(i));if(a)return t.state.loading|=4,t.instance=a,Mt(a),a;r=Bf(n),(i=Sf.get(i))&&Kf(r,i),a=(e.ownerDocument||e).createElement(`link`),Mt(a);var s=a;return s._p=new Promise(function(e,t){s.onload=e,s.onerror=t}),Hd(a,`link`,r),t.state.loading|=4,Gf(a,n.precedence,e),t.instance=a;case`script`:return a=Hf(n.src),(i=e.querySelector(Uf(a)))?(t.instance=i,Mt(i),i):(r=n,(i=Sf.get(a))&&(r=m({},n),qf(r,i)),e=e.ownerDocument||e,i=e.createElement(`script`),Mt(i),Hd(i,`link`,r),e.head.appendChild(i),t.instance=i);case`void`:return null;default:throw Error(o(443,t.type))}else t.type===`stylesheet`&&!(t.state.loading&4)&&(r=t.instance,t.state.loading|=4,Gf(r,n.precedence,e));return t.instance}function Gf(e,t,n){for(var r=n.querySelectorAll(`link[rel="stylesheet"][data-precedence],style[data-precedence]`),i=r.length?r[r.length-1]:null,a=i,o=0;o<r.length;o++){var s=r[o];if(s.dataset.precedence===t)a=s;else if(a!==i)break}a?a.parentNode.insertBefore(e,a.nextSibling):(t=n.nodeType===9?n.head:n,t.insertBefore(e,t.firstChild))}function Kf(e,t){e.crossOrigin??=t.crossOrigin,e.referrerPolicy??=t.referrerPolicy,e.title??=t.title}function qf(e,t){e.crossOrigin??=t.crossOrigin,e.referrerPolicy??=t.referrerPolicy,e.integrity??=t.integrity}var Jf=null;function Yf(e,t,n){if(Jf===null){var r=new Map,i=Jf=new Map;i.set(n,r)}else i=Jf,r=i.get(n),r||(r=new Map,i.set(n,r));if(r.has(e))return r;for(r.set(e,null),n=n.getElementsByTagName(e),i=0;i<n.length;i++){var a=n[i];if(!(a[Et]||a[yt]||e===`link`&&a.getAttribute(`rel`)===`stylesheet`)&&a.namespaceURI!==`http://www.w3.org/2000/svg`){var o=a.getAttribute(t)||``;o=e+o;var s=r.get(o);s?s.push(a):r.set(o,[a])}}return r}function Xf(e,t,n){e=e.ownerDocument||e,e.head.insertBefore(n,t===`title`?e.querySelector(`head > title`):null)}function Zf(e,t,n){if(n===1||t.itemProp!=null)return!1;switch(e){case`meta`:case`title`:return!0;case`style`:if(typeof t.precedence!=`string`||typeof t.href!=`string`||t.href===``)break;return!0;case`link`:if(typeof t.rel!=`string`||typeof t.href!=`string`||t.href===``||t.onLoad||t.onError)break;switch(t.rel){case`stylesheet`:return e=t.disabled,typeof t.precedence==`string`&&e==null;default:return!0}case`script`:if(t.async&&typeof t.async!=`function`&&typeof t.async!=`symbol`&&!t.onLoad&&!t.onError&&t.src&&typeof t.src==`string`)return!0}return!1}function Qf(e){return!(e.type===`stylesheet`&&!(e.state.loading&3))}function $f(e,t,n,r){if(n.type===`stylesheet`&&(typeof r.media!=`string`||!1!==matchMedia(r.media).matches)&&!(n.state.loading&4)){if(n.instance===null){var i=Rf(r.href),a=t.querySelector(zf(i));if(a){t=a._p,typeof t==`object`&&t&&typeof t.then==`function`&&(e.count++,e=np.bind(e),t.then(e,e)),n.state.loading|=4,n.instance=a,Mt(a);return}a=t.ownerDocument||t,r=Bf(r),(i=Sf.get(i))&&Kf(r,i),a=a.createElement(`link`),Mt(a);var o=a;o._p=new Promise(function(e,t){o.onload=e,o.onerror=t}),Hd(a,`link`,r),n.instance=a}e.stylesheets===null&&(e.stylesheets=new Map),e.stylesheets.set(n,t),(t=n.state.preload)&&!(n.state.loading&3)&&(e.count++,n=np.bind(e),t.addEventListener(`load`,n),t.addEventListener(`error`,n))}}var ep=0;function tp(e,t){return e.stylesheets&&e.count===0&&ip(e,e.stylesheets),0<e.count||0<e.imgCount?function(n){var r=setTimeout(function(){if(e.stylesheets&&ip(e,e.stylesheets),e.unsuspend){var t=e.unsuspend;e.unsuspend=null,t()}},6e4+t);0<e.imgBytes&&ep===0&&(ep=62500*Gd());var i=setTimeout(function(){if(e.waitingForImages=!1,e.count===0&&(e.stylesheets&&ip(e,e.stylesheets),e.unsuspend)){var t=e.unsuspend;e.unsuspend=null,t()}},(e.imgBytes>ep?50:800)+t);return e.unsuspend=n,function(){e.unsuspend=null,clearTimeout(r),clearTimeout(i)}}:null}function np(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)ip(this,this.stylesheets);else if(this.unsuspend){var e=this.unsuspend;this.unsuspend=null,e()}}}var rp=null;function ip(e,t){e.stylesheets=null,e.unsuspend!==null&&(e.count++,rp=new Map,t.forEach(ap,e),rp=null,np.call(e))}function ap(e,t){if(!(t.state.loading&4)){var n=rp.get(e);if(n)var r=n.get(null);else{n=new Map,rp.set(e,n);for(var i=e.querySelectorAll(`link[data-precedence],style[data-precedence]`),a=0;a<i.length;a++){var o=i[a];(o.nodeName===`LINK`||o.getAttribute(`media`)!==`not all`)&&(n.set(o.dataset.precedence,o),r=o)}r&&n.set(null,r)}i=t.instance,o=i.getAttribute(`data-precedence`),a=n.get(o)||r,a===r&&n.set(null,i),n.set(o,i),this.count++,r=np.bind(this),i.addEventListener(`load`,r),i.addEventListener(`error`,r),a?a.parentNode.insertBefore(i,a.nextSibling):(e=e.nodeType===9?e.head:e,e.insertBefore(i,e.firstChild)),t.state.loading|=4}}var op={$$typeof:ee,Provider:null,Consumer:null,_currentValue:fe,_currentValue2:fe,_threadCount:0};function sp(e,t,n,r,i,a,o,s,c){this.tag=1,this.containerInfo=e,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=ct(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=ct(0),this.hiddenUpdates=ct(null),this.identifierPrefix=r,this.onUncaughtError=i,this.onCaughtError=a,this.onRecoverableError=o,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=c,this.incompleteTransitions=new Map}function cp(e,t,n,r,i,a,o,s,c,l,u,d){return e=new sp(e,t,n,o,c,l,u,d,s),t=1,!0===a&&(t|=24),a=vi(3,null,null,t),e.current=a,a.stateNode=e,t=ya(),t.refCount++,e.pooledCache=t,t.refCount++,a.memoizedState={element:r,isDehydrated:n,cache:t},Qa(a),e}function lp(e){return e?(e=gi,e):gi}function up(e,t,n,r,i,a){i=lp(i),r.context===null?r.context=i:r.pendingContext=i,r=eo(t),r.payload={element:n},a=a===void 0?null:a,a!==null&&(r.callback=a),n=to(e,r,t),n!==null&&(bu(n,e,t),no(n,e,t))}function dp(e,t){if(e=e.memoizedState,e!==null&&e.dehydrated!==null){var n=e.retryLane;e.retryLane=n!==0&&n<t?n:t}}function fp(e,t){dp(e,t),(e=e.alternate)&&dp(e,t)}function pp(e){if(e.tag===13||e.tag===31){var t=pi(e,67108864);t!==null&&bu(t,e,67108864),fp(e,67108864)}}function mp(e){if(e.tag===13||e.tag===31){var t=vu();t=mt(t);var n=pi(e,t);n!==null&&bu(n,e,t),fp(e,t)}}var hp=!0;function gp(e,t,n,r){var i=C.T;C.T=null;var a=w.p;try{w.p=2,vp(e,t,n,r)}finally{w.p=a,C.T=i}}function _p(e,t,n,r){var i=C.T;C.T=null;var a=w.p;try{w.p=8,vp(e,t,n,r)}finally{w.p=a,C.T=i}}function vp(e,t,n,r){if(hp){var i=yp(r);if(i===null)jd(e,t,r,bp,n),jp(e,r);else if(Np(i,e,t,n,r))r.stopPropagation();else if(jp(e,r),t&4&&-1<Ap.indexOf(e)){for(;i!==null;){var a=kt(i);if(a!==null)switch(a.tag){case 3:if(a=a.stateNode,a.current.memoizedState.isDehydrated){var o=rt(a.pendingLanes);if(o!==0){var s=a;for(s.pendingLanes|=2,s.entangledLanes|=2;o;){var c=1<<31-Xe(o);s.entanglements[1]|=c,o&=~c}ld(a),!(Ul&6)&&(cu=Re()+500,ud(0,!1))}}break;case 31:case 13:s=pi(a,2),s!==null&&bu(s,a,2),Tu(),fp(a,2)}if(a=yp(r),a===null&&jd(e,t,r,bp,n),a===i)break;i=a}i!==null&&r.stopPropagation()}else jd(e,t,r,null,n)}}function yp(e){return e=pn(e),xp(e)}var bp=null;function xp(e){if(bp=null,e=Ot(e),e!==null){var t=c(e);if(t===null)e=null;else{var n=t.tag;if(n===13){if(e=l(t),e!==null)return e;e=null}else if(n===31){if(e=u(t),e!==null)return e;e=null}else if(n===3){if(t.stateNode.current.memoizedState.isDehydrated)return t.tag===3?t.stateNode.containerInfo:null;e=null}else t!==e&&(e=null)}}return bp=e,null}function Sp(e){switch(e){case`beforetoggle`:case`cancel`:case`click`:case`close`:case`contextmenu`:case`copy`:case`cut`:case`auxclick`:case`dblclick`:case`dragend`:case`dragstart`:case`drop`:case`focusin`:case`focusout`:case`input`:case`invalid`:case`keydown`:case`keypress`:case`keyup`:case`mousedown`:case`mouseup`:case`paste`:case`pause`:case`play`:case`pointercancel`:case`pointerdown`:case`pointerup`:case`ratechange`:case`reset`:case`resize`:case`seeked`:case`submit`:case`toggle`:case`touchcancel`:case`touchend`:case`touchstart`:case`volumechange`:case`change`:case`selectionchange`:case`textInput`:case`compositionstart`:case`compositionend`:case`compositionupdate`:case`beforeblur`:case`afterblur`:case`beforeinput`:case`blur`:case`fullscreenchange`:case`focus`:case`hashchange`:case`popstate`:case`select`:case`selectstart`:return 2;case`drag`:case`dragenter`:case`dragexit`:case`dragleave`:case`dragover`:case`mousemove`:case`mouseout`:case`mouseover`:case`pointermove`:case`pointerout`:case`pointerover`:case`scroll`:case`touchmove`:case`wheel`:case`mouseenter`:case`mouseleave`:case`pointerenter`:case`pointerleave`:return 8;case`message`:switch(ze()){case Be:return 2;case Ve:return 8;case He:case Ue:return 32;case We:return 268435456;default:return 32}default:return 32}}var Cp=!1,wp=null,Tp=null,Ep=null,Dp=new Map,Op=new Map,kp=[],Ap=`mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset`.split(` `);function jp(e,t){switch(e){case`focusin`:case`focusout`:wp=null;break;case`dragenter`:case`dragleave`:Tp=null;break;case`mouseover`:case`mouseout`:Ep=null;break;case`pointerover`:case`pointerout`:Dp.delete(t.pointerId);break;case`gotpointercapture`:case`lostpointercapture`:Op.delete(t.pointerId)}}function Mp(e,t,n,r,i,a){return e===null||e.nativeEvent!==a?(e={blockedOn:t,domEventName:n,eventSystemFlags:r,nativeEvent:a,targetContainers:[i]},t!==null&&(t=kt(t),t!==null&&pp(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,i!==null&&t.indexOf(i)===-1&&t.push(i),e)}function Np(e,t,n,r,i){switch(t){case`focusin`:return wp=Mp(wp,e,t,n,r,i),!0;case`dragenter`:return Tp=Mp(Tp,e,t,n,r,i),!0;case`mouseover`:return Ep=Mp(Ep,e,t,n,r,i),!0;case`pointerover`:var a=i.pointerId;return Dp.set(a,Mp(Dp.get(a)||null,e,t,n,r,i)),!0;case`gotpointercapture`:return a=i.pointerId,Op.set(a,Mp(Op.get(a)||null,e,t,n,r,i)),!0}return!1}function Pp(e){var t=Ot(e.target);if(t!==null){var n=c(t);if(n!==null){if(t=n.tag,t===13){if(t=l(n),t!==null){e.blockedOn=t,_t(e.priority,function(){mp(n)});return}}else if(t===31){if(t=u(n),t!==null){e.blockedOn=t,_t(e.priority,function(){mp(n)});return}}else if(t===3&&n.stateNode.current.memoizedState.isDehydrated){e.blockedOn=n.tag===3?n.stateNode.containerInfo:null;return}}}e.blockedOn=null}function Fp(e){if(e.blockedOn!==null)return!1;for(var t=e.targetContainers;0<t.length;){var n=yp(e.nativeEvent);if(n===null){n=e.nativeEvent;var r=new n.constructor(n.type,n);fn=r,n.target.dispatchEvent(r),fn=null}else return t=kt(n),t!==null&&pp(t),e.blockedOn=n,!1;t.shift()}return!0}function Ip(e,t,n){Fp(e)&&n.delete(t)}function Lp(){Cp=!1,wp!==null&&Fp(wp)&&(wp=null),Tp!==null&&Fp(Tp)&&(Tp=null),Ep!==null&&Fp(Ep)&&(Ep=null),Dp.forEach(Ip),Op.forEach(Ip)}function Rp(e,n){e.blockedOn===n&&(e.blockedOn=null,Cp||(Cp=!0,t.unstable_scheduleCallback(t.unstable_NormalPriority,Lp)))}var zp=null;function Bp(e){zp!==e&&(zp=e,t.unstable_scheduleCallback(t.unstable_NormalPriority,function(){zp===e&&(zp=null);for(var t=0;t<e.length;t+=3){var n=e[t],r=e[t+1],i=e[t+2];if(typeof r!=`function`){if(xp(r||n)===null)continue;break}var a=kt(n);a!==null&&(e.splice(t,3),t-=3,Rs(a,{pending:!0,data:i,method:n.method,action:r},r,i))}}))}function Vp(e){function t(t){return Rp(t,e)}wp!==null&&Rp(wp,e),Tp!==null&&Rp(Tp,e),Ep!==null&&Rp(Ep,e),Dp.forEach(t),Op.forEach(t);for(var n=0;n<kp.length;n++){var r=kp[n];r.blockedOn===e&&(r.blockedOn=null)}for(;0<kp.length&&(n=kp[0],n.blockedOn===null);)Pp(n),n.blockedOn===null&&kp.shift();if(n=(e.ownerDocument||e).$$reactFormReplay,n!=null)for(r=0;r<n.length;r+=3){var i=n[r],a=n[r+1],o=i[bt]||null;if(typeof a==`function`)o||Bp(n);else if(o){var s=null;if(a&&a.hasAttribute(`formAction`)){if(i=a,o=a[bt]||null)s=o.formAction;else if(xp(i)!==null)continue}else s=o.action;typeof s==`function`?n[r+1]=s:(n.splice(r,3),r-=3),Bp(n)}}}function Hp(){function e(e){e.canIntercept&&e.info===`react-transition`&&e.intercept({handler:function(){return new Promise(function(e){return i=e})},focusReset:`manual`,scroll:`manual`})}function t(){i!==null&&(i(),i=null),r||setTimeout(n,20)}function n(){if(!r&&!navigation.transition){var e=navigation.currentEntry;e&&e.url!=null&&navigation.navigate(e.url,{state:e.getState(),info:`react-transition`,history:`replace`})}}if(typeof navigation==`object`){var r=!1,i=null;return navigation.addEventListener(`navigate`,e),navigation.addEventListener(`navigatesuccess`,t),navigation.addEventListener(`navigateerror`,t),setTimeout(n,100),function(){r=!0,navigation.removeEventListener(`navigate`,e),navigation.removeEventListener(`navigatesuccess`,t),navigation.removeEventListener(`navigateerror`,t),i!==null&&(i(),i=null)}}}function Up(e){this._internalRoot=e}Wp.prototype.render=Up.prototype.render=function(e){var t=this._internalRoot;if(t===null)throw Error(o(409));var n=t.current;up(n,vu(),e,t,null,null)},Wp.prototype.unmount=Up.prototype.unmount=function(){var e=this._internalRoot;if(e!==null){this._internalRoot=null;var t=e.containerInfo;up(e.current,2,null,e,null,null),Tu(),t[xt]=null}};function Wp(e){this._internalRoot=e}Wp.prototype.unstable_scheduleHydration=function(e){if(e){var t=gt();e={blockedOn:null,target:e,priority:t};for(var n=0;n<kp.length&&t!==0&&t<kp[n].priority;n++);kp.splice(n,0,e),n===0&&Pp(e)}};var Gp=n.version;if(Gp!==`19.2.7`)throw Error(o(527,Gp,`19.2.7`));w.findDOMNode=function(e){var t=e._reactInternals;if(t===void 0)throw typeof e.render==`function`?Error(o(188)):(e=Object.keys(e).join(`,`),Error(o(268,e)));return e=f(t),e=e===null?null:p(e),e=e===null?null:e.stateNode,e};var Kp={bundleType:0,version:`19.2.7`,rendererPackageName:`react-dom`,currentDispatcherRef:C,reconcilerVersion:`19.2.7`};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<`u`){var qp=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!qp.isDisabled&&qp.supportsFiber)try{qe=qp.inject(Kp),Je=qp}catch{}}e.createRoot=function(e,t){if(!s(e))throw Error(o(299));var n=!1,r=``,i=oc,a=sc,c=cc;return t!=null&&(!0===t.unstable_strictMode&&(n=!0),t.identifierPrefix!==void 0&&(r=t.identifierPrefix),t.onUncaughtError!==void 0&&(i=t.onUncaughtError),t.onCaughtError!==void 0&&(a=t.onCaughtError),t.onRecoverableError!==void 0&&(c=t.onRecoverableError)),t=cp(e,1,!1,null,null,n,r,null,i,a,c,Hp),e[xt]=t.current,kd(e),new Up(t)}})),AX=n(e(((e,t)=>{function n(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>`u`||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!=`function`))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(n)}catch(e){console.error(e)}}n(),t.exports=kX()}))(),1),jX=`camstack-mount`,MX=/^\/(?:[A-Za-z0-9_\-.]+\/)*$/,NX=null;function PX(e){if(e==null||e===``)return null;let t=e.endsWith(`/`)?e:`${e}/`;return!MX.test(t)||t.includes(`/../`)||t.includes(`/./`)?null:t}function FX(){if(typeof document>`u`)return`/`;let e=PX(document.querySelector(`meta[name="${jX}"]`)?.getAttribute(`content`));if(e!==null)return e;if(document.querySelector(`base[href]`)!==null)try{let e=new URL(document.baseURI);if(e.origin===window.location.origin){let t=PX(e.pathname);if(t!==null)return t}}catch{}return`/`}function IX(){return NX===null&&(NX=FX()),NX}function LX(){return IX().replace(/\/$/,``)}function RX(e){return/^[a-z][a-z0-9+.-]*:/i.test(e)||e.startsWith(`//`)}function zX(e){if(RX(e))return e;let t=IX(),n=e.replace(/^\/+/,``);return t!==`/`&&(e===LX()||e.startsWith(t))?e:`${t}${n}`}TW(`camstack:widget-registry`,null);function BX({title:e,icon:t,headerRight:n,collapsible:r=!1,defaultOpen:i=!0,bodyClassName:a=`p-3`,children:o}){let[s,c]=(0,d.useState)(i),l=!r||s,u=(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`span`,{className:`flex items-center gap-2 text-xs font-semibold uppercase tracking-wider text-foreground`,children:[t,e]}),r?s?(0,K.jsx)(ae,{className:`h-3.5 w-3.5 text-foreground-subtle`}):(0,K.jsx)(se,{className:`h-3.5 w-3.5 text-foreground-subtle`}):n]}),f=`px-4 py-2 flex items-center justify-between ${l?`border-b border-border`:``}`;return(0,K.jsxs)(`div`,{className:`rounded-lg border border-border bg-surface overflow-hidden`,children:[r?(0,K.jsx)(`button`,{type:`button`,onClick:()=>c(e=>!e),className:`w-full text-left ${f}`,children:u}):(0,K.jsx)(`div`,{className:f,children:u}),l?(0,K.jsx)(`div`,{className:a,children:o}):null]})}var VX=`capability.binding-changed`;function HX(e,t){let[n,r]=(0,d.useState)(null);return(0,d.useEffect)(()=>{if(t===null){r(null);return}let n=!1,i=async()=>{try{let i=await e.deviceManager.getBindings.query({deviceId:t});n||r(i)}catch{n||r(e=>e)}};i();let a=e.live?.onEvent.subscribe({category:VX},{onData:e=>{let n=e.data?.source;if(!n){i();return}n.type===`device`&&n.id===t&&i()}});return()=>{n=!0,a?.unsubscribe()}},[e,t]),(0,d.useMemo)(()=>n?lu(e,n):null,[e,n])}function UX(e){let t=(0,d.useCallback)(t=>e?e.subscribe(()=>t()):()=>void 0,[e]),n=(0,d.useCallback)(()=>e?.value,[e]);return(0,d.useSyncExternalStore)(t,n,n)}var WX=`/addon/snapshot/media`;function GX(e,t={}){let{width:n,baseUrl:r}=t,[i,a]=(0,d.useState)(0);return{src:(0,d.useMemo)(()=>{if(e===null||e<=0)return null;let t=r===void 0?LX():r.replace(/\/+$/,``),a=new URLSearchParams;n!==void 0&&Number.isInteger(n)&&n>0&&a.set(`w`,String(n)),i>0&&(a.set(`force`,`1`),a.set(`r`,String(i)));let o=a.toString();return`${t}${WX}/${String(e)}.jpg${o.length>0?`?${o}`:``}`},[e,n,r,i]),loading:!1,refresh:(0,d.useCallback)(()=>{a(e=>e+1)},[])}}U.Camera;function KX(e){let t=HX(e.trpc,e.deviceId),n=UX(t===null?void 0:e.slice(t)),r=t===null?void 0:e.cap(t),i=UX(t===null?void 0:t.state.deviceStatus),a=i?.online??!0,o=a?null:i?.lastChangedAt??null;return{dev:t,cap:r,slice:n,available:(e.requireFeature===void 0||(e.deviceFeatures??[]).includes(e.requireFeature))&&r!==void 0&&n!==void 0&&a,online:a,offlineSince:o}}var qX=vK(`inline-flex items-center justify-center rounded-md font-medium transition-colors cursor-pointer disabled:opacity-50 disabled:pointer-events-none`,{variants:{variant:{primary:`bg-primary text-primary-foreground hover:bg-primary/90`,secondary:`bg-surface text-foreground hover:bg-surface-hover`,ghost:`hover:bg-surface-hover text-foreground-muted`,danger:`bg-danger text-white hover:bg-danger/90`,outline:`border border-border bg-transparent text-foreground hover:bg-surface-hover`},size:{sm:`h-7 px-2.5 text-xs gap-1.5`,md:`h-8 px-3 text-sm gap-2`,lg:`h-9 px-4 text-sm gap-2`}},defaultVariants:{variant:`primary`,size:`sm`}}),JX=(0,d.forwardRef)(({className:e,variant:t,size:n,...r},i)=>(0,K.jsx)(`button`,{ref:i,className:Z(qX({variant:t,size:n}),e),...r}));JX.displayName=`Button`;var YX=(0,d.forwardRef)(({className:e,...t},n)=>(0,K.jsx)(`div`,{ref:n,className:Z(`animate-pulse bg-surface-hover rounded-md h-4 w-full`,e),...t}));YX.displayName=`Skeleton`;var XX={danger:{box:`border-danger/40 bg-danger/10`,icon:`text-danger`,title:`text-danger`,message:`text-danger`},warning:{box:`border-amber-500/40 bg-amber-500/10`,icon:`text-amber-600 dark:text-amber-400`,title:`text-amber-700 dark:text-amber-300`,message:`text-amber-700 dark:text-amber-300`}};function ZX({message:e,title:t,onRetry:n,action:r,variant:i=`danger`,className:a}){let o=XX[i],s=i===`warning`?Vt:le;return(0,K.jsxs)(`div`,{role:`alert`,className:Z(`flex items-start gap-2.5 rounded border px-3 py-2.5`,o.box,a),children:[(0,K.jsx)(s,{className:Z(`h-4 w-4 mt-0.5 shrink-0`,o.icon),"aria-hidden":`true`}),(0,K.jsxs)(`div`,{className:`flex-1 min-w-0`,children:[t&&(0,K.jsx)(`p`,{className:Z(`text-xs font-semibold`,o.title),children:t}),(0,K.jsx)(`div`,{className:Z(`text-xs break-words`,o.message,t?`mt-0.5`:``),children:e})]}),r??(n&&(0,K.jsxs)(`button`,{type:`button`,onClick:n,className:Z(`shrink-0 inline-flex items-center gap-1 rounded px-2 py-1 text-[11px] font-medium`,`border border-current/30 hover:bg-current/10 transition-colors`,o.message),children:[(0,K.jsx)(mt,{className:`h-3 w-3`,"aria-hidden":`true`}),`Retry`]}))]})}TW(`camstack:vod-playback`,{request:null,play:()=>{},clear:()=>{}});var QX=vK(`rounded-lg p-3`,{variants:{variant:{flat:`bg-surface`,bordered:`bg-surface border border-border`}},defaultVariants:{variant:`bordered`}}),$X=(0,d.forwardRef)(({className:e,variant:t,...n},r)=>(0,K.jsx)(`div`,{ref:r,className:Z(QX({variant:t}),e),...n}));$X.displayName=`Card`;function eZ(e){if(typeof e!=`object`||!e)return null;let t=Reflect.get(e,`data`);if(typeof t==`object`&&t){let e=Reflect.get(t,`capRouteReason`);if(typeof e==`string`)return e}return null}function tZ(e){let t=eZ(e);return t===null?(e instanceof Error?e.message:String(e)).includes(`provider not available`):t===`no-provider`||t===`node-offline`}TW(`camstack:recorded-playback`,{bindControlChannel:null,channelOpen:!1,mode:`live`,positionMs:null,send:()=>!1});var nZ=(0,d.createContext)(null);function rZ(){let e=(0,d.useContext)(nZ);if(!e)throw Error(`Dialog compound components must be used within <Dialog>`);return e}function iZ({children:e,open:t,onOpenChange:n}){let[r,i]=(0,d.useState)(!1),a=t??r,o=(0,d.useId)(),s=(0,d.useCallback)(e=>{n?.(e),t===void 0&&i(e)},[t,n]);return(0,K.jsx)(nZ.Provider,{value:{open:a,setOpen:s,contentId:o},children:e})}var aZ=vK(`relative fixed left-1/2 top-1/2 -translate-x-1/2 -translate-y-1/2 m-0 w-[calc(100vw-2rem)] bg-background-elevated text-foreground border border-border rounded-lg p-4 backdrop:bg-black/50 backdrop:backdrop-blur-sm max-h-[calc(100dvh-2rem-2*max(env(safe-area-inset-top),env(safe-area-inset-bottom)))] [&:not([open])]:hidden`,{variants:{width:{sm:`max-w-sm`,md:`max-w-md`,lg:`max-w-lg`,xl:`max-w-4xl`},scroll:{content:`overflow-y-auto`,body:`flex flex-col overflow-hidden`},placement:{center:``,"sheet-on-mobile":`bottom-0 left-0 right-0 top-auto w-full max-w-full translate-x-0 translate-y-0 rounded-b-none max-h-[92dvh] pb-[calc(1rem+env(safe-area-inset-bottom))] md:left-1/2 md:top-1/2 md:-translate-x-1/2 md:-translate-y-1/2 md:rounded-lg md:bottom-auto md:pb-4 md:max-h-[calc(100dvh-2rem-2*max(env(safe-area-inset-top),env(safe-area-inset-bottom)))]`}},compoundVariants:[{placement:`sheet-on-mobile`,width:`sm`,class:`md:w-[calc(100vw-2rem)] md:max-w-sm`},{placement:`sheet-on-mobile`,width:`md`,class:`md:w-[calc(100vw-2rem)] md:max-w-md`},{placement:`sheet-on-mobile`,width:`lg`,class:`md:w-[calc(100vw-2rem)] md:max-w-lg`},{placement:`sheet-on-mobile`,width:`xl`,class:`md:w-[calc(100vw-2rem)] md:max-w-4xl`},{scroll:`body`,placement:`sheet-on-mobile`,class:`h-[92dvh] md:h-auto`},{scroll:`body`,placement:`center`,class:`h-[calc(100dvh-2rem-2*max(env(safe-area-inset-top),env(safe-area-inset-bottom)))] md:h-auto`}],defaultVariants:{width:`md`,placement:`center`,scroll:`content`}}),oZ=(0,d.forwardRef)(({className:e,width:t,placement:n,scroll:r,children:i,...a},o)=>{let{open:s,setOpen:c,contentId:l}=rZ(),u=(0,d.useRef)(null),f=o??u;return(0,d.useEffect)(()=>{let e=f.current;e&&(s&&!e.open&&e.showModal(),!s&&e.open&&e.close())},[s,f]),(0,K.jsxs)(`dialog`,{ref:f,id:l,className:Z(aZ({width:t,placement:n,scroll:r}),e),onClose:()=>c(!1),...a,children:[(0,K.jsx)(bK,{type:`button`,variant:`ghost`,size:`sm`,icon:$t,"aria-label":`Close`,className:`absolute right-4 top-4 z-10 shrink-0`,onClick:()=>c(!1)}),i]})});oZ.displayName=`DialogContent`;function sZ({className:e,...t}){return(0,K.jsx)(`div`,{className:Z(`flex flex-col gap-1 mb-3 shrink-0 pr-10`,e),...t})}function cZ({className:e,...t}){return(0,K.jsx)(`div`,{className:Z(`flex justify-end gap-2 mt-4 shrink-0`,e),...t})}function lZ({className:e,...t}){return(0,K.jsx)(`h2`,{className:Z(`text-sm font-semibold text-foreground`,e),...t})}function uZ({className:e,...t}){return(0,K.jsx)(`p`,{className:Z(`text-xs text-foreground-muted`,e),...t})}(0,d.lazy)(()=>Tl(()=>import(`./MotionZonesSettings-JxtqkJPW.js`).then(e=>({default:e.MotionZonesSettings})),__vite__mapDeps([0,1,2]))),(0,d.lazy)(()=>Tl(()=>import(`./PrivacyMaskSettings-BtK2jp8R.js`).then(e=>({default:e.PrivacyMaskSettings})),__vite__mapDeps([3,1,2])));var dZ=Object.defineProperty,fZ=Object.getOwnPropertySymbols,pZ=Object.prototype.hasOwnProperty,mZ=Object.prototype.propertyIsEnumerable,hZ=(e,t,n)=>t in e?dZ(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,gZ=(e,t)=>{for(var n in t||={})pZ.call(t,n)&&hZ(e,n,t[n]);if(fZ)for(var n of fZ(t))mZ.call(t,n)&&hZ(e,n,t[n]);return e},_Z=(e,t)=>{var n={};for(var r in e)pZ.call(e,r)&&t.indexOf(r)<0&&(n[r]=e[r]);if(e!=null&&fZ)for(var r of fZ(e))t.indexOf(r)<0&&mZ.call(e,r)&&(n[r]=e[r]);return n},vZ;(e=>{let t=class t{constructor(e,n,r,a){if(this.version=e,this.errorCorrectionLevel=n,this.modules=[],this.isFunction=[],e<t.MIN_VERSION||e>t.MAX_VERSION)throw RangeError(`Version value out of range`);if(a<-1||a>7)throw RangeError(`Mask value out of range`);this.size=e*4+17;let o=[];for(let e=0;e<this.size;e++)o.push(!1);for(let e=0;e<this.size;e++)this.modules.push(o.slice()),this.isFunction.push(o.slice());this.drawFunctionPatterns();let s=this.addEccAndInterleave(r);if(this.drawCodewords(s),a==-1){let e=1e9;for(let t=0;t<8;t++){this.applyMask(t),this.drawFormatBits(t);let n=this.getPenaltyScore();n<e&&(a=t,e=n),this.applyMask(t)}}i(0<=a&&a<=7),this.mask=a,this.applyMask(a),this.drawFormatBits(a),this.isFunction=[]}static encodeText(n,r){let i=e.QrSegment.makeSegments(n);return t.encodeSegments(i,r)}static encodeBinary(n,r){let i=e.QrSegment.makeBytes(n);return t.encodeSegments([i],r)}static encodeSegments(e,r,a=1,s=40,c=-1,l=!0){if(!(t.MIN_VERSION<=a&&a<=s&&s<=t.MAX_VERSION)||c<-1||c>7)throw RangeError(`Invalid value`);let u,d;for(u=a;;u++){let n=t.getNumDataCodewords(u,r)*8,i=o.getTotalBits(e,u);if(i<=n){d=i;break}if(u>=s)throw RangeError(`Data too long`)}for(let e of[t.Ecc.MEDIUM,t.Ecc.QUARTILE,t.Ecc.HIGH])l&&d<=t.getNumDataCodewords(u,e)*8&&(r=e);let f=[];for(let t of e){n(t.mode.modeBits,4,f),n(t.numChars,t.mode.numCharCountBits(u),f);for(let e of t.getData())f.push(e)}i(f.length==d);let p=t.getNumDataCodewords(u,r)*8;i(f.length<=p),n(0,Math.min(4,p-f.length),f),n(0,(8-f.length%8)%8,f),i(f.length%8==0);for(let e=236;f.length<p;e^=253)n(e,8,f);let m=[];for(;m.length*8<f.length;)m.push(0);return f.forEach((e,t)=>m[t>>>3]|=e<<7-(t&7)),new t(u,r,m,c)}getModule(e,t){return 0<=e&&e<this.size&&0<=t&&t<this.size&&this.modules[t][e]}getModules(){return this.modules}drawFunctionPatterns(){for(let e=0;e<this.size;e++)this.setFunctionModule(6,e,e%2==0),this.setFunctionModule(e,6,e%2==0);this.drawFinderPattern(3,3),this.drawFinderPattern(this.size-4,3),this.drawFinderPattern(3,this.size-4);let e=this.getAlignmentPatternPositions(),t=e.length;for(let n=0;n<t;n++)for(let r=0;r<t;r++)n==0&&r==0||n==0&&r==t-1||n==t-1&&r==0||this.drawAlignmentPattern(e[n],e[r]);this.drawFormatBits(0),this.drawVersion()}drawFormatBits(e){let t=this.errorCorrectionLevel.formatBits<<3|e,n=t;for(let e=0;e<10;e++)n=n<<1^(n>>>9)*1335;let a=(t<<10|n)^21522;i(a>>>15==0);for(let e=0;e<=5;e++)this.setFunctionModule(8,e,r(a,e));this.setFunctionModule(8,7,r(a,6)),this.setFunctionModule(8,8,r(a,7)),this.setFunctionModule(7,8,r(a,8));for(let e=9;e<15;e++)this.setFunctionModule(14-e,8,r(a,e));for(let e=0;e<8;e++)this.setFunctionModule(this.size-1-e,8,r(a,e));for(let e=8;e<15;e++)this.setFunctionModule(8,this.size-15+e,r(a,e));this.setFunctionModule(8,this.size-8,!0)}drawVersion(){if(this.version<7)return;let e=this.version;for(let t=0;t<12;t++)e=e<<1^(e>>>11)*7973;let t=this.version<<12|e;i(t>>>18==0);for(let e=0;e<18;e++){let n=r(t,e),i=this.size-11+e%3,a=Math.floor(e/3);this.setFunctionModule(i,a,n),this.setFunctionModule(a,i,n)}}drawFinderPattern(e,t){for(let n=-4;n<=4;n++)for(let r=-4;r<=4;r++){let i=Math.max(Math.abs(r),Math.abs(n)),a=e+r,o=t+n;0<=a&&a<this.size&&0<=o&&o<this.size&&this.setFunctionModule(a,o,i!=2&&i!=4)}}drawAlignmentPattern(e,t){for(let n=-2;n<=2;n++)for(let r=-2;r<=2;r++)this.setFunctionModule(e+r,t+n,Math.max(Math.abs(r),Math.abs(n))!=1)}setFunctionModule(e,t,n){this.modules[t][e]=n,this.isFunction[t][e]=!0}addEccAndInterleave(e){let n=this.version,r=this.errorCorrectionLevel;if(e.length!=t.getNumDataCodewords(n,r))throw RangeError(`Invalid argument`);let a=t.NUM_ERROR_CORRECTION_BLOCKS[r.ordinal][n],o=t.ECC_CODEWORDS_PER_BLOCK[r.ordinal][n],s=Math.floor(t.getNumRawDataModules(n)/8),c=a-s%a,l=Math.floor(s/a),u=[],d=t.reedSolomonComputeDivisor(o);for(let n=0,r=0;n<a;n++){let i=e.slice(r,r+l-o+(n<c?0:1));r+=i.length;let a=t.reedSolomonComputeRemainder(i,d);n<c&&i.push(0),u.push(i.concat(a))}let f=[];for(let e=0;e<u[0].length;e++)u.forEach((t,n)=>{(e!=l-o||n>=c)&&f.push(t[e])});return i(f.length==s),f}drawCodewords(e){if(e.length!=Math.floor(t.getNumRawDataModules(this.version)/8))throw RangeError(`Invalid argument`);let n=0;for(let t=this.size-1;t>=1;t-=2){t==6&&(t=5);for(let i=0;i<this.size;i++)for(let a=0;a<2;a++){let o=t-a,s=t+1&2?i:this.size-1-i;!this.isFunction[s][o]&&n<e.length*8&&(this.modules[s][o]=r(e[n>>>3],7-(n&7)),n++)}}i(n==e.length*8)}applyMask(e){if(e<0||e>7)throw RangeError(`Mask value out of range`);for(let t=0;t<this.size;t++)for(let n=0;n<this.size;n++){let r;switch(e){case 0:r=(n+t)%2==0;break;case 1:r=t%2==0;break;case 2:r=n%3==0;break;case 3:r=(n+t)%3==0;break;case 4:r=(Math.floor(n/3)+Math.floor(t/2))%2==0;break;case 5:r=n*t%2+n*t%3==0;break;case 6:r=(n*t%2+n*t%3)%2==0;break;case 7:r=((n+t)%2+n*t%3)%2==0;break;default:throw Error(`Unreachable`)}!this.isFunction[t][n]&&r&&(this.modules[t][n]=!this.modules[t][n])}}getPenaltyScore(){let e=0;for(let n=0;n<this.size;n++){let r=!1,i=0,a=[0,0,0,0,0,0,0];for(let o=0;o<this.size;o++)this.modules[n][o]==r?(i++,i==5?e+=t.PENALTY_N1:i>5&&e++):(this.finderPenaltyAddHistory(i,a),r||(e+=this.finderPenaltyCountPatterns(a)*t.PENALTY_N3),r=this.modules[n][o],i=1);e+=this.finderPenaltyTerminateAndCount(r,i,a)*t.PENALTY_N3}for(let n=0;n<this.size;n++){let r=!1,i=0,a=[0,0,0,0,0,0,0];for(let o=0;o<this.size;o++)this.modules[o][n]==r?(i++,i==5?e+=t.PENALTY_N1:i>5&&e++):(this.finderPenaltyAddHistory(i,a),r||(e+=this.finderPenaltyCountPatterns(a)*t.PENALTY_N3),r=this.modules[o][n],i=1);e+=this.finderPenaltyTerminateAndCount(r,i,a)*t.PENALTY_N3}for(let n=0;n<this.size-1;n++)for(let r=0;r<this.size-1;r++){let i=this.modules[n][r];i==this.modules[n][r+1]&&i==this.modules[n+1][r]&&i==this.modules[n+1][r+1]&&(e+=t.PENALTY_N2)}let n=0;for(let e of this.modules)n=e.reduce((e,t)=>e+ +!!t,n);let r=this.size*this.size,a=Math.ceil(Math.abs(n*20-r*10)/r)-1;return i(0<=a&&a<=9),e+=a*t.PENALTY_N4,i(0<=e&&e<=2568888),e}getAlignmentPatternPositions(){if(this.version==1)return[];{let e=Math.floor(this.version/7)+2,t=this.version==32?26:Math.ceil((this.version*4+4)/(e*2-2))*2,n=[6];for(let r=this.size-7;n.length<e;r-=t)n.splice(1,0,r);return n}}static getNumRawDataModules(e){if(e<t.MIN_VERSION||e>t.MAX_VERSION)throw RangeError(`Version number out of range`);let n=(16*e+128)*e+64;if(e>=2){let t=Math.floor(e/7)+2;n-=(25*t-10)*t-55,e>=7&&(n-=36)}return i(208<=n&&n<=29648),n}static getNumDataCodewords(e,n){return Math.floor(t.getNumRawDataModules(e)/8)-t.ECC_CODEWORDS_PER_BLOCK[n.ordinal][e]*t.NUM_ERROR_CORRECTION_BLOCKS[n.ordinal][e]}static reedSolomonComputeDivisor(e){if(e<1||e>255)throw RangeError(`Degree out of range`);let n=[];for(let t=0;t<e-1;t++)n.push(0);n.push(1);let r=1;for(let i=0;i<e;i++){for(let e=0;e<n.length;e++)n[e]=t.reedSolomonMultiply(n[e],r),e+1<n.length&&(n[e]^=n[e+1]);r=t.reedSolomonMultiply(r,2)}return n}static reedSolomonComputeRemainder(e,n){let r=n.map(e=>0);for(let i of e){let e=i^r.shift();r.push(0),n.forEach((n,i)=>r[i]^=t.reedSolomonMultiply(n,e))}return r}static reedSolomonMultiply(e,t){if(e>>>8||t>>>8)throw RangeError(`Byte out of range`);let n=0;for(let r=7;r>=0;r--)n=n<<1^(n>>>7)*285,n^=(t>>>r&1)*e;return i(n>>>8==0),n}finderPenaltyCountPatterns(e){let t=e[1];i(t<=this.size*3);let n=t>0&&e[2]==t&&e[3]==t*3&&e[4]==t&&e[5]==t;return(n&&e[0]>=t*4&&e[6]>=t?1:0)+(n&&e[6]>=t*4&&e[0]>=t?1:0)}finderPenaltyTerminateAndCount(e,t,n){return e&&(this.finderPenaltyAddHistory(t,n),t=0),t+=this.size,this.finderPenaltyAddHistory(t,n),this.finderPenaltyCountPatterns(n)}finderPenaltyAddHistory(e,t){t[0]==0&&(e+=this.size),t.pop(),t.unshift(e)}};t.MIN_VERSION=1,t.MAX_VERSION=40,t.PENALTY_N1=3,t.PENALTY_N2=3,t.PENALTY_N3=40,t.PENALTY_N4=10,t.ECC_CODEWORDS_PER_BLOCK=[[-1,7,10,15,20,26,18,20,24,30,18,20,24,26,30,22,24,28,30,28,28,28,28,30,30,26,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,10,16,26,18,24,16,18,22,22,26,30,22,22,24,24,28,28,26,26,26,26,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28,28],[-1,13,22,18,26,18,24,18,22,20,24,28,26,24,20,30,24,28,28,26,30,28,30,30,30,30,28,30,30,30,30,30,30,30,30,30,30,30,30,30,30],[-1,17,28,22,16,22,28,26,26,24,28,24,28,22,24,24,30,28,28,26,28,30,24,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30,30]],t.NUM_ERROR_CORRECTION_BLOCKS=[[-1,1,1,1,1,1,2,2,2,2,4,4,4,4,4,6,6,6,6,7,8,8,9,9,10,12,12,12,13,14,15,16,17,18,19,19,20,21,22,24,25],[-1,1,1,1,2,2,4,4,4,5,5,5,8,9,9,10,10,11,13,14,16,17,17,18,20,21,23,25,26,28,29,31,33,35,37,38,40,43,45,47,49],[-1,1,1,2,2,4,4,6,6,8,8,8,10,12,16,12,17,16,18,21,20,23,23,25,27,29,34,34,35,38,40,43,45,48,51,53,56,59,62,65,68],[-1,1,1,2,4,4,4,5,6,8,8,11,11,16,16,18,16,19,21,25,25,25,34,30,32,35,37,40,42,45,48,51,54,57,60,63,66,70,74,77,81]],e.QrCode=t;function n(e,t,n){if(t<0||t>31||e>>>t)throw RangeError(`Value out of range`);for(let r=t-1;r>=0;r--)n.push(e>>>r&1)}function r(e,t){return(e>>>t&1)!=0}function i(e){if(!e)throw Error(`Assertion error`)}let a=class e{constructor(e,t,n){if(this.mode=e,this.numChars=t,this.bitData=n,t<0)throw RangeError(`Invalid argument`);this.bitData=n.slice()}static makeBytes(t){let r=[];for(let e of t)n(e,8,r);return new e(e.Mode.BYTE,t.length,r)}static makeNumeric(t){if(!e.isNumeric(t))throw RangeError(`String contains non-numeric characters`);let r=[];for(let e=0;e<t.length;){let i=Math.min(t.length-e,3);n(parseInt(t.substring(e,e+i),10),i*3+1,r),e+=i}return new e(e.Mode.NUMERIC,t.length,r)}static makeAlphanumeric(t){if(!e.isAlphanumeric(t))throw RangeError(`String contains unencodable characters in alphanumeric mode`);let r=[],i;for(i=0;i+2<=t.length;i+=2){let a=e.ALPHANUMERIC_CHARSET.indexOf(t.charAt(i))*45;a+=e.ALPHANUMERIC_CHARSET.indexOf(t.charAt(i+1)),n(a,11,r)}return i<t.length&&n(e.ALPHANUMERIC_CHARSET.indexOf(t.charAt(i)),6,r),new e(e.Mode.ALPHANUMERIC,t.length,r)}static makeSegments(t){return t==``?[]:e.isNumeric(t)?[e.makeNumeric(t)]:e.isAlphanumeric(t)?[e.makeAlphanumeric(t)]:[e.makeBytes(e.toUtf8ByteArray(t))]}static makeEci(t){let r=[];if(t<0)throw RangeError(`ECI assignment value out of range`);if(t<128)n(t,8,r);else if(t<16384)n(2,2,r),n(t,14,r);else if(t<1e6)n(6,3,r),n(t,21,r);else throw RangeError(`ECI assignment value out of range`);return new e(e.Mode.ECI,0,r)}static isNumeric(t){return e.NUMERIC_REGEX.test(t)}static isAlphanumeric(t){return e.ALPHANUMERIC_REGEX.test(t)}getData(){return this.bitData.slice()}static getTotalBits(e,t){let n=0;for(let r of e){let e=r.mode.numCharCountBits(t);if(r.numChars>=1<<e)return 1/0;n+=4+e+r.bitData.length}return n}static toUtf8ByteArray(e){e=encodeURI(e);let t=[];for(let n=0;n<e.length;n++)e.charAt(n)==`%`?(t.push(parseInt(e.substring(n+1,n+3),16)),n+=2):t.push(e.charCodeAt(n));return t}};a.NUMERIC_REGEX=/^[0-9]*$/,a.ALPHANUMERIC_REGEX=/^[A-Z0-9 $%*+.\/:-]*$/,a.ALPHANUMERIC_CHARSET=`0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ $%*+-./:`;let o=a;e.QrSegment=a})(vZ||={}),(e=>{(e=>{let t=class{constructor(e,t){this.ordinal=e,this.formatBits=t}};t.LOW=new t(0,1),t.MEDIUM=new t(1,0),t.QUARTILE=new t(2,3),t.HIGH=new t(3,2),e.Ecc=t})(e.QrCode||={})})(vZ||={}),(e=>{(e=>{let t=class{constructor(e,t){this.modeBits=e,this.numBitsCharCount=t}numCharCountBits(e){return this.numBitsCharCount[Math.floor((e+7)/17)]}};t.NUMERIC=new t(1,[10,12,14]),t.ALPHANUMERIC=new t(2,[9,11,13]),t.BYTE=new t(4,[8,16,16]),t.KANJI=new t(8,[8,10,12]),t.ECI=new t(7,[0,0,0]),e.Mode=t})(e.QrSegment||={})})(vZ||={});var yZ=vZ,bZ={L:yZ.QrCode.Ecc.LOW,M:yZ.QrCode.Ecc.MEDIUM,Q:yZ.QrCode.Ecc.QUARTILE,H:yZ.QrCode.Ecc.HIGH},xZ=128,SZ=`L`,CZ=`#FFFFFF`,wZ=`#000000`,TZ=!1,EZ=1,DZ=4,OZ=0,kZ=.1;function AZ(e,t=0){let n=[];return e.forEach(function(e,r){let i=null;e.forEach(function(a,o){if(!a&&i!==null){n.push(`M${i+t} ${r+t}h${o-i}v1H${i+t}z`),i=null;return}if(o===e.length-1){if(!a)return;i===null?n.push(`M${o+t},${r+t} h1v1H${o+t}z`):n.push(`M${i+t},${r+t} h${o+1-i}v1H${i+t}z`);return}a&&i===null&&(i=o)})}),n.join(``)}function jZ(e,t){return e.slice().map((e,n)=>n<t.y||n>=t.y+t.h?e:e.map((e,n)=>n<t.x||n>=t.x+t.w?e:!1))}function MZ(e,t,n,r){if(r==null)return null;let i=e.length+n*2,a=Math.floor(t*kZ),o=i/t,s=(r.width||a)*o,c=(r.height||a)*o,l=r.x==null?e.length/2-s/2:r.x*o,u=r.y==null?e.length/2-c/2:r.y*o,d=r.opacity==null?1:r.opacity,f=null;if(r.excavate){let e=Math.floor(l),t=Math.floor(u);f={x:e,y:t,w:Math.ceil(s+l-e),h:Math.ceil(c+u-t)}}let p=r.crossOrigin;return{x:l,y:u,h:c,w:s,excavation:f,opacity:d,crossOrigin:p}}function NZ(e,t){return t==null?e?DZ:OZ:Math.max(Math.floor(t),0)}function PZ({value:e,level:t,minVersion:n,includeMargin:r,marginSize:i,imageSettings:a,size:o,boostLevel:s}){let c=d.useMemo(()=>{let r=(Array.isArray(e)?e:[e]).reduce((e,t)=>(e.push(...yZ.QrSegment.makeSegments(t)),e),[]);return yZ.QrCode.encodeSegments(r,bZ[t],n,void 0,void 0,s)},[e,t,n,s]),{cells:l,margin:u,numCells:f,calculatedImageSettings:p}=d.useMemo(()=>{let e=c.getModules(),t=NZ(r,i);return{cells:e,margin:t,numCells:e.length+t*2,calculatedImageSettings:MZ(e,o,t,a)}},[c,o,a,r,i]);return{qrcode:c,margin:u,cells:l,numCells:f,calculatedImageSettings:p}}var FZ=function(){try{new Path2D().addPath(new Path2D)}catch{return!1}return!0}(),IZ=d.forwardRef(function(e,t){let n=e,{value:r,size:i=xZ,level:a=SZ,bgColor:o=CZ,fgColor:s=wZ,includeMargin:c=TZ,minVersion:l=EZ,boostLevel:u,marginSize:f,imageSettings:p}=n,m=_Z(n,[`value`,`size`,`level`,`bgColor`,`fgColor`,`includeMargin`,`minVersion`,`boostLevel`,`marginSize`,`imageSettings`]),{style:h}=m,g=_Z(m,[`style`]),_=p?.src,v=d.useRef(null),y=d.useRef(null),b=d.useCallback(e=>{v.current=e,typeof t==`function`?t(e):t&&(t.current=e)},[t]),[x,ee]=d.useState(!1),{margin:te,cells:S,numCells:ne,calculatedImageSettings:re}=PZ({value:r,level:a,minVersion:l,boostLevel:u,includeMargin:c,marginSize:f,imageSettings:p,size:i});d.useEffect(()=>{if(v.current!=null){let e=v.current,t=e.getContext(`2d`);if(!t)return;let n=S,r=y.current,a=re!=null&&r!==null&&r.complete&&r.naturalHeight!==0&&r.naturalWidth!==0;a&&re.excavation!=null&&(n=jZ(S,re.excavation));let c=window.devicePixelRatio||1;e.height=e.width=i*c;let l=i/ne*c;t.scale(l,l),t.fillStyle=o,t.fillRect(0,0,ne,ne),t.fillStyle=s,FZ?t.fill(new Path2D(AZ(n,te))):S.forEach(function(e,n){e.forEach(function(e,r){e&&t.fillRect(r+te,n+te,1,1)})}),re&&(t.globalAlpha=re.opacity),a&&t.drawImage(r,re.x+te,re.y+te,re.w,re.h)}}),d.useEffect(()=>{ee(!1)},[_]);let ie=gZ({height:i,width:i},h),ae=null;return _!=null&&(ae=d.createElement(`img`,{src:_,key:_,style:{display:`none`},onLoad:()=>{ee(!0)},ref:y,crossOrigin:re?.crossOrigin})),d.createElement(d.Fragment,null,d.createElement(`canvas`,gZ({style:ie,height:i,width:i,ref:b,role:`img`},g)),ae)});IZ.displayName=`QRCodeCanvas`;var LZ=d.forwardRef(function(e,t){let n=e,{value:r,size:i=xZ,level:a=SZ,bgColor:o=CZ,fgColor:s=wZ,includeMargin:c=TZ,minVersion:l=EZ,boostLevel:u,title:f,marginSize:p,imageSettings:m}=n,h=_Z(n,[`value`,`size`,`level`,`bgColor`,`fgColor`,`includeMargin`,`minVersion`,`boostLevel`,`title`,`marginSize`,`imageSettings`]),{margin:g,cells:_,numCells:v,calculatedImageSettings:y}=PZ({value:r,level:a,minVersion:l,boostLevel:u,includeMargin:c,marginSize:p,imageSettings:m,size:i}),b=_,x=null;m!=null&&y!=null&&(y.excavation!=null&&(b=jZ(_,y.excavation)),x=d.createElement(`image`,{href:m.src,height:y.h,width:y.w,x:y.x+g,y:y.y+g,preserveAspectRatio:`none`,opacity:y.opacity,crossOrigin:y.crossOrigin}));let ee=AZ(b,g);return d.createElement(`svg`,gZ({height:i,width:i,viewBox:`0 0 ${v} ${v}`,ref:t,role:`img`},h),!!f&&d.createElement(`title`,null,f),d.createElement(`path`,{fill:o,d:`M0,0 h${v}v${v}H0z`,shapeRendering:`crispEdges`}),d.createElement(`path`,{fill:s,d:ee,shapeRendering:`crispEdges`}),x)});LZ.displayName=`QRCodeSVG`;var RZ=`rounded-lg border border-border bg-surface overflow-hidden`,zZ=`border-b border-border px-3 sm:px-4 py-1.5 sm:py-2`,BZ=`p-2 sm:p-3 lg:p-4`,VZ=`flex min-w-0 flex-col gap-0.5 py-1.5 sm:flex-row sm:items-center`,HZ=`min-w-0 text-[11px] leading-tight text-foreground-subtle sm:w-32 sm:shrink-0 sm:pr-2`,UZ=`flex w-full min-w-0 items-center gap-1 sm:flex-1`,WZ=`min-w-0 break-all text-xs text-foreground sm:truncate`,GZ=`text-[10px] sm:text-[11px] font-semibold text-foreground uppercase tracking-wider`,KZ=`text-[10px] text-foreground-subtle`,qZ=`inline-flex items-center gap-1 rounded-full border px-1.5 py-0.5 text-[10px] font-medium transition-colors`,JZ=`border-primary/50 bg-primary/15 text-primary`,YZ=(0,d.forwardRef)(({className:e,...t},n)=>(0,K.jsx)(`label`,{ref:n,className:Z(`text-[10px] uppercase tracking-wider text-foreground-muted font-medium`,e),...t}));YZ.displayName=`Label`;var XZ=vK(``,{variants:{orientation:{horizontal:`h-px w-full bg-border-subtle`,vertical:`w-px h-full bg-border-subtle`}},defaultVariants:{orientation:`horizontal`}}),ZZ=(0,d.forwardRef)(({className:e,orientation:t,...n},r)=>(0,K.jsx)(`div`,{ref:r,role:`separator`,"aria-orientation":t??`horizontal`,className:Z(XZ({orientation:t}),e),...n}));ZZ.displayName=`Separator`;var QZ=(0,d.forwardRef)(({className:e,...t},n)=>(0,K.jsx)(`input`,{ref:n,type:`checkbox`,className:Z(`w-3.5 h-3.5 rounded-sm border border-border accent-primary`,e),...t}));QZ.displayName=`Checkbox`;var $Z=(0,d.forwardRef)(({className:e,checked:t,onCheckedChange:n,label:r,...i},a)=>(0,K.jsxs)(`button`,{ref:a,role:`switch`,"aria-checked":t,type:`button`,onClick:()=>n(!t),className:Z(`inline-flex items-center gap-2`,e),...i,children:[(0,K.jsx)(`span`,{className:Z(`w-8 h-4 rounded-full transition-colors`,t?`bg-primary`:`bg-surface-hover`),children:(0,K.jsx)(`span`,{className:Z(`block w-3.5 h-3.5 rounded-full bg-white transition-transform`,t?`translate-x-4`:`translate-x-0.5`)})}),r&&(0,K.jsx)(`span`,{className:`text-xs text-foreground`,children:r})]}));$Z.displayName=`Switch`,(0,d.createContext)(null);var eQ=(0,d.forwardRef)(({className:e,...t},n)=>(0,K.jsx)(`div`,{ref:n,className:Z(`overflow-auto [&::-webkit-scrollbar]:w-1 [&::-webkit-scrollbar-track]:bg-transparent [&::-webkit-scrollbar-thumb]:bg-surface-hover [&::-webkit-scrollbar-thumb]:rounded-full`,e),...t}));eQ.displayName=`ScrollArea`;function tQ({mode:e,columnCount:t,isNarrow:n}){return!n||e===`scroll`?`table`:e===`cards`?`cards`:t===0?`table`:t>=4?`cards`:`table`}function nQ({page:e,labels:t,onPageChange:n}){let r=e.page===0,i=e.page>=e.pageCount-1;return(0,K.jsxs)(`nav`,{"aria-label":t.navLabel,className:`flex items-center justify-end gap-2 pt-2`,children:[(0,K.jsx)(`span`,{"aria-live":`polite`,className:`text-[11px] tabular-nums text-foreground-subtle`,children:t.range(e.from,e.to,e.total)}),(0,K.jsx)(bK,{type:`button`,variant:`outline`,size:`sm`,icon:oe,"aria-label":t.previous,title:t.previous,disabled:r,onClick:()=>n(e.page-1)}),(0,K.jsx)(bK,{type:`button`,variant:`outline`,size:`sm`,icon:se,"aria-label":t.next,title:t.next,disabled:i,onClick:()=>n(e.page+1)})]})}function rQ(e,t,n){let r=Math.max(1,Math.floor(n)),i=e.length,a=Math.max(1,Math.ceil(i/r)),o=Math.min(Math.max(0,Math.floor(t)),a-1),s=o*r,c=e.slice(s,s+r);return{pageRows:c,page:o,pageCount:a,from:c.length===0?0:s+1,to:s+c.length,total:i}}var iQ={navLabel:`Table pages`,previous:`Previous page`,next:`Next page`,range:(e,t,n)=>`${e}–${t} of ${n}`},aQ=`__select`,oQ=`cursor-pointer align-middle`;function sQ({checked:e,indeterminate:t,disabled:n,label:r,onToggle:i}){let a=(0,d.useRef)(null);return(0,d.useEffect)(()=>{a.current!==null&&(a.current.indeterminate=t)},[t]),(0,K.jsx)(QZ,{ref:a,"aria-label":r,checked:e,disabled:n,onChange:i,className:oQ})}function cQ(e,t,n){let r=e.isSelectable??(()=>!0),i=t.filter(r).map(n),a=i.filter(t=>e.selected.has(t)).length,o=i.length>0&&a===i.length,s=()=>{let t=new Set(e.selected);for(let e of i)o?t.delete(e):t.add(e);e.onChange(t)},c=t=>{let n=new Set(e.selected);n.has(t)?n.delete(t):n.add(t),e.onChange(n)};return{key:aQ,width:`w-8`,headerRender:()=>(0,K.jsx)(sQ,{checked:o,indeterminate:a>0&&!o,disabled:i.length===0,label:e.pageLabel,onToggle:s}),render:t=>{if(!r(t))return null;let i=n(t);return(0,K.jsx)(QZ,{"aria-label":e.rowLabel(t),checked:e.selected.has(i),onChange:()=>c(i),onClick:e=>e.stopPropagation(),className:oQ})}}}function lQ({label:e,children:t,actions:n,elements:r=`plain`,className:i,valueClassName:a}){let o=r===`description`?`dt`:`span`,s=r===`description`?`dd`:`div`;return(0,K.jsxs)(`div`,{"data-setting-row":``,className:Z(VZ,i),children:[(0,K.jsx)(o,{"data-setting-row-label":``,className:HZ,children:e}),(0,K.jsxs)(s,{"data-setting-row-value":``,className:UZ,children:[(0,K.jsx)(`span`,{"data-setting-row-value-text":``,className:Z(WZ,a),children:t}),n!==void 0&&(0,K.jsx)(`span`,{className:`flex shrink-0 items-center gap-0.5`,children:n})]})]})}function uQ({label:e,active:t,dir:n,onSort:r}){return(0,K.jsxs)(`button`,{type:`button`,onClick:r,className:`group/sort inline-flex items-center gap-0.5 hover:text-foreground transition-colors`,children:[(0,K.jsx)(`span`,{children:e}),t?n===`asc`?(0,K.jsx)(ce,{className:`h-3 w-3 flex-shrink-0`}):(0,K.jsx)(ae,{className:`h-3 w-3 flex-shrink-0`}):(0,K.jsx)(ce,{className:Z(`h-3 w-3 flex-shrink-0 opacity-0 transition-opacity`,`group-hover/sort:opacity-30`)})]})}function dQ(e,t){return!e||t===null?`asc`:t===`asc`?`desc`:null}function fQ(e,t){let n=dQ(e!==null&&e.columnKey===t,e===null?null:e.dir);return n===null?null:{columnKey:t,dir:n}}function pQ(e,t){return typeof e==`number`&&typeof t==`number`?e-t:String(e).localeCompare(String(t))}function mQ(e,t,n){if(t===null)return[...e];let r=t.dir===`asc`?1:-1;return e.toSorted((e,t)=>{let i=n(e),a=n(t);return i===null||a===null?i===a?0:i===null?1:-1:r*pQ(i,a)})}function hQ(e,t){return e===null||e.columnKey!==t?`none`:e.dir===`asc`?`ascending`:`descending`}var gQ={left:`text-left`,right:`text-right`,center:`text-center`};function _Q({columns:e,rows:t,rowKey:n,onRowClick:r,minWidthPx:i=480,emptyMessage:a,className:o,bordered:s=!0,rowClassName:c,mobileMode:l=`scroll`,maxBodyHeight:u,fill:f=!1,defaultSort:p,sort:m,onSortChange:h,pageSize:g,page:_,onPageChange:v,paginationLabels:y=iQ,selection:b}){let x=hK(),[ee,te]=(0,d.useState)(p??null),[S,ne]=(0,d.useState)(0),re=m===void 0?ee:m,ie=e=>{m===void 0&&te(e),h?.(e)},ae=e=>{_===void 0&&ne(e),v?.(e)},oe=tQ({mode:l,columnCount:e.length,isNarrow:x}),se=f||u!==void 0,ce=f?`h-full min-h-0`:u??``,le=(0,d.useMemo)(()=>re===null?void 0:e.find(e=>e.key===re.columnKey&&e.sortValue!==void 0),[e,re]),ue=le?.sortValue,de=(0,d.useMemo)(()=>ue===void 0?t:mQ(t,re,ue),[t,re,ue]),C=le===void 0?null:re,w=g===void 0?null:rQ(de,_??S,g),fe=w===null?de:w.pageRows,pe=w!==null&&w.pageCount>1?(0,K.jsx)(nQ,{page:w,labels:y,onPageChange:ae}):null,me=b===void 0?e:[cQ(b,fe,e=>String(n?n(e,t.indexOf(e)):t.indexOf(e))),...e];if(t.length===0&&a)return(0,K.jsx)(`div`,{className:`rounded-lg ${s?`border border-border`:``} bg-surface px-3 py-4 text-xs text-foreground-subtle text-center ${o??``}`,children:a});if(t.length===0)return null;if(oe===`cards`)return(0,K.jsxs)(`div`,{className:f?`flex min-h-0 flex-1 flex-col ${o??``}`:o,children:[(0,K.jsx)(`div`,{className:`space-y-2 ${se?`${ce} overflow-y-auto`:``} ${f?`min-h-0 flex-1`:``}`,children:fe.map((e,t)=>(0,K.jsx)(vQ,{row:e,rowIndex:t,columns:me,bordered:s,onRowClick:r,rowClassName:c},n?n(e,t):t))}),pe]});let he=(0,K.jsx)(`div`,{className:[`rounded-lg`,s?`border border-border`:``,`bg-surface overflow-x-auto`,se?`${ce} overflow-y-auto`:``,f?`min-h-0 flex-1`:``,!f&&pe===null?o??``:``].filter(Boolean).join(` `),children:(0,K.jsxs)(`table`,{className:`w-full text-xs ${se?`border-separate border-spacing-0`:``}`,style:{minWidth:`${i}px`},children:[(0,K.jsx)(`thead`,{className:`bg-surface`,children:(0,K.jsx)(`tr`,{children:me.map(e=>{let t=e.align??`left`,n=e.nowrap??!0,r=e.sortValue!==void 0,i=C!==null&&C.columnKey===e.key;return(0,K.jsx)(`th`,{"aria-sort":r?hQ(C,e.key):void 0,title:r?void 0:e.notSortableReason,className:[`px-3 py-2 text-foreground-subtle font-medium bg-surface border-b border-border`,se?`sticky top-0 z-10`:``,gQ[t],n?`whitespace-nowrap`:``,e.width??``].filter(Boolean).join(` `),children:r?(0,K.jsx)(uQ,{label:e.headerRender?e.headerRender():e.header,active:i,dir:i&&C!==null?C.dir:`asc`,onSort:()=>ie(fQ(re,e.key))}):e.headerRender?e.headerRender():e.header},e.key)})})}),(0,K.jsx)(`tbody`,{children:fe.map((e,t)=>{let i=n?n(e,t):t,a=c?.(e,t)??``,o=r!==void 0;return(0,K.jsx)(`tr`,{onClick:o?()=>r(e,t):void 0,className:[o?`cursor-pointer hover:bg-primary/5`:`hover:bg-primary/5`,a].filter(Boolean).join(` `),children:me.map(n=>{let r=n.align??`left`,i=n.nowrap??!0;return(0,K.jsx)(`td`,{"data-cell":n.key,className:[`px-3 py-2 text-foreground border-b border-border`,gQ[r],i?`whitespace-nowrap`:``].filter(Boolean).join(` `),children:n.render(e,t)},n.key)})},i)})})]})});return pe===null?f?(0,K.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col ${o??``}`,children:he}):he:(0,K.jsxs)(`div`,{className:f?`flex min-h-0 flex-1 flex-col ${o??``}`:o,children:[he,pe]})}function vQ({row:e,rowIndex:t,columns:n,bordered:r,onRowClick:i,rowClassName:a}){let o=n.filter(e=>e.header!==void 0&&e.header!==``),s=n.filter(e=>e.header===void 0||e.header===``),c=i!==void 0,l=a?.(e,t)??``;return(0,K.jsxs)(`div`,{"data-data-table-card":``,onClick:c?()=>i(e,t):void 0,className:[`rounded-lg bg-surface px-3 py-1.5 divide-y divide-border-subtle`,r?`border border-border`:``,c?`cursor-pointer hover:bg-primary/5`:``,l].filter(Boolean).join(` `),children:[o.map(n=>(0,K.jsx)(lQ,{label:n.header,children:n.render(e,t)},n.key)),s.length>0&&(0,K.jsx)(`div`,{className:`flex flex-wrap items-center justify-end gap-2 py-1.5`,children:s.map(n=>(0,K.jsx)(`div`,{children:n.render(e,t)},n.key))})]})}function yQ({headingId:e,title:t,icon:n,actions:r,testId:i,children:a}){return(0,K.jsxs)(`section`,{"aria-labelledby":e,className:RZ,"data-testid":i,children:[(0,K.jsxs)(`header`,{className:`${zZ} flex min-h-9 flex-wrap items-center gap-2`,children:[n!==void 0&&(0,K.jsx)(n,{className:`h-3.5 w-3.5 shrink-0 text-foreground-subtle`,"aria-hidden":!0}),(0,K.jsx)(`h2`,{id:e,className:`${GZ} min-w-0 flex-1`,children:t}),r]}),a]})}var bQ=5*6e4,xQ=720*6e4,SQ=`camstack:turn-servers:v1`;function CQ(){let e=globalThis;try{return e.localStorage??null}catch{return null}}function wQ(e){if(typeof e!=`object`||!e)return!1;let t=e;return typeof t.fetchedAt!=`number`||!Array.isArray(t.servers)?!1:t.servers.every(e=>{if(typeof e!=`object`||!e)return!1;let t=e;return!(!(typeof t.urls==`string`||Array.isArray(t.urls)&&t.urls.every(e=>typeof e==`string`))||t.username!==void 0&&typeof t.username!=`string`||t.credential!==void 0&&typeof t.credential!=`string`)})}new class{freshTtlMs;staleCapMs;storage;now;storageKey;memory=new WeakMap;inflight=new WeakMap;constructor(e={}){this.freshTtlMs=e.freshTtlMs??bQ,this.staleCapMs=e.staleCapMs??xQ,this.storage=`storage`in e?e.storage??null:CQ(),this.now=e.now??(()=>Date.now()),this.storageKey=e.storageKey??SQ}async getOrFetch(e,t){let n=this.now(),r=this.memory.get(e)??this.readStorage();if(r){let i=n-r.fetchedAt;if(i<this.freshTtlMs)return r.servers;if(i<this.staleCapMs)return this.startFetch(e,t,r),r.servers}return this.startFetch(e,t,r)}startFetch(e,t,n){let r=this.inflight.get(e);if(r)return r;let i=(async()=>{try{let n=await t();if(n.length>0){let t={servers:n,fetchedAt:this.now()};this.memory.set(e,t),this.writeStorage(t)}return n}catch{return n?.servers}})().finally(()=>{this.inflight.delete(e)});return this.inflight.set(e,i),i}readStorage(){if(this.storage)try{let e=this.storage.getItem(this.storageKey);if(e===null)return;let t=JSON.parse(e);return wQ(t)?t:void 0}catch{return}}writeStorage(e){if(this.storage)try{this.storage.setItem(this.storageKey,JSON.stringify(e))}catch{}}};var TQ=[`day`,`ir`],EQ={day:`Daylight`,ir:`Night (IR)`,night:`Night`,dawn:`Dawn`,dusk:`Dusk`};function DQ(e){return EQ[e]??e}function OQ(e){let t=new Set(e.coveredConditions),n=TQ.map(e=>`${DQ(e)} ${t.has(e)?`✓`:`✗`}`),r=[...t].filter(e=>!TQ.some(t=>t===e));for(let e of r)n.push(`${DQ(e)} ✓`);let i=TQ.filter(e=>!t.has(e));if(i.length===0)return n.join(` · `);if(t.size===0)return`${n.join(` · `)} — nothing captured yet, so this scene is not watching.`;let a=i.map(e=>DQ(e).toLowerCase()).join(` and `);return e.onUncoveredCondition===`judge-anyway`?`${n.join(` · `)} — ${a} judged against the references you do have.`:`${n.join(` · `)} — optional; checks in ${a} are skipped.`}function kQ(e){if(e.suspendedCondition===null)return null;let t=DQ(e.suspendedCondition).toLowerCase();return`Paused — nothing was captured in ${t}, so checks are on hold until the light changes back. Capture ${t} if you want it watched around the clock.`}var AQ={"no-reference-for-condition":`can’t tell — nothing has been captured for this scene yet. Press “Capture daylight” to photograph what normal looks like.`,"view-shifted":`can’t tell — the camera view has moved since the reference was captured. Re-capture it.`,"no-vision-profile":`can’t tell — the vision model is unreachable, so the change is on hold.`,"encoder-model-changed":`can’t tell — the embedding model changed, so the stored references are unreadable. Re-capture them.`,"no-snapshot":`can’t tell — this camera did not return a frame.`};function jQ(e,t){if(e.states.length===0)return`Not armed yet — capture the initial state to start watching.`;if(e.verdict===`unknown`)return e.unavailable===null?`can’t tell right now.`:AQ[e.unavailable];let n=e.verdict===`diverged`?e.divergedAt:e.armedAt,r=n===null?``:` for ${FQ(Math.max(0,t-n))}`;if(e.latched)return e.verdict===`diverged`?`CHANGED${r} — press Reset when you have dealt with it.`:`Back to normal, but still flagged as changed${r}. Press Reset to clear it.`;let i=kQ(e);return i===null?e.verdict===`diverged`?`CHANGED${r}`:`Normal${r}`:i}function MQ(e){return e.states.length===0?{text:`Not armed`,tone:`unknown`}:e.latched?{text:`Changed`,tone:`alarm`}:e.suspendedCondition===null?e.verdict===`unknown`?{text:`Can’t tell`,tone:`unknown`}:e.verdict===`diverged`?{text:`Changed`,tone:`alarm`}:{text:`Normal`,tone:`ok`}:{text:`Paused`,tone:`unknown`}}var NQ=.4;function PQ(e){return e.width*e.height>NQ}function FQ(e){let t=Math.floor(e/1e3);if(t<60)return`${t}s`;let n=Math.floor(t/60);if(n<60)return`${n}m`;let r=Math.floor(n/60);return r<48?`${r}h`:`${Math.floor(r/24)}d`}function IQ({label:e,icon:t,title:n=`Confirm action`,description:r,confirmLabel:i,triggerVariant:a=`outline`,confirmVariant:o=`danger`,size:s=`sm`,disabled:c,className:l,action:u,onSuccess:f}){let[p,m]=(0,d.useState)(!1),[h,g]=(0,d.useState)(!1),[_,v]=(0,d.useState)(null),y=async()=>{v(null),g(!0);try{let e=await u();f?.(e),m(!1)}catch(e){v(e instanceof Error?e.message:String(e))}finally{g(!1)}};return(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(JX,{type:`button`,variant:a,size:s,disabled:c,onClick:()=>{v(null),m(!0)},className:l,children:[t&&(0,K.jsx)(t,{className:`h-3.5 w-3.5`}),e]}),(0,K.jsx)(iZ,{open:p,onOpenChange:e=>!h&&m(e),children:(0,K.jsxs)(oZ,{children:[(0,K.jsxs)(sZ,{children:[(0,K.jsxs)(lZ,{className:`flex items-center gap-2`,children:[(0,K.jsx)(Vt,{className:`h-4 w-4 text-amber-400`}),n]}),typeof r==`string`?(0,K.jsx)(uZ,{children:r}):r]}),_&&(0,K.jsx)(`div`,{className:Z(`mt-2 px-3 py-2 rounded border border-danger/40 bg-danger/10`,`text-xs text-danger`),children:_}),(0,K.jsxs)(cZ,{children:[(0,K.jsx)(JX,{type:`button`,variant:`ghost`,size:s,disabled:h,onClick:()=>m(!1),children:`Cancel`}),(0,K.jsxs)(JX,{type:`button`,variant:o,size:s,disabled:h,onClick:()=>{y()},children:[h&&(0,K.jsx)(We,{className:`h-3.5 w-3.5 animate-spin`}),i??e]})]})]})})]})}var LQ={face:`#a855f7`,plate:`#ec4899`};Object.freeze({...Object.fromEntries(Object.values(Nx).filter(e=>e.category===`detection`||e.kind===`motion`).map(e=>[e.kind,e.color])),...LQ});var RQ=[`f32le`,`pcmu`,`pcma`];function zQ(){let e=new Float32Array(256);for(let t=0;t<256;t++){let n=~t&255,r=n&128?-1:1,i=n>>4&7;e[t]=r*((8*(n&15)+132<<i)-132)/32768}return e}function BQ(){let e=new Float32Array(256);for(let t=0;t<256;t++){let n=t^85,r=n&128?1:-1,i=n>>4&7,a=n&15;e[t]=r*(i===0?16*a+8:16*a+264<<i-1)/32768}return e}zQ(),BQ();var VQ=F({url:k().min(1),hostNodeId:k().min(1),expiresAtMs:A().int().nonnegative(),declaredBytes:A().int().nonnegative().nullable()}),HQ=z([`high`,`mid`,`low`]);I([HQ,B(`auto`)]);var UQ=z([`pull-rtsp`,`pull-rtmp`,`pull-http`,`pull-flv`,`pull-rfc4571`,`push-annexb`,`derived`]),WQ=F({width:A().int().positive(),height:A().int().positive()});F({camStreamId:k().min(1),deviceId:A().int().nonnegative(),kind:UQ,url:k().optional(),codec:k().optional(),resolution:WQ.optional(),fps:A().positive().optional(),label:k().optional(),deviceFeatures:P(k()).optional(),autoEligible:j().optional(),profileHint:HQ.optional(),metadata:R(k(),M()).optional()});var GQ=z([`unassigned`,`idle`,`connecting`,`streaming`,`error`]);F({deviceId:A().int().nonnegative(),profile:HQ,brokerId:k(),sourceCamStreamId:k().nullable(),status:GQ,resolution:WQ.optional(),codec:k().optional(),preBufferSec:A().nonnegative().optional(),errorMessage:k().optional()}),F({id:k(),label:k(),protocol:z([`rtsp`,`rtmp`,`annexb`,`http-mjpeg`,`webrtc`,`custom`]),url:k().optional(),resolution:F({width:A(),height:A()}).readonly().optional(),fps:A().optional(),bitrate:A().optional(),codec:k().optional(),profileHint:HQ.optional()}),F({type:k(),url:k(),videoCodec:k().optional(),audioCodec:k().optional(),metadata:R(k(),M()).readonly().optional()}),F({shmId:k(),slot:A().int().nonnegative(),seq:A().int().nonnegative(),width:A().int().positive(),height:A().int().positive(),format:z([`jpeg`,`rgb`,`bgr`,`yuv420`,`gray`]),pts:A(),byteLength:A().int().nonnegative(),nodeId:k(),slotCount:A().int().positive()});var KQ=z(RQ);F({data:vl(Uint8Array),sampleRate:A().int().positive(),channels:A().int().positive(),timestamp:A(),format:KQ.optional()}),F({brokerId:k(),tag:k().optional(),accept:P(KQ).readonly().optional()}),F({subscriptionId:k()}),F({status:z([`idle`,`connecting`,`streaming`,`error`,`stopped`]),inputFps:A(),encodedSubscribers:A(),uptimeMs:A(),bitrateKbps:A(),idrIntervalMs:A(),codec:k().optional(),totalBytes:A(),packetCount:A(),rtspClients:A(),pipeClients:A(),preBufferSec:A(),preBufferMs:A(),preBufferPackets:A(),audio:F({codec:k(),sampleRate:A(),channels:A(),supported:j()}).nullable().optional(),audioMuted:j().optional(),audioMutedDropped:A().optional()}),F({profile:HQ,brokerId:k(),url:k(),mutedUrl:k(),enabled:j(),codec:k().optional(),resolution:WQ.optional()}),z([`new-session`,`step-up`]);var qQ=L(`kind`,[F({kind:B(`native`)}),F({kind:B(`browser`),startPath:k().startsWith(`/`)})]),JQ=`ecdsa-p256-sha256`,YQ=`camstack-device-cert-v1`;z([`login`,`renew`,`revoke`]);var XQ=z([`ios`,`android`,`web`,`other`]),ZQ=k().min(1).max(4096).regex(/^[A-Za-z0-9_-]+$/),QQ=k().min(1).max(16384),$Q=z([`revoked`,`unknown-credential`,`expired`,`bad-signature`,`nonce-invalid`,`rate-limited`,`invalid-certificate`,`superseded`,`user-gone`,`unavailable`,`code-invalid`,`self-enrollment-disabled`,`step-up-required`,`bad-public-key`]),e$=F({ok:B(!1),reason:$Q,definitive:j(),retryAfterSeconds:A().optional()});F({code:k().min(1).max(256),publicKeySpki:ZQ,deviceName:k().min(1).max(80).optional(),platform:XQ}),L(`ok`,[F({credentialId:k(),certPem:QQ,chainPem:QQ,notAfter:A(),user:F({id:k(),username:k()})}).extend({ok:B(!0)}),e$]),F({proof:k().min(1).max(512),publicKeySpki:ZQ,deviceName:k().min(1).max(80),platform:XQ}),F({proof:k(),expiresAt:A()}),L(`ok`,[F({nonce:k(),origin:k(),expiresAt:A(),signature:B(JQ)}).extend({ok:B(!0)}),e$]),F({certPem:QQ,nonce:k().min(1).max(256),signature:ZQ}),L(`ok`,[F({credentialId:k(),certPem:QQ,chainPem:QQ,notAfter:A()}).extend({ok:B(!0)}),e$]),L(`ok`,[F({ok:B(!0),credentialId:k(),sessionsEnded:A().int()}),e$]);var t$=z([`active`,`expired`,`revoked`]);F({id:k(),userId:k(),username:k().nullable(),deviceName:k(),platform:XQ,enrolledVia:z([`qr`,`self`]),fingerprint:k(),issuedAt:A(),expiresAt:A(),lastUsedAt:A().nullable(),lastUsedFrom:k().nullable(),revokedAt:A().nullable(),revokedBy:k().nullable(),status:t$}),F({code:k(),expiresAt:A(),enrollUrl:k(),hubOrigin:k().nullable(),hubOrigins:P(k())}),F({kind:B(`device-certificate`),id:B(`device-certificate`),label:k(),stage:B(`primary`),challengePath:B(`auth.getDeviceChallenge`),revokePath:B(`auth.revokeOwnDeviceCertificate`),enrollSelfPath:B(`auth.enrollSelf`),loginPath:B(`auth.loginWithDeviceCertificate`),renewPath:B(`auth.renewDeviceCertificate`),signature:B(JQ),messageVersion:B(YQ),clients:P(z([`native`,`web`])),app:qQ.nullable()});var n$={contact:`entryOpen`,binary:`on`,switch:`on`,motion:`detected`,flood:`flooded`,gas:`detected`,smoke:`detected`,"carbon-monoxide":`detected`,vibration:`detected`,tamper:`tampered`};F({field:k().min(1),on:B(`advance`)});var r$=F({id:k(),title:k(),description:k().optional(),style:z([`card`,`accordion`]).optional(),defaultCollapsed:j().optional(),columns:I([B(1),B(2),B(3),B(4)]).optional(),tab:k().optional(),location:z([`settings`,`top-tab`]).optional(),order:A().optional(),fields:P(Tc())});F({tabs:P(F({id:k(),label:k(),icon:k(),order:A().optional()})).optional(),sections:P(r$)}).nullable(),F({deviceId:A()}),F({deviceId:A()}),F({deviceId:A(),patch:R(k(),M())}),F({success:B(!0)}),F({deviceId:A()}),M().nullable();function Q(e,t,n){return{input:e,output:t,kind:n?.kind??`query`,...n?.auth===void 0?{}:{auth:n.auth},...n?.access===void 0?{}:{access:n.access},...n?.caller===void 0?{}:{caller:n.caller},timeoutMs:n?.timeoutMs}}function i$(e,t,n){return{...Q(e,t,n),providerOptional:!0}}var a$=function(e){return e.Camera=`camera`,e.Hub=`hub`,e.Light=`light`,e.Siren=`siren`,e.Switch=`switch`,e.Sensor=`sensor`,e.Thermostat=`thermostat`,e.Climate=`climate`,e.Button=`button`,e.EventEmitter=`event-emitter`,e.Update=`update`,e.Generic=`generic`,e.Notifier=`notifier`,e.Script=`script`,e.Automation=`automation`,e.Lock=`lock`,e.Cover=`cover`,e.Valve=`valve`,e.Humidifier=`humidifier`,e.WaterHeater=`water-heater`,e.Fan=`fan`,e.MediaPlayer=`media-player`,e.AlarmPanel=`alarm-panel`,e.Control=`control`,e.Presence=`presence`,e.Weather=`weather`,e.Vacuum=`vacuum`,e.LawnMower=`lawn-mower`,e.Container=`container`,e.Image=`image`,e.PetFeeder=`pet-feeder`,e}({}),o$=`accessibility.account.animals.arrows.brands.buildings.charts.communication.connectivity.cursors.design.development.devices.emoji.files.finance.food-beverage.gaming.home.layout.mail.math.medical.multimedia.nature.navigation.notifications.people.photography.science.seasons.security.shapes.shopping.social.sports.sustainability.text.time.tools.transportation.travel.weather`.split(`.`),s$=`a-arrow-down.a-arrow-up.a-large-small.accessibility.activity.air-vent.airplay.alarm-clock.alarm-clock-check.alarm-clock-minus.alarm-clock-off.alarm-clock-plus.alarm-smoke.album.align-center-horizontal.align-center-vertical.align-end-horizontal.align-end-vertical.align-horizontal-distribute-center.align-horizontal-distribute-end.align-horizontal-distribute-start.align-horizontal-justify-center.align-horizontal-justify-end.align-horizontal-justify-start.align-horizontal-space-around.align-horizontal-space-between.align-start-horizontal.align-start-vertical.align-vertical-distribute-center.align-vertical-distribute-end.align-vertical-distribute-start.align-vertical-justify-center.align-vertical-justify-end.align-vertical-justify-start.align-vertical-space-around.align-vertical-space-between.ambulance.ampersand.ampersands.amphora.anchor.angry.annoyed.antenna.anvil.aperture.app-window.app-window-mac.apple.archive.archive-restore.archive-x.armchair.arrow-big-down.arrow-big-down-dash.arrow-big-left.arrow-big-left-dash.arrow-big-right.arrow-big-right-dash.arrow-big-up.arrow-big-up-dash.arrow-down.arrow-down-0-1.arrow-down-1-0.arrow-down-a-z.arrow-down-from-line.arrow-down-left.arrow-down-narrow-wide.arrow-down-right.arrow-down-to-dot.arrow-down-to-line.arrow-down-up.arrow-down-wide-narrow.arrow-down-z-a.arrow-left.arrow-left-from-line.arrow-left-right.arrow-left-to-line.arrow-right.arrow-right-from-line.arrow-right-left.arrow-right-to-line.arrow-up.arrow-up-0-1.arrow-up-1-0.arrow-up-a-z.arrow-up-down.arrow-up-from-dot.arrow-up-from-line.arrow-up-left.arrow-up-narrow-wide.arrow-up-right.arrow-up-to-line.arrow-up-wide-narrow.arrow-up-z-a.arrows-up-from-line.asterisk.at-sign.atom.audio-lines.audio-waveform.award.axe.axis-3d.baby.backpack.badge.badge-alert.badge-cent.badge-check.badge-dollar-sign.badge-euro.badge-indian-rupee.badge-info.badge-japanese-yen.badge-minus.badge-percent.badge-plus.badge-pound-sterling.badge-question-mark.badge-russian-ruble.badge-swiss-franc.badge-turkish-lira.badge-x.baggage-claim.balloon.ban.banana.bandage.banknote.banknote-arrow-down.banknote-arrow-up.banknote-x.barcode.barrel.baseline.bath.battery.battery-charging.battery-full.battery-low.battery-medium.battery-plus.battery-warning.beaker.bean.bean-off.bed.bed-double.bed-single.beef.beer.beer-off.bell.bell-dot.bell-electric.bell-minus.bell-off.bell-plus.bell-ring.between-horizontal-end.between-horizontal-start.between-vertical-end.between-vertical-start.biceps-flexed.bike.binary.binoculars.biohazard.bird.birdhouse.bitcoin.blend.blinds.blocks.bluetooth.bluetooth-connected.bluetooth-off.bluetooth-searching.bold.bolt.bomb.bone.book.book-a.book-alert.book-audio.book-check.book-copy.book-dashed.book-down.book-headphones.book-heart.book-image.book-key.book-lock.book-marked.book-minus.book-open.book-open-check.book-open-text.book-plus.book-search.book-text.book-type.book-up.book-up-2.book-user.book-x.bookmark.bookmark-check.bookmark-minus.bookmark-plus.bookmark-x.boom-box.bot.bot-message-square.bot-off.bottle-wine.bow-arrow.box.boxes.braces.brackets.brain.brain-circuit.brain-cog.brick-wall.brick-wall-fire.brick-wall-shield.briefcase.briefcase-business.briefcase-conveyor-belt.briefcase-medical.bring-to-front.brush.brush-cleaning.bubbles.bug.bug-off.bug-play.building.building-2.bus.bus-front.cable.cable-car.cake.cake-slice.calculator.calendar.calendar-1.calendar-arrow-down.calendar-arrow-up.calendar-check.calendar-check-2.calendar-clock.calendar-cog.calendar-days.calendar-fold.calendar-heart.calendar-minus.calendar-minus-2.calendar-off.calendar-plus.calendar-plus-2.calendar-range.calendar-search.calendar-sync.calendar-x.calendar-x-2.calendars.camera.camera-off.candy.candy-cane.candy-off.cannabis.cannabis-off.captions.captions-off.car.car-front.car-taxi-front.caravan.card-sim.carrot.case-lower.case-sensitive.case-upper.cassette-tape.cast.castle.cat.cctv.chart-area.chart-bar.chart-bar-big.chart-bar-decreasing.chart-bar-increasing.chart-bar-stacked.chart-candlestick.chart-column.chart-column-big.chart-column-decreasing.chart-column-increasing.chart-column-stacked.chart-gantt.chart-line.chart-network.chart-no-axes-column.chart-no-axes-column-decreasing.chart-no-axes-column-increasing.chart-no-axes-combined.chart-no-axes-gantt.chart-pie.chart-scatter.chart-spline.check.check-check.check-line.chef-hat.cherry.chess-bishop.chess-king.chess-knight.chess-pawn.chess-queen.chess-rook.chevron-down.chevron-first.chevron-last.chevron-left.chevron-right.chevron-up.chevrons-down.chevrons-down-up.chevrons-left.chevrons-left-right.chevrons-left-right-ellipsis.chevrons-right.chevrons-right-left.chevrons-up.chevrons-up-down.church.cigarette.cigarette-off.circle.circle-alert.circle-arrow-down.circle-arrow-left.circle-arrow-out-down-left.circle-arrow-out-down-right.circle-arrow-out-up-left.circle-arrow-out-up-right.circle-arrow-right.circle-arrow-up.circle-check.circle-check-big.circle-chevron-down.circle-chevron-left.circle-chevron-right.circle-chevron-up.circle-dashed.circle-divide.circle-dollar-sign.circle-dot.circle-dot-dashed.circle-ellipsis.circle-equal.circle-fading-arrow-up.circle-fading-plus.circle-gauge.circle-minus.circle-off.circle-parking.circle-parking-off.circle-pause.circle-percent.circle-pile.circle-play.circle-plus.circle-pound-sterling.circle-power.circle-question-mark.circle-slash.circle-slash-2.circle-small.circle-star.circle-stop.circle-user.circle-user-round.circle-x.circuit-board.citrus.clapperboard.clipboard.clipboard-check.clipboard-clock.clipboard-copy.clipboard-list.clipboard-minus.clipboard-paste.clipboard-pen.clipboard-pen-line.clipboard-plus.clipboard-type.clipboard-x.clock.clock-1.clock-10.clock-11.clock-12.clock-2.clock-3.clock-4.clock-5.clock-6.clock-7.clock-8.clock-9.clock-alert.clock-arrow-down.clock-arrow-up.clock-check.clock-fading.clock-plus.closed-caption.cloud.cloud-alert.cloud-backup.cloud-check.cloud-cog.cloud-download.cloud-drizzle.cloud-fog.cloud-hail.cloud-lightning.cloud-moon.cloud-moon-rain.cloud-off.cloud-rain.cloud-rain-wind.cloud-snow.cloud-sun.cloud-sun-rain.cloud-sync.cloud-upload.cloudy.clover.club.code.code-xml.coffee.cog.coins.columns-2.columns-3.columns-3-cog.columns-4.combine.command.compass.component.computer.concierge-bell.cone.construction.contact.contact-round.container.contrast.cookie.cooking-pot.copy.copy-check.copy-minus.copy-plus.copy-slash.copy-x.copyleft.copyright.corner-down-left.corner-down-right.corner-left-down.corner-left-up.corner-right-down.corner-right-up.corner-up-left.corner-up-right.cpu.creative-commons.credit-card.croissant.crop.cross.crosshair.crown.cuboid.cup-soda.currency.cylinder.dam.database.database-backup.database-search.database-zap.decimals-arrow-left.decimals-arrow-right.delete.dessert.diameter.diamond.diamond-minus.diamond-percent.diamond-plus.dice-1.dice-2.dice-3.dice-4.dice-5.dice-6.dices.diff.disc.disc-2.disc-3.disc-album.divide.dna.dna-off.dock.dog.dollar-sign.donut.door-closed.door-closed-locked.door-open.dot.download.drafting-compass.drama.drill.drone.droplet.droplet-off.droplets.drum.drumstick.dumbbell.ear.ear-off.earth.earth-lock.eclipse.egg.egg-fried.egg-off.ellipsis.ellipsis-vertical.equal.equal-approximately.equal-not.eraser.ethernet-port.euro.ev-charger.expand.external-link.eye.eye-closed.eye-off.factory.fan.fast-forward.feather.fence.ferris-wheel.file.file-archive.file-axis-3d.file-badge.file-box.file-braces.file-braces-corner.file-chart-column.file-chart-column-increasing.file-chart-line.file-chart-pie.file-check.file-check-corner.file-clock.file-code.file-code-corner.file-cog.file-diff.file-digit.file-down.file-exclamation-point.file-headphone.file-heart.file-image.file-input.file-key.file-lock.file-minus.file-minus-corner.file-music.file-output.file-pen.file-pen-line.file-play.file-plus.file-plus-corner.file-question-mark.file-scan.file-search.file-search-corner.file-signal.file-sliders.file-spreadsheet.file-stack.file-symlink.file-terminal.file-text.file-type.file-type-corner.file-up.file-user.file-video-camera.file-volume.file-x.file-x-corner.files.film.fingerprint-pattern.fire-extinguisher.fish.fish-off.fish-symbol.fishing-hook.fishing-rod.flag.flag-off.flag-triangle-left.flag-triangle-right.flame.flame-kindling.flashlight.flashlight-off.flask-conical.flask-conical-off.flask-round.flip-horizontal-2.flip-vertical-2.flower.flower-2.focus.fold-horizontal.fold-vertical.folder.folder-archive.folder-check.folder-clock.folder-closed.folder-code.folder-cog.folder-dot.folder-down.folder-git.folder-git-2.folder-heart.folder-input.folder-kanban.folder-key.folder-lock.folder-minus.folder-open.folder-open-dot.folder-output.folder-pen.folder-plus.folder-root.folder-search.folder-search-2.folder-symlink.folder-sync.folder-tree.folder-up.folder-x.folders.footprints.forklift.form.forward.frame.frown.fuel.fullscreen.funnel.funnel-plus.funnel-x.gallery-horizontal.gallery-horizontal-end.gallery-thumbnails.gallery-vertical.gallery-vertical-end.gamepad.gamepad-2.gamepad-directional.gauge.gavel.gem.georgian-lari.ghost.gift.git-branch.git-branch-minus.git-branch-plus.git-commit-horizontal.git-commit-vertical.git-compare.git-compare-arrows.git-fork.git-graph.git-merge.git-merge-conflict.git-pull-request.git-pull-request-arrow.git-pull-request-closed.git-pull-request-create.git-pull-request-create-arrow.git-pull-request-draft.glass-water.glasses.globe.globe-lock.globe-off.globe-x.goal.gpu.graduation-cap.grape.grid-2x2.grid-2x2-check.grid-2x2-plus.grid-2x2-x.grid-3x2.grid-3x3.grip.grip-horizontal.grip-vertical.group.guitar.ham.hamburger.hammer.hand.hand-coins.hand-fist.hand-grab.hand-heart.hand-helping.hand-metal.hand-platter.handbag.handshake.hard-drive.hard-drive-download.hard-drive-upload.hard-hat.hash.hat-glasses.haze.hd.hdmi-port.heading.heading-1.heading-2.heading-3.heading-4.heading-5.heading-6.headphone-off.headphones.headset.heart.heart-crack.heart-handshake.heart-minus.heart-off.heart-plus.heart-pulse.heater.helicopter.hexagon.highlighter.history.hop.hop-off.hospital.hotel.hourglass.house.house-heart.house-plug.house-plus.house-wifi.ice-cream-bowl.ice-cream-cone.id-card.id-card-lanyard.image.image-down.image-minus.image-off.image-play.image-plus.image-up.image-upscale.images.import.inbox.indian-rupee.infinity.info.inspection-panel.italic.iteration-ccw.iteration-cw.japanese-yen.joystick.kanban.kayak.key.key-round.key-square.keyboard.keyboard-music.keyboard-off.lamp.lamp-ceiling.lamp-desk.lamp-floor.lamp-wall-down.lamp-wall-up.land-plot.landmark.languages.laptop.laptop-minimal.laptop-minimal-check.lasso.lasso-select.laugh.layers.layers-2.layers-plus.layout-dashboard.layout-grid.layout-list.layout-panel-left.layout-panel-top.layout-template.leaf.leafy-green.lectern.lens-concave.lens-convex.library.library-big.life-buoy.ligature.lightbulb.lightbulb-off.line-dot-right-horizontal.line-squiggle.link.link-2.link-2-off.list.list-check.list-checks.list-chevrons-down-up.list-chevrons-up-down.list-collapse.list-end.list-filter.list-filter-plus.list-indent-decrease.list-indent-increase.list-minus.list-music.list-ordered.list-plus.list-restart.list-start.list-todo.list-tree.list-video.list-x.loader.loader-circle.loader-pinwheel.locate.locate-fixed.locate-off.lock.lock-keyhole.lock-keyhole-open.lock-open.log-in.log-out.logs.lollipop.luggage.magnet.mail.mail-check.mail-minus.mail-open.mail-plus.mail-question-mark.mail-search.mail-warning.mail-x.mailbox.mails.map.map-minus.map-pin.map-pin-check.map-pin-check-inside.map-pin-house.map-pin-minus.map-pin-minus-inside.map-pin-off.map-pin-pen.map-pin-plus.map-pin-plus-inside.map-pin-x.map-pin-x-inside.map-pinned.map-plus.mars.mars-stroke.martini.maximize.maximize-2.medal.megaphone.megaphone-off.meh.memory-stick.menu.merge.message-circle.message-circle-check.message-circle-code.message-circle-dashed.message-circle-heart.message-circle-more.message-circle-off.message-circle-plus.message-circle-question-mark.message-circle-reply.message-circle-warning.message-circle-x.message-square.message-square-check.message-square-code.message-square-dashed.message-square-diff.message-square-dot.message-square-heart.message-square-lock.message-square-more.message-square-off.message-square-plus.message-square-quote.message-square-reply.message-square-share.message-square-text.message-square-warning.message-square-x.messages-square.metronome.mic.mic-off.mic-vocal.microchip.microscope.microwave.milestone.milk.milk-off.minimize.minimize-2.minus.mirror-rectangular.mirror-round.monitor.monitor-check.monitor-cloud.monitor-cog.monitor-dot.monitor-down.monitor-off.monitor-pause.monitor-play.monitor-smartphone.monitor-speaker.monitor-stop.monitor-up.monitor-x.moon.moon-star.motorbike.mountain.mountain-snow.mouse.mouse-left.mouse-off.mouse-pointer.mouse-pointer-2.mouse-pointer-2-off.mouse-pointer-ban.mouse-pointer-click.mouse-right.move.move-3d.move-diagonal.move-diagonal-2.move-down.move-down-left.move-down-right.move-horizontal.move-left.move-right.move-up.move-up-left.move-up-right.move-vertical.music.music-2.music-3.music-4.navigation.navigation-2.navigation-2-off.navigation-off.network.newspaper.nfc.non-binary.notebook.notebook-pen.notebook-tabs.notebook-text.notepad-text.notepad-text-dashed.nut.nut-off.octagon.octagon-alert.octagon-minus.octagon-pause.octagon-x.omega.option.orbit.origami.package.package-2.package-check.package-minus.package-open.package-plus.package-search.package-x.paint-bucket.paint-roller.paintbrush.paintbrush-vertical.palette.panda.panel-bottom.panel-bottom-close.panel-bottom-dashed.panel-bottom-open.panel-left.panel-left-close.panel-left-dashed.panel-left-open.panel-left-right-dashed.panel-right.panel-right-close.panel-right-dashed.panel-right-open.panel-top.panel-top-bottom-dashed.panel-top-close.panel-top-dashed.panel-top-open.panels-left-bottom.panels-right-bottom.panels-top-left.paperclip.parentheses.parking-meter.party-popper.pause.paw-print.pc-case.pen.pen-line.pen-off.pen-tool.pencil.pencil-line.pencil-off.pencil-ruler.pentagon.percent.person-standing.philippine-peso.phone.phone-call.phone-forwarded.phone-incoming.phone-missed.phone-off.phone-outgoing.pi.piano.pickaxe.picture-in-picture.picture-in-picture-2.piggy-bank.pilcrow.pilcrow-left.pilcrow-right.pill.pill-bottle.pin.pin-off.pipette.pizza.plane.plane-landing.plane-takeoff.play.plug.plug-2.plug-zap.plus.pocket-knife.podcast.pointer.pointer-off.popcorn.popsicle.pound-sterling.power.power-off.presentation.printer.printer-check.printer-x.projector.proportions.puzzle.pyramid.qr-code.quote.rabbit.radar.radiation.radical.radio.radio-receiver.radio-tower.radius.rainbow.rat.ratio.receipt.receipt-cent.receipt-euro.receipt-indian-rupee.receipt-japanese-yen.receipt-pound-sterling.receipt-russian-ruble.receipt-swiss-franc.receipt-text.receipt-turkish-lira.rectangle-circle.rectangle-ellipsis.rectangle-goggles.rectangle-horizontal.rectangle-vertical.recycle.redo.redo-2.redo-dot.refresh-ccw.refresh-ccw-dot.refresh-cw.refresh-cw-off.refrigerator.regex.remove-formatting.repeat.repeat-1.repeat-2.replace.replace-all.reply.reply-all.rewind.ribbon.rocket.rocking-chair.roller-coaster.rose.rotate-3d.rotate-ccw.rotate-ccw-key.rotate-ccw-square.rotate-cw.rotate-cw-square.route.route-off.router.rows-2.rows-3.rows-4.rss.ruler.ruler-dimension-line.russian-ruble.sailboat.salad.sandwich.satellite.satellite-dish.saudi-riyal.save.save-all.save-off.scale.scale-3d.scaling.scan.scan-barcode.scan-eye.scan-face.scan-heart.scan-line.scan-qr-code.scan-search.scan-text.school.scissors.scissors-line-dashed.scooter.screen-share.screen-share-off.scroll.scroll-text.search.search-alert.search-check.search-code.search-slash.search-x.section.send.send-horizontal.send-to-back.separator-horizontal.separator-vertical.server.server-cog.server-crash.server-off.settings.settings-2.shapes.share.share-2.sheet.shell.shelving-unit.shield.shield-alert.shield-ban.shield-check.shield-ellipsis.shield-half.shield-minus.shield-off.shield-plus.shield-question-mark.shield-user.shield-x.ship.ship-wheel.shirt.shopping-bag.shopping-basket.shopping-cart.shovel.shower-head.shredder.shrimp.shrink.shrub.shuffle.sigma.signal.signal-high.signal-low.signal-medium.signal-zero.signature.signpost.signpost-big.siren.skip-back.skip-forward.skull.slash.slice.sliders-horizontal.sliders-vertical.smartphone.smartphone-charging.smartphone-nfc.smile.smile-plus.snail.snowflake.soap-dispenser-droplet.sofa.solar-panel.soup.space.spade.sparkle.sparkles.speaker.speech.spell-check.spell-check-2.spline.spline-pointer.split.spool.spotlight.spray-can.sprout.square.square-activity.square-arrow-down.square-arrow-down-left.square-arrow-down-right.square-arrow-left.square-arrow-out-down-left.square-arrow-out-down-right.square-arrow-out-up-left.square-arrow-out-up-right.square-arrow-right.square-arrow-right-enter.square-arrow-right-exit.square-arrow-up.square-arrow-up-left.square-arrow-up-right.square-asterisk.square-bottom-dashed-scissors.square-centerline-dashed-horizontal.square-centerline-dashed-vertical.square-chart-gantt.square-check.square-check-big.square-chevron-down.square-chevron-left.square-chevron-right.square-chevron-up.square-code.square-dashed.square-dashed-bottom.square-dashed-bottom-code.square-dashed-kanban.square-dashed-mouse-pointer.square-dashed-top-solid.square-divide.square-dot.square-equal.square-function.square-kanban.square-library.square-m.square-menu.square-minus.square-mouse-pointer.square-parking.square-parking-off.square-pause.square-pen.square-percent.square-pi.square-pilcrow.square-play.square-plus.square-power.square-radical.square-round-corner.square-scissors.square-sigma.square-slash.square-split-horizontal.square-split-vertical.square-square.square-stack.square-star.square-stop.square-terminal.square-user.square-user-round.square-x.squares-exclude.squares-intersect.squares-subtract.squares-unite.squircle.squircle-dashed.squirrel.stamp.star.star-half.star-off.step-back.step-forward.stethoscope.sticker.sticky-note.stone.store.stretch-horizontal.stretch-vertical.strikethrough.subscript.sun.sun-dim.sun-medium.sun-moon.sun-snow.sunrise.sunset.superscript.swatch-book.swiss-franc.switch-camera.sword.swords.syringe.table.table-2.table-cells-merge.table-cells-split.table-columns-split.table-of-contents.table-properties.table-rows-split.tablet.tablet-smartphone.tablets.tag.tags.tally-1.tally-2.tally-3.tally-4.tally-5.tangent.target.telescope.tent.tent-tree.terminal.test-tube.test-tube-diagonal.test-tubes.text-align-center.text-align-end.text-align-justify.text-align-start.text-cursor.text-cursor-input.text-initial.text-quote.text-search.text-select.text-wrap.theater.thermometer.thermometer-snowflake.thermometer-sun.thumbs-down.thumbs-up.ticket.ticket-check.ticket-minus.ticket-percent.ticket-plus.ticket-slash.ticket-x.tickets.tickets-plane.timer.timer-off.timer-reset.toggle-left.toggle-right.toilet.tool-case.toolbox.tornado.torus.touchpad.touchpad-off.towel-rack.tower-control.toy-brick.tractor.traffic-cone.train-front.train-front-tunnel.train-track.tram-front.transgender.trash.trash-2.tree-deciduous.tree-palm.tree-pine.trees.trending-down.trending-up.trending-up-down.triangle.triangle-alert.triangle-dashed.triangle-right.trophy.truck.truck-electric.turkish-lira.turntable.turtle.tv.tv-minimal.tv-minimal-play.type.type-outline.umbrella.umbrella-off.underline.undo.undo-2.undo-dot.unfold-horizontal.unfold-vertical.ungroup.university.unlink.unlink-2.unplug.upload.usb.user.user-check.user-cog.user-key.user-lock.user-minus.user-pen.user-plus.user-round.user-round-check.user-round-cog.user-round-key.user-round-minus.user-round-pen.user-round-plus.user-round-search.user-round-x.user-search.user-star.user-x.users.users-round.utensils.utensils-crossed.utility-pole.van.variable.vault.vector-square.vegan.venetian-mask.venus.venus-and-mars.vibrate.vibrate-off.video.video-off.videotape.view.voicemail.volleyball.volume.volume-1.volume-2.volume-off.volume-x.vote.wallet.wallet-cards.wallet-minimal.wallpaper.wand.wand-sparkles.warehouse.washing-machine.watch.waves.waves-arrow-down.waves-arrow-up.waves-ladder.waypoints.webcam.webhook.webhook-off.weight.weight-tilde.wheat.wheat-off.whole-word.wifi.wifi-cog.wifi-high.wifi-low.wifi-off.wifi-pen.wifi-sync.wifi-zero.wind.wind-arrow-down.wine.wine-off.workflow.worm.wrench.x.x-line-top.zap.zap-off.zodiac-aquarius.zodiac-aries.zodiac-cancer.zodiac-capricorn.zodiac-gemini.zodiac-leo.zodiac-libra.zodiac-ophiuchus.zodiac-pisces.zodiac-sagittarius.zodiac-scorpio.zodiac-taurus.zodiac-virgo.zoom-in.zoom-out`.split(`.`),c$=[[[37,10],[`letter`,`font size`,`text`,`formatting`,`smaller`]],[[37,10],[`letter`,`font size`,`text`,`formatting`,`larger`,`bigger`]],[[37,10],[`letter`,`font size`,`text`,`formatting`]],[[0,22],[`disability`,`disabled`,`dda`,`wheelchair`]],[[22,1,34,29,23],`pulse.action.motion.movement.exercise.fitness.healthcare.heart rate monitor.vital signs.vitals.emergency room.er.intensive care.hospital.defibrillator.earthquake.siesmic.magnitude.richter scale.aftershock.tremor.shockwave.audio.waveform.synthesizer.synthesiser.music`.split(`.`)],[[18],[`air conditioner`,`ac`,`central air`,`cooling`,`climate-control`]],[[23,8,12,4],[`stream`,`cast`,`mirroring`,`screen`,`monitor`,`macos`,`osx`]],[[12,26,38],[`morning`]],[[12,26,38],[`done`,`todo`,`tick`,`complete`,`task`]],[[12,26,38],[`remove`]],[[12,26,38],[`morning`,`turn-off`]],[[12,26,38],[`add`]],[[18,12,41],[`fire`,`alert`,`warning`,`detector`,`carbon monoxide`,`safety`,`equipment`,`amenities`]],[[28,23],[`photo`,`book`]],[[19],[`items`,`flex`,`justify`]],[[19],[`items`,`flex`,`justify`]],[[19],[`items`,`bottom`,`flex`,`justify`]],[[19],[`items`,`right`,`flex`,`justify`]],[[19],[`items`,`flex`,`justify`,`space`,`evenly`,`around`]],[[19],[`right`,`items`,`flex`,`justify`]],[[19],[`left`,`items`,`flex`,`justify`]],[[19],[`center`,`items`,`flex`,`justify`]],[[19],[`right`,`items`,`flex`,`justify`]],[[19],[`left`,`items`,`flex`,`justify`]],[[19],[`center`,`items`,`flex`,`justify`,`distribute`,`between`]],[[19],[`around`,`items`,`bottom`,`flex`,`justify`]],[[19],[`top`,`items`,`flex`,`justify`]],[[19],[`left`,`items`,`flex`,`justify`]],[[19],[`items`,`flex`,`justify`,`space`,`evenly`,`around`]],[[19],[`bottom`,`items`,`flex`,`justify`]],[[19],[`top`,`items`,`flex`,`justify`]],[[19],[`center`,`items`,`flex`,`justify`,`distribute`,`between`]],[[19],[`bottom`,`items`,`flex`,`justify`,`distribute`,`between`]],[[19],[`top`,`items`,`flex`,`justify`,`distribute`,`between`]],[[19],[`center`,`items`,`flex`,`justify`,`distribute`,`between`]],[[19],[`center`,`items`,`flex`,`justify`,`distribute`,`between`]],[[22,40],[`ambulance`,`emergency`,`medical`,`vehicle`,`siren`,`healthcare`,`transportation`,`rescue`,`urgent`,`first aid`]],[[37,11],[`and`,`typography`,`operator`,`join`,`concatenate`,`code`,`&`]],[[37,11],[`and`,`operator`,`then`,`code`,`&&`]],[[16,17],[`pottery`,`artifact`,`artefact`,`vase`,`ceramics`,`clay`,`archaeology`,`museum`,`wine`,`oil`]],[[40,37],[`ship`]],[[13],[`emoji`,`anger`,`face`,`emotion`]],[[13],[`emoji`,`nuisance`,`face`,`emotion`]],[[12,23,7],[`signal`,`connection`,`connectivity`,`tv`,`television`,`broadcast`,`live`,`frequency`,`tune`,`scan`,`channels`,`aerial`,`receiver`,`transmission`,`transducer`,`terrestrial`,`satellite`,`cable`]],[[5,39,17],[`metal`,`iron`,`alloy`,`materials`,`heavy`,`weight`,`blacksmith`,`forge`,`acme`]],[[28],[`camera`,`photo`,`pictures`,`shutter`,`exposure`]],[[19,10,11,14],[`application`,`menu bar`,`pane`,`executable`]],[[19,10,11,14],[`application`,`menu bar`,`pane`,`preferences`,`macos`,`osx`,`executable`]],[[16],[`fruit`,`food`,`healthy`,`snack`,`nutrition`,`fresh`,`produce`,`grocery`,`organic`,`harvest`,`vitamin`,`red`,`green`,`juicy`,`sweet`,`tart`,`bite`,`orchard`,`plant`,`core`,`raw`,`diet`]],[[14,20],[`index`,`backup`,`box`,`storage`,`records`]],[[14,20],[`unarchive`,`index`,`backup`,`box`,`storage`,`records`]],[[14,20],[`index`,`backup`,`box`,`storage`,`records`,`junk`]],[[18],[`sofa`,`furniture`,`leisure`,`lounge`,`loveseat`,`couch`]],[[3,17],[`backwards`,`reverse`,`direction`,`south`]],[[3,17,14],[`backwards`,`reverse`,`slow`,`direction`,`south`,`download`]],[[3,17],[`previous`,`back`,`direction`,`west`,`indicate turn`]],[[3,17],[`previous`,`back`,`direction`,`west`,`turn`,`corner`]],[[3,17],[`next`,`forward`,`direction`,`east`,`indicate turn`]],[[3,17],[`next`,`forward`,`direction`,`east`,`turn`,`corner`]],[[3,37,11,17],[`shift`,`keyboard`,`button`,`mac`,`capitalize`,`capitalise`,`forward`,`direction`,`north`]],[[3,37,11,17],[`caps lock`,`capitals`,`keyboard`,`button`,`mac`,`forward`,`direction`,`north`,`faster`,`speed`,`boost`]],[[3],[`backwards`,`reverse`,`direction`,`south`]],[[37,19,3],[`filter`,`sort`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`,`numerical`]],[[37,19,3],[`filter`,`sort`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`,`numerical`]],[[37,19,3],[`filter`,`sort`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`,`alphabetical`]],[[3,14],[`backwards`,`reverse`,`direction`,`south`,`download`,`expand`,`fold`,`vertical`]],[[3],[`direction`,`south-west`,`diagonal`]],[[37,19,3],[`filter`,`sort`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`]],[[3],[`direction`,`south-east`,`diagonal`]],[[3],[`direction`,`south`,`waypoint`,`location`,`step`,`into`]],[[3,14,11],[`behind`,`direction`,`south`,`download`,`save`,`git`,`version control`,`pull`,`collapse`,`fold`,`vertical`]],[[3],[`bidirectional`,`two-way`,`2-way`,`swap`,`switch`,`network`,`traffic`,`flow`,`mobile data`,`internet`,`sort`,`reorder`,`move`]],[[37,19,3],[`filter`,`sort`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`]],[[37,19,3],[`filter`,`sort`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`,`alphabetical`,`reverse`]],[[3],[`previous`,`back`,`direction`,`west`,`<-`]],[[3],[`previous`,`back`,`direction`,`west`,`expand`,`fold`,`horizontal`,`<-|`]],[[3],[`bidirectional`,`two-way`,`2-way`,`swap`,`switch`,`transaction`,`reorder`,`move`,`<-`,`->`]],[[3],[`previous`,`back`,`direction`,`west`,`collapse`,`fold`,`horizontal`,`|<-`]],[[3],[`forward`,`next`,`direction`,`east`,`->`]],[[3],[`next`,`forward`,`direction`,`east`,`export`,`expand`,`fold`,`horizontal`,`|->`]],[[3],[`bidirectional`,`two-way`,`2-way`,`swap`,`switch`,`transaction`,`reorder`,`move`,`<-`,`->`]],[[3,11],[`next`,`forward`,`direction`,`east`,`tab`,`keyboard`,`mac`,`indent`,`collapse`,`fold`,`horizontal`,`->|`]],[[3],[`forward`,`direction`,`north`]],[[37,19,3],[`filter`,`sort`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`,`numerical`]],[[37,19,3],[`filter`,`sort`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`,`numerical`]],[[37,19,3],[`filter`,`sort`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`,`alphabetical`]],[[3],[`bidirectional`,`two-way`,`2-way`,`swap`,`switch`,`network`,`mobile data`,`internet`,`sort`,`reorder`,`move`]],[[3],[`direction`,`north`,`step`,`out`]],[[3,14,11],[`forward`,`direction`,`north`,`upload`,`git`,`version control`,`push`,`expand`,`fold`,`vertical`]],[[3],[`direction`,`north-west`,`diagonal`]],[[37,19,3],[`filter`,`sort`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`]],[[3],[`direction`,`north-east`,`diagonal`]],[[3,14],[`forward`,`direction`,`north`,`upload`,`collapse`,`fold`,`vertical`]],[[37,19,3],[`filter`,`sort`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`]],[[37,19,3],[`filter`,`sort`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`,`alphabetical`,`reverse`]],[[3,40,20],[`direction`,`orientation`,`this way up`,`vertical`,`package`,`box`,`fragile`,`postage`,`shipping`]],[[37,21,11],[`reference`,`times`,`multiply`,`multiplication`,`operator`,`code`,`glob pattern`,`wildcard`,`*`]],[[37,1],[`mention`,`at`,`email`,`message`,`@`]],[[29],[`atomic`,`nuclear`,`physics`,`particle`,`element`,`molecule`,`electricity`,`energy`,`chemistry`]],[[23,7],[`graphic equaliser`,`sound`,`noise`,`listen`,`hearing`,`hertz`,`frequency`,`wavelength`,`vibrate`,`sine`,`synthesizer`,`synthesiser`,`levels`,`track`,`music`,`playback`,`radio`,`broadcast`,`airwaves`,`voice`,`vocals`,`singer`,`song`]],[[23,7],[`sound`,`noise`,`listen`,`hearing`,`hertz`,`frequency`,`wavelength`,`vibrate`,`sine`,`synthesizer`,`synthesiser`,`levels`,`track`,`music`,`playback`,`radio`,`broadcast`,`airwaves`,`voice`,`vocals`,`singer`,`song`]],[[1,35,17],[`achievement`,`badge`,`rosette`,`prize`,`winner`]],[[39,17],[`hatchet`,`weapon`,`chop`,`sharp`,`equipment`,`fireman`,`firefighter`,`brigade`,`lumberjack`,`woodcutter`,`logger`,`forestry`]],[[10],[`gizmo`,`coordinates`]],[[0,27],[`child`,`childproof`,`children`]],[[17,28,41],[`bag`,`hiking`,`travel`,`camping`,`school`,`childhood`]],[[1,34,32],[`check`,`verified`,`unverified`]],[[1,34],[`check`,`verified`,`unverified`,`security`,`safety`,`issue`]],[[33,15],[`discount`,`offer`,`sale`,`voucher`,`tag`,`monetization`,`marketing`,`finance`,`financial`,`exchange`,`transaction`,`payment`,`cents`,`dollar`,`usd`,`$`,`¢`]],[[34],[`verified`,`check`]],[[33,15],[`discount`,`offer`,`sale`,`voucher`,`tag`,`monetization`,`marketing`,`finance`,`financial`,`exchange`,`transaction`,`payment`,`usd`,`$`]],[[33,15],[`discount`,`offer`,`sale`,`voucher`,`tag`,`monetization`,`marketing`,`finance`,`financial`,`exchange`,`transaction`,`payment`,`€`]],[[33,15],[`discount`,`offer`,`sale`,`voucher`,`tag`,`monetization`,`marketing`,`finance`,`financial`,`exchange`,`transaction`,`payment`,`inr`,`₹`]],[[1,0,34],[`verified`,`unverified`,`help`]],[[33,15],[`discount`,`offer`,`sale`,`voucher`,`tag`,`monetization`,`marketing`,`finance`,`financial`,`exchange`,`transaction`,`payment`,`jpy`,`¥`]],[[34],[`verified`,`unverified`,`delete`,`remove`,`erase`]],[[34,15,33,21],[`verified`,`unverified`,`sale`,`discount`,`offer`,`marketing`,`sticker`,`price tag`]],[[34],[`verified`,`unverified`,`add`,`create`,`new`]],[[33,15],[`discount`,`offer`,`sale`,`voucher`,`tag`,`monetization`,`marketing`,`finance`,`financial`,`exchange`,`transaction`,`payment`,`british`,`gbp`,`£`]],[[0,34,32],[`verified`,`unverified`,`help`]],[[33,15],[`discount`,`offer`,`sale`,`voucher`,`tag`,`monetization`,`marketing`,`finance`,`financial`,`exchange`,`transaction`,`payment`,`rub`,`₽`]],[[33,15],[`discount`,`offer`,`sale`,`voucher`,`tag`,`monetization`,`marketing`,`finance`,`financial`,`exchange`,`transaction`,`payment`,`chf`,`₣`]],[[33,15],[`discount`,`offer`,`sale`,`voucher`,`tag`,`monetization`,`marketing`,`finance`,`financial`,`exchange`,`transaction`,`payment`,`try`,`₺`]],[[34],[`verified`,`unverified`,`lost`,`delete`,`remove`]],[[40,41],[`baggage`,`luggage`,`travel`,`cart`,`trolley`,`suitcase`]],[[13],[`party`,`festival`,`congratulations`,`celebration`,`decoration`,`colorful`,`floating`,`fun`,`birthday`,`event`,`entertainment`]],[[1],[`cancel`,`no`,`stop`,`forbidden`,`prohibited`,`error`,`incorrect`,`mistake`,`wrong`,`failure`,`circle`,`slash`,`null`,`void`]],[[16],[`fruit`,`food`]],[[22],[`plaster`,`band-aid`,`first aid`,`medical`,`health`,`wound`,`injury`,`care`,`treatment`,`healing`,`protection`,`emergency`,`aid`,`safety`,`patch`]],[[15],[`currency`,`money`,`payment`]],[[15],[`bill`,`currency`,`money`,`payment`,`funds`,`transaction`,`cash`,`finance`,`withdraw`,`expense`,`out`,`payout`,`refund`,`debit`,`spending`,`decrease`]],[[15],[`bill`,`currency`,`money`,`payment`,`funds`,`transaction`,`cash`,`finance`,`deposit`,`earnings`,`income`,`in`,`credit`,`prepaid`,`growth`,`increase`]],[[15],[`bill`,`currency`,`money`,`payment`,`funds`,`transaction`,`cash`,`finance`,`error`,`failed`,`rejected`,`canceled`,`declined`,`lost`,`delete`,`remove`]],[[33],[`scan`,`checkout`,`till`,`cart`,`transaction`,`purchase`,`buy`,`product`,`packaging`,`retail`,`consumer`]],[[16,25],[`keg`,`drum`,`tank`,`wine`,`beer`,`oak`,`wood`,`firkin`,`hogshead`,`kilderkin`,`barrique`,`solera`,`aging`,`whiskey`,`brewery`,`distillery`,`winery`,`vineyard`]],[[37],[`text`,`format`,`color`]],[[41],[`amenities`,`services`,`bathroom`,`shower`]],[[8,12],[`power`,`electricity`,`energy`,`accumulator`,`charge`]],[[8,12],[`power`,`electricity`,`energy`,`accumulator`,`charge`]],[[8,12],[`power`,`electricity`,`energy`,`accumulator`,`charge`]],[[8,12],[`power`,`electricity`,`energy`,`accumulator`,`charge`]],[[8,12],[`power`,`electricity`,`energy`,`accumulator`,`charge`]],[[12],[`power`,`electricity`,`energy`,`accumulator`,`charge`,`plus`,`economy`,`health`,`add`,`new`,`maximum`,`upgrade`,`extra`,`+`]],[[8,12],[`power`,`electricity`,`energy`,`accumulator`,`charge`,`exclamation mark`]],[[29,17],[`cup`,`lab`,`chemistry`,`experiment`,`test`]],[[16],[`legume`,`soy`,`food`,`seed`]],[[16],[`soy free`,`legume`,`soy`,`food`,`seed`,`allergy`,`intolerance`,`diet`]],[[18],[`sleep`,`hotel`,`furniture`]],[[18],[`sleep`,`hotel`,`furniture`]],[[18],[`sleep`,`hotel`,`furniture`]],[[16],[`food`,`dish`,`restaurant`,`course`,`meal`,`meat`,`bbq`,`steak`]],[[16],[`alcohol`,`bar`,`beverage`,`brewery`,`drink`]],[[16],[`alcohol`,`bar`,`beverage`,`brewery`,`drink`]],[[1,26],[`alarm`,`notification`,`sound`,`reminder`]],[[1,26],[`alarm`,`notification`,`sound`,`reminder`,`unread`]],[[12,26,18],[`fire alarm`,`flames`,`smoke`,`firefighter`,`fireman`,`department`,`brigade`,`station`,`emergency`,`alert`,`safety`,`school bell`,`period break`,`recess`,`doorbell`,`entrance`,`entry`,`ring`,`reception`]],[[26],[`alarm`,`notification`,`silent`,`reminder`,`delete`,`remove`,`erase`]],[[26],[`alarm`,`notification`,`silent`,`reminder`]],[[26],[`notification`,`silent`,`reminder`,`add`,`create`,`new`]],[[26],[`alarm`,`notification`,`sound`,`reminder`]],[[19,10,39],[`insert`,`add`,`left`,`slot`,`squeeze`,`space`,`vertical`,`grid`,`table`,`rows`,`cells`,`excel`,`spreadsheet`,`accountancy`,`data`,`enter`,`entry`,`entries`,`blocks`,`rectangles`,`chevron`]],[[19,10,39],[`insert`,`add`,`right`,`slot`,`squeeze`,`space`,`vertical`,`grid`,`table`,`rows`,`cells`,`excel`,`spreadsheet`,`accountancy`,`data`,`enter`,`entry`,`entries`,`blocks`,`rectangles`,`chevron`]],[[19,10,39],[`insert`,`add`,`top`,`slot`,`squeeze`,`space`,`vertical`,`grid`,`table`,`columns`,`cells`,`data`,`enter`,`entry`,`entries`,`blocks`,`rectangles`,`chevron`]],[[19,10,39],[`insert`,`add`,`bottom`,`slot`,`squeeze`,`space`,`vertical`,`grid`,`table`,`columns`,`cells`,`data`,`enter`,`entry`,`entries`,`blocks`,`rectangles`,`chevron`]],[[13],[`arm`,`muscle`,`strong`,`working out`,`athletic`,`toned`,`muscular`,`forelimb`,`curled`]],[[40],[`bicycle`,`transport`,`trip`]],[[37,11],[`code`,`digits`,`computer`,`zero`,`one`,`boolean`]],[[25,24,28,29,41,11],[`field glasses`,`lorgnette`,`pince-nez`,`observation`,`sightseeing`,`nature`,`wildlife`,`birdwatching`,`scouting`,`surveillance`,`search`,`discovery`,`monitoring`,`lookout`,`viewpoint`,`travel`,`tourism`,`research`]],[[29],[`fallout`,`waste`,`biology`,`chemistry`,`chemical`,`element`]],[[2],[`peace`,`freedom`,`wing`,`avian`,`tweet`]],[[24,2,25,18],[`birdhouse`,`bird`,`garden`,`home`,`house`,`woodwork`]],[[4,11,15],[`currency`,`money`,`payment`]],[[10,28,39,11],[`mode`,`overlay`,`multiply`,`screen`,`opacity`,`transparency`,`alpha`,`filters`,`lenses`,`mixed`,`shades`,`tints`,`hues`,`saturation`,`brightness`,`overlap`,`colors`,`colours`]],[[18],[`shades`,`screen`,`curtain`,`shutter`,`roller blind`,`window`,`lighting`,`household`,`home`]],[[11,19,32],[`addon`,`plugin`,`integration`,`extension`,`package`,`build`,`stack`,`toys`,`kids`,`children`,`learning`,`squares`,`corner`]],[[8,12],[`wireless`]],[[8,12],[`paired`]],[[8,12],[`lost`]],[[8,12],[`pairing`]],[[37],[`text`,`strong`,`format`]],[[39,18],[`nut`,`screw`,`settings`,`preferences`,`configuration`,`controls`,`edit`,`diy`,`fixed`,`build`,`construction`,`parts`]],[[31,39],[`fatal`,`error`,`crash`,`blockbuster`,`mine`,`explosion`,`explode`,`explosive`]],[[2,22,17],[`health`,`skeleton`,`skull`,`death`,`pets`,`dog`]],[[37,11,17],`reading.paperback.booklet.magazine.leaflet.pamphlet.tome.library.writing.written.writer.author.story.script.fiction.novel.information.knowledge.education.high school.university.college.academy.student.study.learning.homework.research.documentation`.split(`.`)],[[37,17],`dictionary.define.definition.thesaurus.encyclopedia.encyclopaedia.reading.booklet.magazine.leaflet.pamphlet.tome.library.writing.written.writer.author.story.script.fiction.novel.information.knowledge.education.high school.university.college.academy.student.study.learning.homework.research.language.translate.alphabetical.a-z.ordered`.split(`.`)],[[37,11,17],`reading.paperback.booklet.magazine.leaflet.pamphlet.tome.library.writing.written.writer.author.story.script.fiction.novel.information.knowledge.education.high school.university.college.academy.student.study.learning.homework.research.documentation.warning.alert.danger.exclamation mark`.split(`.`)],[[23,37],[`audiobook`,`reading`,`listening`,`sound`,`story`,`fiction`,`novel`,`information`,`knowledge`,`education`,`student`,`study`,`learning`,`research`]],[[37,11,17],`read.booklet.magazine.leaflet.pamphlet.library.written.authored.published.informed.knowledgeable.educated.schooled.homework.examined.tested.marked.passed.graduated.studied.learned.lesson.researched.documented.revealed.blank.plain language.true.truth.verified.corrected.task.todo.done.completed.finished.ticked`.split(`.`)],[[11,37,17],`code.coding.version control.git.repository.clone.fork.duplicate.multiple.books.library.copies.copied.plagiarism.plagiarised.plagiarized.reading list.information.informed.knowledge.knowledgeable.knowledgable.education.high school.university.college.academy.student.study.learning.research.smart.intelligent.intellectual`.split(`.`)],[[11],[`code`,`coding`,`version control`,`git`,`repository`,`template`,`draft`,`script`,`screenplay`,`writing`,`writer`,`author`,`unwritten`,`unpublished`,`untold`]],[[11],[`code`,`coding`,`version control`,`git`,`repository`,`pull`]],[[23,37],[`audiobook`,`reading`,`listening`,`sound`,`story`,`fiction`,`novel`,`information`,`knowledge`,`education`,`student`,`study`,`learning`,`research`]],[[34,37,17],`diary.romance.novel.journal.entry.entries.personal.private.secret.crush.like.love.emotion.feminine.girls.teens.teenager.therapy.theraputic.therapist.planner.organizer.organiser.notes.notepad.stationery.sketchbook.writing.written.reading.favorite.favourite.high school`.split(`.`)],[[28,37,23,14,34,33,41],[`images`,`pictures`,`photos`,`album`,`collection`,`event`,`magazine`,`catalog`,`catalogue`,`brochure`,`browse`,`gallery`]],[[11,31,17],[`code`,`coding`,`version control`,`git`,`repository`,`private`,`public`,`secret`,`unlocked`,`hidden`,`revealed`,`knowledge`,`learning`]],[[11,31,17],[`code`,`coding`,`version control`,`git`,`repository`,`private`,`secret`,`hidden`,`knowledge`]],[[37,11,17],`dictionary.reading.booklet.magazine.leaflet.pamphlet.tome.library.writing.written.writer.author.story.script.fiction.novel.information.knowledge.education.high school.university.college.academy.student.study.learning.homework.research.documentation.saved.later.future.reference.index.code.coding.version control.git.repository`.split(`.`)],[[11,37,17],[`code`,`coding`,`version control`,`git`,`repository`,`remove`,`delete`,`censor`,`cancel`,`forbid`,`prohibit`,`ban`,`uneducated`,`re-educate`,`unlearn`,`downgrade`]],[[37,11,17],`reading.pages.booklet.magazine.leaflet.pamphlet.library.writing.written.writer.author.story.script.screenplay.fiction.novel.information.knowledge.education.high school.university.college.academy.student.study.learning.homework.research.documentation.revealed.blank.plain`.split(`.`)],[[37,11,17],`read.pages.booklet.magazine.leaflet.pamphlet.library.written.authored.published.informed.knowledgeable.educated.schooled.homework.examined.tested.marked.passed.graduated.studied.learned.lesson.researched.documented.revealed.blank.plain language.true.truth.verified.corrected.task.todo.done.completed.finished.ticked`.split(`.`)],[[37,11],`reading.pages.booklet.magazine.leaflet.pamphlet.library.writing.written.writer.author.story.script.fiction.novel.information.knowledge.education.high school.university.college.academy.student.study.learning.homework.research.documentation.revealed`.split(`.`)],[[11,37,17],[`code`,`coding`,`version control`,`git`,`repository`,`remove`,`delete`,`read`,`write`,`author`,`publish`,`inform`,`graduate`,`re-educate`,`study`,`learn`,`research`,`knowledge`,`improve`,`upgrade`,`level up`]],[[37,11,17],[`reading`,`library`,`study`,`education`,`research`,`knowledge`,`discover`,`browsing`,`lookup`,`finding`,`scanning`]],[[37,17],`reading.booklet.magazine.leaflet.pamphlet.tome.library.writing.written.writer.author.story.script.fiction.novel.information.knowledge.education.high school.university.college.academy.student.study.learning.homework.research.documentation`.split(`.`)],[[37,10,17],`thesaurus.synonym.reading.booklet.magazine.leaflet.pamphlet.tome.library.writing.written.writer.author.story.script.fiction.novel.information.knowledge.education.high school.university.college.academy.student.study.learning.homework.research.language.translate.typography.fonts.collection`.split(`.`)],[[11],[`code`,`coding`,`version control`,`git`,`repository`,`push`]],[[11],[`code`,`coding`,`version control`,`git`,`repository`,`push`,`force`]],[[1,8,7,34],[`person`,`people`,`family`,`friends`,`acquaintances`,`contacts`,`details`,`addresses`,`phone numbers`,`directory`,`listing`,`networking`]],[[37,17],[`code`,`coding`,`version control`,`git`,`repository`,`remove`,`delete`,`reading`,`misinformation`,`disinformation`,`misinformed`,`charlatan`,`sophistry`,`false`,`lies`,`untruth`,`propaganda`,`censored`,`cancelled`,`forbidden`,`prohibited`,`banned`,`uneducated`,`re-education`,`unlearn`]],[[1],[`save`,`favorite`,`mark`,`label`,`attachment`,`file`,`stick`,`pin`,`read`,`clip`,`marker`,`tag`]],[[1],[`read`,`finished`,`complete`,`clip`,`marker`,`tag`,`task`,`todo`]],[[1],[`delete`,`remove`]],[[1],[`add`]],[[1],[`read`,`clip`,`marker`,`tag`,`cancel`,`close`,`delete`,`remove`,`clear`]],[[12,23,34],[`radio`,`speakers`,`audio`,`music`,`sound`,`broadcast`,`live`,`frequency`]],[[11,34],[`robot`,`ai`,`chat`,`assistant`]],[[11,34],[`robot`,`ai`,`chat`,`assistant`]],[[11,34],[`robot`,`ai`,`chat`,`assistant`]],[[16],[`alcohol`,`drink`,`glass`,`goblet`,`chalice`,`vineyard`,`winery`,`red`,`white`,`rose`,`dry`,`sparkling`,`bar`,`party`,`nightclub`,`nightlife`,`sommelier`,`restaurant`,`dinner`,`meal`]],[[17,39],[`archer`,`archery`,`game`,`war`,`weapon`]],[[32,17,11,21],[`cube`,`package`,`container`,`storage`,`geometry`,`3d`,`isometric`]],[[32,17,11],[`cubes`,`packages`,`parts`,`group`,`units`,`collection`,`cluster`,`geometry`]],[[11,14],[`json`,`code`,`token`,`curly brackets`,`data`,`{`,`}`]],[[11,14],[`code`,`token`,`array`,`list`,`square`,`[`,`]`]],[[22,29],[`medical`,`mind`,`mental`,`intellect`,`cerebral`,`consciousness`,`genius`,`artificial intelligence`,`ai`,`think`,`thought`,`insight`,`intelligent`,`smart`]],[[29,11],[`mind`,`intellect`,`artificial intelligence`,`ai`,`deep learning`,`machine learning`,`computing`]],[[29,11],[`mind`,`intellect`,`artificial intelligence`,`ai`,`deep learning`,`machine learning`,`computing`]],[[5,18],[`bricks`,`mortar`,`cement`,`materials`,`construction`,`builder`,`labourer`,`quantity surveyor`,`blocks`,`stone`]],[[31,18,8],[`firewall`,`security`,`bricks`,`mortar`,`cement`,`materials`,`construction`,`builder`,`labourer`,`quantity surveyor`,`blocks`,`stone`,`campfire`,`camping`,`wilderness`,`outdoors`,`lit`,`warmth`,`wood`,`twigs`,`sticks`]],[[31,18,8],`firewall.security.bricks.mortar.cement.materials.construction.builder.labourer.quantity surveyor.blocks.stone.cybersecurity.secure.safety.protection.guardian.armored.armoured.defense.defence.defender.block.threat.prevention.antivirus.vigilance.vigilant.detection.scan.find.strength.strong.tough.invincible.invincibility.invulnerable.undamaged.audit.admin.verification.crest.bravery.knight.foot soldier.infantry.trooper.pawn.battle.war.military.army.cadet.scout`.split(`.`)],[[40],[`work`,`bag`,`baggage`,`folder`]],[[40],[`work`,`bag`,`baggage`,`folder`,`portfolio`]],[[41,40],[`baggage`,`luggage`,`travel`,`suitcase`,`conveyor`,`carousel`]],[[22,40],[`doctor`,`medicine`,`first aid`]],[[10,19],[`bring`,`send`,`move`,`over`,`forward`,`front`,`overlap`,`layer`,`order`]],[[37,10,39],[`clean`,`sweep`,`refactor`,`remove`,`draw`,`paint`,`color`,`artist`]],[[18,39,10],`cleaning.utensil.housekeeping.tool.sweeping.scrubbing.hygiene.maintenance.household.cleaner.chores.equipment.sanitation.bristles.handle.home care.sanitize.purify.wash.disinfect.sterilize.scrub.polish.decontaminate.wipe.spotless.remove.empty.erase.purge.eliminate`.split(`.`)],[[42],[`water`,`cleaning`,`soap`,`bath`,`hygiene`,`freshness`,`wash`,`foam`,`cleanliness`,`shampoo`,`purity`,`splash`,`lightness`,`airy`,`relaxation`,`spa`,`bubbly`,`fluid`,`floating`,`drop`]],[[11,2],[`issue`,`error`,`defect`,`testing`,`troubleshoot`,`problem`,`report`,`debug`,`code`,`insect`,`beetle`]],[[11,2],[`issue`,`fixed`,`resolved`,`testing`,`debug`,`code`,`insect`,`kill`,`exterminate`,`pest control`]],[[11,2],[`issue`,`testing`,`debug`,`reproduce`,`code`,`insect`]],[[1,5],[`organisation`,`organization`]],[[1,5],[`business`,`company`,`enterprise`,`skyscraper`,`organisation`,`organization`,`city`]],[[40],[`bus`,`vehicle`,`transport`,`trip`]],[[40],[`coach`,`vehicle`,`trip`,`road`]],[[8,12,23],`cord.wire.connector.connection.link.signal.console.computer.equipment.electricity.energy.electronics.recharging.charger.power.supply.disconnected.unplugged.plugs.interface.input.output.audio video.av.rca.scart.tv.television.optical`.split(`.`)],[[40,41],[`ski lift`,`winter holiday`,`alpine`,`resort`,`mountains`]],[[16,34,1],[`birthday`,`birthdate`,`celebration`,`party`,`surprise`,`gateaux`,`dessert`,`fondant`,`icing sugar`,`sweet`,`baking`]],[[16,34],[`birthday`,`birthdate`,`celebration`,`party`,`surprise`,`gateaux`,`dessert`,`candles`,`wish`,`fondant`,`icing sugar`,`sweet`,`baking`]],[[21,12],[`count`,`calculating machine`]],[[38],[`date`,`month`,`year`,`event`,`birthday`,`birthdate`]],[[38],[`date`,`month`,`year`,`event`,`single`,`singular`,`once`,`1`,`first`]],[[38],[`date`,`month`,`year`,`event`,`sort`,`order`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`]],[[38],[`date`,`month`,`year`,`event`,`sort`,`order`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`]],[[38],[`date`,`day`,`month`,`year`,`event`,`confirm`,`subscribe`,`schedule`,`done`,`todo`,`tick`,`complete`,`task`]],[[38],[`date`,`day`,`month`,`year`,`event`,`confirm`,`subscribe`,`schedule`,`done`,`todo`,`tick`,`complete`,`task`]],[[38],[`date`,`day`,`month`,`year`,`event`,`clock`,`hour`]],[[38],[`date`,`day`,`month`,`year`,`events`,`settings`,`gear`,`cog`]],[[38],[`date`,`month`,`year`,`event`]],[[38,14],[`date`,`month`,`year`,`event`,`birthday`,`birthdate`,`ics`]],[[38],[`date`,`month`,`year`,`event`,`heart`,`favourite`,`subscribe`,`valentines day`]],[[38],[`date`,`day`,`month`,`year`,`event`,`delete`,`remove`]],[[38],[`date`,`day`,`month`,`year`,`event`,`delete`,`remove`]],[[38],[`date`,`day`,`month`,`year`,`event`,`delete`,`remove`]],[[38],[`date`,`day`,`month`,`year`,`event`,`add`,`subscribe`,`create`,`new`]],[[38],[`date`,`day`,`month`,`year`,`event`,`add`,`subscribe`,`create`,`new`]],[[38],[`date`,`day`,`month`,`year`,`event`,`range`,`period`]],[[38],[`date`,`day`,`month`,`year`,`events`,`search`,`lens`]],[[3,38],[`repeat`,`refresh`,`reconnect`,`transfer`,`backup`,`date`,`month`,`year`,`event`,`subscribe`,`recurring`,`schedule`,`reminder`,`automatic`,`auto`]],[[38],[`date`,`day`,`month`,`year`,`event`,`remove`,`busy`]],[[38],[`date`,`day`,`month`,`year`,`event`,`remove`]],[[38],[`date`,`month`,`year`,`event`,`dates`,`months`,`years`,`events`]],[[28,12,7],[`photography`,`lens`,`focus`,`capture`,`shot`,`visual`,`image`,`device`,`equipment`,`photo`,`webcam`,`video`]],[[28,12,7],[`photo`,`webcam`,`video`]],[[16],[`sugar`,`food`,`sweet`]],[[16],[`sugar`,`food`,`sweet`,`christmas`,`xmas`]],[[16],[`sugar free`,`food`,`sweet`,`allergy`,`intolerance`,`diet`]],[[24],[`cannabis`,`weed`,`leaf`]],[[24],[`cannabis`,`weed`,`leaf`]],[[23],[`closed captions`,`subtitles`,`subhead`,`transcription`,`transcribe`,`dialogue`,`accessibility`]],[[23],[`closed captions`,`subtitles`,`subhead`,`transcription`,`transcribe`,`dialogue`,`accessibility`]],[[40],[`vehicle`,`drive`,`trip`,`journey`]],[[40],[`vehicle`,`drive`,`trip`,`journey`]],[[40],[`cab`,`vehicle`,`drive`,`trip`,`journey`]],[[40,41,24],[`trailer`,`tow`,`camping`,`campsite`,`mobile home`,`holiday`,`nomadic`,`wilderness`,`outdoors`]],[[8,7,23,12],[`cellphone`,`smartphone`,`mobile`,`network`,`cellular`,`service`,`provider`,`signal`,`coverage`,`disk`,`data`,`format`,`storage`,`flash`,`digital`,`contacts`,`phone book`,`contractual`,`circuit board`,`chip`]],[[16],[`vegetable`,`food`,`eat`]],[[37,11],[`text`,`letters`,`characters`,`font`,`typography`]],[[37],[`text`,`letters`,`characters`,`font`,`typography`]],[[37,11],[`text`,`letters`,`characters`,`font`,`typography`]],[[8,12,23,7,14],[`audio`,`music`,`recording`,`play`]],[[12,8],[`chromecast`,`airplay`,`screen`]],[[5,17,25],[`fortress`,`stronghold`,`palace`,`chateau`,`building`]],[[2],[`animal`,`pet`,`kitten`,`feline`]],[[31,12,7,8,28],[`camera`,`surveillance`,`recording`,`film`,`videotape`,`crime`,`watching`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`,`area`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`,`trending down`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`,`trending up`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`,`multivariate`,`categorical`,`comparison`]],[[6,15],[`trading`,`trader`,`financial`,`markets`,`portfolio`,`assets`,`prices`,`value`,`valuation`,`commodities`,`currencies`,`currency`,`stocks`,`exchange`,`hedge fund`,`statistics`,`analytics`,`diagram`,`graph`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`,`trending down`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`,`trending up`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`,`multivariate`,`categorical`,`comparison`]],[[6],[`diagram`,`graph`,`timeline`,`planning`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`,`topology`,`cluster`,`web`,`nodes`,`connections`,`edges`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`,`trending down`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`,`trending up`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`,`trending up`]],[[6,38,11,10],[`projects`,`manage`,`overview`,`roadmap`,`plan`,`intentions`,`timeline`,`deadline`,`date`,`event`,`range`,`period`,`productivity`,`work`,`agile`,`code`,`coding`]],[[6,14],[`statistics`,`analytics`,`diagram`,`presentation`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`]],[[6],[`statistics`,`analytics`,`diagram`,`graph`,`curve`,`continuous`,`smooth`,`polynomial`,`quadratic`,`function`,`interpolation`]],[[26],[`done`,`todo`,`tick`,`complete`,`task`]],[[26],[`done`,`received`,`double`,`todo`,`tick`,`complete`,`task`]],[[26],[`done`,`todo`,`tick`,`complete`,`task`]],[[16],[`cooking`,`food`,`kitchen`,`restaurant`]],[[16],[`fruit`,`food`]],[[17,13],[`mitre`,`miter`,`piece`,`board game`,`religion`]],[[17,13],[`ruler`,`crown`,`piece`,`board game`,`stalemate`]],[[17,13],[`piece`,`horse`,`board game`]],[[17,13],[`piece`,`board game`]],[[17,13],[`ruler`,`crown`,`piece`,`board game`,`stalemate`]],[[17,13],[`castle`,`piece`,`board game`]],[[3,17],[`backwards`,`reverse`,`slow`,`dropdown`]],[[3,23],[`previous`,`music`]],[[3,23],[`skip`,`next`,`music`]],[[3],[`back`,`previous`,`less than`,`fewer`,`menu`,`<`]],[[3,21,11],[`forward`,`next`,`more than`,`greater`,`menu`,`code`,`coding`,`command line`,`terminal`,`prompt`,`shell`,`>`]],[[3,21,17],[`caret`,`keyboard`,`mac`,`control`,`ctrl`,`superscript`,`exponential`,`power`,`ahead`,`fast`,`^`,`dropdown`]],[[3,17],[`backwards`,`reverse`,`slower`]],[[3],[`collapse`,`fold`,`vertical`]],[[3,17],[`turn`,`corner`]],[[3],[`expand`,`horizontal`,`unfold`]],[[7,12,23,17],[`internet`,`network`,`connection`,`cable`,`lan`,`port`,`router`,`switch`,`hub`,`modem`,`web`,`online`,`networking`,`communication`,`socket`,`plug`,`slot`,`controller`,`connector`,`interface`,`console`,`signal`,`data`,`input`,`output`]],[[3,17],[`turn`,`corner`]],[[3],[`collapse`,`fold`,`horizontal`]],[[3,17],[`forward`,`ahead`,`faster`,`speed`,`boost`]],[[3],[`expand`,`unfold`,`vertical`]],[[5,25],[`temple`,`building`]],[[41,40,22],[`smoking`]],[[41,40,22],[`smoking`,`no-smoking`]],[[32],[`off`,`zero`,`record`,`shape`]],[[26],[`warning`,`alert`,`danger`,`exclamation mark`]],[[3,17],[`backwards`,`reverse`,`direction`,`south`,`sign`,`button`]],[[3,17],[`previous`,`back`,`direction`,`west`,`sign`,`turn`,`button`,`<-`]],[[3],[`outwards`,`direction`,`south-west`,`diagonal`]],[[3],[`outwards`,`direction`,`south-east`,`diagonal`]],[[3,11],[`outwards`,`direction`,`north-west`,`diagonal`,`keyboard`,`button`,`escape`]],[[3],[`outwards`,`direction`,`north-east`,`diagonal`]],[[3,17],[`next`,`forward`,`direction`,`east`,`sign`,`turn`,`button`,`->`]],[[3,17],[`forward`,`direction`,`north`,`sign`,`button`]],[[26],[`done`,`todo`,`tick`,`complete`,`task`]],[[26],[`done`,`todo`,`tick`,`complete`,`task`]],[[3],[`back`,`menu`]],[[3],[`back`,`previous`,`less than`,`fewer`,`menu`,`<`]],[[3],[`back`,`more than`,`greater`,`menu`,`>`]],[[3],[`caret`,`ahead`,`menu`,`^`]],[[11,32],[`pending`,`dot`,`progress`,`issue`,`draft`,`code`,`coding`,`version control`]],[[21],[`calculate`,`math`,`÷`,`/`]],[[15],[`monetization`,`marketing`,`currency`,`money`,`payment`]],[[11,32],[`pending`,`dot`,`progress`,`issue`,`code`,`coding`,`version control`,`choices`,`multiple choice`,`choose`]],[[11,32],[`pending`,`dot`,`progress`,`issue`,`draft`,`code`,`coding`,`version control`]],[[19,11],[`ellipsis`,`et cetera`,`etc`,`loader`,`loading`,`progress`,`pending`,`throbber`,`menu`,`options`,`operator`,`code`,`spread`,`rest`,`more`,`further`,`extra`,`overflow`,`dots`,`…`,`...`]],[[21],[`calculate`,`shape`,`=`]],[[3,11],[`north`,`up`,`upgrade`,`improve`,`circle`,`button`]],[[7,34],[`stories`,`social media`,`instagram`,`facebook`,`meta`,`snapchat`,`sharing`,`content`]],[[40,35,29],[`dashboard`,`dial`,`meter`,`speed`,`pressure`,`measure`,`level`]],[[21],[`subtract`,`remove`,`decrease`,`reduce`,`calculate`,`line`,`operator`,`code`,`coding`,`minimum`,`downgrade`,`-`]],[[32],[`diameter`,`zero`,`ø`,`nothing`,`null`,`void`,`cancel`,`ban`,`no`,`stop`,`forbidden`,`prohibited`,`error`,`incorrect`,`mistake`,`wrong`,`failure`]],[[40,25],[`parking lot`,`car park`]],[[40,25],[`parking lot`,`car park`,`no parking`]],[[23],[`music`,`audio`,`stop`]],[[34,15,33,21],[`verified`,`unverified`,`sale`,`discount`,`offer`,`marketing`,`sticker`,`price tag`]],[[32],[`off`,`zero`,`record`,`shape`,`circle-pile`,`circle`,`pile`,`stack`,`layer`,`structure`,`form`,`group`,`collection`,`stock`,`inventory`,`materials`,`warehouse`]],[[23],[`music`,`start`,`run`]],[[21,11,9,17],[`add`,`new`,`increase`,`increment`,`positive`,`calculate`,`crosshair`,`aim`,`target`,`scope`,`sight`,`reticule`,`maximum`,`upgrade`,`extra`,`operator`,`join`,`concatenate`,`code`,`coding`,`+`]],[[15],[`monetization`,`coin`,`penny`,`marketing`,`currency`,`money`,`payment`,`british`,`gbp`,`£`]],[[8],[`on`,`off`,`device`,`switch`,`toggle`,`binary`,`boolean`,`reboot`,`restart`,`button`,`keyboard`,`troubleshoot`]],[[0,37,26],[`question mark`]],[[11,21],[`diameter`,`zero`,`ø`,`nothing`,`null`,`void`,`cancel`,`ban`,`no`,`stop`,`forbidden`,`prohibited`,`error`,`incorrect`,`mistake`,`wrong`,`failure`,`divide`,`division`,`or`,`/`]],[[32,21,11],[`diameter`,`zero`,`ø`,`nothing`,`null`,`void`,`ban`,`math`,`divide`,`division`,`half`,`split`,`/`,`average`,`avg`,`mean`,`median`,`normal`]],[[32,22],[`shape`,`bullet`,`gender`,`genderless`]],[[35,17],[`badge`,`medal`,`honour`,`decoration`,`order`,`pin`,`laurel`,`trophy`,`medallion`,`insignia`,`bronze`,`silver`,`gold`]],[[23],[`media`,`music`]],[[1],[`person`,`account`,`contact`]],[[1],[`person`,`account`,`contact`]],[[21,11],[`cancel`,`close`,`delete`,`remove`,`times`,`clear`,`error`,`incorrect`,`wrong`,`mistake`,`failure`,`linter`,`multiply`,`multiplication`]],[[29,11],[`computing`,`electricity`,`electronics`]],[[16],[`lemon`,`orange`,`grapefruit`,`fruit`]],[[23],[`movie`,`film`,`video`,`camera`,`cinema`,`cut`,`action`,`television`,`tv`,`show`,`entertainment`]],[[37],[`copy`,`paste`]],[[37],[`copied`,`pasted`,`done`,`todo`,`tick`,`complete`,`task`]],[[38,37],[`copy`,`paste`,`history`,`log`,`clock`,`time`,`watch`,`alarm`,`hour`,`minute`,`reminder`,`scheduled`,`deadline`,`pending`,`time tracking`,`timesheets`,`appointment`,`logbook`]],[[37,3],[`copy`,`paste`]],[[37],[`copy`,`paste`,`tasks`]],[[37,22],[`copy`,`delete`,`remove`,`erase`,`document`,`medical`,`report`,`doctor`]],[[37,3],[`copy`,`paste`]],[[37],[`paste`,`signature`]],[[37],[`paste`]],[[37,22],[`copy`,`paste`,`add`,`create`,`new`,`document`,`medical`,`report`,`doctor`]],[[37],[`paste`,`format`,`text`]],[[37],[`copy`,`paste`,`discard`,`remove`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`,`noon`,`midnight`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`,`warning`,`wrong`]],[[38],[`time`,`watch`,`alarm`,`sort`,`order`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`]],[[38],[`time`,`watch`,`alarm`,`sort`,`order`,`ascending`,`descending`,`increasing`,`decreasing`,`rising`,`falling`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`]],[[38],[`time`,`watch`,`alarm`,`add`,`create`,`new`]],[[0,23],[`tv`,`movie`,`video`,`closed captions`,`subtitles`,`subhead`,`transcription`,`transcribe`,`dialogue`,`accessibility`]],[[42],[`weather`]],[[11],[`weather`,`danger`,`warning`,`alert`,`error`,`sync`,`network`,`exclamation`]],[[3,14],[`storage`,`memory`,`bytes`,`servers`,`backup`,`timemachine`,`rotate`,`synchronize`,`synchronise`,`refresh`,`reconnect`,`transfer`,`data`,`security`,`upload`,`save`,`remote`,`safety`]],[[11],[`sync`,`network`,`success`,`done`,`completed`,`saved`,`persisted`]],[[11],[`computing`,`ai`,`cluster`,`network`]],[[3,14],[`import`]],[[42],[`weather`,`shower`]],[[42],[`weather`,`mist`]],[[42],[`weather`,`rainfall`]],[[42],[`weather`,`bolt`]],[[42],[`weather`,`night`]],[[42],[`weather`,`partly`,`night`,`rainfall`]],[[8,42],[`disconnect`]],[[42],[`weather`,`rainfall`]],[[42],[`weather`,`rainfall`]],[[42],[`weather`,`blizzard`]],[[42],[`weather`,`partly`]],[[42],[`weather`,`partly`,`rainfall`]],[[3,14],[`synchronize`,`synchronise`,`refresh`,`reconnect`,`transfer`,`backup`,`storage`,`upload`,`download`,`connection`,`network`,`data`]],[[3,14],[`file`]],[[42],[`weather`,`clouds`]],[[17],[`leaf`,`luck`,`plant`]],[[32,17],[`shape`,`suit`,`playing`,`cards`]],[[37,11],[`source`,`programming`,`html`,`xml`]],[[37,11],[`source`,`programming`,`html`,`xml`]],[[16],[`drink`,`cup`,`mug`,`tea`,`cafe`,`hot`,`beverage`]],[[1],[`computing`,`settings`,`cog`,`edit`,`gear`,`preferences`,`controls`,`configuration`,`fixed`,`build`,`construction`,`parts`]],[[17],[`money`,`cash`,`finance`,`gamble`]],[[19,10,37],[`lines`,`list`,`queue`,`preview`,`panel`,`parallel`,`series`,`split`,`vertical`,`horizontal`,`half`,`center`,`middle`,`even`,`sidebar`,`drawer`,`gutter`,`fold`,`reflow`,`typography`,`pagination`,`pages`]],[[19,10,37],[`lines`,`list`,`queue`,`preview`,`parallel`,`series`,`split`,`vertical`,`horizontal`,`thirds`,`triple`,`center`,`middle`,`alignment`,`even`,`sidebars`,`drawers`,`gutters`,`fold`,`reflow`,`typography`,`pagination`,`pages`]],[[19,10],[`columns`,`settings`,`customize`,`table`,`grid`,`adjust`,`configuration`,`panel`,`layout`]],[[19,10,37,31],`lines.list.queue.preview.parallel.series.split.vertical.horizontal.thirds.triple.center.middle.alignment.even.sidebars.drawers.gutters.fold.reflow.typography.pagination.pages.prison.jail.bars.sentence.police.cops.cell.crime.criminal.justice.law.enforcement.grill`.split(`.`)],[[11,14],[`cubes`,`packages`,`parts`,`units`,`collection`,`cluster`,`combine`,`gather`,`merge`]],[[11],[`keyboard`,`key`,`mac`,`cmd`,`button`]],[[25,41],[`direction`,`north`,`east`,`south`,`west`,`safari`,`browser`]],[[10,11],[`design`,`element`,`group`,`module`,`part`,`symbol`]],[[12,11,17],[`pc`,`chassis`,`codespaces`,`github`]],[[41],[`reception`,`bell`,`porter`]],[[32,21],[`conical`,`triangle`,`triangular`,`geometry`,`filter`,`funnel`,`hopper`,`spotlight`,`searchlight`]],[[11],[`roadwork`,`maintenance`,`blockade`,`barricade`]],[[1,8,7,34],[`user`,`person`,`family`,`friend`,`acquaintance`,`listing`,`networking`]],[[1,8,7,34],[`user`,`person`,`family`,`friend`,`acquaintance`,`listing`,`networking`]],[[11,40,20],[`storage`,`shipping`,`freight`,`supply chain`,`docker`,`environment`,`devops`,`code`,`coding`]],[[28,0,10],[`display`,`accessibility`]],[[1,16],[`biscuit`,`privacy`,`legal`,`food`]],[[16,18],[`pod`,`cooking`,`recipe`,`food`,`kitchen`,`chef`,`restaurant`,`dinner`,`lunch`,`breakfast`,`meal`,`eat`]],[[37],[`clone`,`duplicate`,`multiple`]],[[37,26],[`clone`,`duplicate`,`done`,`multiple`]],[[37,21],[`clone`,`duplicate`,`remove`,`delete`,`collapse`,`subtract`,`multiple`,`-`]],[[37,21],[`clone`,`duplicate`,`add`,`multiple`,`expand`,`+`]],[[37,11,21],[`clone`,`duplicate`,`cancel`,`ban`,`no`,`stop`,`forbidden`,`prohibited`,`error`,`multiple`,`divide`,`division`,`split`,`or`,`/`]],[[26,21],[`cancel`,`close`,`delete`,`remove`,`clear`,`multiple`,`multiply`,`multiplication`,`times`]],[[37],[`licence`]],[[37],[`licence`,`license`]],[[3],[`arrow`,`return`]],[[3,37,11],[`arrow`,`indent`,`tab`]],[[3],[`arrow`]],[[3],[`arrow`]],[[3],[`arrow`]],[[3],[`arrow`]],[[3],[`arrow`]],[[3],[`arrow`]],[[12],[`processor`,`cores`,`technology`,`computer`,`chip`,`circuit`,`memory`,`ram`,`specs`,`gigahertz`,`ghz`]],[[37],[`licence`,`license`]],[[1,15],[`bank`,`purchase`,`payment`,`cc`]],[[16],[`bakery`,`cooking`,`food`,`pastry`]],[[28,10],[`photo`,`image`]],[[32],[`healthcare`,`first aid`]],[[28],[`aim`,`target`]],[[17],[`diadem`,`tiara`,`circlet`,`corona`,`king`,`ruler`,`winner`,`favourite`]],[[32,21,16],[`brick`,`block`,`box`,`3d`,`solid`,`volume`,`container`,`storage`,`shipping`,`carton`,`geometry`,`rectangular`,`hexahedron`,`butter`,`tofu`,`soap`,`cheese`,`package`,`parcel`,`crate`]],[[16],[`beverage`,`cup`,`drink`,`soda`,`straw`,`water`]],[[15],[`finance`,`money`]],[[32,10,21],[`shape`,`elliptical`,`geometry`,`container`,`storage`,`tin`,`pot`]],[[5,36,25],[`electricity`,`energy`,`water`]],[[12,11],[`storage`,`memory`,`container`,`tin`,`pot`,`bytes`,`servers`]],[[12,3,10,11,28],[`storage`,`memory`,`bytes`,`servers`,`backup`,`timemachine`,`rotate`,`arrow`,`left`]],[[12,11],[`storage`,`memory`,`container`,`tin`,`pot`,`bytes`,`servers`]],[[12,11],[`cache busting`,`storage`,`memory`,`bytes`,`servers`,`power`,`crash`]],[[10,37,3,21],[`numerical`,`decimal`,`decrease`,`less`,`fewer`,`precision`,`rounding`,`digits`,`fraction`,`float`,`number`]],[[10,37,3,21],[`numerical`,`decimal`,`increase`,`more`,`precision`,`rounding`,`digits`,`fraction`,`float`,`number`]],[[37,3],[`backspace`,`remove`]],[[16],[`pudding`,`christmas`,`xmas`,`custard`,`iced bun`,`icing`,`fondant`,`cake`,`ice cream`,`gelato`,`sundae`,`scoop`,`dollop`,`sugar`,`food`,`sweet`]],[[32,21,10,39],[`shape`,`circle`,`geometry`,`trigonometry`,`width`,`height`,`size`,`calculate`,`measure`]],[[32,17],[`square`,`rectangle`,`oblique`,`rhombus`,`shape`,`suit`,`playing`,`cards`]],[[23,28,39,12],[`keyframe`,`subtract`,`remove`,`decrease`,`reduce`,`calculator`,`button`,`keyboard`,`line`,`divider`,`separator`,`horizontal rule`,`hr`,`html`,`markup`,`markdown`,`---`,`toolbar`,`operator`,`code`,`coding`,`minimum`,`downgrade`]],[[34,15,33,21],[`verified`,`unverified`,`sale`,`discount`,`offer`,`marketing`,`sticker`,`price tag`]],[[23,28,39,12],[`keyframe`,`add`,`new`,`increase`,`increment`,`positive`,`calculate`,`toolbar`,`crosshair`,`aim`,`target`,`scope`,`sight`,`reticule`,`maximum`,`upgrade`,`extra`,`+`]],[[17],[`dice`,`random`,`tabletop`,`1`,`board`,`game`]],[[17],[`dice`,`random`,`tabletop`,`2`,`board`,`game`]],[[17],[`dice`,`random`,`tabletop`,`3`,`board`,`game`]],[[17],[`dice`,`random`,`tabletop`,`4`,`board`,`game`]],[[17],[`dice`,`random`,`tabletop`,`5`,`board`,`game`]],[[17],[`dice`,`random`,`tabletop`,`6`,`board`,`game`]],[[17],[`dice`,`random`,`tabletop`,`board`,`game`]],[[11,14],[`patch`,`difference`,`compare`,`plus`,`minus`,`plus-minus`,`math`]],[[12,23],[`album`,`music`,`songs`,`format`,`cd`,`dvd`,`vinyl`,`sleeve`,`cover`,`platinum`,`compilation`,`ep`,`recording`,`playback`,`spin`,`rotate`,`rpm`,`dj`]],[[12,23],[`album`,`music`,`vinyl`,`record`,`cd`,`dvd`,`format`,`dj`,`spin`,`rotate`,`rpm`]],[[12,23],[`album`,`music`,`vinyl`,`record`,`cd`,`dvd`,`format`,`dj`,`spin`,`rotate`,`rpm`]],[[12,23],[`album`,`music`,`songs`,`format`,`cd`,`dvd`,`vinyl`,`sleeve`,`cover`,`platinum`,`compilation`,`ep`,`recording`,`playback`,`spin`,`rotate`,`rpm`,`dj`]],[[21,11],[`calculate`,`math`,`division`,`operator`,`code`,`÷`,`/`]],[[22],[`gene`,`gmo`,`helix`,`heredity`,`chromosome`,`nucleic acid`]],[[22,16],[`gene`,`gmo free`,`helix`,`heredity`,`chromosome`,`nucleic acid`]],[[19,10,11,14],[`desktop`,`applications`,`launch`,`home`,`menu bar`,`bottom`,`line`,`macos`,`osx`]],[[2],[`animal`,`pet`,`puppy`,`hound`,`canine`]],[[15],[`currency`,`money`,`payment`]],[[16],[`doughnut`,`sprinkles`,`topping`,`fast food`,`junk food`,`snack`,`treat`,`sweet`,`sugar`,`dessert`,`hollow`,`ring`]],[[18,41,31],[`entrance`,`entry`,`exit`,`ingress`,`egress`,`gate`,`gateway`,`emergency exit`]],[[18,41,31],[`entrance`,`entry`,`exit`,`ingress`,`egress`,`gate`,`gateway`,`emergency exit`,`lock`]],[[18,41,31],[`entrance`,`entry`,`exit`,`ingress`,`egress`,`gate`,`gateway`,`emergency exit`]],[[32,37],[`interpunct`,`interpoint`,`middot`,`step`,`punctuation`,`period`,`full stop`,`end`,`finish`,`final`,`characters`,`font`,`typography`,`type`,`center`,`.`]],[[3,14],[`import`,`export`,`save`]],[[21,10,39],[`geometry`,`trigonometry`,`radius`,`diameter`,`circumference`,`calculate`,`measure`,`arc`,`curve`,`draw`,`sketch`]],[[23],[`drama`,`masks`,`theater`,`theatre`,`entertainment`,`show`]],[[39,18,12],[`power`,`bit`,`head`,`hole`,`diy`,`toolbox`,`build`,`construction`]],[[40,12],[`quadcopter`,`uav`,`aerial`,`flight`,`flying`,`technology`,`airborne`,`robotics`]],[[42,17],[`water`,`weather`,`liquid`,`fluid`,`wet`,`moisture`,`damp`,`bead`,`globule`]],[[42,17],[`water`,`weather`,`liquid`,`fluid`,`wet`,`moisture`,`damp`,`bead`,`globule`]],[[42],[`water`,`weather`,`liquid`,`fluid`,`wet`,`moisture`,`damp`,`bead`,`globule`]],[[23,12],[`drummer`,`kit`,`sticks`,`instrument`,`beat`,`bang`,`bass`,`backing track`,`band`,`play`,`performance`,`concert`,`march`,`music`,`audio`,`sound`,`noise`,`loud`]],[[16],[`food`,`chicken`,`meat`]],[[25,35],[`barbell`,`weight`,`workout`,`gym`]],[[22,0],[`hearing`,`noise`,`audio`,`accessibility`]],[[22,0],[`hearing`,`hard of hearing`,`hearing loss`,`deafness`,`noise`,`silence`,`audio`,`accessibility`]],[[25],[`world`,`browser`,`language`,`translate`,`globe`]],[[31,11,12],[`vpn`,`private`,`privacy`,`network`,`world`,`browser`,`security`,`encryption`,`protection`,`connection`]],[[29,10,11,0,28],[`lunar`,`solar`,`crescent moon`,`sun`,`earth`,`day`,`night`,`planet`,`space`,`mode`,`dark`,`light`,`toggle`,`switch`,`color`,`css`,`styles`,`display`,`accessibility`,`contrast`,`brightness`,`blend`,`shade`]],[[16,2],[`bird`,`chicken`,`nest`,`hatch`,`shell`,`incubate`,`soft boiled`,`hard`,`breakfast`,`brunch`,`morning`,`easter`]],[[16],[`food`,`breakfast`]],[[16],[`egg free`,`vegan`,`hatched`,`bad egg`]],[[19,11],[`et cetera`,`etc`,`loader`,`loading`,`progress`,`pending`,`throbber`,`menu`,`options`,`operator`,`code`,`coding`,`spread`,`rest`,`more`,`further`,`extra`,`overflow`,`dots`,`…`,`...`]],[[19],[`menu`,`options`,`spread`,`more`,`further`,`extra`,`overflow`,`dots`,`…`,`...`]],[[21,11],[`calculate`,`math`,`operator`,`assignment`,`code`,`=`]],[[21],[`about`,`calculate`,`math`,`operater`]],[[21,11],[`calculate`,`off`,`math`,`operator`,`code`,`≠`]],[[37],[`pencil`,`drawing`,`undo`,`delete`,`clear`,`trash`,`remove`]],[[7,12,23,17],[`internet`,`network`,`connection`,`cable`,`lan`,`port`,`router`,`switch`,`hub`,`modem`,`web`,`online`,`networking`,`communication`,`socket`,`plug`,`slot`,`controller`,`connector`,`interface`,`console`,`signal`,`data`,`input`,`output`]],[[15],[`currency`,`money`,`payment`]],[[40,25],[`electric`,`charger`,`station`,`vehicle`,`fast`,`plug`,`ev`,`power`,`electricity`,`energy`,`accumulator`,`charge`]],[[37,3],[`scale`,`fullscreen`,`maximize`,`minimize`,`contract`]],[[3,37,34],[`outbound`,`open`,`share`]],[[0,28,10,31],[`view`,`watch`,`see`,`show`,`expose`,`reveal`,`display`,`visible`,`visibility`,`vision`,`preview`,`read`]],[[0,28,10,31],[`view`,`watch`,`see`,`hide`,`conceal`,`mask`,`hidden`,`visibility`,`vision`]],[[0,28,10,31],[`view`,`watch`,`see`,`hide`,`conceal`,`mask`,`hidden`,`visibility`,`vision`]],[[5,25],[`building`,`business`,`energy`,`industry`,`manufacture`,`sector`]],[[18],[`air`,`cooler`,`ventilation`,`ventilator`,`blower`]],[[23,3],[`music`]],[[17],[`logo`]],[[18,5],[`picket`,`panels`,`woodwork`,`diy`,`materials`,`suburban`,`garden`,`property`,`territory`]],[[25],[`big wheel`,`daisy wheel`,`observation`,`attraction`,`entertainment`,`amusement park`,`theme park`,`funfair`]],[[14],[`document`]],[[14],[`zip`,`package`,`archive`]],[[10,14],[`model`,`3d`,`axis`,`coordinates`]],[[14],[`award`,`achievement`,`badge`,`rosette`,`prize`,`winner`]],[[14],[`box`,`package`,`model`]],[[14,11],[`code`,`json`,`curly braces`,`curly brackets`]],[[14,11],[`code`,`json`,`curly braces`,`curly brackets`]],[[14],[`statistics`,`analytics`,`diagram`,`graph`,`presentation`]],[[14],[`statistics`,`analytics`,`diagram`,`graph`,`presentation`,`trending up`]],[[14],[`statistics`,`analytics`,`diagram`,`graph`,`presentation`]],[[14],[`statistics`,`analytics`,`diagram`,`graph`,`presentation`]],[[14],[`done`,`document`,`todo`,`tick`,`complete`,`task`]],[[14],[`done`,`document`,`todo`,`tick`,`complete`,`task`]],[[14,38],[`history`,`log`,`clock`]],[[14,11],[`script`,`document`,`gist`,`html`,`xml`,`property list`,`plist`]],[[14,11],[`script`,`document`,`html`,`xml`,`property list`,`plist`]],[[14],[`executable`,`settings`,`cog`,`edit`,`gear`]],[[14,11],[`diff`,`patch`]],[[14,11],[`number`,`document`]],[[14,3],[`download`,`import`,`export`]],[[14,26],[`hidden`,`warning`,`alert`,`danger`,`protected`,`exclamation mark`]],[[14],[`music`,`audio`,`sound`,`headphones`]],[[14],[`heart`,`favourite`,`bookmark`,`quick link`]],[[14],[`image`,`graphics`,`photo`,`picture`]],[[14,3],[`document`]],[[14,31],[`key`,`private`,`public`,`security`]],[[14,31],[`lock`,`password`,`security`]],[[14],[`delete`,`remove`,`erase`,`document`]],[[14],[`document`]],[[14,23],[`audio`,`sound`,`noise`,`track`,`digital`,`recording`,`playback`,`piano`,`keyboard`,`keys`,`notes`,`chord`,`midi`,`octave`]],[[14,3],[`document`]],[[14],[`signature`]],[[14],[`edit`]],[[14],[`movie`,`video`,`film`]],[[14],[`add`,`create`,`new`,`document`]],[[14],[`add`,`create`,`new`,`document`]],[[14],[`readme`,`help`,`question`]],[[14],[`scan`,`code`,`qr-code`]],[[14],[`lost`,`document`,`find`,`browser`,`lens`]],[[14],[`lost`,`document`,`find`,`browser`,`lens`]],[[14],[`audio`,`music`,`volume`]],[[14,11],[`cogged`,`gear`,`mechanical`,`machinery`,`configuration`,`controls`,`preferences`,`settings`,`system`,`admin`,`edit`,`executable`]],[[14],[`spreadsheet`,`sheet`,`table`]],[[14,11],[`versions`,`multiple`,`copy`,`documents`,`revisions`,`version control`,`history`]],[[14],[`symlink`,`symbolic`,`link`]],[[14,11],[`terminal`,`bash`,`script`,`executable`]],[[14,37],[`data`,`txt`,`pdf`,`document`]],[[14,37],[`font`,`text`,`typography`,`type`]],[[14,37],[`font`,`text`,`typography`,`type`]],[[14,3],[`upload`,`import`,`export`]],[[1,14],[`person`,`personal information`,`people`,`listing`,`networking`,`document`,`contact`,`cover letter`,`resume`,`cv`,`curriculum vitae`,`application form`]],[[14],[`movie`,`video`,`film`]],[[14],[`audio`,`music`,`volume`]],[[14],[`lost`,`delete`,`remove`,`document`]],[[14],[`lost`,`delete`,`remove`,`document`]],[[14],[`multiple`,`copy`,`documents`]],[[28,23],[`movie`,`video`,`reel`,`camera`,`cinema`,`entertainment`]],[[1,31,22,12],[`2fa`,`authentication`,`biometric`,`identity`,`security`]],[[18,39,41],[`flames`,`smoke`,`foam`,`water`,`spray`,`hose`,`firefighter`,`fireman`,`department`,`brigade`,`station`,`emergency`,`suppress`,`compressed`,`tank`,`cylinder`,`safety`,`equipment`,`amenities`]],[[16,2],[`dish`,`restaurant`,`course`,`meal`,`seafood`,`pet`,`sea`,`marine`]],[[16,2],[`food`,`dish`,`restaurant`,`course`,`meal`,`seafood`,`animal`,`pet`,`sea`,`marine`,`allergy`,`intolerance`,`diet`]],[[16,2],[`dish`,`restaurant`,`course`,`meal`,`seafood`,`pet`,`sea`,`marine`]],[[35,41],[`sea`,`boating`,`angler`,`bait`,`reel`,`tackle`,`marine`,`outdoors`,`fish`,`fishing`,`hook`,`sports`,`travel`]],[[35,41],[`fishing`,`rod`,`hobby`,`equipment`,`reel`]],[[1,34],[`report`,`marker`,`notification`,`warning`,`milestone`,`goal`,`notice`,`signal`,`attention`,`banner`]],[[1,34],[`unflag`,`unmark`,`report`,`marker`,`notification`,`warning`,`milestone`,`goal`,`notice`,`signal`,`attention`,`banner`]],[[11,25],[`report`,`timeline`,`marker`,`pin`]],[[11,25],[`report`,`timeline`,`marker`,`pin`]],[[42,34,17],[`heat`,`burn`,`light`,`glow`,`ignite`,`passion`,`ember`,`fire`,`lit`,`burning`,`spark`,`embers`,`smoke`,`firefighter`,`fireman`,`department`,`brigade`,`station`,`emergency`]],[[24,34,17],[`campfire`,`camping`,`wilderness`,`outdoors`,`lit`,`warmth`,`wood`,`twigs`,`sticks`]],[[28,12],[`torch`,`light`,`beam`,`emergency`,`safety`,`tool`,`bright`]],[[28,12],[`torch`,`light`,`beam`,`emergency`,`safety`,`tool`,`bright`]],[[29,17],[`beaker`,`erlenmeyer`,`lab`,`chemistry`,`experiment`,`test`]],[[29,17],[`beaker`,`erlenmeyer`,`non toxic`,`lab`,`chemistry`,`experiment`,`test`]],[[29,17],[`beaker`,`lab`,`chemistry`,`experiment`,`test`]],[[10,28],[`reflect`,`mirror`,`alignment`,`dashed`]],[[10,28],[`reflect`,`mirror`,`alignment`,`dashed`]],[[24,17,36],[`sustainability`,`nature`,`plant`,`spring`]],[[24,36,30],[`sustainability`,`nature`,`plant`]],[[28],[`camera`,`lens`,`photo`,`dashed`]],[[3,19],[`arrow`,`collapse`,`fold`,`vertical`,`dashed`]],[[3,19],[`arrow`,`collapse`,`fold`,`vertical`,`dashed`]],[[14],[`directory`]],[[14],[`archive`,`zip`,`package`]],[[14],[`done`,`directory`,`todo`,`tick`,`complete`,`task`]],[[14,38],[`history`,`directory`,`clock`]],[[14],[`directory`,`closed`]],[[14,11],[`directory`,`coding`,`develop`,`software`]],[[14],[`directory`,`settings`,`control`,`preferences`,`cog`,`edit`,`gear`]],[[14,11],[`directory`,`root`,`project`,`pinned`,`active`,`current`,`cogged`,`gear`,`mechanical`,`machinery`,`configuration`,`controls`,`preferences`,`settings`,`system`,`admin`,`edit`]],[[14,3],[`directory`,`download`,`import`,`export`]],[[14],[`directory`,`root`,`project`,`git`,`repo`]],[[14],[`directory`,`root`,`project`,`git`,`repo`]],[[14],[`directory`,`heart`,`favourite`,`bookmark`,`quick link`]],[[14,3],[`directory`,`import`,`export`]],[[6,11,10,14],[`projects`,`manage`,`overview`,`board`,`tickets`,`issues`,`roadmap`,`plan`,`intentions`,`productivity`,`work`,`agile`,`code`,`coding`,`directory`,`project`,`root`]],[[14,31],[`directory`,`key`,`private`,`security`,`protected`]],[[14,31],[`directory`,`lock`,`private`,`security`,`protected`]],[[14],[`directory`,`remove`,`delete`]],[[14],[`directory`]],[[14,11],[`directory`,`root`,`project`,`active`,`current`,`pinned`]],[[14,3],[`directory`,`import`,`export`]],[[14],[`directory`,`rename`]],[[14],[`directory`,`add`,`create`,`new`]],[[14,11],[`directory`,`root`,`project`,`git`,`repo`]],[[14],[`directory`,`search`,`find`,`lost`,`browser`,`lens`]],[[14],[`directory`,`search`,`find`,`lost`,`browser`,`lens`]],[[14],[`directory`,`symlink`,`symbolic`,`link`]],[[14,3],[`directory`,`synchronize`,`synchronise`,`refresh`,`reconnect`,`transfer`,`backup`]],[[14],[`directory`,`tree`,`browser`]],[[14,3],[`directory`,`upload`,`import`,`export`]],[[14],[`directory`,`remove`,`delete`]],[[14],[`multiple`,`copy`,`directories`]],[[25],[`steps`,`walking`,`foot`,`feet`,`trail`,`shoe`]],[[40],[`machinery`,`industrial`,`warehouse`,`lifting`,`storage`,`equipment`,`heavy-duty`,`moving`,`vehicle`,`transport`,`logistics`]],[[11],[`document`,`page`,`file`,`layout`,`paper`,`stub`,`formality`,`structure`,`template`,`inputs`,`design`,`components`]],[[20],[`send`,`share`,`email`]],[[10,28],[`logo`,`design`,`tool`]],[[13,1],[`emoji`,`face`,`bad`,`sad`,`emotion`]],[[40,25],[`filling-station`,`gas`,`petrol`,`tank`]],[[19,23,10,28],[`expand`,`zoom`,`preview`,`focus`,`camera`,`lens`,`image`]],[[19],[`filter`,`hopper`]],[[19],[`filter`,`hopper`,`add`,`create`,`new`]],[[19],[`filter`,`hopper`,`remove`,`delete`]],[[19,10,11,28,23],[`carousel`,`pictures`,`images`,`scroll`,`swipe`,`album`,`portfolio`]],[[19,10,11,28,23,14],[`carousel`,`pictures`,`images`,`scroll`,`swipe`,`album`,`portfolio`,`history`,`versions`,`backup`,`time machine`]],[[19,10,11,28,23],[`carousel`,`pictures`,`images`,`album`,`portfolio`,`preview`]],[[19,10,11,28,23],[`carousel`,`pictures`,`images`,`scroll`,`swipe`,`album`,`portfolio`]],[[19,10,11,28,23,14],[`carousel`,`pictures`,`images`,`scroll`,`swipe`,`album`,`portfolio`,`history`,`versions`,`backup`,`time machine`]],[[17,12],[`console`]],[[17,12],[`console`]],[[17,12],[`direction`,`arrow`,`controller`,`navigation`,`button`,`move`,`pointer`,`arrowhead`,`console`,`game`,`gaming`]],[[40,35,29],[`dashboard`,`dial`,`meter`,`speed`,`pressure`,`measure`,`level`]],[[25,39],[`justice`,`law`,`court`,`judgment`,`legal`,`hands`,`penalty`,`decision`,`authority`,`hammer`,`mallet`]],[[17,11,15],[`diamond`,`crystal`,`ruby`,`jewellery`,`price`,`special`,`present`,`gift`,`ring`,`wedding`,`proposal`,`marriage`,`rubygems`]],[[15],[`currency`,`money`,`payment`]],[[17],[`pac-man`,`spooky`]],[[17,1],[`present`,`box`,`birthday`,`party`]],[[11],[`code`,`version control`,`vcs`,`repository`]],[[11],[`code`,`version control`,`vcs`,`repository`,`delete`,`remove`,`-`]],[[11],[`code`,`version control`,`vcs`,`repository`,`add`,`create`,`+`]],[[11,25],[`code`,`version control`,`waypoint`,`stop`,`station`]],[[11,25],[`code`,`version control`,`waypoint`,`stop`,`station`]],[[11],[`code`,`version control`,`diff`]],[[11,3],[`code`,`version control`,`diff`]],[[11],[`code`,`version control`]],[[11],[`code`,`version control`,`commit graph`,`commits`,`gitlens`]],[[11],[`code`,`version control`]],[[11],[`code`,`version control`,`commits`,`diff`,`error`,`conflict`]],[[11],[`code`,`version control`,`open`]],[[11,3],[`code`,`version control`,`open`]],[[11],[`code`,`version control`,`rejected`,`closed`,`cancelled`,`x`]],[[11],[`code`,`version control`,`open`,`plus`,`add`,`+`]],[[11,3],[`code`,`version control`,`open`,`plus`,`add`,`+`]],[[11],[`code`,`version control`,`open`,`draft`,`dashed`]],[[16],[`beverage`,`drink`,`glass`,`water`]],[[0],[`glasses`,`spectacles`]],[[25],[`world`,`browser`,`language`,`translate`]],[[31,11,12],[`vpn`,`private`,`privacy`,`network`,`world`,`browser`,`security`,`encryption`,`protection`,`connection`]],[[25,8,12],[`globe`,`earth`,`planet`,`disable`,`mute`,`off`,`hide`,`avoid`,`world`,`browser`,`language`,`translate`,`internet`,`offline`,`disconnected`,`network`,`connection`,`no connection`,`network failure`,`signal off`]],[[8,12,25],[`globe`,`internet`,`offline`,`disconnected`,`network`,`connection`,`world`,`no connection`,`network failure`,`signal off`]],[[17],[`flag`,`bullseye`]],[[12,17],[`processor`,`cores`,`technology`,`computer`,`chip`,`circuit`,`specs`,`graphics processing unit`,`video card`,`display adapter`,`gddr`,`rendering`,`digital image processing`,`crypto mining`]],[[5],[`school`,`university`,`learn`,`study`,`mortarboard`,`education`,`ceremony`,`academic`,`hat`,`diploma`,`bachlor's`,`master's`,`doctorate`]],[[16],[`fruit`,`wine`,`food`]],[[37,19,10,21],[`table`,`rows`,`columns`,`blocks`,`plot`,`land`,`geometry`,`measure`,`size`,`width`,`height`,`distance`,`surface area`,`square meter`,`acre`,`window`,`skylight`]],[[37,19,21],[`table`,`rows`,`columns`,`blocks`,`plot`,`land`,`geometry`,`measure`,`data`,`size`,`width`,`height`,`distance`,`surface area`,`square meter`,`acre`]],[[37,19,21],[`table`,`rows`,`columns`,`blocks`,`plot`,`land`,`geometry`,`measure`,`data`,`size`,`width`,`height`,`distance`,`surface area`,`square meter`,`acre`]],[[37,19,21],[`table`,`rows`,`columns`,`data`,`blocks`,`plot`,`land`,`geometry`,`measure`,`size`,`width`,`height`,`distance`,`surface area`,`square meter`,`acre`]],[[37,21,19,10],[`table`,`rows`,`columns`,`blocks`,`plot`,`land`,`geometry`,`measure`,`size`,`width`,`height`,`distance`,`surface area`,`square meter`,`acre`,`window`]],[[37,19,10],[`table`,`rows`,`columns`]],[[19],[`grab`,`dots`,`handle`,`move`,`drag`]],[[19],[`grab`,`dots`,`handle`,`move`,`drag`]],[[19],[`grab`,`dots`,`handle`,`move`,`drag`]],[[14],[`cubes`,`packages`,`parts`,`units`,`collection`,`cluster`,`gather`,`dashed`]],[[23],[`acoustic`,`instrument`,`strings`,`riff`,`rock`,`band`,`country`,`concert`,`performance`,`play`,`lead`,`loud`,`music`,`audio`,`sound`,`noise`]],[[16],[`food`,`pork`,`pig`,`meat`,`bone`,`hock`,`knuckle`,`gammon`,`cured`]],[[16],`burger.cheeseburger.meat.beef.patty.bun.fast food.junk food.takeaway.takeout.snack.dish.restaurant.lunch.meal.savory.savoury.cookery.cooking.grilled.barbecue.barbeque.bbq.lettuce.tomato.relish.pickles.onions.ketchup.mustard.mayonnaise`.split(`.`)],[[39,18],[`mallet`,`nails`,`diy`,`toolbox`,`build`,`construction`]],[[9,0],[`wave`,`move`,`mouse`,`grab`]],[[15,1],[`savings`,`banking`,`money`,`finance`,`offers`,`mortgage`,`payment`,`received`,`wage`,`payroll`,`allowance`,`pocket money`,`handout`,`pennies`]],[[34,13,7,35],[`clench`,`strength`,`power`,`unity`,`solidarity`,`rebellion`,`victory`,`triumph`,`support`,`fight`,`combat`,`brawl`]],[[9,10,19],[`hand`]],[[34],[`love`,`like`,`emotion`]],[[13],[`agreement`,`help`,`proposal`,`charity`,`begging`,`terms`]],[[13,23],[`rock`]],[[16,27],[`waiter`,`waitress`,`restaurant`,`table service`,`served`,`dinner`,`dining`,`meal`,`course`,`luxury`]],[[33,40],[`bag`,`baggage`,`carry`,`clutch`,`fashion`,`luggage`,`purse`,`tote`,`travel`]],[[1,34,7,15,31],[`agreement`,`partnership`,`deal`,`business`,`assistance`,`cooperation`,`friendship`,`union`,`terms`]],[[11,12],[`computer`,`server`,`memory`,`data`,`ssd`,`disk`,`hard disk`,`storage`,`hardware`,`backup`,`media`]],[[11,12,3,14],[`computer`,`server`,`memory`,`data`,`ssd`,`disk`,`hard disk`,`save`]],[[11,12,3,14],[`computer`,`server`,`memory`,`data`,`ssd`,`disk`,`hard disk`,`save`]],[[39],[`helmet`,`construction`,`safety`,`savety`]],[[37,34],[`hashtag`,`number`,`pound`]],[[34,1,31],[`incognito`,`disguise`,`costume`,`masked`,`anonymous`,`anonymity`,`privacy`,`private browsing`,`stealth`,`hidden`,`undercover`,`cloak`,`invisible`,`ghost`,`spy`,`agent`,`detective`,`identity`,`cap`,`fedora`,`spectacles`,`shades`,`sunglasses`,`eyewear`]],[[42],[`mist`,`fog`]],[[12,23],[`tv`,`resolution`,`video`,`high definition`,`720p`,`1080p`]],[[12,23,17],[`socket`,`plug`,`slot`,`controller`,`connector`,`interface`,`console`,`signal`,`audio`,`video`,`visual`,`av`,`data`,`input`,`output`]],[[37],[`h1`,`html`,`markup`,`markdown`]],[[37],[`h1`,`html`,`markup`,`markdown`]],[[37],[`h2`,`html`,`markup`,`markdown`]],[[37],[`h3`,`html`,`markup`,`markdown`]],[[37],[`h4`,`html`,`markup`,`markdown`]],[[37],[`h5`,`html`,`markup`,`markdown`]],[[37],[`h6`,`html`,`markup`,`markdown`]],[[23,8,7,12,17],[`music`,`audio`,`sound`,`mute`,`off`]],[[23,8,12,14,17],[`music`,`audio`,`sound`]],[[23,8,12,14,17],[`music`,`audio`,`sound`,`gaming`,`headphones`,`headset`,`call`,`center`,`phone`,`telephone`,`voip`,`video`]],[[22,34,23,13,17,32],[`like`,`love`,`emotion`,`suit`,`playing`,`cards`]],[[13],[`heartbreak`,`sadness`,`emotion`]],[[13,1,31],[`agreement`,`charity`,`help`,`deal`,`terms`,`emotion`,`together`,`handshake`]],[[22,1,23,17,34],[`unlike`,`unfavorite`,`remove`,`damage`,`ui & ux`]],[[34,23],[`unlike`,`dislike`,`hate`,`emotion`]],[[22,1,23,17,34],[`plus`,`like`,`favorite`,`add`,`health`,`support`]],[[22],[`heartbeat`,`pulse`,`health`,`medical`,`blood pressure`,`cardiac`,`systole`,`diastole`]],[[18,12,41],[`heating`,`warmth`,`comfort`,`fire`,`stove`,`electric`,`electronics`,`amenities`]],[[40,41],[`transport`,`flying`,`rotor`,`aviation`,`helipad`,`gear`,`flyer`,`technology`,`helicopter`,`aircraft`,`vehicle`]],[[32,4,11],[`shape`,`node.js`,`logo`]],[[37,10],[`mark`,`text`]],[[3,38],[`time`,`redo`,`undo`,`rewind`,`timeline`,`version`,`time machine`,`backup`,`rotate`,`ccw`]],[[16],[`beer`,`brewery`,`drink`]],[[16],[`beer`,`brewery`,`drink`,`hop free`,`allergy`,`intolerance`,`diet`]],[[22,5,25,41],[`infirmary`,`sanatorium`,`healthcare`,`doctor`,`hospice`,`clinic`,`emergency room`,`ward`,`building`,`medical`,`vet`]],[[5,25,41],[`building`,`hostel`,`motel`,`inn`]],[[38,17],[`timer`,`time`,`sandglass`]],[[5,18,25],[`home`,`living`,`building`,`residence`,`architecture`]],[[18,5,22],[`home sweet home`,`abode`,`building`,`residence`,`healthy living`,`lifestyle`]],[[5,18,36],[`home`,`living`,`building`,`residence`,`architecture`,`autarky`,`energy`]],[[5,22],[`home`,`living`,`medical`,`new`,`addition`,`building`,`residence`,`architecture`]],[[18,5,8],[`home`,`living`,`building`,`wifi`,`connectivity`]],[[16],[`gelato`,`food`,`dessert`,`dish`,`restaurant`,`course`,`meal`]],[[16],[`gelato`,`food`]],[[31,1],[`card`,`badge`,`identity`,`authentication`,`secure`]],[[31,1],[`id-card`,`id-card-lanyard`,`identity`,`employee`,`gate-pass`,`badge`]],[[28,37,23,14],[`picture`,`photo`]],[[28,37,23,14],[`picture`,`photo`,`download`,`save`,`export`]],[[28,23,14],[`remove`,`delete`]],[[28,23,14],[`picture`,`photo`]],[[28,37,23,14],[`picture`,`gif`,`photo`]],[[28,23,14],[`add`,`create`,`picture`]],[[28,37,23,14],[`picture`,`photo`,`upload`,`import`]],[[28,23],[`resize`,`picture`,`sharpen`,`increase`]],[[28,37,23,14],[`picture`,`photo`,`multiple`,`copy`,`gallery`,`album`,`collection`,`slideshow`,`showcase`]],[[3,14],[`save`]],[[1,20],[`email`]],[[15],[`currency`,`money`,`payment`]],[[23],[`unlimited`,`forever`,`loop`,`math`]],[[0,26],[`about`,`advice`,`clue`,`details`,`help`,`hint`,`indicator`,`information`,`knowledge`,`notice`,`status`,`support`,`tooltip`]],[[39],[`access`,`cover`,`tile`,`metal`,`materials`,`screws`]],[[37],[`oblique`,`text`,`format`]],[[3,10],[`arrow`,`right`]],[[3,10],[`arrow`,`left`]],[[15],[`currency`,`money`,`payment`]],[[17,12],[`game`,`console`,`control stick`]],[[6,11,10],[`projects`,`manage`,`overview`,`board`,`tickets`,`issues`,`roadmap`,`plan`,`intentions`,`productivity`,`work`,`agile`,`code`,`coding`]],[[40],[`kayak`,`boat`,`paddle`,`water`,`sport`,`recreation`,`adventure`,`outdoors`,`equipment`,`lake`,`ocean`]],[[31,1],[`password`,`login`,`authentication`,`secure`,`unlock`,`keychain`,`key ring`,`fob`]],[[31,1],[`password`,`login`,`authentication`,`secure`,`unlock`]],[[31,1],[`password`,`login`,`authentication`,`secure`,`unlock`,`car key`]],[[37,12,11],[`layout`,`spell`,`settings`,`mouse`]],[[23,12],[`music`,`audio`,`sound`,`noise`,`notes`,`keys`,`chord`,`octave`,`midi`,`controller`,`instrument`,`electric`,`signal`,`digital`,`studio`,`production`,`producer`,`pianist`,`piano`,`play`,`performance`,`concert`]],[[12,37,11],[`unkeys`,`layout`,`spell`,`settings`,`mouse`]],[[18],[`lighting`,`household`,`home`,`furniture`]],[[18],[`lighting`,`household`,`home`,`furniture`]],[[18],[`lighting`,`household`,`office`,`desk`,`home`,`furniture`]],[[18],[`lighting`,`household`,`floor`,`home`,`furniture`]],[[18],[`lighting`,`household`,`wall`,`home`,`furniture`]],[[18],[`lighting`,`household`,`wall`,`home`,`furniture`]],[[10,39,21,35,17],[`area`,`surface`,`square metres`,`allotment`,`parcel`,`property`,`plane`,`acres`,`measure`,`distance`,`isometric`,`flag`,`golf course`,`hole`]],[[15,25,5],[`bank`,`building`,`capitol`,`finance`,`money`,`museum`,`art gallery`,`hall`,`institute`,`pediment`,`portico`,`columns`,`pillars`,`classical`,`architecture`,`government`,`institution`]],[[37],[`translate`]],[[12],[`computer`,`screen`,`remote`]],[[12],[`computer`,`screen`,`remote`]],[[12,26],[`computer`,`screen`,`remote`,`success`,`done`,`todo`,`tick`,`complete`,`task`]],[[10,9],[`select`,`cursor`]],[[3,10,9],[`select`,`cursor`]],[[13],[`emoji`,`face`,`happy`,`good`,`emotion`]],[[10,19],[`stack`,`pile`,`pages`,`sheets`,`paperwork`,`copies`,`copy`]],[[10,19],[`stack`,`pile`,`pages`,`sheets`,`paperwork`,`copies`,`copy`,`duplicate`,`double`,`shortcuts`]],[[10,19],[`stack`,`layers`,`add`,`new`,`increase`,`create`,`positive`,`copy`,`upgrade`]],[[10,19],[`masonry`,`brick`]],[[10,19],[`app`,`home`,`start`]],[[10,19,28,37],[`todo`,`tasks`,`items`,`pending`,`image`,`photo`]],[[10,19],[`app`,`home`,`start`,`grid`]],[[19],[`window`,`webpage`,`block`,`section`,`grid`,`template`,`structure`]],[[19],[`window`,`webpage`,`block`,`section`]],[[24,36,30],[`sustainability`,`nature`,`energy`,`plant`,`autumn`]],[[16,13,36],[`salad`,`lettuce`,`vegetable`,`chard`,`cabbage`,`bok choy`]],[[7,23],[`pulpit`,`podium`,`stand`]],[[29,39,32],[`concave`,`lens`,`optics`,`light`,`magnification`,`curved`,`focus`,`refraction`,`science`,`physics`,`eyeglass`,`telescope`,`microscope`]],[[29,39,32],[`convex`,`lens`,`optics`,`magnification`,`focus`,`light`,`refraction`,`physics`,`eyeglass`,`telescope`,`microscope`,`curved`,`science`]],[[37,28,23,25,11],[`books`,`reading`,`written`,`authors`,`stories`,`fiction`,`novels`,`information`,`knowledge`,`education`,`high school`,`university`,`college`,`academy`,`learning`,`study`,`research`,`collection`,`vinyl`,`records`,`albums`,`music`,`package`]],[[37,28,23,25,11],[`books`,`reading`,`written`,`authors`,`stories`,`fiction`,`novels`,`information`,`knowledge`,`education`,`high school`,`university`,`college`,`academy`,`learning`,`study`,`research`,`collection`,`vinyl`,`records`,`albums`,`music`,`package`]],[[0,22],[`preserver`,`life belt`,`lifesaver`,`help`,`rescue`,`ship`,`ring`,`raft`,`inflatable`,`wheel`,`donut`]],[[37],[`text`,`font`,`typography`,`alternates`,`alternatives`]],[[28],[`idea`,`bright`,`lights`]],[[28],[`lights`]],[[11,25],[`code`,`version control`,`waypoint`,`stop`,`station`,`last`,`end`]],[[32,21,10],[`line`,`snakes`,`annotate`,`curve`,`doodle`,`stroke`,`pen`,`tool`,`gesture`,`draw`,`wave`,`art`,`road`]],[[37,1],[`chain`,`url`]],[[37,1],[`chain`,`url`]],[[37],[`unchain`,`chain`]],[[37],[`options`]],[[37],[`done`,`check`,`tick`,`complete`,`list`,`to-do`,`bom`]],[[37],[`todo`,`done`,`check`,`tick`,`complete`,`tasks`,`items`,`pending`]],[[37,3],[`options`,`items`,`collapse`,`expand`,`details`,`disclosure`,`show`,`hide`,`toggle`,`accordion`,`more`,`less`,`fold`,`unfold`,`vertical`]],[[37,3],[`options`,`items`,`collapse`,`expand`,`details`,`disclosure`,`show`,`hide`,`toggle`,`accordion`,`more`,`less`,`fold`,`unfold`,`vertical`]],[[37],[`items`,`collapse`,`expand`,`details`,`disclosure`,`show`,`hide`,`toggle`,`accordion`,`more`,`less`,`fold`,`unfold`]],[[23,37],[`queue`,`bottom`,`end`,`playlist`]],[[37],[`options`]],[[37,19],[`filter`,`plus`,`options`,`add`]],[[37,11],[`text`,`tab`]],[[37,11],[`text`,`tab`]],[[23,37],[`playlist`,`remove`,`song`,`subtract`,`delete`,`unqueue`]],[[23],[`playlist`,`queue`,`music`,`audio`,`playback`]],[[37],[`number`,`order`,`queue`]],[[23,37],[`playlist`,`add`,`song`,`track`,`new`]],[[23,37],[`reset`,`refresh`,`reload`,`playlist`,`replay`]],[[23,37],[`queue`,`top`,`start`,`next`,`playlist`]],[[37],[`todo`,`done`,`check`,`tick`,`complete`,`tasks`,`items`,`pending`]],[[14,37,19],[`tree`,`browser`]],[[23],[`playlist`,`video`,`playback`]],[[23,37],[`playlist`,`subtract`,`remove`,`delete`,`unqueue`]],[[9,23,19,10],[`loading`,`wait`,`busy`,`progress`,`spinner`,`spinning`,`throbber`]],[[9,23,19],[`loading`,`wait`,`busy`,`progress`,`spinner`,`spinning`,`throbber`,`circle`]],[[9,10],[`loading`,`wait`,`busy`,`progress`,`throbber`,`spinner`,`spinning`,`beach ball`,`frozen`,`freeze`]],[[25],[`map`,`gps`,`location`,`cross`]],[[25],[`map`,`gps`,`location`,`cross`]],[[25],[`map`,`gps`,`location`,`cross`]],[[31],[`security`,`password`,`secure`,`admin`]],[[31],[`security`,`password`,`secure`,`admin`]],[[31],[`security`]],[[31],[`security`]],[[3,1],[`sign in`,`arrow`,`enter`,`auth`]],[[3,1],[`sign out`,`arrow`,`exit`,`auth`]],[[37],[`options`,`list`,`menu`,`order`,`queue`,`tasks`,`logs`]],[[16],[`lolly`,`candy`,`sugar`,`food`,`sweet`,`dessert`,`spiral`]],[[41,40],[`baggage`,`luggage`,`travel`,`suitcase`]],[[10],[`horseshoe`,`lock`,`science`,`snap`]],[[37,1,20],[`email`,`message`,`letter`,`unread`]],[[20],[`email`,`message`,`letter`,`subscribe`,`delivered`,`success`,`read`,`done`,`todo`,`tick`,`complete`,`task`]],[[20],[`email`,`message`,`letter`,`remove`,`delete`]],[[20],[`email`,`message`,`letter`,`read`]],[[20],[`email`,`message`,`letter`,`add`,`create`,`new`,`compose`]],[[20],[`email`,`message`,`letter`,`delivery`,`undelivered`]],[[20],[`email`,`message`,`letter`,`search`,`lens`]],[[20],[`email`,`message`,`letter`,`delivery error`,`exclamation mark`]],[[20],[`email`,`message`,`letter`,`remove`,`delete`]],[[20],[`emails`,`messages`,`letters`,`mailing list`,`newsletter`]],[[20],[`emails`,`messages`,`letters`,`multiple`,`mailing list`,`newsletter`,`copy`]],[[37,25],[`location`,`navigation`,`travel`]],[[25,41],[`location`,`navigation`,`travel`,`drop`,`delete`,`remove`,`erase`]],[[25,41,1],[`location`,`waypoint`,`marker`,`drop`]],[[25,41,1],[`location`,`waypoint`,`marker`,`drop`,`done`,`tick`,`complete`,`task`,`added`]],[[25,41,1],[`location`,`waypoint`,`marker`,`drop`,`done`,`tick`,`complete`,`task`,`added`]],[[25,41,1],[`location`,`waypoint`,`marker`,`drop`,`home`,`living`,`building`,`residence`,`architecture`,`address`,`poi`,`real estate`,`property`,`navigation`,`destination`,`geolocation`,`place`,`landmark`]],[[25,41,1],[`location`,`waypoint`,`marker`,`drop`,`delete`,`remove`,`erase`]],[[25,41,1],[`location`,`waypoint`,`marker`,`drop`,`delete`,`remove`,`erase`]],[[25,41],[`location`,`waypoint`,`marker`,`remove`]],[[25,41,1],[`location`,`waypoint`,`marker`,`drop`,`edit`]],[[25,41,1],[`location`,`waypoint`,`marker`,`drop`,`add`,`create`,`new`]],[[25,41,1],[`location`,`waypoint`,`marker`,`drop`,`add`,`create`,`new`]],[[25,41,1],[`location`,`waypoint`,`marker`,`drop`,`delete`,`remove`,`erase`]],[[25,41,1],[`location`,`waypoint`,`marker`,`drop`,`delete`,`remove`,`erase`]],[[25,41,1],[`location`,`waypoint`,`marker`,`drop`]],[[25],[`location`,`navigation`,`travel`,`new`,`add`,`create`]],[[22],[`gender`,`sex`,`male`,`masculine`,`man`,`boy`]],[[22],[`gender`,`androgyne`,`transgender`]],[[16],[`cocktail`,`alcohol`,`beverage`,`bar`,`drink`,`glass`]],[[19,10],[`fullscreen`,`expand`,`dashed`]],[[3,19,10],[`fullscreen`,`arrows`,`expand`]],[[35,17],[`prize`,`sports`,`winner`,`trophy`,`award`,`achievement`]],[[23,26],[`advertisement`,`announcement`,`attention`,`alert`,`loudspeaker`,`megaphone`,`notification`]],[[23,26],[`advertisement`,`announcement`,`attention`,`alert`,`loudspeaker`,`megaphone`,`notification`,`disable`,`silent`]],[[13],[`emoji`,`face`,`neutral`,`emotion`]],[[12,17],[`ram`,`random access`,`technology`,`computer`,`chip`,`circuit`,`specs`,`capacity`,`gigabytes`,`gb`]],[[19,1],[`bars`,`navigation`,`hamburger`,`options`]],[[11,3],[`combine`,`join`,`unite`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`]],[[34,1],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`moderate`,`check`,`done`,`todo`,`complete`]],[[11,34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`code review`,`coding`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`draft`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`positive`,`like`,`love`,`interest`,`valentine`,`dating`,`date`,`speech bubble`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`typing`,`writing`,`responding`,`ellipsis`,`etc`,`et cetera`,`...`,`…`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`clear`,`close`,`delete`,`remove`,`cancel`,`silence`,`mute`,`moderate`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`add`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`help`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`reply`,`response`]],[[34,26],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`report`,`abuse`,`offense`,`alert`,`danger`,`caution`,`protected`,`exclamation mark`]],[[1,34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`clear`,`close`,`delete`,`remove`,`cancel`,`silence`,`mute`,`moderate`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`]],[[34,1],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`moderate`,`check`,`done`,`todo`,`complete`]],[[11,34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`code review`,`coding`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`draft`]],[[11,14,34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`add`,`patch`,`difference`,`plus`,`minus`,`plus-minus`,`math`,`code review`,`coding`,`version control`,`git`]],[[34,26],[`unread`,`unresolved`,`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`positive`,`like`,`love`,`interest`,`valentine`,`dating`,`date`,`speech bubble`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`secure`,`encrypted`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`typing`,`writing`,`responding`,`ellipsis`,`etc`,`et cetera`,`...`,`…`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`clear`,`close`,`delete`,`remove`,`cancel`,`silence`,`mute`,`moderate`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`add`]],[[34,37],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`blockquote`,`quotation`,`indent`,`reply`,`response`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`reply`,`response`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`network`,`forward`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`]],[[34,26],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`report`,`abuse`,`offense`,`alert`,`danger`,`caution`,`protected`,`exclamation mark`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubble`,`clear`,`close`,`delete`,`remove`,`cancel`,`silence`,`mute`,`moderate`]],[[34],[`comment`,`chat`,`conversation`,`dialog`,`feedback`,`speech bubbles`,`copy`,`multiple`,`discussion`,`interview`,`debate`]],[[23,38],[`metronome`,`tempo`,`rhythm`,`beat`,`bpm`,`music`,`audio`,`sound`,`practice`,`timing`,`timer`,`time`,`pulse`,`sync`,`cadence`,`control`,`playback`,`studio`,`tool`]],[[12,7,8,23],[`record`,`sound`,`listen`,`radio`,`podcast`,`microphone`]],[[12,7,8,23],[`record`,`sound`,`mute`,`microphone`]],[[12,23],[`lyrics`,`voice`,`listen`,`sound`,`music`,`radio`,`podcast`,`karaoke`,`singing`,`microphone`]],[[12],[`processor`,`cores`,`technology`,`computer`,`chip`,`integrated circuit`,`memory`,`ram`,`specs`,`gpu`,`gigahertz`,`ghz`]],[[29,22],[`medical`,`education`,`science`,`imaging`,`research`]],[[16,18],[`oven`,`cooker`,`toaster oven`,`bake`]],[[3,25,11,17],[`signpost`,`direction`,`right`,`east`,`forward`,`version control`,`waypoint`]],[[16],[`lactose`,`bottle`,`beverage`,`drink`,`water`,`diet`]],[[16],[`lactose free`,`bottle`,`beverage`,`drink`,`water`,`allergy`,`intolerance`,`diet`]],[[19,10],[`exit fullscreen`,`close`,`shrink`]],[[3,19,10],[`exit fullscreen`,`arrows`,`close`,`shrink`]],[[21,11,37,39],[`subtract`,`remove`,`decrease`,`decrement`,`reduce`,`negative`,`calculate`,`line`,`divider`,`separator`,`horizontal rule`,`hr`,`html`,`markup`,`markdown`,`---`,`toolbar`,`operator`,`code`,`coding`,`minimum`,`downgrade`]],[[29,18,39],[`reflection`,`optics`,`glass`,`surface`,`image`,`physics`,`science`,`bathroom`,`decor`,`cosmetic`,`shiny`,`periscope`,`vanity`]],[[29,18,39],[`reflection`,`optics`,`glass`,`surface`,`image`,`physics`,`science`,`bathroom`,`vanity`,`makeup`,`decor`,`cosmetic`,`shiny`,`periscope`]],[[8,12],[`tv`,`screen`,`display`,`virtual machine`,`vm`]],[[8,12],[`tv`,`screen`,`display`,`desktop`,`running`,`active`,`virtual machine`,`vm`]],[[8,12,11],[`virtual machine`,`virtual desktop`,`vm`,`vdi`,`computing`,`remote work`,`monitoring`,`infrastructure`,`software as a service`,`saas`,`workstation`,`environment`,`tv`,`screen`,`display`]],[[8,12],[`tv`,`screen`,`display`,`virtual machine`,`vm`,`executable`,`settings`,`cog`,`edit`,`gear`,`configuration`,`preferences`,`system`,`control panel`,`network`,`computing`]],[[8,12],[`tv`,`screen`,`display`,`desktop`,`running`,`active`,`virtual machine`,`vm`]],[[8,12],[`tv`,`screen`,`display`,`desktop`,`download`]],[[8,12],[`share`]],[[8,12,23],[`tv`,`screen`,`display`,`desktop`,`video`,`movie`,`film`,`suspend`,`hibernate`,`boot`,`virtual machine`,`vm`]],[[8,12,23],[`tv`,`screen`,`display`,`desktop`,`video`,`movie`,`film`,`running`,`start`,`boot`,`virtual machine`,`vm`]],[[8,12],[`smartphone`,`phone`,`cellphone`,`device`,`mobile`,`desktop`,`monitor`,`responsive`,`screens`]],[[8,12],[`devices`,`connect`,`cast`]],[[8,12,23],[`tv`,`screen`,`display`,`desktop`,`video`,`movie`,`film`,`stop`,`shutdown`,`virtual machine`,`vm`]],[[8,12],[`tv`,`screen`,`display`,`upload`,`connect`,`remote`,`screen share`]],[[8,12],[`tv`,`screen`,`display`,`desktop`,`virtual machine`,`vm`,`close`,`stop`,`suspend`,`remove`,`delete`]],[[0],[`dark`,`night`]],[[0,42],[`dark`,`night`,`star`]],[[40],[`moto`,`motorcycle`,`transport`,`vehicle`,`drive`,`ride`,`trip`,`race`,`racing`,`journey`,`delivery`]],[[24,17],[`climb`,`hike`,`rock`]],[[24],[`alpine`,`climb`,`snow`]],[[12],[`device`,`scroll`,`click`]],[[12],[`device`,`scroll`,`click`]],[[12],[`device`,`scroll`,`click`,`disabled`]],[[3,9],[`click`,`select`]],[[3,9],[`click`,`select`]],[[3,9],[`pointer`,`mouse`,`cursor`,`off`,`disable`,`arrow`,`navigation`,`selection`,`select`,`click`,`no-click`,`interaction`]],[[3,9],[`wait`,`busy`,`loading`,`blocked`,`frozen`,`freeze`]],[[3,9],[`click`,`select`]],[[12],[`device`,`scroll`,`click`]],[[3,9],[`arrows`]],[[10],[`arrows`,`axis`,`gizmo`,`coordinates`,`transform`,`translate`]],[[3,9],[`double`,`arrow`]],[[3,9],[`double`,`arrow`]],[[3],[`arrow`,`direction`,`downwards`,`south`]],[[3],[`arrow`,`direction`]],[[3],[`arrow`,`direction`]],[[3,9],[`double`,`arrow`]],[[3],[`arrow`,`direction`,`back`,`west`]],[[3],[`arrow`,`direction`,`trend flat`,`east`]],[[3],[`arrow`,`direction`,`upwards`,`north`]],[[3],[`arrow`,`direction`]],[[3],[`arrow`,`direction`]],[[3,9],[`double`,`arrow`]],[[23,14],[`note`,`quaver`,`eighth note`]],[[23,14],[`quaver`,`eighth note`,`note`]],[[23,14],[`crotchet`,`minim`,`quarter note`,`half note`,`note`]],[[23,14],[`semiquaver`,`sixteenth note`,`note`]],[[25],[`location`,`travel`]],[[25],[`location`,`travel`]],[[25],[`location`,`travel`]],[[25],[`location`,`travel`]],[[11],[`tree`]],[[23,7],[`news`,`feed`,`home`,`magazine`,`article`,`headline`]],[[7,15,12],[`contactless`,`payment`,`near-field communication`]],[[22],[`gender`,`nonbinary`,`enby`]],[[37,7,34,10],`notepad.notes.stationery.sketchbook.moleskine.closure.strap.band.elastic.organizer.organiser.planner.diary.journal.writing.written.writer.reading.high school.university.college.academy.student.study.homework.research`.split(`.`)],[[37,34],[`pencil`,`notepad`,`notes`,`noted`,`stationery`,`sketchbook`,`organizer`,`organiser`,`planner`,`diary`,`journal`,`writing`,`write`,`written`,`reading`,`high school`,`university`,`college`,`academy`,`student`,`study`,`research`,`homework`,`eraser`,`rubber`]],[[1,7,34],[`notepad`,`notes`,`people`,`family`,`friends`,`acquaintances`,`contacts`,`details`,`addresses`,`phone numbers`,`directory`,`listing`,`networking`,`alphabetical`,`a-z`,`organizer`,`organiser`,`planner`,`diary`,`stationery`]],[[37,34],[`notepad`,`notes`,`pages`,`paper`,`stationery`,`sketchbook`,`organizer`,`organiser`,`planner`,`diary`,`journal`,`writing`,`write`,`written`,`reading`,`high school`,`university`,`college`,`academy`,`student`,`study`,`research`,`homework`,`lines`,`opened`]],[[37,34],[`notebook`,`notes`,`pages`,`paper`,`stationery`,`sketchbook`,`organizer`,`organiser`,`planner`,`diary`,`journal`,`writing`,`write`,`written`,`reading`,`high school`,`university`,`college`,`academy`,`student`,`study`,`homework`,`research`,`lines`,`opened`]],[[37,34],[`notebook`,`notes`,`pages`,`paper`,`stationery`,`diary`,`journal`,`writing`,`write`,`written`,`draft`,`template`,`lines`]],[[16],[`hazelnut`,`acorn`,`food`,`diet`]],[[16],[`hazelnut`,`acorn`,`food`,`allergy`,`intolerance`,`diet`]],[[32],[`stop`,`shape`]],[[26,32],[`warning`,`alert`,`danger`,`exclamation mark`]],[[40],[`stop`,`forbidden`,`subtract`,`remove`,`decrease`,`reduce`,`-`,`traffic`,`halt`,`restricted`]],[[23,32],[`music`,`audio`,`stop`]],[[21,26],[`delete`,`stop`,`alert`,`warning`,`times`,`clear`,`math`]],[[21,11,37,29],[`greek`,`symbol`,`mathematics`,`education`,`physics`,`engineering`,`ohms`,`electrical resistance`,`angular frequency`,`dynamical systems`,`astronomy`,`constellations`,`philosophy`]],[[11],[`keyboard`,`key`,`mac`,`alt`,`button`]],[[29],[`planet`,`space`,`physics`,`satellites`,`moons`]],[[2,10],[`paper`,`bird`]],[[14,11],[`box`,`container`,`storage`,`sealed`,`delivery`,`undelivered`,`unopened`,`packed`,`archive`,`zip`,`module`]],[[14,11],[`box`,`container`,`storage`,`sealed`,`packed`,`unopened`,`undelivered`,`archive`,`zip`]],[[11],[`confirm`,`verified`,`done`,`todo`,`tick`,`complete`,`task`,`delivered`]],[[11],[`delete`,`remove`]],[[14,11],[`box`,`container`,`storage`,`unpack`,`unarchive`,`unzip`,`opened`,`delivered`]],[[11],[`new`,`add`,`create`]],[[14,11],[`find`,`product process`,`lens`]],[[11],[`delete`,`remove`]],[[10,39],[`fill`,`paint`,`bucket`,`color`,`colour`]],[[37,10,18,39],[`brush`,`color`,`colour`,`decoration`,`diy`]],[[37,10,28,18,39],[`brush`,`paintbrush`,`design`,`color`,`colour`,`decoration`,`diy`]],[[37,10,28,18,39],[`brush`,`paintbrush`,`design`,`color`,`colour`,`decoration`,`diy`]],[[37,10,28],[`colors`,`colours`,`theme`,`scheme`,`paint`,`watercolor`,`watercolour`,`artist`]],[[2],[`animal`,`wildlife`,`bear`,`zoo`,`bamboo`]],[[19],[`drawer`,`dock`]],[[19,3],[`drawer`,`dock`,`hide`,`chevron`,`down`]],[[19],[`drawer`,`dock`,`show`,`reveal`,`padding`,`margin`,`guide`,`layout`,`bleed`]],[[19,3],[`drawer`,`dock`,`show`,`reveal`,`chevron`,`up`]],[[19],[`primary`,`drawer`]],[[19,3],[`primary`,`drawer`,`hide`,`chevron`,`<`]],[[19],[`sidebar`,`primary`,`drawer`,`show`,`reveal`,`padding`,`margin`,`guide`,`layout`,`bleed`]],[[19,3],[`primary`,`drawer`,`show`,`reveal`,`chevron`,`right`,`>`]],[[19],[`sidebar`,`primary`,`drawer`,`show`,`reveal`,`padding`,`margin`,`guide`,`layout`,`vertical`,`bleed`]],[[19],[`sidebar`,`secondary`,`drawer`]],[[19,3],[`sidebar`,`secondary`,`drawer`,`hide`,`chevron`,`>`]],[[19],[`sidebar`,`secondary`,`drawer`,`show`,`reveal`,`padding`,`margin`,`guide`,`layout`,`bleed`]],[[19,3],[`sidebar`,`secondary`,`drawer`,`show`,`reveal`,`chevron`,`left`,`<`]],[[19,10,11],[`drawer`,`browser`,`webpage`]],[[19],[`sidebar`,`primary`,`drawer`,`show`,`reveal`,`padding`,`margin`,`guide`,`layout`,`horizontal`,`bleed`]],[[19,3],[`menu bar`,`drawer`,`hide`,`chevron`,`up`]],[[19],[`menu bar`,`drawer`,`show`,`reveal`,`padding`,`margin`,`guide`,`layout`,`bleed`]],[[19,3],[`menu bar`,`drawer`,`show`,`reveal`,`chevron`,`down`]],[[19],[`drawers`,`sidebar`,`primary`]],[[19],[`drawers`,`sidebar`,`secondary`]],[[19,10,11],[`menu bar`,`sidebar`,`primary`,`drawers`,`window`,`webpage`,`projects`,`overview`]],[[37,10,14,20],[`attachment`,`file`]],[[11,14,21],[`code`,`token`,`parenthesis`,`parens`,`brackets`,`parameters`,`arguments`,`args`,`input`,`call`,`math`,`formula`,`function`,`(`,`)`]],[[40,25],[`driving`,`car park`,`pay`,`sidewalk`,`pavement`]],[[13],[`emoji`,`congratulations`,`celebration`,`party`,`tada`,`🎉`,`🎊`,`excitement`,`exciting`,`excites`,`confetti`]],[[23],[`music`,`stop`]],[[2],[`pets`,`vets`,`veterinarian`,`domesticated`,`cat`,`dog`,`bear`]],[[12,17],[`computer`,`chassis`]],[[37,10,39],[`pencil`,`change`,`create`,`draw`,`writer`,`writing`,`biro`,`ink`,`marker`,`felt tip`,`stationery`,`artist`]],[[37,10,39],[`pencil`,`change`,`create`,`draw`,`writer`,`writing`,`biro`,`ink`,`marker`,`felt tip`,`stationery`,`artist`]],[[37,10,39],[`disabled`,`inactive`,`non-editable`,`locked`,`read-only`,`unmodifiable`,`frozen`,`restricted`,`pencil`,`change`,`create`,`draw`,`writer`,`writing`,`biro`,`ink`,`marker`,`felt tip`,`stationery`,`artist`]],[[37,10,9],[`vector`,`drawing`,`path`]],[[10,9,39,37],[`rubber`,`edit`,`create`,`draw`,`sketch`,`draft`,`writer`,`writing`,`stationery`,`artist`]],[[37,10,39],[`pencil`,`change`,`create`,`draw`,`sketch`,`draft`,`writer`,`writing`,`biro`,`ink`,`marker`,`felt tip`,`stationery`,`artist`]],[[10,9,39,37],[`disabled`,`inactive`,`non-editable`,`locked`,`read-only`,`unmodifiable`,`frozen`,`restricted`,`rubber`,`edit`,`create`,`draw`,`sketch`,`draft`,`writer`,`writing`,`stationery`,`artist`]],[[39,10,19,37],`edit.create.draw.sketch.draft.writer.writing.stationery.artist.measurements.centimeters.cm.millimeters.mm.metre.foot.feet.inches.units.size.length.width.height.dimensions.depth.breadth.extent`.split(`.`)],[[32],[`shape`]],[[21,11,15,33],[`percentage`,`modulo`,`modulus`,`remainder`,`%`,`sale`,`discount`,`offer`,`marketing`]],[[0,27],[`people`,`human`,`accessibility`,`stick figure`]],[[15],[`currency`,`peso`,`money`,`php`]],[[37,8,12,7],[`call`]],[[8,12,7],[`ring`]],[[3,8,12,7],[`call`]],[[3,8,12,7],[`call`]],[[8,12,7],[`call`]],[[8,12,7],[`call`,`mute`]],[[3,8,12,7],[`call`]],[[11,21],[`constant`,`code`,`coding`,`programming`,`symbol`,`trigonometry`,`geometry`,`formula`]],[[23,12],[`music`,`audio`,`sound`,`noise`,`notes`,`chord`,`keys`,`octave`,`acoustic`,`instrument`,`play`,`pianist`,`performance`,`concert`]],[[39,17],[`mining`,`mine`,`land worker`,`extraction`,`labor`,`construction`,`progress`,`advancement`,`crafting`,`building`,`creation`]],[[23],[`display`,`play`,`video`,`pop out`,`always on top`,`window`,`inset`,`multitask`]],[[23],[`display`,`play`,`video`,`pop out`,`always on top`,`window`,`inset`,`multitask`]],[[15],[`money`,`savings`]],[[37],[`paragraph`,`mark`,`paraph`,`blind`,`typography`,`type`,`text`,`prose`,`symbol`]],[[37],[`direction`,`paragraph`,`mark`,`paraph`,`blind`,`typography`,`type`,`text`,`prose`,`symbol`]],[[37],[`direction`,`paragraph`,`mark`,`paraph`,`blind`,`typography`,`type`,`text`,`prose`,`symbol`]],[[22],[`medicine`,`medication`,`drug`,`prescription`,`tablet`,`pharmacy`]],[[22],[`medicine`,`medication`,`prescription`,`drug`,`supplement`,`vitamin`,`capsule`,`jar`,`container`,`healthcare`,`pharmaceutical`,`tablet`]],[[25,1],[`save`,`map`,`lock`,`fix`]],[[25],[`unpin`,`map`,`unlock`,`unfix`,`unsave`,`remove`]],[[37,10,29],[`eye dropper`,`color picker`,`lab`,`chemistry`]],[[16],[`pie`,`quiche`,`food`]],[[40,41,25],[`plane`,`trip`,`airplane`]],[[40,41],[`arrival`,`plane`,`trip`,`airplane`,`landing`]],[[40,41],[`departure`,`plane`,`trip`,`airplane`,`takeoff`]],[[3,23],[`music`,`audio`,`video`,`start`,`run`]],[[12,11],[`electricity`,`energy`,`electronics`,`socket`,`outlet`,`power`,`voltage`,`current`,`charger`]],[[12,11],[`electricity`,`energy`,`socket`,`outlet`]],[[12],[`electricity`,`energy`,`electronics`,`charge`,`charging`,`battery`,`connect`]],[[21,39,11,37,9,17],[`add`,`new`,`increase`,`increment`,`positive`,`calculate`,`toolbar`,`crosshair`,`aim`,`target`,`scope`,`sight`,`reticule`,`maximum`,`upgrade`,`extra`,`+`]],[[39],[`swiss army knife`,`penknife`,`multi-tool`,`multitask`,`blade`,`cutter`,`gadget`,`corkscrew`]],[[23,34],[`audio`,`music`,`mic`,`talk`,`voice`,`subscribe`,`subscription`,`stream`]],[[9],[`mouse`]],[[9],[`mouse`]],[[16,23],[`cinema`,`movies`,`films`,`salted`,`sweet`,`sugar`,`candy`,`snack`]],[[16],[`ice lolly`,`ice cream`,`sweet`,`food`]],[[15],[`currency`,`money`,`payment`]],[[8],[`on`,`off`,`device`,`switch`,`toggle`,`binary`,`boolean`,`reboot`,`restart`,`button`,`keyboard`,`troubleshoot`]],[[8],[`on`,`off`,`device`,`switch`]],[[23,28,12,7,10],[`screen`,`whiteboard`,`marker pens`,`markers`,`blackboard`,`chalk`,`easel`,`school`,`learning`,`lesson`,`office`,`meeting`,`project`,`planning`]],[[12],[`fax`,`office`,`device`]],[[12],[`fax`,`office`,`device`,`success`,`printed`]],[[12],[`fax`,`office`,`device`,`cross`,`cancel`,`remove`,`error`]],[[23,28,12,7],[`cinema`,`film`,`movie`,`home video`,`presentation`,`slideshow`,`office`,`meeting`,`project`,`planning`]],[[19,10,28,12],[`screens`,`sizes`,`rotate`,`rotation`,`adjust`,`aspect ratio`,`16:9`,`widescreen`,`4:3`,`resolution`,`responsive`,`mobile`,`desktop`,`dimensions`,`monitor`,`orientation`,`portrait`,`landscape`]],[[11,17],[`component`,`module`,`part`,`piece`]],[[32,21,41],[`prism`,`triangle`,`triangular`,`hierarchy`,`structure`,`geometry`,`ancient`,`egyptian`,`landmark`,`tourism`]],[[11,34],[`barcode`,`scan`,`link`,`url`,`information`,`digital`]],[[37],[`quotation`]],[[2],[`animal`,`rodent`,`pet`,`pest`,`bunny`,`hare`,`fast`,`speed`,`hop`]],[[25,31,7],[`scan`,`sonar`,`detect`,`find`,`locate`]],[[29],[`radioactive`,`nuclear`,`fallout`,`waste`,`atomic`,`physics`,`particle`,`element`,`molecule`]],[[11,21],[`calculate`,`formula`,`math`,`operator`,`root`,`square`,`symbol`]],[[12,23,34],[`signal`,`broadcast`,`connectivity`,`live`,`frequency`]],[[12],[`device`,`music`,`connect`]],[[12,23,34],[`signal`,`broadcast`,`connectivity`,`live`,`frequency`]],[[32,21,10,39],[`shape`,`circle`,`geometry`,`trigonometry`,`radii`,`calculate`,`measure`,`size`]],[[42],[`colors`,`colours`,`spectrum`,`light`,`prism`,`arc`,`clear`,`sunshine`]],[[2],[`mouse`,`mice`,`gerbil`,`rodent`,`pet`,`pest`,`plague`,`disease`]],[[19,10,28],[`screens`,`sizes`,`rotate`,`rotation`,`adjust`,`aspect ratio`,`proportions`,`16:9`,`widescreen`,`4:3`,`resolution`,`responsive`,`mobile`,`desktop`,`dimensions`,`monitor`,`orientation`,`portrait`,`landscape`]],[[15,41],[`bill`,`voucher`,`slip`,`check`,`counterfoil`,`currency`,`dollar`,`usd`,`$`]],[[15,41],[`bill`,`voucher`,`slip`,`check`,`counterfoil`,`currency`,`cents`,`dollar`,`usd`,`$`,`¢`]],[[15,41],[`bill`,`voucher`,`slip`,`check`,`counterfoil`,`currency`,`€`]],[[15,41],[`bill`,`voucher`,`slip`,`check`,`counterfoil`,`currency`,`inr`,`₹`]],[[15,41],[`bill`,`voucher`,`slip`,`check`,`counterfoil`,`currency`,`jpy`,`¥`]],[[15,41],[`bill`,`voucher`,`slip`,`check`,`counterfoil`,`british`,`currency`,`gbp`,`£`]],[[15,41],[`bill`,`voucher`,`slip`,`check`,`counterfoil`,`currency`,`rub`,`₽`]],[[15,41],[`bill`,`voucher`,`slip`,`check`,`counterfoil`,`currency`,`chf`,`₣`]],[[15,41],[`bill`,`voucher`,`slip`,`check`,`counterfoil`,`details`,`small print`,`terms`,`conditions`,`contract`]],[[15,41],[`bill`,`voucher`,`slip`,`check`,`counterfoil`,`currency`,`try`,`₺`]],[[11,37],[`compose`,`keyboard`,`key`,`button`]],[[37,11],`login,password,authenticate,2fa,field,fill,ellipsis,et cetera,etc,loader,loading,progress,pending,throbber,menu,options,operator,code,spread,rest,more,further,extra,overflow,dots,…,...`.split(`,`)],[[12,17,23,8],[`vr`,`virtual`,`augmented`,`reality`,`headset`,`goggles`]],[[32,10],[`rectangle`,`aspect ratio`,`16:9`,`horizontal`,`shape`]],[[32,10],[`rectangle`,`aspect ratio`,`9:16`,`vertical`,`shape`]],[[36],[`sustainability`,`salvage`,`arrows`]],[[37,3],[`undo`,`rerun`,`history`]],[[37,3],[`undo`,`rerun`,`history`]],[[37,3],[`redo`,`history`,`step`,`over`,`forward`]],[[3],[`arrows`,`rotate`,`reload`,`rerun`,`synchronise`,`synchronize`,`circular`,`cycle`]],[[3,11],[`arrows`,`rotate`,`reload`,`synchronise`,`synchronize`,`circular`,`cycle`,`issue`,`code`,`coding`,`version control`]],[[3],[`rotate`,`reload`,`rerun`,`synchronise`,`synchronize`,`arrows`,`circular`,`cycle`]],[[3],[`rotate`,`reload`,`rerun`,`synchronise`,`synchronize`,`arrows`,`circular`,`cycle`,`cancel`,`no`,`stop`,`error`,`disconnect`,`ignore`]],[[16,18],[`frigerator`,`fridge`,`freezer`,`cooler`,`icebox`,`chiller`,`cold storage`]],[[37,11],[`search`,`text`,`code`]],[[37],[`text`,`font`,`typography`,`format`,`x`,`remove`,`delete`,`times`,`clear`]],[[3,23],[`loop`,`arrows`]],[[23],[`replay`]],[[3,34,23],[`arrows`,`retweet`,`repost`,`share`,`repeat`,`loop`]],[[37],[`search`,`substitute`,`swap`,`change`]],[[37],[`search`,`substitute`,`swap`,`change`]],[[20],[`email`]],[[20],[`email`]],[[3,23],[`music`]],[[34,22,13],[`awareness`,`strip`,`band`,`tape`,`strap`,`cordon`]],[[17,11],[`release`,`boost`,`launch`,`space`,`version`]],[[18],[`chair`,`furniture`,`seat`,`comfort`,`relax`]],[[25],[`attraction`,`entertainment`,`amusement park`,`theme park`,`funfair`]],[[24,30,36,18,34],[`roses`,`thorns`,`petals`,`plant`,`stem`,`leaves`,`spring`,`bloom`,`blossom`,`gardening`,`botanical`,`flora`,`florist`,`bouquet`,`bunch`,`gift`,`date`,`romance`,`romantic`,`valentines day`,`special occasion`]],[[10],[`gizmo`,`transform`,`orientation`,`orbit`,`axis`]],[[3,10,28],[`arrow`,`left`,`counter-clockwise`,`restart`,`reload`,`rerun`,`refresh`,`backup`,`undo`,`replay`,`redo`,`retry`,`rewind`,`reverse`]],[[31,1],[`password`,`key`,`refresh`,`change`]],[[19,10,28,39,3],[`left`,`counter-clockwise`,`rotate`,`image`,`90`,`45`,`degrees`,`°`]],[[3,10,28],[`arrow`,`right`,`clockwise`,`refresh`,`reload`,`rerun`,`redo`]],[[19,10,28,39,3],[`right`,`clockwise`,`rotate`,`image`,`90`,`45`,`degrees`,`°`]],[[25],[`path`,`journey`,`planner`,`points`,`stops`,`stations`]],[[25],[`path`,`journey`,`planner`,`points`,`stops`,`stations`,`reset`,`clear`,`cancelled`,`closed`,`blocked`]],[[11,12,8,18],[`computer`,`server`,`cloud`]],[[19,10,37],[`lines`,`list`,`queue`,`preview`,`panel`,`paragraphs`,`parallel`,`series`,`split`,`vertical`,`horizontal`,`half`,`center`,`middle`,`even`,`drawer`]],[[19,10,37],[`lines`,`list`,`queue`,`preview`,`paragraphs`,`parallel`,`series`,`split`,`vertical`,`horizontal`,`half`,`center`,`middle`,`even`,`drawers`]],[[19,10,37],[`lines`,`list`,`queue`,`preview`,`paragraphs`,`parallel`,`series`,`split`,`vertical`,`horizontal`,`half`,`center`,`middle`,`even`,`drawers`,`grill`]],[[11,34],[`feed`,`subscribe`,`news`,`updates`,`notifications`,`content`,`blog`,`articles`,`broadcast`,`syndication`,`reader`,`channels`,`posts`,`publishing`,`digest`,`alert`,`following`,`inbox`,`newsletter`,`weblog`,`podcast`]],[[39,10,19],[`measurements`,`centimeters`,`cm`,`millimeters`,`mm`,`metre`,`foot`,`feet`,`inches`,`units`,`size`,`length`,`width`,`height`,`dimensions`,`depth`,`breadth`,`extent`,`stationery`]],[[39,10,19],[`measurements`,`centimeters`,`cm`,`millimeters`,`mm`,`metre`,`foot`,`feet`,`inches`,`units`,`size`,`length`,`width`,`height`,`dimensions`,`depth`,`breadth`,`extent`,`stationery`]],[[15],[`currency`,`money`,`payment`]],[[40,41],[`ship`,`boat`,`harbor`,`harbour`,`dock`]],[[16,13],[`food`,`vegetarian`,`dish`,`restaurant`,`course`,`meal`,`side`,`vegetables`,`health`]],[[16],[`food`,`snack`,`dish`,`restaurant`,`lunch`,`meal`]],[[8,29],[`space station`,`orbit`,`transmitter`]],[[8,12,23],[`antenna`,`receiver`,`dish aerial`,`saucer`]],[[15],[`currency`,`money`,`payment`]],[[37,14],[`floppy disk`]],[[37,14],[`floppy disks`,`copy`]],[[37,14],[`floppy disk`,`unsalvageable`]],[[25,29,15],[`balance`,`legal`,`license`,`right`,`rule`,`law`,`justice`,`weight`,`measure`,`compare`,`judge`,`fair`,`ethics`,`decision`]],[[10],[`gizmo`,`transform`,`size`,`axis`]],[[10],[`scale`,`resize`,`design`]],[[12,33,31,34,17],[`qr-code`,`barcode`,`checkout`,`augmented reality`,`ar`,`target`,`surveillance`,`camera`,`lens`,`focus`,`frame`,`select`,`box`,`boundary`,`bounds`,`area`,`square`,`dashed`]],[[33,12],[`checkout`,`till`,`cart`,`transaction`,`purchase`,`buy`,`product`,`packaging`,`retail`,`consumer`]],[[28,23,0,31,12,1],[`preview`,`zoom`,`expand`,`fullscreen`,`gallery`,`image`,`camera`,`watch`,`surveillance`,`retina`,`focus`,`lens`,`biometric`,`identification`,`authentication`,`access`,`login`]],[[1,31,12,34],[`face`,`biometric`,`identification`,`authentication`,`2fa`,`access`,`login`,`dashed`]],[[22],[`health`,`heart rate`,`pulse`,`monitoring`,`healthiness`,`screening`,`dashed`]],[[12,33],[`checkout`,`till`,`cart`,`transaction`,`purchase`,`buy`,`product`,`packaging`,`retail`,`consumer`,`qr-code`,`dashed`]],[[1,33,12,31],[`barcode`,`scan`,`qrcode`,`url`,`information`,`digital`,`scanner`]],[[28,23,0],[`preview`,`zoom`,`expand`,`fullscreen`,`gallery`,`image`,`focus`,`lens`]],[[37,12],[`recognition`,`read`,`translate`,`copy`,`lines`]],[[5,25],[`building`,`education`,`childhood`,`university`,`learning`,`campus`,`scholar`,`student`,`lecture`,`degree`,`course`,`academia`,`study`,`knowledge`,`classroom`,`research`,`diploma`,`graduation`,`professor`,`tutorial`,`homework`,`assignment`,`exam`]],[[37,10,39],[`cut`,`snip`,`chop`,`stationery`,`crafts`]],[[10,39],[`cut here`,`along`,`snip`,`chop`,`stationery`,`crafts`,`instructions`,`diagram`]],[[40],[`vehicle`,`drive`,`trip`,`journey`,`transport`,`electric`,`ride`,`urban`,`commute`,`speed`]],[[8,12,7],[`host`,`desktop`,`monitor`]],[[8,12,7],[`desktop`,`disconnect`,`monitor`]],[[17,11,37],[`paper`,`log`,`scripture`,`document`,`notes`,`parchment`,`list`,`long`,`script`,`story`,`code`,`coding`]],[[17,11,37],[`paper`,`log`,`scripture`,`document`,`notes`,`parchment`,`list`,`long`,`script`,`story`,`code`,`coding`]],[[37,34],[`find`,`scan`,`magnifier`,`magnifying glass`,`lens`]],[[37,34],[`find`,`scan`,`magnifier`,`magnifying glass`,`stop`,`warning`,`alert`,`error`,`anomaly`,`lens`]],[[37,34],[`find`,`scan`,`magnifier`,`magnifying glass`,`found`,`correct`,`complete`,`tick`,`lens`]],[[37,34,11],[`find`,`scan`,`magnifier`,`magnifying glass`,`grep`,`chevrons`,`<>`,`lens`]],[[37,34],[`find`,`scan`,`magnifier`,`magnifying glass`,`stop`,`clear`,`cancel`,`abort`,`/`,`lens`]],[[37,34],[`find`,`scan`,`magnifier`,`magnifying glass`,`stop`,`clear`,`cancel`,`abort`,`lens`]],[[37],[`mark`,`typography`,`punctuation`,`legal`,`type`,`text`,`prose`,`symbol`]],[[20,7,8],[`email`,`message`,`mail`,`paper airplane`,`paper aeroplane`,`submit`]],[[20,7,8],[`email`,`message`,`mail`,`paper airplane`,`paper aeroplane`,`submit`]],[[10,19],[`bring`,`send`,`move`,`under`,`back`,`backwards`,`overlap`,`layer`,`order`]],[[37,3,19],[`move`,`split`]],[[37,3,19],[`move`,`split`]],[[11,12],[`cloud`,`storage`]],[[11,12],[`cloud`,`storage`,`computing`,`cog`,`gear`]],[[11,12],[`cloud`,`storage`,`problem`,`error`]],[[11,12],[`cloud`,`storage`]],[[1],[`cog`,`edit`,`gear`,`preferences`]],[[1],[`cog`,`edit`,`gear`,`preferences`,`slider`]],[[32,17],[`triangle`,`equilateral`,`square`,`circle`,`classification`,`different`,`collection`,`toy`,`blocks`,`learning`]],[[1,34],[`network`,`connections`]],[[1,34],[`network`,`connections`]],[[37,14],[`spreadsheets`,`table`,`excel`]],[[2,11,24,29,41,16,18],`beach.sand.holiday.sealife.fossil.ammonite.biology.ocean.terminal.command line.session.bash.zsh.roll.wrap.chewing gum.bubble gum.sweet.sugar.hosepipe.carpet.string.spiral.spinner.hypnotise.hypnosis`.split(`.`)],[[18],[`ledge`,`rack`,`storage`,`inventory`,`furniture`,`sill`,`shelves`,`shelf`,`organize`,`display`,`store`,`arrange`,`unit`,`cabinet`,`fixture`,`retail`,`warehouse`]],[[1,31,11,17,32],`cybersecurity.secure.safety.protection.guardian.armored.armoured.defense.defence.defender.block.threat.prevention.antivirus.vigilance.vigilant.detection.scan.find.strength.strong.tough.invincible.invincibility.invulnerable.undamaged.audit.admin.verification.crest.bravery.knight.foot soldier.infantry.trooper.pawn.battle.war.military.army.cadet.scout`.split(`.`)],[[1,31,11,26,17],`unshielded.cybersecurity.insecure.unsecured.safety.unsafe.protection.unprotected.guardian.unguarded.unarmored.unarmoured.defenseless.defenceless.undefended.defender.blocked.stopped.intercepted.interception.saved.thwarted.threat.prevention.unprevented.antivirus.vigilance.vigilant.detection.detected.scanned.found.exploit.vulnerability.vulnerable.weakness.infection.infected.comprimised.data leak.audited.admin.verification.unverified.uncertified.warning.emergency.attention.urgent.alarm.crest.bravery.strength.tough.attacked.damaged.injured.hit.expired.disabled.inactive.error.exclamation mark.!`.split(`.`)],[[1,31,11,17],`unshielded.cybersecurity.insecure.unsecured.safety.unsafe.protection.unprotected.guardian.unguarded.unarmored.unarmoured.defenseless.defenceless.undefended.defender.blocked.stopped.intercepted.interception.saved.thwarted.threat.prevention.unprevented.antivirus.vigilance.vigilant.detection.detected.scanned.found.exploit.vulnerability.vulnerable.weakness.infection.infected.comprimised.data leak.audited.admin.verification.unverified.uncertified.cancel.error.crest.bravery.attacked.damaged.injured.hit.expired.eliminated.disabled.inactive./`.split(`.`)],[[1,31,11,17],`cybersecurity.secured.safety.protection.protected.guardian.guarded.armored.armoured.defense.defence.defended.blocked.threat.prevention.prevented.antivirus.vigilance.vigilant.active.activated.enabled.detection.scanned.found.strength.strong.tough.invincible.invincibility.invulnerable.undamaged.audited.admin.verification.verified.certification.certified.tested.passed.qualified.cleared.cleaned.disinfected.uninfected.task.completed.todo.done.ticked.checked.crest.bravery`.split(`.`)],[[1,31,11,17],`cybersecurity,securing,protecting,guarding,armoring,armouring,defending,blocking,preventing,antivirus,detecting,scanning,finding,auditing,admin,verifying,crest,upgrading,loader,loading,throbber,progress,dots,more,etc,...,…`.split(`,`)],[[1,31,11,17],`cybersecurity.secure.safety.protection.guardian.armored.armoured.defense.defence.defender.block.threat.prevention.antivirus.vigilance.vigilant.detection.scan.strength.strong.tough.invincible.invincibility.invulnerable.undamaged.audit.admin.verification.crest.logo.sigil.flag.team.faction.fraternity.university.college.academy.school.education.uniform.bravery.knight.foot soldier.infantry.trooper.pawn.battle.war.military.ranking.army.cadet.scout`.split(`.`)],[[1,31,11,17],`unshield.cybersecurity.unsecure.unguard.unblock.antivirus.clean.clear.disinfect.patch.fix.stop.cancel.remove.relax.admin.crest.bravery.weakened.damaged.hit.unarm.disable.deactivate.decommission.downgraded.minimum.-`.split(`.`)],[[1,31,11,17],`unshielded.cybersecurity.insecure.unsecured.safety.unsafe.protection.unprotected.guardian.unguarded.unarmored.unarmoured.defenseless.defenceless.undefended.defender.interception.threat.prevention.unprevented.antivirus.detection.undetected.exploit.vulnerability.vulnerable.weakness.infected.infection.comprimised.data leak.unaudited.admin.verification.unverified.inactive.cancelled.error.crest.bravery.damaged.injured.hit.expired.eliminated`.split(`.`)],[[1,31,11,17,22],`cybersecurity.secure.safety.protection.guardian.armored.armoured.defense.defence.defender.block.threat.prevention.antivirus.vigilance.vigilant.detection.scan.strength.strong.tough.invincible.invincibility.invulnerable.undamaged.extra.added.professional.enterprise.full.maximum.upgraded.ultra.activate.enable.audit.admin.verification.crest.medic.+`.split(`.`)],[[1,31,11,17],`unshielded.cybersecurity.insecure.unsecured.safety.unsafe.protection.unprotected.guardian.unguarded.unarmored.unarmoured.defenseless.defenceless.undefended.defender.threat.prevention.unprevented.antivirus.vigilance.vigilant.detection.undetected.scan.find.exploit.vulnerability.vulnerable.weakness.infection.comprimised.data leak.audit.admin.verification.unverified.uncertified.uncertain.unknown.inactive.crest.question mark.?`.split(`.`)],[[1,31,11],[`shield`,`user`,`admin`,`protection`,`protected`,`safety`,`guard`]],[[1,31,11,17],`unshielded.cybersecurity.insecure.unsecured.safety.unsafe.protection.unprotected.guardian.unguarded.unarmored.unarmoured.defenseless.defenceless.undefended.defender.blocked.stopped.intercepted.interception.saved.thwarted.threat.prevention.prevented.antivirus.vigilance.vigilant.detection.detected.scanned.found.exploit.vulnerability.vulnerable.weakness.infection.infected.comprimised.data leak.audited.admin.verification.unverified.inactive.cancel.error.wrong.false.crest.bravery.attacked.damaged.injured.hit.dead.deceased.expired.eliminated.exterminated`.split(`.`)],[[40,25,41],[`boat`,`knots`,`nautical mile`,`maritime`,`sailing`,`yacht`,`cruise`,`ocean liner`,`tanker`,`vessel`,`navy`,`trip`,`releases`]],[[40,25,41],[`steering`,`rudder`,`boat`,`knots`,`nautical mile`,`maritime`,`sailing`,`yacht`,`cruise`,`ocean liner`,`tanker`,`vessel`,`navy`,`trip`]],[[33],[`t-shirt`,`shopping`,`store`,`clothing`,`clothes`]],[[33],[`ecommerce`,`cart`,`purchase`,`store`]],[[33],[`cart`,`e-commerce`,`store`,`purchase`,`products`,`items`,`ingredients`]],[[33],[`trolley`,`cart`,`basket`,`e-commerce`,`store`,`purchase`,`products`,`items`,`ingredients`]],[[24,39,17],[`dig`,`spade`,`treasure`]],[[18,41],[`shower`,`bath`,`bathroom`,`amenities`,`services`]],[[20,14],[`file`,`paper`,`tear`,`cut`,`delete`,`destroy`,`remove`,`erase`,`document`,`destruction`,`secure`,`security`,`confidential`,`data`,`trash`,`dispose`,`disposal`,`information`,`waste`,`permanent`]],[[2],[`seafood`,`shellfish`,`crustacean`,`prawn`,`scallop`,`whelk`,`arthropod`,`littleneck`,`quahog`,`cherrystone`]],[[19,3],[`scale`,`fullscreen`]],[[24],[`forest`,`undergrowth`,`park`,`nature`]],[[23,3],[`music`,`random`,`reorder`]],[[37,21,29],[`sum`,`calculate`,`formula`,`math`,`enumeration`,`enumerate`]],[[8],[`connection`,`wireless`,`gsm`,`phone`,`2g`,`3g`,`4g`,`5g`]],[[8],[`connection`,`wireless`,`gsm`,`phone`,`2g`,`3g`,`4g`,`5g`]],[[8],[`connection`,`wireless`,`gsm`,`phone`,`2g`,`3g`,`4g`,`5g`]],[[8],[`connection`,`wireless`,`gsm`,`phone`,`2g`,`3g`,`4g`,`5g`]],[[8],[`connection`,`wireless`,`gsm`,`phone`,`2g`,`3g`,`4g`,`5g`,`lost`]],[[37],[`text`,`format`,`input`,`contract`,`autograph`,`handwriting`,`sign`,`cursive`,`ink`,`scribble`,`authorize`,`personal`,`agreement`,`legal`,`document`,`identity`,`authentic`,`approval`,`verification`,`unique`]],[[3,25,11,17],[`bidirectional`,`left`,`right`,`east`,`west`]],[[3,25,11,17],[`bidirectional`,`left`,`right`,`east`,`west`]],[[22],[`police`,`ambulance`,`emergency`,`security`,`alert`,`alarm`,`light`]],[[23,3],[`arrow`,`previous`,`music`]],[[23,3],[`arrow`,`skip`,`next`,`music`]],[[17],[`death`,`danger`,`bone`]],[[11,21],[`divide`,`division`,`or`,`/`]],[[10],[`cutter`,`scalpel`,`knife`]],[[1],[`settings`,`filters`,`controls`]],[[1],[`settings`,`controls`]],[[8,12],[`phone`,`cellphone`,`device`,`screen`]],[[8,12],[`phone`,`cellphone`,`device`,`power`,`screen`]],[[7,15,12],[`contactless`,`payment`,`near-field communication`,`screen`]],[[13,1],[`emoji`,`face`,`happy`,`good`,`emotion`]],[[13,34,26,7],[`emoji`,`face`,`happy`,`good`,`emotion`,`react`,`reaction`,`add`]],[[2,16],[`animal`,`insect`,`slow`,`speed`,`delicacy`,`spiral`]],[[42,30],[`cold`,`weather`,`freeze`,`snow`,`winter`]],[[18,41],[`wash`,`bath`,`water`,`liquid`,`fluid`,`wet`,`moisture`,`damp`,`bead`,`globule`]],[[18],[`armchair`,`furniture`,`leisure`,`lounge`,`loveseat`,`couch`]],[[18,29,36,42],[`solar panel`,`solar`,`panel`,`sun`,`energy`,`electricity`,`light`]],[[16],[`food`,`dish`,`restaurant`,`course`,`meal`,`bowl`,`starter`]],[[37],[`text`,`selection`,`letters`,`characters`,`font`,`typography`]],[[32,17],[`shape`,`suit`,`playing`,`cards`]],[[32],[`star`,`effect`,`filter`,`night`,`magic`,`shiny`,`glitter`,`twinkle`,`celebration`]],[[9,23,17,42],[`stars`,`effect`,`filter`,`night`,`magic`]],[[23,12],[`sound`,`audio`,`music`,`tweeter`,`subwoofer`,`bass`,`production`,`producer`,`dj`]],[[0,7],[`disability`,`disabled`,`dda`,`human`,`accessibility`,`people`,`sound`]],[[37,11],[`spelling`,`error`,`mistake`,`oversight`,`typo`,`correction`,`code`,`linter`,`a`]],[[37,11],[`spelling`,`error`,`mistake`,`oversight`,`typo`,`correction`,`code`,`linter`,`a`]],[[10],[`path`,`pen`,`tool`,`shape`,`curve`,`draw`]],[[3,9,10,39],[`path`,`tool`,`curve`,`node`,`click`,`pointer`,`target`,`vector`]],[[11,3],[`break`,`disband`,`divide`,`separate`,`branch`,`disunite`]],[[7,39,34],[`bobbin`,`spindle`,`yarn`,`thread`,`string`,`sewing`,`needlework`]],[[12,28,23,7],[`winner`,`soapbox`,`stage`,`entertainment`,`drama`,`podium`,`actor`,`actress`,`singer`,`light`,`beam`,`play`,`theatre`,`show`,`focus`,`concert`,`performance`,`lens`,`leaderboard`,`followspot`,`best`,`highlight`]],[[10,39],[`paint`,`color`,`graffiti`,`decoration`,`aerosol`,`deodorant`,`shaving foam`,`air freshener`]],[[24,17,36],[`eco`,`green`,`growth`,`leaf`,`nature`,`plant`,`seed`,`spring`,`sustainability`]],[[32,23],[`stop`,`playback`,`music`,`audio`,`video`,`rectangle`,`aspect ratio`,`1:1`,`shape`]],[[22,34,29,23],`pulse.action.motion.movement.exercise.fitness.healthcare.heart rate monitor.vital signs.vitals.emergency room.er.intensive care.hospital.defibrillator.earthquake.siesmic.magnitude.richter scale.aftershock.tremor.shockwave.audio.waveform.synthesizer.synthesiser.music`.split(`.`)],[[3,17],[`backwards`,`reverse`,`direction`,`south`,`sign`,`keyboard`,`button`]],[[3,17],[`direction`,`south-west`,`diagonal`,`sign`,`turn`,`keyboard`,`button`]],[[3,17],[`direction`,`south-east`,`diagonal`,`sign`,`turn`,`keyboard`,`button`]],[[3],[`previous`,`back`,`direction`,`west`,`sign`,`keyboard`,`button`,`<-`]],[[3],[`outwards`,`direction`,`south-west`,`diagonal`]],[[3],[`outwards`,`direction`,`south-east`,`diagonal`]],[[3],[`outwards`,`direction`,`north-west`,`diagonal`]],[[3,34],[`outwards`,`direction`,`north-east`,`diagonal`,`share`,`open`,`external`,`link`]],[[3],[`next`,`forward`,`direction`,`west`,`sign`,`keyboard`,`button`,`->`]],[[3,32,19,23],[`left`,`in`,`inside`,`input`,`insert`,`source`,`import`,`place`,`->`]],[[3,32,19,23],[`out`,`outside`,`output`,`export`,`->`]],[[3],[`forward`,`direction`,`north`,`sign`,`keyboard`,`button`]],[[3],[`direction`,`north-west`,`diagonal`,`sign`,`keyboard`,`button`]],[[3,34],[`direction`,`north-east`,`diagonal`,`sign`,`keyboard`,`button`,`share`]],[[37,31,21,11],[`password`,`secret`,`access`,`key`,`multiply`,`multiplication`,`glob pattern`,`wildcard`,`*`]],[[37,10,39,14,11],[`cut`,`snippet`,`chop`,`stationery`,`crafts`]],[[10,28],[`reflect`,`mirror`,`alignment`,`dashed`]],[[10,28],[`reflect`,`mirror`,`alignment`,`dashed`]],[[6,38,11,10],[`projects`,`manage`,`overview`,`roadmap`,`plan`,`intentions`,`timeline`,`deadline`,`date`,`event`,`range`,`period`,`productivity`,`work`,`agile`,`code`,`coding`,`toolbar`,`button`]],[[26],[`done`,`todo`,`tick`,`complete`,`task`]],[[26],[`done`,`todo`,`tick`,`complete`,`task`]],[[3,25],[`back`,`menu`,`panel`]],[[3,25],[`back`,`previous`,`less than`,`fewer`,`menu`,`panel`,`button`,`keyboard`,`<`]],[[3,25,11],[`forward`,`next`,`more than`,`greater`,`menu`,`panel`,`code`,`coding`,`command line`,`terminal`,`prompt`,`shell`,`console`,`>`]],[[3,25,21],[`caret`,`keyboard`,`button`,`mac`,`control`,`ctrl`,`superscript`,`exponential`,`power`,`ahead`,`menu`,`panel`,`^`]],[[37,11],[`gist`,`source`,`programming`,`html`,`xml`,`coding`]],[[37,10],[`selection`,`square`,`rectangular`,`marquee`,`tool`,`dashed`,`box`]],[[11,14],[`rectangle`,`aspect ratio`,`1:1`,`shape`,`snippet`,`code`,`coding`]],[[11,14],[`rectangle`,`aspect ratio`,`1:1`,`shape`,`snippet`,`code`,`coding`]],[[6,11,10],[`projects`,`manage`,`overview`,`board`,`tickets`,`issues`,`roadmap`,`plan`,`intentions`,`productivity`,`work`,`agile`,`draft`,`template`,`boilerplate`,`code`,`coding`]],[[3,9,11,39],[`inspector`,`element`,`mouse`,`click`,`pointer`,`box`,`browser`,`selector`,`target`,`dom`,`node`]],[[10,11,19],[`square`,`border`,`width`,`layout`,`style`,`design`,`rectangular`,`marquee`,`dashed`,`box`,`rectangle`,`aspect ratio`,`1:1`]],[[21],[`calculate`,`math`,`÷`,`/`]],[[11],[`git`,`diff`,`modified`,`.`]],[[21],[`calculate`,`=`]],[[11,21],[`programming`,`code`,`automation`,`math`]],[[6,11,10],[`projects`,`manage`,`overview`,`board`,`tickets`,`issues`,`roadmap`,`plan`,`intentions`,`productivity`,`work`,`agile`,`code`,`coding`,`toolbar`,`button`]],[[37,28,23,25,11],[`books`,`reading`,`written`,`authors`,`stories`,`fiction`,`novels`,`information`,`knowledge`,`education`,`high school`,`university`,`college`,`academy`,`learning`,`study`,`research`,`collection`,`vinyl`,`records`,`albums`,`music`,`package`]],[[40,25],[`metro`,`subway`,`underground`,`track`,`line`]],[[19],[`bars`,`navigation`,`hamburger`,`options`,`menu bar`,`panel`]],[[21,11,37,39,12],[`subtract`,`remove`,`decrease`,`reduce`,`calculator`,`button`,`keyboard`,`line`,`divider`,`separator`,`horizontal rule`,`hr`,`html`,`markup`,`markdown`,`---`,`toolbar`,`operator`,`code`,`coding`,`minimum`,`downgrade`]],[[3,9,11,39],[`inspector`,`element`,`mouse`,`click`,`pointer`,`box`,`browser`,`selector`,`target`,`dom`,`node`]],[[40,25],[`parking lot`,`car park`]],[[40,25],[`parking lot`,`car park`,`no parking`]],[[23],[`music`,`audio`,`stop`]],[[37],[`pencil`,`edit`,`change`,`create`,`draw`,`sketch`,`draft`,`writer`,`writing`,`biro`,`ink`,`marker`,`felt tip`,`stationery`,`artist`]],[[34,15,33,21],[`verified`,`unverified`,`sale`,`discount`,`offer`,`marketing`,`sticker`,`price tag`]],[[11,21],[`constant`,`code`,`coding`,`programming`,`symbol`,`trigonometry`,`geometry`,`formula`]],[[37],[`paragraph`,`mark`,`paraph`,`blind`,`typography`,`type`,`text`,`prose`,`symbol`]],[[3,23],[`music`,`audio`,`video`,`start`,`run`]],[[21,39,11,37],[`add`,`new`,`increase`,`increment`,`positive`,`calculate`,`calculator`,`button`,`keyboard`,`toolbar`,`maximum`,`upgrade`,`extra`,`operator`,`join`,`concatenate`,`code`,`coding`,`+`]],[[8],[`on`,`off`,`device`,`switch`,`toggle`,`binary`,`boolean`,`reboot`,`restart`,`button`,`keyboard`,`troubleshoot`]],[[11,21],[`calculate`,`formula`,`math`,`operator`,`root`,`square`,`symbol`]],[[10,11,19],[`border`,`radius`,`style`,`design`,`corner`,`layout`,`round`,`rounded`]],[[37,10,39,14,11],[`cut`,`snippet`,`chop`,`stationery`,`crafts`,`toolbar`,`button`]],[[37,21],[`sum`,`calculate`,`formula`,`math`,`enumeration`,`enumerate`]],[[11,21],[`git`,`diff`,`ignored`,`divide`,`division`,`shortcut`,`or`,`/`]],[[19],[`split`,`divide`]],[[19],[`split`,`divide`]],[[19],[`float`,`center`,`rectangle`]],[[37,14,11],[`versions`,`clone`,`copy`,`duplicate`,`multiple`,`revisions`,`version control`,`backup`,`history`]],[[35,17],[`badge`,`medal`,`honour`,`decoration`,`order`,`pin`,`laurel`,`trophy`,`medallion`,`insignia`,`bronze`,`silver`,`gold`]],[[23],[`media`,`music`]],[[11],[`code`,`command line`,`prompt`,`shell`]],[[1],[`person`,`account`,`contact`]],[[1],[`person`,`account`,`contact`]],[[21,26],[`cancel`,`close`,`delete`,`remove`,`times`,`clear`,`math`,`multiply`,`multiplication`]],[[10],[`square`,`pathfinder`,`path`,`exclude`,`invert`,`xor`,`shape`,`vector`]],[[10],[`square`,`pathfinder`,`path`,`intersect`,`shape`,`include`,`vector`]],[[10],[`square`,`pathfinder`,`path`,`minus`,`subtract`,`subtraction`,`shape`,`front`,`vector`]],[[10],[`square`,`pathfinder`,`path`,`unite`,`union`,`shape`,`merge`,`vector`]],[[32],[`shape`]],[[11,32,10],[`shape`,`pending`,`progress`,`issue`,`draft`,`code`,`coding`,`version control`]],[[2],[`animal`,`rodent`,`pet`,`pest`,`nuts`,`retrieve`,`updates`,`storage`,`stash`]],[[10,9,39],[`mark`,`print`,`clone`,`loyalty`,`library`]],[[1,34,32,23,42,13,17],[`bookmark`,`favorite`,`like`,`review`,`rating`]],[[34,23],[`bookmark`,`favorite`,`like`,`review`,`rating`]],[[23,34],[`dislike`,`unlike`,`remove`,`unrate`]],[[23,3],[`arrow`,`previous`,`music`,`left`,`reverse`]],[[23,3],[`arrow`,`next`,`music`,`right`,`continue`]],[[29,22],[`phonendoscope`,`medical`,`heart`,`lungs`,`sound`]],[[34],[`reaction`,`emotion`,`smile`,`happy`,`feedback`]],[[37,34],[`post-it`,`comment`,`annotation`,`reaction`,`memo`,`reminder`,`todo`,`task`,`idea`,`brainstorm`,`document`,`page`,`paper`,`sheet`,`stationary`,`office`]],[[24],[`mineral`,`geology`,`nature`,`solid`,`pebble`,`crystal`,`ore`,`hard`,`coal`,`stone`,`rock`,`boulder`]],[[5,25,33],[`shop`,`supermarket`,`stand`,`boutique`,`building`]],[[19],[`items`,`flex`,`justify`,`distribute`]],[[19],[`items`,`flex`,`justify`,`distribute`]],[[37],[`cross out`,`delete`,`remove`,`format`]],[[37],[`text`]],[[0,42,30,36],[`brightness`,`weather`,`light`,`summer`]],[[0,42],[`brightness`,`dim`,`low`,`brightness low`]],[[0,42],[`brightness`,`medium`]],[[0],[`dark`,`light`,`moon`,`sun`,`brightness`,`theme`,`auto theme`,`system theme`,`appearance`]],[[42],[`weather`,`air conditioning`,`temperature`,`hot`,`cold`,`seasons`]],[[3,42,38],[`weather`,`time`,`morning`,`day`]],[[3,42],[`weather`,`time`,`evening`,`night`]],[[37],[`text`,`exponent`]],[[10,18,28],[`colors`,`colours`,`swatches`,`pantone`,`shades`,`tint`,`hue`,`saturation`,`brightness`,`theme`,`scheme`,`palette`,`samples`,`textile`,`carpet`]],[[15],[`currency`,`money`,`payment`]],[[7,12],[`photo`,`selfie`,`front`,`back`]],[[17,39],[`battle`,`challenge`,`game`,`war`,`weapon`]],[[17,39],[`battle`,`challenge`,`game`,`war`,`weapon`]],[[29,22],[`medicine`,`medical`,`needle`,`pump`,`plunger`,`nozzle`,`blood`]],[[37,14],[`spreadsheet`,`grid`]],[[37,14],[`spreadsheet`,`grid`]],[[37,14],[`spreadsheet`,`grid`,`row`]],[[37,14],[`spreadsheet`,`grid`,`row`]],[[37,14],[`spreadsheet`,`grid`,`cut`,`break`,`divide`,`separate`,`segment`]],[[37],[`toc`,`outline`,`navigation`,`document structure`,`index`,`overview`,`sections`,`chapters`,`content`,`documentation`,`manual`,`knowledge base`,`faq`]],[[37,11,14],[`property list`,`plist`,`spreadsheet`,`grid`,`dictionary`,`object`,`hash`]],[[37,14],[`spreadsheet`,`grid`,`cut`,`break`,`divide`,`separate`,`segment`]],[[12],[`device`]],[[12,10,11,39],[`responsive`,`screens`,`browser`,`testing`,`mobile`]],[[22],[`medicine`,`medication`,`drug`,`prescription`,`pills`,`pharmacy`]],[[1],[`label`,`badge`,`ticket`,`mark`]],[[1],[`labels`,`badges`,`tickets`,`marks`,`copy`,`multiple`]],[[21,17],[`count`,`score`,`enumerate`,`days`,`one`,`1`,`first`,`bar`,`prison`,`cell`,`sentence`]],[[21,17],[`count`,`score`,`enumerate`,`days`,`two`,`2`,`second`,`double`,`bars`,`prison`,`cell`,`sentence`]],[[21,17],[`count`,`score`,`enumerate`,`days`,`three`,`3`,`third`,`triple`,`bars`,`prison`,`cell`,`sentence`]],[[21,17],[`count`,`score`,`enumerate`,`days`,`4`,`fourth`,`quadruple`,`bars`,`prison`,`cell`,`sentence`]],[[21,17],[`count`,`score`,`enumerate`,`days`,`five`,`5`,`fifth`,`bars`,`prison`,`cell`,`sentence`,`slash`,`/`]],[[32,21,10,39],[`tangential`,`shape`,`circle`,`geometry`,`trigonometry`,`bezier curve`]],[[4,17],[`logo`,`bullseye`,`deadline`,`projects`,`overview`,`work`,`productivity`]],[[29,11,39],[`astronomy`,`space`,`discovery`,`exploration`,`explore`,`vision`,`perspective`,`focus`,`stargazing`,`observe`,`view`]],[[41,24,36],[`tipi`,`teepee`,`wigwam`,`lodge`,`camping`,`campsite`,`holiday`,`retreat`,`nomadic`,`native american`,`indian`,`wilderness`,`outdoors`]],[[41,24],[`camping`,`campsite`,`holiday`,`retreat`,`nomadic`,`wilderness`,`outdoors`]],[[11],[`code`,`command line`,`prompt`,`shell`]],[[29],[`tube`,`vial`,`phial`,`flask`,`ampoule`,`ampule`,`lab`,`chemistry`,`experiment`,`test`]],[[29],[`tube`,`vial`,`phial`,`flask`,`ampoule`,`ampule`,`lab`,`chemistry`,`experiment`,`test`]],[[29],[`tubes`,`vials`,`phials`,`flasks`,`ampoules`,`ampules`,`lab`,`chemistry`,`experiment`,`test`]],[[37],[`text`,`alignment`,`center`]],[[37],[`text`,`alignment`,`right`]],[[37],[`text`,`alignment`,`justified`,`menu`,`list`]],[[37],[`text`,`alignment`,`left`,`list`]],[[37,9],[`select`]],[[37,19],[`select`]],[[37],[`drop cap`,`text`,`format`,`typography`,`letter`,`font size`]],[[37],[`blockquote`,`quotation`,`indent`,`reply`,`response`]],[[37],[`find`,`data`,`copy`,`txt`,`pdf`,`document`,`scan`,`magnifier`,`magnifying glass`,`lens`]],[[37,9],[`find`,`search`,`selection`,`dashed`]],[[37,3],[`words`,`lines`,`break`,`paragraph`]],[[5,34],[`theater`,`theatre`,`entertainment`,`podium`,`stage`,`musical`]],[[42],[`temperature`,`celsius`,`fahrenheit`,`weather`]],[[42],[`temperature`,`celsius`,`fahrenheit`,`weather`,`cold`,`freeze`,`freezing`]],[[42],[`temperature`,`celsius`,`fahrenheit`,`weather`,`warm`,`hot`]],[[1,34,13],[`dislike`,`bad`,`emotion`]],[[1,34,13],[`like`,`good`,`emotion`]],[[1,40],[`entry`,`pass`,`voucher`,`event`,`concert`,`show`,`perforated`,`dashed`]],[[40],[`entry`,`pass`,`voucher`,`event`,`concert`,`show`,`booked`,`purchased`,`receipt`,`redeemed`,`validated`,`verified`,`certified`,`checked`,`used`]],[[40],[`entry`,`pass`,`voucher`,`event`,`concert`,`show`,`remove`,`cancel`,`unbook`,`subtract`,`decrease`,`-`]],[[40,33],[`discount`,`reduced`,`offer`,`voucher`,`entry`,`pass`,`event`,`concert`,`show`,`book`,`purchase`,`%`]],[[40],[`entry`,`pass`,`voucher`,`event`,`concert`,`show`,`book`,`purchase`,`add`,`+`]],[[40],`entry.pass.voucher.event.concert.show.redeemed.used.marked.checked.verified.spoiled.invalidated.void.denied.refused.banned.barred.forbidden.prohibited.cancelled.cancellation.refunded.delete.remove.clear.error`.split(`.`)],[[40],[`entry`,`pass`,`voucher`,`event`,`concert`,`show`,`cancelled`,`cancellation`,`refunded`,`used`,`void`,`invalidated`,`spoiled`,`denied`,`refused`,`banned`,`barred`,`forbidden`,`prohibited`,`delete`,`remove`,`clear`,`error`,`x`]],[[41,1,40],[`trip`,`travel`,`pass`,`entry`,`voucher`,`event`,`concert`,`show`,`perforated`,`dashed`]],[[40,41],[`plane`,`trip`,`airplane`,`flight`,`travel`,`fly`,`takeoff`,`vacation`,`passenger`,`pass`,`check-in`,`airport`]],[[38],[`time`,`timer`,`stopwatch`]],[[38],[`time`,`timer`,`stopwatch`]],[[38],[`time`,`timer`,`stopwatch`]],[[19,1,11],[`on`,`off`,`switch`,`boolean`]],[[19,1,11],[`on`,`off`,`switch`,`boolean`]],[[12,18],[`toilet`,`potty`,`bathroom`,`washroom`]],[[39,11,18],[`tools`,`maintenance`,`repair`]],[[39,18],[`toolkit`,`tools`,`trunk`,`chest`,`box`,`storage`,`utility`,`utilities`,`container`,`kit`,`set`,`repair`,`fix`,`service`,`maintenance`,`mechanic`,`workshop`,`construction`,`hardware`,`equipment`,`gear`,`handyman`,`engineering`,`craft`,`diy`]],[[42],[`weather`,`wind`,`storm`,`hurricane`]],[[32,10,39,16],[`donut`,`doughnut`,`ring`,`hollow`,`3d`,`fast food`,`junk food`,`snack`,`treat`,`sweet`,`sugar`,`dessert`]],[[12],[`trackpad`,`cursor`]],[[12],[`trackpad`,`cursor`]],[[18,41],[`flannel`,`bathroom`,`toiletries`,`sanitation`,`clean`,`fresh`,`dry`,`laundry`,`laundrette`,`hospitality`,`housekeeping`,`room service`,`spa break`,`health club`,`amenities`,`hanging`]],[[41,40],[`airport`,`travel`,`tower`,`transportation`,`lighthouse`]],[[17,11],[`lego`,`block`,`addon`,`plugin`,`integration`]],[[40,36,16],[`farming`,`farmer`,`ranch`,`harvest`,`equipment`,`vehicle`]],[[40],[`roadworks`,`tarmac`,`safety`,`block`]],[[40],[`railway`,`metro`,`subway`,`underground`,`high-speed`,`bullet`,`fast`,`track`,`line`]],[[40,25],[`railway`,`metro`,`subway`,`underground`,`speed`,`bullet`,`fast`,`track`,`line`]],[[40,25],[`railway`,`line`]],[[40],[`railway`,`metro`,`subway`,`underground`,`track`,`line`,`tourism`]],[[22,0],[`gender`,`inclusive`]],[[14,20],[`empty`,`deletion`,`cleanup`,`junk`,`clear`,`garbage`,`delete`,`remove`,`bin`,`waste`,`recycle`,`discard`,`binoculars`,`rubbish`]],[[14,20],[`garbage`,`delete`,`remove`,`bin`]],[[24,36],[`tree`,`forest`,`park`,`nature`]],[[24,36],[`vacation`,`leisure`,`island`]],[[24,36],[`tree`,`pine`,`forest`,`park`,`nature`]],[[24,36],[`tree`,`forest`,`park`,`nature`]],[[6,3],[`statistics`]],[[6,3],[`statistics`]],[[6,3],[`arrows`,`estimated`,`indeterminate`,`data fluctuation`,`uncertain`,`forecast`,`variable`,`prediction`,`dynamic`,`volatile`]],[[32],[`equilateral`,`delta`,`shape`,`pyramid`,`hierarchy`]],[[26,32,11],[`warning`,`alert`,`danger`,`exclamation mark`,`linter`]],[[32],[`equilateral`,`delta`,`shape`,`pyramid`,`hierarchy`,`dashed`]],[[32,21],[`volume`,`controls`,`controller`,`tv remote`,`geometry`,`delta`,`ramp`,`slope`,`incline`,`increase`]],[[35,17],[`prize`,`sports`,`winner`,`achievement`,`award`,`champion`,`celebration`,`victory`]],[[40],[`delivery`,`van`,`shipping`,`haulage`,`lorry`]],[[40],[`delivery`,`van`,`shipping`,`haulage`,`lorry`,`electric`]],[[15],[`currency`,`money`,`payment`]],[[23,18],[`record player`,`gramophone`,`stereo`,`phonograph`,`vinyl`,`lp`,`disc`,`platter`,`cut`,`music`,`analog`,`retro`,`dj deck`,`disc jockey`,`scratch`,`spinning`]],[[2],[`animal`,`pet`,`tortoise`,`slow`,`speed`]],[[12,23,7],`television.stream.display.widescreen.high-definition.hd.1080p.4k.8k.smart.digital.video.entertainment.showtime.channels.terrestrial.satellite.cable.broadcast.live.frequency.tune.scan.aerial.receiver.transmission.signal.connection.connectivity`.split(`.`)],[[12,23],[`flatscreen`,`television`,`stream`,`display`,`widescreen`,`high-definition`,`hd`,`1080p`,`4k`,`8k`,`smart`,`digital`,`video`,`home cinema`,`entertainment`,`showtime`,`channels`,`catchup`]],[[12,23],[`flatscreen`,`television`,`stream`,`display`,`widescreen`,`high-definition`,`hd`,`1080p`,`4k`,`8k`,`smart`,`digital`,`video`,`movie`,`live`,`ott`,`running`,`start`,`film`,`home cinema`,`entertainment`,`showtime`,`channels`,`catchup`]],[[37],[`text`,`font`,`typography`]],[[37],[`text`,`font`,`typography`,`silhouette`,`profile`,`contour`,`stroke`,`line`]],[[42],[`rain`,`weather`]],[[42],[`rain`,`weather`,`uncovered`,`uninsured`,`antivirus`,`unprotected`,`risky`]],[[37],[`text`,`format`]],[[37,3],[`redo`,`rerun`,`history`]],[[37,3],[`redo`,`rerun`,`history`,`back`,`return`,`reverse`,`revert`,`direction`,`u-turn`]],[[37,3],[`redo`,`history`,`step`,`back`]],[[3,19],[`arrow`,`collapse`,`fold`,`vertical`,`dashed`]],[[3,19],[`arrow`,`expand`,`vertical`,`dashed`]],[[32,14],[`cubes`,`packages`,`parts`,`units`,`collection`,`cluster`,`separate`]],[[5,25],[`building`,`education`,`childhood`,`school`,`college`,`academy`,`institute`]],[[37],[`url`,`unchain`]],[[37],[`url`,`unchain`]],[[12,11],[`electricity`,`energy`,`electronics`,`socket`,`outlet`,`disconnect`]],[[3,14],[`file`]],[[12,23,18],[`universal`,`serial`,`bus`,`controller`,`connector`,`interface`]],[[1],[`person`,`account`,`contact`]],[[1],[`followed`,`subscribed`,`done`,`todo`,`tick`,`complete`,`task`]],[[1],[`settings`,`edit`,`cog`,`gear`]],[[1],[`passkey`,`password`,`login`,`authentication`,`authorization`,`roles`,`permissions`,`private`,`public`,`security`,`person`,`account`,`contact`]],[[1,31],[`person`,`lock`,`locked`,`account`,`secure`]],[[1],[`delete`,`remove`,`unfollow`,`unsubscribe`]],[[1],[`person`,`account`,`contact`,`profile`,`edit`,`change`]],[[1],[`new`,`add`,`create`,`follow`,`subscribe`]],[[1],[`person`,`account`,`contact`]],[[1],[`followed`,`subscribed`,`done`,`todo`,`tick`,`complete`,`task`]],[[1],[`settings`,`edit`,`cog`,`gear`]],[[1],[`passkey`,`password`,`login`,`authentication`,`authorization`,`roles`,`permissions`,`private`,`public`,`security`,`person`,`account`,`contact`]],[[1],[`delete`,`remove`,`unfollow`,`unsubscribe`]],[[1],[`person`,`account`,`contact`,`profile`,`edit`,`change`]],[[1],[`new`,`add`,`create`,`follow`,`subscribe`]],[[1,34],[`person`,`account`,`contact`,`find`,`scan`,`magnifier`,`magnifying glass`,`lens`]],[[1],[`delete`,`remove`,`unfollow`,`unsubscribe`,`unavailable`]],[[1,34],[`person`,`account`,`contact`,`find`,`scan`,`magnifier`,`magnifying glass`,`lens`]],[[1],[`person`,`account`,`favorite`,`contact`,`like`,`review`,`rating`,`admin`]],[[1],[`delete`,`remove`,`unfollow`,`unsubscribe`,`unavailable`]],[[1],[`group`,`people`]],[[1],[`group`,`people`]],[[16,41,25],[`fork`,`knife`,`cutlery`,`flatware`,`tableware`,`silverware`,`food`,`restaurant`,`meal`,`breakfast`,`dinner`,`supper`]],[[16,41,25],[`fork`,`knife`,`cutlery`,`flatware`,`tableware`,`silverware`,`food`,`restaurant`,`meal`,`breakfast`,`dinner`,`supper`]],[[5,18,36],[`electricity`,`energy`,`transmission line`,`telegraph pole`,`power lines`,`phone`]],[[40],[`minivan`,`cart`,`wagon`,`truck`,`lorry`,`trailer`,`camper`,`vehicle`,`drive`,`trip`,`journey`,`van`,`transport`,`carriage`,`delivery`,`travel`]],[[11,21],[`code`,`coding`,`programming`,`symbol`,`calculate`,`algebra`,`x`,`parentheses`,`parenthesis`,`brackets`,`parameter`,`(`,`)`]],[[31,41,18],[`safe`,`lockbox`,`deposit`,`locker`,`coffer`,`strongbox`,`safety`,`secure`,`storage`,`valuables`,`bank`]],[[32,21,10,39],[`shape`,`geometry`,`art`,`width`,`height`,`size`,`calculate`,`measure`,`select`,`graphics`,`box`]],[[16,36],[`vegetarian`,`fruitarian`,`herbivorous`,`animal rights`,`diet`]],[[1,17],[`mask`,`masquerade`,`impersonate`,`secret`,`incognito`]],[[22],[`gender`,`sex`,`female`,`feminine`,`woman`,`girl`]],[[22],[`gender`,`sex`,`intersex`,`androgynous`,`hermaphrodite`]],[[12,8,1,26],[`smartphone`,`notification`,`rumble`,`haptic feedback`,`screen`]],[[12,8,1],[`smartphone`,`notification`,`rumble`,`haptic feedback`,`notifications`,`screen`]],[[12,7,8,28],[`camera`,`movie`,`film`,`recording`,`motion picture`,`camcorder`,`reel`]],[[12,7,8,28],[`camera`,`movie`,`film`]],[[12,7,8,28,14],[`vhs`,`movie`,`film`,`recording`,`motion picture`,`showreel`,`cassette`]],[[10,28],[`eye`,`look`]],[[8,12,34],[`phone`,`cassette`,`tape`,`reel`,`recording`,`audio`]],[[35,17,41],[`beach`,`sand`,`net`,`holiday`,`vacation`,`summer`,`soccer`,`football`,`futbol`,`kick`,`pitch`,`goal`,`score`,`bounce`,`leather`,`wool`,`yarn`,`knitting`,`sewing`,`thread`,`embroidery`,`textile`]],[[8,7,23],[`music`,`sound`,`mute`,`speaker`]],[[8,7,23],[`music`,`sound`,`speaker`]],[[8,7,23],[`music`,`sound`,`speaker`]],[[8,7,23],[`music`,`sound`,`mute`,`speaker`]],[[8,7,23],[`music`,`sound`,`mute`,`speaker`]],[[34],[`vote`,`poll`,`ballot`,`political`,`social`,`check`,`tick`]],[[1,15],[`money`,`finance`,`pocket`]],[[1,15],[`money`,`finance`,`pocket`,`credit`,`purchase`,`payment`,`shopping`,`retail`,`consumer`,`cc`]],[[1,15],[`finance`,`pocket`]],[[1,12],[`background`,`texture`,`image`,`art`,`design`,`visual`,`decor`,`pattern`,`screen`,`cover`,`lock screen`]],[[10,17,9,28],[`magic`,`selection`]],[[10,17,9,28],[`magic`,`wizard`,`magician`]],[[5,25],[`storage`,`storehouse`,`depot`,`depository`,`repository`,`stockroom`,`logistics`,`building`]],[[18,12,41],[`tumble dryer`,`amenities`,`electronics`,`cycle`,`clothes`,`rinse`,`spin`,`drum`]],[[38],[`clock`,`time`]],[[42,25,23,36],[`water`,`sea`,`sound`,`hertz`,`wavelength`,`vibrate`]],[[42,36],[`water`,`sea`,`level`,`sound`,`hertz`,`wavelength`,`vibrate`,`low`,`tide`,`ocean`,`rising`,`down`,`falling`]],[[42,36],[`water`,`sea`,`level`,`sound`,`hertz`,`wavelength`,`vibrate`,`high`,`tide`,`ocean`,`rising`]],[[35,18],[`swimming`,`water`,`pool`,`lifeguard`,`ocean`,`🌊`,`🏊♂️`,`🏊♀️`,`🏊`,`🥽`]],[[31,1,25,11,34],[`indirection`,`vpn`,`virtual private network`,`proxy`,`connections`,`bounce`,`reroute`,`path`,`journey`,`planner`,`stops`,`stations`,`shared`,`spread`,`viral`]],[[8,12,7],[`camera`,`security`]],[[11,34,1],[`push api`,`interface`,`callback`]],[[11,34,1],[`push api`,`interface`,`callback`]],[[21],[`mass`,`heavy`,`lead`,`metal`,`measure`,`geometry`,`scales`,`balance`]],[[21],[`measure`,`scale`,`estimate`,`load`,`balance`,`size`,`measurement`,`quantity`,`mass`]],[[16],[`corn`,`cereal`,`grain`,`gluten`]],[[16],[`corn`,`cereal`,`grain`,`gluten free`,`allergy`,`intolerance`,`diet`]],[[37],[`text`,`selection`,`letters`,`characters`,`font`,`typography`]],[[8,12],[`connection`,`signal`,`wireless`]],[[8,12,14],[`connection`,`signal`,`wireless`,`directory`,`settings`,`control`,`preferences`,`cog`,`edit`,`gear`]],[[8,12],[`connection`,`signal`,`wireless`]],[[8,12],[`connection`,`signal`,`wireless`]],[[8,12],[`disabled`]],[[8,12],[`edit`,`wifi`,`pen`,`change`,`network`]],[[8,12],[`connection`,`signal`,`wireless`,`synchronize`,`reconnect`,`reset`,`restart`]],[[8,12],[`connection`,`signal`,`wireless`]],[[42,36],[`weather`,`air`,`blow`]],[[42,36],[`weather`,`air`,`pressure`,`blow`]],[[16],[`alcohol`,`beverage`,`bar`,`drink`,`glass`,`sommelier`,`vineyard`,`winery`]],[[16],[`alcohol`,`beverage`,`drink`,`glass`,`alcohol free`,`abstinence`,`abstaining`,`teetotalism`,`allergy`,`intolerance`]],[[11],[`action`,`continuous integration`,`ci`,`automation`,`devops`,`network`,`node`,`connection`]],[[2,31],[`invertebrate`,`grub`,`larva`,`snake`,`crawl`,`wiggle`,`slither`,`pest control`,`computer virus`,`malware`]],[[1,11,39],[`account`,`settings`,`spanner`,`diy`,`toolbox`,`build`,`construction`]],[[26,21],[`cancel`,`close`,`cross`,`delete`,`ex`,`remove`,`times`,`clear`,`math`,`multiply`,`multiplication`]],[[26,21],[`line`,`top`,`arrow`,`navigation`,`up`,`pointer`,`direction`,`vector`,`symbol`,`cancel`,`close`,`delete`,`remove`,`times`,`clear`,`math`,`multiply`,`multiplication`,`mean`,`median`,`average`,`x̄`]],[[8,12,28,42],[`flash`,`camera`,`lightning`,`electricity`,`energy`]],[[8,12,28,42],[`flash`,`camera`,`lightning`,`electricity`,`energy`]],[[34,13],[`water bearer`,`waves`,`innovation`,`air`,`future`,`astrology`,`star sign`,`horoscope`,`constellation`,`celestial`]],[[34,13],[`ram`,`horns`,`fire`,`energy`,`initiative`,`astrology`,`star sign`,`horoscope`,`constellation`,`celestial`]],[[34,13],[`crab`,`shell`,`protection`,`water`,`intuition`,`astrology`,`star sign`,`horoscope`,`constellation`,`celestial`]],[[34,13],[`goat`,`mountain`,`ambition`,`earth`,`discipline`,`astrology`,`star sign`,`horoscope`,`constellation`,`celestial`]],[[34,13],[`twins`,`duality`,`communication`,`air`,`adaptability`,`astrology`,`star sign`,`horoscope`,`constellation`,`celestial`]],[[34,13],[`lion`,`crown`,`leadership`,`fire`,`confidence`,`astrology`,`star sign`,`horoscope`,`constellation`,`celestial`]],[[34,13],[`scales`,`balance`,`justice`,`air`,`harmony`,`astrology`,`star sign`,`horoscope`,`constellation`,`celestial`]],[[34,13],[`serpent`,`snake holder`,`healing`,`knowledge`,`astronomy`,`astrology`,`star sign`,`horoscope`,`constellation`,`celestial`]],[[34,13],[`fish`,`duality`,`water`,`dreams`,`empathy`,`astrology`,`star sign`,`horoscope`,`constellation`,`celestial`]],[[34,13],[`archer`,`arrow`,`exploration`,`fire`,`philosophy`,`astrology`,`star sign`,`horoscope`,`constellation`,`celestial`]],[[34,13],[`scorpion`,`stinger`,`intensity`,`water`,`transformation`,`astrology`,`star sign`,`horoscope`,`constellation`,`celestial`]],[[34,13],[`bull`,`strength`,`stability`,`earth`,`endurance`,`astrology`,`star sign`,`horoscope`,`constellation`,`celestial`]],[[34,13],[`virgin`,`maiden`,`harvest`,`precision`,`earth`,`analysis`,`astrology`,`star sign`,`horoscope`,`constellation`,`celestial`]],[[0,19,10,37,28],[`magnifying glass`,`plus`]],[[0,19,10,37,28],[`magnifying glass`,`plus`]]],l$={"activity-square":`square-activity`,"alarm-check":`alarm-clock-check`,"alarm-minus":`alarm-clock-minus`,"alarm-plus":`alarm-clock-plus`,"alert-circle":`circle-alert`,"alert-octagon":`octagon-alert`,"alert-triangle":`triangle-alert`,"align-center":`text-align-center`,"align-justify":`text-align-justify`,"align-left":`text-align-start`,"align-right":`text-align-end`,"area-chart":`chart-area`,"arrow-down-01":`arrow-down-0-1`,"arrow-down-10":`arrow-down-1-0`,"arrow-down-az":`arrow-down-a-z`,"arrow-down-circle":`circle-arrow-down`,"arrow-down-left-from-circle":`circle-arrow-out-down-left`,"arrow-down-left-from-square":`square-arrow-out-down-left`,"arrow-down-left-square":`square-arrow-down-left`,"arrow-down-right-from-circle":`circle-arrow-out-down-right`,"arrow-down-right-from-square":`square-arrow-out-down-right`,"arrow-down-right-square":`square-arrow-down-right`,"arrow-down-square":`square-arrow-down`,"arrow-down-za":`arrow-down-z-a`,"arrow-left-circle":`circle-arrow-left`,"arrow-left-square":`square-arrow-left`,"arrow-right-circle":`circle-arrow-right`,"arrow-right-square":`square-arrow-right`,"arrow-up-01":`arrow-up-0-1`,"arrow-up-10":`arrow-up-1-0`,"arrow-up-az":`arrow-up-a-z`,"arrow-up-circle":`circle-arrow-up`,"arrow-up-left-from-circle":`circle-arrow-out-up-left`,"arrow-up-left-from-square":`square-arrow-out-up-left`,"arrow-up-left-square":`square-arrow-up-left`,"arrow-up-right-from-circle":`circle-arrow-out-up-right`,"arrow-up-right-from-square":`square-arrow-out-up-right`,"arrow-up-right-square":`square-arrow-up-right`,"arrow-up-square":`square-arrow-up`,"arrow-up-za":`arrow-up-z-a`,"asterisk-square":`square-asterisk`,"axis-3-d":`axis-3d`,"badge-help":`badge-question-mark`,"bar-chart":`chart-no-axes-column-increasing`,"bar-chart-2":`chart-no-axes-column`,"bar-chart-3":`chart-column`,"bar-chart-4":`chart-column-increasing`,"bar-chart-big":`chart-column-big`,"bar-chart-horizontal":`chart-bar`,"bar-chart-horizontal-big":`chart-bar-big`,"between-horizonal-end":`between-horizontal-end`,"between-horizonal-start":`between-horizontal-start`,"book-template":`book-dashed`,"box-select":`square-dashed`,"candlestick-chart":`chart-candlestick`,"check-circle":`circle-check-big`,"check-circle-2":`circle-check`,"check-square":`square-check-big`,"check-square-2":`square-check`,"chevron-down-circle":`circle-chevron-down`,"chevron-down-square":`square-chevron-down`,"chevron-left-circle":`circle-chevron-left`,"chevron-left-square":`square-chevron-left`,"chevron-right-circle":`circle-chevron-right`,"chevron-right-square":`square-chevron-right`,"chevron-up-circle":`circle-chevron-up`,"chevron-up-square":`square-chevron-up`,"circle-help":`circle-question-mark`,"circle-slashed":`circle-slash-2`,"clipboard-edit":`clipboard-pen`,"clipboard-signature":`clipboard-pen-line`,"code-2":`code-xml`,"code-square":`square-code`,columns:`columns-2`,"columns-settings":`columns-3-cog`,"contact-2":`contact-round`,"curly-braces":`braces`,"divide-circle":`circle-divide`,"divide-square":`square-divide`,"dot-square":`square-dot`,"download-cloud":`cloud-download`,edit:`square-pen`,"edit-2":`pen`,"edit-3":`pen-line`,"equal-square":`square-equal`,"file-audio":`file-headphone`,"file-audio-2":`file-headphone`,"file-axis-3-d":`file-axis-3d`,"file-badge-2":`file-badge`,"file-bar-chart":`file-chart-column-increasing`,"file-bar-chart-2":`file-chart-column`,"file-check-2":`file-check-corner`,"file-code-2":`file-code-corner`,"file-cog-2":`file-cog`,"file-edit":`file-pen`,"file-json":`file-braces`,"file-json-2":`file-braces-corner`,"file-key-2":`file-key`,"file-line-chart":`file-chart-line`,"file-lock-2":`file-lock`,"file-minus-2":`file-minus-corner`,"file-pie-chart":`file-chart-pie`,"file-plus-2":`file-plus-corner`,"file-question":`file-question-mark`,"file-search-2":`file-search-corner`,"file-signature":`file-pen-line`,"file-type-2":`file-type-corner`,"file-video":`file-play`,"file-video-2":`file-video-camera`,"file-volume-2":`file-signal`,"file-warning":`file-exclamation-point`,"file-x-2":`file-x-corner`,filter:`funnel`,"filter-x":`funnel-x`,fingerprint:`fingerprint-pattern`,"flip-horizontal":`square-centerline-dashed-horizontal`,"flip-vertical":`square-centerline-dashed-vertical`,"folder-cog-2":`folder-cog`,"folder-edit":`folder-pen`,"fork-knife":`utensils`,"fork-knife-crossed":`utensils-crossed`,"form-input":`rectangle-ellipsis`,"function-square":`square-function`,"gantt-chart":`chart-no-axes-gantt`,"gantt-chart-square":`square-chart-gantt`,"gauge-circle":`circle-gauge`,"git-commit":`git-commit-horizontal`,"globe-2":`earth`,grab:`hand-grab`,grid:`grid-3x3`,"grid-2-x-2":`grid-2x2`,"grid-2-x-2-check":`grid-2x2-check`,"grid-2-x-2-plus":`grid-2x2-plus`,"grid-2-x-2-x":`grid-2x2-x`,"grid-3-x-3":`grid-3x3`,"help-circle":`circle-question-mark`,"helping-hand":`hand-helping`,home:`house`,"ice-cream":`ice-cream-cone`,"ice-cream-2":`ice-cream-bowl`,indent:`list-indent-increase`,"indent-decrease":`list-indent-decrease`,"indent-increase":`list-indent-increase`,inspect:`square-mouse-pointer`,"kanban-square":`square-kanban`,"kanban-square-dashed":`square-dashed-kanban`,"laptop-2":`laptop-minimal`,"layers-3":`layers`,layout:`panels-top-left`,"letter-text":`text-initial`,"library-square":`square-library`,"line-chart":`chart-line`,"loader-2":`loader-circle`,"location-edit":`map-pin-pen`,"m-square":`square-m`,"mail-question":`mail-question-mark`,"menu-square":`square-menu`,"message-circle-question":`message-circle-question-mark`,"mic-2":`mic-vocal`,"minus-circle":`circle-minus`,"minus-square":`square-minus`,"more-horizontal":`ellipsis`,"more-vertical":`ellipsis-vertical`,"mouse-pointer-square-dashed":`square-dashed-mouse-pointer`,"move-3-d":`move-3d`,outdent:`list-indent-decrease`,"paintbrush-2":`paintbrush-vertical`,palmtree:`tree-palm`,"panel-bottom-inactive":`panel-bottom-dashed`,"panel-left-inactive":`panel-left-dashed`,"panel-right-inactive":`panel-right-dashed`,"panel-top-inactive":`panel-top-dashed`,"panels-left-right":`columns-3`,"panels-top-bottom":`rows-3`,"parking-circle":`circle-parking`,"parking-circle-off":`circle-parking-off`,"parking-square":`square-parking`,"parking-square-off":`square-parking-off`,"pause-circle":`circle-pause`,"pause-octagon":`octagon-pause`,"pen-box":`square-pen`,"pen-square":`square-pen`,"percent-circle":`circle-percent`,"percent-diamond":`diamond-percent`,"percent-square":`square-percent`,"pi-square":`square-pi`,"pie-chart":`chart-pie`,"pilcrow-square":`square-pilcrow`,"play-circle":`circle-play`,"play-square":`square-play`,"plug-zap-2":`plug-zap`,"plus-circle":`circle-plus`,"plus-square":`square-plus`,"power-circle":`circle-power`,"power-square":`square-power`,"rotate-3-d":`rotate-3d`,rows:`rows-2`,"scale-3-d":`scale-3d`,"scatter-chart":`chart-scatter`,"school-2":`university`,"scissors-square":`square-scissors`,"scissors-square-dashed-bottom":`square-bottom-dashed-scissors`,"send-horizonal":`send-horizontal`,"shield-close":`shield-x`,"shield-question":`shield-question-mark`,sidebar:`panel-left`,"sidebar-close":`panel-left-close`,"sidebar-open":`panel-left-open`,"sigma-square":`square-sigma`,"slash-square":`square-slash`,sliders:`sliders-vertical`,"sort-asc":`arrow-up-narrow-wide`,"sort-desc":`arrow-down-wide-narrow`,"split-square-horizontal":`square-split-horizontal`,"split-square-vertical":`square-split-vertical`,"square-gantt-chart":`square-chart-gantt`,stars:`sparkles`,"stop-circle":`circle-stop`,subtitles:`captions`,"table-config":`columns-3-cog`,"terminal-square":`square-terminal`,"test-tube-2":`test-tube-diagonal`,text:`text-align-start`,"text-selection":`text-select`,train:`tram-front`,"tv-2":`tv-minimal`,unlock:`lock-open`,"unlock-keyhole":`lock-keyhole-open`,"upload-cloud":`cloud-upload`,"user-2":`user-round`,"user-check-2":`user-round-check`,"user-circle":`circle-user`,"user-circle-2":`circle-user-round`,"user-cog-2":`user-round-cog`,"user-minus-2":`user-round-minus`,"user-plus-2":`user-round-plus`,"user-square":`square-user`,"user-square-2":`square-user-round`,"user-x-2":`user-round-x`,"users-2":`users-round`,verified:`badge-check`,"wallet-2":`wallet-minimal`,"wand-2":`wand-sparkles`,"wrap-text":`text-wrap`,"x-circle":`circle-x`,"x-octagon":`octagon-x`,"x-square":`square-x`},u$={activity:[`attivita`,`sensore`,`generico`],"air-vent":[`bocchetta`,`aria`,`ventilazione`,`condizionatore`,`vent`],"alarm-smoke":[`fumo`,`antincendio`,`rilevatore`],baby:[`neonato`,`bimbo`,`cameretta`,`babymonitor`],bath:[`bagno`,`vasca`,`doccia`,`bathroom`],battery:[`batteria`],"battery-charging":[`batteria`,`carica`,`ricarica`],"battery-full":[`batteria`,`carica`,`piena`],"battery-low":[`batteria`,`scarica`],bed:[`cameretta`,`letto`,`singolo`],"bed-double":[`camera`,`letto`,`matrimoniale`,`bedroom`],bell:[`campanello`,`suoneria`,`notifica`,`chime`],"bell-off":[`silenzioso`,`notifiche`,`disattivate`,`muto`],"bell-ring":[`campanello`,`suona`,`doorbell`,`notifica`],bike:[`bicicletta`,`bici`,`moto`],bird:[`uccello`,`animale`],blinds:[`tapparella`,`persiana`,`serranda`,`avvolgibile`,`shutter`,`blind`,`veneziana`],bluetooth:[],bone:[`osso`,`cane`],bot:[`robot`,`aspirapolvere`],box:[`scatola`,`contenitore`],briefcase:[`ufficio`,`lavoro`,`valigetta`,`studio`,`office`],building:[`edificio`,`palazzo`],"building-2":[`edificio`,`uffici`,`condominio`],bus:[`autobus`,`pullman`],cable:[`cavo`],calendar:[`calendario`,`data`,`pianificazione`],camera:[`telecamera`,`videocamera`,`cam`],car:[`auto`,`macchina`,`veicolo`,`parcheggio`,`garage`],cat:[`gatto`,`animale`],"circle-dot":[`pulsante`,`bottone`,`button`,`dot`],"circle-parking":[`parcheggio`,`posto`,`auto`,`garage`,`parking`],clock:[`orologio`,`ora`,`tempo`],cloud:[`nuvola`,`nuvoloso`],"cloud-rain":[`pioggia`],"cloud-sun":[`variabile`,`sole`,`nuvole`],"cooking-pot":[`pentola`,`cucina`,`fornello`],cpu:[`processore`,`chip`,`dispositivo`],crosshair:[`mirino`,`puntamento`,`centro`],dog:[`cane`,`animale`],"door-closed":[`porta`,`chiusa`,`contatto`],"door-open":[`porta`,`aperta`,`contatto`,`ingresso`,`uscita`,`entrance`],drill:[`officina`,`trapano`,`lavori`],droplet:[`goccia`,`acqua`,`perdita`,`allagamento`],droplets:[`umidita`,`acqua`,`allagamento`,`perdita`],dumbbell:[`palestra`,`attrezzi`],eye:[`occhio`,`visibile`,`visto`],"eye-off":[`privacy`,`nascosto`,`oscurato`,`mascherato`,`invisibile`],fan:[`ventilatore`,`ventola`,`aria`],fence:[`recinto`,`cancello`,`staccionata`,`perimetro`,`gate`],flame:[`fiamma`,`gas`,`fuoco`,`incendio`],flashlight:[`faretto`,`torcia`,`spot`,`faro`],flower:[`fiore`,`pianta`],footprints:[`movimento`,`passi`,`presenza`,`motion`],"gamepad-2":[`console`,`gioco`,`joystick`],gauge:[`misura`,`livello`,`pressione`,`indicatore`],hammer:[`officina`,`martello`,`lavori`],"hard-drive":[`disco`,`hdd`,`archiviazione`,`storage`],hash:[`numero`,`contatore`,`valore`],heart:[`cuore`,`preferito`,`salute`],"heart-pulse":[`battito`,`salute`,`monitoraggio`],heater:[`riscaldamento`,`termosifone`,`stufa`,`calore`],house:[`casa`,`abitazione`,`home`],image:[`immagine`,`foto`,`snapshot`],key:[`chiave`],"key-round":[`chiave`,`tonda`],lamp:[`lampada`,`abatjour`],"lamp-ceiling":[`plafoniera`,`lampadario`,`luce`,`soffitto`],"lamp-desk":[`lampada`,`scrivania`,`abatjour`],"lamp-floor":[`piantana`,`lampada`,`terra`],laptop:[`portatile`,`notebook`],leaf:[`foglia`,`pianta`,`verde`],lightbulb:[`luce`,`lampadina`,`lampada`,`light`],lock:[`serratura`,`chiave`,`lucchetto`,`chiuso`,`locked`],"lock-open":[`serratura`,`aperta`,`sbloccato`,`unlocked`],mailbox:[`cassetta`,`postale`,`posta`],"map-pin":[`posizione`,`luogo`,`mappa`,`pin`],mic:[`microfono`,`audio`],"mic-off":[`microfono`,`spento`,`muto`],microwave:[`microonde`,`forno`],monitor:[`schermo`],"monitor-play":[`schermo`,`riproduzione`,`player`,`display`],moon:[`notte`,`luna`,`notturna`,`nightvision`],mountain:[`montagna`,`esterno`,`panorama`],music:[`musica`],network:[`rete`,`lan`],package:[`pacco`,`consegna`,`storage`],"paw-print":[`animale`,`zampa`,`pet`],"person-standing":[`persona`,`piedi`,`presenza`],phone:[`telefono`,`chiamata`],pipette:[`qualita`,`aria`,`misura`,`campione`],plane:[`aereo`],plug:[`presa`,`spina`],"plug-zap":[`presa`,`alimentata`],power:[`accensione`,`alimentazione`],"power-off":[`spegnimento`,`spento`],printer:[`stampante`],projector:[`proiettore`],radar:[`movimento`,`presenza`,`pir`,`rilevamento`,`perimeter`],radio:[],"refresh-cw":[`aggiorna`,`ricarica`,`refresh`,`reload`,`ciclo`],refrigerator:[`frigorifero`,`frigo`],route:[`percorso`,`strada`,`vialetto`,`tragitto`,`street`],router:[`modem`],sailboat:[`barca`,`imbarcazione`],"scroll-text":[`registro`,`log`,`testo`],server:[`nas`],shield:[`scudo`,`protezione`,`sicurezza`,`allarme`],"shield-alert":[`manomissione`,`allarme`,`tamper`,`avviso`],"shield-check":[`protetto`,`sicuro`,`armato`],"shield-off":[`protezione`,`disattivata`,`disarmato`],siren:[`sirena`,`allarme`],"sliders-horizontal":[`regolazione`,`cursori`,`impostazioni`,`slider`],smartphone:[`telefono`,`cellulare`],snowflake:[`freddo`,`raffrescamento`,`aria`,`condizionata`,`neve`],sofa:[`salone`,`soggiorno`,`divano`,`living`,`living room`],sparkles:[`automatico`,`intelligente`,`ai`,`scena`],speaker:[`altoparlante`,`cassa`],sprout:[`irrigazione`,`pianta`,`germoglio`,`orto`],star:[`preferito`,`stella`,`importante`],store:[`negozio`,`ingresso`,`vetrina`,`shop`],sun:[`sole`,`luminosita`,`giorno`,`esterno`,`outdoor`],"sun-medium":[`sole`,`luminosita`],sunrise:[`alba`],tablet:[`ipad`],thermometer:[`temperatura`,`termometro`,`termostato`],"thermometer-snowflake":[`freddo`,`temperatura`,`bassa`],"thermometer-sun":[`caldo`,`temperatura`,`alta`],timer:[`conto`,`rovescia`],"toggle-left":[`interruttore`,`switch`,`toggle`],"toggle-right":[`interruttore`,`switch`,`toggle`,`acceso`],tractor:[`trattore`,`tosaerba`,`giardino`],"train-front":[`treno`],"tree-pine":[`albero`,`pino`,`giardino`],trees:[`giardino`,`alberi`,`esterno`,`parco`,`garden`],truck:[`camion`,`furgone`,`consegna`],tv:[`televisore`],umbrella:[`tenda`,`markise`,`ombrellone`,`pergola`,`veranda`,`terrace`],user:[`persona`,`utente`],users:[`persone`,`gruppo`,`famiglia`],utensils:[`cucina`,`posate`,`sala`,`pranzo`,`kitchen`],vibrate:[`vibrazione`,`urto`,`tamper`],video:[],"video-off":[`video`,`spento`],"volume-2":[`volume`,`audio`,`altoparlante`,`suono`],"volume-x":[`muto`,`silenziato`,`volume`,`spento`],warehouse:[`magazzino`,`capanno`,`deposito`,`cantina`,`warehouse`],"washing-machine":[`lavatrice`,`lavastoviglie`,`asciugatrice`],waves:[`onde`,`acqua`,`vibrazione`],"waves-ladder":[`piscina`,`vasca`,`pool`],wifi:[`rete`,`segnale`],"wifi-off":[`wifi`,`assente`,`offline`,`disconnesso`],wind:[`vento`,`aria`,`gas`,`monossido`,`co`],workflow:[`automazione`,`flusso`,`scenario`],wrench:[`officina`,`manutenzione`,`attrezzi`,`utenze`],zap:[`energia`,`corrente`,`consumo`,`watt`,`elettricita`]},d$={gauge2:`gauge`},f$=new Set(s$);new Map([...Object.entries(l$),...Object.entries(d$)]);function p$(e){return typeof e==`string`&&f$.has(e)}var m$=hl(p$,`Not an icon of the catalog`),h$=s$.map((e,t)=>{let[n,r]=c$[t]??[[],[]],i=n.flatMap(e=>{let t=o$[e];return t===void 0?[]:[t]});return{key:e,categories:i,primaryCategory:i[0]??o$[0],tags:r,synonyms:u$[e]??[]}});new Map(h$.map(e=>[e.key,e]));var g$=[`devices`,`home`,`security`,`buildings`,`connectivity`,`multimedia`,`nature`,`weather`,`transportation`,`animals`],_$=new Set(h$.map(e=>e.primaryCategory));[...g$,...o$.filter(e=>!g$.includes(e))].filter(e=>_$.has(e)),F({locationKey:k(),icon:m$}),F({locationKey:k(),description:k()});var v$=z([`image`,`video`,`gif`,`audio`,`icon`]),y$=F({mediaType:v$,url:k().optional(),bytes:vl(Uint8Array).optional(),mime:k().optional(),name:k().optional()}).refine(e=>e.url!==void 0||e.bytes!==void 0,{message:"Attachment requires either `url` or `bytes`"}),b$=z([`text`,`markdown`,`html`]),x$=z([`acknowledge`,`dismiss`,`silence`,`snooze`,`view`,`play`,`open`,`close`,`lock`,`unlock`,`arm`,`arm-home`,`arm-away`,`arm-night`,`disarm`,`light`,`alert`,`camera`]),S$=F({id:k(),label:k(),url:k().optional(),icon:x$.optional(),destructive:j().optional(),mode:z([`navigate`,`background`]).optional()}),C$=F({body:k(),title:k().optional(),format:b$.default(`text`),priority:A().int().min(1).max(5).default(3),level:k().optional(),attachments:P(y$).optional(),clickUrl:k().optional(),actions:P(S$).optional(),sound:k().optional(),ttl:A().optional(),tag:k().optional(),deviceId:A().optional(),eventId:k().optional(),metadata:R(k(),M()).optional()}),w$=F({id:k(),label:k(),ordinal:A().int().min(1).max(5).nullable(),flags:F({critical:j().optional(),silent:j().optional(),noPush:j().optional()}).optional(),requires:P(k()).optional(),description:k().optional()}),T$=F({attachments:F({mediaTypes:P(v$),mode:z([`url`,`bytes`,`both`]),max:A().int().nonnegative(),maxBytes:A().int().positive().optional()}),actions:A().int().nonnegative(),actionIcons:j().optional(),levels:P(w$),format:P(b$),clickUrl:j(),sound:j(),ttl:j(),bodyMaxLen:A().int().positive()}),E$=M(),D$=F({kind:k(),label:k(),icon:k(),addonId:k(),iconUrl:k().optional(),iconMediaType:k().optional(),configSchema:E$,destinationKeys:P(k()).optional(),supportsDiscovery:j(),caps:T$}),O$=F({id:k(),name:k(),kind:k(),addonId:k(),enabled:j(),config:R(k(),M())}),k$=F({kind:k(),suggestedName:k(),config:R(k(),M())}),A$=F({level:k(),format:b$,attachmentsSent:A().int().nonnegative(),actionsSent:A().int().nonnegative(),truncated:j(),dropped:P(k())}),j$=F({success:j(),error:k().optional(),renderedAs:A$.optional()}),M$=j$,N$=F({ok:j(),resolvedUrl:k(),httpStatus:A().int().optional(),stateInstance:k().optional(),error:k().optional()});Q(F({}),P(D$)),Q(F({}),P(O$),{auth:`admin`}),Q(F({targetId:k()}),O$,{auth:`admin`}),Q(F({kind:k(),config:R(k(),M()).optional(),targetId:k().optional()}),P(k$),{auth:`admin`}),Q(F({kind:k(),config:R(k(),M()),targetId:k().optional()}),N$,{kind:`mutation`,auth:`admin`}),Q(F({targetId:k(),notification:C$}),j$,{kind:`mutation`,auth:`admin`}),Q(F({targetId:k(),sample:C$.optional()}),M$,{kind:`mutation`,auth:`admin`}),Q(F({target:O$,cloneSecretsFrom:k().optional()}),O$,{kind:`mutation`,auth:`admin`}),Q(F({targetId:k()}),N(),{kind:`mutation`,auth:`admin`}),Q(F({targetId:k(),enabled:j()}),N(),{kind:`mutation`,auth:`admin`}),new Set([{id:`person`,name:`Person`},{id:`vehicle`,name:`Vehicle`},{id:`animal`,name:`Animal`},{id:`package`,name:`Package`}].map(e=>e.id));var P$={mapping:{person:`person`,bicycle:`vehicle`,car:`vehicle`,motorcycle:`vehicle`,airplane:`vehicle`,bus:`vehicle`,train:`vehicle`,truck:`vehicle`,boat:`vehicle`,bird:`animal`,cat:`animal`,dog:`animal`,horse:`animal`,sheep:`animal`,cow:`animal`,elephant:`animal`,bear:`animal`,zebra:`animal`,giraffe:`animal`,suitcase:`package`,backpack:`package`,handbag:`package`},preserveOriginal:!1},F$=[{id:`speech`,name:`Speech`},{id:`scream`,name:`Scream / Shout`},{id:`crying`,name:`Crying / Baby`},{id:`laughter`,name:`Laughter`},{id:`music`,name:`Music`},{id:`dog`,name:`Dog`},{id:`cat`,name:`Cat`},{id:`bird`,name:`Bird`},{id:`animal`,name:`Animal (other)`},{id:`alarm`,name:`Alarm / Siren`},{id:`doorbell`,name:`Doorbell / Knock`},{id:`glass_breaking`,name:`Glass Breaking`},{id:`gunshot`,name:`Gunshot / Explosion`},{id:`vehicle`,name:`Vehicle`},{id:`siren`,name:`Emergency Siren`},{id:`fire`,name:`Fire / Smoke`},{id:`water`,name:`Water`},{id:`wind`,name:`Wind / Weather`},{id:`door`,name:`Door`},{id:`footsteps`,name:`Footsteps`},{id:`crowd`,name:`Crowd / Chatter`},{id:`telephone`,name:`Telephone`},{id:`engine`,name:`Engine / Motor`},{id:`tools`,name:`Tools / Construction`},{id:`silence`,name:`Silence`}],I$={mapping:{Speech:`speech`,"Child speech, kid speaking":`speech`,Conversation:`speech`,"Narration, monologue":`speech`,Babbling:`speech`,Whispering:`speech`,"Speech synthesizer":`speech`,Humming:`speech`,Rapping:`speech`,Singing:`speech`,Choir:`speech`,"Child singing":`speech`,Shout:`scream`,Bellow:`scream`,Yell:`scream`,Screaming:`scream`,"Children shouting":`scream`,Whoop:`scream`,"Crying, sobbing":`crying`,"Baby cry, infant cry":`crying`,Whimper:`crying`,"Wail, moan":`crying`,Groan:`crying`,Laughter:`laughter`,"Baby laughter":`laughter`,Giggle:`laughter`,Snicker:`laughter`,"Belly laugh":`laughter`,"Chuckle, chortle":`laughter`,Music:`music`,"Musical instrument":`music`,Guitar:`music`,Piano:`music`,Drum:`music`,"Drum kit":`music`,"Violin, fiddle":`music`,Flute:`music`,Saxophone:`music`,Trumpet:`music`,Synthesizer:`music`,"Pop music":`music`,"Rock music":`music`,"Hip hop music":`music`,"Classical music":`music`,Jazz:`music`,"Electronic music":`music`,"Background music":`music`,Dog:`dog`,Bark:`dog`,Yip:`dog`,Howl:`dog`,"Bow-wow":`dog`,Growling:`dog`,"Whimper (dog)":`dog`,Cat:`cat`,Purr:`cat`,Meow:`cat`,Hiss:`cat`,Caterwaul:`cat`,Bird:`bird`,"Bird vocalization, bird call, bird song":`bird`,"Chirp, tweet":`bird`,Squawk:`bird`,Crow:`bird`,Owl:`bird`,"Pigeon, dove":`bird`,Animal:`animal`,"Domestic animals, pets":`animal`,"Livestock, farm animals, working animals":`animal`,Horse:`animal`,"Cattle, bovinae":`animal`,Pig:`animal`,Sheep:`animal`,Goat:`animal`,Frog:`animal`,Insect:`animal`,Cricket:`animal`,Alarm:`alarm`,"Alarm clock":`alarm`,"Smoke detector, smoke alarm":`alarm`,"Fire alarm":`alarm`,Buzzer:`alarm`,"Civil defense siren":`alarm`,"Car alarm":`alarm`,Siren:`siren`,"Police car (siren)":`siren`,"Ambulance (siren)":`siren`,"Fire engine, fire truck (siren)":`siren`,"Emergency vehicle":`siren`,Foghorn:`siren`,Doorbell:`doorbell`,"Ding-dong":`doorbell`,Knock:`doorbell`,Tap:`doorbell`,Glass:`glass_breaking`,Shatter:`glass_breaking`,"Chink, clink":`glass_breaking`,"Gunshot, gunfire":`gunshot`,"Machine gun":`gunshot`,Explosion:`gunshot`,Fireworks:`gunshot`,Firecracker:`gunshot`,"Artillery fire":`gunshot`,"Cap gun":`gunshot`,Boom:`gunshot`,Vehicle:`vehicle`,Car:`vehicle`,Truck:`vehicle`,Bus:`vehicle`,Motorcycle:`vehicle`,"Car passing by":`vehicle`,"Vehicle horn, car horn, honking":`vehicle`,"Traffic noise, roadway noise":`vehicle`,Train:`vehicle`,Aircraft:`vehicle`,Helicopter:`vehicle`,Bicycle:`vehicle`,Skateboard:`vehicle`,Fire:`fire`,Crackle:`fire`,Water:`water`,Rain:`water`,Raindrop:`water`,"Rain on surface":`water`,Stream:`water`,Waterfall:`water`,Ocean:`water`,"Waves, surf":`water`,"Splash, splatter":`water`,Wind:`wind`,Thunderstorm:`wind`,Thunder:`wind`,"Wind noise (microphone)":`wind`,"Rustling leaves":`wind`,Door:`door`,"Sliding door":`door`,Slam:`door`,"Cupboard open or close":`door`,"Walk, footsteps":`footsteps`,Run:`footsteps`,Shuffle:`footsteps`,Crowd:`crowd`,Chatter:`crowd`,Cheering:`crowd`,Applause:`crowd`,"Children playing":`crowd`,"Hubbub, speech noise, speech babble":`crowd`,Telephone:`telephone`,"Telephone bell ringing":`telephone`,Ringtone:`telephone`,"Telephone dialing, DTMF":`telephone`,"Busy signal":`telephone`,Engine:`engine`,"Engine starting":`engine`,Idling:`engine`,"Accelerating, revving, vroom":`engine`,"Light engine (high frequency)":`engine`,"Medium engine (mid frequency)":`engine`,"Heavy engine (low frequency)":`engine`,"Lawn mower":`engine`,Chainsaw:`engine`,Hammer:`tools`,Jackhammer:`tools`,Sawing:`tools`,"Power tool":`tools`,Drill:`tools`,Sanding:`tools`,Silence:`silence`},preserveOriginal:!1},L$={mapping:{speech:`speech`,child_speech:`speech`,conversation:`speech`,whispering:`speech`,singing:`speech`,humming:`speech`,shout:`scream`,yell:`scream`,screaming:`scream`,crying:`crying`,baby_crying:`crying`,sobbing:`crying`,laughter:`laughter`,baby_laughter:`laughter`,giggling:`laughter`,music:`music`,guitar:`music`,piano:`music`,drums:`music`,dog_bark:`dog`,dog_bow_wow:`dog`,dog_growling:`dog`,dog_howl:`dog`,cat_meow:`cat`,cat_purr:`cat`,cat_hiss:`cat`,bird:`bird`,bird_chirp:`bird`,bird_squawk:`bird`,animal:`animal`,horse:`animal`,cow_moo:`animal`,insect:`animal`,alarm:`alarm`,smoke_alarm:`alarm`,fire_alarm:`alarm`,car_alarm:`alarm`,siren:`siren`,police_siren:`siren`,ambulance_siren:`siren`,doorbell:`doorbell`,door_knock:`doorbell`,knocking:`doorbell`,glass_breaking:`glass_breaking`,glass_shatter:`glass_breaking`,gunshot:`gunshot`,explosion:`gunshot`,fireworks:`gunshot`,car:`vehicle`,truck:`vehicle`,motorcycle:`vehicle`,car_horn:`vehicle`,vehicle_horn:`vehicle`,traffic:`vehicle`,fire:`fire`,fire_crackle:`fire`,water:`water`,rain:`water`,ocean:`water`,splash:`water`,wind:`wind`,thunder:`wind`,thunderstorm:`wind`,door:`door`,door_slam:`door`,sliding_door:`door`,footsteps:`footsteps`,walking:`footsteps`,running:`footsteps`,crowd:`crowd`,chatter:`crowd`,cheering:`crowd`,applause:`crowd`,telephone_ring:`telephone`,ringtone:`telephone`,engine:`engine`,engine_starting:`engine`,lawn_mower:`engine`,chainsaw:`engine`,hammer:`tools`,jackhammer:`tools`,drill:`tools`,power_tool:`tools`,silence:`silence`},preserveOriginal:!1},R$=new Map;for(let[e,t]of Object.entries(I$.mapping))R$.set(e.toLowerCase(),t);for(let[e,t]of Object.entries(L$.mapping))R$.set(e.toLowerCase(),t);var z$={motion:`#f59e0b`,audio:`#06b6d4`,person:`#22c55e`,vehicle:`#3b82f6`,animal:`#f97316`,package:`#a855f7`,sensor:`#8b5cf6`,control:`#10b981`,genericDetection:`#64748b`},B$={car:`#f59e0b`,truck:`#d97706`,bus:`#b45309`,motorcycle:`#eab308`,bicycle:`#ca8a04`,airplane:`#60a5fa`,boat:`#2563eb`,train:`#1d4ed8`,bird:`#14b8a6`,dog:`#84cc16`,cat:`#f97316`,horse:`#a16207`,sheep:`#a3a3a3`,cow:`#78716c`,elephant:`#6b7280`,bear:`#7c2d12`,zebra:`#404040`,giraffe:`#d4a373`};function V$(e){return e.split(/[-_ ]/).filter(e=>e.length>0).map(e=>e.charAt(0).toUpperCase()+e.slice(1)).join(` `)}var H$=new Map;function U$(e,t,n,r,i){H$.set(e,{kind:e,parentKind:null,level:`macro`,category:t,color:n,iconId:r,labelKey:`eventKind.${e}`,label:i})}function W$(e,t,n,r,i,a){H$.set(e,{kind:e,parentKind:t,level:`sub`,category:n,color:r,iconId:i,labelKey:`eventKind.${e}`,label:a})}U$(`motion`,`motion`,z$.motion,`motion`,`Motion`),U$(`audio`,`audio`,z$.audio,`audio`,`Audio`),U$(`person`,`detection`,z$.person,`person`,`Person`),U$(`vehicle`,`detection`,z$.vehicle,`vehicle`,`Vehicle`),U$(`animal`,`detection`,z$.animal,`animal`,`Animal`),U$(`package`,`package`,z$.package,`package`,`Package`),U$(`sensor`,`sensor`,z$.sensor,`sensor`,`Sensor`),U$(`control`,`control`,z$.control,`control`,`Control`);for(let[e,t]of Object.entries(P$.mapping))t!==`vehicle`&&t!==`animal`||H$.has(e)||W$(e,t,`detection`,B$[e]??z$.genericDetection,e,V$(e));W$(`package-delivered`,`package`,`package`,z$.package,`package`,`Package delivered`),W$(`package-picked-up`,`package`,`package`,z$.package,`package`,`Package picked up`),W$(`contact`,`sensor`,`sensor`,`#f59e0b`,`door`,`Contact`),W$(`motion-sensor`,`sensor`,`sensor`,z$.sensor,`pir`,`Motion sensor`),W$(`smoke`,`sensor`,`sensor`,`#ef4444`,`smoke`,`Smoke`),W$(`flood`,`sensor`,`sensor`,`#3b82f6`,`water`,`Water leak`),W$(`gas`,`sensor`,`sensor`,`#ef4444`,`gas`,`Gas`),W$(`carbon-monoxide`,`sensor`,`sensor`,`#dc2626`,`smoke`,`Carbon monoxide`),W$(`vibration`,`sensor`,`sensor`,`#eab308`,`vibration`,`Vibration`),W$(`tamper`,`sensor`,`sensor`,`#f97316`,`tamper`,`Tamper`),W$(`presence`,`sensor`,`sensor`,`#22c55e`,`presence`,`Presence`),W$(`enum-sensor`,`sensor`,`sensor`,z$.sensor,`generic`,`Sensor state`),W$(`device-event`,`sensor`,`sensor`,`#10b981`,`button`,`Device event`),W$(`lock`,`control`,`control`,`#0ea5e9`,`lock`,`Lock`),W$(`cover`,`control`,`control`,`#0ea5e9`,`door`,`Cover`),W$(`switch`,`control`,`control`,z$.control,`switch`,`Switch`),W$(`siren`,`control`,`control`,`#dc2626`,`siren`,`Siren`),W$(`button`,`control`,`control`,`#10b981`,`button`,`Button`),W$(`doorbell`,`control`,`control`,`#a855f7`,`doorbell`,`Doorbell`);for(let e of F$){let t=`audio-${e.id}`;H$.has(t)||W$(t,`audio`,`audio`,z$.audio,t,e.name)}var G$=Object.freeze(Object.fromEntries(H$)),K$=F({kind:k(),label:k(),parentKind:k().nullable()}),q$=F({videoClasses:P(K$),audioKinds:P(K$),labels:P(K$)});function J$(e,t,n){return{kind:e,label:t,parentKind:n}}function Y$(){let e=Object.values(G$);return{videoClasses:e.filter(e=>e.category===`detection`).map(e=>J$(e.kind,e.label,e.parentKind)),audioKinds:e.filter(e=>e.category===`audio`&&e.level===`sub`).map(e=>J$(e.kind,e.label,e.parentKind)),labels:e.filter(e=>e.category===`sensor`||e.category===`control`).map(e=>J$(e.kind,e.label,e.parentKind))}}Object.freeze(Y$());var X$=z([`disarmed`,`armed_home`,`armed_away`,`armed_night`,`armed_vacation`,`armed_custom_bypass`,`arming`,`disarming`,`pending`,`triggered`]),Z$=z([`home`,`away`,`night`,`vacation`,`custom_bypass`]);F({state:X$,targetMode:Z$.nullable().optional(),availableModes:P(Z$),requiresCode:j(),lastChangedAt:A()}),a$.AlarmPanel,Q(F({deviceId:A().int().nonnegative(),mode:Z$,code:k().min(1).optional()}),N(),{kind:`mutation`,auth:`protected`}),Q(F({deviceId:A().int().nonnegative(),code:k().min(1).optional()}),N(),{kind:`mutation`,auth:`protected`}),Q(F({deviceId:A().int().nonnegative()}),N(),{kind:`mutation`,auth:`protected`});var Q$=F({x:A(),y:A()}),$$=F({kind:B(`rect`),x:A(),y:A(),width:A(),height:A()}),e1=F({kind:B(`polygon`),points:P(Q$)});L(`kind`,[$$,e1,F({kind:B(`grid`),gridWidth:A(),gridHeight:A(),cells:P(j())}),F({kind:B(`line`),points:P(Q$)})]),z([`rect`,`polygon`,`grid`,`line`]),F({min:A(),max:A()}),F({width:A(),height:A()});var t1=z([`immediate`,`track-end`,`device-event`,`package-event`,`system-event`]),n1=z(`device-online.device-offline.device-disabled.device-enabled.device-battery-low.device-battery-normal.device-consumable-low.device-consumable-normal.device-tank-low.device-tank-full.device-tank-normal.stream-online.stream-offline.node-online.node-offline.node-restarting.node-updating.node-inference-unavailable.detection-blind.recording-stalled.recording-healthy.recording-degraded.storage-location-low.storage-location-critical.storage-location-ok.addon-crash-loop.addon-update-available.server-update-available.wrapper-update-available.alarm-triggered.alarm-armed.alarm-disarmed.alarm-arming.alarm-arm-refused.alarm-pending.alarm-rearmed.alarm-sensor-bypass.alarm-check-failed.addon-updated.server-updated.export-completed.backup-completed.camera-online.camera-offline.camera-disabled.camera-enabled`.split(`.`)),r1=new Set([`camera-online`,`camera-offline`,`camera-disabled`,`camera-enabled`]);n1.options.filter(e=>!r1.has(e));var i1=[`alarm-arm-refused`,`alarm-check-failed`,`alarm-arming`,`alarm-armed`,`alarm-pending`,`alarm-triggered`,`alarm-rearmed`,`alarm-sensor-bypass`,`alarm-disarmed`],a1=F({kinds:P(n1).min(1),deviceIds:P(A().int()).min(1).optional(),deviceTypes:P(k().min(1)).min(1).optional(),excludeDeviceIds:P(A().int()).min(1).optional(),nodeIds:P(k().min(1)).min(1).optional(),packageNames:P(k().min(1)).min(1).optional(),consumableLowPercent:A().int().min(1).max(95).optional()}),o1=1440,s1=F({windows:P(F({days:P(A().int().min(0).max(6)).min(1),startMinute:A().int().min(0).max(1439),endMinute:A().int().min(0).max(1439)})).min(1),timezone:k().optional(),invert:j().optional()}),c1=z([`instant`,`summary`]),l1=z([`rule`,`section`]),u1=L(`mode`,[F({mode:B(`instant`)}),F({mode:B(`summary`),schedule:s1,split:l1.optional()})]),d1=F({values:P(k().min(1)),maxDistance:A().int().min(0).max(3).default(1)}),f1=F({zoneId:k().optional(),className:k().optional(),op:z([`became-occupied`,`became-free`,`>=`,`<=`]).default(`became-occupied`),count:A().int().min(0).default(1),sustainSeconds:A().int().min(0).max(3600).default(15)}),p1=F({labels:P(k().min(1)).min(1).optional(),dbThreshold:A().min(-96).max(0).optional(),hitPercent:A().int().min(1).max(100).default(60),samplingSeconds:A().int().min(1).max(300).default(10),confirmHits:A().int().min(1).max(20).optional(),confirmWindowSec:A().int().min(1).max(60).optional()}),m1=z([`enter`,`exit`,`any`]),h1=z([`raised`,`cleared`]),g1=F({ids:P(k().min(1)).min(1),match:z([`any`,`all`]).optional()}),_1=L(`kind`,[F({kind:B(`wait`),seconds:A().min(0).max(300)}),F({kind:B(`cap`),deviceId:A().int(),cap:k().min(1),method:k().min(1),args:R(k(),M()).optional()})]),v1=F({id:k().min(1),name:k().min(1).max(120),minDelaySec:A().int().min(0).max(86400).optional(),actions:P(_1).min(1)}),y1=F({name:k().min(1).max(120),minDelaySec:A().int().min(0).max(86400).optional(),actions:P(_1).min(1)}),b1=P(L(`kind`,[F({kind:B(`sequence`),sequenceId:k().min(1)}),F({kind:B(`do`),action:_1})])).max(4),x1=F({id:k().min(1).max(64),label:k().min(1).max(40),sequenceId:k().min(1),icon:x$.optional(),destructive:j().optional()}),S1=F({onActivation:b1.optional(),onDeactivation:b1.optional(),onTrigger:b1.optional(),onTriggerOff:b1.optional(),buttons:P(x1).max(8).optional()});F({name:k().min(1).max(120),enabled:j(),minDelaySec:A().int().min(0).max(86400).optional(),actions:P(_1).min(1)});var C1=F({deviceId:A().int(),states:P(k().min(1)).min(1)}),w1=F({sceneId:k().min(1),deviceId:A().int().optional(),requiredState:z([`matched`,`diverged`]),latched:j().optional()}),T1=F({deviceState:C1.optional(),scene:w1.optional(),devices:P(A()).optional(),devicesExclude:P(A()).min(1).optional(),classes:P(k().min(1)).optional(),classesExclude:P(k().min(1)).optional(),minConfidence:A().min(0).max(1).optional(),zones:g1.optional(),zonesExclude:P(k().min(1)).optional(),crossing:m1.optional(),labelEquals:P(k().min(1)).optional(),identities:P(k().min(1)).optional(),plates:d1.optional(),identitiesExclude:P(k().min(1)).optional(),minImportance:A().min(0).max(1).optional(),minDwellSeconds:A().min(0).optional(),source:z([`pipeline`,`onboard`,`sensor`,`audio`,`any`]).optional(),minLabelConfidence:A().min(0).max(1).optional(),eventTypeTokens:P(k().min(1)).optional(),sensorKinds:P(k().min(1)).optional(),sensorTransition:h1.optional(),packagePhase:z([`delivered`,`picked-up`,`both`]).optional(),systemEvent:a1.optional(),customZones:P(e1).optional(),occupancy:f1.optional(),audio:p1.optional()}),E1=F({targetId:k().min(1),params:R(k(),M()).optional()}),D1=z([`cropped`,`full`,`boxed`]),O1=z([`mosaic`,`each`]),k1=F({attach:z([`best`,`best-matching`,`keyFrame`,`none`]).default(`best`),frame:D1.optional(),zoneCrop:j().optional(),gif:j().optional(),clip:j().optional(),clipPreRollSec:A().int().min(0).max(30).optional(),clipPostRollSec:A().int().min(0).max(30).optional(),clipSpeed:A().min(1).max(8).optional(),profile:HQ.optional(),linkedCameras:O1.optional()}),A1=z([`shared`,`per-class`]),j1=F({cooldownSec:A().int().min(0).max(86400).default(60),scope:z([`rule`,`rule-device`]).default(`rule-device`),granularity:A1.optional()}),M1=1e3,N1=2e4,P1=8e3,F1=F({op:z([`>=`,`>`,`<=`,`<`,`==`]),count:A().int().min(0).max(1e3)}),I1=F({enabled:j().default(!1),profileId:k().optional(),prompt:k().max(1e3).optional(),expect:F1.optional(),timeoutMs:A().int().min(M1).max(N1).default(P1),onTimeout:z([`fire`,`suppress`]).default(`fire`),maxImagePx:A().int().min(64).max(2048).default(448)}),L1=F({name:k().min(1).max(200),enabled:j().default(!0),delivery:t1,conditions:T1.default({}),schedule:s1.optional(),systemEventDelivery:u1.optional(),targets:P(E1),targetUsers:P(k()).optional(),media:k1.default({attach:`best`}),throttle:j1.default({cooldownSec:60,scope:`rule-device`}),template:F({title:k().max(500).optional(),body:k().max(2e3).optional()}).optional(),priority:A().int().min(1).max(5).default(3),ownerUserId:k().optional(),snoozeAllowGlobal:j().optional(),snoozeOptions:P(A().int().min(1).max(o1)).max(4).optional(),actions:S1.optional(),confirm:I1.optional(),groupingSec:A().int().min(5).max(60).optional()}),R1=L1.partial().extend({disabledTargetIds:P(k()).optional(),enabled:j().optional(),conditions:T1.optional(),media:k1.optional(),throttle:j1.optional(),priority:A().int().min(1).max(5).optional()}),z1=z([`template`,`schedule`,`targetUsers`,`snoozeOptions`,`snoozeAllowGlobal`,`actions`,`confirm`,`groupingSec`,`waitForEnhancement`,`groupIdleSec`]),B1=F({ruleId:k(),patch:R1,clear:P(z1).optional()}),V1=L1.extend({id:k(),createdBy:k(),createdAt:A(),updatedAt:A(),disabledTargetIds:P(k()).default([])}),H1=z([`device-state`,`streams`,`battery`,`consumables`,`tanks`,`detection-blind`,`nodes`,`addons`,`addon-updates`,`updates`]),U1=F({id:H1,status:z([`read`,`unavailable`]),items:A().int().nonnegative(),reason:k().optional()}),W1=F({section:H1.optional(),title:k(),text:k(),count:A().int().nonnegative()}),G1=F({empty:j(),count:A().int().nonnegative(),text:k(),sections:P(U1),dropped:R(k(),A().int().nonnegative()),excludedGroups:P(k()),split:l1.optional(),rows:P(W1).optional()}),K1=F({recordId:k(),recordKind:z([`object-event`,`track`,`device-event`,`package-event`,`system-event`]),deviceId:A(),timestamp:A(),wouldFire:j(),failedCondition:k().optional(),className:k().optional(),label:k().optional()}),q1=z([`detection`,`sensor`,`occupancy`,`sound`,`device-events`,`system`,`alarm`,`mixed`]),J1=z([`detection`,`sensor`,`occupancy`,`sound`,`system`]),Y1=z([`rule`,`timelapse`,`summary`]),X1=z([`title`,`body`,`previewText`,`captionText`]),Z1=z([`subject`,`place`,`time`,`rule`,`occupancy`,`sound`,`sensor`,`system`,`digest`,`ai`]),Q1=F({name:k().regex(/^\w+$/),label:k(),description:k().optional(),example:k(),group:Z1,families:P(Y1).min(1),fields:P(X1).optional(),kinds:P(J1).optional(),deliveries:P(t1).optional(),systemEventKinds:P(n1).optional(),systemEventDeliveries:P(c1).optional(),dynamic:F({prefix:B(`count_`),from:B(`classes`)}).optional()}),$1=F({context:F({family:Y1,field:X1,kind:q1.optional(),delivery:t1.optional(),systemEventKinds:P(n1).optional(),systemEventDelivery:c1.optional()}),template:F({title:k().max(500).optional(),body:k().max(2e3).optional()})}),e0=F({title:k().nullable(),body:k().nullable(),unknown:P(k())}),t0=F({id:k(),group:z([`scope`,`class`,`zones`,`quality`,`label`,`schedule`,`device`,`package`,`occupancy`,`audio`,`system`]),label:k(),valueType:z([`deviceIdList`,`deviceIdExcludeList`,`stringList`,`number01`,`number`,`sourceSelect`,`zoneSelection`,`zoneIdList`,`schedule`,`plateMatcher`,`packagePhase`,`crossingSelect`,`sensorTransition`,`polygonDraw`,`occupancy`,`audio`,`deviceState`,`scene`,`systemEvent`]),operator:z([`in`,`notIn`,`anyOf`,`allOf`,`gte`,`fuzzyIn`,`withinSchedule`]),appliesTo:P(t1),phase:k(),description:k().optional(),options:P(F({value:k(),label:k(),hint:k().optional()})).readonly().optional()}),n0=z([`pending`,`sent`,`dead`]),r0=z([`object-event`,`track-end`,`device-event`,`package-event`,`system-event`]),i0=F({className:k(),label:k().optional(),confidence:A().optional(),zones:P(k()),timestamp:A(),systemEvent:F({kind:n1,subject:k(),title:k(),body:k(),data:R(k(),M())}).optional()}),a0=F({id:k(),ruleId:k(),ruleName:k(),delivery:t1,targetId:k(),deviceId:A(),recordKind:r0,recordId:k(),trackId:k().optional(),status:n0,attempts:A().int(),createdAt:A(),updatedAt:A(),error:k().optional(),subject:i0,artifactIds:P(k().min(1)).optional()}),o0=F({ruleId:k().optional(),deviceId:A().optional(),status:n0.optional(),since:A().optional(),until:A().optional(),limit:A().int().min(1).max(500).default(100)}),s0=F({runs:P(F({ruleId:k(),lastAt:A(),status:n0,deviceId:A()})),horizonMs:A().nonnegative().nullable()}),c0=z([`rule`,`device`,`all`]),l0=F({scope:c0,ruleId:k().optional(),deviceId:A().int().optional(),classes:P(k().min(1)).min(1).optional(),durationMinutes:A().int().min(1).max(o1),global:j().optional(),summary:j().optional()}),u0=F({id:k(),userId:k(),scope:c0,ruleId:k().optional(),deviceId:A().int().optional(),classes:P(k().min(1)).min(1).optional(),startedAt:A(),expiresAt:A(),global:j(),summary:j(),digestSentAt:A().optional()});F({snoozeId:k(),targetId:k(),ruleId:k(),ruleName:k(),deviceId:A().int(),count:A().int(),firstAt:A(),lastAt:A()});var d0=3600,f0=A().int().min(0).max(600),p0=A().int().min(0).max(d0),m0=e=>new Set(e.map(e=>e.mode)).size===e.length,h0=z([`rearmAfter`,`disableAfter`,`doNothing`]),g0=P(F({mode:Z$,exitDelaySec:f0.optional(),entryDelaySec:f0.optional(),triggeredDurationSec:p0.optional(),postTriggeredAction:h0.optional(),schedule:s1.optional(),notifyDuringEntryDelay:j().optional(),notifySensorRewatched:j().optional(),notifySensorIgnored:j().optional()})).max(8).refine(m0,{message:`modeDelays: at most one entry per arm mode`}),_0=P(F({mode:Z$,exitDelaySec:f0.nullable().optional(),entryDelaySec:f0.nullable().optional(),triggeredDurationSec:p0.nullable().optional(),postTriggeredAction:h0.nullable().optional(),schedule:s1.nullable().optional(),notifyDuringEntryDelay:j().nullable().optional(),notifySensorRewatched:j().nullable().optional(),notifySensorIgnored:j().nullable().optional()})).max(8).refine(m0,{message:`modeDelays: at most one edit per arm mode`}),v0=F({mode:Z$,deviceId:A().int().positive(),nonBlocking:j()}),y0=F({mode:Z$,deviceId:A().int().positive(),blocking:j()}),b0=F({mode:Z$,deviceId:A().int().positive(),secureOnArm:j()}),x0=F({mode:Z$,deviceIds:P(A().int()).max(200)}),S0=x0,C0=x0,w0=x0,T0=P(S0).max(8).refine(m0,{message:`nonBlocking: at most one list per arm mode`}),E0=P(C0).max(8).refine(m0,{message:`blocking: at most one list per arm mode`}),D0=P(w0).max(8).refine(m0,{message:`secureOnArmOff: at most one list per arm mode`}),O0=F({exitDelaySec:f0,entryDelaySec:f0,triggeredDurationSec:p0,postTriggeredAction:h0.optional(),announceArm:j().optional(),announceTargets:P(k().min(1)).max(16),nonBlocking:T0.default([]),blocking:E0.default([]),secureOnArmOff:D0.default([]),modeDelays:g0.default([])}),k0=F({id:k().min(1).max(64),name:k().min(1).max(64),isDefault:j()}),A0=F({activeId:k().min(1),items:P(k0).min(1)}),j0=F({name:k().min(1).max(64),cloneFromId:k().min(1).max(64).optional()}),M0=F({id:k().min(1).max(64),name:k().min(1).max(64)}),N0=F({id:k().min(1).max(64)}),P0=O0.extend({nonBlocking:T0,blocking:E0,secureOnArmOff:D0,modeDelays:_0,nonBlockingEdit:v0,blockingEdit:y0,secureOnArmEdit:b0}).partial().refine(e=>e.nonBlocking===void 0||e.nonBlockingEdit===void 0,{message:`nonBlocking and nonBlockingEdit are exclusive — send the whole lists or one edit`}).refine(e=>e.blocking===void 0||e.blockingEdit===void 0,{message:`blocking and blockingEdit are exclusive — send the whole lists or one edit`}).refine(e=>e.secureOnArmOff===void 0||e.secureOnArmEdit===void 0,{message:`secureOnArmOff and secureOnArmEdit are exclusive — send the whole lists or one edit`}),F0=z([`muted`,`detection-off`,`offline`]),I0=F({deviceId:A().int(),reason:F0}),L0=F({mode:Z$,ruleCount:A().int().min(0),allDevices:j(),deviceIds:P(A().int()),allDevicesExcept:P(A().int()).default([]),skippedDevices:P(I0).default([])}),R0=F({deviceId:A().int(),name:k(),state:k(),blocking:j()}),z0=F({deviceId:A().int(),name:k(),phase:z([`open`,`closed`])}),B0=F({mode:Z$,devices:P(R0),unknown:P(A().int())}),V0=F({state:X$,targetMode:Z$.nullable(),availableModes:P(Z$),openings:P(B0),exclusions:P(z0)}),H0=F({deviceId:A().int().nullable(),settings:O0,profiles:A0.optional(),coverage:P(L0),live:V0.optional()}),U0=z([`open`,`closed`,`unknown`,`not-opening`]),W0=F({deviceId:A().int().positive(),reading:U0,state:k().nullable(),unknownWhy:z([`read-failed`,`unknown-word`]).nullable(),online:j().nullable(),controllable:j().default(!1)}),G0=F({deviceIds:P(A().int().positive()).max(500)}),K0=F({sensors:P(W0),readAt:A().int().nonnegative()}),q0=F({deviceId:A().int().nonnegative().optional(),seconds:A().min(0).max(60),profile:HQ.optional(),ruleId:k(),ruleName:k(),reason:z([`window`,`occupancy`])}),J0=F({rulesLoaded:j(),asks:P(q0).readonly()});Q(F({}),F({rules:P(V1)}),{auth:`admin`}),Q(F({ruleId:k()}),F({rule:V1.nullable()}),{auth:`admin`}),Q(F({rule:L1}),F({rule:V1}),{kind:`mutation`,auth:`admin`,caller:`required`}),Q(B1,F({rule:V1}),{kind:`mutation`,auth:`admin`,caller:`required`}),Q(F({ruleId:k()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),Q(F({ruleId:k(),enabled:j()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),Q(F({}),F({sequences:P(v1)}),{auth:`admin`}),Q(F({sequenceId:k().min(1)}),F({sequence:v1.nullable()}),{auth:`admin`}),Q(F({sequence:y1}),F({sequence:v1}),{kind:`mutation`,auth:`admin`}),Q(F({sequenceId:k().min(1),sequence:y1}),F({sequence:v1}),{kind:`mutation`,auth:`admin`}),Q(F({sequenceId:k().min(1)}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),Q(F({}),J0,{auth:`admin`}),Q(F({}),F({mutedDeviceIds:P(A().int()).readonly()}),{auth:`admin`}),Q(F({deviceId:A().int(),muted:j()}),F({success:B(!0)}),{kind:`mutation`,auth:`admin`}),Q(F({rule:L1,lookbackMinutes:A().int().min(1).max(1440).default(60)}),F({results:P(K1)}),{kind:`mutation`,auth:`admin`}),Q(F({rule:L1}),G1,{kind:`mutation`,auth:`admin`,access:`view`}),Q(F({}),F({catalog:P(t0),taxonomy:q$.optional()})),Q(F({}),F({vars:P(Q1)})),Q($1,e0,{kind:`mutation`,access:`view`}),Q(F({filter:o0.default({limit:100})}),F({entries:P(a0)}),{auth:`admin`}),Q(F({}),s0,{auth:`admin`}),Q(F({artifactId:k().min(1)}),F({url:k().nullable()}),{auth:`admin`}),Q(F({}),F({snoozes:P(u0)}),{caller:`required`}),Q(F({snooze:l0}),F({snooze:u0}),{kind:`mutation`,caller:`required`}),Q(F({snoozeId:k()}),F({success:B(!0)}),{kind:`mutation`,caller:`required`}),Q(F({}),H0,{auth:`admin`}),Q(F({patch:P0}),H0,{kind:`mutation`,auth:`admin`}),Q(j0,H0,{kind:`mutation`,auth:`admin`}),Q(M0,H0,{kind:`mutation`,auth:`admin`}),Q(N0,H0,{kind:`mutation`,auth:`admin`}),Q(N0,H0,{kind:`mutation`,auth:`admin`}),Q(G0,K0,{auth:`admin`});var Y0={motion:`motion`,audio:`audio`,person:`person`,vehicle:`vehicle`,animal:`animal`,package:`package`,door:`door`,pir:`pir`,smoke:`smoke`,water:`water`,button:`button`,generic:`generic`,gas:`smoke`,vibration:`generic`,tamper:`generic`,presence:`person`,lock:`generic`,siren:`generic`,switch:`generic`,doorbell:`button`};function X0(e){return Y0[e]??`generic`}var Z0={contact:`contact`,motion:`motion-sensor`,smoke:`smoke`,flood:`flood`,gas:`gas`,"carbon-monoxide":`carbon-monoxide`,vibration:`vibration`,tamper:`tamper`,presence:`presence`,"enum-sensor":`enum-sensor`,"event-emitter":`device-event`,"lock-control":`lock`,cover:`cover`,switch:`switch`,button:`button`,doorbell:`doorbell`};function Q0(e,t){let n=G$[t];if(n===void 0)throw Error(`EVENT_KIND_BY_CAP: cap '${e}' maps to unknown taxonomy kind '${t}'`);return{...n,icon:X0(n.iconId)}}var $0=Object.freeze(Object.fromEntries(Object.entries(Z0).map(([e,t])=>[e,Q0(e,t)])));z([`queue-full`,`camera-backoff`,`sleeping`,`camera-refused`,`no-keyframe`,`decode-failed`,`no-catalog-row`,`unsupported`,`unknown-device`,`uid-missing`]),z([`deferred`,`final`]);var e2=F({id:k(),source:k(),kind:z([`motion`,`object`,`audio`,`native`]),timeRange:F({startMs:A(),endMs:A()}),labels:P(k()).max(3).optional(),thumbnail:k().optional(),stillAtMs:A().optional(),eventIds:P(k()).optional(),eventCount:A().int().nonnegative().optional(),holes:P(F({startMs:A(),endMs:A()})).optional(),thumbnailMint:k().optional(),thumbnailUnavailable:F({reason:z([`sleeping`,`camera-refused`,`no-keyframe`,`unsupported`])}).optional(),catalogAsOf:A().optional(),nativeTypes:P(k()).optional(),behaviours:P(k()).optional(),streams:F({sub:F({id:k(),bytes:A().optional()}).optional(),main:F({id:k(),bytes:A().optional()}).optional()}).optional(),supportSub:j().optional(),playable:j().optional(),unplayableReason:k().optional(),inProgress:j().optional()}),t2=F({playbackUrl:k(),format:z([`hls`,`mp4`]).optional(),served:HQ.optional(),playbackEndpoints:P(k()).optional(),token:k().optional()}),n2=z([`authorised`]),r2=F({base64:k(),contentType:k(),name:k(),bytes:A().int().nonnegative(),served:HQ,durationMs:A().positive().optional()}),i2=F({ticket:VQ,contentType:k(),name:k(),served:HQ,durationMs:A().positive().optional()}),a2=z([`opus`,`pcmu`,`none`]),o2=z([`not-requested`,`unsupported-ask`]),s2=F({url:k().min(1),expiresAtMs:A(),transport:B(`forward-only`),served:HQ,servedAudio:a2,audioReason:o2.optional()}),c2=F({transport:z([`stream`,`file`]),seek:z([`forward`,`free`]),stepBack:j(),scrub:j(),rates:P(A().positive()).min(1).readonly()}),l2=F({state:z([`ok`,`sleeping`,`unreachable`,`no-storage`,`index-empty`]),reason:k().optional(),catalogAsOf:A().optional()}),u2=F({source:k(),label:k(),addonId:k().optional(),availability:l2});a$.Camera,Q(F({deviceId:A(),since:A(),until:A(),limit:A().int().positive().optional(),provider:k().min(1)}),P(e2).readonly(),{kind:`query`,auth:`protected`}),Q(F({deviceId:A()}),P(u2).readonly(),{kind:`query`,auth:`protected`}),Q(F({deviceId:A(),clipId:k(),profile:HQ.optional()}),t2,{kind:`query`,auth:`protected`}),i$(F({deviceId:A(),clipId:k().min(1),provider:k().min(1),profile:HQ.optional(),maxBytes:A().int().positive().optional(),wake:n2.optional()}),r2,{kind:`query`,auth:`protected`}),i$(F({deviceId:A(),clipId:k().min(1),provider:k().min(1),profile:HQ.optional(),maxBytes:A().int().positive().optional(),wake:n2.optional()}),i2,{kind:`query`,auth:`protected`}),i$(F({deviceId:A(),clipId:k().min(1),provider:k().min(1),profile:HQ.optional(),audio:a2.optional()}),s2,{kind:`query`,auth:`protected`}),i$(F({deviceId:A(),provider:k().min(1)}),c2,{kind:`query`,auth:`protected`});var d2=F({addonId:k(),capabilities:P(k()).readonly(),status:k()}),f2=F({pid:A(),name:k(),state:k(),cpuPercent:A(),memoryRss:A(),uptimeSeconds:A(),services:P(d2).readonly(),groupId:k().optional()}),p2=F({id:k(),status:k(),cpuPercent:A(),memoryRss:A()}),m2=F({category:k(),total:A(),healthy:A(),addons:P(p2).readonly()}),h2=F({name:k(),version:k()}),g2=F({id:k(),name:k(),hostname:k(),platform:k(),arch:k(),cpuModel:k().nullable(),cpuCores:A(),memoryMB:A(),engines:P(k()).readonly(),isHub:j(),isOnline:j(),cpuPercent:A(),memoryPercent:A(),uptime:A(),lastSeen:k(),localIps:P(k()).readonly(),addons:P(F({id:k(),capabilities:P(k()).readonly(),status:k()})).readonly(),processes:P(f2).readonly(),categories:P(m2).readonly(),rootPackage:h2.nullable(),meshTransport:z([`tls`,`clear`]).optional(),capabilitiesRegistered:j().optional()}),_2=F({callerAddonId:k(),providerAddonId:k(),capName:k(),callsPerMin:A(),lastCallAtMs:A()}),v2=F({nodeId:k(),name:k(),version:k(),status:k(),synced:j()}),y2=F({hubVersion:k(),nodes:P(v2)}),b2=F({nodeId:k(),addonId:k()}),x2=F({id:k(),status:k(),version:k().optional(),packageName:k().optional()}),S2=F({success:j()}),C2=F({success:j(),reason:k().optional()}),w2=F({restarted:P(k()).readonly(),failed:P(k()).readonly()}),T2=F({nodeId:k(),name:k()}),E2=F({nodes:P(F({id:k(),name:k(),isHub:j(),isOnline:j()})).readonly(),complete:j()});Q(N(),P(g2).readonly(),{auth:`admin`}),Q(N(),E2,{auth:`admin`}),Q(b2,S2,{kind:`mutation`,auth:`admin`}),Q(b2,S2,{kind:`mutation`,auth:`admin`}),Q(b2,S2,{kind:`mutation`,auth:`admin`}),Q(F({nodeId:k(),processName:k()}),C2,{kind:`mutation`,auth:`admin`}),Q(F({nodeId:k()}),w2,{kind:`mutation`,auth:`admin`}),Q(F({nodeId:k()}),S2,{kind:`mutation`,auth:`admin`}),Q(F({nodeId:k(),name:k().min(1).max(64)}),T2,{kind:`mutation`,auth:`admin`}),Q(N(),R(k(),y2),{auth:`admin`}),Q(F({windowSeconds:A().int().positive().max(300).default(60)}),P(_2).readonly(),{auth:`admin`}),Q(F({nodeId:k()}),P(x2).readonly(),{auth:`admin`}),Q(F({nodeId:k(),level:k()}),S2,{kind:`mutation`,auth:`admin`}),Q(F({nodeId:k(),addonId:k(),queryName:k(),params:R(k(),M()).optional()}),M(),{kind:`mutation`,auth:`admin`});var D2=A().min(.25).max(32),O2=F({fromSec:A().nonnegative(),toSec:A().nonnegative()}).refine(e=>e.toSec>e.fromSec,{message:`dense range must have toSec > fromSec`}),k2=F({everyMs:A().int().positive(),ranges:P(O2).min(1).max(200)}),A2=F({everyMs:A().int().positive(),outputFps:A().int().min(1).max(60).optional(),dense:k2.optional()}).superRefine((e,t)=>{e.dense!==void 0&&e.dense.everyMs>=e.everyMs&&t.addIssue({code:bl.custom,message:`dense.everyMs must be strictly smaller than the base everyMs`,path:[`dense`,`everyMs`]})}),j2=F({speed:D2.optional(),timelapse:A2.optional(),includeAudio:j(),maxLifeMs:A().int().positive(),deleteAfterDownload:j(),title:k().max(200).optional(),notifyTargetIds:P(k().min(1)).max(20).optional()}).superRefine((e,t)=>{e.speed!==void 0&&e.timelapse!==void 0&&t.addIssue({code:bl.custom,message:`speed and timelapse are mutually exclusive`,path:[`timelapse`]})}),M2=z([`queued`,`rendering`,`ready`,`failed`,`expired`,`deleted`]),N2=L(`kind`,[F({kind:B(`footage`),deviceId:A(),profiles:P(k()).min(1),fromMs:A(),toMs:A()}),F({kind:B(`clip`),deviceId:A(),provider:k().min(1),source:k().min(1),sourceLabel:k().min(1),clipId:k().min(1),catalogWindow:F({sinceMs:A(),untilMs:A()}),profile:z([`high`,`mid`,`low`]),wake:n2.optional()})]),P2=F({id:k(),deviceId:A(),profile:k(),fromMs:A(),toMs:A(),subject:N2.optional(),options:j2,state:M2,progressPct:A().nullable(),fileBytes:A().nullable(),expiresAt:A(),deleteAfterDownload:j(),downloadedAt:A().nullable(),createdAt:A(),createdBy:k(),error:k().nullable()});z([`catalog-miss`,`catalog-unreachable`,`no-file-for-window`,`clip-in-progress`,`unsupported-option`,`sleeping`,`camera-refused`,`fetch-failed`,`too-large-to-transfer`,`wake-expired`]);var F2=F({url:k(),endpoints:P(k())}),I2=F({base64:k(),contentType:k(),name:k(),bytes:A().int().nonnegative()});function L2(e){return e.profiles!==void 0&&e.profiles.length>0?[...e.profiles]:typeof e.profile==`string`&&e.profile.length>0?[e.profile]:[]}Q(F({deviceId:A(),profile:k().optional(),profiles:P(k()).min(1).optional(),fromMs:A().optional(),toMs:A().optional(),subject:N2.optional(),options:j2}).superRefine((e,t)=>{if(e.subject?.kind===`clip`){e.subject.deviceId!==e.deviceId&&t.addIssue({code:bl.custom,message:`subject.deviceId (${e.subject.deviceId}) must equal deviceId (${e.deviceId}) — the top-level field is what per-device scope enforcement reads`,path:[`subject`,`deviceId`]}),(e.fromMs!==void 0||e.toMs!==void 0)&&t.addIssue({code:bl.custom,message:`a clip export asks for no time range: the camera chose the boundaries and they are read from the catalog row`,path:[`fromMs`]});return}e.subject?.kind===`footage`&&e.subject.deviceId!==e.deviceId&&t.addIssue({code:bl.custom,message:`subject.deviceId (${e.subject.deviceId}) must equal deviceId (${e.deviceId})`,path:[`subject`,`deviceId`]});let n=e.subject?.kind===`footage`?e.subject.fromMs:e.fromMs,r=e.subject?.kind===`footage`?e.subject.toMs:e.toMs;(typeof n!=`number`||typeof r!=`number`)&&t.addIssue({code:bl.custom,message:`a footage export needs fromMs and toMs`,path:[`fromMs`]}),(e.subject?.kind===`footage`?[...e.subject.profiles]:L2(e)).length<1&&t.addIssue({code:bl.custom,message:`pass profiles[] (min 1) or legacy profile`,path:[`profiles`]})}),P2,{kind:`mutation`,auth:`protected`}),Q(F({deviceId:A().optional()}),P(P2),{kind:`query`,auth:`protected`}),Q(F({exportId:k()}),P2,{kind:`query`,auth:`protected`}),Q(F({exportId:k()}),P2,{kind:`mutation`,auth:`protected`}),Q(F({exportId:k()}),P2,{kind:`mutation`,auth:`protected`}),Q(F({exportId:k()}),F2,{kind:`query`,auth:`protected`}),Q(F({exportId:k()}),I2,{kind:`query`,auth:`protected`});var R2={PCMU:20*Math.log10(4),PCMA:20*Math.log10(8)};function z2(e,t){return t+R2[e]}Math.round(z2(`PCMU`,-55));var B2={hitPercent:60,samplingSeconds:10};new Map(Object.entries({"device-online":`device-events`,"device-offline":`device-events`,"device-disabled":`device-events`,"device-enabled":`device-events`,"device-battery-low":`device-events`,"device-battery-normal":`device-events`,"device-consumable-low":`device-events`,"device-consumable-normal":`device-events`,"device-tank-low":`device-events`,"device-tank-full":`device-events`,"device-tank-normal":`device-events`,"stream-online":`device-events`,"stream-offline":`device-events`,"detection-blind":`device-events`,"recording-stalled":`device-events`,"recording-healthy":`device-events`,"recording-degraded":`device-events`,"node-online":`system`,"node-offline":`system`,"node-restarting":`system`,"node-updating":`system`,"node-inference-unavailable":`system`,"addon-crash-loop":`system`,"addon-update-available":`system`,"addon-updated":`system`,"server-update-available":`system`,"server-updated":`system`,"wrapper-update-available":`system`,"backup-completed":`system`,"export-completed":`system`,"storage-location-low":`system`,"storage-location-critical":`system`,"storage-location-ok":`system`,"alarm-triggered":`alarm`,"alarm-armed":`alarm`,"alarm-disarmed":`alarm`,"alarm-arming":`alarm`,"alarm-arm-refused":`alarm`,"alarm-pending":`alarm`,"alarm-rearmed":`alarm`,"alarm-sensor-bypass":`alarm`,"alarm-check-failed":`alarm`,"camera-online":null,"camera-offline":null,"camera-disabled":null,"camera-enabled":null}));var V2=[{id:`device-state`,family:`device-events`,label:`Device state`,kinds:[`device-offline`,`device-online`,`device-disabled`,`device-enabled`]},{id:`streams`,family:`device-events`,label:`Streams`,kinds:[`stream-offline`,`stream-online`]},{id:`battery`,family:`device-events`,label:`Battery`,kinds:[`device-battery-low`,`device-battery-normal`]},{id:`consumables`,family:`device-events`,label:`Consumables`,kinds:[`device-consumable-low`,`device-consumable-normal`]},{id:`tanks`,family:`device-events`,label:`Tanks`,kinds:[`device-tank-low`,`device-tank-full`,`device-tank-normal`]},{id:`detection-blind`,family:`device-events`,label:`Detecting nothing`,kinds:[`detection-blind`]},{id:`recording`,family:`device-events`,label:`Recording`,kinds:[`recording-stalled`,`recording-healthy`,`recording-degraded`]},{id:`nodes`,family:`system`,label:`Nodes`,kinds:[`node-offline`,`node-online`,`node-restarting`,`node-inference-unavailable`]},{id:`addons`,family:`system`,label:`Addons stopped`,kinds:[`addon-crash-loop`]},{id:`addon-updates`,family:`system`,label:`Addon updates`,kinds:[`addon-update-available`,`addon-updated`]},{id:`updates`,family:`system`,label:`Server & container updates`,kinds:[`server-update-available`,`node-updating`,`server-updated`,`wrapper-update-available`]},{id:`backups-exports`,family:`system`,label:`Backups & exports`,kinds:[`backup-completed`,`export-completed`]},{id:`storage`,family:`system`,label:`Storage locations`,kinds:[`storage-location-low`,`storage-location-critical`,`storage-location-ok`]},{id:`alarm`,family:`alarm`,label:`Alarm`,kinds:i1}];function H2(e){return V2.filter(t=>t.family===e).flatMap(e=>e.kinds)}B2.hitPercent,B2.samplingSeconds;var U2=Object.freeze(Object.fromEntries(Object.entries($0).flatMap(([e,t])=>{let n=n$[e];return n===void 0||t.category!==`sensor`?[]:[[t.kind,n]]})));Object.freeze(Object.keys(U2));var W2=[`body`],$=[`title`,`body`],G2=[`device-battery-low`,`device-battery-normal`],K2=[`device-consumable-low`,`device-consumable-normal`],q2=[`device-tank-low`,`device-tank-full`,`device-tank-normal`],J2=[`addon-update-available`,`server-update-available`,`wrapper-update-available`],Y2=[`addon-update-available`,`server-update-available`],X2=[`alarm-triggered`,`alarm-armed`,`alarm-disarmed`,`alarm-arming`,`alarm-arm-refused`,`alarm-pending`,`alarm-rearmed`,`alarm-sensor-bypass`,`alarm-check-failed`],Z2=[`alarm-triggered`],Q2=[`device-online`,`device-offline`,`device-disabled`,`device-enabled`,...G2,...K2,...q2,`stream-online`,`stream-offline`,`detection-blind`,`recording-stalled`,`recording-healthy`,`recording-degraded`,...X2],$2=[...H2(`device-events`),...H2(`system`)],e4=[{name:`summaryDevices`,label:`Summary: devices offline / switched off`,example:`Garage — offline since 07:12`,kinds:[`device-offline`,`device-online`,`device-disabled`,`device-enabled`]},{name:`summaryStreams`,label:`Summary: streams offline`,example:`Ingresso (high) — since 06:40`,kinds:[`stream-offline`,`stream-online`]},{name:`summaryBattery`,label:`Summary: low batteries`,example:`Sensore porta — 8 %`,kinds:G2},{name:`summaryConsumables`,label:`Summary: consumables`,example:`Robot — filter 10 %`,kinds:K2},{name:`summaryTanks`,label:`Summary: tanks`,example:`Robot — clean water low`,kinds:q2},{name:`summaryDetection`,label:`Summary: cameras detecting nothing`,example:`Ingresso — since 05:10`,kinds:[`detection-blind`]},{name:`summaryNodes`,label:`Summary: nodes`,example:`little-unraid — offline since 03:00`,kinds:[`node-offline`,`node-online`,`node-restarting`,`node-inference-unavailable`]},{name:`summaryAddons`,label:`Summary: addons stopped`,example:`hub — recorder stopped after repeated crashes`,kinds:[`addon-crash-loop`]},{name:`summaryAddonUpdates`,label:`Summary: addon updates`,example:`hub:
|
|
79
|
+
• @camstack/addon-recorder 1.2.3 → 1.2.4`,kinds:[`addon-update-available`,`addon-updated`]},{name:`summaryUpdates`,label:`Summary: server & container updates`,example:`server 1.2.377 → 1.2.378`,kinds:[`server-update-available`,`node-updating`,`server-updated`,`wrapper-update-available`]}],t4=[{name:`summaryText`,label:`Summary: every section`,description:`One block per section with something to report, one line per item.`,example:`Batterie scariche: Sensore porta — 8 %`,group:`system`,families:[`rule`],fields:[...$],kinds:[`system`],systemEventKinds:[...$2],systemEventDeliveries:[`summary`]},{name:`summaryCount`,label:`Summary: items reported`,example:`3`,group:`system`,families:[`rule`],fields:[...$],kinds:[`system`],systemEventKinds:[...$2],systemEventDeliveries:[`summary`]},{name:`summarySection`,label:`Summary: this section`,description:`The section a per-section summary row is about; on a summary sent as one message, every section it reports, comma-separated.`,example:`Batterie scariche`,group:`system`,families:[`rule`],fields:[...$],kinds:[`system`],systemEventKinds:[...$2],systemEventDeliveries:[`summary`]},...e4.map(e=>({name:e.name,label:e.label,example:e.example,group:`system`,families:[`rule`],fields:[...$],kinds:[`system`],systemEventKinds:[...e.kinds],systemEventDeliveries:[`summary`]}))];[[...Q2],([...$],[...Z2]),([...$],[...Z2]),([...$],[...Z2]),[...$],([...$],[...Z2]),([...$],[...Y2]),[...$],([...$],[...Z2]),([...$],[...Z2]),([...$],[...Z2]),[...$],[...$],[...$],[...$],[...$],[...$],[...$],[...$],[...W2],[...$],([...$],[...Q2]),([...$],[...Z2]),([...$],[...Q2]),([...$],[...G2,...K2]),([...$],[...K2]),([...$],[...q2]),[...$],([...$],[...J2]),([...$],[...J2]),[...$],[...$],[...$],[...$],[...$],[...$],[...$],[...$],[...$],[...$],([...$],[...J2]),([...$],[...Y2]),([...$],[...Y2]),([...$],[...J2]),([...$],[...J2]),([...$],[...Y2]),[...$],[...$],[...$],[...$],[...$],[...$],[...$],[...$],[...$],[...$],[...$],[...$],[...$],[...$],[...$],[...$],[...$],[...$],[...$],[...$],[...$],[...$],[...$],[...$],[...$],[...$],...t4],new Set(`disarmed.armed_home.armed_away.armed_night.armed_vacation.armed_custom_bypass.arming.disarming.pending.triggered.open.opening.closing.closed.stopped.locked.unlocked.locking.unlocking.jammed.on.off.home.not_home.matched.diverged.unknown.latched.live`.split(`.`));var n4=F({title:k().max(500).optional(),body:k().max(2e3).optional()}),r4=k().min(1).max(200),i4=P(A()).min(1),a4=A().int().min(2).max(3600),o4=A().int().min(1).max(60),s4=P(E1).min(1),c4=A().int().min(1).max(5),l4=A().min(.1).max(3600),u4=A().min(0).max(60),d4=k().max(200),f4=z([`image`,`gif`]),p4=P(k().min(1).max(40)).max(20),m4=F({name:r4,enabled:j().default(!0),deviceIds:i4,schedule:s1,cadenceSec:a4.default(15),framerate:o4.default(10),denseCadenceSec:l4.optional(),minDwellSec:u4.optional(),targets:s4,template:n4.optional(),previewText:d4.optional(),previewMode:f4.default(`image`),reportClasses:p4.optional(),priority:c4.default(3)});F({name:r4.optional(),enabled:j().optional(),deviceIds:i4.optional(),schedule:s1.optional(),cadenceSec:a4.optional(),framerate:o4.optional(),denseCadenceSec:l4.optional(),minDwellSec:u4.optional(),targets:s4.optional(),template:n4.nullable().optional(),previewText:d4.optional(),previewMode:f4.optional(),reportClasses:p4.optional(),priority:c4.optional()}),m4.extend({id:k(),ownerUserId:k().optional(),lastGeneratedAt:A().optional(),generatedByDevice:R(k(),A()).optional(),createdBy:k(),createdAt:A(),updatedAt:A()});var h4=class{constructor(){this.keyToValue=new Map,this.valueToKey=new Map}set(e,t){this.keyToValue.set(e,t),this.valueToKey.set(t,e)}getByKey(e){return this.keyToValue.get(e)}getByValue(e){return this.valueToKey.get(e)}clear(){this.keyToValue.clear(),this.valueToKey.clear()}},g4=class{constructor(e){this.generateIdentifier=e,this.kv=new h4}register(e,t){this.kv.getByValue(e)||(t||=this.generateIdentifier(e),this.kv.set(t,e))}clear(){this.kv.clear()}getIdentifier(e){return this.kv.getByValue(e)}getValue(e){return this.kv.getByKey(e)}},_4=class extends g4{constructor(){super(e=>e.name),this.classToAllowedProps=new Map}register(e,t){typeof t==`object`?(t.allowProps&&this.classToAllowedProps.set(e,t.allowProps),super.register(e,t.identifier)):super.register(e,t)}getAllowedProps(e){return this.classToAllowedProps.get(e)}};function v4(e){if(`values`in Object)return Object.values(e);let t=[];for(let n in e)e.hasOwnProperty(n)&&t.push(e[n]);return t}function y4(e,t){let n=v4(e);if(`find`in n)return n.find(t);let r=n;for(let e=0;e<r.length;e++){let n=r[e];if(t(n))return n}}function b4(e,t){Object.entries(e).forEach(([e,n])=>t(n,e))}function x4(e,t){return e.indexOf(t)!==-1}function S4(e,t){for(let n=0;n<e.length;n++){let r=e[n];if(t(r))return r}}var C4=class{constructor(){this.transfomers={}}register(e){this.transfomers[e.name]=e}findApplicable(e){return y4(this.transfomers,t=>t.isApplicable(e))}findByName(e){return this.transfomers[e]}},w4=e=>Object.prototype.toString.call(e).slice(8,-1),T4=e=>e===void 0,E4=e=>e===null,D4=e=>typeof e!=`object`||!e||e===Object.prototype?!1:Object.getPrototypeOf(e)===null?!0:Object.getPrototypeOf(e)===Object.prototype,O4=e=>D4(e)&&Object.keys(e).length===0,k4=e=>Array.isArray(e),A4=e=>typeof e==`string`,j4=e=>typeof e==`number`&&!isNaN(e),M4=e=>typeof e==`boolean`,N4=e=>e instanceof RegExp,P4=e=>e instanceof Map,F4=e=>e instanceof Set,I4=e=>w4(e)===`Symbol`,L4=e=>e instanceof Date&&!isNaN(e.valueOf()),R4=e=>e instanceof Error,z4=e=>typeof e==`number`&&isNaN(e),B4=e=>M4(e)||E4(e)||T4(e)||j4(e)||A4(e)||I4(e),V4=e=>typeof e==`bigint`,H4=e=>e===1/0||e===-1/0,U4=e=>ArrayBuffer.isView(e)&&!(e instanceof DataView),W4=e=>e instanceof URL,G4=e=>e.replace(/\\/g,`\\\\`).replace(/\./g,`\\.`),K4=e=>e.map(String).map(G4).join(`.`),q4=(e,t)=>{let n=[],r=``;for(let i=0;i<e.length;i++){let a=e.charAt(i);if(!t&&a===`\\`){let t=e.charAt(i+1);if(t===`\\`){r+=`\\`,i++;continue}else if(t!==`.`)throw Error(`invalid path`)}if(a===`\\`&&e.charAt(i+1)===`.`){r+=`.`,i++;continue}if(a===`.`){n.push(r),r=``;continue}r+=a}let i=r;return n.push(i),n};function J4(e,t,n,r){return{isApplicable:e,annotation:t,transform:n,untransform:r}}var Y4=[J4(T4,`undefined`,()=>null,()=>void 0),J4(V4,`bigint`,e=>e.toString(),e=>typeof BigInt<`u`?BigInt(e):(console.error(`Please add a BigInt polyfill.`),e)),J4(L4,`Date`,e=>e.toISOString(),e=>new Date(e)),J4(R4,`Error`,(e,t)=>{let n={name:e.name,message:e.message};return`cause`in e&&(n.cause=e.cause),t.allowedErrorProps.forEach(t=>{n[t]=e[t]}),n},(e,t)=>{let n=Error(e.message,{cause:e.cause});return n.name=e.name,n.stack=e.stack,t.allowedErrorProps.forEach(t=>{n[t]=e[t]}),n}),J4(N4,`regexp`,e=>``+e,e=>{let t=e.slice(1,e.lastIndexOf(`/`)),n=e.slice(e.lastIndexOf(`/`)+1);return new RegExp(t,n)}),J4(F4,`set`,e=>[...e.values()],e=>new Set(e)),J4(P4,`map`,e=>[...e.entries()],e=>new Map(e)),J4(e=>z4(e)||H4(e),`number`,e=>z4(e)?`NaN`:e>0?`Infinity`:`-Infinity`,Number),J4(e=>e===0&&1/e==-1/0,`number`,()=>`-0`,Number),J4(W4,`URL`,e=>e.toString(),e=>new URL(e))];function X4(e,t,n,r){return{isApplicable:e,annotation:t,transform:n,untransform:r}}var Z4=X4((e,t)=>I4(e)?!!t.symbolRegistry.getIdentifier(e):!1,(e,t)=>[`symbol`,t.symbolRegistry.getIdentifier(e)],e=>e.description,(e,t,n)=>{let r=n.symbolRegistry.getValue(t[1]);if(!r)throw Error(`Trying to deserialize unknown symbol`);return r}),Q4=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,Uint8ClampedArray].reduce((e,t)=>(e[t.name]=t,e),{}),$4=X4(U4,e=>[`typed-array`,e.constructor.name],e=>[...e],(e,t)=>{let n=Q4[t[1]];if(!n)throw Error(`Trying to deserialize unknown typed array`);return new n(e)});function e3(e,t){return e?.constructor?!!t.classRegistry.getIdentifier(e.constructor):!1}var t3=X4(e3,(e,t)=>[`class`,t.classRegistry.getIdentifier(e.constructor)],(e,t)=>{let n=t.classRegistry.getAllowedProps(e.constructor);if(!n)return{...e};let r={};return n.forEach(t=>{r[t]=e[t]}),r},(e,t,n)=>{let r=n.classRegistry.getValue(t[1]);if(!r)throw Error(`Trying to deserialize unknown class '${t[1]}' - check https://github.com/blitz-js/superjson/issues/116#issuecomment-773996564`);return Object.assign(Object.create(r.prototype),e)}),n3=X4((e,t)=>!!t.customTransformerRegistry.findApplicable(e),(e,t)=>[`custom`,t.customTransformerRegistry.findApplicable(e).name],(e,t)=>t.customTransformerRegistry.findApplicable(e).serialize(e),(e,t,n)=>{let r=n.customTransformerRegistry.findByName(t[1]);if(!r)throw Error(`Trying to deserialize unknown custom value`);return r.deserialize(e)}),r3=[t3,Z4,n3,$4],i3=(e,t)=>{let n=S4(r3,n=>n.isApplicable(e,t));if(n)return{value:n.transform(e,t),type:n.annotation(e,t)};let r=S4(Y4,n=>n.isApplicable(e,t));if(r)return{value:r.transform(e,t),type:r.annotation}},a3={};Y4.forEach(e=>{a3[e.annotation]=e});var o3=(e,t,n)=>{if(k4(t))switch(t[0]){case`symbol`:return Z4.untransform(e,t,n);case`class`:return t3.untransform(e,t,n);case`custom`:return n3.untransform(e,t,n);case`typed-array`:return $4.untransform(e,t,n);default:throw Error(`Unknown transformation: `+t)}else{let r=a3[t];if(!r)throw Error(`Unknown transformation: `+t);return r.untransform(e,n)}},s3=(e,t)=>{if(t>e.size)throw Error(`index out of bounds`);let n=e.keys();for(;t>0;)n.next(),t--;return n.next().value};function c3(e){if(x4(e,`__proto__`))throw Error(`__proto__ is not allowed as a property`);if(x4(e,`prototype`))throw Error(`prototype is not allowed as a property`);if(x4(e,`constructor`))throw Error(`constructor is not allowed as a property`)}var l3=(e,t)=>{c3(t);for(let n=0;n<t.length;n++){let r=t[n];if(F4(e))e=s3(e,+r);else if(P4(e)){let i=+r,a=+t[++n]==0?`key`:`value`,o=s3(e,i);switch(a){case`key`:e=o;break;case`value`:e=e.get(o);break}}else e=e[r]}return e},u3=(e,t,n)=>{if(c3(t),t.length===0)return n(e);let r=e;for(let e=0;e<t.length-1;e++){let n=t[e];if(k4(r)){let e=+n;r=r[e]}else if(D4(r))r=r[n];else if(F4(r)){let e=+n;r=s3(r,e)}else if(P4(r)){if(e===t.length-2)break;let i=+n,a=+t[++e]==0?`key`:`value`,o=s3(r,i);switch(a){case`key`:r=o;break;case`value`:r=r.get(o);break}}}let i=t[t.length-1];if(k4(r)?r[+i]=n(r[+i]):D4(r)&&(r[i]=n(r[i])),F4(r)){let e=s3(r,+i),t=n(e);e!==t&&(r.delete(e),r.add(t))}if(P4(r)){let e=+t[t.length-2],a=s3(r,e);switch(+i==0?`key`:`value`){case`key`:{let e=n(a);r.set(e,r.get(a)),e!==a&&r.delete(a);break}case`value`:r.set(a,n(r.get(a)));break}}return e},d3=e=>e<1;function f3(e,t,n,r=[]){if(!e)return;let i=d3(n);if(!k4(e)){b4(e,(e,a)=>f3(e,t,n,[...r,...q4(a,i)]));return}let[a,o]=e;o&&b4(o,(e,a)=>{f3(e,t,n,[...r,...q4(a,i)])}),t(a,r)}function p3(e,t,n,r){return f3(t,(t,n)=>{e=u3(e,n,e=>o3(e,t,r))},n),e}function m3(e,t,n){let r=d3(n);function i(t,n){let i=l3(e,q4(n,r));t.map(e=>q4(e,r)).forEach(t=>{e=u3(e,t,()=>i)})}if(k4(t)){let[n,a]=t;n.forEach(t=>{e=u3(e,q4(t,r),()=>e)}),a&&b4(a,i)}else b4(t,i);return e}var h3=(e,t)=>D4(e)||k4(e)||P4(e)||F4(e)||R4(e)||e3(e,t);function g3(e,t,n){let r=n.get(e);r?r.push(t):n.set(e,[t])}function _3(e,t){let n={},r;return e.forEach(e=>{if(e.length<=1)return;t||(e=e.map(e=>e.map(String)).sort((e,t)=>e.length-t.length));let[i,...a]=e;i.length===0?r=a.map(K4):n[K4(i)]=a.map(K4)}),r?O4(n)?[r]:[r,n]:O4(n)?void 0:n}var v3=(e,t,n,r,i=[],a=[],o=new Map)=>{let s=B4(e);if(!s){g3(e,i,t);let n=o.get(e);if(n)return r?{transformedValue:null}:n}if(!h3(e,n)){let t=i3(e,n),r=t?{transformedValue:t.value,annotations:[t.type]}:{transformedValue:e};return s||o.set(e,r),r}if(x4(a,e))return{transformedValue:null};let c=i3(e,n),l=c?.value??e,u=k4(l)?[]:{},d={};b4(l,(s,c)=>{if(c===`__proto__`||c===`constructor`||c===`prototype`)throw Error(`Detected property ${c}. This is a prototype pollution risk, please remove it from your object.`);let l=v3(s,t,n,r,[...i,c],[...a,e],o);u[c]=l.transformedValue,k4(l.annotations)?d[G4(c)]=l.annotations:D4(l.annotations)&&b4(l.annotations,(e,t)=>{d[G4(c)+`.`+t]=e})});let f=O4(d)?{transformedValue:u,annotations:c?[c.type]:void 0}:{transformedValue:u,annotations:c?[c.type,d]:d};return s||o.set(e,f),f};function y3(e){return Object.prototype.toString.call(e).slice(8,-1)}function b3(e){return y3(e)===`Array`}function x3(e){if(y3(e)!==`Object`)return!1;let t=Object.getPrototypeOf(e);return!!t&&t.constructor===Object&&t===Object.prototype}function S3(e,t,n,r,i){let a={}.propertyIsEnumerable.call(r,t)?`enumerable`:`nonenumerable`;a===`enumerable`&&(e[t]=n),i&&a===`nonenumerable`&&Object.defineProperty(e,t,{value:n,enumerable:!1,writable:!0,configurable:!0})}function C3(e,t={}){if(b3(e))return e.map(e=>C3(e,t));if(!x3(e))return e;let n=Object.getOwnPropertyNames(e),r=Object.getOwnPropertySymbols(e);return[...n,...r].reduce((n,r)=>{if(r===`__proto__`||b3(t.props)&&!t.props.includes(r))return n;let i=e[r];return S3(n,r,C3(i,t),e,t.nonenumerable),n},{})}var w3=class{constructor({dedupe:e=!1}={}){this.classRegistry=new _4,this.symbolRegistry=new g4(e=>e.description??``),this.customTransformerRegistry=new C4,this.allowedErrorProps=[],this.dedupe=e}serialize(e){let t=new Map,n=v3(e,t,this,this.dedupe),r={json:n.transformedValue};n.annotations&&(r.meta={...r.meta,values:n.annotations});let i=_3(t,this.dedupe);return i&&(r.meta={...r.meta,referentialEqualities:i}),r.meta&&(r.meta.v=1),r}deserialize(e,t){let{json:n,meta:r}=e,i=t?.inPlace?n:C3(n);return r?.values&&(i=p3(i,r.values,r.v??0,this)),r?.referentialEqualities&&(i=m3(i,r.referentialEqualities,r.v??0)),i}stringify(e){return JSON.stringify(this.serialize(e))}parse(e){return this.deserialize(JSON.parse(e),{inPlace:!0})}registerClass(e,t){this.classRegistry.register(e,t)}registerSymbol(e,t){this.symbolRegistry.register(e,t)}registerCustom(e,t){this.customTransformerRegistry.register({name:t,...e})}allowErrorProps(...e){this.allowedErrorProps.push(...e)}};w3.defaultInstance=new w3,w3.serialize=w3.defaultInstance.serialize.bind(w3.defaultInstance),w3.deserialize=w3.defaultInstance.deserialize.bind(w3.defaultInstance),w3.stringify=w3.defaultInstance.stringify.bind(w3.defaultInstance),w3.parse=w3.defaultInstance.parse.bind(w3.defaultInstance),w3.registerClass=w3.defaultInstance.registerClass.bind(w3.defaultInstance),w3.registerSymbol=w3.defaultInstance.registerSymbol.bind(w3.defaultInstance),w3.registerCustom=w3.defaultInstance.registerCustom.bind(w3.defaultInstance),w3.allowErrorProps=w3.defaultInstance.allowErrorProps.bind(w3.defaultInstance),w3.serialize,w3.deserialize,w3.stringify,w3.parse,w3.registerClass,w3.registerCustom,w3.registerSymbol,w3.allowErrorProps;var T3=function(e){return e.Motion=`motion`,e.Person=`person`,e.Vehicle=`vehicle`,e.Animal=`animal`,e.Audio=`audio`,e.Face=`face`,e.Plate=`plate`,e.Package=`package`,e.Doorbell=`doorbell`,e.Sensor=`sensor`,e}({}),E3=`animal.dog_cat.dog.cat.horse.sheep.cow.elephant.bear.zebra.giraffe.mouse.rabbit.deer.lion.tiger.bird.eagle.owl.pigeon.fish.whale.dolphin.snake.turtle.lizard`.split(`.`),D3=[`person`,`people`,`pedestrian`,`rider`,`driver`,`cyclist`,`skier`,`skateboarder`,`face`,`hand`,`head`,`body`],O3=[`vehicle`,`car`,`truck`,`bus`,`motorcycle`,`bicycle`,`van`,`ambulance`,`police_car`,`fire_truck`,`train`,`subway`,`tram`,`airplane`,`boat`,`ship`,`helicopter`],k3=`face.eyes.nose.mouth.ears.eyebrows.left_eye.right_eye.pupil.iris.eyelid.eye_corner.upper_lip.lower_lip.teeth.chin.cheek.forehead.jaw.glasses.sunglasses.facial_hair.beard.mustache.facial_landmark.facial_keypoint`.split(`.`),A3=[`plate`,`license_plate`,`front_plate`,`rear_plate`,`motorcycle_plate`,`temporary_plate`,`dealer_plate`,`licensePlate`,`plate_number`,`plate_character`,`plate_digit`,`plate_letter`,`plate_symbol`,`plate_region`,`plate_country_identifier`,`plate_frame`,`plate_bolt`,`plate_sticker`,`plate_validation_tag`,`damaged_plate`,`obscured_plate`,`dirty_plate`],j3=[`motion`,`movement`,`other`],M3=[`package`,`packet`],N3=[`audio`],P3=`speech.scream.babbling.yell.bellow.whoop.whispering.laughter.snicker.crying.cry.sigh.singing.choir.chant.mantra.child_singing.rapping.humming.groan.grunt.whistling.breathing.wheeze.snoring.gasp.pant.snort.cough.throat_clearing.sneeze.sniff.cheering.applause.chatter.crowd.children_playing.bark.yip.howl.bow-wow.growling.whimper_dog.purr.meow.hiss.caterwaul.pets.livestock.doorbell.ding-dong.door.slam.knock.alarm.telephone.music.dog.dogs`.split(`.`),F3=[`doorbell`,`ring`],I3=[`lock`,`binary`,`flood`,`entry`,`door`,`leak`,`door_open`,`flooded`,`entry_open`];({...E3.reduce((e,t)=>({...e,[t]:`animal`}),{}),...D3.reduce((e,t)=>({...e,[t]:`person`}),{}),...O3.reduce((e,t)=>({...e,[t]:`vehicle`}),{}),...j3.reduce((e,t)=>({...e,[t]:`motion`}),{}),...M3.reduce((e,t)=>({...e,[t]:`package`}),{}),...k3.reduce((e,t)=>({...e,[t]:`face`}),{}),...A3.reduce((e,t)=>({...e,[t]:`plate`}),{}),...N3.reduce((e,t)=>({...e,[t]:`audio`}),{}),...P3.reduce((e,t)=>({...e,[t]:`audio`}),{}),...F3.reduce((e,t)=>({...e,[t]:`doorbell`}),{}),...I3.reduce((e,t)=>({...e,[t]:`sensor`}),{})}),[...Object.values(T3).filter(e=>e!==`motion`)];var L3=class{constructor(){this.keyToValue=new Map,this.valueToKey=new Map}set(e,t){this.keyToValue.set(e,t),this.valueToKey.set(t,e)}getByKey(e){return this.keyToValue.get(e)}getByValue(e){return this.valueToKey.get(e)}clear(){this.keyToValue.clear(),this.valueToKey.clear()}},R3=class{constructor(e){this.generateIdentifier=e,this.kv=new L3}register(e,t){this.kv.getByValue(e)||(t||=this.generateIdentifier(e),this.kv.set(t,e))}clear(){this.kv.clear()}getIdentifier(e){return this.kv.getByValue(e)}getValue(e){return this.kv.getByKey(e)}},z3=class extends R3{constructor(){super(e=>e.name),this.classToAllowedProps=new Map}register(e,t){typeof t==`object`?(t.allowProps&&this.classToAllowedProps.set(e,t.allowProps),super.register(e,t.identifier)):super.register(e,t)}getAllowedProps(e){return this.classToAllowedProps.get(e)}};function B3(e){if(`values`in Object)return Object.values(e);let t=[];for(let n in e)e.hasOwnProperty(n)&&t.push(e[n]);return t}function V3(e,t){let n=B3(e);if(`find`in n)return n.find(t);let r=n;for(let e=0;e<r.length;e++){let n=r[e];if(t(n))return n}}function H3(e,t){Object.entries(e).forEach(([e,n])=>t(n,e))}function U3(e,t){return e.indexOf(t)!==-1}function W3(e,t){for(let n=0;n<e.length;n++){let r=e[n];if(t(r))return r}}var G3=class{constructor(){this.transfomers={}}register(e){this.transfomers[e.name]=e}findApplicable(e){return V3(this.transfomers,t=>t.isApplicable(e))}findByName(e){return this.transfomers[e]}},K3=e=>Object.prototype.toString.call(e).slice(8,-1),q3=e=>e===void 0,J3=e=>e===null,Y3=e=>typeof e!=`object`||!e||e===Object.prototype?!1:Object.getPrototypeOf(e)===null?!0:Object.getPrototypeOf(e)===Object.prototype,X3=e=>Y3(e)&&Object.keys(e).length===0,Z3=e=>Array.isArray(e),Q3=e=>typeof e==`string`,$3=e=>typeof e==`number`&&!isNaN(e),e6=e=>typeof e==`boolean`,t6=e=>e instanceof RegExp,n6=e=>e instanceof Map,r6=e=>e instanceof Set,i6=e=>K3(e)===`Symbol`,a6=e=>e instanceof Date&&!isNaN(e.valueOf()),o6=e=>e instanceof Error,s6=e=>typeof e==`number`&&isNaN(e),c6=e=>e6(e)||J3(e)||q3(e)||$3(e)||Q3(e)||i6(e),l6=e=>typeof e==`bigint`,u6=e=>e===1/0||e===-1/0,d6=e=>ArrayBuffer.isView(e)&&!(e instanceof DataView),f6=e=>e instanceof URL,p6=e=>e.replace(/\\/g,`\\\\`).replace(/\./g,`\\.`),m6=e=>e.map(String).map(p6).join(`.`),h6=(e,t)=>{let n=[],r=``;for(let i=0;i<e.length;i++){let a=e.charAt(i);if(!t&&a===`\\`){let t=e.charAt(i+1);if(t===`\\`){r+=`\\`,i++;continue}else if(t!==`.`)throw Error(`invalid path`)}if(a===`\\`&&e.charAt(i+1)===`.`){r+=`.`,i++;continue}if(a===`.`){n.push(r),r=``;continue}r+=a}let i=r;return n.push(i),n};function g6(e,t,n,r){return{isApplicable:e,annotation:t,transform:n,untransform:r}}var _6=[g6(q3,`undefined`,()=>null,()=>void 0),g6(l6,`bigint`,e=>e.toString(),e=>typeof BigInt<`u`?BigInt(e):(console.error(`Please add a BigInt polyfill.`),e)),g6(a6,`Date`,e=>e.toISOString(),e=>new Date(e)),g6(o6,`Error`,(e,t)=>{let n={name:e.name,message:e.message};return`cause`in e&&(n.cause=e.cause),t.allowedErrorProps.forEach(t=>{n[t]=e[t]}),n},(e,t)=>{let n=Error(e.message,{cause:e.cause});return n.name=e.name,n.stack=e.stack,t.allowedErrorProps.forEach(t=>{n[t]=e[t]}),n}),g6(t6,`regexp`,e=>``+e,e=>{let t=e.slice(1,e.lastIndexOf(`/`)),n=e.slice(e.lastIndexOf(`/`)+1);return new RegExp(t,n)}),g6(r6,`set`,e=>[...e.values()],e=>new Set(e)),g6(n6,`map`,e=>[...e.entries()],e=>new Map(e)),g6(e=>s6(e)||u6(e),`number`,e=>s6(e)?`NaN`:e>0?`Infinity`:`-Infinity`,Number),g6(e=>e===0&&1/e==-1/0,`number`,()=>`-0`,Number),g6(f6,`URL`,e=>e.toString(),e=>new URL(e))];function v6(e,t,n,r){return{isApplicable:e,annotation:t,transform:n,untransform:r}}var y6=v6((e,t)=>i6(e)?!!t.symbolRegistry.getIdentifier(e):!1,(e,t)=>[`symbol`,t.symbolRegistry.getIdentifier(e)],e=>e.description,(e,t,n)=>{let r=n.symbolRegistry.getValue(t[1]);if(!r)throw Error(`Trying to deserialize unknown symbol`);return r}),b6=[Int8Array,Uint8Array,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,Uint8ClampedArray].reduce((e,t)=>(e[t.name]=t,e),{}),x6=v6(d6,e=>[`typed-array`,e.constructor.name],e=>[...e],(e,t)=>{let n=b6[t[1]];if(!n)throw Error(`Trying to deserialize unknown typed array`);return new n(e)});function S6(e,t){return e?.constructor?!!t.classRegistry.getIdentifier(e.constructor):!1}var C6=v6(S6,(e,t)=>[`class`,t.classRegistry.getIdentifier(e.constructor)],(e,t)=>{let n=t.classRegistry.getAllowedProps(e.constructor);if(!n)return{...e};let r={};return n.forEach(t=>{r[t]=e[t]}),r},(e,t,n)=>{let r=n.classRegistry.getValue(t[1]);if(!r)throw Error(`Trying to deserialize unknown class '${t[1]}' - check https://github.com/blitz-js/superjson/issues/116#issuecomment-773996564`);return Object.assign(Object.create(r.prototype),e)}),w6=v6((e,t)=>!!t.customTransformerRegistry.findApplicable(e),(e,t)=>[`custom`,t.customTransformerRegistry.findApplicable(e).name],(e,t)=>t.customTransformerRegistry.findApplicable(e).serialize(e),(e,t,n)=>{let r=n.customTransformerRegistry.findByName(t[1]);if(!r)throw Error(`Trying to deserialize unknown custom value`);return r.deserialize(e)}),T6=[C6,y6,w6,x6],E6=(e,t)=>{let n=W3(T6,n=>n.isApplicable(e,t));if(n)return{value:n.transform(e,t),type:n.annotation(e,t)};let r=W3(_6,n=>n.isApplicable(e,t));if(r)return{value:r.transform(e,t),type:r.annotation}},D6={};_6.forEach(e=>{D6[e.annotation]=e});var O6=(e,t,n)=>{if(Z3(t))switch(t[0]){case`symbol`:return y6.untransform(e,t,n);case`class`:return C6.untransform(e,t,n);case`custom`:return w6.untransform(e,t,n);case`typed-array`:return x6.untransform(e,t,n);default:throw Error(`Unknown transformation: `+t)}else{let r=D6[t];if(!r)throw Error(`Unknown transformation: `+t);return r.untransform(e,n)}},k6=(e,t)=>{if(t>e.size)throw Error(`index out of bounds`);let n=e.keys();for(;t>0;)n.next(),t--;return n.next().value};function A6(e){if(U3(e,`__proto__`))throw Error(`__proto__ is not allowed as a property`);if(U3(e,`prototype`))throw Error(`prototype is not allowed as a property`);if(U3(e,`constructor`))throw Error(`constructor is not allowed as a property`)}var j6=(e,t)=>{A6(t);for(let n=0;n<t.length;n++){let r=t[n];if(r6(e))e=k6(e,+r);else if(n6(e)){let i=+r,a=+t[++n]==0?`key`:`value`,o=k6(e,i);switch(a){case`key`:e=o;break;case`value`:e=e.get(o);break}}else e=e[r]}return e},M6=(e,t,n)=>{if(A6(t),t.length===0)return n(e);let r=e;for(let e=0;e<t.length-1;e++){let n=t[e];if(Z3(r)){let e=+n;r=r[e]}else if(Y3(r))r=r[n];else if(r6(r)){let e=+n;r=k6(r,e)}else if(n6(r)){if(e===t.length-2)break;let i=+n,a=+t[++e]==0?`key`:`value`,o=k6(r,i);switch(a){case`key`:r=o;break;case`value`:r=r.get(o);break}}}let i=t[t.length-1];if(Z3(r)?r[+i]=n(r[+i]):Y3(r)&&(r[i]=n(r[i])),r6(r)){let e=k6(r,+i),t=n(e);e!==t&&(r.delete(e),r.add(t))}if(n6(r)){let e=+t[t.length-2],a=k6(r,e);switch(+i==0?`key`:`value`){case`key`:{let e=n(a);r.set(e,r.get(a)),e!==a&&r.delete(a);break}case`value`:r.set(a,n(r.get(a)));break}}return e},N6=e=>e<1;function P6(e,t,n,r=[]){if(!e)return;let i=N6(n);if(!Z3(e)){H3(e,(e,a)=>P6(e,t,n,[...r,...h6(a,i)]));return}let[a,o]=e;o&&H3(o,(e,a)=>{P6(e,t,n,[...r,...h6(a,i)])}),t(a,r)}function F6(e,t,n,r){return P6(t,(t,n)=>{e=M6(e,n,e=>O6(e,t,r))},n),e}function I6(e,t,n){let r=N6(n);function i(t,n){let i=j6(e,h6(n,r));t.map(e=>h6(e,r)).forEach(t=>{e=M6(e,t,()=>i)})}if(Z3(t)){let[n,a]=t;n.forEach(t=>{e=M6(e,h6(t,r),()=>e)}),a&&H3(a,i)}else H3(t,i);return e}var L6=(e,t)=>Y3(e)||Z3(e)||n6(e)||r6(e)||o6(e)||S6(e,t);function R6(e,t,n){let r=n.get(e);r?r.push(t):n.set(e,[t])}function z6(e,t){let n={},r;return e.forEach(e=>{if(e.length<=1)return;t||(e=e.map(e=>e.map(String)).sort((e,t)=>e.length-t.length));let[i,...a]=e;i.length===0?r=a.map(m6):n[m6(i)]=a.map(m6)}),r?X3(n)?[r]:[r,n]:X3(n)?void 0:n}var B6=(e,t,n,r,i=[],a=[],o=new Map)=>{let s=c6(e);if(!s){R6(e,i,t);let n=o.get(e);if(n)return r?{transformedValue:null}:n}if(!L6(e,n)){let t=E6(e,n),r=t?{transformedValue:t.value,annotations:[t.type]}:{transformedValue:e};return s||o.set(e,r),r}if(U3(a,e))return{transformedValue:null};let c=E6(e,n),l=c?.value??e,u=Z3(l)?[]:{},d={};H3(l,(s,c)=>{if(c===`__proto__`||c===`constructor`||c===`prototype`)throw Error(`Detected property ${c}. This is a prototype pollution risk, please remove it from your object.`);let l=B6(s,t,n,r,[...i,c],[...a,e],o);u[c]=l.transformedValue,Z3(l.annotations)?d[p6(c)]=l.annotations:Y3(l.annotations)&&H3(l.annotations,(e,t)=>{d[p6(c)+`.`+t]=e})});let f=X3(d)?{transformedValue:u,annotations:c?[c.type]:void 0}:{transformedValue:u,annotations:c?[c.type,d]:d};return s||o.set(e,f),f};function V6(e){return Object.prototype.toString.call(e).slice(8,-1)}function H6(e){return V6(e)===`Array`}function U6(e){if(V6(e)!==`Object`)return!1;let t=Object.getPrototypeOf(e);return!!t&&t.constructor===Object&&t===Object.prototype}function W6(e,t,n,r,i){let a={}.propertyIsEnumerable.call(r,t)?`enumerable`:`nonenumerable`;a===`enumerable`&&(e[t]=n),i&&a===`nonenumerable`&&Object.defineProperty(e,t,{value:n,enumerable:!1,writable:!0,configurable:!0})}function G6(e,t={}){if(H6(e))return e.map(e=>G6(e,t));if(!U6(e))return e;let n=Object.getOwnPropertyNames(e),r=Object.getOwnPropertySymbols(e);return[...n,...r].reduce((n,r)=>{if(r===`__proto__`||H6(t.props)&&!t.props.includes(r))return n;let i=e[r];return W6(n,r,G6(i,t),e,t.nonenumerable),n},{})}var K6=class{constructor({dedupe:e=!1}={}){this.classRegistry=new z3,this.symbolRegistry=new R3(e=>e.description??``),this.customTransformerRegistry=new G3,this.allowedErrorProps=[],this.dedupe=e}serialize(e){let t=new Map,n=B6(e,t,this,this.dedupe),r={json:n.transformedValue};n.annotations&&(r.meta={...r.meta,values:n.annotations});let i=z6(t,this.dedupe);return i&&(r.meta={...r.meta,referentialEqualities:i}),r.meta&&(r.meta.v=1),r}deserialize(e,t){let{json:n,meta:r}=e,i=t?.inPlace?n:G6(n);return r?.values&&(i=F6(i,r.values,r.v??0,this)),r?.referentialEqualities&&(i=I6(i,r.referentialEqualities,r.v??0)),i}stringify(e){return JSON.stringify(this.serialize(e))}parse(e){return this.deserialize(JSON.parse(e),{inPlace:!0})}registerClass(e,t){this.classRegistry.register(e,t)}registerSymbol(e,t){this.symbolRegistry.register(e,t)}registerCustom(e,t){this.customTransformerRegistry.register({name:t,...e})}allowErrorProps(...e){this.allowedErrorProps.push(...e)}};K6.defaultInstance=new K6,K6.serialize=K6.defaultInstance.serialize.bind(K6.defaultInstance),K6.deserialize=K6.defaultInstance.deserialize.bind(K6.defaultInstance),K6.stringify=K6.defaultInstance.stringify.bind(K6.defaultInstance),K6.parse=K6.defaultInstance.parse.bind(K6.defaultInstance),K6.registerClass=K6.defaultInstance.registerClass.bind(K6.defaultInstance),K6.registerSymbol=K6.defaultInstance.registerSymbol.bind(K6.defaultInstance),K6.registerCustom=K6.defaultInstance.registerCustom.bind(K6.defaultInstance),K6.allowErrorProps=K6.defaultInstance.allowErrorProps.bind(K6.defaultInstance),K6.serialize,K6.deserialize,K6.stringify,K6.parse,K6.registerClass,K6.registerCustom,K6.registerSymbol,K6.allowErrorProps,(0,d.createContext)(null),(0,d.createContext)(null),T.AddonStarted,T.AddonInstalled,T.AddonRestarted,T.AddonUpdated,T.AddonStopped,T.AddonUninstalled,T.AddonCrashed,T.AddonError,T.DetectionPhaseTransition,T.DetectionResult,T.DetectionEvent,T.DetectionCameraNative,T.ProviderMotion,T.MotionOnMotionChanged,T.MotionAnalysis,T.MotionZonesRaw,T.ProviderDetection,T.PipelineAudioInferenceResult,T.AgentOnline,T.AgentOffline,T.DeviceRegistered,T.DeviceUnregistered,T.DeviceStateChanged,T.EventEmitted;var q6=Object.freeze([...on()]),J6=Object.freeze([T.PipelineCameraMetricsSnapshot,T.PipelineRunnerLoadSnapshot,T.PipelineEngineMetricsSnapshot,T.PipelineInferenceResult,T.PipelineTrace,T.PipelineProgress,T.StreamBrokerMetricsSnapshot,T.MetricsNodeResourcesSnapshot,T.MetricsNodeProcessesSnapshot,T.ClusterTopologySnapshot,T.MotionAnalysis,T.MotionZonesRaw,T.DetectionResult,T.PipelineAudioInferenceResult,T.PlatformProbePhase,T.BenchmarkProgress,T.ModelDownloadProgress,T.ProviderMotion]),Y6=new Set(J6);Object.freeze(q6.filter(e=>!Y6.has(e))),Object.freeze([...new Set(xB.filter(e=>e.scope===`device`).map(e=>e.name))].toSorted());function X6({value:e,unit:t,onDelta:n}){return(0,K.jsxs)(`div`,{className:`flex h-8 w-full overflow-hidden rounded-lg border border-border bg-surface`,children:[(0,K.jsx)(`button`,{type:`button`,"aria-label":`Decrement`,className:`w-9 shrink-0 bg-surface-hover text-base text-foreground`,onClick:()=>n(-1),children:`−`}),(0,K.jsxs)(`span`,{className:`flex flex-1 items-center justify-center gap-0.5 border-x border-border/60 text-sm`,children:[e,t?(0,K.jsx)(`span`,{"data-unit":!0,className:`text-[11px] text-foreground-subtle`,children:t}):null]}),(0,K.jsx)(`button`,{type:`button`,"aria-label":`Increment`,className:`w-9 shrink-0 bg-surface-hover text-base text-foreground`,onClick:()=>n(1),children:`+`})]})}function Z6({on:e,targetLabel:t,onConfirm:n}){let r=(0,d.useRef)(null),i=(0,d.useRef)(!1);return(0,K.jsxs)(`div`,{className:Z(`relative h-12 w-full rounded-full border flex items-center`,e?`bg-emerald-50 border-emerald-200 pl-4`:`bg-amber-50 border-amber-200 justify-end pr-4`),children:[(0,K.jsx)(`span`,{className:`text-xs font-semibold opacity-60`,children:t}),(0,K.jsx)(`span`,{"data-testid":`slide-thumb`,className:`absolute top-1 left-1 h-10 w-14 rounded-[19px] bg-surface shadow flex items-center justify-center`,onPointerDown:e=>{e.currentTarget.setPointerCapture?.(e.pointerId),r.current=e.clientX,i.current=!1},onPointerMove:e=>{r.current!==null&&Math.abs(e.clientX-r.current)>40&&(i.current=!0)},onPointerUp:()=>{i.current&&n(),i.current=!1,r.current=null},onPointerCancel:()=>{i.current=!1,r.current=null}})]})}var Q6=2,$6=270,e8=315;function t8(e){let t=(e-135+360)%360;return t>$6?+(t<=e8):t/$6}function n8({fraction:e,color:t,knobTopPx:n,onDragFraction:r}){let i=-135+e*270,a=(0,d.useRef)(null),[o,s]=(0,d.useState)(!1),c=r!==void 0,l=n??Q6,u=e=>{r!==void 0&&(e.preventDefault(),e.stopPropagation(),e.currentTarget.setPointerCapture?.(e.pointerId),s(!0))},f=e=>{if(r===void 0||!o)return;let t=a.current;if(t===null)return;let n=t.getBoundingClientRect(),i=n.left+n.width/2,s=n.top+n.height/2;r(t8(Math.atan2(e.clientY-s,e.clientX-i)*180/Math.PI))},p=e=>{r!==void 0&&(e.currentTarget.releasePointerCapture?.(e.pointerId),s(!1))};return(0,K.jsx)(`div`,{ref:a,className:`absolute inset-0`,style:{transform:`rotate(${i}deg)`},children:(0,K.jsx)(`div`,{className:Z(`absolute left-1/2 h-5 w-5 -translate-x-1/2 rounded-full bg-white shadow`,c&&(o?`cursor-grabbing`:`cursor-grab`)),style:{top:l,border:`3px solid ${t}`},...c?{onPointerDown:u,onPointerMove:f,onPointerUp:p,onPointerCancel:p}:{}})})}function r8({fraction:e,color:t}){return(0,K.jsxs)(`div`,{className:`relative h-2 w-full rounded-full bg-border`,children:[(0,K.jsx)(`div`,{className:`absolute left-0 top-0 h-2 rounded-full`,style:{width:`${e*100}%`,background:t??`var(--color-primary)`}}),(0,K.jsx)(`div`,{className:`absolute -top-1 h-4 w-4 rounded-full bg-white shadow`,style:{left:`calc(${e*100}% - 8px)`}})]})}var i8=150,a8=64,o8=i8/2,s8=2*Math.PI*a8,c8=270/360*s8;function l8({fraction:e,color:t,children:n,onDragFraction:r}){let i=Math.min(1,Math.max(0,e)),a=i8/2,o=i8/2,s=s8-c8,c=i*c8;return(0,K.jsxs)(`div`,{className:`relative`,style:{width:i8,height:i8},children:[(0,K.jsxs)(`svg`,{width:i8,height:i8,viewBox:`0 0 ${i8} ${i8}`,"aria-hidden":`true`,className:`absolute inset-0`,style:{transform:`rotate(135deg)`},children:[(0,K.jsx)(`circle`,{cx:a,cy:o,r:a8,fill:`none`,stroke:`var(--color-border)`,strokeWidth:11,strokeDasharray:`${c8} ${s}`,strokeLinecap:`round`}),(0,K.jsx)(`circle`,{cx:a,cy:o,r:a8,fill:`none`,stroke:t,strokeWidth:11,strokeDasharray:`${c} ${s8-c}`,strokeLinecap:`round`})]}),(0,K.jsx)(`div`,{"data-testid":`arc-knob`,children:(0,K.jsx)(n8,{fraction:i,color:t,knobTopPx:o8-a8-10,...r===void 0?{}:{onDragFraction:r}})}),(0,K.jsx)(`div`,{className:`absolute inset-0 flex flex-col items-center justify-center gap-0.5 pointer-events-none`,children:n})]})}function u8({on:e,busy:t,onToggle:n}){let r={transform:e?`translateX(30px)`:`translateX(3px)`};return(0,K.jsx)(`button`,{type:`button`,"aria-pressed":e,title:e?`Turn off`:`Turn on`,disabled:t,onClick:e=>{e.stopPropagation(),n()},className:Z(`relative inline-flex h-8 w-16 items-center rounded-full border transition-colors flex-shrink-0`,e?`bg-success/30 border-success/50`:`bg-surface-hover border-border`,t&&`opacity-60 cursor-not-allowed`),children:(0,K.jsx)(`span`,{className:Z(`absolute h-6 w-6 rounded-full transition-all`,e?`bg-success`:`bg-foreground-subtle`),style:r})})}function d8({trpc:e,deviceId:t}){let n=HX(e,t),r=n===null?void 0:n.button;if(r===void 0)return null;let i=()=>{r.press({deviceId:t})};return(0,K.jsxs)(`button`,{type:`button`,"aria-label":`Press`,title:`Press`,onClick:e=>{e.stopPropagation(),i()},className:Z(`inline-flex h-5 items-center gap-1 rounded px-1.5 text-xs`,`bg-primary text-primary-foreground hover:bg-primary/90 transition-colors`),children:[(0,K.jsx)(tt,{className:`h-3 w-3`}),(0,K.jsx)(`span`,{children:`Press`})]})}function f8({trpc:e,deviceId:t}){let n=HX(e,t),r=n===null?void 0:n.button;return r===void 0?null:(0,K.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-4 rounded-lg border border-border bg-surface p-6`,children:[(0,K.jsx)(`button`,{type:`button`,"aria-label":`Press button`,onClick:()=>{r.press({deviceId:t})},className:Z(`inline-flex h-14 w-14 items-center justify-center rounded-full`,`bg-primary text-primary-foreground hover:bg-primary/90 transition-colors`,`shadow-md`),children:(0,K.jsx)(tt,{className:`h-6 w-6`})}),(0,K.jsx)(`span`,{className:`text-sm font-medium text-foreground`,children:`Press`})]})}var p8=4e3;function m8(e){if(e!==void 0)return typeof e==`object`&&e&&`lastChangedAt`in e&&typeof e.lastChangedAt==`number`?e.lastChangedAt:e}function h8(e,t){let n=t?.enabled!==!1,r=t?.timeoutMs??p8,[i,a]=(0,d.useState)(void 0),o=(0,d.useRef)(void 0),s=(0,d.useRef)(void 0),c=(0,d.useRef)(!1),l=(0,d.useRef)(void 0),u=(0,d.useCallback)(()=>{l.current!==void 0&&(clearTimeout(l.current),l.current=void 0),o.current=void 0,c.current=!1,s.current=void 0,a(void 0)},[]);(0,d.useEffect)(()=>{if(!n||!c.current)return;let t=m8(e),r=s.current;t!==void 0&&t!==r&&u()}),(0,d.useEffect)(()=>()=>{l.current!==void 0&&clearTimeout(l.current)},[]);let f=(0,d.useCallback)(t=>{if(!n)return;l.current!==void 0&&(clearTimeout(l.current),l.current=void 0);let i=o.current??e;if(i!==void 0){let e={...i,...t};o.current=e,a(e)}s.current=m8(e),c.current=!0,l.current=setTimeout(u,r)},[n,e,u,r]);return n?{display:i===void 0?e:i,applyOptimistic:f,rollback:u}:{display:e,applyOptimistic:()=>{},rollback:()=>{}}}function g8(e){return e instanceof Error?e.message:String(e)}function _8({trpc:e,deviceId:t,layout:n,optimistic:r,features:i}){let{cap:a,slice:o,available:s}=KX({trpc:e,deviceId:t,cap:e=>e.lockControl,slice:e=>e.state.lockControl}),{display:c,applyOptimistic:l}=h8(o,{enabled:r??!0}),[u,f]=(0,d.useState)(null),[p,m]=(0,d.useState)(!1),[h,g]=(0,d.useState)(null);if(c===void 0)return null;let _=c.state===`locked`||c.state===`locking`,v=!s||c.state===`jammed`,y=i?.includes(uu.LockOpen)===!0,b=n===`compact`,x=()=>{l({state:`locking`}),a?.lock({})},ee=()=>{l({state:`unlocking`}),a?.unlock({})},te=()=>{a?.open({})},S=()=>{if(!v){if(!_){x();return}if(b){g(null),f(`unlock`);return}ee()}},ne=()=>{if(!v){if(b){g(null),f(`open`);return}te()}},re=()=>{p||f(null)},ie=async()=>{if(!(p||u===null)){g(null),m(!0);try{u===`unlock`?(l({state:`unlocking`}),await a?.unlock({})):await a?.open({}),f(null)}catch(e){g(g8(e))}finally{m(!1)}}},ae=_?`Unlock`:`Lock`,oe=u===`open`?`Open door?`:`Unlock device?`,se=u===`open`?`This will release the latch and open the door.`:`This will unlock the device.`,ce=u===`open`?`Confirm open`:`Confirm unlock`,le=u===`open`?(0,K.jsx)(Se,{className:`h-4 w-4 text-amber-400`}):(0,K.jsx)(Ge,{className:`h-4 w-4 text-amber-400`});return(0,K.jsxs)(`div`,{className:Z(`inline-flex items-center`,n===`full`?`gap-2`:`gap-1`),children:[(0,K.jsxs)(`button`,{type:`button`,"aria-label":ae,title:c.state===`jammed`?`Jammed`:ae,disabled:v,onClick:e=>{e.stopPropagation(),S()},className:Z(`inline-flex items-center justify-center rounded transition-colors`,n===`full`?`h-7 gap-1.5 px-2 text-xs`:`h-5 w-5`,_?`text-success`:`text-warning`,v&&`opacity-40 cursor-not-allowed`,`hover:bg-surface-hover`),children:[_?(0,K.jsx)(Ke,{className:`h-3.5 w-3.5`}):(0,K.jsx)(Ge,{className:`h-3.5 w-3.5`}),n===`full`&&(0,K.jsx)(`span`,{children:c.state})]}),y&&(0,K.jsxs)(`button`,{type:`button`,"aria-label":`Open door`,title:`Open door`,disabled:v,onClick:e=>{e.stopPropagation(),ne()},className:Z(`inline-flex items-center justify-center rounded transition-colors`,n===`full`?`h-7 gap-1.5 px-2 text-xs`:`h-5 w-5`,`text-foreground-muted`,v&&`opacity-40 cursor-not-allowed`,`hover:bg-surface-hover`),children:[(0,K.jsx)(Se,{className:`h-3.5 w-3.5`}),n===`full`&&(0,K.jsx)(`span`,{children:`Open`})]}),b&&(0,K.jsx)(iZ,{open:u!==null,onOpenChange:e=>{e||re()},children:(0,K.jsxs)(oZ,{width:`sm`,onClick:e=>e.stopPropagation(),children:[(0,K.jsxs)(sZ,{children:[(0,K.jsxs)(lZ,{className:`flex items-center gap-2`,children:[le,oe]}),(0,K.jsx)(uZ,{children:se})]}),h!==null&&(0,K.jsx)(`div`,{className:`mt-2 px-3 py-2 rounded border border-danger/40 bg-danger/10 text-xs text-danger`,children:h}),(0,K.jsxs)(cZ,{children:[(0,K.jsx)(JX,{type:`button`,variant:`ghost`,size:`sm`,disabled:p,onClick:()=>re(),children:`Cancel`}),(0,K.jsxs)(JX,{type:`button`,variant:`danger`,size:`sm`,"aria-label":ce,disabled:p,onClick:()=>{ie()},children:[p&&(0,K.jsx)(We,{className:`h-3.5 w-3.5 animate-spin`}),ce]})]})]})})]})}function v8({trpc:e,deviceId:t,optimistic:n}){let{cap:r,slice:i,available:a}=KX({trpc:e,deviceId:t,cap:e=>e.switch,slice:e=>e.state.switch}),{display:o,applyOptimistic:s}=h8(i,{enabled:n??!0}),[c,l]=(0,d.useState)(!1);if(o===void 0)return null;let u=o.on===!0,f=c||!a,p={transform:u?`translateX(14px)`:`translateX(2px)`},m=async()=>{if(f||!r)return;let e=!u;s({on:e}),l(!0);try{await r.setState({on:e})}finally{l(!1)}};return(0,K.jsx)(`button`,{type:`button`,"aria-pressed":u,title:u?`Turn off`:`Turn on`,disabled:f,onClick:e=>{e.stopPropagation(),m()},className:Z(`relative inline-flex h-4 w-7 items-center rounded-full border transition-colors flex-shrink-0`,u?`bg-success/30 border-success/50`:`bg-surface-hover border-border`,f&&`opacity-60`),children:(0,K.jsx)(`span`,{className:Z(`absolute h-3 w-3 rounded-full transition-all`,u?`bg-success`:`bg-foreground-subtle`),style:p})})}function y8({trpc:e,deviceId:t,layout:n,optimistic:r}){let{cap:i,slice:a,available:o}=KX({trpc:e,deviceId:t,cap:e=>e.brightness,slice:e=>e.state.brightness}),{display:s,applyOptimistic:c}=h8(a,{enabled:r??!0});if(s===void 0)return null;let l=!o;return(0,K.jsxs)(`label`,{className:Z(`flex items-center gap-2 text-xs text-foreground-subtle`,n===`compact`&&`min-w-[140px]`),children:[(0,K.jsx)(`input`,{"aria-label":`Brightness`,type:`range`,min:0,max:100,step:1,value:s.percentage,disabled:l,onChange:e=>{let t=Number(e.target.value);c({percentage:t}),l||i?.setBrightness({percentage:t})}}),(0,K.jsxs)(`span`,{className:`tabular-nums w-8 text-right`,children:[s.percentage,`%`]})]})}function b8({trpc:e,deviceId:t,features:n,layout:r,optimistic:i}){let{cap:a,slice:o,available:s}=KX({trpc:e,deviceId:t,cap:e=>e.fanControl,slice:e=>e.state.fanControl}),{display:c,applyOptimistic:l}=h8(o,{enabled:i??!0});if(c===void 0)return null;let u=!s,d=n??[],f=d.includes(`fan-speed`),p=d.includes(`fan-preset`),m=o?.percentageStep!=null&&o.percentageStep>0?o.percentageStep:1;return(0,K.jsxs)(`div`,{className:Z(`inline-flex items-center gap-2`,r===`full`&&`flex-col items-stretch`),children:[f&&(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,K.jsx)(`input`,{"aria-label":`Fan speed`,type:`range`,min:0,max:100,step:m,value:c.percentage??0,disabled:u,onChange:e=>{let t=Number(e.target.value),n=Math.min(100,Math.max(0,Math.round(t/m)*m));l({percentage:n}),u||a?.setPercentage({percentage:n})}}),(0,K.jsxs)(`span`,{className:`tabular-nums w-8 text-right`,children:[c.percentage??`—`,`%`]})]}),p&&c.availablePresets.length>0&&(0,K.jsx)(`div`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:(0,K.jsxs)(`select`,{"aria-label":`Fan preset`,value:c.preset,disabled:u,onChange:e=>{let t=e.target.value;!u&&t&&(l({preset:t}),a?.setPreset({preset:t}))},className:`bg-surface border border-border rounded px-1 py-0.5`,children:[(0,K.jsx)(`option`,{value:``,disabled:!0,children:`—`}),c.availablePresets.map(e=>(0,K.jsx)(`option`,{value:e,children:e},e))]})})]})}var x8={heat:`border-amber-400 bg-amber-50 dark:bg-amber-950`,cool:`border-blue-400 bg-blue-50 dark:bg-blue-950`,auto:`border-purple-400 bg-purple-50 dark:bg-purple-950`,heat_cool:`border-fuchsia-400 bg-fuchsia-50 dark:bg-fuchsia-950`,fan_only:`border-slate-400 bg-slate-50 dark:bg-slate-950`,dry:`border-cyan-400 bg-cyan-50 dark:bg-cyan-950`,off:`border-zinc-300 bg-zinc-50 dark:bg-zinc-900`},S8={heat:`text-amber-600 dark:text-amber-400`,cool:`text-blue-600 dark:text-blue-400`,auto:`text-purple-600 dark:text-purple-400`,heat_cool:`text-fuchsia-600 dark:text-fuchsia-400`,fan_only:`text-slate-600 dark:text-slate-400`,dry:`text-cyan-600 dark:text-cyan-400`,off:`text-foreground`},C8={heat:`bg-amber-400 text-amber-950`,cool:`bg-blue-400 text-blue-950`,auto:`bg-purple-400 text-purple-950`,heat_cool:`bg-fuchsia-400 text-fuchsia-950`,fan_only:`bg-slate-400 text-slate-950`,dry:`bg-cyan-400 text-cyan-950`,off:`bg-zinc-300 text-zinc-700`};function w8({trpc:e,deviceId:t,features:n,layout:r,optimistic:i}){let{cap:a,slice:o,available:s}=KX({trpc:e,deviceId:t,cap:e=>e.climateControl,slice:e=>e.state.climateControl}),{display:c,applyOptimistic:l}=h8(o,{enabled:i??!0});if(a===void 0||c===void 0)return null;let u=!s;if(r===`compact`)return(0,K.jsxs)(`div`,{"data-mode":c.mode,className:`inline-flex items-center gap-1`,children:[(0,K.jsx)(`span`,{className:Z(`text-xs tabular-nums font-medium`,S8[c.mode]),children:c.target===null?c.currentTemp===null?null:(0,K.jsxs)(`span`,{className:`text-foreground-subtle`,children:[c.currentTemp,`°`]}):(0,K.jsxs)(K.Fragment,{children:[c.target,`°`,c.currentTemp!==null&&(0,K.jsxs)(`span`,{className:`text-foreground-subtle font-normal`,children:[` `,`(`,c.currentTemp,`°)`]})]})}),c.target!==null&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`button`,{type:`button`,"aria-label":`Decrease target`,disabled:u,onClick:e=>{if(e.stopPropagation(),!u&&c.target!==null){let e=c.target-1;l({target:e}),a.setTarget({target:e})}},className:Z(`inline-flex h-5 w-5 items-center justify-center rounded text-foreground-subtle hover:text-foreground hover:bg-surface-hover transition-colors text-xs`,u&&`opacity-40 cursor-not-allowed`),children:`−`}),(0,K.jsx)(`button`,{type:`button`,"aria-label":`Increase target`,disabled:u,onClick:e=>{if(e.stopPropagation(),!u&&c.target!==null){let e=c.target+1;l({target:e}),a.setTarget({target:e})}},className:Z(`inline-flex h-5 w-5 items-center justify-center rounded text-foreground-subtle hover:text-foreground hover:bg-surface-hover transition-colors text-xs`,u&&`opacity-40 cursor-not-allowed`),children:`+`})]}),(0,K.jsx)(`select`,{"aria-label":`Mode`,value:c.mode,disabled:u,onChange:e=>{e.stopPropagation();let t=e.target.value;u||(l({mode:t}),a.setMode({mode:t}))},className:Z(`bg-transparent px-0.5 text-xs text-foreground-subtle hover:text-foreground cursor-pointer`,u&&`opacity-40 cursor-not-allowed`),children:c.availableModes.map(e=>(0,K.jsx)(`option`,{value:e,children:e},e))})]});let d=c.mode===`heat_cool`||c.targetLow!==null&&c.targetHigh!==null,f=!d&&c.target!==null;return(0,K.jsxs)(`div`,{"data-mode":c.mode,className:Z(`inline-flex items-center gap-2 rounded border px-2 py-1 transition-colors`,x8[c.mode],`flex-col items-stretch gap-3`),children:[(0,K.jsxs)(`div`,{className:`inline-flex items-center gap-1 text-xs tabular-nums`,children:[c.currentTemp!==null&&(0,K.jsxs)(`span`,{className:`text-foreground-subtle`,children:[c.currentTemp,`°`]}),f&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`span`,{className:`text-foreground-subtle`,children:`→`}),(0,K.jsxs)(`span`,{className:`font-medium`,children:[c.target,`°`]}),(0,K.jsx)(`button`,{type:`button`,"aria-label":`Decrease target`,disabled:u,onClick:e=>{if(e.stopPropagation(),!u&&c.target!==null){let e=c.target-1;l({target:e}),a.setTarget({target:e})}},className:Z(`inline-flex h-4 w-4 items-center justify-center rounded text-foreground-subtle hover:text-foreground hover:bg-surface-hover transition-colors`,u&&`opacity-40 cursor-not-allowed`),children:`−`}),(0,K.jsx)(`button`,{type:`button`,"aria-label":`Increase target`,disabled:u,onClick:e=>{if(e.stopPropagation(),!u&&c.target!==null){let e=c.target+1;l({target:e}),a.setTarget({target:e})}},className:Z(`inline-flex h-4 w-4 items-center justify-center rounded text-foreground-subtle hover:text-foreground hover:bg-surface-hover transition-colors`,u&&`opacity-40 cursor-not-allowed`),children:`+`})]})]}),(0,K.jsx)(`div`,{className:`inline-flex items-center gap-0.5 rounded bg-surface-subtle p-0.5`,children:c.availableModes.map(e=>(0,K.jsx)(`button`,{type:`button`,"aria-label":e,disabled:u,onClick:t=>{t.stopPropagation(),u||(l({mode:e}),a.setMode({mode:e}))},className:Z(`rounded px-1.5 py-0.5 text-xs transition-colors`,e===c.mode?C8[e]:`text-foreground-subtle hover:text-foreground hover:bg-surface-hover`,u&&`opacity-40 cursor-not-allowed`),children:e},e))}),d&&(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,K.jsxs)(`label`,{className:`flex items-center gap-1`,children:[(0,K.jsx)(`span`,{children:`Low`}),(0,K.jsx)(`input`,{"aria-label":`Target low`,type:`number`,step:.5,value:c.targetLow??``,disabled:u,onChange:e=>{if(!u){let t=Number(e.target.value),n=c.targetHigh??t;l({targetLow:t}),a.setTargetRange({targetLow:t,targetHigh:n})}},className:`w-14 rounded border border-border bg-surface px-1 py-0.5 tabular-nums`})]}),(0,K.jsxs)(`label`,{className:`flex items-center gap-1`,children:[(0,K.jsx)(`span`,{children:`High`}),(0,K.jsx)(`input`,{"aria-label":`Target high`,type:`number`,step:.5,value:c.targetHigh??``,disabled:u,onChange:e=>{if(!u){let t=Number(e.target.value),n=c.targetLow??t;l({targetHigh:t}),a.setTargetRange({targetLow:n,targetHigh:t})}},className:`w-14 rounded border border-border bg-surface px-1 py-0.5 tabular-nums`})]})]}),c.availableFanModes.length>0&&(0,K.jsxs)(`label`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,K.jsx)(`span`,{children:`Fan`}),(0,K.jsxs)(`select`,{"aria-label":`Fan mode`,value:c.fanMode,disabled:u,onChange:e=>{let t=e.target.value;!u&&t&&(l({fanMode:t}),a.setFanMode({fanMode:t}))},className:`rounded border border-border bg-surface px-1 py-0.5`,children:[(0,K.jsx)(`option`,{value:``,disabled:!0,children:`—`}),c.availableFanModes.map(e=>(0,K.jsx)(`option`,{value:e,children:e},e))]})]}),c.availablePresets.length>0&&(0,K.jsxs)(`label`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,K.jsx)(`span`,{children:`Preset`}),(0,K.jsxs)(`select`,{"aria-label":`Preset`,value:c.preset,disabled:u,onChange:e=>{let t=e.target.value;!u&&t&&(l({preset:t}),a.setPreset({preset:t}))},className:`rounded border border-border bg-surface px-1 py-0.5`,children:[(0,K.jsx)(`option`,{value:``,disabled:!0,children:`—`}),c.availablePresets.map(e=>(0,K.jsx)(`option`,{value:e,children:e},e))]})]}),c.targetHumidity!==null&&(0,K.jsxs)(`label`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,K.jsx)(`span`,{children:`Humidity`}),(0,K.jsx)(`input`,{"aria-label":`Target humidity`,type:`range`,min:0,max:100,step:1,value:c.targetHumidity,disabled:u,onChange:e=>{let t=Number(e.target.value);l({targetHumidity:t}),u||a.setTargetHumidity({targetHumidity:t})}}),(0,K.jsxs)(`span`,{className:`tabular-nums w-8 text-right`,children:[c.targetHumidity,`%`]})]})]})}var T8={playing:`border-green-400 bg-green-50 dark:bg-green-950`,paused:`border-amber-400 bg-amber-50 dark:bg-amber-950`,buffering:`border-blue-400 bg-blue-50 dark:bg-blue-950`,on:`border-slate-400 bg-slate-50 dark:bg-slate-950`,idle:`border-slate-400 bg-slate-50 dark:bg-slate-950`,off:`border-zinc-300 bg-zinc-50 dark:bg-zinc-900`,standby:`border-zinc-300 bg-zinc-50 dark:bg-zinc-900`},E8={playing:`bg-green-500`,paused:`bg-amber-400`,buffering:`bg-blue-400`,on:`bg-slate-400`,idle:`bg-slate-400`,off:`bg-zinc-300`,standby:`bg-zinc-300`},D8=[`off`,`all`,`one`];function O8(e){return D8.includes(e)}var k8={off:`Off`,all:`All`,one:`One`};function A8(e){return e===`playing`||e===`buffering`?`pause`:`play`}function j8({trpc:e,deviceId:t,features:n,layout:r,optimistic:i}){let{cap:a,slice:o,available:s}=KX({trpc:e,deviceId:t,cap:e=>e.mediaPlayer,slice:e=>e.state.mediaPlayer}),{display:c,applyOptimistic:l}=h8(o,{enabled:i??!0});if(c===void 0)return null;let u=!s,d=A8(c.state);return(0,K.jsxs)(`div`,{"data-state":c.state,className:Z(`inline-flex items-center gap-2 rounded border px-2 py-1 transition-colors`,T8[c.state],r===`full`&&`flex-col items-stretch gap-3`),children:[(0,K.jsxs)(`div`,{className:`inline-flex items-center gap-2`,children:[(0,K.jsx)(`span`,{role:`status`,"aria-label":c.state,className:Z(`inline-block h-2 w-2 rounded-full flex-shrink-0`,E8[c.state])}),(0,K.jsx)(`button`,{type:`button`,"aria-label":d===`play`?`Play`:`Pause`,disabled:u,onClick:e=>{e.stopPropagation(),!u&&(d===`play`?(l({state:`playing`}),a?.play({})):(l({state:`paused`}),a?.pause({})))},className:Z(`inline-flex h-5 w-5 items-center justify-center rounded text-foreground-subtle hover:text-foreground hover:bg-surface-hover transition-colors text-xs`,u&&`opacity-40 cursor-not-allowed`),children:d===`play`?`▶`:`⏸`})]}),r===`full`&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`div`,{className:`inline-flex items-center gap-1`,children:[(0,K.jsx)(`button`,{type:`button`,"aria-label":`Previous`,disabled:u,onClick:e=>{e.stopPropagation(),u||a?.previous({})},className:Z(`inline-flex h-5 w-5 items-center justify-center rounded text-foreground-subtle hover:text-foreground hover:bg-surface-hover transition-colors text-xs`,u&&`opacity-40 cursor-not-allowed`),children:`⏮`}),(0,K.jsx)(`button`,{type:`button`,"aria-label":`Next`,disabled:u,onClick:e=>{e.stopPropagation(),u||a?.next({})},className:Z(`inline-flex h-5 w-5 items-center justify-center rounded text-foreground-subtle hover:text-foreground hover:bg-surface-hover transition-colors text-xs`,u&&`opacity-40 cursor-not-allowed`),children:`⏭`})]}),c.volumeLevel!==null&&(0,K.jsxs)(`label`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,K.jsx)(`span`,{children:`Vol`}),(0,K.jsx)(`input`,{"aria-label":`Volume`,type:`range`,min:0,max:100,step:1,value:c.volumeLevel,disabled:u,onChange:e=>{let t=Number(e.target.value);l({volumeLevel:t}),u||a?.setVolume({volumeLevel:t})}}),(0,K.jsxs)(`span`,{className:`tabular-nums w-8 text-right`,children:[c.volumeLevel,`%`]})]}),c.isMuted!==null&&(0,K.jsx)(`button`,{type:`button`,"aria-label":c.isMuted?`Unmute`:`Mute`,disabled:u,onClick:e=>{if(e.stopPropagation(),!u&&c.isMuted!==null){let e=!c.isMuted;l({isMuted:e}),a?.setMute({muted:e})}},className:Z(`inline-flex items-center gap-1 rounded px-1.5 py-0.5 text-xs transition-colors`,c.isMuted?`bg-amber-400 text-amber-950`:`text-foreground-subtle hover:text-foreground hover:bg-surface-hover`,u&&`opacity-40 cursor-not-allowed`),children:c.isMuted?`🔇`:`🔊`}),c.availableSources.length>0&&(0,K.jsxs)(`label`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,K.jsx)(`span`,{children:`Source`}),(0,K.jsxs)(`select`,{"aria-label":`Source`,value:c.source,disabled:u,onChange:e=>{let t=e.target.value;!u&&t&&(l({source:t}),a?.selectSource({source:t}))},className:`rounded border border-border bg-surface px-1 py-0.5`,children:[(0,K.jsx)(`option`,{value:``,disabled:!0,children:`—`}),c.availableSources.map(e=>(0,K.jsx)(`option`,{value:e,children:e},e))]})]}),c.shuffle!==null&&(0,K.jsx)(`button`,{type:`button`,"aria-label":`Shuffle`,disabled:u,onClick:e=>{if(e.stopPropagation(),!u&&c.shuffle!==null){let e=!c.shuffle;l({shuffle:e}),a?.setShuffle({shuffle:e})}},className:Z(`inline-flex items-center gap-1 rounded px-1.5 py-0.5 text-xs transition-colors`,c.shuffle?`bg-green-400 text-green-950`:`text-foreground-subtle hover:text-foreground hover:bg-surface-hover`,u&&`opacity-40 cursor-not-allowed`),children:`⇌ Shuffle`}),c.repeat!==null&&(0,K.jsxs)(`label`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,K.jsx)(`span`,{children:`Repeat`}),(0,K.jsx)(`select`,{"aria-label":`Repeat`,value:c.repeat,disabled:u,onChange:e=>{let t=e.target.value;!u&&O8(t)&&(l({repeat:t}),a?.setRepeat({repeat:t}))},className:`rounded border border-border bg-surface px-1 py-0.5`,children:D8.map(e=>(0,K.jsx)(`option`,{value:e,children:k8[e]},e))})]})]})]})}function M8(e,t){return t===void 0?Number.isInteger(e)?String(e):e.toFixed(1):e.toFixed(t)}var N8=/^(\d{4})-(\d{2})-(\d{2})/,P8=/^(\d{2}):(\d{2})(?::(\d{2}))?$/;function F8(e,t){let n=N8.exec(e);if(n===null)return e;let r=Number(n[1]),i=Number(n[2]),a=Number(n[3]),o=new Date(r,i-1,a);if(Number.isNaN(o.getTime()))return e;try{return o.toLocaleDateString(t)}catch{return e}}function I8(e,t){let n=P8.exec(e);if(n===null)return e;let r=new Date(1970,0,1,Number(n[1]),Number(n[2]),n[3]===void 0?0:Number(n[3]));if(Number.isNaN(r.getTime()))return e;try{return r.toLocaleTimeString(t,{hour:`2-digit`,minute:`2-digit`})}catch{return e}}function L8(e,t){let n=e.includes(`T`)?e:e.replace(` `,`T`),r=new Date(n);if(Number.isNaN(r.getTime()))return e;try{return r.toLocaleString(t,{dateStyle:`medium`,timeStyle:`short`})}catch{return e}}function R8(e,t,n){return e===``?e:t===`date`?F8(e,n):t===`time`?I8(e,n):L8(e,n)}function z8(e){return e.slice(0,10)}function B8(e){return e.slice(0,5)}function V8(e){return(e.includes(`T`)?e:e.replace(` `,`T`)).slice(0,16)}function H8({value:e,busy:t,onCommit:n,unit:r,min:i,max:a,step:o,precision:s}){let[c,l]=(0,d.useState)(M8(e,s)),u=Number(c),f=c!==``&&!Number.isNaN(u),p=o??1,m=e=>{let t=e;return i!==void 0&&(t=Math.max(i,t)),a!==void 0&&(t=Math.min(a,t)),t},h=()=>{!t&&f&&n(m(u))};return(0,K.jsxs)(`div`,{className:`inline-flex items-center gap-1`,children:[(0,K.jsx)(`button`,{type:`button`,"aria-label":`Decrement`,disabled:t,onClick:r=>{if(r.stopPropagation(),!t){let t=m(e-p);l(M8(t,s)),n(t)}},className:Z(`inline-flex h-5 w-5 items-center justify-center rounded border border-border bg-surface text-xs transition-colors hover:bg-surface-hover`,t&&`opacity-40 cursor-not-allowed`),children:`−`}),(0,K.jsx)(`input`,{"aria-label":`Numeric value`,type:`number`,disabled:t,value:c,onChange:e=>{l(e.target.value);let r=Number(e.target.value);e.target.value!==``&&!Number.isNaN(r)&&(t||n(m(r)))},onBlur:h,onKeyDown:e=>{e.key===`Enter`&&h()},className:Z(`w-16 rounded border border-border bg-surface px-1 py-0.5 text-xs tabular-nums text-center`,t&&`opacity-40 cursor-not-allowed`)}),r!==void 0&&(0,K.jsx)(`span`,{className:`text-foreground-subtle text-xs`,children:r}),(0,K.jsx)(`button`,{type:`button`,"aria-label":`Increment`,disabled:t,onClick:r=>{if(r.stopPropagation(),!t){let t=m(e+p);l(M8(t,s)),n(t)}},className:Z(`inline-flex h-5 w-5 items-center justify-center rounded border border-border bg-surface text-xs transition-colors hover:bg-surface-hover`,t&&`opacity-40 cursor-not-allowed`),children:`+`})]})}function U8({value:e,busy:t,onCommit:n}){let[r,i]=(0,d.useState)(e);return(0,K.jsx)(`input`,{type:`text`,disabled:t,value:r,onChange:e=>i(e.target.value),onBlur:()=>{t||n(r)},onKeyDown:e=>{e.key===`Enter`&&!t&&n(r)},className:Z(`rounded border border-border bg-surface px-2 py-0.5 text-xs`,t&&`opacity-40 cursor-not-allowed`)})}function W8({slice:e,busy:t,setValueFn:n,layout:r}){switch(e.kind){case`numeric`:return(0,K.jsx)(H8,{value:typeof e.value==`number`?e.value:Number(e.value),busy:t,onCommit:e=>{n({control:{kind:`numeric`,value:e}})},unit:e.unit,min:e.min,max:e.max,step:e.step,precision:e.precision});case`select`:return(0,K.jsx)(`select`,{"aria-label":`Control value`,disabled:t,value:String(e.value),onChange:e=>{e.stopPropagation(),t||n({control:{kind:`select`,value:e.target.value}})},className:Z(`w-full max-w-full min-w-0 truncate rounded bg-transparent px-0.5 py-0.5 text-xs`,t&&`opacity-40 cursor-not-allowed`),children:e.options.map(e=>(0,K.jsx)(`option`,{value:e,children:e},e))});case`text`:return(0,K.jsx)(U8,{value:String(e.value),busy:t,onCommit:e=>{n({control:{kind:`text`,value:e}})}});case`datetime`:{let i=String(e.value),a=e.format??`datetime`;return r===`compact`?i===``?(0,K.jsx)(`span`,{"aria-label":`Control value`,className:`text-xs text-foreground-subtle`,children:`—`}):(0,K.jsx)(`span`,{"aria-label":`Control value`,className:`text-xs text-foreground`,children:R8(i,a)}):(0,K.jsx)(`input`,{type:a===`date`?`date`:a===`time`?`time`:`datetime-local`,"aria-label":`Control value`,disabled:t,value:a===`date`?z8(i):a===`time`?B8(i):V8(i),onChange:e=>{e.stopPropagation(),t||n({control:{kind:`datetime`,value:e.target.value}})},className:Z(`rounded border border-border bg-surface px-1 py-0.5 text-xs`,t&&`opacity-40 cursor-not-allowed`)})}default:return null}}function G8({trpc:e,deviceId:t,features:n,layout:r,optimistic:i}){let{cap:a,slice:o,available:s}=KX({trpc:e,deviceId:t,cap:e=>e.control,slice:e=>e.state.control}),{display:c,applyOptimistic:l}=h8(o,{enabled:i??!0});if(c===void 0)return null;let u=!s;return(0,K.jsx)(`div`,{"data-kind":c.kind,className:`inline-flex min-w-0 max-w-full items-center gap-1 rounded border border-border px-2 py-1 transition-colors`,children:(0,K.jsx)(W8,{slice:c,busy:u,setValueFn:e=>{!u&&a&&(l({value:e.control.value}),a.setValue(e))},layout:r})})}function K8(e){if(e!==void 0)return X_(e)??e}var q8=e=>e;function J8(e){let t=e.capName===void 0?void 0:e.display?.perCap?.[e.capName],n=t?.precision??e.display?.precision??e.roleDefault?.precision??e.slicePrecision,r=K8(e.sliceUnit??e.canonicalUnit),i=K8(t?.unit??e.display?.unit??e.roleDefault?.unit);return i!==void 0&&r!==void 0&&i!==r&&vB(r,i)?{unit:i,precision:n,toDisplayValue:e=>_B(e,r,i)??e}:{unit:r??``,precision:n,toDisplayValue:q8}}var Y8={kind:`binary`,field:`on`,onLabel:`Low`,offLabel:`Normal`,getSliceHandle:e=>e.binary};function X8(e){return e===`battery-sensor`}function Z8(e,t){if(!$8(e))return!1;let n=e[t];if(typeof n!=`number`)return!1;let r=e.lastFetchedAt;return!(n===0&&r===0)}var Q8={"temperature-sensor":{kind:`numeric`,field:`celsius`,canonicalUnit:`°C`,getSliceHandle:e=>e.temperatureSensor},"humidity-sensor":{kind:`numeric`,field:`percent`,canonicalUnit:`%`,getSliceHandle:e=>e.humiditySensor},"ambient-light-sensor":{kind:`numeric`,field:`lux`,canonicalUnit:`lx`,getSliceHandle:e=>e.ambientLightSensor},"pressure-sensor":{kind:`numeric`,field:`hpa`,canonicalUnit:`hPa`,getSliceHandle:e=>e.pressureSensor},"numeric-sensor":{kind:`numeric`,field:`value`,getSliceHandle:e=>e.numericSensor},"wind-sensor":{kind:`numeric`,field:`value`,getSliceHandle:e=>e.numericSensor},"rain-sensor":{kind:`numeric`,field:`value`,getSliceHandle:e=>e.numericSensor},"uv-sensor":{kind:`numeric`,field:`value`,getSliceHandle:e=>e.numericSensor},"solar-radiation-sensor":{kind:`numeric`,field:`value`,getSliceHandle:e=>e.numericSensor},"soil-moisture-sensor":{kind:`numeric`,field:`value`,getSliceHandle:e=>e.numericSensor},"power-sensor":{kind:`numeric`,field:`watts`,canonicalUnit:`W`,getSliceHandle:e=>e.powerMeter},"energy-sensor":{kind:`numeric`,field:`kwhTotal`,canonicalUnit:`kWh`,getSliceHandle:e=>e.powerMeter},"voltage-sensor":{kind:`numeric`,field:`volts`,canonicalUnit:`V`,getSliceHandle:e=>e.powerMeter},"current-sensor":{kind:`numeric`,field:`amps`,canonicalUnit:`A`,getSliceHandle:e=>e.powerMeter},"battery-sensor":{kind:`numeric`,field:`value`,canonicalUnit:`%`,getSliceHandle:e=>e.numericSensor},"generic-sensor":{kind:`numeric`,field:`value`,getSliceHandle:e=>e.numericSensor},"motion-sensor":{kind:`binary`,field:`detected`,onLabel:`Detected`,offLabel:`Clear`,getSliceHandle:e=>e.motion},"pir-sensor":{kind:`binary`,field:`detected`,onLabel:`Detected`,offLabel:`Clear`,getSliceHandle:e=>e.motion},"contact-sensor":{kind:`binary`,field:`entryOpen`,onLabel:`Open`,offLabel:`Closed`,getSliceHandle:e=>e.contact},"smoke-sensor":{kind:`binary`,field:`detected`,onLabel:`Smoke!`,offLabel:`Clear`,getSliceHandle:e=>e.smoke},"leak-sensor":{kind:`binary`,field:`flooded`,onLabel:`Leak!`,offLabel:`Dry`,getSliceHandle:e=>e.flood},"co-sensor":{kind:`binary`,field:`detected`,onLabel:`CO!`,offLabel:`Clear`,getSliceHandle:e=>e.carbonMonoxide},"binary-sensor":{kind:`binary`,field:`on`,onLabel:`On`,offLabel:`Off`,getSliceHandle:e=>e.binary},presence:{kind:`presence`,getSliceHandle:e=>e.presence},"enum-sensor":{kind:`string`,getSliceHandle:e=>e.enumSensor},"datetime-sensor":{kind:`datetime`,format:`datetime`,getSliceHandle:e=>e.enumSensor}};function $8(e){return typeof e==`object`&&!!e}function e5(e){return typeof e==`object`&&!!e}function t5(e){return typeof e==`object`&&!!e&&`state`in e&&typeof e.state==`string`}function n5(e){return typeof e==`object`&&!!e&&`value`in e&&typeof e.value==`string`}function r5(e){if(typeof e!=`object`||!e)return;let t=e.format;if(t===`date`||t===`time`||t===`datetime`)return t}function i5(e){return e===`home`?`Home`:e===`not_home`?`Away`:e.charAt(0).toUpperCase()+e.slice(1)}function a5({trpc:e,device:t}){let n=t.role==null?void 0:Q8[t.role],r=X8(t.role),{data:i}=jK({},{staleTime:6e4}),a=HX(e,t.id),o=UX(a!==null&&n!==void 0?n.getSliceHandle(a.state):void 0),s=UX(a!==null&&n?.kind===`numeric`?a.state.enumSensor:void 0),c=UX(a!==null&&r?a.state.binary:void 0),l=r&&n?.kind===`numeric`&&!Z8(o,n.field)&&c!==void 0,u=l?Y8:n,d=l?c:o;if(u===void 0||d===void 0)return null;if(u.kind===`numeric`){if(!$8(d))return null;let e=d[u.field];if(typeof e!=`number`)return null;let n=d.lastFetchedAt,r=e===0&&n===0;if(r&&n5(s)&&s.value!==``)return(0,K.jsx)(`span`,{className:Z(`inline-flex items-baseline text-xs text-foreground`),children:s.value});if(r)return null;let a=d,o=typeof a.unit==`string`?a.unit:void 0,c=typeof a.precision==`number`?a.precision:void 0,l=J8({display:t.display,capName:t.role===`numeric-sensor`?`numeric-sensor`:void 0,roleDefault:t.role==null?void 0:i?.defaults[t.role],sliceUnit:o,slicePrecision:c,canonicalUnit:u.canonicalUnit}),f=l.unit,p=M8(l.toDisplayValue(e),l.precision);return(0,K.jsxs)(`span`,{className:Z(`inline-flex items-baseline gap-0.5 tabular-nums text-xs text-foreground`),children:[(0,K.jsx)(`span`,{children:p}),f&&(0,K.jsx)(`span`,{className:`text-foreground-subtle`,children:f})]})}if(u.kind===`binary`){if(!e5(d))return null;let e=!!d[u.field],t=e?u.onLabel:u.offLabel;return(0,K.jsx)(`span`,{className:Z(`inline-flex items-center rounded px-1.5 py-0.5 text-xs font-medium`,e?`bg-warning/15 text-warning`:`bg-surface-subtle text-foreground-subtle`),children:t})}if(u.kind===`string`)return!n5(d)||d.value===``?null:(0,K.jsx)(`span`,{className:Z(`inline-flex items-baseline text-xs text-foreground`),children:d.value});if(u.kind===`datetime`){if(!n5(d)||d.value===``)return null;let e=r5(d)??u.format,t=R8(d.value,e);return(0,K.jsx)(`span`,{className:Z(`inline-flex items-baseline text-xs text-foreground`),children:t})}if(!t5(d))return null;let f=i5(d.state);return(0,K.jsx)(`span`,{className:Z(`inline-flex items-center rounded px-1.5 py-0.5 text-xs font-medium`,d.state===`home`?`bg-success/15 text-success`:`bg-surface-subtle text-foreground-subtle`),children:f})}function o5(e){switch(e){case`opening`:return{up:`accent`,stop:`neutral`,down:`neutral`};case`closing`:return{up:`neutral`,stop:`neutral`,down:`accent`};case`open`:return{up:`filled`,stop:`neutral`,down:`neutral`};case`closed`:return{up:`neutral`,stop:`neutral`,down:`filled`};default:return{up:`neutral`,stop:`neutral`,down:`neutral`}}}function s5(e){switch(e){case`accent`:return`bg-primary text-primary-foreground`;case`filled`:return`bg-primary/15 text-primary`;case`neutral`:return``}}function c5({label:e,busy:t,variant:n,onClick:r,children:i}){return(0,K.jsx)(`button`,{type:`button`,"aria-label":e,title:e,disabled:t,onClick:e=>{e.stopPropagation(),r()},className:Z(`inline-flex h-5 w-5 items-center justify-center rounded text-foreground-subtle hover:text-foreground hover:bg-surface-hover transition-colors`,s5(n),t&&`opacity-40 cursor-not-allowed`),children:i})}function l5({trpc:e,deviceId:t,optimistic:n}){let{cap:r,slice:i,available:a}=KX({trpc:e,deviceId:t,cap:e=>e.cover,slice:e=>e.state.cover}),{display:o,applyOptimistic:s}=h8(i,{enabled:n??!0});if(r===void 0)return null;let c=o5(o?.state),l=!a,u=(e,t)=>{l||!e||(t!==void 0&&s(t),e({}))};return(0,K.jsxs)(`div`,{className:`inline-flex items-center gap-1`,children:[(0,K.jsx)(c5,{label:`Open`,busy:l,variant:c.up,onClick:()=>u(r?.open,{state:`opening`}),children:(0,K.jsx)(ce,{className:`h-3.5 w-3.5`})}),(0,K.jsx)(c5,{label:`Stop`,busy:l,variant:c.stop,onClick:()=>u(r?.stop,{state:`stopped`}),children:(0,K.jsx)(Nt,{className:`h-3 w-3`})}),(0,K.jsx)(c5,{label:`Close`,busy:l,variant:c.down,onClick:()=>u(r?.close,{state:`closing`}),children:(0,K.jsx)(ae,{className:`h-3.5 w-3.5`})}),o!==void 0&&o.position!==null&&(0,K.jsxs)(`span`,{className:`tabular-nums text-xs text-foreground-subtle ml-1`,children:[o.position,`%`]})]})}function u5({label:e,busy:t,variant:n,onClick:r,children:i}){return(0,K.jsx)(`button`,{type:`button`,"aria-label":e,title:e,disabled:t,onClick:e=>{e.stopPropagation(),r()},className:Z(`inline-flex h-10 w-10 items-center justify-center rounded-md text-foreground-subtle hover:text-foreground hover:bg-surface-hover transition-colors`,n===`accent`&&`bg-primary text-primary-foreground hover:bg-primary/90`,n===`filled`&&`bg-primary/15 text-primary`,t&&`opacity-40 cursor-not-allowed`),children:i})}function d5(){return(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`div`,{"aria-hidden":`true`,className:`absolute inset-y-0 left-1/2 w-px -translate-x-px bg-white/60`}),(0,K.jsx)(`div`,{"aria-hidden":`true`,className:`absolute inset-x-0 top-1/2 h-px -translate-y-px bg-white/60`})]})}function f5({position:e,interactive:t,onSetPosition:n}){let r=(1-e/100)*100,i=(0,d.useRef)(null),a=(0,d.useRef)(!1),o=(0,d.useRef)(null),s=t=>{let n=i.current;if(n===null)return e;let r=n.getBoundingClientRect();if(r.height<=0)return e;let a=(t-r.top)/r.height,o=Math.round(100-a*100);return Math.min(100,Math.max(0,o))},c=e=>{if(n===void 0)return;let t=s(e);o.current!==t&&(o.current=t,n(t))},l=e=>{t&&(e.stopPropagation(),e.preventDefault(),a.current=!0,o.current=null,e.currentTarget.setPointerCapture(e.pointerId),c(e.clientY))},u=e=>{!t||!a.current||(e.stopPropagation(),c(e.clientY))},f=e=>{!t||!a.current||(e.stopPropagation(),a.current=!1,o.current=null,e.currentTarget.hasPointerCapture(e.pointerId)&&e.currentTarget.releasePointerCapture(e.pointerId))};return(0,K.jsxs)(`div`,{ref:i,"data-testid":`cover-window`,...t?{"aria-label":`Drag to set position`,role:`slider`,"aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":e}:{"aria-hidden":`true`},onPointerDown:t?l:void 0,onPointerMove:t?u:void 0,onPointerUp:t?f:void 0,onPointerCancel:t?f:void 0,className:Z(`relative w-28 h-36 rounded border-2 border-amber-700/60 bg-gradient-to-b from-sky-200 to-sky-50 overflow-hidden flex-shrink-0`,t&&`cursor-ns-resize touch-none select-none`),style:{boxShadow:`inset 0 0 0 2px rgba(255,255,255,.5)`},children:[(0,K.jsx)(d5,{}),(0,K.jsx)(`div`,{className:`absolute inset-x-0 top-0 transition-all duration-200`,style:{height:`${r}%`,background:`repeating-linear-gradient(#c9cdd2, #c9cdd2 6px, #b7bcc2 6px, #b7bcc2 8px)`,borderBottom:r>0?`1px solid #9aa`:`none`}}),(0,K.jsxs)(`div`,{"data-testid":`cover-lever`,className:Z(`absolute inset-x-0 h-4 flex items-center justify-center gap-1 z-10 transition-all duration-200`,t&&`cursor-grab active:cursor-grabbing`),style:{top:`calc(${r}% - 8px)`},children:[(0,K.jsx)(`div`,{className:`absolute -inset-x-1.5 h-full rounded-lg bg-slate-600 shadow-md`}),(0,K.jsx)(`span`,{className:`h-1 w-1 rounded-full bg-white/70 relative z-10`,"aria-hidden":`true`}),(0,K.jsx)(`span`,{className:`h-1 w-1 rounded-full bg-white/70 relative z-10`,"aria-hidden":`true`}),(0,K.jsx)(`span`,{className:`h-1 w-1 rounded-full bg-white/70 relative z-10`,"aria-hidden":`true`}),(0,K.jsxs)(`span`,{"data-testid":`cover-position-pct`,className:`absolute left-full ml-2 text-xs font-semibold text-foreground tabular-nums whitespace-nowrap`,children:[e,`%`]})]})]})}function p5({isOpen:e}){return(0,K.jsxs)(`div`,{"data-testid":`cover-window`,"aria-hidden":`true`,className:`relative w-28 h-36 rounded border-2 border-amber-700/60 bg-gradient-to-b from-sky-200 to-sky-50 overflow-hidden flex-shrink-0`,style:{boxShadow:`inset 0 0 0 2px rgba(255,255,255,.5)`},children:[(0,K.jsx)(d5,{}),!e&&(0,K.jsx)(`div`,{className:`absolute inset-0`,style:{background:`repeating-linear-gradient(#c9cdd2, #c9cdd2 6px, #b7bcc2 6px, #b7bcc2 8px)`}})]})}function m5({trpc:e,deviceId:t,features:n,optimistic:r}){let{cap:i,slice:a,available:o}=KX({trpc:e,deviceId:t,cap:e=>e.cover,slice:e=>e.state.cover}),{display:s,applyOptimistic:c}=h8(a,{enabled:r??!0});if(i===void 0)return null;let l=!o,u=(n??[]).includes(uu.CoverPositionable),d=(n??[]).includes(uu.CoverTilt),f=o5(s?.state),p=s?.position??null,m=p!==null,h=s?.state===`open`||s?.state===`opening`,g=(e,t)=>{l||!e||(t!==void 0&&c(t),e({}))},_=e=>{l||(c({position:e}),i?.setPosition({position:e}))};return(0,K.jsxs)(`div`,{className:`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-4`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-6`,children:[m?(0,K.jsx)(f5,{position:p,interactive:u,onSetPosition:u?_:void 0}):(0,K.jsx)(p5,{isOpen:h}),(0,K.jsxs)(`div`,{className:`flex flex-col gap-3 flex-1`,children:[m&&(0,K.jsxs)(`div`,{className:`flex items-baseline gap-1`,children:[(0,K.jsx)(`span`,{className:`text-3xl font-semibold tabular-nums text-foreground`,children:p}),(0,K.jsx)(`span`,{className:`text-base text-foreground-subtle`,children:`%`}),(0,K.jsx)(`span`,{className:`text-xs text-foreground-subtle ml-1`,children:`open`})]}),!m&&(0,K.jsx)(`div`,{className:`flex items-baseline gap-1`,children:(0,K.jsx)(`span`,{className:`text-3xl font-semibold capitalize text-foreground`,children:s?.state??`—`})}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(u5,{label:`Open`,busy:l,variant:f.up,onClick:()=>g(i?.open,{state:`opening`}),children:(0,K.jsx)(ce,{className:`h-5 w-5`})}),(0,K.jsx)(u5,{label:`Stop`,busy:l,variant:f.stop,onClick:()=>g(i?.stop,{state:`stopped`}),children:(0,K.jsx)(Nt,{className:`h-4 w-4`})}),(0,K.jsx)(u5,{label:`Close`,busy:l,variant:f.down,onClick:()=>g(i?.close,{state:`closing`}),children:(0,K.jsx)(ae,{className:`h-5 w-5`})})]})]})]}),u&&(0,K.jsxs)(`label`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,K.jsx)(`span`,{className:`w-12 shrink-0`,children:`Position`}),(0,K.jsx)(`input`,{"aria-label":`Position`,type:`range`,min:0,max:100,step:1,value:p??0,disabled:l,className:`flex-1`,onChange:e=>{_(Number(e.target.value))}}),(0,K.jsxs)(`span`,{className:`w-8 text-right tabular-nums`,children:[p??`—`,`%`]})]}),!u&&p!==null&&(0,K.jsxs)(`label`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,K.jsx)(`span`,{className:`w-12 shrink-0`,children:`Position`}),(0,K.jsx)(`input`,{"aria-label":`Position`,type:`range`,min:0,max:100,step:1,value:p,disabled:!0,readOnly:!0,className:`flex-1 opacity-60`}),(0,K.jsxs)(`span`,{className:`w-8 text-right tabular-nums`,children:[p,`%`]})]}),d&&(0,K.jsxs)(`label`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,K.jsx)(`span`,{className:`w-12 shrink-0`,children:`Tilt`}),(0,K.jsx)(`input`,{"aria-label":`Tilt position`,type:`range`,min:0,max:100,step:1,value:s?.tiltPosition??0,disabled:l,className:`flex-1`,onChange:e=>{let t=Number(e.target.value);c({tiltPosition:t}),l||i?.setTiltPosition({tiltPosition:t})}}),(0,K.jsxs)(`span`,{className:`w-8 text-right tabular-nums`,children:[s?.tiltPosition??`—`,`%`]})]})]})}function h5(e){return(0,K.jsx)(`span`,{className:`text-foreground-subtle text-xs select-none`,"aria-hidden":`true`,children:`—`})}function g5(e){return(0,K.jsx)(`div`,{className:`rounded border border-border bg-surface-subtle px-3 py-2 text-xs text-foreground-subtle`,children:`Controls coming soon`})}function _5(e){return{id:e.id,stableId:e.stableId,addonId:e.addonId,type:e.type,name:e.name,online:e.online,disabled:e.disabled,parentDeviceId:e.parentDeviceId,role:e.role??void 0,features:e.features}}function v5({trpc:e,deviceId:t}){let{data:n}=MK({deviceId:t},{staleTime:6e4});return n===void 0?null:(0,K.jsx)(a5,{trpc:e,device:_5(n)})}function y5(e){return typeof e==`object`&&!!e}function b5(e){return typeof e==`object`&&!!e}function x5(e){return typeof e==`object`&&!!e&&`state`in e&&typeof e.state==`string`}function S5(e){return e===`home`?`Home`:e===`not_home`?`Away`:e.charAt(0).toUpperCase()+e.slice(1)}var C5={low:`bg-danger`,medium:`bg-warning`,high:`bg-success`};function w5(e){return e<=20?`low`:e<=50?`medium`:`high`}function T5({percent:e}){let t=Math.min(100,Math.max(0,e)),n=w5(t);return(0,K.jsx)(`div`,{"data-testid":`battery-bar`,"data-band":n,className:`h-2 w-24 overflow-hidden rounded-full bg-border`,children:(0,K.jsx)(`div`,{className:Z(`h-full rounded-full transition-all`,C5[n]),style:{width:`${t}%`}})})}function E5({trpc:e,device:t}){let n=t.role==null?Q8[`temperature-sensor`]:Q8[t.role],r=X8(t.role),{data:i}=jK({},{staleTime:6e4}),a=HX(e,t.id),o=UX(a!==null&&n!==void 0?n.getSliceHandle(a.state):void 0),s=UX(a!==null&&r?a.state.binary:void 0),c=UX(a!==null&&!r?a.state.binary:void 0),l=r&&n?.kind===`numeric`&&!Z8(o,n.field)&&s!==void 0,u=l?Y8:n,d=l?s:o;if(u===void 0||d===void 0)return(0,K.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-2 rounded-lg border border-border bg-surface p-4 min-h-[96px]`,children:[(0,K.jsx)(`span`,{className:`text-sm text-foreground-subtle`,children:t.name}),(0,K.jsx)(`span`,{className:`text-xs text-foreground-subtle italic`,children:`Awaiting state…`})]});if(u.kind===`numeric`){if(!y5(d))return null;let e=d[u.field];if(typeof e!=`number`)return null;let n=d,a=typeof n.unit==`string`?n.unit:void 0,o=typeof n.precision==`number`?n.precision:void 0,s=J8({display:t.display,capName:t.role===`numeric-sensor`?`numeric-sensor`:void 0,roleDefault:t.role==null?i?.defaults[`temperature-sensor`]:i?.defaults[t.role],sliceUnit:a,slicePrecision:o,canonicalUnit:u.canonicalUnit}),l=s.unit,f=M8(s.toDisplayValue(e),s.precision),p=c!==void 0&&b5(c)&&typeof c.on==`boolean`?!!c.on:null;return(0,K.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-2 rounded-lg border border-border bg-surface p-4`,children:[(0,K.jsxs)(`div`,{className:`flex items-baseline gap-1`,children:[(0,K.jsx)(`span`,{className:`text-3xl font-semibold tabular-nums text-foreground`,children:f}),l&&(0,K.jsx)(`span`,{className:`text-base text-foreground-subtle`,children:l})]}),r&&(0,K.jsx)(T5,{percent:e}),p!==null&&(0,K.jsx)(`span`,{className:Z(`inline-flex items-center rounded px-2 py-0.5 text-xs font-medium`,p?`bg-warning/15 text-warning`:`bg-surface-subtle text-foreground-subtle`),"data-testid":`sensor-hero-occupancy`,children:p?`Occupied`:`Clear`}),(0,K.jsx)(`span`,{className:`text-sm text-foreground-subtle`,children:t.name})]})}if(u.kind===`binary`){if(!b5(d))return null;let e=!!d[u.field],n=e?u.onLabel:u.offLabel;return(0,K.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-2 rounded-lg border border-border bg-surface p-4`,children:[(0,K.jsx)(`span`,{className:Z(`inline-flex items-center rounded px-3 py-1.5 text-lg font-semibold`,e?`bg-warning/15 text-warning`:`bg-surface-subtle text-foreground-subtle`),children:n}),(0,K.jsx)(`span`,{className:`text-sm text-foreground-subtle`,children:t.name})]})}if(u.kind===`datetime`){if(!n5(d))return null;if(d.value===``)return(0,K.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-2 rounded-lg border border-border bg-surface p-4 min-h-[96px]`,children:[(0,K.jsx)(`span`,{className:`text-sm text-foreground-subtle`,children:t.name}),(0,K.jsx)(`span`,{className:`text-xs text-foreground-subtle italic`,children:`Awaiting state…`})]});let e=r5(d)??u.format;return(0,K.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-2 rounded-lg border border-border bg-surface p-4`,children:[(0,K.jsx)(`span`,{className:`text-3xl font-semibold tabular-nums text-foreground`,children:R8(d.value,e)}),(0,K.jsx)(`span`,{className:`text-sm text-foreground-subtle`,children:t.name})]})}if(u.kind===`string`)return!n5(d)||d.value===``?null:(0,K.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-2 rounded-lg border border-border bg-surface p-4`,children:[(0,K.jsx)(`span`,{className:`text-xl font-semibold text-foreground`,children:d.value}),(0,K.jsx)(`span`,{className:`text-sm text-foreground-subtle`,children:t.name})]});if(!x5(d))return null;let f=S5(d.state);return(0,K.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-2 rounded-lg border border-border bg-surface p-4`,children:[(0,K.jsx)(`span`,{className:Z(`inline-flex items-center rounded px-3 py-1.5 text-lg font-semibold`,d.state===`home`?`bg-success/15 text-success`:`bg-surface-subtle text-foreground-subtle`),children:f}),(0,K.jsx)(`span`,{className:`text-sm text-foreground-subtle`,children:t.name})]})}function D5({trpc:e,deviceId:t}){let{data:n}=MK({deviceId:t},{staleTime:6e4});return n===void 0?null:(0,K.jsx)(E5,{trpc:e,device:n})}function O5(e){return e===void 0||e.inProgress?!1:e.availableVersion!==null&&e.currentVersion!==null&&e.availableVersion!==e.currentVersion}function k5(e,t){return KX({trpc:e,deviceId:t,cap:e=>e.update,slice:e=>e.state.update})}function A5({trpc:e,deviceId:t}){let{cap:n,slice:r}=k5(e,t);return n===void 0?null:r?.inProgress?(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-1 text-xs text-foreground-subtle`,children:[(0,K.jsx)(We,{className:`h-3.5 w-3.5 animate-spin`}),`Updating…`]}):O5(r)?(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-1 rounded bg-warning/15 px-1.5 py-0.5 text-[10px] font-medium text-warning`,children:[(0,K.jsx)(Ce,{className:`h-3 w-3`}),`Update`]}):(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-1 text-[10px] text-foreground-subtle`,children:[(0,K.jsx)(ie,{className:`h-3 w-3 text-success`}),r?.currentVersion??`Up to date`]})}function j5({trpc:e,deviceId:t}){let{cap:n,slice:r,available:i}=k5(e,t);if(n===void 0)return null;let a=r?.inProgress===!0,o=O5(r),s=r?.currentVersion??`—`,c=()=>{!i||n===void 0||!o||n.installUpdate({})};return(0,K.jsxs)(`div`,{className:`flex flex-col items-center justify-center gap-2 rounded-lg border border-border bg-surface p-4`,children:[(0,K.jsxs)(`div`,{className:`flex items-baseline gap-1.5`,children:[(0,K.jsx)(`span`,{className:`text-3xl font-semibold tabular-nums text-foreground`,children:s}),o&&r?.availableVersion!=null&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`span`,{className:`text-base text-foreground-subtle`,children:`→`}),(0,K.jsx)(`span`,{className:`text-base font-medium text-warning tabular-nums`,children:r.availableVersion})]})]}),a?(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 rounded px-3 py-1.5 text-sm font-medium text-foreground-subtle`,children:[(0,K.jsx)(We,{className:`h-4 w-4 animate-spin`}),`Installing…`]}):o?(0,K.jsxs)(`button`,{type:`button`,onClick:e=>{e.stopPropagation(),c()},disabled:!i,className:`inline-flex items-center gap-1.5 rounded-lg bg-primary px-4 py-1.5 text-sm font-medium text-primary-foreground shadow-sm transition-colors disabled:opacity-50 disabled:cursor-not-allowed`,children:[(0,K.jsx)(Ce,{className:`h-4 w-4`}),`Install update`]}):(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-1.5 rounded bg-success/15 px-3 py-1 text-sm font-medium text-success`,children:[(0,K.jsx)(ie,{className:`h-4 w-4`}),`Up to date`]}),r?.state!=null&&r.state!==``&&(0,K.jsx)(`span`,{className:`text-[10px] text-foreground-subtle`,children:r.state})]})}function M5(e){switch(e){case`cleaning`:return{label:`Cleaning`,tone:`text-primary`};case`paused`:return{label:`Paused`,tone:`text-warning`};case`returning`:return{label:`Returning`,tone:`text-primary`};case`docked`:return{label:`Docked`,tone:`text-success`};case`drying`:return{label:`Drying`,tone:`text-warning`};case`idle`:return{label:`Idle`,tone:`text-foreground-subtle`};case`error`:return{label:`Error`,tone:`text-destructive`};case void 0:return{label:`Unknown`,tone:`text-foreground-subtle`}}}function N5(e,t){return KX({trpc:e,deviceId:t,cap:e=>e.vacuumControl,slice:e=>e.state.vacuumControl})}function P5({label:e,busy:t,active:n,onClick:r,children:i}){return(0,K.jsx)(`button`,{type:`button`,"aria-label":e,title:e,disabled:t,onClick:e=>{e.stopPropagation(),r()},className:Z(`inline-flex h-5 w-5 items-center justify-center rounded text-foreground-subtle hover:text-foreground hover:bg-surface-hover transition-colors`,n&&`bg-primary text-primary-foreground`,t&&`opacity-40 cursor-not-allowed`),children:i})}function F5(e){switch(e){case`cleaning`:return{glow:`bg-primary/15`,accent:`text-primary`,docked:!1,active:!0};case`returning`:return{glow:`bg-primary/10`,accent:`text-primary`,docked:!1,active:!0};case`docked`:return{glow:`bg-success/10`,accent:`text-success`,docked:!0,active:!1};case`drying`:return{glow:`bg-warning/10`,accent:`text-warning`,docked:!0,active:!1};case`paused`:return{glow:`bg-warning/10`,accent:`text-warning`,docked:!1,active:!1};case`error`:return{glow:`bg-destructive/10`,accent:`text-destructive`,docked:!1,active:!1};case`idle`:return{glow:`bg-transparent`,accent:`text-foreground-subtle`,docked:!1,active:!1};case void 0:return{glow:`bg-transparent`,accent:`text-foreground-subtle`,docked:!1,active:!1}}}var I5=`
|
|
80
|
+
@keyframes rg-breathe { 0%,100%{opacity:.78;transform:scale(1)} 50%{opacity:1;transform:scale(1.05)} }
|
|
81
|
+
@keyframes rg-zzz { 0%{opacity:0;transform:translateY(3px)} 30%{opacity:.85} 100%{opacity:0;transform:translateY(-9px)} }
|
|
82
|
+
@keyframes rg-spark { 0%,100%{opacity:.25;transform:scale(.9)} 50%{opacity:1;transform:scale(1.1)} }
|
|
83
|
+
@keyframes rg-pulse { 0%,100%{opacity:.35} 50%{opacity:.85} }
|
|
84
|
+
@keyframes rg-blink { 0%,49%{opacity:1} 50%,100%{opacity:.3} }
|
|
85
|
+
@keyframes rg-spin { to { transform:rotate(360deg) } }
|
|
86
|
+
@media (prefers-reduced-motion: reduce) { .rg-a { animation: none !important; } }
|
|
87
|
+
`;function L5({state:e,batteryLevel:t}){let n=F5(e),r=n.docked&&t!=null&&t<100,i=n.docked&&!r,a=e===`error`,o=i?{animation:`rg-breathe 3.4s ease-in-out infinite`,transformBox:`fill-box`,transformOrigin:`center`}:a?{animation:`rg-blink 1s steps(1) infinite`}:void 0;return(0,K.jsxs)(`div`,{"aria-hidden":`true`,className:`relative w-28 h-36 rounded border-2 border-border bg-gradient-to-b from-surface-hover to-surface overflow-hidden flex-shrink-0`,style:{boxShadow:`inset 0 0 0 2px rgba(255,255,255,.06)`},children:[(0,K.jsx)(`style`,{children:I5}),(0,K.jsx)(`div`,{className:Z(`absolute inset-0 transition-colors duration-300`,n.glow)}),(0,K.jsx)(`div`,{className:Z(`absolute inset-0 flex items-center justify-center`,n.accent),children:(0,K.jsxs)(`svg`,{viewBox:`0 0 100 100`,className:`w-20 h-20`,fill:`none`,children:[n.docked&&(0,K.jsx)(`rect`,{x:`34`,y:`80`,width:`32`,height:`8`,rx:`2`,fill:`currentColor`,opacity:`0.35`,className:Z(r&&`rg-a`),style:r?{animation:`rg-pulse 1.2s ease-in-out infinite`}:void 0}),n.active&&(0,K.jsx)(`circle`,{cx:`50`,cy:`50`,r:`44`,stroke:`currentColor`,strokeWidth:`2`,opacity:`0.4`,className:`animate-ping`,style:{transformOrigin:`center`}}),(0,K.jsxs)(`g`,{className:Z((i||a)&&`rg-a`),style:o,children:[(0,K.jsx)(`circle`,{cx:`50`,cy:`50`,r:`34`,fill:`currentColor`,fillOpacity:`0.12`,stroke:`currentColor`,strokeWidth:`2.5`}),(0,K.jsx)(`path`,{d:`M 24 42 A 34 34 0 0 1 76 42`,stroke:`currentColor`,strokeWidth:`3`,opacity:`0.55`,strokeLinecap:`round`}),(0,K.jsxs)(`g`,{className:Z(n.active&&`rg-a`),style:n.active?{animation:`rg-spin 3s linear infinite`,transformBox:`fill-box`,transformOrigin:`center`}:void 0,children:[(0,K.jsx)(`circle`,{cx:`50`,cy:`50`,r:`9`,fill:`currentColor`,fillOpacity:`0.25`,stroke:`currentColor`,strokeWidth:`2`}),(0,K.jsx)(`circle`,{cx:`50`,cy:`43`,r:`2.4`,fill:`currentColor`})]})]}),i&&(0,K.jsxs)(`g`,{fill:`currentColor`,fontFamily:`sans-serif`,fontWeight:`700`,children:[(0,K.jsx)(`text`,{x:`64`,y:`30`,fontSize:`13`,opacity:`0.7`,className:`rg-a`,style:{animation:`rg-zzz 3.4s ease-in-out infinite`},children:`z`}),(0,K.jsx)(`text`,{x:`73`,y:`23`,fontSize:`10`,opacity:`0.6`,className:`rg-a`,style:{animation:`rg-zzz 3.4s ease-in-out .7s infinite`},children:`z`}),(0,K.jsx)(`text`,{x:`80`,y:`17`,fontSize:`8`,opacity:`0.5`,className:`rg-a`,style:{animation:`rg-zzz 3.4s ease-in-out 1.4s infinite`},children:`z`})]}),r&&(0,K.jsx)(`path`,{d:`M53 20 L44 40 L50 40 L46 56 L60 34 L53 34 Z`,fill:`#fbbf24`,stroke:`#f59e0b`,strokeWidth:`1`,className:`rg-a`,style:{animation:`rg-spark 1s ease-in-out infinite`,transformBox:`fill-box`,transformOrigin:`center`}})]})})]})}function R5({level:e}){return(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-0.5 tabular-nums text-xs text-foreground-subtle`,children:[(0,K.jsx)(y,{className:`h-3.5 w-3.5`}),e,`%`]})}function z5(e){switch(e){case`cleanWater`:return!0;case`detergent`:return!0;case`dirtyWater`:return!1;case`dustBin`:return!1;default:return e}}function B5(e,t){let n=z5(e);return t.level===null?t.status===null?`ok`:n?t.status===`low`?`warning`:`ok`:t.status===`full`?`warning`:`ok`:n?t.level<=15?`warning`:`ok`:t.level>=85?`warning`:`ok`}function V5(e){switch(e){case`cleanWater`:return{label:`Clean water`,icon:(0,K.jsx)(we,{className:`h-3.5 w-3.5`})};case`dirtyWater`:return{label:`Dirty water`,icon:(0,K.jsx)(Te,{className:`h-3.5 w-3.5`})};case`detergent`:return{label:`Detergent`,icon:(0,K.jsx)(Me,{className:`h-3.5 w-3.5`})};case`dustBin`:return{label:`Dust bin`,icon:(0,K.jsx)(Bt,{className:`h-3.5 w-3.5`})};default:return e}}function H5({kind:e,tank:t}){if(t===null)return null;let n=V5(e),r=B5(e,t)===`warning`;return t.level===null?t.status===null?(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-xs`,children:[(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-1 w-24 shrink-0 text-foreground-subtle`,children:[n.icon,n.label]}),(0,K.jsx)(`span`,{className:`inline-flex items-center rounded-full px-2 py-0.5 text-[11px] font-medium bg-surface-hover text-foreground-subtle`,children:`—`})]}):(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-xs`,children:[(0,K.jsxs)(`span`,{className:Z(`inline-flex items-center gap-1 w-24 shrink-0`,r?`text-warning`:`text-foreground-subtle`),children:[n.icon,n.label]}),(0,K.jsx)(`span`,{className:Z(`inline-flex items-center rounded-full px-2 py-0.5 text-[11px] font-medium`,r?`bg-warning/15 text-warning`:`bg-primary/15 text-foreground-subtle`),children:t.status})]}):(0,K.jsxs)(`div`,{className:`flex items-center gap-2 text-xs`,children:[(0,K.jsxs)(`span`,{className:Z(`inline-flex items-center gap-1 w-24 shrink-0`,r?`text-warning`:`text-foreground-subtle`),children:[n.icon,n.label]}),(0,K.jsx)(`span`,{className:`relative h-1.5 flex-1 overflow-hidden rounded-full bg-surface-hover`,children:(0,K.jsx)(`span`,{className:Z(`absolute inset-y-0 left-0 rounded-full transition-all`,r?`bg-warning`:`bg-primary`),style:{width:`${t.level}%`}})}),(0,K.jsxs)(`span`,{className:Z(`tabular-nums w-9 text-right`,r?`text-warning`:`text-foreground-subtle`),children:[t.level,`%`]})]})}function U5({cleanWater:e,dirtyWater:t,detergent:n,dustBin:r}){let i=[[`cleanWater`,e],[`dirtyWater`,t],[`detergent`,n],[`dustBin`,r]];return i.some(([,e])=>e!==null)?(0,K.jsx)(`div`,{className:`grid grid-cols-1 gap-x-6 gap-y-2 rounded-md border border-border bg-surface-hover/40 p-3 sm:grid-cols-2`,children:i.map(([e,t])=>(0,K.jsx)(H5,{kind:e,tank:t},e))}):null}function W5({trpc:e,deviceId:t}){let{cap:n,slice:r,available:i}=N5(e,t);if(n===void 0)return null;let a=!i,o=r?.state,s=o===`cleaning`,c=e=>{a||e===void 0||e({})};return(0,K.jsxs)(`div`,{className:`inline-flex items-center gap-1`,children:[(0,K.jsx)(P5,{label:`Start`,busy:a,active:s,onClick:()=>c(n.start),children:(0,K.jsx)(dt,{className:`h-3 w-3`})}),(0,K.jsx)(P5,{label:`Pause`,busy:a,active:o===`paused`,onClick:()=>c(n.pause),children:(0,K.jsx)(ct,{className:`h-3 w-3`})}),(0,K.jsx)(P5,{label:`Return to base`,busy:a,active:o===`returning`||o===`docked`,onClick:()=>c(n.returnToBase),children:(0,K.jsx)(Ie,{className:`h-3.5 w-3.5`})}),r?.batteryLevel!=null&&(0,K.jsx)(`span`,{className:`ml-1`,children:(0,K.jsx)(R5,{level:r.batteryLevel})})]})}function G5({label:e,busy:t,active:n,onClick:r,children:i}){return(0,K.jsx)(`button`,{type:`button`,"aria-label":e,title:e,disabled:t,onClick:e=>{e.stopPropagation(),r()},className:Z(`inline-flex h-10 w-10 items-center justify-center rounded-md text-foreground-subtle hover:text-foreground hover:bg-surface-hover transition-colors`,n&&`bg-primary text-primary-foreground hover:bg-primary/90`,t&&`opacity-40 cursor-not-allowed`),children:i})}function K5({trpc:e,deviceId:t}){let{cap:n,slice:r,available:i}=N5(e,t);if(n===void 0)return null;let a=!i,o=r?.state,s=M5(o),c=r?.availableFanSpeeds??[],l=e=>{a||e===void 0||e({})},u=e=>{a||e===``||n.setFanSpeed({speed:e})};return(0,K.jsxs)(`div`,{className:`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-4`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-6`,children:[(0,K.jsx)(L5,{state:o,batteryLevel:r?.batteryLevel??null}),(0,K.jsxs)(`div`,{className:`flex flex-col gap-3 flex-1`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:Z(`text-3xl font-semibold`,s.tone),children:s.label}),r?.batteryLevel!=null&&(0,K.jsx)(R5,{level:r.batteryLevel})]}),r?.progressPercent!=null&&(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`div`,{className:`h-1.5 flex-1 rounded bg-surface-hover overflow-hidden`,children:(0,K.jsx)(`div`,{className:`h-full bg-primary transition-[width] duration-500`,style:{width:`${Math.max(0,Math.min(100,r.progressPercent))}%`}})}),(0,K.jsxs)(`span`,{className:`tabular-nums text-xs text-foreground-subtle`,children:[Math.round(r.progressPercent),`%`]})]}),r?.errorCode!=null&&r.errorCode!==0&&(0,K.jsxs)(`div`,{className:`inline-flex items-center gap-1 text-xs text-destructive`,children:[(0,K.jsx)(Vt,{className:`h-3.5 w-3.5`}),(0,K.jsx)(`span`,{children:r.errorLabel??`Error ${r.errorCode}`})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(G5,{label:`Start`,busy:a,active:o===`cleaning`,onClick:()=>l(n.start),children:(0,K.jsx)(dt,{className:`h-5 w-5`})}),(0,K.jsx)(G5,{label:`Pause`,busy:a,active:o===`paused`,onClick:()=>l(n.pause),children:(0,K.jsx)(ct,{className:`h-5 w-5`})}),(0,K.jsx)(G5,{label:`Stop`,busy:a,active:!1,onClick:()=>l(n.stop),children:(0,K.jsx)(Nt,{className:`h-4 w-4`})}),(0,K.jsx)(G5,{label:`Return to base`,busy:a,active:o===`returning`||o===`docked`,onClick:()=>l(n.returnToBase),children:(0,K.jsx)(Ie,{className:`h-5 w-5`})}),(0,K.jsx)(G5,{label:`Locate`,busy:a,active:!1,onClick:()=>l(n.locate),children:(0,K.jsx)(Ye,{className:`h-5 w-5`})})]})]})]}),c.length>0&&(0,K.jsxs)(`label`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,K.jsx)(`span`,{className:`w-16 shrink-0`,children:`Fan speed`}),(0,K.jsxs)(`select`,{"aria-label":`Fan speed`,value:r?.fanSpeed??``,disabled:a,onChange:e=>{u(e.target.value)},onClick:e=>{e.stopPropagation()},className:`flex-1 rounded border border-border bg-surface px-2 py-1 text-foreground disabled:opacity-50`,children:[r?.fanSpeed==null&&(0,K.jsx)(`option`,{value:``,children:`—`}),c.map(e=>(0,K.jsx)(`option`,{value:e,children:e},e))]})]}),(0,K.jsx)(U5,{cleanWater:r?.cleanWater??null,dirtyWater:r?.dirtyWater??null,detergent:r?.detergent??null,dustBin:r?.dustBin??null})]})}function q5(e){switch(e){case`mowing`:return{label:`Mowing`,tone:`text-primary`};case`paused`:return{label:`Paused`,tone:`text-warning`};case`docked`:return{label:`Docked`,tone:`text-success`};case`idle`:return{label:`Idle`,tone:`text-foreground-subtle`};case`error`:return{label:`Error`,tone:`text-destructive`};case void 0:return{label:`Unknown`,tone:`text-foreground-subtle`}}}function J5(e,t){return KX({trpc:e,deviceId:t,cap:e=>e.lawnMowerControl,slice:e=>e.state.lawnMowerControl})}function Y5(e){switch(e){case`mowing`:return{glow:`bg-primary/15`,accent:`text-primary`,docked:!1,active:!0};case`docked`:return{glow:`bg-success/10`,accent:`text-success`,docked:!0,active:!1};case`paused`:return{glow:`bg-warning/10`,accent:`text-warning`,docked:!1,active:!1};case`error`:return{glow:`bg-destructive/10`,accent:`text-destructive`,docked:!1,active:!1};case`idle`:return{glow:`bg-transparent`,accent:`text-foreground-subtle`,docked:!1,active:!1};case void 0:return{glow:`bg-transparent`,accent:`text-foreground-subtle`,docked:!1,active:!1}}}var X5=`
|
|
88
|
+
@keyframes rg-breathe { 0%,100%{opacity:.78;transform:scale(1)} 50%{opacity:1;transform:scale(1.05)} }
|
|
89
|
+
@keyframes rg-zzz { 0%{opacity:0;transform:translateY(3px)} 30%{opacity:.85} 100%{opacity:0;transform:translateY(-9px)} }
|
|
90
|
+
@keyframes rg-spark { 0%,100%{opacity:.25;transform:scale(.9)} 50%{opacity:1;transform:scale(1.1)} }
|
|
91
|
+
@keyframes rg-pulse { 0%,100%{opacity:.35} 50%{opacity:.85} }
|
|
92
|
+
@keyframes rg-blink { 0%,49%{opacity:1} 50%,100%{opacity:.3} }
|
|
93
|
+
@keyframes rg-spin { to { transform:rotate(360deg) } }
|
|
94
|
+
@media (prefers-reduced-motion: reduce) { .rg-a { animation: none !important; } }
|
|
95
|
+
`;function Z5({activity:e,batteryLevel:t}){let n=Y5(e),r=n.docked&&t!=null&&t<100,i=n.docked&&!r,a=e===`error`,o=i?{animation:`rg-breathe 3.4s ease-in-out infinite`,transformBox:`fill-box`,transformOrigin:`center`}:a?{animation:`rg-blink 1s steps(1) infinite`}:void 0;return(0,K.jsxs)(`div`,{"aria-hidden":`true`,className:`relative w-28 h-36 rounded border-2 border-border bg-gradient-to-b from-emerald-700/40 to-emerald-900/30 overflow-hidden flex-shrink-0`,style:{boxShadow:`inset 0 0 0 2px rgba(255,255,255,.06)`},children:[(0,K.jsx)(`style`,{children:X5}),(0,K.jsx)(`div`,{className:Z(`absolute inset-0 transition-colors duration-300`,n.glow)}),(0,K.jsx)(`div`,{className:Z(`absolute inset-0 flex items-center justify-center`,n.accent),children:(0,K.jsxs)(`svg`,{viewBox:`0 0 100 100`,className:`w-20 h-20`,fill:`none`,children:[n.docked&&(0,K.jsx)(`rect`,{x:`30`,y:`78`,width:`40`,height:`9`,rx:`2`,fill:`currentColor`,opacity:`0.35`,className:Z(r&&`rg-a`),style:r?{animation:`rg-pulse 1.2s ease-in-out infinite`}:void 0}),n.active&&(0,K.jsxs)(`g`,{stroke:`currentColor`,strokeWidth:`2.5`,strokeLinecap:`round`,opacity:`0.5`,children:[(0,K.jsx)(`line`,{x1:`18`,y1:`36`,x2:`10`,y2:`36`,className:`animate-pulse`}),(0,K.jsx)(`line`,{x1:`18`,y1:`50`,x2:`6`,y2:`50`,className:`animate-pulse`}),(0,K.jsx)(`line`,{x1:`18`,y1:`64`,x2:`10`,y2:`64`,className:`animate-pulse`})]}),(0,K.jsxs)(`g`,{className:Z((i||a)&&`rg-a`),style:o,children:[(0,K.jsx)(`rect`,{x:`28`,y:`34`,width:`44`,height:`34`,rx:`8`,fill:`currentColor`,fillOpacity:`0.14`,stroke:`currentColor`,strokeWidth:`2.5`}),(0,K.jsx)(`line`,{x1:`34`,y1:`60`,x2:`66`,y2:`60`,stroke:`currentColor`,strokeWidth:`2`,opacity:`0.5`}),(0,K.jsxs)(`g`,{className:Z(n.active&&`rg-a`),style:n.active?{animation:`rg-spin 0.9s linear infinite`,transformBox:`fill-box`,transformOrigin:`center`}:void 0,children:[(0,K.jsx)(`circle`,{cx:`50`,cy:`48`,r:`5`,stroke:`currentColor`,strokeWidth:`2`,opacity:`0.6`}),(0,K.jsx)(`line`,{x1:`45`,y1:`48`,x2:`55`,y2:`48`,stroke:`currentColor`,strokeWidth:`2`,opacity:`0.7`})]}),(0,K.jsx)(`circle`,{cx:`34`,cy:`68`,r:`6`,fill:`currentColor`,fillOpacity:`0.3`,stroke:`currentColor`,strokeWidth:`2`}),(0,K.jsx)(`circle`,{cx:`66`,cy:`68`,r:`6`,fill:`currentColor`,fillOpacity:`0.3`,stroke:`currentColor`,strokeWidth:`2`})]}),i&&(0,K.jsxs)(`g`,{fill:`currentColor`,fontFamily:`sans-serif`,fontWeight:`700`,children:[(0,K.jsx)(`text`,{x:`64`,y:`30`,fontSize:`13`,opacity:`0.7`,className:`rg-a`,style:{animation:`rg-zzz 3.4s ease-in-out infinite`},children:`z`}),(0,K.jsx)(`text`,{x:`73`,y:`23`,fontSize:`10`,opacity:`0.6`,className:`rg-a`,style:{animation:`rg-zzz 3.4s ease-in-out .7s infinite`},children:`z`}),(0,K.jsx)(`text`,{x:`80`,y:`17`,fontSize:`8`,opacity:`0.5`,className:`rg-a`,style:{animation:`rg-zzz 3.4s ease-in-out 1.4s infinite`},children:`z`})]}),r&&(0,K.jsx)(`path`,{d:`M53 20 L44 40 L50 40 L46 56 L60 34 L53 34 Z`,fill:`#fbbf24`,stroke:`#f59e0b`,strokeWidth:`1`,className:`rg-a`,style:{animation:`rg-spark 1s ease-in-out infinite`,transformBox:`fill-box`,transformOrigin:`center`}})]})})]})}function Q5(e){switch(e){case`error`:return`text-destructive`;case`warning`:return`text-warning`;case`info`:return`text-foreground-subtle`}}function $5({percent:e}){return(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`div`,{className:`h-1.5 flex-1 rounded bg-surface-hover overflow-hidden`,children:(0,K.jsx)(`div`,{className:`h-full bg-primary transition-[width] duration-500`,style:{width:`${Math.max(0,Math.min(100,e))}%`}})}),(0,K.jsxs)(`span`,{className:`tabular-nums text-xs text-foreground-subtle`,children:[Math.round(e),`%`]})]})}function e7({code:e,label:t,severity:n}){return(0,K.jsxs)(`div`,{className:Z(`inline-flex items-center gap-1 text-xs`,Q5(n)),children:[n!==`info`&&(0,K.jsx)(Vt,{className:`h-3.5 w-3.5`}),(0,K.jsx)(`span`,{children:t??`Code ${e}`})]})}function t7({level:e}){return(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-0.5 tabular-nums text-xs text-foreground-subtle`,children:[(0,K.jsx)(y,{className:`h-3.5 w-3.5`}),e,`%`]})}function n7({label:e,busy:t,active:n,onClick:r,children:i}){return(0,K.jsx)(`button`,{type:`button`,"aria-label":e,title:e,disabled:t,onClick:e=>{e.stopPropagation(),r()},className:Z(`inline-flex h-5 w-5 items-center justify-center rounded text-foreground-subtle hover:text-foreground hover:bg-surface-hover transition-colors`,n&&`bg-primary text-primary-foreground`,t&&`opacity-40 cursor-not-allowed`),children:i})}function r7({trpc:e,deviceId:t}){let{cap:n,slice:r,available:i}=J5(e,t);if(n===void 0)return null;let a=!i,o=r?.activity,s=e=>{a||e===void 0||e({})};return(0,K.jsxs)(`div`,{className:`inline-flex items-center gap-1`,children:[(0,K.jsx)(n7,{label:`Mow`,busy:a,active:o===`mowing`,onClick:()=>s(n.startMowing),children:(0,K.jsx)(dt,{className:`h-3 w-3`})}),(0,K.jsx)(n7,{label:`Pause`,busy:a,active:o===`paused`,onClick:()=>s(n.pause),children:(0,K.jsx)(ct,{className:`h-3 w-3`})}),(0,K.jsx)(n7,{label:`Dock`,busy:a,active:o===`docked`,onClick:()=>s(n.dock),children:(0,K.jsx)(Ie,{className:`h-3.5 w-3.5`})}),r?.batteryLevel!=null&&(0,K.jsx)(`span`,{className:`ml-1`,children:(0,K.jsx)(t7,{level:r.batteryLevel})})]})}function i7({label:e,busy:t,active:n,onClick:r,children:i}){return(0,K.jsx)(`button`,{type:`button`,"aria-label":e,title:e,disabled:t,onClick:e=>{e.stopPropagation(),r()},className:Z(`inline-flex h-10 w-10 items-center justify-center rounded-md text-foreground-subtle hover:text-foreground hover:bg-surface-hover transition-colors`,n&&`bg-primary text-primary-foreground hover:bg-primary/90`,t&&`opacity-40 cursor-not-allowed`),children:i})}function a7({trpc:e,deviceId:t}){let{cap:n,slice:r,available:i}=J5(e,t);if(n===void 0)return null;let a=!i,o=r?.activity,s=q5(o),c=e=>{a||e===void 0||e({})};return(0,K.jsx)(`div`,{className:`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-4`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-6`,children:[(0,K.jsx)(Z5,{activity:o,batteryLevel:r?.batteryLevel??null}),(0,K.jsxs)(`div`,{className:`flex flex-col gap-3 flex-1`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:Z(`text-3xl font-semibold`,s.tone),children:s.label}),r?.batteryLevel!=null&&(0,K.jsx)(t7,{level:r.batteryLevel})]}),r?.progressPercent!=null&&(0,K.jsx)($5,{percent:r.progressPercent}),r?.currentCode!=null&&(0,K.jsx)(e7,{code:r.currentCode,label:r.currentCodeLabel,severity:r.severity}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(i7,{label:`Start mowing`,busy:a,active:o===`mowing`,onClick:()=>c(n.startMowing),children:(0,K.jsx)(dt,{className:`h-5 w-5`})}),(0,K.jsx)(i7,{label:`Pause`,busy:a,active:o===`paused`,onClick:()=>c(n.pause),children:(0,K.jsx)(ct,{className:`h-5 w-5`})}),(0,K.jsx)(i7,{label:`Dock`,busy:a,active:o===`docked`,onClick:()=>c(n.dock),children:(0,K.jsx)(Ie,{className:`h-5 w-5`})})]})]})]})})}function o7(e){switch(e){case`open`:return{label:`Open`,tone:`text-primary`};case`opening`:return{label:`Opening`,tone:`text-primary`};case`closing`:return{label:`Closing`,tone:`text-warning`};case`closed`:return{label:`Closed`,tone:`text-foreground-subtle`};case`stopped`:return{label:`Stopped`,tone:`text-warning`};case void 0:return{label:`Unknown`,tone:`text-foreground-subtle`}}}function s7(e,t){return KX({trpc:e,deviceId:t,cap:e=>e.valve,slice:e=>e.state.valve})}function c7(e){switch(e){case`accent`:return`bg-primary text-primary-foreground`;case`filled`:return`bg-primary/15 text-primary`;case`neutral`:return``}}function l7({label:e,busy:t,variant:n,onClick:r,children:i}){return(0,K.jsx)(`button`,{type:`button`,"aria-label":e,title:e,disabled:t,onClick:e=>{e.stopPropagation(),r()},className:Z(`inline-flex h-5 w-5 items-center justify-center rounded text-xs text-foreground-subtle hover:text-foreground hover:bg-surface-hover transition-colors`,c7(n),t&&`opacity-40 cursor-not-allowed`),children:i})}function u7({trpc:e,deviceId:t,optimistic:n}){let{cap:r,slice:i,available:a}=s7(e,t),{display:o,applyOptimistic:s}=h8(i,{enabled:n??!0});if(r===void 0)return null;let c=!a,l=o5(o?.state),u=(e,t)=>{c||!e||(t!==void 0&&s(t),e({}))};return(0,K.jsxs)(`div`,{className:`inline-flex items-center gap-1`,children:[(0,K.jsx)(l7,{label:`Open`,busy:c,variant:l.up,onClick:()=>u(r.open,{state:`opening`}),children:(0,K.jsx)(ce,{className:`h-3.5 w-3.5`})}),(0,K.jsx)(l7,{label:`Stop`,busy:c,variant:l.stop,onClick:()=>u(r.stop,{state:`stopped`}),children:(0,K.jsx)(Nt,{className:`h-3 w-3`})}),(0,K.jsx)(l7,{label:`Close`,busy:c,variant:l.down,onClick:()=>u(r.close,{state:`closing`}),children:(0,K.jsx)(ae,{className:`h-3.5 w-3.5`})}),o!==void 0&&o.position!==null&&(0,K.jsxs)(`span`,{className:`tabular-nums text-xs text-foreground-subtle ml-1`,children:[o.position,`%`]})]})}function d7(e){switch(e){case`open`:return{glow:`bg-primary/15`,accent:`text-primary`,flowing:!0,active:!1};case`opening`:return{glow:`bg-primary/10`,accent:`text-primary`,flowing:!0,active:!0};case`closing`:return{glow:`bg-warning/10`,accent:`text-warning`,flowing:!1,active:!0};case`closed`:return{glow:`bg-transparent`,accent:`text-foreground-subtle`,flowing:!1,active:!1};case`stopped`:return{glow:`bg-warning/10`,accent:`text-warning`,flowing:!1,active:!1};case void 0:return{glow:`bg-transparent`,accent:`text-foreground-subtle`,flowing:!1,active:!1}}}function f7(e){switch(e){case`open`:return 0;case`opening`:return 0;case`closed`:return 1;case`closing`:return 1;case`stopped`:return 1;case void 0:return 1}}function Hte({state:e,position:t,interactive:n,onSetPosition:r}){let i=d7(e),a=t===null?f7(e):1-t/100,o=41+a*8,s=-90*(1-a),c=(0,d.useRef)(null),l=(0,d.useRef)(!1),u=(0,d.useRef)(null),f=e=>{let n=t??0,r=c.current;if(r===null)return n;let i=r.getBoundingClientRect();if(i.height<=0)return n;let a=(e-i.top)/i.height,o=Math.round(100-a*100);return Math.min(100,Math.max(0,o))},p=e=>{if(r===void 0)return;let t=f(e);u.current!==t&&(u.current=t,r(t))},m=e=>{n&&(e.stopPropagation(),e.preventDefault(),l.current=!0,u.current=null,e.currentTarget.setPointerCapture(e.pointerId),p(e.clientY))},h=e=>{!n||!l.current||(e.stopPropagation(),p(e.clientY))},g=e=>{!n||!l.current||(e.stopPropagation(),l.current=!1,u.current=null,e.currentTarget.hasPointerCapture(e.pointerId)&&e.currentTarget.releasePointerCapture(e.pointerId))};return(0,K.jsxs)(`div`,{ref:c,"data-testid":`valve-graphic`,...n?{"aria-label":`Drag to set position`,role:`slider`,"aria-valuemin":0,"aria-valuemax":100,"aria-valuenow":t??0}:{"aria-hidden":`true`},onPointerDown:n?m:void 0,onPointerMove:n?h:void 0,onPointerUp:n?g:void 0,onPointerCancel:n?g:void 0,className:Z(`relative w-28 h-36 rounded border-2 border-border bg-gradient-to-b from-surface-hover to-surface overflow-hidden flex-shrink-0`,n&&`cursor-ns-resize touch-none select-none`),style:{boxShadow:`inset 0 0 0 2px rgba(255,255,255,.06)`},children:[(0,K.jsx)(`div`,{className:Z(`absolute inset-0 transition-colors duration-300`,i.glow)}),(0,K.jsx)(`div`,{className:Z(`absolute inset-0 flex items-center justify-center`,i.accent),"aria-hidden":`true`,children:(0,K.jsxs)(`svg`,{viewBox:`0 0 100 100`,className:`w-24 h-28`,fill:`none`,children:[(0,K.jsx)(`rect`,{x:`40`,y:`4`,width:`20`,height:`92`,rx:`3`,fill:`currentColor`,fillOpacity:`0.06`,stroke:`currentColor`,strokeWidth:`2.5`}),i.flowing&&(0,K.jsx)(`line`,{x1:`50`,y1:`8`,x2:`50`,y2:`92`,stroke:`currentColor`,strokeWidth:`4`,strokeLinecap:`round`,strokeDasharray:`4 8`,opacity:`0.5`,className:`animate-pulse`}),i.active&&(0,K.jsx)(`circle`,{cx:`50`,cy:`50`,r:`22`,stroke:`currentColor`,strokeWidth:`2`,opacity:`0.4`,className:`animate-ping`,style:{transformOrigin:`center`}}),(0,K.jsx)(`circle`,{cx:`50`,cy:`50`,r:`17`,fill:`currentColor`,fillOpacity:`0.12`,stroke:`currentColor`,strokeWidth:`2.5`}),(0,K.jsx)(`rect`,{x:`43`,y:o,width:`14`,height:`6`,rx:`1.5`,fill:`currentColor`,fillOpacity:`0.55`,className:`transition-all duration-200`}),(0,K.jsx)(`line`,{x1:`50`,y1:`33`,x2:`50`,y2:`22`,stroke:`currentColor`,strokeWidth:`2.5`,strokeLinecap:`round`}),(0,K.jsx)(`g`,{style:{transform:`rotate(${s}deg)`,transformOrigin:`50px 20px`,transition:`transform 200ms`},children:(0,K.jsx)(`rect`,{x:`34`,y:`17`,width:`32`,height:`6`,rx:`3`,fill:`currentColor`,fillOpacity:`0.7`})})]})})]})}function p7({label:e,busy:t,variant:n,onClick:r,children:i}){return(0,K.jsx)(`button`,{type:`button`,"aria-label":e,title:e,disabled:t,onClick:e=>{e.stopPropagation(),r()},className:Z(`inline-flex h-10 w-10 items-center justify-center rounded-md text-foreground-subtle hover:text-foreground hover:bg-surface-hover transition-colors`,c7(n),t&&`opacity-40 cursor-not-allowed`),children:i})}function Ute({trpc:e,deviceId:t,features:n,optimistic:r}){let{cap:i,slice:a,available:o}=s7(e,t),{display:s,applyOptimistic:c}=h8(a,{enabled:r??!0});if(i===void 0)return null;let l=!o,u=(n??[]).includes(uu.ValvePositionable),d=o5(s?.state),f=o7(s?.state),p=s?.position??null,m=p!==null,h=(e,t)=>{l||!e||(t!==void 0&&c(t),e({}))},g=e=>{l||(c({position:e}),i.setPosition({position:e}))};return(0,K.jsxs)(`div`,{className:`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-4`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-6`,children:[(0,K.jsx)(Hte,{state:s?.state,position:p,interactive:u&&m,onSetPosition:u&&m?g:void 0}),(0,K.jsxs)(`div`,{className:`flex flex-col gap-3 flex-1`,children:[m&&(0,K.jsxs)(`div`,{className:`flex items-baseline gap-1`,children:[(0,K.jsx)(`span`,{className:`text-3xl font-semibold tabular-nums text-foreground`,children:p}),(0,K.jsx)(`span`,{className:`text-base text-foreground-subtle`,children:`%`}),(0,K.jsx)(`span`,{className:`text-xs text-foreground-subtle ml-1`,children:`open`})]}),!m&&(0,K.jsx)(`div`,{className:`flex items-baseline gap-1`,children:(0,K.jsx)(`span`,{className:Z(`text-3xl font-semibold`,f.tone),children:f.label})}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(p7,{label:`Open`,busy:l,variant:d.up,onClick:()=>h(i.open,{state:`opening`}),children:(0,K.jsx)(ce,{className:`h-5 w-5`})}),(0,K.jsx)(p7,{label:`Stop`,busy:l,variant:d.stop,onClick:()=>h(i.stop,{state:`stopped`}),children:(0,K.jsx)(Nt,{className:`h-4 w-4`})}),(0,K.jsx)(p7,{label:`Close`,busy:l,variant:d.down,onClick:()=>h(i.close,{state:`closing`}),children:(0,K.jsx)(ae,{className:`h-5 w-5`})})]})]})]}),u&&(0,K.jsxs)(`label`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,K.jsx)(`span`,{className:`w-12 shrink-0`,children:`Position`}),(0,K.jsx)(`input`,{"aria-label":`Position`,type:`range`,min:0,max:100,step:1,value:p??0,disabled:l,className:`flex-1`,onChange:e=>{g(Number(e.target.value))}}),(0,K.jsxs)(`span`,{className:`w-8 text-right tabular-nums`,children:[p??`—`,`%`]})]}),!u&&m&&(0,K.jsxs)(`label`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,K.jsx)(`span`,{className:`w-12 shrink-0`,children:`Position`}),(0,K.jsx)(`input`,{"aria-label":`Position`,type:`range`,min:0,max:100,step:1,value:p,disabled:!0,readOnly:!0,className:`flex-1 opacity-60`}),(0,K.jsxs)(`span`,{className:`w-8 text-right tabular-nums`,children:[p,`%`]})]})]})}function Wte(e,t){switch(t){case`humidifying`:return{glow:`bg-primary/15`,accent:`text-primary`,misting:!0};case`drying`:return{glow:`bg-warning/10`,accent:`text-warning`,misting:!1};case`idle`:return{glow:`bg-transparent`,accent:`text-foreground-subtle`,misting:!1};case`off`:return{glow:`bg-transparent`,accent:`text-foreground-subtle`,misting:!1};default:return e?{glow:`bg-primary/10`,accent:`text-primary`,misting:!0}:{glow:`bg-transparent`,accent:`text-foreground-subtle`,misting:!1}}}function m7(e,t){return KX({trpc:e,deviceId:t,cap:e=>e.humidifier,slice:e=>e.state.humidifier})}function Gte({trpc:e,deviceId:t,optimistic:n}){let{cap:r,slice:i,available:a}=m7(e,t),{display:o,applyOptimistic:s}=h8(i,{enabled:n??!0});if(r===void 0)return null;let c=!a,l=o?.on??!1,u=()=>{c||(s({on:!l}),r.setOn({on:!l}))};return(0,K.jsxs)(`div`,{className:`inline-flex items-center gap-2`,children:[(0,K.jsx)(`button`,{type:`button`,"aria-label":l?`Turn off`:`Turn on`,title:l?`Turn off`:`Turn on`,disabled:c,onClick:e=>{e.stopPropagation(),u()},className:Z(`inline-flex h-5 w-5 items-center justify-center rounded text-xs transition-colors`,l?`bg-primary text-primary-foreground`:`text-foreground-subtle hover:text-foreground hover:bg-surface-hover`,c&&`opacity-40 cursor-not-allowed`),children:(0,K.jsx)(ft,{className:`h-3.5 w-3.5`})}),o!==void 0&&o.targetHumidity!==null&&(0,K.jsxs)(`span`,{className:`tabular-nums text-xs text-foreground-subtle`,children:[o.currentHumidity!==null&&(0,K.jsxs)(K.Fragment,{children:[o.currentHumidity,`%`,(0,K.jsx)(`span`,{className:`mx-0.5`,children:`→`})]}),o.targetHumidity,`%`]})]})}function Kte({fillPct:e,tint:t}){let n=82-Math.min(100,Math.max(0,e))/100*56,r=`humidifier-droplet-clip-${(0,d.useId)()}`;return(0,K.jsxs)(`div`,{"data-testid":`humidifier-graphic`,"aria-hidden":`true`,className:`relative w-28 h-36 rounded border-2 border-border bg-gradient-to-b from-surface-hover to-surface overflow-hidden flex-shrink-0`,style:{boxShadow:`inset 0 0 0 2px rgba(255,255,255,.06)`},children:[(0,K.jsx)(`div`,{className:Z(`absolute inset-0 transition-colors duration-300`,t.glow)}),(0,K.jsx)(`div`,{className:Z(`absolute inset-0 flex items-center justify-center`,t.accent),children:(0,K.jsxs)(`svg`,{viewBox:`0 0 100 100`,className:`w-24 h-28`,fill:`none`,children:[(0,K.jsx)(`defs`,{children:(0,K.jsx)(`clipPath`,{id:r,children:(0,K.jsx)(`path`,{d:`M50 26 C50 26 30 52 30 66 a20 20 0 0 0 40 0 C70 52 50 26 50 26 Z`})})}),t.misting&&(0,K.jsxs)(`g`,{className:`animate-pulse`,opacity:`0.55`,children:[(0,K.jsx)(`line`,{x1:`42`,y1:`20`,x2:`42`,y2:`8`,stroke:`currentColor`,strokeWidth:`3`,strokeLinecap:`round`,strokeDasharray:`3 5`}),(0,K.jsx)(`line`,{x1:`50`,y1:`18`,x2:`50`,y2:`4`,stroke:`currentColor`,strokeWidth:`3`,strokeLinecap:`round`,strokeDasharray:`3 5`}),(0,K.jsx)(`line`,{x1:`58`,y1:`20`,x2:`58`,y2:`8`,stroke:`currentColor`,strokeWidth:`3`,strokeLinecap:`round`,strokeDasharray:`3 5`})]}),(0,K.jsx)(`path`,{d:`M50 26 C50 26 30 52 30 66 a20 20 0 0 0 40 0 C70 52 50 26 50 26 Z`,fill:`currentColor`,fillOpacity:`0.08`,stroke:`currentColor`,strokeWidth:`2.5`}),(0,K.jsx)(`g`,{clipPath:`url(#${r})`,children:(0,K.jsx)(`rect`,{x:`28`,y:n,width:`44`,height:`60`,fill:`currentColor`,fillOpacity:`0.4`,className:`transition-all duration-300`})}),(0,K.jsx)(`circle`,{cx:`43`,cy:`56`,r:`3`,fill:`currentColor`,fillOpacity:`0.5`})]})})]})}function qte({trpc:e,deviceId:t,optimistic:n}){let{cap:r,slice:i,available:a}=m7(e,t),{display:o,applyOptimistic:s}=h8(i,{enabled:n??!0});if(r===void 0||o===void 0)return null;let c=!a,l=Wte(o.on,o.action),u=o.minHumidity??0,d=o.maxHumidity??100,f=o.targetHumidity,p=o.currentHumidity,m=p??f??0,h=()=>{c||(s({on:!o.on}),r.setOn({on:!o.on}))},g=e=>{c||(s({targetHumidity:e}),r.setTargetHumidity({humidity:e}))};return(0,K.jsxs)(`div`,{className:`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-4`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-6`,children:[(0,K.jsx)(Kte,{fillPct:m,tint:l}),(0,K.jsxs)(`div`,{className:`flex flex-col gap-3 flex-1`,children:[(0,K.jsxs)(`div`,{className:`flex items-baseline gap-1`,children:[(0,K.jsx)(`span`,{className:`text-3xl font-semibold tabular-nums text-foreground`,children:f===null?`—`:f}),(0,K.jsx)(`span`,{className:`text-base text-foreground-subtle`,children:`%`}),(0,K.jsx)(`span`,{className:`text-xs text-foreground-subtle ml-1`,children:`target`})]}),(0,K.jsxs)(`div`,{className:`text-xs text-foreground-subtle tabular-nums`,children:[`Current: `,p===null?`—`:`${p}%`,o.action!==null&&(0,K.jsxs)(`span`,{className:`ml-2 capitalize`,children:[`· `,o.action]})]}),(0,K.jsxs)(`button`,{type:`button`,"aria-label":o.on?`Turn off`:`Turn on`,disabled:c,onClick:e=>{e.stopPropagation(),h()},className:Z(`inline-flex w-fit items-center gap-2 rounded-md px-3 py-1.5 text-sm transition-colors`,o.on?`bg-primary text-primary-foreground`:`border border-border text-foreground-subtle hover:text-foreground hover:bg-surface-hover`,c&&`opacity-40 cursor-not-allowed`),children:[(0,K.jsx)(ft,{className:`h-4 w-4`}),o.on?`On`:`Off`]})]})]}),(0,K.jsxs)(`label`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,K.jsx)(`span`,{className:`w-12 shrink-0`,children:`Target`}),(0,K.jsx)(`input`,{"aria-label":`Target humidity`,type:`range`,min:u,max:d,step:1,value:f??u,disabled:c,className:`flex-1`,onChange:e=>{g(Number(e.target.value))}}),(0,K.jsxs)(`span`,{className:`w-8 text-right tabular-nums`,children:[f??`—`,`%`]})]}),o.availableModes.length>0&&(0,K.jsx)(`select`,{"aria-label":`Mode`,value:o.mode??``,disabled:c,onChange:e=>{e.stopPropagation();let t=o.availableModes.find(t=>t===e.target.value);!c&&t!==void 0&&(s({mode:t}),r.setMode({mode:t}))},className:Z(`w-full rounded border border-border bg-surface px-3 py-1.5 text-sm`,c&&`opacity-40 cursor-not-allowed`),children:o.availableModes.map(e=>(0,K.jsx)(`option`,{value:e,children:e},e))})]})}function Jte(e){switch(e){case`heating`:return{glow:`bg-warning/10`,accent:`text-warning`,heating:!0};case`idle`:return{glow:`bg-primary/10`,accent:`text-primary`,heating:!1};case`off`:return{glow:`bg-transparent`,accent:`text-foreground-subtle`,heating:!1}}}function Yte(e,t,n){return e===null||e===`off`?`off`:t!==null&&n!==null&&t<n?`heating`:`idle`}function h7(e,t){return KX({trpc:e,deviceId:t,cap:e=>e.waterHeater,slice:e=>e.state.waterHeater})}function Xte({trpc:e,deviceId:t,optimistic:n}){let{cap:r,slice:i}=h7(e,t),{display:a}=h8(i,{enabled:n??!0});return r===void 0||a===void 0?null:(0,K.jsxs)(`div`,{className:`inline-flex items-center gap-1.5 text-xs text-foreground-subtle`,children:[(0,K.jsxs)(`span`,{className:`tabular-nums`,children:[a.currentTemp!==null&&(0,K.jsxs)(K.Fragment,{children:[a.currentTemp,`°`,(0,K.jsx)(`span`,{className:`mx-0.5`,children:`→`})]}),a.targetTemp===null?`—`:`${a.targetTemp}°`]}),a.operationMode!==null&&(0,K.jsxs)(`span`,{className:`capitalize text-foreground-subtle/80`,children:[`· `,a.operationMode.replace(/_/g,` `)]})]})}function Zte({fillPct:e,tint:t}){let n=86-Math.min(100,Math.max(0,e))/100*68,r=`water-heater-tank-clip-${(0,d.useId)()}`;return(0,K.jsxs)(`div`,{"data-testid":`water-heater-graphic`,"aria-hidden":`true`,className:`relative w-28 h-36 rounded border-2 border-border bg-gradient-to-b from-surface-hover to-surface overflow-hidden flex-shrink-0`,style:{boxShadow:`inset 0 0 0 2px rgba(255,255,255,.06)`},children:[(0,K.jsx)(`div`,{className:Z(`absolute inset-0 transition-colors duration-300`,t.glow)}),(0,K.jsx)(`div`,{className:Z(`absolute inset-0 flex items-center justify-center`,t.accent),children:(0,K.jsxs)(`svg`,{viewBox:`0 0 100 100`,className:`w-24 h-28`,fill:`none`,children:[(0,K.jsx)(`defs`,{children:(0,K.jsx)(`clipPath`,{id:r,children:(0,K.jsx)(`rect`,{x:`30`,y:`18`,width:`40`,height:`68`,rx:`14`})})}),(0,K.jsx)(`g`,{clipPath:`url(#${r})`,children:(0,K.jsx)(`rect`,{x:`28`,y:n,width:`44`,height:`72`,fill:`currentColor`,fillOpacity:`0.32`,className:`transition-all duration-300`})}),(0,K.jsx)(`rect`,{x:`30`,y:`18`,width:`40`,height:`68`,rx:`14`,fill:`currentColor`,fillOpacity:`0.06`,stroke:`currentColor`,strokeWidth:`2.5`}),(0,K.jsx)(`line`,{x1:`50`,y1:`18`,x2:`50`,y2:`8`,stroke:`currentColor`,strokeWidth:`2.5`,strokeLinecap:`round`}),(0,K.jsx)(`rect`,{x:`40`,y:`6`,width:`20`,height:`5`,rx:`2`,fill:`currentColor`,fillOpacity:`0.6`}),(0,K.jsx)(`g`,{className:t.heating?`animate-pulse`:void 0,opacity:t.heating?.9:.35,children:(0,K.jsx)(`path`,{d:`M38 74 q4 -6 8 0 q4 6 8 0 q4 -6 8 0`,stroke:`currentColor`,strokeWidth:`3`,strokeLinecap:`round`,fill:`none`})}),(0,K.jsx)(`circle`,{cx:`62`,cy:`34`,r:`3.5`,stroke:`currentColor`,strokeWidth:`2`,fill:t.heating?`currentColor`:`none`,fillOpacity:`0.6`})]})})]})}function Qte({trpc:e,deviceId:t,optimistic:n}){let{cap:r,slice:i,available:a}=h7(e,t),{display:o,applyOptimistic:s}=h8(i,{enabled:n??!0});if(r===void 0||o===void 0)return null;let c=!a,l=Yte(o.operationMode,o.currentTemp,o.targetTemp),u=Jte(l),d=o.currentTemp,f=o.targetTemp,p=o.minTemp,m=o.maxTemp,h=d!==null&&f!==null&&f>0?Math.min(100,d/f*100):d!==null&&m!==null&&m>0?Math.min(100,d/m*100):50,g=e=>{let t=e;return p!==null&&(t=Math.max(p,t)),m!==null&&(t=Math.min(m,t)),t},_=e=>{if(c||f===null)return;let t=g(f+e);s({targetTemp:t}),r.setTargetTemp({temp:t})},v=()=>{c||o.away===null||(s({away:!o.away}),r.setAway({on:!o.away}))};return(0,K.jsxs)(`div`,{className:`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-4`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-6`,children:[(0,K.jsx)(Zte,{fillPct:h,tint:u}),(0,K.jsxs)(`div`,{className:`flex flex-col gap-3 flex-1`,children:[(0,K.jsxs)(`div`,{className:`flex items-baseline gap-1`,children:[(0,K.jsx)(`span`,{className:`text-3xl font-semibold tabular-nums text-foreground`,children:d===null?`—`:d}),(0,K.jsx)(`span`,{className:`text-base text-foreground-subtle`,children:`°`})]}),(0,K.jsxs)(`div`,{className:`text-xs text-foreground-subtle tabular-nums`,children:[`Target: `,f===null?`—`:`${f}°`,(0,K.jsxs)(`span`,{className:`ml-2 capitalize`,children:[`· `,l]})]}),f!==null&&(0,K.jsx)(`div`,{className:`w-[180px]`,children:(0,K.jsx)(X6,{value:f,unit:`°`,onDelta:_})})]})]}),o.availableModes.length>0&&(0,K.jsx)(`select`,{"aria-label":`Operation mode`,value:o.operationMode??``,disabled:c,onChange:e=>{e.stopPropagation();let t=o.availableModes.find(t=>t===e.target.value);!c&&t!==void 0&&(s({operationMode:t}),r.setOperationMode({mode:t}))},className:Z(`w-full rounded border border-border bg-surface px-3 py-1.5 text-sm`,c&&`opacity-40 cursor-not-allowed`),children:o.availableModes.map(e=>(0,K.jsx)(`option`,{value:e,children:e},e))}),o.away!==null&&(0,K.jsxs)(`button`,{type:`button`,"aria-label":o.away?`Disable away mode`:`Enable away mode`,disabled:c,onClick:e=>{e.stopPropagation(),v()},className:Z(`inline-flex w-fit items-center gap-2 rounded-md px-3 py-1.5 text-sm transition-colors`,o.away?`bg-primary text-primary-foreground`:`border border-border text-foreground-subtle hover:text-foreground hover:bg-surface-hover`,c&&`opacity-40 cursor-not-allowed`),children:[(0,K.jsx)(ft,{className:`h-4 w-4`}),`Away `,o.away?`on`:`off`]})]})}function g7(e){switch(e){case`sunny`:return{label:`Sunny`,glyph:`sun`};case`clear-night`:return{label:`Clear night`,glyph:`clear-night`};case`partlycloudy`:return{label:`Partly cloudy`,glyph:`partly-cloudy`};case`cloudy`:return{label:`Cloudy`,glyph:`cloudy`};case`rainy`:return{label:`Rainy`,glyph:`rain`};case`pouring`:return{label:`Pouring`,glyph:`rain`};case`snowy`:return{label:`Snowy`,glyph:`snow`};case`snowy-rainy`:return{label:`Sleet`,glyph:`snow`};case`lightning`:return{label:`Lightning`,glyph:`lightning`};case`lightning-rainy`:return{label:`Thunderstorm`,glyph:`lightning`};case`fog`:return{label:`Fog`,glyph:`fog`};case`windy`:return{label:`Windy`,glyph:`wind`};case`windy-variant`:return{label:`Windy`,glyph:`wind`};case`hail`:return{label:`Hail`,glyph:`hail`};case`exceptional`:return{label:`Exceptional`,glyph:`cloudy`};case null:return{label:`Unknown`,glyph:`cloudy`};default:return{label:e,glyph:`cloudy`}}}function _7(e){switch(e){case`sunny`:return{glow:`bg-warning/15`,accent:`text-warning`};case`clear-night`:return{glow:`bg-primary/10`,accent:`text-primary`};case`partlycloudy`:return{glow:`bg-warning/10`,accent:`text-warning`};case`cloudy`:return{glow:`bg-transparent`,accent:`text-foreground-subtle`};case`rainy`:case`pouring`:return{glow:`bg-primary/15`,accent:`text-primary`};case`snowy`:case`snowy-rainy`:return{glow:`bg-primary/10`,accent:`text-primary`};case`lightning`:case`lightning-rainy`:return{glow:`bg-warning/20`,accent:`text-warning`};case`fog`:return{glow:`bg-transparent`,accent:`text-foreground-subtle`};case`windy`:case`windy-variant`:return{glow:`bg-transparent`,accent:`text-foreground-subtle`};case`hail`:return{glow:`bg-primary/10`,accent:`text-primary`};default:return{glow:`bg-transparent`,accent:`text-foreground-subtle`}}}function $te(e){let t=`h-4 w-4`;switch(e){case`sun`:return(0,K.jsx)(Ft,{className:t});case`clear-night`:return(0,K.jsx)(et,{className:t});case`partly-cloudy`:return(0,K.jsx)(ge,{className:t});case`cloudy`:return(0,K.jsx)(_e,{className:t});case`rain`:return(0,K.jsx)(me,{className:t});case`snow`:return(0,K.jsx)(he,{className:t});case`lightning`:return(0,K.jsx)(pe,{className:t});case`fog`:return(0,K.jsx)(fe,{className:t});case`wind`:return(0,K.jsx)(Zt,{className:t});case`hail`:return(0,K.jsx)(he,{className:t});default:return null}}function v7(e,t){return KX({trpc:e,deviceId:t,cap:e=>e.weather,slice:e=>e.state.weather})}function ene(e,t){return e===null?`—`:`${Math.round(e)}${t??`°`}`}function tne({trpc:e,deviceId:t}){let{slice:n}=v7(e,t);if(n===void 0)return null;let r=g7(n.condition);return(0,K.jsxs)(`div`,{className:`inline-flex items-center gap-1.5 text-xs text-foreground-subtle`,children:[(0,K.jsx)(`span`,{className:Z(`inline-flex`,_7(n.condition).accent),title:r.label,"aria-label":r.label,children:$te(r.glyph)}),(0,K.jsx)(`span`,{className:`tabular-nums`,children:ene(n.temperature,n.temperatureUnit)})]})}function nne({glyph:e,tint:t}){let n=(0,d.useId)();return(0,K.jsxs)(`div`,{"data-testid":`weather-scene`,"aria-hidden":`true`,className:`relative w-28 h-36 rounded border-2 border-border bg-gradient-to-b from-surface-hover to-surface overflow-hidden flex-shrink-0`,style:{boxShadow:`inset 0 0 0 2px rgba(255,255,255,.06)`},children:[(0,K.jsx)(`div`,{className:Z(`absolute inset-0 transition-colors duration-300`,t.glow)}),(0,K.jsx)(`div`,{className:Z(`absolute inset-0 flex items-center justify-center`,t.accent),children:(0,K.jsx)(`svg`,{viewBox:`0 0 100 100`,className:`w-24 h-28`,fill:`none`,"data-glyph":e,children:rne(e,n)})})]})}function y7({cx:e,cy:t,scale:n=1}){return(0,K.jsx)(`g`,{transform:`translate(${e} ${t}) scale(${n})`,children:(0,K.jsx)(`path`,{d:`M-22 8 a13 13 0 0 1 4 -25 a16 16 0 0 1 30 4 a11 11 0 0 1 -2 21 Z`,fill:`currentColor`,fillOpacity:`0.12`,stroke:`currentColor`,strokeWidth:`2.5`,strokeLinejoin:`round`})})}function rne(e,t){switch(e){case`sun`:return(0,K.jsxs)(`g`,{children:[(0,K.jsx)(`circle`,{cx:`50`,cy:`48`,r:`16`,fill:`currentColor`,fillOpacity:`0.18`,stroke:`currentColor`,strokeWidth:`2.5`}),(0,K.jsx)(`g`,{stroke:`currentColor`,strokeWidth:`2.5`,strokeLinecap:`round`,children:[0,45,90,135,180,225,270,315].map(e=>{let n=e*Math.PI/180;return(0,K.jsx)(`line`,{x1:50+Math.cos(n)*22,y1:48+Math.sin(n)*22,x2:50+Math.cos(n)*30,y2:48+Math.sin(n)*30},`${t}-ray-${e}`)})})]});case`clear-night`:return(0,K.jsxs)(`g`,{children:[(0,K.jsx)(`path`,{d:`M62 30 a22 22 0 1 0 8 38 a18 18 0 0 1 -8 -38 Z`,fill:`currentColor`,fillOpacity:`0.18`,stroke:`currentColor`,strokeWidth:`2.5`}),(0,K.jsx)(`circle`,{cx:`34`,cy:`32`,r:`1.6`,fill:`currentColor`}),(0,K.jsx)(`circle`,{cx:`28`,cy:`48`,r:`1.2`,fill:`currentColor`}),(0,K.jsx)(`circle`,{cx:`40`,cy:`62`,r:`1.4`,fill:`currentColor`})]});case`partly-cloudy`:return(0,K.jsxs)(`g`,{children:[(0,K.jsx)(`circle`,{cx:`38`,cy:`38`,r:`12`,fill:`currentColor`,fillOpacity:`0.18`,stroke:`currentColor`,strokeWidth:`2.5`}),(0,K.jsx)(`g`,{stroke:`currentColor`,strokeWidth:`2.5`,strokeLinecap:`round`,children:[200,240,300].map(e=>{let n=e*Math.PI/180;return(0,K.jsx)(`line`,{x1:38+Math.cos(n)*16,y1:38+Math.sin(n)*16,x2:38+Math.cos(n)*22,y2:38+Math.sin(n)*22},`${t}-pcray-${e}`)})}),(0,K.jsx)(y7,{cx:58,cy:60})]});case`cloudy`:return(0,K.jsxs)(`g`,{children:[(0,K.jsx)(y7,{cx:40,cy:44,scale:.9}),(0,K.jsx)(y7,{cx:62,cy:58})]});case`rain`:return(0,K.jsxs)(`g`,{children:[(0,K.jsx)(y7,{cx:50,cy:42}),(0,K.jsxs)(`g`,{className:`animate-pulse`,stroke:`currentColor`,strokeWidth:`3`,strokeLinecap:`round`,opacity:`0.7`,children:[(0,K.jsx)(`line`,{x1:`38`,y1:`62`,x2:`34`,y2:`78`}),(0,K.jsx)(`line`,{x1:`50`,y1:`62`,x2:`46`,y2:`80`}),(0,K.jsx)(`line`,{x1:`62`,y1:`62`,x2:`58`,y2:`78`})]})]});case`snow`:return(0,K.jsxs)(`g`,{children:[(0,K.jsx)(y7,{cx:50,cy:42}),(0,K.jsxs)(`g`,{fill:`currentColor`,opacity:`0.8`,className:`animate-pulse`,children:[(0,K.jsx)(`circle`,{cx:`38`,cy:`70`,r:`2.5`}),(0,K.jsx)(`circle`,{cx:`50`,cy:`76`,r:`2.5`}),(0,K.jsx)(`circle`,{cx:`62`,cy:`70`,r:`2.5`})]})]});case`lightning`:return(0,K.jsxs)(`g`,{children:[(0,K.jsx)(y7,{cx:50,cy:40}),(0,K.jsx)(`path`,{d:`M52 58 L42 74 L50 74 L46 88 L62 68 L53 68 L58 58 Z`,fill:`currentColor`,fillOpacity:`0.85`,className:`animate-pulse`})]});case`fog`:return(0,K.jsxs)(`g`,{stroke:`currentColor`,strokeWidth:`3`,strokeLinecap:`round`,opacity:`0.6`,children:[(0,K.jsx)(`line`,{x1:`26`,y1:`40`,x2:`74`,y2:`40`}),(0,K.jsx)(`line`,{x1:`30`,y1:`52`,x2:`70`,y2:`52`}),(0,K.jsx)(`line`,{x1:`24`,y1:`64`,x2:`68`,y2:`64`}),(0,K.jsx)(`line`,{x1:`32`,y1:`76`,x2:`76`,y2:`76`})]});case`wind`:return(0,K.jsxs)(`g`,{stroke:`currentColor`,strokeWidth:`3`,strokeLinecap:`round`,fill:`none`,opacity:`0.75`,children:[(0,K.jsx)(`path`,{d:`M22 42 H60 a7 7 0 1 0 -7 -7`}),(0,K.jsx)(`path`,{d:`M22 56 H72 a7 7 0 1 1 -7 7`}),(0,K.jsx)(`path`,{d:`M22 70 H52 a6 6 0 1 0 -6 -6`})]});case`hail`:return(0,K.jsxs)(`g`,{children:[(0,K.jsx)(y7,{cx:50,cy:42}),(0,K.jsxs)(`g`,{fill:`currentColor`,opacity:`0.85`,className:`animate-pulse`,children:[(0,K.jsx)(`circle`,{cx:`40`,cy:`70`,r:`3`}),(0,K.jsx)(`circle`,{cx:`52`,cy:`78`,r:`3`}),(0,K.jsx)(`circle`,{cx:`62`,cy:`68`,r:`3`})]})]});default:return null}}function b7({icon:e,label:t,value:n}){return(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5 text-xs text-foreground-subtle`,title:t,children:[(0,K.jsx)(`span`,{className:`inline-flex text-foreground-subtle`,"aria-hidden":`true`,children:e}),(0,K.jsx)(`span`,{className:`tabular-nums text-foreground`,children:n})]})}function ine({trpc:e,deviceId:t}){let{slice:n}=v7(e,t);if(n===void 0)return null;let r=g7(n.condition),i=_7(n.condition),a=n.temperatureUnit??`°`;return(0,K.jsx)(`div`,{className:`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-4`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-6`,children:[(0,K.jsx)(nne,{glyph:r.glyph,tint:i}),(0,K.jsxs)(`div`,{className:`flex flex-col gap-3 flex-1`,children:[(0,K.jsxs)(`div`,{className:`flex items-baseline gap-1`,children:[(0,K.jsx)(`span`,{className:`text-3xl font-semibold tabular-nums text-foreground`,children:n.temperature===null?`—`:Math.round(n.temperature)}),(0,K.jsx)(`span`,{className:`text-base text-foreground-subtle`,children:a}),(0,K.jsx)(`span`,{className:`text-xs text-foreground-subtle ml-2 capitalize`,children:r.label})]}),(0,K.jsxs)(`div`,{className:`flex flex-col gap-1.5`,children:[n.humidity!==null&&(0,K.jsx)(b7,{icon:(0,K.jsx)(Te,{className:`h-3.5 w-3.5`}),label:`Humidity`,value:`${Math.round(n.humidity)}%`}),n.windSpeed!==null&&(0,K.jsx)(b7,{icon:n.windBearing===null?(0,K.jsx)(Zt,{className:`h-3.5 w-3.5`}):(0,K.jsx)(at,{className:`h-3.5 w-3.5`,style:{transform:`rotate(${n.windBearing}deg)`}}),label:`Wind`,value:`${Math.round(n.windSpeed)} ${n.windSpeedUnit??``}`.trim()}),n.pressure!==null&&(0,K.jsx)(b7,{icon:(0,K.jsx)(Pe,{className:`h-3.5 w-3.5`}),label:`Pressure`,value:`${Math.round(n.pressure)} ${n.pressureUnit??``}`.trim()})]})]})]})})}function x7(e,t){return KX({trpc:e,deviceId:t,cap:e=>e.image,slice:e=>e.state.image})}var S7=1,C7=6,w7=.5;function T7({url:e,alt:t,open:n,onOpenChange:r}){let[i,a]=(0,d.useState)(1);(0,d.useEffect)(()=>{n&&a(1)},[n,e]);let o=(0,d.useCallback)(()=>a(e=>Math.min(C7,e+w7)),[]),s=(0,d.useCallback)(()=>a(e=>Math.max(S7,e-w7)),[]),c=(0,d.useCallback)(()=>a(1),[]);return(0,K.jsx)(iZ,{open:n,onOpenChange:r,children:(0,K.jsxs)(oZ,{width:`lg`,className:`max-w-5xl p-6`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-2 mb-3`,children:[(0,K.jsx)(`span`,{className:`truncate text-sm font-semibold text-foreground`,children:t}),(0,K.jsxs)(`div`,{className:`flex items-center gap-1`,children:[(0,K.jsx)(E7,{label:`Zoom out`,disabled:i<=S7,onClick:s,children:(0,K.jsx)(nn,{className:`h-4 w-4`})}),(0,K.jsxs)(`span`,{className:`tabular-nums text-xs text-foreground-subtle w-10 text-center`,children:[Math.round(i*100),`%`]}),(0,K.jsx)(E7,{label:`Zoom in`,disabled:i>=C7,onClick:o,children:(0,K.jsx)(tn,{className:`h-4 w-4`})}),(0,K.jsx)(E7,{label:`Reset zoom`,disabled:i===1,onClick:c,children:(0,K.jsx)(ht,{className:`h-4 w-4`})}),(0,K.jsx)(E7,{label:`Close`,onClick:()=>r(!1),children:(0,K.jsx)($t,{className:`h-4 w-4`})})]})]}),(0,K.jsx)(`div`,{className:`max-h-[78vh] overflow-auto rounded border border-border bg-gradient-to-b from-surface-hover to-surface p-6`,children:(0,K.jsx)(`img`,{src:e,alt:t,style:{width:`${i*100}%`,maxWidth:`none`},className:`mx-auto block h-auto transition-[width] duration-150`})})]})})}function E7({label:e,disabled:t,onClick:n,children:r}){return(0,K.jsx)(`button`,{type:`button`,"aria-label":e,title:e,disabled:t,onClick:n,className:`inline-flex h-7 w-7 items-center justify-center rounded text-foreground-subtle hover:text-foreground hover:bg-surface-hover transition-colors disabled:opacity-40 disabled:cursor-not-allowed`,children:r})}function ane({trpc:e,deviceId:t}){let{slice:n}=x7(e,t),[r,i]=(0,d.useState)(!1);if(n===void 0)return null;let a=n.url;return a===null?(0,K.jsx)(`span`,{className:`inline-flex h-7 w-7 items-center justify-center rounded bg-surface-hover text-foreground-subtle`,title:`No image`,children:(0,K.jsx)(Le,{className:`h-4 w-4`,"aria-hidden":`true`})}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`button`,{type:`button`,title:`View image`,onClick:e=>{e.stopPropagation(),i(!0)},className:`inline-flex items-center justify-center rounded ring-offset-1 hover:ring-2 hover:ring-primary/50 transition`,children:(0,K.jsx)(`img`,{src:a,alt:`Image`,className:`h-7 w-7 rounded object-cover`})}),(0,K.jsx)(T7,{url:a,alt:`Image`,open:r,onOpenChange:i})]})}function one({trpc:e,deviceId:t,deviceName:n}){let{slice:r}=x7(e,t),[i,a]=(0,d.useState)(!1),[o,s]=(0,d.useState)(!1),c=r?.url??null;return(0,d.useEffect)(()=>{a(!1)},[c]),r===void 0?null:(0,K.jsxs)(`div`,{className:`flex flex-col items-stretch gap-3 rounded-lg border border-border bg-surface p-4`,children:[(0,K.jsx)(`div`,{className:`flex w-full items-center justify-center overflow-hidden rounded border-2 border-border bg-gradient-to-b from-surface-hover to-surface`,children:r.url!==null&&!i?(0,K.jsx)(`button`,{type:`button`,title:`View image`,onClick:()=>s(!0),className:`flex w-full cursor-zoom-in items-center justify-center`,children:(0,K.jsx)(`img`,{src:r.url,alt:n??`Image`,onError:()=>a(!0),className:`max-h-72 w-full object-contain`})}):(0,K.jsxs)(`div`,{"data-testid":`image-placeholder`,className:`flex h-48 w-full flex-col items-center justify-center gap-2 text-foreground-subtle`,children:[(0,K.jsx)(Le,{className:`h-8 w-8`,"aria-hidden":`true`}),(0,K.jsx)(`span`,{className:`text-xs`,children:`No image`})]})}),c!==null&&!i&&(0,K.jsx)(T7,{url:c,alt:n??`Image`,open:o,onOpenChange:s})]})}var D7=20,O7=9,k7=`#f59e0b`,A7=`#ef4444`;function j7(e){return Math.min(200,Math.max(4,e))}var sne=`
|
|
96
|
+
@keyframes pf-eat { 0%,100%{transform:translateY(0)} 50%{transform:translateY(2px)} }
|
|
97
|
+
@keyframes pf-pulse { 0%,100%{opacity:.55} 50%{opacity:1} }
|
|
98
|
+
@media (prefers-reduced-motion: reduce) {
|
|
99
|
+
.pf-eat, .pf-pulse { animation: none !important; }
|
|
100
|
+
}
|
|
101
|
+
`;function M7({trpc:e,deviceId:t,layout:n,optimistic:r}){let{cap:i,slice:a,available:o}=KX({trpc:e,deviceId:t,cap:e=>e.petFeeder,slice:e=>e.state.petFeeder}),{display:s,applyOptimistic:c}=h8(a,{enabled:r??!0}),[l,u]=(0,d.useState)(D7),[f,p]=(0,d.useState)(D7),[m,h]=(0,d.useState)(D7);if(i===void 0||s===void 0)return null;let g=!o,v=s.error&&s.error!==`no_error`?s.error:null,ee=s.status===`offline`,te=s.status===`on_batteries`;if(n===`compact`)return(0,K.jsxs)(`div`,{className:`inline-flex items-center gap-2`,children:[(v!==null||ee)&&(0,K.jsx)(`span`,{className:`inline-flex items-center text-destructive`,title:v??`Offline`,"aria-label":v??`Offline`,children:ee?(0,K.jsx)(Yt,{className:`h-3.5 w-3.5`,"aria-hidden":!0}):(0,K.jsx)(Vt,{className:`h-3.5 w-3.5`,"aria-hidden":!0})}),(0,K.jsxs)(`span`,{className:Z(`inline-flex items-center gap-1 text-xs tabular-nums font-medium`,s.lowFood?`text-destructive`:`text-foreground`),children:[(0,K.jsx)(Wt,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),s.foodLevel??`—`,(0,K.jsx)(`span`,{className:`text-foreground-subtle`,children:`g`})]}),s.batteryPower!==null&&(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-0.5 text-xs tabular-nums text-foreground-subtle`,children:[(0,K.jsx)(y,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),s.batteryPower,`%`]}),(0,K.jsxs)(`button`,{type:`button`,"aria-label":`Feed now`,disabled:g||s.feeding,onClick:e=>{e.stopPropagation(),!(g||s.feeding)&&(c({feeding:!0}),i.feed({grams:D7}))},className:Z(`inline-flex items-center gap-1 rounded-md border border-border bg-surface px-2 py-1 text-xs font-medium text-foreground transition-colors hover:bg-surface-hover`,(g||s.feeding)&&`opacity-40 cursor-not-allowed`),children:[(0,K.jsx)(lt,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),`Feed`]})]});let S=e=>{g||s.feeding||(c({feeding:!0}),i.feed({grams:j7(e)}))};return(0,K.jsxs)(`div`,{className:`relative flex flex-col items-stretch gap-3 overflow-hidden rounded-lg border border-border bg-surface p-4`,children:[(0,K.jsx)(`style`,{children:sne}),(0,K.jsxs)(`div`,{className:`flex items-center gap-4 rounded-lg border border-border/50 bg-surface-subtle/40 p-3`,children:[(0,K.jsx)(cne,{grams:s.foodLevel,low:s.lowFood,eating:s.feeding}),(0,K.jsxs)(`div`,{className:`flex min-w-0 flex-1 flex-col gap-1.5`,children:[(0,K.jsxs)(`div`,{className:`flex items-baseline gap-1`,children:[(0,K.jsx)(`span`,{className:`text-3xl font-bold leading-none tabular-nums`,style:{color:s.lowFood?A7:k7},children:s.foodLevel??`—`}),(0,K.jsx)(`span`,{className:`text-sm text-foreground-subtle`,children:`g in bowl`})]}),(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-x-3 gap-y-1 text-xs text-foreground-subtle`,children:[s.batteryPower!==null&&(0,K.jsx)(P7,{icon:(0,K.jsx)(y,{className:`h-3.5 w-3.5`}),label:`${s.batteryPower}%`}),s.desiccantLeftDays!==null&&(0,K.jsx)(P7,{icon:(0,K.jsx)(Zt,{className:`h-3.5 w-3.5`}),label:`${s.desiccantLeftDays}d desiccant`}),te&&(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-1 font-medium text-amber-500`,children:[(0,K.jsx)(b,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),`On battery`]}),ee?(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-1 font-medium text-destructive`,children:[(0,K.jsx)(Yt,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),`Offline`]}):s.feeding?(0,K.jsxs)(`span`,{className:`pf-pulse inline-flex items-center gap-1 font-medium text-amber-500`,style:{animation:`pf-pulse 1.2s ease-in-out infinite`},children:[(0,K.jsx)(lt,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),`Feeding…`]}):s.lowFood?(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-1 font-medium text-destructive`,children:[(0,K.jsx)(_,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),`Low food`]}):(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-1 font-medium text-success`,children:[(0,K.jsx)(ue,{className:`h-3.5 w-3.5`,"aria-hidden":!0}),`Ready`]})]})]})]}),v!==null&&(0,K.jsxs)(`div`,{className:`flex items-start gap-2 rounded-lg border border-destructive/40 bg-destructive/10 px-3 py-2 text-xs font-medium text-destructive`,children:[(0,K.jsx)(Vt,{className:`mt-px h-4 w-4 shrink-0`,"aria-hidden":!0}),(0,K.jsx)(`span`,{className:`min-w-0 break-words`,children:v})]}),s.isDualHopper?(0,K.jsxs)(`div`,{className:`grid grid-cols-2 gap-2`,children:[(0,K.jsx)(F7,{label:`Hopper 1`,grams:f,busy:g||s.feeding,onGrams:p,onFeed:()=>{g||s.feeding||(c({feeding:!0}),i.feed({hopper1:j7(f)}))}}),(0,K.jsx)(F7,{label:`Hopper 2`,grams:m,busy:g||s.feeding,onGrams:h,onFeed:()=>{g||s.feeding||(c({feeding:!0}),i.feed({hopper2:j7(m)}))}})]}):(0,K.jsx)(F7,{label:`Manual feed`,grams:l,busy:g||s.feeding,onGrams:u,onFeed:()=>S(l)}),(0,K.jsxs)(`div`,{className:`grid grid-cols-3 gap-2`,children:[(0,K.jsx)(L7,{icon:(0,K.jsx)(lt,{className:`h-4 w-4`}),label:`Call pet`,busy:g,onClick:()=>void i.callPet({})}),(0,K.jsx)(L7,{icon:(0,K.jsx)(mt,{className:`h-4 w-4`}),label:`Reset desiccant`,busy:g,onClick:()=>void i.resetDesiccant({})}),(0,K.jsx)(L7,{icon:(0,K.jsx)(Wt,{className:`h-4 w-4`}),label:`Mark refilled`,busy:g,onClick:()=>void i.markFoodReplenished({})})]}),s.feeding&&(0,K.jsxs)(`button`,{type:`button`,disabled:g,onClick:()=>{c({feeding:!1}),i.cancelFeed({})},className:Z(`flex items-center justify-center gap-2 rounded-lg border border-destructive/40 bg-destructive/10 px-2 py-1.5 text-xs font-medium text-destructive transition-colors hover:bg-destructive/20`,g&&`opacity-40 cursor-not-allowed`),children:[(0,K.jsx)(_,{className:`h-4 w-4`,"aria-hidden":!0}),`Cancel feed`]}),(0,K.jsx)(N7,{label:`Settings`,children:(0,K.jsxs)(`div`,{className:`grid grid-cols-3 gap-2`,children:[(0,K.jsx)(R7,{icon:(0,K.jsx)(Ke,{className:`h-4 w-4`}),label:`Child lock`,on:s.childLock,busy:g,onToggle:e=>{c({childLock:e}),i.setChildLock({on:e})}}),(0,K.jsx)(R7,{icon:(0,K.jsx)(Ve,{className:`h-4 w-4`}),label:`Light`,on:s.indicatorLight,busy:g,onToggle:e=>{c({indicatorLight:e}),i.setIndicatorLight({on:e})}}),(0,K.jsx)(R7,{icon:(0,K.jsx)(x,{className:`h-4 w-4`}),label:`Feed sound`,on:s.feedSound,busy:g,onToggle:e=>{c({feedSound:e}),i.setFeedSound({on:e})}})]})}),(0,K.jsx)(N7,{label:`Volume`,children:(0,K.jsxs)(`div`,{className:`flex items-center gap-3`,children:[(0,K.jsx)(Kt,{className:`h-4 w-4 shrink-0 text-foreground-subtle`,"aria-hidden":!0}),(0,K.jsx)(I7,{label:`Decrease volume`,symbol:`−`,disabled:g||s.volume<=0,onClick:()=>{let e=Math.max(0,s.volume-1);c({volume:e}),i.setVolume({level:e})}}),(0,K.jsx)(`span`,{className:`w-6 text-center text-lg font-semibold tabular-nums text-foreground`,children:s.volume}),(0,K.jsx)(I7,{label:`Increase volume`,symbol:`+`,disabled:g||s.volume>=O7,onClick:()=>{let e=Math.min(O7,s.volume+1);c({volume:e}),i.setVolume({level:e})}})]})})]})}function N7({label:e,children:t}){return(0,K.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,K.jsx)(`span`,{className:`text-[10px] font-semibold uppercase tracking-wider text-foreground-subtle`,children:e}),t]})}function P7({icon:e,label:t}){return(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-1 tabular-nums`,children:[(0,K.jsx)(`span`,{className:`text-foreground-subtle`,children:e}),t]})}function cne({grams:e,low:t,eating:n}){let r=Math.min(1,Math.max(0,(e??0)/200)),i=t?A7:k7,a=52-r*24;return(0,K.jsxs)(`svg`,{width:72,height:72,viewBox:`0 0 72 72`,role:`img`,"aria-label":e===null?`Food level unknown`:`${e} grams in bowl`,className:`shrink-0`,children:[(0,K.jsx)(`defs`,{children:(0,K.jsx)(`clipPath`,{id:`pf-bowl-clip`,children:(0,K.jsx)(`path`,{d:`M14 26 H58 L52 54 A6 6 0 0 1 46 58 H26 A6 6 0 0 1 20 54 Z`})})}),(0,K.jsxs)(`g`,{clipPath:`url(#pf-bowl-clip)`,className:n?`pf-eat`:void 0,style:n?{animation:`pf-eat 1.1s ease-in-out infinite`}:void 0,children:[(0,K.jsx)(`rect`,{x:`14`,y:a,width:`44`,height:`34`,fill:i,opacity:.9}),(0,K.jsx)(`ellipse`,{cx:`36`,cy:a,rx:`22`,ry:`4`,fill:i})]}),(0,K.jsx)(`path`,{d:`M14 26 H58 L52 54 A6 6 0 0 1 46 58 H26 A6 6 0 0 1 20 54 Z`,fill:`none`,stroke:`currentColor`,strokeWidth:`2.5`,className:`text-border`}),(0,K.jsx)(`rect`,{x:`11`,y:`22`,width:`50`,height:`6`,rx:`3`,fill:`currentColor`,className:`text-border`})]})}function F7({label:e,grams:t,busy:n,onGrams:r,onFeed:i}){return(0,K.jsxs)(`div`,{className:`flex flex-col gap-1`,children:[(0,K.jsx)(`span`,{className:`text-[10px] font-semibold uppercase tracking-wider text-foreground-subtle`,children:e}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-1 rounded-lg border border-border/60 bg-surface-subtle px-1 py-1`,children:[(0,K.jsx)(I7,{label:`Decrease ${e} portion`,symbol:`−`,disabled:n||t<=4,onClick:()=>r(j7(t-1))}),(0,K.jsxs)(`span`,{className:`w-12 text-center text-sm font-semibold tabular-nums text-foreground`,children:[t,(0,K.jsx)(`span`,{className:`text-xs text-foreground-subtle`,children:`g`})]}),(0,K.jsx)(I7,{label:`Increase ${e} portion`,symbol:`+`,disabled:n||t>=200,onClick:()=>r(j7(t+1))})]}),(0,K.jsxs)(`button`,{type:`button`,disabled:n,onClick:i,className:Z(`flex flex-1 items-center justify-center gap-1.5 rounded-lg border border-transparent bg-amber-400 px-2 py-2 text-sm font-semibold text-amber-950 transition-colors hover:bg-amber-300 active:scale-95`,n&&`opacity-40 cursor-not-allowed`),children:[(0,K.jsx)(lt,{className:`h-4 w-4`,"aria-hidden":!0}),`Feed`]})]})]})}function I7({label:e,symbol:t,disabled:n,onClick:r}){return(0,K.jsx)(`button`,{type:`button`,"aria-label":e,disabled:n,onClick:r,className:Z(`flex h-7 w-7 shrink-0 items-center justify-center rounded-full border border-border bg-surface text-base leading-none text-foreground-subtle transition-colors hover:bg-surface-hover hover:text-foreground active:scale-95`,n&&`opacity-40 cursor-not-allowed`),children:t})}function L7({icon:e,label:t,busy:n,onClick:r}){return(0,K.jsxs)(`button`,{type:`button`,disabled:n,onClick:r,className:Z(`flex flex-col items-center justify-center gap-1 rounded-lg border border-border/60 bg-surface-subtle px-1 py-2 text-[11px] font-medium text-foreground-subtle transition-colors hover:bg-surface-hover hover:text-foreground`,n&&`opacity-40 cursor-not-allowed`),children:[e,t]})}function R7({icon:e,label:t,on:n,busy:r,onToggle:i}){return(0,K.jsxs)(`button`,{type:`button`,"aria-label":t,"aria-pressed":n,disabled:r,onClick:()=>{r||i(!n)},className:Z(`flex flex-col items-center justify-center gap-1 rounded-lg border px-1 py-2 text-[11px] font-medium transition-colors`,n?`border-transparent bg-indigo-400 text-indigo-950 shadow-sm`:`border-border/60 bg-surface-subtle text-foreground-subtle hover:bg-surface-hover hover:text-foreground`,r&&`opacity-40 cursor-not-allowed`),children:[e,t]})}function lne({trpc:e,deviceId:t,features:n,optimistic:r}){return(0,K.jsx)(M7,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r})}function une({trpc:e,deviceId:t,features:n,optimistic:r}){return(0,K.jsx)(M7,{trpc:e,deviceId:t,features:n,layout:`full`,optimistic:r})}var z7={cool:`Cool`,heat:`Heat`,auto:`Auto`,heat_cool:`Heat·Cool`,fan_only:`Fan`,dry:`Dry`,off:`Off`},dne={cool:At,heat:Ae,auto:jt,heat_cool:Lt,fan_only:Oe,dry:Te,off:ft},fne={heat:`#f59e0b`,cool:`#60a5fa`,auto:`#c084fc`,heat_cool:`#e879f9`,fan_only:`#94a3b8`,dry:`#22d3ee`,off:`#a1a1aa`},pne=16,mne=30;function B7(e){let t=e.replace(/_/g,` `);return t.charAt(0).toUpperCase()+t.slice(1)}function hne(e){switch(e){case`turbo`:return en;case`quiet`:return ke;case`sleep`:return et;case`eco`:return Be;case`8c_heat`:return At;case`none`:return _;default:return jt}}function gne(e){switch(e){case`high`:return 1;case`medium_high`:return 1.3;case`medium`:return 1.6;case`medium_low`:return 1.9;case`low`:return 2.2;default:return 1.8}}var _ne=`
|
|
102
|
+
@keyframes acv-fall { 0%{transform:translateY(-1.75rem);opacity:0} 18%{opacity:.7} 82%{opacity:.7} 100%{transform:translateY(7.5rem);opacity:0} }
|
|
103
|
+
@keyframes acv-rise { 0%{transform:translateY(7.5rem);opacity:0} 18%{opacity:.7} 82%{opacity:.7} 100%{transform:translateY(-1.75rem);opacity:0} }
|
|
104
|
+
@keyframes acv-sway { 0%,100%{transform:translateX(-9%)} 50%{transform:translateX(9%)} }
|
|
105
|
+
@keyframes acv-swing-h { 0%,100%{transform:translateX(-22%)} 50%{transform:translateX(22%)} }
|
|
106
|
+
@keyframes acv-swing-v { 0%,100%{transform:translateY(-22%)} 50%{transform:translateY(22%)} }
|
|
107
|
+
@keyframes acv-spin { to { transform:rotate(360deg) } }
|
|
108
|
+
@keyframes acv-glow { 0%,100%{opacity:.35;transform:scale(1)} 50%{opacity:.6;transform:scale(1.06)} }
|
|
109
|
+
@media (prefers-reduced-motion: reduce) {
|
|
110
|
+
.acv-streak, .acv-fan, .acv-sway-wrap, .acv-glow, .acv-swing { animation: none !important; }
|
|
111
|
+
}
|
|
112
|
+
`;function V7({trpc:e,deviceId:t,layout:n,optimistic:r}){let{cap:i,slice:a,available:o}=KX({trpc:e,deviceId:t,cap:e=>e.climateControl,slice:e=>e.state.climateControl}),{display:s,applyOptimistic:c}=h8(a,{enabled:r??!0});if(i===void 0||s===void 0)return null;let l=!o;if(n===`compact`)return(0,K.jsxs)(`div`,{"data-mode":s.mode,className:`inline-flex items-center gap-1`,children:[(0,K.jsx)(`span`,{className:Z(`text-xs tabular-nums font-medium`,S8[s.mode]),children:s.target===null?s.currentTemp===null?null:(0,K.jsxs)(`span`,{className:`text-foreground-subtle`,children:[s.currentTemp,`°`]}):(0,K.jsxs)(K.Fragment,{children:[s.target,`°`,s.currentTemp!==null&&(0,K.jsxs)(`span`,{className:`text-foreground-subtle font-normal`,children:[` `,`(`,s.currentTemp,`°)`]})]})}),s.target!==null&&(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`button`,{type:`button`,"aria-label":`Decrease target`,disabled:l,onClick:e=>{if(e.stopPropagation(),!l&&s.target!==null){let e=s.target-1;c({target:e}),i.setTarget({target:e})}},className:Z(`inline-flex h-5 w-5 items-center justify-center rounded text-foreground-subtle hover:text-foreground hover:bg-surface-hover transition-colors text-xs`,l&&`opacity-40 cursor-not-allowed`),children:`−`}),(0,K.jsx)(`button`,{type:`button`,"aria-label":`Increase target`,disabled:l,onClick:e=>{if(e.stopPropagation(),!l&&s.target!==null){let e=s.target+1;c({target:e}),i.setTarget({target:e})}},className:Z(`inline-flex h-5 w-5 items-center justify-center rounded text-foreground-subtle hover:text-foreground hover:bg-surface-hover transition-colors text-xs`,l&&`opacity-40 cursor-not-allowed`),children:`+`})]}),(0,K.jsx)(`select`,{"aria-label":`Mode`,value:s.mode,disabled:l,onChange:e=>{e.stopPropagation();let t=s.availableModes.find(t=>t===e.target.value);!l&&t&&(c({mode:t}),i.setMode({mode:t}))},className:Z(`bg-transparent px-0.5 text-xs text-foreground-subtle hover:text-foreground cursor-pointer`,l&&`opacity-40 cursor-not-allowed`),children:s.availableModes.map(e=>(0,K.jsx)(`option`,{value:e,children:z7[e]},e))})]});let u=fne[s.mode],d=s.mode!==`off`,f=hne(s.preset),p=s.preset===`turbo`,m=Math.max(.55,gne(s.fanMode)*(p?.6:1)),h=s.swingVertical!==null,g=s.swingHorizontal!==null,_=d&&(s.swingVertical===!0||s.swingHorizontal===!0);return(0,K.jsxs)(`div`,{"data-mode":s.mode,className:Z(`relative flex flex-col items-stretch gap-2.5 overflow-hidden rounded-lg border p-3 transition-colors`,x8[s.mode]),children:[(0,K.jsx)(`style`,{children:_ne}),(0,K.jsxs)(`div`,{className:`relative z-10 flex flex-col items-center justify-center gap-1 overflow-hidden rounded-lg border border-border/50 bg-surface/30 px-3 py-3`,children:[(0,K.jsx)(`div`,{className:`pointer-events-none absolute inset-0 opacity-60`,children:(0,K.jsx)(bne,{mode:s.mode,accent:u,periodSec:m,swaying:_})}),(0,K.jsx)(`div`,{className:`pointer-events-none absolute inset-0 bg-gradient-to-b from-surface/50 via-transparent to-surface/50`}),d&&(0,K.jsx)(`span`,{"aria-hidden":!0,className:`acv-glow pointer-events-none absolute left-1/2 top-1/2 h-16 w-16 -translate-x-1/2 -translate-y-1/2 rounded-full blur-2xl`,style:{background:u,animation:`acv-glow 3.2s ease-in-out infinite`}}),(0,K.jsxs)(`div`,{className:`relative z-10 flex items-center gap-1.5 text-[11px] font-semibold uppercase tracking-wide`,style:{color:u},children:[(0,K.jsx)(H7,{mode:s.mode,className:`h-3.5 w-3.5`}),z7[s.mode],s.currentTemp!==null&&(0,K.jsxs)(`span`,{className:`normal-case text-foreground-subtle`,children:[`· `,s.currentTemp,`° now`]}),s.currentHumidity!==null&&(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-0.5 normal-case text-foreground-subtle`,children:[(0,K.jsx)(Te,{className:`h-3 w-3`}),s.currentHumidity,`%`]})]}),s.target===null?(0,K.jsxs)(`div`,{className:`relative z-10 flex items-baseline gap-0.5`,children:[(0,K.jsx)(`span`,{className:`text-4xl font-bold leading-none tabular-nums text-foreground`,children:s.currentTemp??`—`}),(0,K.jsx)(`span`,{className:`text-lg text-foreground-subtle`,children:`°`})]}):(0,K.jsxs)(K.Fragment,{children:[(0,K.jsxs)(`div`,{className:`relative z-10 flex items-center gap-3`,children:[(0,K.jsx)(W7,{label:`Decrease target`,symbol:`−`,disabled:l,onClick:()=>{if(l||s.target===null)return;let e=s.target-1;c({target:e}),i.setTarget({target:e})}}),(0,K.jsxs)(`div`,{className:`flex items-baseline gap-0.5`,children:[(0,K.jsx)(`span`,{className:`text-4xl font-bold leading-none tabular-nums`,style:{color:u},children:s.target}),(0,K.jsx)(`span`,{className:`text-lg text-foreground-subtle`,children:`°`})]}),(0,K.jsx)(W7,{label:`Increase target`,symbol:`+`,disabled:l,onClick:()=>{if(l||s.target===null)return;let e=s.target+1;c({target:e}),i.setTarget({target:e})}})]}),(0,K.jsx)(`div`,{className:`relative z-10 w-36`,children:(0,K.jsx)(yne,{value:s.target,min:pne,max:mne,accent:u})})]})]}),(0,K.jsxs)(`div`,{className:`relative z-10 grid grid-cols-3 gap-2`,children:[(0,K.jsx)(U7,{label:`Mode`,icon:(0,K.jsx)(`span`,{style:{color:u},className:`flex`,children:(0,K.jsx)(H7,{mode:s.mode,className:`h-4 w-4`})}),value:s.mode,options:s.availableModes.map(e=>({value:e,label:z7[e]})),disabled:l,onChange:e=>{let t=s.availableModes.find(t=>t===e);t&&(c({mode:t}),i.setMode({mode:t}))}}),s.availableFanModes.length>0&&(0,K.jsx)(U7,{label:`Fan`,icon:(0,K.jsx)(Zt,{className:`h-4 w-4 text-sky-500`}),value:s.fanMode,options:s.availableFanModes.map(e=>({value:e,label:B7(e)})),disabled:l,onChange:e=>{c({fanMode:e}),i.setFanMode({fanMode:e})}}),s.availablePresets.length>0&&(0,K.jsx)(U7,{label:`Preset`,icon:(0,K.jsx)(f,{className:`h-4 w-4 text-emerald-500`}),value:s.preset,options:s.availablePresets.map(e=>({value:e,label:B7(e)})),disabled:l,onChange:e=>{c({preset:e}),i.setPreset({preset:e})}})]}),(h||g)&&(0,K.jsx)(vne,{label:`Swing`,children:(0,K.jsxs)(`div`,{className:`grid grid-cols-2 gap-1`,children:[h&&(0,K.jsx)(G7,{axis:`vertical`,on:s.swingVertical??!1,busy:l,onToggle:e=>{c({swingVertical:e}),i.setSwingVertical({on:e})}}),g&&(0,K.jsx)(G7,{axis:`horizontal`,on:s.swingHorizontal??!1,busy:l,onToggle:e=>{c({swingHorizontal:e}),i.setSwingHorizontal({on:e})}})]})})]})}function vne({label:e,children:t}){return(0,K.jsxs)(`div`,{className:`relative z-10 flex flex-col gap-1`,children:[(0,K.jsx)(`span`,{className:`text-[10px] font-semibold uppercase tracking-wider text-foreground-subtle`,children:e}),t]})}function H7({mode:e,className:t}){let n=dne[e];return(0,K.jsx)(n,{className:t,"aria-hidden":!0})}function U7({label:e,icon:t,value:n,options:r,disabled:i,onChange:a}){return(0,K.jsxs)(`div`,{className:`flex min-w-0 flex-col gap-1`,children:[(0,K.jsx)(`span`,{className:`text-[10px] font-semibold uppercase tracking-wider text-foreground-subtle`,children:e}),(0,K.jsxs)(`div`,{className:Z(`flex items-center gap-1 overflow-hidden rounded-lg border border-border/60 bg-surface-subtle px-1.5 py-1.5`,i&&`opacity-40`),children:[(0,K.jsx)(`span`,{className:`flex shrink-0`,children:t}),(0,K.jsx)(`select`,{"aria-label":e,value:n,disabled:i,onChange:e=>{e.stopPropagation(),i||a(e.target.value)},className:`min-w-0 flex-1 cursor-pointer appearance-none truncate bg-transparent text-xs font-medium text-foreground outline-none`,children:r.map(e=>(0,K.jsx)(`option`,{value:e.value,children:e.label},e.value))}),(0,K.jsx)(ae,{className:`h-3 w-3 shrink-0 text-foreground-subtle`})]})]})}function W7({label:e,symbol:t,disabled:n,onClick:r}){return(0,K.jsx)(`button`,{type:`button`,"aria-label":e,disabled:n,onClick:r,className:Z(`flex h-8 w-8 shrink-0 items-center justify-center rounded-full border border-border bg-surface text-lg leading-none text-foreground-subtle transition-colors hover:bg-surface-hover hover:text-foreground active:scale-95`,n&&`opacity-40 cursor-not-allowed`),children:t})}function yne({value:e,min:t,max:n,accent:r}){let i=`${Math.min(1,Math.max(0,(e-t)/(n-t)))*100}%`;return(0,K.jsxs)(`div`,{className:`mt-2 w-full`,children:[(0,K.jsxs)(`div`,{className:`relative h-1.5 w-full rounded-full bg-surface-subtle`,children:[(0,K.jsx)(`div`,{className:`absolute inset-y-0 left-0 rounded-full`,style:{width:i,background:r}}),(0,K.jsx)(`div`,{className:`absolute top-1/2 h-3 w-3 -translate-x-1/2 -translate-y-1/2 rounded-full border-2 border-surface shadow`,style:{left:i,background:r}})]}),(0,K.jsxs)(`div`,{className:`mt-0.5 flex justify-between text-[9px] tabular-nums text-foreground-subtle`,children:[(0,K.jsxs)(`span`,{children:[t,`°`]}),(0,K.jsxs)(`span`,{children:[n,`°`]})]})]})}function bne({mode:e,accent:t,periodSec:n,swaying:r}){let i=[0,1,2,3,4,5],a=e===`heat`,o=e===`dry`;return(0,K.jsx)(`div`,{"aria-hidden":!0,className:`absolute inset-0 overflow-hidden`,children:e===`off`?(0,K.jsx)(`div`,{className:`flex h-full items-center justify-center gap-2 opacity-30`,children:i.map(e=>(0,K.jsx)(`span`,{className:`h-8 w-1 rounded-full bg-foreground-subtle opacity-40`},e))}):e===`fan_only`?(0,K.jsx)(`div`,{className:`flex h-full items-center justify-center`,children:(0,K.jsx)(xne,{color:t,periodSec:Math.max(.5,n*.7),size:56})}):(0,K.jsx)(`div`,{className:Z(`acv-sway-wrap absolute inset-0`,r&&`acv-sway`),style:r?{animation:`acv-sway 2.6s ease-in-out infinite`}:void 0,children:i.map(e=>(0,K.jsx)(`span`,{className:`acv-streak absolute rounded-full`,style:{left:`${8+e*15}%`,width:o?`0.4rem`:`0.3rem`,height:o?`0.4rem`:`1.9rem`,background:t,boxShadow:`0 0 6px ${t}`,animationName:a?`acv-rise`:`acv-fall`,animationTimingFunction:`linear`,animationIterationCount:`infinite`,animationDuration:`${n}s`,animationDelay:`${e%3*(n/3)+e*.05}s`}},e))})})}function xne({color:e,periodSec:t,size:n}){return(0,K.jsxs)(`svg`,{width:n,height:n,viewBox:`0 0 100 100`,className:`acv-fan`,style:{animation:`acv-spin ${t}s linear infinite`,transformOrigin:`50% 50%`},"aria-hidden":!0,children:[[0,120,240].map(t=>(0,K.jsx)(`path`,{d:`M50 50 C 58 30, 78 26, 84 12 C 66 20, 54 34, 50 50 Z`,fill:e,opacity:.85,transform:`rotate(${t} 50 50)`},t)),(0,K.jsx)(`circle`,{cx:`50`,cy:`50`,r:`7`,fill:e})]})}function G7({axis:e,on:t,busy:n,onToggle:r}){let i=e===`vertical`?`Vertical`:`Horizontal`,a=e===`vertical`?rt:nt,o=e===`vertical`?`acv-swing-v`:`acv-swing-h`;return(0,K.jsxs)(`button`,{type:`button`,"aria-label":`${i} swing`,"aria-pressed":t,disabled:n,onClick:()=>{n||r(!t)},className:Z(`flex items-center justify-center gap-2 rounded-lg border px-2 py-1.5 text-xs font-medium transition-colors`,t?`border-transparent bg-indigo-400 text-indigo-950 shadow-sm`:`border-border/60 bg-surface-subtle text-foreground-subtle hover:bg-surface-hover hover:text-foreground`,n&&`opacity-40 cursor-not-allowed`),children:[(0,K.jsx)(a,{className:`acv-swing h-4 w-4`,"aria-hidden":!0,style:t?{animation:`${o} 1.4s ease-in-out infinite`}:void 0}),i]})}var Sne=5,Cne=35;function K7(e,t,n){return n<=t?0:Math.min(1,Math.max(0,(e-t)/(n-t)))}function q7(e,t,n){return Math.round(t+e*(n-t))}var J7=176,Y7=76,X7=2*Math.PI*Y7,Z7=270/360*X7,Q7=J7/2-Y7-10;function $7(e){let t=J7/2,n=J7/2,r=X7-Z7,i=e.mode===`band`?(()=>{let t=e.band.from*Z7,n=Math.max(0,(e.band.to-e.band.from)*Z7);return{dasharray:`${n} ${X7-n}`,dashoffset:-t}})():(()=>{let t=e.fraction*Z7;return{dasharray:`${t} ${X7-t}`,dashoffset:void 0}})();return(0,K.jsxs)(`svg`,{width:J7,height:J7,viewBox:`0 0 ${J7} ${J7}`,"aria-hidden":`true`,className:`absolute inset-0`,style:{transform:`rotate(135deg)`},children:[(0,K.jsx)(`circle`,{cx:t,cy:n,r:Y7,fill:`none`,stroke:`var(--color-border)`,strokeWidth:12,strokeDasharray:`${Z7} ${r}`,strokeLinecap:`round`}),(0,K.jsx)(`circle`,{cx:t,cy:n,r:Y7,fill:`none`,stroke:e.color,strokeWidth:12,strokeDasharray:i.dasharray,...i.dashoffset===void 0?{}:{strokeDashoffset:i.dashoffset},strokeLinecap:`round`})]})}var wne={heat:`#f59e0b`,cool:`#60a5fa`,auto:`#c084fc`,heat_cool:`#e879f9`,fan_only:`#94a3b8`,dry:`#22d3ee`,off:`#d4d4d8`};function Tne({trpc:e,deviceId:t,features:n,optimistic:r}){let{cap:i,slice:a,available:o}=KX({trpc:e,deviceId:t,cap:e=>e.climateControl,slice:e=>e.state.climateControl}),{display:s,applyOptimistic:c}=h8(a,{enabled:r??!0});if(i===void 0||s===void 0)return null;let l=!o,u=wne[s.mode],d=s.mode===`heat_cool`||s.targetLow!==null&&s.targetHigh!==null,f=Sne,p=Cne,m=!d&&s.target!==null?K7(s.target,f,p):0,h=d&&s.targetLow!==null?K7(s.targetLow,f,p):0,g=d&&s.targetHigh!==null?K7(s.targetHigh,f,p):0;return(0,K.jsxs)(`div`,{"data-mode":s.mode,className:Z(`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-4 transition-colors`,x8[s.mode]),children:[(0,K.jsxs)(`div`,{className:`flex flex-col items-center gap-3`,children:[(0,K.jsxs)(`div`,{className:`relative`,style:{width:J7,height:J7},children:[d?(0,K.jsx)($7,{mode:`band`,band:{from:h,to:g},color:u}):(0,K.jsx)($7,{mode:`fill`,fraction:m,color:u}),d?(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`div`,{"data-testid":`arc-knob`,children:(0,K.jsx)(n8,{fraction:h,color:u,knobTopPx:Q7,onDragFraction:e=>{if(l||s.targetHigh===null)return;let t=Math.min(q7(e,f,p),s.targetHigh);c({targetLow:t}),i.setTargetRange({targetLow:t,targetHigh:s.targetHigh})}})}),(0,K.jsx)(`div`,{"data-testid":`arc-knob`,children:(0,K.jsx)(n8,{fraction:g,color:u,knobTopPx:Q7,onDragFraction:e=>{if(l||s.targetLow===null)return;let t=Math.max(q7(e,f,p),s.targetLow);c({targetHigh:t}),i.setTargetRange({targetLow:s.targetLow,targetHigh:t})}})})]}):(0,K.jsx)(`div`,{"data-testid":`arc-knob`,children:(0,K.jsx)(n8,{fraction:m,color:u,knobTopPx:Q7,onDragFraction:e=>{if(l)return;let t=q7(e,f,p);c({target:t}),i.setTarget({target:t})}})}),(0,K.jsxs)(`div`,{className:`absolute inset-0 flex flex-col items-center justify-center gap-0.5 pointer-events-none`,children:[(0,K.jsxs)(`div`,{"data-testid":`current-temp`,className:`text-4xl font-bold tabular-nums text-foreground leading-none`,children:[s.currentTemp===null?`—`:s.currentTemp,(0,K.jsx)(`span`,{className:`text-lg text-foreground-subtle font-normal ml-0.5`,children:`°`})]}),!d&&s.target!==null&&(0,K.jsxs)(`div`,{className:`text-xs font-semibold`,style:{color:u},children:[`set `,s.target,`°`]}),d&&s.targetLow!==null&&s.targetHigh!==null&&(0,K.jsxs)(`div`,{className:`text-xs font-semibold`,style:{color:u},children:[s.targetLow,`° – `,s.targetHigh,`°`]})]})]}),!d&&s.target!==null&&(0,K.jsx)(`div`,{className:`w-[200px]`,children:(0,K.jsx)(X6,{value:`${s.target}°`,onDelta:e=>{if(l||s.target===null)return;let t=s.target+e;c({target:t}),i.setTarget({target:t})}})})]}),(0,K.jsx)(`select`,{"aria-label":`Mode`,value:s.mode,disabled:l,onChange:e=>{e.stopPropagation();let t=e.target.value;!l&&t&&(c({mode:s.availableModes.find(e=>e===t)??s.mode}),i.setMode({mode:s.availableModes.find(e=>e===t)??s.mode}))},className:Z(`w-full rounded border border-border bg-surface px-3 py-1.5 text-sm`,l&&`opacity-40 cursor-not-allowed`),children:s.availableModes.map(e=>(0,K.jsx)(`option`,{value:e,children:e},e))})]})}function Ene(e){return e===`locked`||e===`locking`}function e9(e){return e===`jammed`}var Dne={locked:{colorClass:`border-success/30 bg-success/10 text-success`,icon:`locked`},locking:{colorClass:`border-success/30 bg-success/10 text-success`,icon:`locked`},unlocked:{colorClass:`border-warning/30 bg-warning/10 text-warning`,icon:`open`},unlocking:{colorClass:`border-warning/30 bg-warning/10 text-warning`,icon:`open`},jammed:{colorClass:`border-danger/30 bg-danger/10 text-danger`,icon:`locked`}};function One({state:e}){let t=Dne[e];return(0,K.jsx)(`div`,{"data-testid":`lock-glyph`,"data-state":e,className:Z(`flex h-16 w-16 items-center justify-center rounded-full border-2`,t.colorClass),children:t.icon===`locked`?(0,K.jsx)(Ke,{className:`h-8 w-8`,"aria-hidden":`true`}):(0,K.jsx)(Ge,{className:`h-8 w-8`,"aria-hidden":`true`})})}function kne({state:e}){return(0,K.jsx)(`span`,{className:Z(`text-sm font-medium capitalize`,e9(e)?`text-danger`:`text-foreground-muted`),children:e})}function Ane({busy:e,onOpen:t}){return(0,K.jsxs)(`button`,{type:`button`,"aria-label":`Open (unlatch)`,title:`Open (unlatch)`,disabled:e,onClick:e=>{e.stopPropagation(),t()},className:Z(`inline-flex items-center gap-1.5 rounded-md border border-border px-3 py-1.5 text-xs font-medium`,`text-foreground-muted hover:bg-surface-hover transition-colors`,e&&`opacity-40 cursor-not-allowed`),children:[(0,K.jsx)(Se,{className:`h-3.5 w-3.5`,"aria-hidden":`true`}),`Open`]})}function jne({trpc:e,deviceId:t,features:n,optimistic:r}){let{cap:i,slice:a,available:o}=KX({trpc:e,deviceId:t,cap:e=>e.lockControl,slice:e=>e.state.lockControl}),{display:s,applyOptimistic:c}=h8(a,{enabled:r??!0});if(i===void 0||s===void 0)return null;let l=Ene(s.state),u=e9(s.state)||!o,d=n?.includes(uu.LockOpen)===!0,f=()=>{u||(l?(c({state:`unlocking`}),i.unlock({})):(c({state:`locking`}),i.lock({})))},p=()=>{u||i.open({})},m=l?`Unlock`:`Lock`;return(0,K.jsxs)(`div`,{className:`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-4`,children:[(0,K.jsxs)(`div`,{className:`flex flex-col items-center gap-2`,children:[(0,K.jsx)(One,{state:s.state}),(0,K.jsx)(kne,{state:s.state})]}),(0,K.jsx)(`div`,{className:Z(u&&`pointer-events-none opacity-40`),children:(0,K.jsx)(Z6,{on:l,targetLabel:m,onConfirm:f})}),d&&(0,K.jsx)(`div`,{className:`flex justify-center`,children:(0,K.jsx)(Ane,{busy:u,onOpen:p})})]})}var t9=500,n9=150,Mne=`linear-gradient(90deg, #9ec9ff, #ffffff, #ffb24d)`;function Nne(e,t,n){return n<=t?0:Math.min(1,Math.max(0,(e-t)/(n-t)))}function Pne(e){return Nne(e,n9,t9)}var Fne=`#f4b740`,Ine=`#d4d4d8`;function Lne({trpc:e,deviceId:t,features:n,optimistic:r}){let i=KX({trpc:e,deviceId:t,cap:e=>e.switch,slice:e=>e.state.switch}),a=KX({trpc:e,deviceId:t,cap:e=>e.brightness,slice:e=>e.state.brightness}),o=KX({trpc:e,deviceId:t,cap:e=>e.color,slice:e=>e.state.color}),s=h8(i.slice,{enabled:r??!0}),c=h8(a.slice,{enabled:r??!0}),l=h8(o.slice,{enabled:r??!0});if(i.cap===void 0||s.display===void 0)return null;let u=s.display.on===!0,d=!i.available,f=c.display?.percentage??0,p=!a.available,m=u?f/100:0,h=u?Fne:Ine,g=(n?.includes(uu.LightColorMired)??!1)&&o.cap!==void 0,_=l.display?.mireds,v=!o.available;return(0,K.jsxs)(`div`,{className:`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-4`,children:[(0,K.jsxs)(`div`,{className:`flex flex-col items-center gap-3`,children:[(0,K.jsxs)(l8,{fraction:m,color:h,children:[(0,K.jsxs)(`div`,{"data-testid":`brightness-readout`,className:`text-3xl font-bold tabular-nums text-foreground leading-none`,children:[f,(0,K.jsx)(`span`,{className:`text-base text-foreground-subtle font-normal ml-0.5`,children:`%`})]}),(0,K.jsx)(Ve,{className:`h-5 w-5 text-foreground-subtle`,"aria-hidden":`true`})]}),a.cap!==void 0&&(0,K.jsxs)(`label`,{className:`flex w-full items-center gap-2 text-xs text-foreground-subtle`,children:[(0,K.jsx)(`span`,{className:`w-16`,children:`Brightness`}),(0,K.jsx)(`input`,{"aria-label":`Brightness`,type:`range`,min:0,max:100,step:1,className:`flex-1`,value:f,disabled:p||!u,onChange:e=>{let t=Number(e.target.value);c.applyOptimistic({percentage:t}),p||a.cap?.setBrightness({percentage:t})}}),(0,K.jsxs)(`span`,{className:`tabular-nums w-9 text-right`,children:[f,`%`]})]})]}),(0,K.jsxs)(`div`,{className:`flex items-center justify-between`,children:[(0,K.jsx)(`span`,{className:`text-sm font-medium text-foreground-muted`,children:u?`On`:`Off`}),(0,K.jsx)(u8,{on:u,busy:d,onToggle:()=>{if(d)return;let e=!u;s.applyOptimistic({on:e}),i.cap?.setState({on:e})}})]}),g&&(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,"data-testid":`color-temp-strip`,children:[(0,K.jsx)(Lt,{className:`h-4 w-4 text-foreground-subtle`,"aria-hidden":`true`}),(0,K.jsxs)(`label`,{className:`flex-1`,children:[(0,K.jsx)(`span`,{className:`sr-only`,children:`Colour temperature`}),(0,K.jsx)(`input`,{"aria-label":`Colour temperature`,type:`range`,min:n9,max:t9,step:1,className:`w-full`,value:_??t9,disabled:v||!u,onChange:e=>{let t=Number(e.target.value);l.applyOptimistic({mode:`mired`,mireds:t}),v||o.cap?.setColor({color:{mode:`mired`,mireds:t}})}}),(0,K.jsx)(`div`,{className:`pointer-events-none mt-1`,children:(0,K.jsx)(r8,{fraction:_===void 0?.5:Pne(_),color:Mne})})]})]})]})}var Rne=`#3aa6a0`,zne=`#d4d4d8`;function Bne({trpc:e,deviceId:t,features:n,optimistic:r}){let i=KX({trpc:e,deviceId:t,cap:e=>e.switch,slice:e=>e.state.switch}),a=KX({trpc:e,deviceId:t,cap:e=>e.fanControl,slice:e=>e.state.fanControl}),o=h8(i.slice,{enabled:r??!0}),s=h8(a.slice,{enabled:r??!0});if(i.cap===void 0||o.display===void 0)return null;let c=o.display.on===!0,l=!i.available,u=s.display?.percentage??0,d=!a.available,f=c?u/100:0,p=c?Rne:zne,m=n?.includes(uu.FanSpeed)??!1,h=(n?.includes(uu.FanOscillating)??!1)&&a.cap!==void 0,g=s.display?.availablePresets??[],_=(n?.includes(uu.FanPreset)??!1)&&a.cap!==void 0&&g.length>0,v=s.display?.preset??``,y=s.display?.oscillating===!0,b=()=>{if(l)return;let e=!c;o.applyOptimistic({on:e}),i.cap?.setState({on:e})},x=()=>{if(d)return;let e=!y;s.applyOptimistic({oscillating:e}),a.cap?.setOscillating({oscillating:e})},ee=e=>{if(d)return;let t=s.display;if(t===void 0)return;let n=t.percentageStep!==void 0&&t.percentageStep>0?t.percentageStep:1,r=Math.min(100,Math.max(0,Math.round(e*100/n)*n));s.applyOptimistic({percentage:r}),a.cap?.setPercentage({percentage:r})},te=e=>{d||e===``||(s.applyOptimistic({preset:e}),a.cap?.setPreset({preset:e}))};return(0,K.jsxs)(`div`,{className:`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-4`,children:[(0,K.jsx)(`div`,{className:`flex flex-col items-center gap-3`,children:m?(0,K.jsxs)(l8,{fraction:f,color:p,onDragFraction:ee,children:[(0,K.jsxs)(`div`,{"data-testid":`speed-readout`,className:`text-3xl font-bold tabular-nums text-foreground leading-none`,children:[u,(0,K.jsx)(`span`,{className:`text-base text-foreground-subtle font-normal ml-0.5`,children:`%`})]}),(0,K.jsx)(Oe,{className:`h-5 w-5 text-foreground-subtle`,"aria-hidden":`true`})]}):(0,K.jsx)(`div`,{"data-testid":`fan-onoff-icon`,className:`flex h-[150px] w-[150px] items-center justify-center`,children:(0,K.jsx)(Oe,{className:`h-16 w-16`,style:{color:p},"aria-hidden":`true`})})}),_&&(0,K.jsx)(`div`,{className:`flex justify-center`,children:(0,K.jsxs)(`label`,{className:`flex items-center gap-2 text-xs text-foreground-subtle`,children:[(0,K.jsx)(`span`,{children:`Preset`}),(0,K.jsxs)(`select`,{"aria-label":`Fan preset`,value:v,disabled:d,onChange:e=>{e.stopPropagation(),te(e.target.value)},className:Z(`bg-surface border border-border rounded px-1 py-0.5`,d&&`opacity-40 cursor-not-allowed`),children:[(0,K.jsx)(`option`,{value:``,disabled:!0,children:`—`}),g.map(e=>(0,K.jsx)(`option`,{value:e,children:e},e))]})]})}),(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-2`,children:[h?(0,K.jsxs)(`button`,{type:`button`,"aria-label":`Oscillate`,"aria-pressed":y,disabled:d,onClick:e=>{e.stopPropagation(),x()},className:Z(`inline-flex items-center gap-1.5 rounded-md border px-3 py-1.5 text-xs font-medium transition-colors`,y?`border-success/50 bg-success/10 text-success`:`border-border text-foreground-muted hover:bg-surface-hover`,d&&`opacity-40 cursor-not-allowed`),children:[(0,K.jsx)(mt,{className:`h-3.5 w-3.5`,"aria-hidden":`true`}),`Oscillate`]}):(0,K.jsx)(`span`,{className:`text-sm font-medium text-foreground-muted`,children:c?`On`:`Off`}),(0,K.jsx)(u8,{on:c,busy:l,onToggle:b})]})]})}function Vne({trpc:e,deviceId:t,optimistic:n}){let{cap:r,slice:i,available:a}=KX({trpc:e,deviceId:t,cap:e=>e.switch,slice:e=>e.state.switch}),{display:o,applyOptimistic:s}=h8(i,{enabled:n??!0});if(r===void 0||o===void 0)return null;let c=o.on===!0,l=!a;return(0,K.jsxs)(`div`,{className:`flex flex-col items-center gap-4 rounded-lg border border-border bg-surface p-6`,children:[(0,K.jsx)(`div`,{"data-testid":`switch-glyph`,"data-state":c?`on`:`off`,className:Z(`flex h-16 w-16 items-center justify-center rounded-full border-2 transition-colors`,c?`border-success/30 bg-success/10 text-success`:`border-border bg-surface-subtle text-foreground-subtle`),children:(0,K.jsx)(ft,{className:`h-8 w-8`,"aria-hidden":`true`})}),(0,K.jsx)(`span`,{className:`text-sm font-medium text-foreground-muted`,children:c?`On`:`Off`}),(0,K.jsx)(u8,{on:c,busy:l,onToggle:()=>{if(l)return;let e=!c;s({on:e}),r.setState({on:e})}})]})}function Hne(e){return e===`playing`||e===`buffering`?`pause`:`play`}function Une(e,t){return e===null||t===null||t<=0?0:Math.min(1,Math.max(0,e/t))}function r9(e){if(e===null)return`--:--`;let t=Math.floor(e/1e3);return`${Math.floor(t/60)}:${(t%60).toString().padStart(2,`0`)}`}function Wne({title:e,subtitle:t}){return(0,K.jsxs)(`div`,{className:`flex flex-col items-center gap-1 text-center`,children:[(0,K.jsx)(it,{className:`h-6 w-6 text-foreground-subtle`,"aria-hidden":`true`}),(0,K.jsx)(`span`,{className:`text-base font-semibold text-foreground line-clamp-1`,children:e??`Nothing playing`}),t&&(0,K.jsx)(`span`,{className:`text-xs text-foreground-subtle line-clamp-1`,children:t})]})}function i9({label:e,busy:t,onPress:n,children:r,primary:i}){return(0,K.jsx)(`button`,{type:`button`,"aria-label":e,title:e,disabled:t,onClick:e=>{e.stopPropagation(),t||n()},className:Z(`inline-flex items-center justify-center rounded-full transition-colors`,i?`h-12 w-12 bg-primary text-primary-foreground hover:bg-primary/90 shadow-md`:`h-10 w-10 text-foreground-muted hover:bg-surface-hover`,t&&`opacity-40 cursor-not-allowed`),children:r})}function Gne({trpc:e,deviceId:t,features:n,optimistic:r}){let{cap:i,slice:a,available:o}=KX({trpc:e,deviceId:t,cap:e=>e.mediaPlayer,slice:e=>e.state.mediaPlayer}),{display:s,applyOptimistic:c}=h8(a,{enabled:r??!0});if(i===void 0||s===void 0)return null;let l=!o,u=Hne(s.state),d=(n?.includes(uu.MediaPlayerSeek)??!1)&&s.durationMs!==null&&s.durationMs>0,f=n?.includes(uu.MediaPlayerNext)??!1,p=n?.includes(uu.MediaPlayerPrevious)??!1,m=(n?.includes(uu.MediaPlayerVolume)??!1)&&s.volumeLevel!==null,h=()=>{l||(u===`play`?(c({state:`playing`}),i.play({})):(c({state:`paused`}),i.pause({})))},g=s.currentMedia?.artist??s.currentMedia?.album??null,_=Une(s.positionMs,s.durationMs),v=s.volumeLevel??0;return(0,K.jsxs)(`div`,{className:`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-6`,children:[(0,K.jsx)(Wne,{title:s.currentMedia?.title??null,subtitle:g}),d&&(0,K.jsxs)(`div`,{"data-testid":`media-seek`,className:`flex flex-col gap-1`,children:[(0,K.jsxs)(`label`,{className:`relative block`,children:[(0,K.jsx)(`span`,{className:`sr-only`,children:`Seek`}),(0,K.jsx)(`input`,{"aria-label":`Seek`,type:`range`,min:0,max:s.durationMs??0,step:1e3,className:`absolute inset-0 h-4 w-full cursor-pointer opacity-0`,value:s.positionMs??0,disabled:l,onChange:e=>{if(l)return;let t=Number(e.target.value);c({positionMs:t}),i.seek({positionMs:t})}}),(0,K.jsx)(`div`,{className:`pointer-events-none`,children:(0,K.jsx)(r8,{fraction:_})})]}),(0,K.jsxs)(`div`,{className:`flex justify-between text-[11px] tabular-nums text-foreground-subtle`,children:[(0,K.jsx)(`span`,{children:r9(s.positionMs)}),(0,K.jsx)(`span`,{children:r9(s.durationMs)})]})]}),(0,K.jsxs)(`div`,{className:`flex items-center justify-center gap-4`,children:[p&&(0,K.jsx)(i9,{label:`Previous`,busy:l,onPress:()=>void i.previous({}),children:(0,K.jsx)(Et,{className:`h-5 w-5`,"aria-hidden":`true`})}),(0,K.jsx)(i9,{label:u===`play`?`Play`:`Pause`,busy:l,onPress:h,primary:!0,children:u===`play`?(0,K.jsx)(dt,{className:`h-6 w-6`,"aria-hidden":`true`}):(0,K.jsx)(ct,{className:`h-6 w-6`,"aria-hidden":`true`})}),f&&(0,K.jsx)(i9,{label:`Next`,busy:l,onPress:()=>void i.next({}),children:(0,K.jsx)(Dt,{className:`h-5 w-5`,"aria-hidden":`true`})})]}),m&&(0,K.jsxs)(`div`,{"data-testid":`media-volume`,className:`flex items-center gap-2`,children:[(0,K.jsx)(`button`,{type:`button`,"aria-label":s.isMuted===!0?`Unmute`:`Mute`,title:s.isMuted===!0?`Unmute`:`Mute`,disabled:l,onClick:e=>{if(e.stopPropagation(),l||s.isMuted===null)return;let t=!s.isMuted;c({isMuted:t}),i.setMute({muted:t})},className:Z(`inline-flex h-7 w-7 items-center justify-center rounded text-foreground-subtle hover:text-foreground hover:bg-surface-hover transition-colors`,l&&`opacity-40 cursor-not-allowed`),children:s.isMuted===!0?(0,K.jsx)(qt,{className:`h-4 w-4`,"aria-hidden":`true`}):(0,K.jsx)(Kt,{className:`h-4 w-4`,"aria-hidden":`true`})}),(0,K.jsxs)(`label`,{className:`relative block flex-1`,children:[(0,K.jsx)(`span`,{className:`sr-only`,children:`Volume`}),(0,K.jsx)(`input`,{"aria-label":`Volume`,type:`range`,min:0,max:100,step:1,className:`absolute inset-0 h-4 w-full cursor-pointer opacity-0`,value:v,disabled:l,onChange:e=>{if(l)return;let t=Number(e.target.value);c({volumeLevel:t}),i.setVolume({volumeLevel:t})}}),(0,K.jsx)(`div`,{className:`pointer-events-none`,children:(0,K.jsx)(r8,{fraction:v/100})})]}),(0,K.jsxs)(`span`,{className:`w-9 text-right text-[11px] tabular-nums text-foreground-subtle`,children:[v,`%`]})]})]})}var a9={disarmed:{label:`Disarmed`,colorClass:`border-border bg-surface-subtle text-foreground-subtle`,icon:`disarmed`},armed_home:{label:`Armed Home`,colorClass:`border-success/30 bg-success/10 text-success`,icon:`armed`},armed_away:{label:`Armed Away`,colorClass:`border-success/30 bg-success/10 text-success`,icon:`armed`},armed_night:{label:`Armed Night`,colorClass:`border-success/30 bg-success/10 text-success`,icon:`armed`},armed_vacation:{label:`Armed Vacation`,colorClass:`border-success/30 bg-success/10 text-success`,icon:`armed`},armed_custom_bypass:{label:`Armed (Bypass)`,colorClass:`border-success/30 bg-success/10 text-success`,icon:`armed`},arming:{label:`Arming…`,colorClass:`border-warning/30 bg-warning/10 text-warning`,icon:`pending`},disarming:{label:`Disarming…`,colorClass:`border-warning/30 bg-warning/10 text-warning`,icon:`pending`},pending:{label:`Pending`,colorClass:`border-warning/30 bg-warning/10 text-warning`,icon:`pending`},triggered:{label:`Triggered`,colorClass:`border-danger/30 bg-danger/10 text-danger`,icon:`triggered`}},o9={home:`Home`,away:`Away`,night:`Night`,vacation:`Vacation`,custom_bypass:`Bypass`};function s9(e){return e.startsWith(`armed_`)}function c9(e){return e===`arming`||e===`disarming`}function l9({icon:e,sizeClass:t=`h-8 w-8`}){return e===`disarmed`?(0,K.jsx)(St,{className:t,"aria-hidden":`true`}):e===`triggered`?(0,K.jsx)(bt,{className:t,"aria-hidden":`true`}):e===`pending`?(0,K.jsx)(wt,{className:t,"aria-hidden":`true`}):(0,K.jsx)(xt,{className:t,"aria-hidden":`true`})}function u9({label:e,active:t,busy:n,onSelect:r}){return(0,K.jsx)(`button`,{type:`button`,"aria-label":e,"aria-pressed":t,disabled:n,onClick:e=>{e.stopPropagation(),n||r()},className:Z(`flex-1 rounded-md px-3 py-2 text-sm font-medium transition-colors`,t?`bg-primary text-primary-foreground shadow-sm`:`text-foreground-muted hover:bg-surface-hover`,n&&`opacity-40 cursor-not-allowed`),children:e})}function Kne({state:e,availableModes:t,busy:n,onDisarm:r,onArm:i}){let a=s9(e),o=c9(e);return(0,K.jsxs)(`div`,{className:Z(`flex min-w-0 items-stretch gap-1 rounded-lg border border-border bg-surface-subtle p-1`),children:[(0,K.jsx)(u9,{label:`Disarm`,active:!a&&!o,busy:n,onSelect:r}),t.map(t=>(0,K.jsx)(u9,{label:o9[t],active:!o&&e===`armed_${t}`,busy:n,onSelect:()=>i(t)},t))]})}function d9(e){return e instanceof Error?e.message:String(e)}function f9(e,t,n){let{cap:r,slice:i,available:a}=KX({trpc:e,deviceId:t,cap:e=>e.alarmPanel,slice:e=>e.state.alarmPanel}),{display:o,applyOptimistic:s,rollback:c}=h8(i,{enabled:n??!0}),[l,u]=(0,d.useState)(null),f=()=>u(null),p=(0,d.useRef)(0);(0,d.useEffect)(()=>{u(null)},[i]);let m=!a;return{display:o,capPresent:r!==void 0,busy:m,handleDisarm:()=>{if(r===void 0||m)return;let e=++p.current;s({state:`disarming`}),r.disarm({}).catch(t=>{p.current===e&&(c(),u(d9(t)))})},handleArm:e=>{if(r===void 0||m)return;let t=++p.current;s({state:`arming`}),r.arm({mode:e}).catch(e=>{p.current===t&&(c(),u(d9(e)))})},error:l,clearError:f}}function qne({trpc:e,deviceId:t,optimistic:n}){let{display:r,capPresent:i,busy:a,handleDisarm:o,handleArm:s,error:c}=f9(e,t,n);if(!i||r===void 0)return null;let l=a9[r.state],u=s9(r.state)?r.state.replace(`armed_`,``):``;return(0,K.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,K.jsxs)(`span`,{className:Z(`inline-flex shrink-0 items-center gap-1 rounded-md border px-1.5 py-0.5 text-[11px] font-medium whitespace-nowrap`,l.colorClass,c9(r.state)&&`animate-pulse`),children:[(0,K.jsx)(l9,{icon:l.icon,sizeClass:`h-3 w-3`}),l.label]}),(0,K.jsxs)(`select`,{"aria-label":`Alarm mode`,disabled:a,value:u,onClick:e=>e.stopPropagation(),onChange:e=>{e.stopPropagation();let t=e.target.value;t===``?o():s(t)},className:Z(`min-w-0 shrink rounded-md border border-border bg-surface-subtle px-1.5 py-0.5 text-xs text-foreground-muted`,a&&`cursor-not-allowed opacity-40`),children:[(0,K.jsx)(`option`,{value:``,children:`Disarm`}),r.availableModes.map(e=>(0,K.jsx)(`option`,{value:e,children:o9[e]},e))]}),c!==null&&(0,K.jsx)(`span`,{"data-testid":`alarm-inline-error`,role:`alert`,title:c,className:`inline-flex h-4 w-4 shrink-0 items-center justify-center rounded-full bg-danger/10 text-danger`,children:(0,K.jsx)(bt,{className:`h-3 w-3`,"aria-hidden":`true`})})]})}function Jne({trpc:e,deviceId:t,optimistic:n}){let{display:r,capPresent:i,busy:a,handleDisarm:o,handleArm:s,error:c,clearError:l}=f9(e,t,n);if(!i||r===void 0)return null;let u=a9[r.state];return(0,K.jsxs)(`div`,{className:`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-6`,children:[(0,K.jsxs)(`div`,{className:`flex flex-col items-center gap-2`,children:[(0,K.jsx)(`div`,{"data-testid":`alarm-state`,"data-state":r.state,className:Z(`flex h-16 w-16 items-center justify-center rounded-full border-2`,u.colorClass,c9(r.state)&&`animate-pulse`),children:(0,K.jsx)(l9,{icon:u.icon})}),(0,K.jsx)(`span`,{className:Z(`text-sm font-medium`,u.colorClass,`border-0 bg-transparent`),children:u.label})]}),(0,K.jsx)(Kne,{state:r.state,availableModes:r.availableModes,busy:a,onDisarm:o,onArm:s}),c!==null&&(0,K.jsxs)(`div`,{"data-testid":`alarm-error`,role:`alert`,className:`flex items-start justify-between gap-2 rounded-md border border-danger/30 bg-danger/10 px-3 py-2 text-sm text-danger`,children:[(0,K.jsx)(`span`,{children:c}),(0,K.jsx)(`button`,{type:`button`,"aria-label":`Dismiss`,onClick:e=>{e.stopPropagation(),l()},className:`shrink-0 font-medium text-danger/80 hover:text-danger`,children:`×`})]})]})}function Yne(e,t){if(e<=0)return null;let n=Math.max(0,Math.round((t-e)/1e3));return n<60?`just now`:n<3600?`${Math.floor(n/60)} min ago`:n<86400?`${Math.floor(n/3600)} h ago`:new Date(e).toLocaleDateString()}function p9({atMs:e,neverLabel:t}){let n=Yne(e,Date.now());return(0,K.jsx)(`span`,{className:`text-xs text-foreground-subtle`,"data-testid":`last-run`,children:n===null?t:n})}function m9({error:e}){return e===null||e===``?null:(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-1 text-xs text-danger`,title:e,"data-testid":`last-error`,children:[(0,K.jsx)(Vt,{className:`h-3 w-3 shrink-0`,"aria-hidden":`true`}),(0,K.jsx)(`span`,{className:`truncate`,children:e})]})}function h9(e,t,n){let{cap:r,slice:i,available:a}=KX({trpc:e,deviceId:t,cap:e=>e.scriptRunner,slice:e=>e.state.scriptRunner}),{display:o,applyOptimistic:s}=h8(i,{enabled:n??!0}),c=!a,l=o?.isRunning===!0;return{display:o,capPresent:r!==void 0,busy:c,running:l,run:()=>{r===void 0||c||l||(s({isRunning:!0}),r.run({}))},stop:()=>{r===void 0||c||!l||(s({isRunning:!1}),r.stop({}))}}}function g9({running:e,busy:t,large:n,onRun:r,onStop:i}){let a=e?`Stop`:`Run`;return(0,K.jsxs)(`button`,{type:`button`,"aria-label":a,title:a,disabled:t,"data-testid":`script-run`,"data-running":e?`true`:`false`,onClick:t=>{t.stopPropagation(),e?i():r()},className:Z(`inline-flex items-center gap-1 rounded transition-colors`,n?`h-10 px-4 text-sm`:`h-5 px-1.5 text-xs`,e?`bg-danger text-danger-foreground hover:bg-danger/90`:`bg-primary text-primary-foreground hover:bg-primary/90`,t&&`cursor-not-allowed opacity-40`),children:[e?(0,K.jsx)(C,{className:n?`h-4 w-4`:`h-3 w-3`,"aria-hidden":`true`}):(0,K.jsx)(dt,{className:n?`h-4 w-4`:`h-3 w-3`,"aria-hidden":`true`}),(0,K.jsx)(`span`,{children:a})]})}function Xne({trpc:e,deviceId:t,optimistic:n}){let{display:r,capPresent:i,busy:a,running:o,run:s,stop:c}=h9(e,t,n);return!i||r===void 0?null:(0,K.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,K.jsx)(g9,{running:o,busy:a,large:!1,onRun:s,onStop:c}),(0,K.jsx)(p9,{atMs:r.lastRunAt,neverLabel:`never run`})]})}function Zne({trpc:e,deviceId:t,optimistic:n}){let{display:r,capPresent:i,busy:a,running:o,run:s,stop:c}=h9(e,t,n);return!i||r===void 0?null:(0,K.jsxs)(`div`,{className:`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-6`,children:[(0,K.jsxs)(`div`,{className:`flex flex-col items-center gap-2`,children:[(0,K.jsx)(`div`,{"data-testid":`script-state`,"data-running":o?`true`:`false`,className:Z(`flex h-16 w-16 items-center justify-center rounded-full border-2`,o?`border-primary text-primary animate-pulse`:`border-border text-foreground-subtle`),children:(0,K.jsx)(dt,{className:`h-8 w-8`,"aria-hidden":`true`})}),(0,K.jsx)(`span`,{className:`text-sm font-medium`,children:o?`Running`:`Idle`}),(0,K.jsx)(p9,{atMs:r.lastRunAt,neverLabel:`never run`}),(0,K.jsx)(m9,{error:r.lastError})]}),(0,K.jsx)(`div`,{className:`flex justify-center`,children:(0,K.jsx)(g9,{running:o,busy:a,large:!0,onRun:s,onStop:c})})]})}function _9(e,t,n){let{cap:r,slice:i,available:a}=KX({trpc:e,deviceId:t,cap:e=>e.automationControl,slice:e=>e.state.automationControl}),{display:o,applyOptimistic:s}=h8(i,{enabled:n??!0}),c=!a;return{display:o,capPresent:r!==void 0,busy:c,setEnabled:e=>{r===void 0||c||(s({enabled:e}),e?r.enable({}):r.disable({}))},trigger:()=>{r===void 0||c||r.trigger({})}}}function v9({enabled:e,busy:t,onToggle:n}){return(0,K.jsx)(`button`,{type:`button`,role:`switch`,"aria-checked":e,"aria-label":`Automation enabled`,disabled:t,"data-testid":`automation-enabled`,onClick:t=>{t.stopPropagation(),n(!e)},className:Z(`inline-flex shrink-0 items-center gap-1 rounded-md border px-1.5 py-0.5`,`text-[11px] font-medium whitespace-nowrap transition-colors`,e?`border-success/40 bg-success/10 text-success`:`border-border bg-surface-subtle text-foreground-subtle`,t&&`cursor-not-allowed opacity-40`),children:e?`Enabled`:`Disabled`})}function y9({busy:e,large:t,onTrigger:n}){return(0,K.jsxs)(`button`,{type:`button`,"aria-label":`Trigger`,title:`Run this automation now`,disabled:e,"data-testid":`automation-trigger`,onClick:e=>{e.stopPropagation(),n()},className:Z(`inline-flex items-center gap-1 rounded transition-colors`,t?`h-10 px-4 text-sm`:`h-5 px-1.5 text-xs`,`bg-primary text-primary-foreground hover:bg-primary/90`,e&&`cursor-not-allowed opacity-40`),children:[(0,K.jsx)(en,{className:t?`h-4 w-4`:`h-3 w-3`,"aria-hidden":`true`}),(0,K.jsx)(`span`,{children:`Trigger`})]})}function Qne({trpc:e,deviceId:t,optimistic:n}){let{display:r,capPresent:i,busy:a,setEnabled:o,trigger:s}=_9(e,t,n);return!i||r===void 0?null:(0,K.jsxs)(`div`,{className:`flex min-w-0 items-center gap-2`,children:[(0,K.jsx)(v9,{enabled:r.enabled,busy:a,onToggle:o}),(0,K.jsx)(y9,{busy:a,large:!1,onTrigger:s})]})}function $ne({trpc:e,deviceId:t,optimistic:n}){let{display:r,capPresent:i,busy:a,setEnabled:o,trigger:s}=_9(e,t,n);return!i||r===void 0?null:(0,K.jsxs)(`div`,{className:`flex flex-col items-stretch gap-4 rounded-lg border border-border bg-surface p-6`,children:[(0,K.jsxs)(`div`,{className:`flex flex-col items-center gap-2`,children:[(0,K.jsx)(`div`,{"data-testid":`automation-state`,"data-enabled":r.enabled?`true`:`false`,className:Z(`flex h-16 w-16 items-center justify-center rounded-full border-2`,r.enabled?`border-success text-success`:`border-border text-foreground-subtle`),children:(0,K.jsx)(en,{className:`h-8 w-8`,"aria-hidden":`true`})}),(0,K.jsx)(`span`,{className:`text-sm font-medium`,children:r.enabled?`Enabled`:`Disabled`}),(0,K.jsx)(p9,{atMs:r.lastTriggeredAt,neverLabel:`never triggered`}),(0,K.jsx)(m9,{error:r.lastError})]}),(0,K.jsxs)(`div`,{className:`flex items-center justify-center gap-3`,children:[(0,K.jsx)(v9,{enabled:r.enabled,busy:a,onToggle:o}),(0,K.jsx)(y9,{busy:a,large:!0,onTrigger:s})]})]})}function ere({children:e}){return(0,K.jsx)(`div`,{className:`flex flex-col items-stretch gap-3 rounded-lg border border-border bg-surface p-4`,children:e})}function b9(e,t){let{cap:n}=KX({trpc:e,deviceId:t,cap:e=>e.switch,slice:e=>e.state.switch});return n!==void 0}function tre({trpc:e,deviceId:t,features:n,optimistic:r}){return b9(e,t)?(0,K.jsx)(v8,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r}):null}function nre(e,t){let{cap:n}=KX({trpc:e,deviceId:t,cap:e=>e.lockControl,slice:e=>e.state.lockControl});return n!==void 0}function rre({trpc:e,deviceId:t,features:n,optimistic:r}){return nre(e,t)?(0,K.jsx)(_8,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r}):null}function ire({trpc:e,deviceId:t,features:n,optimistic:r}){return b9(e,t)?(0,K.jsxs)(`div`,{className:`inline-flex items-center gap-2`,children:[(0,K.jsx)(v8,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r}),(0,K.jsx)(y8,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r})]}):null}function are(e,t){let{cap:n}=KX({trpc:e,deviceId:t,cap:e=>e.fanControl,slice:e=>e.state.fanControl});return n!==void 0}function ore({trpc:e,deviceId:t,features:n,optimistic:r}){return are(e,t)?(0,K.jsxs)(`div`,{className:`inline-flex items-center gap-2`,children:[(0,K.jsx)(v8,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r}),(0,K.jsx)(b8,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r})]}):null}function x9(e,t){let{cap:n}=KX({trpc:e,deviceId:t,cap:e=>e.climateControl,slice:e=>e.state.climateControl});return n!==void 0}function sre({trpc:e,deviceId:t,features:n,optimistic:r}){return x9(e,t)?(0,K.jsx)(w8,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r}):null}function cre({trpc:e,deviceId:t,features:n,optimistic:r}){return x9(e,t)?(0,K.jsx)(V7,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r}):null}function lre({trpc:e,deviceId:t,features:n,optimistic:r}){return x9(e,t)?(0,K.jsx)(V7,{trpc:e,deviceId:t,features:n,layout:`full`,optimistic:r}):null}function ure(e,t){let{cap:n}=KX({trpc:e,deviceId:t,cap:e=>e.mediaPlayer,slice:e=>e.state.mediaPlayer});return n!==void 0}function dre({trpc:e,deviceId:t,features:n,optimistic:r}){return ure(e,t)?(0,K.jsx)(j8,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r}):null}function S9(e,t){let{cap:n}=KX({trpc:e,deviceId:t,cap:e=>e.control,slice:e=>e.state.control});return n!==void 0}function fre({trpc:e,deviceId:t,features:n,optimistic:r}){return S9(e,t)?(0,K.jsx)(G8,{trpc:e,deviceId:t,features:n,layout:`compact`,optimistic:r}):null}function pre({trpc:e,deviceId:t,features:n,optimistic:r}){return S9(e,t)?(0,K.jsx)(ere,{children:(0,K.jsx)(G8,{trpc:e,deviceId:t,features:n,layout:`full`,optimistic:r})}):null}var mre={cover:{InlineControl:l5,HeroCard:m5},valve:{InlineControl:u7,HeroCard:Ute},humidifier:{InlineControl:Gte,HeroCard:qte},"water-heater":{InlineControl:Xte,HeroCard:Qte},switch:{InlineControl:tre,HeroCard:Vne},light:{InlineControl:ire,HeroCard:Lne},fan:{InlineControl:ore,HeroCard:Bne},sensor:{InlineControl:v5,HeroCard:D5},thermostat:{InlineControl:sre,HeroCard:Tne},climate:{InlineControl:cre,HeroCard:lre},button:{InlineControl:d8,HeroCard:f8},update:{InlineControl:A5,HeroCard:j5},lock:{InlineControl:rre,HeroCard:jne},"media-player":{InlineControl:dre,HeroCard:Gne},alarm:{InlineControl:qne,HeroCard:Jne},control:{InlineControl:fre,HeroCard:pre},weather:{InlineControl:tne,HeroCard:ine},vacuum:{InlineControl:W5,HeroCard:K5},"lawn-mower":{InlineControl:r7,HeroCard:a7},image:{InlineControl:ane,HeroCard:one},"pet-feeder":{InlineControl:lne,HeroCard:une},script:{InlineControl:Xne,HeroCard:Zne},automation:{InlineControl:Qne,HeroCard:$ne},dummy:{InlineControl:h5,HeroCard:g5}};Object.fromEntries(Object.values(U).map(e=>[e,mre[bB[e]]])),U.Cover,U.Valve,U.Thermostat,U.Climate,U.Control,U.Button,U.MediaPlayer,U.AlarmPanel,U.Lock,U.Vacuum,U.LawnMower,U.Humidifier,U.Switch,U.Siren,U.Light,U.Fan,U.WaterHeater,U.Sensor,U.Presence,U.EventEmitter,U.Notifier,U.Script,U.Automation,U.Camera,U.Hub,U.Update,U.Generic,U.Weather,U.Container,U.Image,U.PetFeeder,new Set(Object.values(U));var C9=1e3;24*(60*C9*60),30*C9,(0,d.createContext)(null),new Set([U.Sensor,U.Presence]),(0,d.createContext)({}),Object.freeze([]),TW(`camstack:device-quick-detail`,null),F({id:A(),stableId:k(),addonId:k(),type:k(),name:k(),online:j(),disabled:j(),parentDeviceId:A().nullable(),role:k().nullable().optional(),features:P(k()).optional(),isCamera:j().optional()});function w9(e){return e.deviceKey===void 0?e.agentNodeId:`${e.agentNodeId}::${e.deviceKey}`}function T9(e){let t=[];for(let n of e){let e=t[t.length-1];if(e&&e.agentNodeId===n.agentNodeId){let r=[...e.columns,n];t[t.length-1]={...e,columns:r,grouped:r.length>1}}else t.push({agentNodeId:n.agentNodeId,engineLabel:n.engineLabel,columns:[n],grouped:!1})}return t}function hre(e){let t=[],n=(e,r)=>{for(let i of e)t.push({node:i,depth:r}),n(i.children,r+1)};return n(e,0),t}function gre(e,t,n,r=208,i=t){return e<=0?!1:t<=1?e<n+r*i:e<n+r*2}var E9={detector:{label:`detector`,className:`text-emerald-500`},cropper:{label:`cropper`,className:`text-blue-500`},classifier:{label:`classifier`,className:`text-violet-500`},refiner:{label:`refiner`,className:`text-amber-500`},"audio-classifier":{label:`audio classifier`,className:`text-pink-500`}};function _re({slot:e}){let t=E9[e]??E9.classifier;return(0,K.jsx)(`span`,{className:Z(`text-[9px] font-semibold uppercase tracking-widest leading-none`,t.className),children:t.label})}var D9=`inline-flex items-center rounded bg-muted px-1.5 py-px text-[9px] font-medium text-foreground-subtle`;function vre({inputs:e,outputs:t}){return e.length===0&&t.length===0?null:(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-1 flex-wrap`,children:[e.map(e=>(0,K.jsx)(`span`,{className:Z(D9,`bg-blue-500/10 text-blue-500`),children:e},`in-${e}`)),e.length>0&&t.length>0&&(0,K.jsx)(`span`,{className:`text-foreground-subtle/60 text-[9px]`,children:`→`}),t.map(e=>(0,K.jsx)(`span`,{className:Z(D9,`bg-emerald-500/10 text-emerald-500`),children:e},`out-${e}`))]})}function O9({column:e}){let t=e.deviceLabel??e.deviceKey;return(0,K.jsxs)(K.Fragment,{children:[(t!==void 0||e.disabled===!0)&&(0,K.jsxs)(`div`,{className:`flex min-w-0 items-center gap-1`,children:[t!==void 0&&(0,K.jsx)(`span`,{className:`truncate text-[10px] font-medium text-foreground/90`,children:t}),e.disabled===!0&&(0,K.jsx)(`span`,{className:`shrink-0 rounded bg-muted px-1 text-[8px] font-semibold uppercase text-foreground-subtle`,children:`off`})]}),(0,K.jsx)(`div`,{className:`truncate text-[9px] text-foreground-subtle`,children:e.engineLabel}),e.detail!==void 0&&(0,K.jsx)(`div`,{className:`truncate font-mono text-[9px] text-foreground-subtle`,title:e.detail,children:e.detail})]})}function yre({group:e}){let t=e.columns[0]?.nodeLabel??e.agentNodeId;return(0,K.jsxs)(`div`,{role:`columnheader`,className:`sticky top-0 z-10 min-w-0 border-b border-l border-border bg-muted/60`,style:{gridColumn:`span ${e.columns.length}`},children:[(0,K.jsx)(`div`,{className:`truncate px-3 pt-2 pb-1 text-xs font-semibold text-foreground`,children:t}),(0,K.jsx)(`div`,{className:`mt-1 flex border-t border-border/50`,children:e.columns.map((e,t)=>(0,K.jsx)(`div`,{className:Z(`min-w-0 flex-1 px-3 py-1`,t>0&&`border-l border-border/50`,e.disabled===!0&&`opacity-70`),title:`${e.deviceLabel??e.deviceKey} · ${e.engineLabel}${e.detail?` · ${e.detail}`:``}`,children:(0,K.jsx)(O9,{column:e})},w9(e)))})]})}function bre({node:e}){return(0,K.jsxs)(`div`,{className:`flex flex-col gap-1 min-w-0 flex-1`,children:[(0,K.jsx)(_re,{slot:e.slot}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2 flex-wrap`,children:[(0,K.jsx)(`span`,{className:`font-semibold truncate`,children:e.addonName}),(0,K.jsx)(vre,{inputs:e.inputClasses,outputs:e.outputClasses})]})]})}function xre(e){return e.kind===`enabled`?(0,K.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1`,title:e.overridden?`override`:void 0,children:[(0,K.jsx)(`span`,{className:Z(`h-1.5 w-1.5 rounded-full shrink-0`,e.overridden?`bg-amber-500`:`bg-emerald-500`)}),(0,K.jsx)(`span`,{className:`font-mono text-foreground truncate`,children:e.modelId}),e.suppliedByRoot!==void 0&&(0,K.jsx)(`span`,{className:`ml-auto shrink-0 truncate rounded bg-primary/10 px-1 text-[8px] font-semibold uppercase text-primary`,title:`Uses the root model ${e.suppliedByRoot} — this step's own model does not run here`,children:`root`}),e.clusterWide===!0&&(0,K.jsx)(`span`,{className:`ml-auto shrink-0 text-[8px] font-semibold uppercase text-primary`,title:`One value for the whole cluster — this step writes into a shared vector index`,children:`cluster`}),e.jumpTo!==void 0&&(0,K.jsxs)(`span`,{className:`ml-auto shrink-0 text-[8px] font-semibold text-sky-500`,title:`runs on ${e.jumpTo}`,children:[`→ `,e.jumpTo]}),e.overridden&&e.jumpTo===void 0&&(0,K.jsx)(`span`,{className:`ml-auto shrink-0 text-[8px] font-semibold uppercase text-amber-500`,children:`ovr`})]}):e.kind===`disabled`?(0,K.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1 text-foreground-subtle`,title:e.overridden?`override`:void 0,children:[(0,K.jsx)(`span`,{className:Z(`h-1.5 w-1.5 rounded-full shrink-0`,e.overridden?`bg-amber-500`:`border border-foreground-subtle/60`)}),(0,K.jsx)(`span`,{className:`truncate`,children:`off`}),e.overridden&&(0,K.jsx)(`span`,{className:`ml-auto shrink-0 text-[8px] font-semibold uppercase text-amber-500`,children:`ovr`})]}):e.kind===`skip`?e.jumpTo===void 0?(0,K.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1 text-amber-500`,title:`Gated on for this camera, but no compatible model on this node — click to provision`,children:[(0,K.jsx)(`span`,{className:`h-1.5 w-1.5 rounded-full bg-amber-500 shrink-0`}),(0,K.jsx)(`span`,{className:`truncate font-medium`,children:`⚠ skip`})]}):(0,K.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1 text-sky-500`,title:`no build for this device — auto-jumps to ${e.jumpTo}`,children:[(0,K.jsx)(`span`,{className:`h-1.5 w-1.5 rounded-full bg-sky-500 shrink-0`}),(0,K.jsxs)(`span`,{className:`truncate font-medium`,children:[`→ `,e.jumpTo]})]}):(0,K.jsxs)(`span`,{className:`flex min-w-0 items-center gap-1 text-foreground-subtle/70`,children:[(0,K.jsx)(`span`,{className:`h-1.5 w-1.5 rounded-full bg-muted shrink-0`}),(0,K.jsx)(`span`,{className:`truncate`,children:`—`})]})}function Sre(e,t,n){return Z(`text-left text-xs hover:bg-muted/40`,e.kind===`enabled`&&`bg-emerald-500/5`,e.kind===`skip`&&`bg-amber-500/5`,e.kind===`na`&&`bg-muted/30`,t&&`ring-2 ring-primary ring-inset`,n)}var k9=18,Cre=k9*16,wre=11;function Tre(e,t,n,r){let i=(e,t)=>({r:Math.max(0,Math.min(n-1,e)),c:Math.max(0,Math.min(r-1,t))});switch(e){case`ArrowRight`:return i(t.r,t.c+1);case`ArrowLeft`:return i(t.r,t.c-1);case`ArrowDown`:return i(t.r+1,t.c);case`ArrowUp`:return i(t.r-1,t.c);case`Home`:return i(t.r,0);case`End`:return i(t.r,r-1);case`PageDown`:return i(n-1,t.c);case`PageUp`:return i(0,t.c);default:return null}}function Ere({node:e,depth:t,r:n,tabbable:r,selected:i,badge:a,onClick:o,sticky:s}){return(0,K.jsx)(`div`,{role:`rowheader`,className:Z(`min-w-0 border-b border-border bg-surface`,s&&`sticky left-0 z-10`),children:(0,K.jsxs)(`button`,{type:`button`,"data-r":n,"data-c":0,"data-step":e.addonId,"data-col":``,tabIndex:r?0:-1,"aria-current":i?`true`:void 0,onClick:o?e=>o(e.detail===0):void 0,className:Z(`flex h-full w-full min-w-0 items-start gap-2 px-3 py-2 text-left text-xs outline-none`,`hover:bg-muted/40 focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-primary`,i&&`bg-primary/10 shadow-[inset_3px_0_0_var(--color-primary)]`),style:{paddingLeft:`${12+t*14}px`},children:[(0,K.jsx)(bre,{node:e}),a]})})}function Dre({nodes:e,selected:t,onSelect:n}){return(0,K.jsxs)(`div`,{className:`flex flex-wrap items-center gap-1.5`,role:`tablist`,"aria-label":`Node`,children:[(0,K.jsx)(vt,{className:`h-3.5 w-3.5 text-foreground-subtle`}),(0,K.jsx)(`span`,{className:`text-[10px] uppercase tracking-wider text-foreground-subtle`,children:`Node`}),(0,K.jsx)(`div`,{className:`flex overflow-hidden rounded-md border border-border text-[11px] font-medium`,children:e.map((e,r)=>{let i=e.agentNodeId===t;return(0,K.jsx)(`button`,{type:`button`,role:`tab`,"aria-selected":i,onClick:()=>n(e.agentNodeId),title:`${e.columns[0]?.nodeLabel??e.agentNodeId} · ${e.engineLabel}`,className:Z(`px-2.5 py-1 transition-colors`,i?`bg-primary/15 text-primary`:`bg-transparent text-foreground-subtle hover:bg-surface-hover hover:text-foreground`,r>0&&`border-l border-border`),children:e.columns[0]?.nodeLabel??e.agentNodeId},e.agentNodeId)})})]})}var Ore=(0,d.forwardRef)(function({tree:e,agents:t,getCellState:n,onCellClick:r,onStepClick:i,stepBadge:a,selectedCell:o,single:s,reserveRightPx:c,label:l},u){let f=(0,d.useMemo)(()=>hre(e),[e]),p=(0,d.useMemo)(()=>T9(t),[t]),m=(0,d.useRef)(null),h=s?wre:k9,g=`${h}rem repeat(${t.length}, 13rem)`,_=t.length+1,[v,y]=(0,d.useState)(!0);(0,d.useLayoutEffect)(()=>{let e=m.current;if(!e||c<=0){y(!0);return}let t=()=>{let t=e.getBoundingClientRect().left;y(window.innerWidth-c-t>=h*16+208+24)};return t(),window.addEventListener(`resize`,t),()=>window.removeEventListener(`resize`,t)},[c,h]);let b=(0,d.useMemo)(()=>{if(o===null)return null;let e=f.findIndex(e=>e.node.addonId===o.addonId);if(e<0)return null;let n=t.findIndex(e=>w9(e)===w9(o));return{r:e,c:n<0?0:n+1}},[o,f,t]),[x,ee]=(0,d.useState)({r:0,c:0});(0,d.useEffect)(()=>{b!==null&&ee(b)},[b]);let te=x.r<f.length&&x.c<_?x:{r:0,c:0},S=(e,t)=>{m.current?.querySelector(`[data-r="${e}"][data-c="${t}"]`)?.focus()};return(0,d.useImperativeHandle)(u,()=>({focusCell:(e,n)=>{let r=f.findIndex(t=>t.node.addonId===e);if(r<0)return;let i=n===null?-1:t.findIndex(e=>w9(e)===n),a=i<0?0:i+1;ee({r,c:a}),S(r,a)}}),[f,t]),(0,d.useLayoutEffect)(()=>{if(b===null)return;let e=m.current,t=e?.querySelector(`[data-r="${b.r}"][data-c="${b.c}"]`);if(!e||!t||(typeof t.scrollIntoView==`function`&&t.scrollIntoView({block:`nearest`,inline:`nearest`}),c<=0))return;let n=window.innerWidth-c-12,r=t.getBoundingClientRect().right;r>n&&(e.scrollLeft+=r-n)},[b,c,v]),(0,K.jsx)(`div`,{ref:m,className:`overflow-auto rounded border border-border`,children:(0,K.jsxs)(`div`,{className:`flex w-max`,children:[(0,K.jsxs)(`div`,{role:`grid`,"aria-label":l,"aria-rowcount":f.length+1,className:`grid w-max`,style:{gridTemplateColumns:g},onKeyDown:e=>{if(!(e.target instanceof HTMLElement)||e.target.dataset.r===void 0)return;let t={r:Number(e.target.dataset.r),c:Number(e.target.dataset.c)},n=Tre(e.key,t,f.length,_);n!==null&&(e.preventDefault(),ee(n),S(n.r,n.c))},children:[(0,K.jsxs)(`div`,{role:`row`,className:`contents`,children:[(0,K.jsx)(`div`,{role:`columnheader`,className:Z(`top-0 z-20 border-b border-border bg-muted/60 px-3 py-2 text-[10px] uppercase tracking-widest text-foreground-subtle`,v?`sticky left-0`:`sticky`),children:`Step`}),p.map(e=>e.grouped?(0,K.jsx)(yre,{group:e},e.agentNodeId):e.columns.map(e=>(0,K.jsxs)(`div`,{role:`columnheader`,className:Z(`sticky top-0 z-10 min-w-0 border-b border-l border-border bg-muted/60 px-3 py-2`,e.disabled===!0&&`opacity-70`),children:[(0,K.jsx)(`div`,{className:`truncate text-xs font-semibold text-foreground`,children:e.nodeLabel??e.agentNodeId}),(0,K.jsx)(O9,{column:e})]},w9(e))))]}),f.map(({node:e,depth:s},c)=>(0,K.jsxs)(`div`,{role:`row`,className:`contents`,children:[(0,K.jsx)(Ere,{node:e,depth:s,r:c,tabbable:te.r===c&&te.c===0,selected:o?.addonId===e.addonId,badge:a?.(e.addonId),onClick:i?t=>i(e.addonId,t):void 0,sticky:v}),t.map((t,i)=>{let a=n(e.addonId,t),s=o!==null&&o.addonId===e.addonId&&w9(o)===w9(t),l=a.kind===`enabled`||a.kind===`skip`;return(0,K.jsx)(`div`,{role:`gridcell`,className:`min-w-0 border-b border-l border-border`,children:(0,K.jsx)(`button`,{type:`button`,"data-r":c,"data-c":i+1,"data-step":e.addonId,"data-col":w9(t),tabIndex:te.r===c&&te.c===i+1?0:-1,"aria-disabled":!l,"aria-selected":s,onClick:n=>{l&&r(e.addonId,t,n.detail===0)},className:Sre(a,s,Z(`h-full w-full min-w-0 overflow-hidden px-3 py-2 outline-none`,`focus-visible:ring-2 focus-visible:ring-inset focus-visible:ring-primary`,!l&&`cursor-default hover:bg-transparent`,t.disabled===!0&&`opacity-70`)),children:xre(a)})},w9(t))})]},e.addonId))]}),c>0&&(0,K.jsx)(`div`,{"aria-hidden":!0,style:{width:c},className:`shrink-0`})]})})});(0,d.forwardRef)(function({tree:e,agents:t,getCellState:n,onCellClick:r,selectedCell:i,fallbackNodeId:a,onFallbackNodeChange:o,onStepClick:s,stepBadge:c,reserveRightPx:l=0,label:u=`Detection steps`},f){let p=(0,d.useRef)(null),[m,h]=(0,d.useState)(0);(0,d.useLayoutEffect)(()=>{let e=p.current;if(!e)return;let t=()=>h(e.getBoundingClientRect().width);t();let n=typeof ResizeObserver<`u`?new ResizeObserver(t):null;return n?.observe(e),()=>n?.disconnect()},[]);let g=(0,d.useMemo)(()=>T9(t),[t]),_=gre(m,g.length,Cre,208,t.length),v=(0,d.useMemo)(()=>g.length===0?null:g.find(e=>e.agentNodeId===a)??g[0]??null,[g,a]),y=i?.agentNodeId;(0,d.useEffect)(()=>{_&&y!==void 0&&y!==a&&o(y)},[_,y,a,o]);let b=_&&v?v.columns:t;return(0,K.jsxs)(`div`,{ref:p,className:`w-full space-y-2`,children:[_&&v&&g.length>1&&(0,K.jsx)(Dre,{nodes:g,selected:v.agentNodeId,onSelect:o}),(0,K.jsx)(Ore,{ref:f,tree:e,agents:b,getCellState:n,onCellClick:r,onStepClick:s,stepBadge:c,selectedCell:i,single:_&&v!==null,reserveRightPx:l,label:u})]})});function A9({label:e,description:t,error:n,required:r,children:i,orientation:a=`vertical`,className:o}){let s=a===`horizontal`;return(0,K.jsxs)(`div`,{className:Z(`flex gap-2`,s?`flex-row items-center justify-between`:`flex-col`,o),children:[(0,K.jsxs)(`div`,{className:Z(s?`flex-1`:``),children:[(0,K.jsxs)(YZ,{children:[e,r&&(0,K.jsx)(`span`,{className:`text-danger ml-0.5`,children:`*`})]}),t&&(0,K.jsx)(`p`,{className:`text-foreground-subtle text-xs mt-0.5`,children:t})]}),(0,K.jsx)(`div`,{className:Z(s?`shrink-0`:``),children:i}),n&&(0,K.jsx)(`p`,{className:`text-danger text-xs`,children:n})]})}function j9({icon:e,title:t,subtitle:n,actions:r,nav:i,fill:a=!1,className:o,children:s}){let c=!!t||n!=null||r!=null,l=c||i!=null;return(0,K.jsxs)(`div`,{className:Z(`overflow-x-clip p-2 sm:p-4`,a?`flex h-full min-h-0 flex-col gap-4`:`space-y-4`,o),children:[l&&(0,K.jsxs)(`div`,{className:`shrink-0 space-y-3`,children:[c&&(0,K.jsxs)(`div`,{className:`flex flex-col gap-2 sm:flex-row sm:items-center sm:justify-between sm:gap-4`,children:[(0,K.jsxs)(`div`,{className:`min-w-0`,children:[t!==void 0&&t!==``&&(0,K.jsxs)(`h1`,{className:`flex items-center gap-2 text-lg font-semibold text-foreground`,children:[e!==void 0&&(0,K.jsx)(e,{className:`h-4 w-4 shrink-0 text-foreground-subtle`,"aria-hidden":!0}),t]}),n!=null&&(0,K.jsx)(`p`,{className:`mt-0.5 text-xs text-foreground-subtle`,children:n})]}),r!=null&&(0,K.jsx)(`div`,{className:`flex shrink-0 flex-wrap items-center gap-2`,children:r})]}),i]}),a?(0,K.jsx)(`div`,{className:`flex min-h-0 flex-1 flex-col gap-3`,children:s}):s]})}Z(qZ,`min-w-0 max-w-full gap-1.5 py-1 pl-1 pr-2.5 text-xs font-normal`,`focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-primary/40`),Z(JZ,`font-medium`);var kre={online:{colorClass:`bg-success`,label:`Online`},offline:{colorClass:`bg-danger`,label:`Offline`},degraded:{colorClass:`bg-warning`,label:`Degraded`},unknown:{colorClass:`bg-foreground-subtle`,label:`Unknown`},running:{colorClass:`bg-success`,label:`Running`},stopped:{colorClass:`bg-foreground-subtle`,label:`Stopped`},error:{colorClass:`bg-danger`,label:`Error`},idle:{colorClass:`bg-info`,label:`Idle`},enabled:{colorClass:`bg-success`,label:`Enabled`},disabled:{colorClass:`bg-warning`,label:`Disabled`}};function Are({status:e,label:t,showDot:n=!0,showLabel:r=!0,size:i=`sm`,className:a}){let o=kre[e];return(0,K.jsxs)(`span`,{className:Z(`inline-flex items-center gap-1.5`,i===`sm`?`text-xs`:`text-sm`,a),children:[n&&(0,K.jsx)(`span`,{className:Z(`h-1.5 w-1.5 shrink-0 rounded-full`,o.colorClass),"aria-hidden":`true`}),r&&(0,K.jsx)(`span`,{className:`text-foreground`,children:t??o.label})]})}function jre({dirtyCount:e,saving:t,status:n,error:r,onSave:i,onDiscard:a,scope:o}){let s=e>0,c=t?`Saving…`:s?`${e} unsaved change${e===1?``:`s`}`:n===`saved`?`Saved`:n===`error`?r??`Save failed`:`No unsaved changes`;return(0,K.jsxs)(`footer`,{className:`shrink-0 space-y-2 border-t border-border bg-surface px-4 py-2 pb-[max(0.5rem,env(safe-area-inset-bottom))] md:pb-2`,children:[o!==void 0&&(0,K.jsx)(`div`,{"data-save-scope":!0,children:o}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(`span`,{role:`status`,className:Z(`min-w-0 flex-1 truncate text-[11px]`,n===`error`&&!s?`text-danger`:s?`text-amber-500`:`text-foreground-subtle`),children:c}),(0,K.jsx)(JX,{variant:`outline`,size:`md`,disabled:!s||t,onClick:a,children:`Discard`}),(0,K.jsx)(JX,{variant:`primary`,size:`md`,disabled:!s||t,onClick:i,children:`Save`})]})]})}(0,d.forwardRef)(function({title:e,subtitle:t,headerActions:n,headerExtra:r,leading:i,saveBar:a,onEscape:o,children:s,className:c},l){let u=(0,d.useId)();return(0,K.jsxs)(`section`,{"aria-labelledby":u,onKeyDown:e=>{e.key!==`Escape`||o===void 0||(e.stopPropagation(),o())},className:Z(`flex min-h-0 flex-1 flex-col overflow-hidden bg-surface`,c),children:[(0,K.jsxs)(`header`,{className:`shrink-0 space-y-2 border-b border-border px-4 py-2.5`,children:[(0,K.jsxs)(`div`,{className:`flex flex-wrap items-start gap-x-3 gap-y-2`,children:[i,(0,K.jsxs)(`div`,{className:`min-w-[9rem] flex-1`,children:[(0,K.jsx)(`h2`,{id:u,ref:l,tabIndex:-1,title:e,className:`line-clamp-2 break-words text-sm font-semibold leading-snug text-foreground outline-none focus-visible:ring-2 focus-visible:ring-primary rounded`,children:e}),t!==void 0&&(0,K.jsx)(`div`,{className:`mt-0.5 text-[11px] text-foreground-subtle`,children:t})]}),n]}),r]}),(0,K.jsx)(`div`,{"data-inspector-body":!0,className:`min-h-0 flex-1 overflow-y-auto overscroll-contain px-4 py-3`,children:s}),a!==void 0&&(0,K.jsx)(jre,{...a})]})}),TW(`camstack:player-overlays-state`,null);var Mre=TW(`camstack:player-overlays-actions`,null);function Nre(e){let t=(0,d.useContext)(Mre);(0,d.useEffect)(()=>{if(!(!t||!e))return t.setLayer(e),()=>t.removeLayer(e.id)},[t,e])}TW(`camstack:zone-editing`,null),(0,d.lazy)(()=>Tl(()=>import(`./MaskShapeCanvas-u4Ka7P5T.js`).then(e=>({default:e.MaskShapeCanvas})),__vite__mapDeps([2,1]))),(0,d.lazy)(()=>Tl(()=>import(`./MotionZonesSettings-JxtqkJPW.js`).then(e=>({default:e.MotionZonesSettings})),__vite__mapDeps([0,1,2]))),(0,d.lazy)(()=>Tl(()=>import(`./SceneMonitorEditor-cW0uEQk0.js`).then(e=>({default:e.SceneMonitorEditor})),__vite__mapDeps([4,1,2]))),(0,d.lazy)(()=>Tl(()=>import(`./PrivacyMaskSettings-BtK2jp8R.js`).then(e=>({default:e.PrivacyMaskSettings})),__vite__mapDeps([3,1,2])));function M9(e){return e===null?`disconnected`:e.hubConnectionState===void 0?e.hubConnected===!0?`connected`:`disconnected`:e.hubConnectionState}function N9(e,t){let n=e.isHub&&t!==null&&Pre(e.displayName??e.hostname)?t:e.displayName??e.hostname;return e.isHub?`${n} (hub)`:n}function Pre(e){return/^[0-9a-f]{12}$|^[0-9a-f]{64}$/.test(e)}var P9=`camstack_agent_ui_session`,F9=class extends Error{constructor(){super(`Unauthorized — unlock required`)}};function I9(){let e=sessionStorage.getItem(P9);return e?{Authorization:`Bearer ${e}`}:{}}async function Fre(e){let t=await fetch(`/api/agent/session`,{method:`POST`,headers:{"Content-Type":`application/json`},body:JSON.stringify({ticket:e})});if(!t.ok){let e=await t.json().catch(()=>null);throw Error(e?.error??`HTTP ${t.status}`)}let n=await t.json();if(typeof n.token!=`string`||n.token.length===0)throw Error(`unlock session missing token`);sessionStorage.setItem(P9,n.token)}async function L9(e){let t=await fetch(e,{headers:I9()});if(t.status===401)throw new F9;if(!t.ok)throw Error(`HTTP ${t.status}`);return t.json()}async function R9(e,t){let n=await fetch(e,{method:`POST`,headers:{"Content-Type":`application/json`,...I9()},body:JSON.stringify(t)});if(n.status===401)throw new F9;return n.json()}var Ire={minHeight:`100vh`,margin:0,padding:`48px 32px`,background:`#0c0a09`,color:`#fafaf9`,fontFamily:`-apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif`},Lre={marginTop:16,padding:12,background:`#1c1917`,border:`1px solid #292524`,borderRadius:8,color:`#f87171`,fontSize:12,whiteSpace:`pre-wrap`,wordBreak:`break-word`};function z9(e){return e instanceof Error?e.stack??`${e.name}: ${e.message}`:String(e)}var Rre=class extends d.Component{state={error:null};static getDerivedStateFromError(e){return{error:e}}componentDidCatch(e,t){console.error(`[agent-ui] React render error: ${z9(e)}${t.componentStack??``}`)}render(){return this.state.error===null?this.props.children:(0,K.jsxs)(`div`,{style:Ire,children:[(0,K.jsx)(`h1`,{style:{fontSize:18,margin:0},children:`CamStack Agent UI crashed`}),(0,K.jsx)(`p`,{style:{color:`#a8a29e`,fontSize:13},children:`The dashboard hit an unexpected error while rendering. The agent itself keeps running — this only affects the UI. Details below (also in the agent log).`}),(0,K.jsx)(`pre`,{style:Lre,children:z9(this.state.error)})]})}};function B9(e){let t=document.getElementById(`root`);if(!t||t.childElementCount>0)return;t.innerHTML=``;let n=document.createElement(`div`);n.setAttribute(`style`,`min-height:100vh;margin:0;padding:48px 32px;background:#0c0a09;color:#fafaf9;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif`);let r=document.createElement(`h1`);r.setAttribute(`style`,`font-size:18px;margin:0 0 8px`),r.textContent=`CamStack Agent UI failed to start`;let i=document.createElement(`pre`);i.setAttribute(`style`,`margin-top:16px;padding:12px;background:#1c1917;border:1px solid #292524;border-radius:8px;color:#f87171;font-size:12px;white-space:pre-wrap;word-break:break-word`),i.textContent=e,n.appendChild(r),n.appendChild(i),t.appendChild(n)}function zre(){window.addEventListener(`error`,e=>{console.error(`[agent-ui] uncaught error: ${z9(e.error??e.message)}`),B9(z9(e.error??e.message))}),window.addEventListener(`unhandledrejection`,e=>{console.error(`[agent-ui] unhandled rejection: ${z9(e.reason)}`),B9(z9(e.reason))})}function Bre(e){return e<1024*1024?`${(e/1024).toFixed(0)} KB`:`${(e/1024/1024).toFixed(1)} MB`}function Vre(e){return e===`running`?`running`:e===`crashed`||e===`error`||e===`failed`?`error`:e===`stopped`?`stopped`:`unknown`}function Hre(e){let t=e.addonIds.length-1;return t>0?`shared with ${t} other${t===1?``:`s`}`:null}function Ure({row:e,update:t}){return e.kind===`runner`?(0,K.jsx)(`span`,{className:`text-foreground-subtle`,children:`—`}):(0,K.jsxs)(`span`,{className:`flex flex-col gap-0.5`,children:[(0,K.jsxs)(`span`,{className:`font-mono text-[11px]`,children:[t?.installedVersion??e.version??`—`,t?.behindHub===!0&&t.hubVersion!==null?` → ${t.hubVersion}`:``]}),t?.update?.status===`failed`&&(0,K.jsxs)(`span`,{className:`max-w-[16rem] truncate text-[10px] text-danger`,title:t.update.message??``,children:[`Update failed: `,t.update.message]}),t?.update?.status===`running`&&(0,K.jsxs)(`span`,{className:`text-[10px] text-warning`,children:[`Updating to `,t.update.targetVersion,`…`]}),t?.update?.status===`done`&&t.behindHub===!1&&(0,K.jsxs)(`span`,{className:`text-[10px] text-success`,children:[`Updated to `,t.update.targetVersion]}),t!==void 0&&!t.behindHub&&t.updateAvailable&&t.latestVersion!==null&&(0,K.jsxs)(`span`,{className:`text-[10px] text-foreground-subtle`,title:`A newer release is published. It reaches this node once the hub runs it — update the hub first.`,children:[t.latestVersion,` published`]})]})}function Wre({runner:e}){if(e===null)return(0,K.jsx)(`span`,{className:`text-[11px] text-foreground-subtle`,children:`in the agent process`});let t=Hre(e);return(0,K.jsxs)(`span`,{className:`flex flex-col gap-0.5`,children:[(0,K.jsxs)(`span`,{className:`font-mono text-[11px]`,children:[e.groupId,` · pid `,e.pid]}),t!==null&&(0,K.jsx)(`span`,{className:`text-[10px] text-foreground-subtle`,title:e.addonIds.join(`, `),children:t})]})}function Gre(e){return[{key:`addon`,header:`Addon`,sortValue:e=>e.addonId??e.runner?.name??e.key,render:e=>(0,K.jsxs)(`span`,{className:`flex flex-col`,children:[(0,K.jsx)(`span`,{className:`font-mono text-xs`,children:e.addonId??e.runner?.name}),e.kind===`runner`&&(0,K.jsx)(`span`,{className:`text-[10px] text-foreground-subtle`,children:`runner without a known addon`}),e.packageName!==null&&(0,K.jsx)(`span`,{className:`text-[10px] text-foreground-subtle`,children:e.packageName})]})},{key:`version`,header:`Version`,notSortableReason:`A version cell can also say what is being updated.`,render:t=>(0,K.jsx)(Ure,{row:t,update:e.updateFor(t)})},{key:`runner`,header:`Runner`,sortValue:e=>e.runner?.groupId??null,render:e=>(0,K.jsx)(Wre,{runner:e.runner})},{key:`cpu`,header:`CPU`,align:`right`,sortValue:e=>e.runner?.cpuPercent??null,render:e=>e.runner===null?`—`:`${e.runner.cpuPercent.toFixed(1)}%`},{key:`memory`,header:`Memory`,align:`right`,sortValue:e=>e.runner?.memoryRss??null,render:e=>e.runner===null?`—`:Bre(e.runner.memoryRss)},{key:`status`,header:`Status`,sortValue:e=>e.status,render:e=>(0,K.jsx)(Are,{status:Vre(e.status),label:e.status,size:`sm`})},{key:`actions`,header:``,align:`right`,notSortableReason:`Actions.`,render:t=>{let n=e.updateFor(t),r=n?.update?.status===`running`;return(0,K.jsxs)(`span`,{className:`flex items-center justify-end gap-1`,children:[n?.behindHub===!0&&t.packageName!==null&&(0,K.jsxs)(JX,{type:`button`,variant:`outline`,size:`sm`,disabled:r,onClick:()=>e.onUpdate(t.packageName??``),children:[(0,K.jsx)(st,{className:`h-3 w-3`}),r?`Updating…`:`Update to ${n.hubVersion}`]}),t.kind===`addon`&&t.addonId!==null&&(0,K.jsx)(bK,{type:`button`,variant:`ghost`,size:`sm`,icon:mt,"aria-label":`Restart ${t.addonId}`,onClick:()=>e.onRestartAddon(t.addonId??``)}),t.kind===`runner`&&t.runner!==null&&(0,K.jsx)(bK,{type:`button`,variant:`ghost`,size:`sm`,icon:mt,"aria-label":`Restart ${t.runner.name}`,onClick:()=>e.onRestartRunner(t.runner?.name??``)})]})}}]}var Kre=3e3,qre=12e4,Jre=3e3;function Yre({locked:e,onUnauthorized:t}){let[n,r]=(0,d.useState)(null),[i,a]=(0,d.useState)(null),[o,s]=(0,d.useState)(null),[c,l]=(0,d.useState)(null),u=(0,d.useCallback)(e=>{e instanceof F9?t():s(e instanceof Error?e.message:`Unknown error`)},[t]),f=(0,d.useCallback)(async()=>{try{r(await L9(`/api/agent/addon-runtime`)),s(null)}catch(e){u(e)}},[u]),p=(0,d.useCallback)(async()=>{try{a(await L9(`/api/agent/addon-updates`))}catch(e){u(e)}},[u]);(0,d.useEffect)(()=>{if(e)return;f();let t=setInterval(()=>void f(),Kre);return()=>clearInterval(t)},[e,f]);let m=i?.available===!0&&i.entries.some(e=>e.update?.status===`running`);(0,d.useEffect)(()=>{if(e)return;p();let t=setInterval(()=>void p(),m?Jre:qre);return()=>clearInterval(t)},[e,p,m]);let h=(0,d.useMemo)(()=>new Map(i?.available===!0?i.entries.map(e=>[e.packageName,e]):[]),[i]),g=(0,d.useCallback)(async e=>{l(null);try{let t=await R9(`/api/agent/addon-updates/update`,{packageName:e});t.started||l(t.message??`The update could not be started`),await p()}catch(e){e instanceof F9?t():l(e instanceof Error?e.message:`The update could not be started`)}},[p,t]),_=(0,d.useMemo)(()=>Gre({updateFor:e=>e.packageName===null?void 0:h.get(e.packageName),onRestartAddon:e=>void R9(`/api/agent/addon/restart`,{addonId:e}),onRestartRunner:e=>void R9(`/api/agent/process/restart`,{name:e}),onUpdate:e=>void g(e)}),[h,g]);return(0,K.jsx)(yQ,{headingId:`agent-addons`,title:`Addons`,icon:st,actions:(0,K.jsx)(PK,{variant:`default`,className:`text-[10px]`,children:n?.length??0}),children:(0,K.jsxs)(`div`,{className:`${BZ} space-y-3`,children:[o!==null&&(0,K.jsx)(ZX,{message:`Could not read the addons: ${o}`}),c!==null&&(0,K.jsx)(ZX,{message:c}),i?.available===!0&&i.hubVersionsError!==null&&(0,K.jsx)(ZX,{variant:`warning`,message:`The hub could not be asked which versions this node should run: ${i.hubVersionsError}`}),i?.available===!0&&i.error!==null&&(0,K.jsx)(ZX,{variant:`warning`,message:i.error}),(0,K.jsx)(_Q,{columns:_,rows:n??[],rowKey:e=>e.key,mobileMode:`cards`,minWidthPx:640,bordered:!1,emptyMessage:n===null?`Loading…`:`No addons loaded`})]})})}var Xre=`/api/agent/pairing/status`,Zre=`/api/agent/pairing/confirm`,Qre=`/api/agent/pairing/reject`,$re=`/api/agent/pairing/reset`,eie=`/api/agent/pairing/forget`;function tie(){return L9(Xre)}function V9(e){return e.some(e=>typeof e.pin==`string`)}function nie(e){return e===`localhost`||e===`127.0.0.1`||e===`[::1]`}function rie(e){return typeof e==`object`&&!!e&&typeof Reflect.get(e,`ok`)==`boolean`}async function H9(e,t){try{let n=await fetch(e,{method:`POST`,headers:{"Content-Type":`application/json`,...I9()},body:JSON.stringify(t)}),r=await n.json().catch(()=>null);return rie(r)?r:n.ok?{ok:!0}:{ok:!1,message:`The agent answered HTTP ${n.status}`}}catch(e){return{ok:!1,message:e instanceof Error?e.message:`The request failed`}}}function U9(e){let t=Math.max(1,Math.ceil(e/1e3));return t<90?`${t} s`:`${Math.ceil(t/60)} min`}function W9(e){let t=e.message??e.error??`The agent refused the request`;return e.retryAfterMs===void 0?t:`${t} (try again in ${U9(e.retryAfterMs)})`}function iie(e,t){let n=Math.max(0,Math.ceil((e-t)/1e3));return`${Math.floor(n/60)}:${String(n%60).padStart(2,`0`)}`}function G9(e){return e.replace(/(.{4})/g,`$1 `).trim()}async function aie(){let e=await H9(eie,{});if(!e.ok)throw Error(W9(e))}function oie({hub:e,hubName:t,onForgotten:n}){return(0,K.jsxs)(`div`,{className:`space-y-3`,children:[(0,K.jsxs)(`div`,{className:`space-y-0`,children:[(0,K.jsx)(lQ,{label:`Paired with`,children:t??`The hub`}),e?.url!=null&&(0,K.jsx)(lQ,{label:`Hub URL`,valueClassName:`font-mono break-all`,children:e.url}),e!==null&&(0,K.jsx)(lQ,{label:`CA fingerprint`,valueClassName:`font-mono break-all`,children:G9(e.caFingerprint)})]}),(0,K.jsx)(IQ,{label:`Forget this hub`,icon:Ut,title:`Forget this hub?`,description:`This agent erases the certificate the hub issued and disconnects. Its cameras stop being served from this node until a hub pairs with it again, which needs a new confirmation on both screens.`,confirmLabel:`Forget hub`,size:`sm`,action:aie,onSuccess:()=>void n()})]})}var sie=`The 6-digit code the hub shows for this pairing. Type it from the hub screen.`,cie=new Set([`pin-locked`,`reset-locked`]);function K9(e){return e.hub.caFingerprint}function lie({pairing:e}){return(0,K.jsxs)(`div`,{className:`space-y-0.5 min-w-0`,children:[(0,K.jsxs)(`div`,{className:`text-xs text-foreground`,children:[`Pairing request from `,(0,K.jsx)(`span`,{className:`font-semibold`,children:e.hub.nodeId})]}),(0,K.jsx)(`div`,{className:`text-[11px] font-mono text-foreground-subtle break-all`,children:e.hub.url}),(0,K.jsxs)(`div`,{className:`text-[11px] text-foreground-subtle`,children:[`CA fingerprint`,` `,(0,K.jsx)(`span`,{className:`font-mono break-all`,children:G9(e.hub.caFingerprint)})]})]})}function uie({pending:e,onChanged:t}){let[n,r]=(0,d.useState)(null),[i,a]=(0,d.useState)(``),[o,s]=(0,d.useState)(``),[c,l]=(0,d.useState)(!1),[u,f]=(0,d.useState)(null),[p,m]=(0,d.useState)(null),[h,g]=(0,d.useState)([]),[_,v]=(0,d.useState)(()=>Date.now());(0,d.useEffect)(()=>{let e=setInterval(()=>v(Date.now()),1e3);return()=>clearInterval(e)},[]);let y=e.find(e=>K9(e)===n)??e[0],b=V9(e),x=p!==null&&p>_;if(y===void 0)return null;let ee=K9(y),te=y.localConfirmed===!0||h.includes(ee),S=e=>{e!==ee&&(r(e),a(``),f(null))},ne=()=>b?{pin:y.pin??``}:{pin:o.trim()},re=e=>{if(f(W9(e)),e.retryAfterMs!==void 0&&cie.has(e.error??``)){let t=Date.now();v(t),m(t+e.retryAfterMs)}},ae=async()=>{l(!0),f(null);let e=await H9(Zre,{...ne(),code:i.trim()});if(l(!1),a(``),e.ok){g(e=>[...e,ee]),s(``),await t();return}re(e),await t()},oe=async()=>{l(!0),f(null);let e=await H9(Qre,ne());l(!1),e.ok||re(e),a(``),await t()},se=!c&&!x&&i.trim().length===6&&(b||o.trim().length===8),ce=!c&&!x&&(b||o.trim().length===8);return(0,K.jsxs)(`div`,{className:`space-y-3`,children:[e.length>1&&(0,K.jsxs)(`div`,{className:`space-y-1`,role:`radiogroup`,"aria-label":`Pending pairing requests`,children:[(0,K.jsxs)(`div`,{className:`text-[10px] uppercase tracking-wider text-foreground-subtle font-medium`,children:[e.length,` hubs asked to pair - pick the one you mean`]}),e.map(e=>(0,K.jsx)(JX,{type:`button`,role:`radio`,"aria-checked":K9(e)===ee,variant:K9(e)===ee?`primary`:`outline`,size:`sm`,className:`w-full justify-start text-left h-auto py-1.5`,onClick:()=>S(K9(e)),children:(0,K.jsxs)(`span`,{className:`min-w-0 truncate`,children:[e.hub.nodeId,` · `,e.hub.url]})},K9(e)))]}),(0,K.jsxs)(`div`,{className:`flex items-start justify-between gap-3`,children:[(0,K.jsxs)(`div`,{className:`flex items-start gap-2 min-w-0`,children:[(0,K.jsx)(Ct,{className:`h-4 w-4 mt-0.5 shrink-0 text-warning`}),(0,K.jsx)(lie,{pairing:y})]}),(0,K.jsx)(PK,{variant:`warning`,className:`shrink-0 font-mono`,title:`Time left to confirm`,children:iie(y.expiresAt,_)})]}),x&&p!==null&&(0,K.jsx)(ZX,{variant:`warning`,title:`Confirming is locked`,message:`Too many wrong PINs. Try again in ${U9(p-_)}, or reset the pairing lockout below.`}),te?(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(PK,{variant:`success`,icon:(0,K.jsx)(ie,{className:`h-3 w-3`}),children:`Confirmed on this agent`}),(0,K.jsx)(`p`,{className:`text-[11px] text-foreground-subtle`,children:`Now confirm the same code on the hub. This agent pairs as soon as the hub confirms.`})]}):(0,K.jsxs)(`div`,{className:`space-y-3`,children:[(0,K.jsx)(A9,{label:`Code shown on the hub`,description:sie,children:(0,K.jsx)(SK,{id:`agent-pairing-code`,"aria-label":`Code shown on the hub`,type:`text`,inputMode:`numeric`,autoComplete:`off`,maxLength:6,value:i,onChange:e=>a(e.target.value.replace(/\D/g,``)),placeholder:`000000`,className:`font-mono tracking-widest`,disabled:x})}),!b&&(0,K.jsx)(A9,{label:`Local PIN`,description:`The one-time PIN is shown only on the agent's own machine: in the agent console (docker logs for a container), in pairing-pin.txt in the agent data directory, or in the desktop app window. Use the PIN printed for this hub.`,children:(0,K.jsx)(SK,{id:`agent-pairing-pin`,"aria-label":`Local PIN`,type:`text`,inputMode:`numeric`,autoComplete:`off`,maxLength:8,value:o,onChange:e=>s(e.target.value.replace(/\D/g,``)),placeholder:`PIN from the agent machine`,className:`font-mono tracking-widest`,disabled:x})}),b&&(0,K.jsx)(`p`,{className:`text-[11px] text-foreground-subtle`,children:`You are on the agent itself, so no PIN is needed.`})]}),u!==null&&(0,K.jsx)(`p`,{role:`alert`,className:`text-[11px] text-danger`,children:u}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[!te&&(0,K.jsxs)(JX,{type:`button`,variant:`primary`,size:`sm`,disabled:!se,onClick:()=>void ae(),children:[(0,K.jsx)(ie,{className:`h-3 w-3`}),`Confirm`]}),(0,K.jsxs)(JX,{type:`button`,variant:`outline`,size:`sm`,disabled:!ce,onClick:()=>void oe(),children:[(0,K.jsx)($t,{className:`h-3 w-3`}),`Reject`]})]})]})}function die({local:e,onReset:t}){let[n,r]=(0,d.useState)(!1),[i,a]=(0,d.useState)(``),[o,s]=(0,d.useState)(!1),[c,l]=(0,d.useState)(!1),u=!e||c,[f,p]=(0,d.useState)(null),m=async()=>{s(!0),p(null);let e=await H9($re,u?{code:i.trim()}:{});if(s(!1),e.ok){a(``),p({ok:!0,text:`Pairing reset: lockouts and pending requests are cleared.`}),await t();return}e.error===`reset-code-required`&&l(!0),p({ok:!1,text:W9(e)})};return(0,K.jsxs)(`div`,{className:`border-t border-border pt-3 space-y-3`,children:[(0,K.jsxs)(JX,{type:`button`,variant:`ghost`,size:`sm`,onClick:()=>r(e=>!e),children:[(0,K.jsx)(ht,{className:`h-3 w-3`}),n?`Hide pairing reset`:`Reset pairing lockout`]}),n&&(0,K.jsxs)(`div`,{className:`space-y-3`,children:[(0,K.jsx)(`p`,{className:`text-[11px] text-foreground-subtle`,children:`Use this when confirming is locked after wrong PINs, or a stuck request keeps the agent from accepting a new one. It cancels every pending pairing; the hub can then ask again.`}),u?(0,K.jsx)(A9,{label:`Reset code`,description:`The reset code is printed in the agent console at boot (docker logs for a container) and kept in pairing-reset.txt in the agent data directory. It is renewed each time it is used.`,children:(0,K.jsx)(SK,{id:`agent-pairing-reset-code`,"aria-label":`Reset code`,type:`text`,inputMode:`numeric`,autoComplete:`off`,maxLength:8,value:i,onChange:e=>a(e.target.value),placeholder:`Reset code from the agent`})}):(0,K.jsx)(`p`,{className:`text-[11px] text-foreground-subtle`,children:`This page runs on the agent itself, so no reset code is needed.`}),(0,K.jsx)(JX,{type:`button`,variant:`outline`,size:`sm`,disabled:o||u&&i.trim().length===0,onClick:()=>void m(),children:o?`Resetting…`:`Reset pairing`}),f!==null&&(0,K.jsx)(`p`,{role:`status`,className:f.ok?`text-[11px] text-success`:`text-[11px] text-danger`,children:f.text})]})]})}var fie=2e3;function pie(e=fie){let[t,n]=(0,d.useState)(null),[r,i]=(0,d.useState)(null),a=(0,d.useRef)(!0),o=(0,d.useRef)(async()=>void 0);return o.current=async()=>{try{let e=await tie();if(!a.current)return;n(e),i(null)}catch(e){a.current&&i(e instanceof Error?e.message:`Unknown error`)}},(0,d.useEffect)(()=>{a.current=!0,o.current();let t=setInterval(()=>void o.current(),e);return()=>{a.current=!1,clearInterval(t)}},[e]),{view:t,error:r,refresh:()=>o.current()}}function mie({connectionState:e}){switch(e){case`connected`:return(0,K.jsx)(PK,{variant:`success`,children:`Connected`});case`unpaired`:return(0,K.jsx)(PK,{variant:`warning`,children:`Not paired`});case`unconfigured`:return(0,K.jsx)(PK,{variant:`default`,children:`Not configured`});case`certificate-rejected`:return(0,K.jsx)(PK,{variant:`danger`,children:`Certificate rejected`});case`disconnected`:return(0,K.jsx)(PK,{variant:`danger`,children:`Disconnected`})}}function q9(e,t){return e?.state===`paired`||e===null&&t?`Paired`:e?.state===`pending`?`Pairing requested`:`Not paired`}function hie({status:e,onSaved:t}){let[n,r]=(0,d.useState)(!1),[i,a]=(0,d.useState)(``),[o,s]=(0,d.useState)(!1),[c,l]=(0,d.useState)(null);(0,d.useEffect)(()=>{n||a(e?.name??``)},[e?.name,n]);let u=(0,d.useCallback)(async()=>{let n=i.trim();if(n.length===0||n===e?.name){r(!1);return}s(!0),l(null);try{let e=await R9(`/api/agent/config`,{name:n});if(e.success===!1){l(e.error??`Save failed`);return}r(!1),l(`Name saved.`),await t()}catch(e){l(`Save failed: ${e instanceof Error?e.message:`Unknown error`}`)}finally{s(!1)}},[i,e?.name,t]);return(0,K.jsxs)(`div`,{className:`border-t border-border pt-3 space-y-2`,children:[n?(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsx)(YZ,{htmlFor:`agent-name`,className:`text-[10px] text-foreground-subtle`,children:`Agent Name`}),(0,K.jsx)(SK,{id:`agent-name`,type:`text`,value:i,onChange:e=>a(e.target.value),placeholder:`e.g. kitchen-agent`}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsxs)(JX,{type:`button`,variant:`primary`,size:`sm`,onClick:()=>void u(),disabled:o,children:[(0,K.jsx)(gt,{className:`h-3 w-3`}),o?`Saving…`:`Save`]}),(0,K.jsx)(JX,{type:`button`,variant:`outline`,size:`sm`,onClick:()=>r(!1),disabled:o,children:`Cancel`})]})]}):(0,K.jsx)(JX,{type:`button`,variant:`outline`,size:`sm`,onClick:()=>r(!0),children:`Rename agent`}),c!==null&&(0,K.jsx)(`p`,{className:`text-[11px] text-foreground-subtle`,children:c})]})}function J9({status:e,onStatusRefresh:t}){let n=pie(),r=n.view,i=e===null?`unpaired`:M9(e),a=e?.discoveredNodes??[],o=e?.hubAddress??e?.resolvedHubAddress??null,s=a.find(e=>e.isHub),c=s===void 0?null:N9(s,o).replace(/ \(hub\)$/,``),l=r?.state===`paired`||r===null&&e?.paired===!0,u=r?.pending??[],f=V9(u)||nie(window.location.hostname),p=r===null&&n.error!==null&&n.error.includes(`404`),m=(0,d.useCallback)(async()=>{await n.refresh(),await t().catch(()=>void 0)},[n,t]);return(0,K.jsx)(yQ,{headingId:`agent-hub-connection`,title:`Hub Connection`,icon:yt,actions:(0,K.jsx)(mie,{connectionState:i}),children:(0,K.jsxs)(`div`,{className:`${BZ} space-y-3`,children:[i===`certificate-rejected`&&(0,K.jsx)(ZX,{variant:`warning`,title:`The hub refused this agent's certificate`,message:`The certificate was revoked or was issued by another hub. Forget the hub below, then pair this agent again from the hub.`}),i===`disconnected`&&l&&(0,K.jsx)(ZX,{variant:`warning`,title:`Hub unreachable`,message:`This agent is paired but cannot reach the hub right now. Check that the hub is running and reachable from this machine.`}),(0,K.jsxs)(`div`,{className:`space-y-0`,children:[(0,K.jsx)(lQ,{label:`Hub Address`,valueClassName:`font-mono`,children:o??`Not paired`}),(0,K.jsx)(lQ,{label:`Pairing`,children:q9(r,e?.paired===!0)}),a.length>0&&(0,K.jsx)(lQ,{label:`Cluster nodes`,children:(0,K.jsx)(`span`,{className:`flex flex-wrap gap-1`,children:a.filter(e=>!e.id.includes(`/`)).map(e=>(0,K.jsx)(PK,{variant:e.isHub?`info`:`default`,className:`text-[9px] font-mono`,title:e.id,children:N9(e,o)},e.id))})})]}),p&&(0,K.jsx)(ZX,{variant:`warning`,message:`This agent is too old to pair from here. Update it from the hub (System → Cluster → Nodes), then pair it again.`}),!p&&r===null&&n.error!==null&&(0,K.jsx)(ZX,{variant:`warning`,title:`Pairing status unavailable`,message:n.error,onRetry:()=>void n.refresh()}),r!==null&&l&&(0,K.jsx)(oie,{hub:e?.pairedHub??null,hubName:c,onForgotten:m}),r!==null&&!l&&u.length>0&&(0,K.jsx)(uie,{pending:u,onChanged:m}),r!==null&&!l&&u.length===0&&(0,K.jsx)(`p`,{className:`text-xs text-foreground-subtle`,children:`This agent is not paired. On the hub open System → Cluster → Agents, pick this agent and start pairing; the request appears here.`}),r!==null&&!l&&(0,K.jsx)(die,{local:f,onReset:m}),(0,K.jsx)(hie,{status:e,onSaved:t})]})})}function gie(e){switch(e){case`data-root`:return`Updatable copy (runtime-updatable)`;case`baked`:return`Image copy (read-only)`;case`workspace`:return`Dev workspace`;default:return e}}function Y9({text:e}){return(0,K.jsxs)(`div`,{className:`flex items-start gap-1.5 text-[11px] text-foreground-subtle`,children:[(0,K.jsx)(ze,{className:`h-3 w-3 shrink-0 mt-px`}),(0,K.jsx)(`span`,{children:e})]})}function _ie(e,t){return e===`checking`?`Checking the registry…`:e===`staging`?`Downloading and staging the release…`:e===`pending-restart`?`Staged${t?` v${t}`:``} — restarting to apply`:null}function vie({view:e,onCheck:t,onApply:n,checking:r,startError:i}){let[a,o]=(0,d.useState)(!1),{status:s,lastApply:c,applyInFlight:l,lastCheckError:u}=e,f=_ie(s.updateState,s.pendingVersion),p=l||s.updateState===`staging`,m=s.updateState===`pending-restart`;return(0,K.jsxs)(`div`,{className:`space-y-2`,children:[(0,K.jsxs)(`div`,{className:`flex items-center justify-between gap-2 flex-wrap`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0`,children:[(0,K.jsx)(`span`,{className:`text-xs font-mono truncate`,children:s.packageName}),s.updateAvailable&&(0,K.jsx)(PK,{variant:`warning`,className:`text-[10px]`,children:`update available`})]}),(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(JX,{type:`button`,variant:`outline`,size:`sm`,onClick:t,disabled:r||p,children:r?`Checking…`:`Check for updates`}),!m&&(0,K.jsxs)(JX,{type:`button`,variant:a?`danger`:`primary`,size:`sm`,onClick:()=>{if(!a){o(!0);return}o(!1),n()},disabled:p||!s.updateAvailable,children:[(0,K.jsx)(Ce,{className:`h-3 w-3`}),a?`Confirm — update and restart this node`:`Update${s.latestVersion?` → v${s.latestVersion}`:``}`]})]})]}),(0,K.jsxs)(`div`,{className:`space-y-0`,children:[(0,K.jsx)(lQ,{label:`Running`,valueClassName:`font-mono`,children:s.runningVersion??`—`}),(0,K.jsx)(lQ,{label:`Published (npm)`,valueClassName:`font-mono`,children:s.latestVersion??`not checked`}),(0,K.jsx)(lQ,{label:`Code loaded from`,children:gie(s.bootMode)})]}),a&&!p&&(0,K.jsx)(ZX,{message:`Applying downloads the release, then restarts this node to swap it in. Live streams and detection on this node stop for the restart, and this page goes unreachable until the agent comes back.`,variant:`warning`}),p&&(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5 text-[11px] text-warning`,children:[(0,K.jsx)(mt,{className:`h-3 w-3 animate-spin`}),f??`Working…`]}),!p&&m&&f&&(0,K.jsxs)(`div`,{className:`flex items-center gap-1.5 text-[11px] text-warning`,children:[(0,K.jsx)(mt,{className:`h-3 w-3 animate-spin`}),f]}),i!==null&&(0,K.jsx)(ZX,{message:i}),c!==null&&!c.accepted&&(0,K.jsx)(ZX,{message:c.message}),c!==null&&c.accepted&&(0,K.jsx)(Y9,{text:c.message}),u!==null&&(0,K.jsx)(ZX,{message:`Update check failed: ${u}`}),(0,K.jsx)(Y9,{text:`The framework installs from the npm registry — this works with the hub unreachable.`})]})}function yie({locked:e,onUnauthorized:t}){let[n,r]=(0,d.useState)(null),[i,a]=(0,d.useState)(null),[o,s]=(0,d.useState)(!1),[c,l]=(0,d.useState)(null),u=(0,d.useCallback)(e=>{if(e instanceof F9){t();return}a(e instanceof Error?e.message:`Unknown error`)},[t]),f=(0,d.useCallback)(async()=>{try{r(await L9(`/api/agent/server-update`)),a(null)}catch(e){u(e)}},[u]);(0,d.useEffect)(()=>{if(e)return;let t=!0,n=()=>{t&&f()};n();let r=setInterval(n,5e3);return()=>{t=!1,clearInterval(r)}},[e,f]);let p=(0,d.useCallback)(async()=>{s(!0);try{await R9(`/api/agent/server-update/check`,{}),await f()}catch(e){a(e instanceof Error?e.message:`Check failed`)}finally{s(!1)}},[f]),m=(0,d.useRef)(!1);(0,d.useEffect)(()=>{e||m.current||n===null||!n.available||n.status.latestVersion!==null||n.status.updateState!==`idle`||(m.current=!0,p())},[e,n,p]);let h=(0,d.useCallback)(async()=>{l(null);try{let e=await R9(`/api/agent/server-update/apply`,{});!e.started&&e.message!==null&&l(e.message),await f()}catch(e){l(e instanceof Error?e.message:`Update could not be started`)}},[f]);return(0,K.jsx)(yQ,{headingId:`agent-updates`,title:`Framework update`,icon:Ce,children:(0,K.jsxs)(`div`,{className:`${BZ} space-y-4`,children:[i!==null&&(0,K.jsx)(ZX,{message:`Could not read update state: ${i}`}),n===null&&i===null&&(0,K.jsx)(`div`,{className:`text-[11px] text-foreground-subtle`,children:`Loading…`}),n!==null&&(n.available?(0,K.jsx)(vie,{view:n,onCheck:()=>void p(),onApply:()=>void h(),checking:o,startError:c}):(0,K.jsx)(Y9,{text:n.reason}))]})})}function X9(e){let t=Math.floor(e/86400),n=Math.floor(e%86400/3600),r=Math.floor(e%3600/60);return t>0?`${t}d ${n}h ${r}m`:n>0?`${n}h ${r}m`:`${r}m`}function bie({text:e}){let[t,n]=(0,d.useState)(!1);return(0,K.jsxs)(JX,{type:`button`,variant:`ghost`,size:`sm`,onClick:()=>n(e=>!e),title:e,className:`h-auto py-0.5 px-1.5 text-[10px] text-danger hover:text-danger text-left max-w-[10rem] sm:max-w-[14rem] ${t?`whitespace-normal break-words`:``}`,children:[(0,K.jsx)(Vt,{className:`h-3 w-3 shrink-0 mt-px`}),(0,K.jsx)(`span`,{className:t?`break-words`:`truncate`,children:e})]})}function Z9({label:e,value:t,icon:n,tone:r}){return(0,K.jsxs)($X,{variant:`bordered`,className:`p-3 sm:p-4`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2 mb-2`,children:[(0,K.jsx)(n,{className:`h-4 w-4 ${r===`danger`?`text-danger`:r===`primary`?`text-primary`:`text-foreground-subtle`}`}),(0,K.jsx)(`span`,{className:`text-[10px] uppercase tracking-wider text-foreground-subtle font-medium`,children:e})]}),(0,K.jsx)(`div`,{className:`text-xl font-bold text-foreground`,children:t})]})}function xie({appVersion:e}){let t=typeof window<`u`?window.camstackAgentApp:void 0,[n,r]=(0,d.useState)(null);(0,d.useEffect)(()=>{if(!t)return;let e=!0;t.getUpdateState().then(t=>{e&&r(t)});let n=t.onUpdateState(e=>r(e));return()=>{e=!1,n()}},[t]);let i=e??t?.version??null;return!i&&!t?null:(0,K.jsxs)(`div`,{className:`flex items-center gap-2 min-w-0 max-w-full flex-wrap justify-end`,children:[i&&(0,K.jsxs)(`span`,{className:`text-[10px] font-mono text-foreground-subtle`,children:[`v`,i]}),t&&n?.downloaded&&(0,K.jsxs)(JX,{type:`button`,variant:`primary`,size:`sm`,onClick:()=>t.installUpdate(),children:[(0,K.jsx)(Ce,{className:`h-3 w-3`}),`Restart to update`,n.version?` → v${n.version}`:``]}),t&&n&&!n.downloaded&&n.available&&(0,K.jsxs)(`span`,{className:`inline-flex items-center gap-1 text-[10px] text-warning`,children:[(0,K.jsx)(mt,{className:`h-3 w-3 animate-spin`}),`Downloading update…`]}),t&&n&&!n.available&&!n.downloaded&&(0,K.jsx)(JX,{type:`button`,variant:`outline`,size:`sm`,onClick:()=>void t.checkForUpdates(),disabled:n.checking,children:n.checking?`Checking…`:`Check for updates`}),t&&n?.error!=null&&!n.checking&&(0,K.jsx)(bie,{text:`Update check failed: ${n.error}`})]})}function Sie({info:e}){return(0,K.jsx)(yQ,{headingId:`agent-process`,title:`Agent Process`,icon:ve,children:(0,K.jsxs)(`div`,{className:`${BZ} space-y-0`,children:[(0,K.jsx)(lQ,{label:`PID`,valueClassName:`font-mono`,children:e?.pid??`—`}),(0,K.jsx)(lQ,{label:`Uptime`,valueClassName:`font-mono`,children:e?X9(e.uptimeSeconds):`—`}),(0,K.jsx)(lQ,{label:`Memory (RSS)`,valueClassName:`font-mono`,children:e?`${e.rssMB} MB`:`—`}),(0,K.jsx)(lQ,{label:`Heap`,valueClassName:`font-mono`,children:e?`${e.heapUsedMB} / ${e.heapTotalMB} MB`:`—`})]})})}function Q9({value:e,max:t,tone:n}){let r=t>0?Math.min(100,e/t*100):0;return(0,K.jsx)(`div`,{className:`h-2 bg-surface-hover rounded-full overflow-hidden`,children:(0,K.jsx)(`div`,{className:`h-full rounded-full transition-all ${n===`danger`?`bg-danger`:`bg-primary`}`,style:{width:`${r}%`}})})}function Cie({status:e}){let t=e?.decode?.hwaccel??`—`,n=e?.decode?.driDevice??null,r=e?.detectionDevices??[];return(0,K.jsx)(yQ,{headingId:`agent-decode-detection`,title:`Detection / Decoding`,icon:ye,children:(0,K.jsxs)(`div`,{className:`${BZ} space-y-0`,children:[(0,K.jsx)(lQ,{label:`Decode hwaccel`,valueClassName:`font-mono`,children:t}),(0,K.jsx)(lQ,{label:`DRI device`,valueClassName:`font-mono`,children:n??`—`}),(0,K.jsx)(lQ,{label:`Detection devices`,children:r.length>0?(0,K.jsx)(`span`,{className:`flex flex-wrap gap-1`,children:r.map(e=>(0,K.jsx)(PK,{variant:`info`,className:`text-[10px] font-mono`,children:e},e))}):(0,K.jsx)(`span`,{className:`text-foreground-subtle`,children:`software / none detected`})})]})})}function wie({hubHttpsOrigin:e,nodeId:t}){let[n,r]=(0,d.useState)(e),[i,a]=(0,d.useState)(t),[o,s]=(0,d.useState)(!1);(0,d.useEffect)(()=>{let e=!1;return fetch(`/api/agent/unlock-info`).then(e=>e.ok?e.json():null).then(t=>{e||t===null||(t.paired===!1&&s(!0),typeof t.hubHttpsOrigin==`string`&&r(t.hubHttpsOrigin),typeof t.nodeId==`string`&&a(t.nodeId))}).catch(()=>{}),()=>{e=!0}},[]);let c=e??n,l=t??i,u=(0,d.useCallback)(()=>{if(c===null||l===null)return;let e=`${window.location.origin}/`,t=new URL(`/system/nodes`,c);t.searchParams.set(`unlockNode`,l),t.searchParams.set(`returnTo`,e),window.location.assign(t.toString())},[c,l]);return o?(0,K.jsx)(`div`,{className:`min-h-screen bg-background text-foreground`,children:(0,K.jsx)(`div`,{className:`max-w-4xl mx-auto`,children:(0,K.jsx)(j9,{icon:vt,title:`CamStack Agent`,subtitle:(0,K.jsx)(`span`,{className:`font-mono`,children:l??`...`}),children:(0,K.jsx)(J9,{status:null,onStatusRefresh:async()=>window.location.reload()})})})}):(0,K.jsx)(`div`,{className:`min-h-screen bg-background text-foreground flex items-center justify-center p-2 sm:p-4`,children:(0,K.jsxs)($X,{variant:`bordered`,className:`w-full max-w-sm p-6 space-y-4`,children:[(0,K.jsxs)(`div`,{className:`flex items-center gap-2`,children:[(0,K.jsx)(vt,{className:`h-4 w-4 text-primary`}),(0,K.jsx)(`h1`,{className:`text-sm font-semibold`,children:`Agent dashboard locked`})]}),(0,K.jsx)(`p`,{className:`text-xs text-foreground-subtle`,children:`This agent is paired with a hub. Sign in on the hub as an admin to unlock this dashboard.`}),(0,K.jsx)(JX,{type:`button`,variant:`primary`,className:`w-full`,disabled:c===null||l===null,onClick:u,children:`Continue with hub`}),c===null&&(0,K.jsx)(`p`,{className:`text-[11px] text-foreground-subtle`,children:`Hub address unknown — open this agent from System → Cluster → Open dashboard.`})]})})}function Tie(){let[e,t]=(0,d.useState)(null),[n,r]=(0,d.useState)(!1),[i,a]=(0,d.useState)(null),[o,s]=(0,d.useState)(!1),[c,l]=(0,d.useState)(`idle`),u=(0,d.useCallback)(async()=>{t(await L9(`/api/agent/status`)),r(!0),a(null)},[]);(0,d.useEffect)(()=>{let e=new URLSearchParams(window.location.search),t=e.get(`ticket`);if(t===null||t.length===0)return;let n=!1;return l(`redeeming`),Fre(t).then(()=>{if(n)return;e.delete(`ticket`);let t=e.toString();window.history.replaceState(null,``,t.length>0?`${window.location.pathname}?${t}`:window.location.pathname),l(`idle`),s(!1)}).catch(()=>{n||(l(`failed`),s(!0))}),()=>{n=!0}},[]),(0,d.useEffect)(()=>{if(o||c===`redeeming`)return;let e=!0,n=async()=>{try{let n=await L9(`/api/agent/status`);e&&(t(n),r(!0),a(null))}catch(t){if(e){if(t instanceof F9){s(!0);return}r(!1),a(t instanceof Error?t.message:`Unknown error`)}}};n();let i=setInterval(()=>void n(),3e3);return()=>{e=!1,clearInterval(i)}},[o,c]);let f=e?e.totalMemoryMB-e.freeMemoryMB:0,p=e?Math.round(f/e.totalMemoryMB*100):0,h=e?.cpuPercent??0;if(c===`redeeming`)return(0,K.jsx)(`div`,{className:`min-h-screen bg-background text-foreground flex items-center justify-center p-4 text-sm text-foreground-subtle`,children:`Unlocking from hub…`});if(o)return(0,K.jsx)(wie,{hubHttpsOrigin:e?.hubHttpsOrigin??null,nodeId:e?.nodeId??null});let g=M9(e),_=!n,v=_||g===`disconnected`||g===`certificate-rejected`?Yt:Xt,y=_?i??`Unreachable`:g===`connected`?`Hub Connected`:g===`unconfigured`?`No hub configured`:g===`unpaired`?`Not paired`:g===`certificate-rejected`?`Certificate rejected`:`Hub Disconnected`,b=_?`danger`:g===`connected`?`success`:g===`unconfigured`||g===`unpaired`?`warning`:`danger`,x=(e?.localIps??[]).filter(e=>!e.includes(`:`)).join(`, `)||`—`;return(0,K.jsx)(`div`,{className:`min-h-screen bg-background text-foreground`,children:(0,K.jsx)(`div`,{className:`max-w-4xl mx-auto`,children:(0,K.jsxs)(j9,{icon:vt,title:e?.name??`CamStack Agent`,subtitle:(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(`span`,{className:`font-mono`,children:e?.nodeId??`...`}),e?.hostname&&(0,K.jsxs)(`span`,{className:`ml-2`,children:[`· `,e.hostname]}),x!==`—`&&(0,K.jsxs)(`span`,{className:`ml-2`,children:[`· `,x]})]}),actions:(0,K.jsxs)(K.Fragment,{children:[(0,K.jsx)(xie,{appVersion:e?.appVersion}),(0,K.jsxs)(PK,{variant:b,className:`inline-flex items-center gap-1.5 shrink-0`,children:[(0,K.jsx)(v,{className:`h-3 w-3`}),(0,K.jsx)(`span`,{className:`max-w-[8rem] sm:max-w-none truncate`,children:y})]})]}),children:[(0,K.jsx)(yQ,{headingId:`agent-overview`,title:`Overview`,icon:m,children:(0,K.jsxs)(`div`,{className:`${BZ} grid grid-cols-2 md:grid-cols-4 gap-2 sm:gap-4`,children:[(0,K.jsx)(Z9,{icon:ye,label:`CPU`,value:`${h}%`,tone:h>80?`danger`:`primary`}),(0,K.jsx)(Z9,{icon:Xe,label:`Memory`,value:`${p}%`,tone:p>90?`danger`:`primary`}),(0,K.jsx)(Z9,{icon:st,label:`Addons`,value:String(e?.addons.length??0)}),(0,K.jsx)(Z9,{icon:w,label:`Uptime`,value:e?X9(e.uptime):`—`})]})}),(0,K.jsx)(J9,{status:e,onStatusRefresh:u}),(0,K.jsx)(Yre,{locked:o,onUnauthorized:()=>s(!0)}),(0,K.jsx)(yie,{locked:o,onUnauthorized:()=>s(!0)}),(0,K.jsx)(Cie,{status:e}),(0,K.jsx)(yQ,{headingId:`agent-resources`,title:`Resources`,icon:Pe,children:(0,K.jsxs)(`div`,{className:`${BZ} space-y-4`,children:[(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`flex justify-between text-xs text-foreground-subtle mb-1`,children:[(0,K.jsxs)(`span`,{children:[`CPU (`,e?.cpuCores??0,` cores`,e?.cpuModel?` — ${e.cpuModel}`:``,`)`]}),(0,K.jsxs)(`span`,{children:[h,`%`]})]}),(0,K.jsx)(Q9,{value:h,max:100,tone:h>80?`danger`:`primary`})]}),(0,K.jsxs)(`div`,{children:[(0,K.jsxs)(`div`,{className:`flex justify-between text-xs text-foreground-subtle mb-1`,children:[(0,K.jsxs)(`span`,{children:[`Memory (`,f,` / `,e?.totalMemoryMB??0,` MB)`]}),(0,K.jsxs)(`span`,{children:[p,`%`]})]}),(0,K.jsx)(Q9,{value:p,max:100,tone:p>90?`danger`:`primary`})]})]})}),(0,K.jsxs)(`div`,{className:`grid grid-cols-1 md:grid-cols-2 gap-4 sm:gap-6`,children:[(0,K.jsx)(yQ,{headingId:`agent-system-host`,title:`System (host)`,icon:vt,children:(0,K.jsxs)(`div`,{className:`${BZ} space-y-0`,children:[(0,K.jsxs)(lQ,{label:`Platform`,valueClassName:`font-mono`,children:[e?.platform,` / `,e?.arch]}),(0,K.jsx)(lQ,{label:`Hostname`,valueClassName:`font-mono`,children:e?.hostname??`—`}),(0,K.jsx)(lQ,{label:`Host uptime`,valueClassName:`font-mono`,children:e?X9(e.uptime):`—`}),(0,K.jsx)(lQ,{label:`Host memory`,valueClassName:`font-mono`,children:e?`${f} / ${e.totalMemoryMB} MB`:`—`}),(0,K.jsx)(lQ,{label:`IPv4`,valueClassName:`font-mono`,children:x})]})}),(0,K.jsx)(Sie,{info:e?.agentProcess})]})]})})})}zre();var $9=document.getElementById(`root`);$9&&(0,AX.createRoot)($9).render((0,K.jsx)(Rre,{children:(0,K.jsx)(Tie,{})}));export{p as C,re as S,Nt as _,PQ as a,Le as b,KZ as c,HX as d,UX as f,Bt as g,DW as h,OQ as i,tZ as l,zX as m,TQ as n,jQ as o,BX as p,MQ as r,DQ as s,Nre as t,GX as u,ht as v,Ee as x,Qe as y};
|